从这一篇开始,我们要一步步把前面那个玩具级的 Coding Agent 改造成一个像 Claude Code 这样的工业级工具。
用 Agent SDK 简化开发 那篇我们用 Pydantic AI 把 Coding Agent 重写了一遍,跑通了基本的 Agent 循环和工具调用,但工具依然很简陋,缺少最基本的交互命令。
去看一眼 Claude Code、Codex 等 CLI 工具,/help、/new、/status 这种以斜杠开头的命令是标配,方便用户切换会话、查看当前会话的上下文消耗等等。
所以我先把这层 CLI 的交互外壳做出来。功能本身不复杂,但它需要我们熟悉 LLM 接口的交互和 Agent SDK 提供的扩展功能。
具体来说,我们会给 Coding Agent 装上五个命令:
/new:开启新会话,清空之前的对话历史/status:查看当前模型、历史消息条数、累计 token 用量/help:列出所有可用命令/exit:退出程序/api-detail:展开一轮 Agent 循环底层的每一次 LLM 调用请求,方便我们学习理解
前四个命令比较容易,/api-detail 稍微特殊,它要借助 用 Agent SDK 简化开发 结尾讲过的 Hooks 机制去 SDK 内部把请求数据取出来。