← 返回藏书阁

pi-rlm — persistent single execute tool for agents

wiki/ai/sources/pi-rlm-persistent-code-execution-tool.md
分类:ai / sources · 更新:2026-08-16 09:08

pi-rlm — persistent single execute tool for agents

为什么重要

pi-rlm 提出一个激进但有启发的工具面设计:把 read、shell、edit、search、subagent 等能力收敛成单一 execute 工具,让 agent 在持久 Bun/TypeScript evaluator 中用代码表达动作。对 Hermes 来说,它的价值不在于立即替换工具系统,而在于提醒:工具 schema 越多,模型选择负担越重;可持久、可组合、可验证的执行命名空间可能减少重复读取和 transcript parsing。

机制 / 一阶原理

核心机制是 host/guest 两进程:pi extension 注册 execute tool,EngineManager 管生命周期、队列、输出和快照,guest Bun 进程拥有 namespace 并执行 cell。变量、函数、imports 跨 cell 持久化;shell 输出作为对象返回;subagents 作为 stack frames 记录到磁盘;成功 cell 自动 snapshot。ARCHITECTURE.md 强调几个不变量:单 cell 顺序执行、输出归属当前 cell、cell 不能伪造自己的结果、取消只损失一个 cell、不可序列化值要诚实报告。

与已有概念的关系

  • 补强 Harness-Engineering:工具面本身是 harness;单工具 + 程序语言 namespace 可以降低 tool routing 噪音,但必须有 authenticated protocol 和 output ownership。
  • 连接 Context-Engineering:中间结果保存在变量而不是对话文本中,能减少重复解析与长上下文污染。
  • 连接 Agentic-Coding:subagent-as-call-stack 是一种把 delegation 从对话模式推进到可观察执行结构的设计。

对 Hermes / llm-wiki 的可执行启发

  1. Hermes 不必复制单工具设计,但应学习“结果作为结构化值”而不是 transcript 的原则。
  2. 对长任务,保留可恢复 namespace / artifact registry 比让模型回读整段历史更可靠。
  3. 若未来扩展 Hermes 工具,应评估新增工具是否真的减少复杂度,还是增加 tool selection noise。

失败模式 / 边界

单 execute tool 扩大了 code execution 权限边界,npm import 会运行依赖代码,Bun/Node 环境也带来供应链风险。持久 namespace 可能积累过期变量或隐式状态;因此需要 explicit forget、snapshot report、权限隔离和任务级 sandbox。

写入记录

  • 2026-08-16 09:00 CST:新增 pi-rlm 来源页,沉淀 persistent evaluator、single-tool surface、output ownership 与 Hermes 工具面设计启发。