一台工作台,不是 portal。

你的模型。你的工具。在你机器上。

本地优先的 AI 编码工作台。Native 终端 REPL + 浏览器 admin。指向你自己的本地 runtime 或者 API key —— 不自带模型,不上传会话,不要账号。每一次会话都干净收尾,留下下一次动手的起点。

  • Apache-2.0
  • 本地优先
  • Native REPL
  • 无 telemetry
owlcoda · session 7e3a ~/work/owlcoda
$ owlcoda
# 42+ 工具,69+ slash 命令,全用你自己的 config
Read src/native/conversation.ts 412 行 · 13.2 KB
Grep "completion-guard" → 6 处命中 3 个文件
Edit src/native/completion-guard.ts 3 块 hunk
Bash npm test --silent 14 通过 · 2.1 s
✓ patch 应用 · vitest 14/14 · session 已落盘。
owlcoda admin · models

浏览器 ADMIN · 首次运行配置

  • Ollama (本地) http://127.0.0.1:11434/v1 wired
  • Kimi Coding https://api.kimi.com/coding/v1 wired
  • OpenRouter https://openrouter.ai/api/v1 check

五秒读懂

一台本地优先的 AI 编码工作台。

  • 跑在哪里 你的机器。Node 20.19+ 命令行,native 终端 REPL,没有常驻守护进程。
  • 接通哪里 你自己的本地 runtime(Ollama / LM Studio / vLLM)或者你的云端 API key。
  • 会留下什么 transcript · session JSON · 工具证据 · context 预算 · 待办 follow-up。
  • 属于哪一套 本地优先的 Owl stack。Apache-2.0,无账号,无服务器。

30 秒上手

源码安装,一次跑通。

当前 OwlCoda 公开版以源码形态分发,原生包暂留到 1.0 之后。前置:Node ≥ 20.19,任意 OpenAI 兼容本地后端,或一个云端 API key。

一行跑

git clone https://github.com/yeemio/owlcoda.git && cd owlcoda && npm install && npm run build && npm link
  • Node ≥ 20.19
  • Apache-2.0
  • 无 telemetry
  • macOS · Linux · Windows
逐步说明
  1. 01

    拉取并编译 OwlCoda

    git clone https://github.com/yeemio/owlcoda.git
    cd owlcoda && npm install && npm run build
  2. 02

    把 owlcoda 暴露为全局命令

    npm link  # 或:node /path/to/owlcoda/dist/cli.js
  3. 03

    在浏览器 admin 配置 provider

    owlcoda ui --open-browser
  4. 04

    启动 REPL

    owlcoda

自带后端

OwlCoda 不带模型 —— 你把它指过去就行。

本地 runtime、云端 API key 或者两者都行。router 和 provider probe 用一套心智处理。

后端 类型 端点 协议形态 状态
Ollama Local http://127.0.0.1:11434/v1 OpenAI 兼容 · 日常本地路由 自动探测
LM Studio Local http://127.0.0.1:1234/v1 OpenAI 兼容 · GUI runtime 自动探测
vLLM Local http://127.0.0.1:8000/v1 OpenAI 兼容 · GPU runtime 自动探测
自建本地 Local 用户自填 OpenAI 兼容 · 任意 /v1 端点 自动探测
Kimi Coding Cloud https://api.kimi.com/coding/v1 provider 原生 · kimi-for-coding 已实测
Kimi (Moonshot) Cloud https://api.moonshot.ai/v1 OpenAI 兼容 · 通用 Moonshot 自带 key
MiniMax Cloud https://api.minimaxi.com/anthropic Messages 形态 · Anthropic 风格 已实测
OpenRouter Cloud https://openrouter.ai/api/v1 OpenAI 兼容 · 多上游目录 自带 key
阿里百炼 / DashScope Cloud https://dashscope.aliyuncs.com/compatible-mode/v1 OpenAI 兼容 · 阿里托管模型 自带 key
OpenAI 兼容 Cloud https://api.openai.com/v1 OpenAI 兼容 · 任意 /v1 vendor 自带 key

Native REPL

终端就是产品。

OwlCoda 是 native 终端 REPL —— 不是 web 套壳。Selection-first transcript、真实 shell 工具链、可持久化的会话。

  • 42+ 工具 Bash、Read、Write、Edit、Glob、Grep、Task、MCP 工具、agent dispatch、调度、插件。
  • 69+ slash 命令 model、cost、budget、context、sessions、skills、training,全在同一个 prompt 下查。
  • Selection-first transcript 鼠标拖选、复制和其他终端 app 完全一致。
  • 会话持久化 每次对话自动落到 ~/.owlcoda/sessions/,--resume <id> 恢复任意一次。
  • 持续运行 context 预算闸 长会话会按 context 预算闸校验,最终报告不会被悄悄截断。

Slash 命令 · 摘自 69+

  • /model 查看已配置模型、切换当前路由。
  • /budget 查 context 预算与单次上限。
  • /context 打印当前 context window 状态。
  • /sessions 浏览并恢复历史会话。
  • /resume 按 id 恢复一次历史 session。
  • /training 为 session 评分并导出微调数据。
  • /trace 打开上一次运行的 trace 检查器。
  • /perf 查每个工具的延迟和 token 消耗。
  • /doctor 探测路由、key 和 runtime 健康。
  • /tools 列出当前可用工具,scope 或 global。
  • /skills 管理已学技能和触发条件。
  • /tokens 逐条消息的 token 计数。
  • /cost 本次 session 各 provider 的花费。
  • /config 查看或编辑 ~/.owlcoda/config.json。
  • /agents 列出可用 subagent 并 dispatch。
  • /plan 进入 plan 模式做多步规划。
  • /clear 清空可见 transcript(不丢 session)。
  • /undo 回滚上一次工具应用的改动。
  • /open 从 REPL 打开 admin UI 的某个页面。
owlcoda · session 7e3a ~/work/owlcoda
$ /model
default → qwen3-coder (ollama · local)
heavy → kimi-for-coding (kimi · provider-native)
long-context → minimax-m27 (minimax · messages)
cheap → openrouter/auto (openrouter)
$ /model heavy
✓ 活动路由 → kimi-for-coding · ctx 128k · key 来自环境变量。
$ 修一下 completion-guard 的误判
Read src/native/conversation.ts 412 行 · 13.2 KB
Grep "completion-guard" → 6 处命中 3 个文件
Glob src/native/**/*.ts 47 路径
Edit src/native/completion-guard.ts 3 块 hunk
Bash npm test --silent 14 通过 · 2.1 s
Task spawn review-agent 运行中
✓ patch 应用 · vitest 14/14 · session 已落盘。

浏览器 admin

配一次,关掉网页,开始干活。

owlcoda ui 会打印一个一次性 admin URL;加 --open-browser 直接打开。owlcoda admin 是别名。Admin 只为首次运行配置服务,进阶 catalog、aliases、orphans 都收在 Diagnostics 里。

  1. 01
    打印 URL

    owlcoda ui 打印一个绑了一次性 token 的 localhost URL,自己复制或喂给启动器。

  2. 02
    直接打开

    owlcoda ui --open-browser 把 URL 直接交给你的默认浏览器。

  3. 03
    配置 provider

    加 provider、贴 API key、跑一次连接测试。配完页面会自己关掉。

$ owlcoda ui
$ owlcoda ui --open-browser
$ owlcoda admin

进阶 catalog / aliases / orphans 清理收在 Diagnostics 里,首次运行路径不被它们打扰。

owlcoda admin · providers · kimi-coding
01 填写
02 测试
03 保存

PROVIDER · KIMI CODING

Provider Kimi Coding
端点 https://api.kimi.com/coding/v1
后端模型 kimi-for-coding
API key sk-•••••••••••••••
协议形态 provider 原生
测试连接 200 OK · 412 ms

不写死端口,URL 每次启动都换,从来不离开你这台机器。

Coda

Coda 不是结尾,是把整段工作收拢、并把下一次起点留下来的那一段。

每一次结束,都留下一次起点。

每一次会话收尾,都会在 ~/.owlcoda/ 里落下一束 artifact。明天接着干,从这串文件接,不是从聊天框接。

$ owlcoda --resume <id> # 把下一次起点接起来。

~/.owlcoda/sessions/7e3a-… closed · 2026-04-21 18:42
  • ~/.owlcoda/sessions/<id>.json 会话记录 · 模型 · 路由
  • ~/.owlcoda/sessions/<id>/transcript.md 人读 transcript
  • ~/.owlcoda/sessions/<id>/tool-runs.ndjson 工具证据 · diff · 输出
  • ~/.owlcoda/sessions/<id>/context.md context · budget 状态
  • ~/.owlcoda/sessions/<id>/followups.md 未完成的 follow-up
  • ~/.owlcoda/training/<id>.jsonl 可选训练数据导出(opt-in)

隐私态势

无账号。无服务器。无 telemetry 管线。

  • 无账号 没有 OwlCoda 账号,也没有 OwlCoda 服务器。
  • 无 telemetry 会话不离开你机器;外部请求只有 config 里你写下的 backend。
  • 你的 config 所有 config 和 session 都落在 ~/.owlcoda/,纯 JSON / Markdown,归你。
  • 你的训练数据 训练数据收集 opt-in,落盘前会做 PII 脱敏。

Owl stack

OwlCoda 是本地优先 Owl stack 里第一个公开产品。

后续 Owl 工具会延续同样态势:本地优先、透明、你机器、你数据。这里不做 portal 营销。

  • OwlCoda 公开 · v0.1

    AI 编码工作台。Native REPL + 浏览器 admin。已可用。

  • owlmlx 预留

    本地模型部署与路由。后续公开版本预留。

  • owlops 预留

    本地优先的 ops 自动化。后续公开版本预留。