从 0 到 9,一步步从零手写你的 Agent —— 最终对齐 pi(f:\piagent)的架构
这份教程从 0 开始,每步一个可运行项目,讲透一个概念后再往前。
task8.html、task9.html),至此 0~9 全部打通。学完一步,可以按这张表去 f:\piagent 里找对应模块精读。
| 你的步骤 | 概念 | pi 对应模块 |
|---|---|---|
| 1~3 | 最小调用 / 主循环 / 工具 | packages/ai(模型抽象)、packages/agent/src/agent-loop.ts(主循环) |
| 4 | 多 Provider 抽象 | packages/ai(provider / models 抽象) |
| 5 | 交互模式 REPL | packages/tui(终端 UI:input / editor / keybindings) |
| 6 | 对话历史 + 截断 | packages/agent/src/agent-loop.ts(消息循环 + compaction) |
| 7 | 技能按需加载 | packages/agent/src/harness/skills.ts(skill 机制) |
| 8 | 健壮化(重试 / 超时 / 错误分层) | packages/ai(fetchWithRetry / 错误分层) |
| 9 | TUI 与发布(流式 / 颜色 / bin) | packages/tui(tui-render / streams) |