青蛙小白

Pi SDK 学习笔记(三):工具面与安全边界

上一篇把内部事件映射成公开 SSE 协议:工具状态可见,工具内容不可见。这一篇接着谈安全边界:Agent 能调哪些工具,自定义工具在「描述 / schema / 执行」上各自守哪一段。 CLI 那套默认工具,原样搬到长时间跑的 Web 服务上会过宽。bash 一开,模型就能在服务端进程上下文里跑 shell;edit / write 默认开着,任何能发 prompt 的人都能改磁盘。工具面本身就是信任边界的一部分。

Pi SDK 学习笔记(一):最小会话与模型运行时

最近在认真看 Pi SDK,想把它真正嵌进自己的程序里。光读官方示例容易囫囵吞枣,所以我从最小的命令行调用开始自己写,打算一步步把它长成支持多会话、SSE、工具策略和持久化的 Web Agent。这篇记第一段做的事:最小会话与模型运行时。 目标看起来很轻——用 OpenAI Chat Completions 兼容服务跑通一个内存会话,订阅文本增量,dispose() 收尾。但真正动手会发现几个容易糊过去的概念得先摆到台面上:ModelRuntime、AgentSession、SessionManager 的边界;「模型已注册」和「模型已有有效认证」是两回事;以及为什么不该直接用无参数的 createAgentSession()。

Pi Coding Agent 上手(二):Plan Mode、Subagents 与 Workspace History

上一篇装完 Pi CLI 和第一批 Extension,也完成了模型调用。不过那时的 Pi 仍然很接近它所说的 minimal harness:能工作,但 Plan Mode、Goal Mode、Subagent、MCP 和 Workspace History 都要我们自己定制。 这次继续看七个包: pi install npm:pi-slopchop pi install npm:@narumitw/pi-goal pi install npm:@narumitw/pi-plan-mode pi install npm:pi-subagents pi install npm:pi-btw pi install npm:pi-mcp-adapter pi install npm:pi-workspace-history 这里最需要先处理的是 pi-subagents。上一篇已经安装了 @router-for-me/pi-subagents-lite,两边做的都是 Subagent。我想先弄清楚它们会不会冲突,以及功能更完整的那一个到底多了什么。