附录 A:项目索引与快速参考
本附录为全书涉及的主要 Agent 项目及相关工具提供快速参考索引。读者可据此快速定位项目信息、技术栈及对应章节。
A.1 核心 Agent 项目
| 项目 | 简介 | GitHub / 官方地址 | 语言/框架 | 核心特点 | 相关章节 |
|---|---|---|---|---|---|
| Claude Code | Anthropic 官方 CLI Agent,支持终端内自然语言驱动的代码编辑、调试与系统操作 | 官方产品(非开源),详见 Anthropic 文档 | TypeScript (Node.js) | Agentic loop、Tool Use、CLAUDE.md 约定式配置、Permission 分级控制、Extended Thinking | 第 1–3 章、第 7 章 |
| Codex (OpenAI) | OpenAI 开源 CLI Agent,Rust 编写核心引擎,TypeScript 实现上层逻辑 | github.com/openai/codex | Rust + TypeScript | 沙箱隔离(tofu-sandbox)、多级审批策略、网络可控、本地优先 | 第 4 章 |
| OpenCode | 社区开源多模型 CLI Agent,支持 OpenAI / Anthropic / Ollama 等多后端切换 | github.com/opencode-ai/opencode | TypeScript | 多 Provider 适配、TUI 界面(Ink)、LSP 集成、Session 持久化、可扩展工具系统 | 第 5 章 |
| DeepAgents | LangChain 官方深度研究 Agent 框架,面向多步推理与长链任务 | github.com/langchain-ai/deep-agents | Python (LangChain / LangGraph) | 计划-执行分离、Human-in-the-loop、多 Agent 编排、流式输出 | 第 23 章(另见第 16、20 章) |
| Mini-Codex | Rust 极简教学实现,用约 500 行代码复现 CLI Agent 核心循环 | github.com/anthropics/courses(示例项目) | Rust | 极简 Agentic loop、Tool Use 手动解析、教学向、零依赖设计 | 第 8 章 |
说明:表中 GitHub 地址基于撰写时的公开信息,部分项目可能更名或迁移,请以搜索引擎查询最新地址为准。
A.2 框架与编排工具
| 项目 | 简介 | GitHub / 官方地址 | 语言 | 核心特点 | 相关章节 |
|---|---|---|---|---|---|
| LangGraph | LangChain 团队的状态机编排框架,将 Agent 工作流建模为有向图 | github.com/langchain-ai/langgraph | Python / TypeScript | 状态图(StateGraph)、条件分支、检查点与回滚、Human-in-the-loop、子图组合 | 第 23 章 |
| LangChain | LLM 应用开发框架,提供 Chain / Agent / Tool 等核心抽象 | github.com/langchain-ai/langchain | Python / TypeScript | Prompt Template、Tool 接口标准化、Memory 管理、Callback 机制 | 第 23 章 |
A.3 RAG 与知识管理工具
| 项目 | 简介 | GitHub / 官方地址 | 语言 | 核心特点 | 相关章节 |
|---|---|---|---|---|---|
| LightRAG | 轻量级 Graph RAG 框架,结合知识图谱与向量检索实现增强检索 | github.com/HKUDS/LightRAG | Python | 图+向量双路检索、增量更新、低资源友好、多后端支持 | 第 9 章 |
| Neo4j | 原生图数据库,广泛用于知识图谱存储与查询 | github.com/neo4j/neo4j | Java | Cypher 查询语言、ACID 事务、高性能图遍历、丰富生态 | 第 9 章 |
A.4 结构化输出与约束工具
| 项目 | 简介 | GitHub / 官方地址 | 语言 | 核心特点 | 相关章节 |
|---|---|---|---|---|---|
| xgrammar | 基于形式文法的 LLM 输出约束引擎,在 token 采样层强制结构化输出 | github.com/mlc-ai/xgrammar | C++ / Python | BNF/EBNF 文法定义、Token-level masking、高性能、与推理引擎集成 | 第 3 章 |
| instructor | 基于 Pydantic 的 LLM 结构化输出库,通过类型标注自动生成 JSON Schema 约束 | github.com/instructor-ai/instructor | Python | Pydantic 模型驱动、自动重试与校验、多 Provider 支持、流式结构化输出 | 第 3 章 |
A.5 协议与标准
| 名称 | 简介 | 官方地址 | 相关章节 |
|---|---|---|---|
| MCP (Model Context Protocol) | Anthropic 提出的模型上下文协议,标准化 Agent 与外部工具/数据源的通信方式 | modelcontextprotocol.io | 第 16 章 |
| Tool Use (Function Calling) | 各大模型厂商支持的工具调用接口范式,允许模型以结构化方式请求执行外部函数 | 各厂商 API 文档 | 第 1–8 章 |
A.6 快速对比:CLI Agent 三项目
以下表格对比本书三个主要 CLI Agent 项目在关键维度上的差异,便于读者选型参考。
| 维度 | Claude Code | Codex (OpenAI) | OpenCode |
|---|---|---|---|
| 开源状态 | 闭源产品 | 开源 (Apache 2.0) | 开源 (MIT) |
| 核心语言 | TypeScript | Rust + TypeScript | TypeScript |
| 模型支持 | Claude 系列 | OpenAI 系列(o3/o4-mini 等) | 多模型(OpenAI / Anthropic / Ollama 等) |
| 沙箱机制 | macOS Seatbelt + Linux 容器 | tofu-sandbox (Landlock/seccomp) | 无内置沙箱 |
| 权限模型 | 三级(Ask / Auto-edit / Dangerously) | 三级(Suggest / Auto-edit / Full-auto) | 用户确认制 |
| 配置方式 | CLAUDE.md 约定文件 | instructions.md + CLI flags | TOML 配置文件 |
| TUI 界面 | 内置 Ink 终端 UI | 内置终端 UI | Ink 框架 TUI |
| 上下文管理 | 自动压缩 + /compact 命令 | 自动压缩 | Session 持久化 |
| 扩展机制 | MCP Server | MCP Server(计划中) | 自定义 Tool 注册 |
A.7 版本说明
本书分析基于以下版本/时间点的代码与文档,实际使用时请参照项目最新版本:
| 项目 | 参考版本/时间 | 备注 |
|---|---|---|
| Claude Code | 2025 Q2 公开版本 | 以官方文档为准,源码未开放 |
| Codex (OpenAI) | 2025 年 4 月首次开源 | 快速迭代中,API 可能变化 |
| OpenCode | 2025 年中 v0.x | 社区驱动,接口尚在稳定化 |
| LangGraph | v0.2.x | 与 LangChain v0.3 配套 |
| LightRAG | 2025 年版本 | 持续演进中 |
| xgrammar | 2025 年版本 | 与 MLC-LLM 生态配套 |
| instructor | v1.x | Pydantic v2 兼容 |