Kode CLI
运行在终端里的多模型 AI 编码助手,用子代理和专家模型编排完成整条开发工作流。
- Star 数
- ★ 5.2k
- 最近更新
- 4 天前
- License
- Apache-2.0
- 主语言
- TypeScript
- FA 评分
- 44/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude APIClaude Code(部分支持)
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 需要按任务类型分配模型的开发者:用 o3/GPT-5 做架构推演,用 Qwen Coder、Kimi k2 或 Claude Sonnet 4 写实现代码
- 不适合
- 需要默认严格权限管控、不希望在 YOLO 模式下运行的生产环境团队
- 只想要单一厂商托管服务、不愿自行配置模型端点与 API 密钥的用户
- 依赖旧版问答型模型(如 GPT-4o、Gemini 2.5 Pro)完成长任务的团队
- 源码审查
- 44/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Kode 是一个终端内的 AI 编码助手,可读取项目代码库、编辑文件、执行 shell 命令并处理多步骤任务。它的核心设计是多模型协作:通过 ModelManager 管理模型配置(profiles)与用途指针(main/task/compact/quick),运行时可切换模型而不中断会话。它提供 @ask-<model> 专家咨询和 @run-agent-<agent> 子代理委派两种提及方式,并支持 Task、AskExpertModel、Skill 等工具。仓库同时实现了 MCP 服务器接入、Agent Skills 与插件市场、AGENTS.md 指令发现,以及 ACP 协议的 kode-acp 服务端模式。它通过 npm 全局安装(@shareai-lab/kode)分发,另有 GitHub Releases 上的 Bun 编译单文件二进制和本地 Docker 构建方式;模型端点由用户自行配置,因此实际效果取决于所选模型与密钥。
启动 kode 后进入交互式终端,提示符内可补全斜杠命令、文件路径、子代理、已配置模型与 shell 命令。它从 Git 仓库根目录向下逐级读取指令文件,每个目录优先 AGENTS.override.md 再 AGENTS.md,并兼容旧的 CLAUDE.md 与 .claude 目录,合并结果默认上限 32 KiB(可用 KODE_PROJECT_DOC_MAX_BYTES 调整)。通过 /model 或 kode models import/export 以 YAML 管理模型 profiles 与指针,@ask-claude-sonnet-4 之类的提及会调用 AskExpertModel 工具做隔离咨询,@run-agent-* 或 Task 工具会把任务交给 .kode/agents 与 .claude/agents 中的子代理模板执行。工具层包含文件读写编辑、Bash 命令执行、WebFetch/WebSearch,以及通过 .mcp.json 或 .mcprc 接入的 MCP 服务器;/cost 输出各模型 token 用量与开销,/plugin install 可从本地路径或 GitHub owner/repo 安装 skills 与命令插件,kode-acp 则以 stdio JSON-RPC 方式暴露为 ACP agent 供 Toad/Zed 等客户端调用。
- 需要按任务类型分配模型的开发者:用 o3/GPT-5 做架构推演,用 Qwen Coder、Kimi k2 或 Claude Sonnet 4 写实现代码
- 维护大型仓库、希望用 AGENTS.md 统一编码代理指令的团队,并需要兼容已有 CLAUDE.md 与 .claude 配置
- 想把重复流程固化为 SKILL.md 技能包并通过 /pdf、/xlsx 之类斜杠命令复用的团队
- 在 Zed 或 Toad 等 ACP 客户端中,需要一个本地 stdio agent 后端的用户
- 在无环境依赖的机器上想用单文件二进制或 Docker 卷挂载方式运行编码代理的工程师
- 遇到难以定位的缺陷时,想临时咨询另一个更强模型而不污染主对话上下文的开发者
如何安装或部署这个 Agent?
通过 npm 全局安装,随后即可使用 kode、kwa、kd 三个命令中的任意一个。
npm install -g @shareai-lab/kode中国大陆网络不稳时可换用镜像源。
npm install -g @shareai-lab/kode --registry=https://registry.npmmirror.com想体验最新功能可装 dev 通道。
npm install -g @shareai-lab/kode@dev若不想用 npm,可从 GitHub Releases 下载 Bun 编译的便携二进制;也可以从源码构建镜像。
git clone https://github.com/shareAI-lab/Kode-CLI.git
cd Kode
docker build --no-cache -t kode .Docker 镜像以非特权 node 用户运行,挂载前需先创建宿主机上的配置目录与文件。
cd your-project
docker run -it --rm \
-v "$PWD:/workspace" \
-v "$HOME/.kode:/home/node/.kode" \
-v "$HOME/.kode.json:/home/node/.kode.json" \
-w /workspace \
kode注意:使用 --no-optional 安装时不会带上按平台的 ripgrep 包,需要自行安装系统 rg 或设置 KODE_RIPGREP_PATH;安装过程不会从 GitHub 下载任何内容。
如何使用这个 Agent?
先配置模型与 API 密钥:全局配置位于 ~/.kode.json(设置了 KODE_CONFIG_DIR 时为 <KODE_CONFIG_DIR>/config.json),可在交互界面用 /model 设置,或用 kode models import 导入团队共享的 YAML。
version: 1
profiles:
- name: OpenAI Main
provider: openai
modelName: gpt-4o
maxTokens: 8192
contextLength: 128000
apiKey:
fromEnv: OPENAI_API_KEY
pointers:
main: gpt-4o
task: gpt-4o
compact: gpt-4o
quick: gpt-4okode models import kode-models.yaml
kode models list启动交互会话,或用 -p 做一次性提问。默认是跳过权限检查的 YOLO 模式,处理重要文件时应加 --safe。
kode
kode -p "explain this function" path/to/file.js
kode --safe在提示符中使用提及语法调用专家模型、子代理和文件引用。
@ask-claude-sonnet-4 How should I optimize this React component?
@run-agent-architect Design a microservices architecture for this system
@packages/core/src/query/index.ts如需作为 ACP agent 服务端供 Zed/Toad 使用:
kode-acp
toad acp "kode-acp"子代理模板放在 ./.kode/agents/reviewer.md,可用 kode agents validate 校验。
---
name: reviewer
description: 'Review diffs for correctness, security, and simplicity'
tools: ['Read', 'Grep']
model: inherit
---
Be strict. Point out bugs and risky changes. Prefer small, targeted fixes.这个 Agent 有哪些优点和局限?
- 真正的多模型编排:ModelManager 的 profiles 加 main/task/compact/quick 四类指针,让主对话、子代理、上下文压缩和轻量操作各用不同模型,且支持运行时切换不断上下文
@ask-<model>专家咨询走 AskExpertModel 工具隔离执行,专家模型的输出不会污染主对话流- 兼容 AGENTS.md 标准的 Codex 式指令发现:逐级向上读取、AGENTS.override.md 优先、兼容旧 CLAUDE.md 与 .claude 目录
- 扩展面完整:MCP 服务器(.mcp.json/.mcprc)、SKILL.md 技能包、插件市场、自定义 output-styles、ACP 服务端模式一并具备
- 分发方式多:npm optionalDependencies 按平台原生二进制、GitHub Releases 单文件二进制、Docker 构建三种路径,安装时不会从 GitHub 拉取内容
- 默认不做产品遥测,网络请求只在显式使用联网功能时发生
- 默认以 YOLO 模式运行,等价于
--dangerously-skip-permissions,跳过全部权限检查,在含重要文件的环境中必须手动加--safe - 工具链依赖较重:需要 Node.js 与 npm,开发需 Bun,快速搜索依赖按平台的 ripgrep 包或系统
rg,Linux 沙箱需额外安装 bubblewrap - README 明确提示旧式问答模型(GPT-4o、Gemini 2.5 Pro)不适配长任务,实际可用性高度取决于用户自行挑选的模型与端点质量
- 功能面(agents、skills、plugins、output-styles、MCP、ACP、模型 YAML)分散在大量 docs 子文档中,首次上手需较多阅读
- 模型配置需自己准备提供商端点与 API 密钥,官方不提供托管模型或额度
这个 Agent 与同类方案有什么区别?
README 在功能对比表中将 Kode 与只支持单一模型的通用 CLI 对照,强调模型数量、Option+M 热切换、子代理并行、分模型成本统计、按用途配置默认模型和 AskExpertModel 六项差异;同时说明 UI 参考了 gemini-cli、部分系统设计参考上游 agent CLI。这些均为项目自述,未给出第三方基准数据。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Kode CLI 当前 | 44 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 5.2k | 4 天前 | TypeScript | OpenAI API · Claude API |
| CoreCoder | 59 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 1.9k | 1 天前 | Python | OpenAI API |
| Whale | 51 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 933 | 6 天前 | Go | — |
| Lime - 全能型桌面 AI 代理 | 44 · 缺口较多 | 桌面应用免费 + 模型费 | ★ 1.5k | 今天 | TypeScript | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README 明确说明默认以 YOLO 模式运行(等同 --dangerously-skip-permissions),绕过所有权限检查,仅建议在可信环境使用,并提供 --safe 与 Linux bwrap 沙箱作为缓解;但默认即最大权限,least_privilege 与 user_confirmation 仅得 1。网络与隐私章节说明默认无遥测、仅在显式使用联网功能时发起请求,data_flow_transparency 得 2;但模型请求内容、MCP/插件下载的数据流向未逐项说明。敏感数据处理方面,配置文档建议用环境变量存密钥、导出 YAML 默认不含明文 key,但示例配置中仍出现明文 apiKey 字段,且无密钥落盘加密说明,得 1。依赖安全有 bun audit --audit-level=high 纳入 CI 与 check 脚本、CI 使用固定 commit 的 action 与 frozen-lockfile,得 2;但未提供 SBOM 或漏洞处置记录。外部效应方面,命令执行、文件写入、插件安装等副作用默认无确认,得 1。回滚方面,配置保存有 backup 与失败恢复,但文件编辑/命令执行无通用撤销机制,得 1。来源归属方面,LICENSE 有版权声明、package.json 有 author 与 provenance:true,但发布者身份未经 FollowAgents 验证,且第三方 skill 仅以 THIRD_PARTY_NOTICES 提及,得 1。
self_consistency 得 1:README 与 docs 对默认权限模式、沙箱依赖(bwrap+socat)描述基本一致,但 README 中 Docker 示例 cd Kode 与仓库名 Kode-CLI 不一致,且部分功能描述(如多模型协作)缺少对应代码证据。dependency_availability 得 2:engines 指定 node>=20.18.1,optionalDependencies 覆盖多平台二进制与 ripgrep,并说明 --no-optional 回退路径,CI 三平台验证。failure_messages 得 1:ACP 契约测试验证了参数校验错误码与消息(如 Missing required param: cwd),但整体错误处理与用户可见失败提示在给定文件中证据有限。
audience_and_scenarios 得 2:README 覆盖交互/非交互、ACP、Docker、多模型、子代理、技能插件等场景,面向终端开发者。capability_boundaries 得 1:文档描述了工具、权限模式与沙箱边界,但未系统列出 Agent 能力上限与不适用场景。trigger_precision 得 1:@ 提及、斜杠命令、# 文档模式等触发方式有说明,但缺少精确的触发条件与冲突处理说明。environment_fit 得 2:跨平台安装、镜像源、Windows 限制、Linux 沙箱依赖均有说明。
information_architecture 得 2:README 结构清晰,docs 目录分主题。install_notes 得 2:npm 安装、镜像、可选依赖、独立二进制、Docker 均有说明。naming_stability 得 1:命令别名 kode/kwa/kd 与包名并存,且存在 .kode 与 .claude 双命名兼容,稳定性证据不足。examples_and_faq 得 2:提供大量命令示例与故障排查。known_limitations 得 1:仅零散提及 Windows 无系统沙箱、seccomp 可选等,未集中列出。license 得 3:完整 Apache-2.0 文本与版权声明。versioning_changelog 得 1:README 有更新日志片段与 semver 发布流程,但无完整 CHANGELOG。maintenance_responsibility 得 1:有 CI 与发布工作流,但发布者身份未验证,维护责任归属不明确。
output_usability 得 1:作为 CLI 输出面向终端,但给定文件未展示输出格式与可用性证据。marginal_value 得 1:功能丰富但同类终端编码 Agent 众多,差异化证据主要来自 README 自述。cost_benefit 得 1:有 /cost 与多模型成本追踪说明,但无实际成本数据或基准。
claim_traceability 得 1:README 大量功能声明未链接到具体代码或测试。cross_source_corroboration 得 1:部分声明(如沙箱、配置路径)在 docs 与测试中有交叉印证,但多数功能声明仅见于 README。fact_inference_separation 得 1:文档混合了事实描述与营销性表述(如 true multi-model collaboration),未明确区分。
- 默认以 YOLO 模式运行并绕过所有权限检查,仅在可信环境使用;处理重要文件时应显式使用 kode --safe。
- 发布者身份未经 FollowAgents 验证,安装前应自行核实 npm 包与 GitHub 发布来源。
- Linux 系统沙箱依赖 bwrap 与 socat,缺失时会降级;Windows 无等价系统沙箱。
- 插件与 MCP 服务器可从 GitHub/URL 下载并执行,存在供应链风险,应审查来源。
- 配置示例中出现明文 apiKey 字段,实际使用应改用环境变量。
常见问题
默认模式下它会不打招呼就执行命令吗?
kode --safe,Bash 与文件写入会要求批准,另有 plan 模式只允许只读与规划工具。模型费用怎么算?
/cost 会按模型统计 token 用量与开销,kode models export 默认不导出明文 API 密钥,建议用 fromEnv 引用环境变量。我的代码或对话会被发送到哪里?
它和 AGENTS.md 是什么关系?
# 开头的提示词还能把回答整理成文档追加进 AGENTS.md。