正在打开每日关注
正在打开每日关注
smallnest 用 Go 重写 pi agent,以 pigo 与配套电子书拆解双层循环、工具执行和信任边界。
使用Go又重写pi agent, 以前重写是为了复制openclaw,这次纯粹是为了它的小巧灵。 还专门为项目写了本书: https://t.co/QuYqXR4CZW https://t.co/jIiZhn79Q7
是什么 pigo 是 smallnest/pigo 用 Go 复刻的 pi 命令行编码智能体,支持无头 -p 脚本和交互式 REPL,可读写文件、检索代码、执行命令、抓取网页,并借助模型完成编码闭环。仓库创建于 2026-07-09,给定元数据为 398 stars,最近提交于 2026-08-12,要求 Go 1.27+,并附配套电子书。
核心设计 内层 turn 循环反复执行流式回复、停止原因分派、工具串行或并行执行和结果回填,直到没有工具调用;外层消费 follow-up 消息,必要时重跑内层。自然结束、错误、终止等路径统一汇入唯一出口 finish()。架构图将 CLI、Agent Loop、Provider、会话存储、上下文压缩、工具执行器、子 Agent 与信任闸门分层,并隔离外部网络和本地环境。
值得借鉴 把模型流、工具副作用、权限确认和会话状态拆开,再用多 Provider、stream-json、会话续跑、Skills/插件、包管理和 SDK 嵌入覆盖交互、脚本与集成场景;图解也提供了清晰的教学与代码导航。
坑与边界 给定 README 能证明功能范围,不能证明生产成熟度;实际使用还受 Go 版本、协议网关和 API 配置影响。--approve 会放宽 bash、write、edit 的确认,工具准入、网页访问与插件加载应按环境审慎验证。