从设计思想到实现原理的深度解析
Kimi Code CLI 是月之暗面(Moonshot AI)推出的智能命令行助手,它是一个完整的 AI 智能体(AI Agent),能够在终端环境中自主完成复杂的软件开发任务。
Kimi Code CLI 的设计哲学是"让 AI 成为开发者的伙伴,而不仅仅是工具"。它强调的是一种协作关系,AI 负责处理繁琐的细节工作,而人类开发者则专注于更高层次的思考和决策。
┌─────────────────────────────────────────────────────────────┐
│ UI 层 (Presentation) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Shell │ │ Print │ │ ACP │ │ Web │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 核心层 (Core/Soul) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────────┐ │
│ │ KimiSoul │ │ Context │ │ LaborMarket │ │
│ │ (Agent循环) │ │ (上下文管理) │ │ (子代理市场) │ │
│ └─────────────┘ └─────────────┘ └─────────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 工具层 (Tools) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────────────┐ │
│ │ File │ │ Shell │ │ Web │ │ MCP Tools │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────────────┘ │
├─────────────────────────────────────────────────────────────┤
│ 基础设施层 (Infrastructure) │
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ Config │ │ Session │ │ LLM │ │ OAuth │ │
│ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │
└─────────────────────────────────────────────────────────────┘
Wire 协议定义了一套标准的消息格式,用于在 UI 层和核心层之间传递信息,实现了两者的解耦。
CLI 入口 → 配置加载 → LLM 配置 → Runtime 创建 → Agent 加载 → Context 恢复 → KimiSoul 创建
| 字段 | 职责 |
|---|---|
config | 系统配置 |
llm | LLM 实例 |
approval | 审批机制 |
labor_market | 子代理市场 |
skills | 技能列表 |
version: "1"
agent:
name: my-agent
system_prompt_path: ./prompt.txt
tools:
- kimi_cli.tools.shell:Shell
subagents:
coder:
path: ./coder.yaml
description: A coding agent
本书由 AI 助手 Kimi 基于 Kimi Code CLI 开源项目源代码深入研究和创作,旨在分享架构设计思想和实现原理。
完整代码仓库:https://github.com/MoonshotAI/kimi-cli
阅读建议:
C:\GitHub\kimi-cli\book\ 目录还没有人回复