Prime Agent 只给模型一个 IPython:当工具菜单坍缩成一门语言
论文动机原话:"Language models are sequential processors, but long-horizon agency requires external information and computation beyond model weights and active contex…
一、为什么只有一个工具:把 N 个谓词接口烧成一门语言
论文动机原话:"Language models are sequential processors, but long-horizon agency requires external information and computation beyond model weights and active context." 传统多工具方案在这个约束下要交三重税:
- 接口税:每个 JSON schema 工具是一个窄谓词(读文件、跑命令、搜代码……),组合逻辑要么预先编死在 harness 里,要么不存在。模型拿到的是动词表,不是造句能力。
- 状态税:每次工具调用是无状态往返,结果要么全量塞回 token 流(挤爆上下文),要么丢掉(下一步重建)。
- 菜单税:新能力=改 harness 代码。菜单是死的,模型面对长尾任务只能将就。
ipython。文件操作、shell、技能、子代理、上下文管理,全部从持久 kernel 里用代码调。工具菜单坍缩成一门语言——预定义动词表换成模型即时编程。论文给自己的设计起的名字值得抄下来:"low-friction, expressive membrane"(低摩擦、高表达的膜)——harness 标准化执行/恢复/验证/资源记账,策略构造留给模型,膜的作用是"harness 失败不变成模型失败"。这不是孤例,是一条谱系的极限点:CodeAct(2024)→ smolagents 的 CodeAgent → OpenHands 的 Jupyter kernel → Prime 把"代码即动作"推到"唯一工具"。同向的还有 Anthropic 的工具设计指南(少而通用胜过多而窄)。我自己的十六验主线在此迎来一个对偶数据点:那边是"结构在窄接口处被丢"(N 个 JSON 谓词丢关系),这边是接口数量坍缩成一个、结构由代码承载——接口设计光谱上,Prime 站在泛化最大化的极端。
反面证据照例摆上台面(HN 评论区三连): 1. riddlemethat(自建过同类 harness):底座模型进步后,"它们已经不太需要这个 harness 了"——.md 文件存上下文就够。harness 增益会被模型进步吸收。 2. oofbey:论文里"递归"的增益,可能主要是贵模型当 root、便宜模型当子代理的成本结构,不是递归本身。 3. embedding-shape:仓库本身是 LLM 生成的膨胀代码——多文件近 10K 行,一个 switch 语句超过 1000 行。自改进 agent 的宿主自己是 slop,讽刺但有信息量:语言派把治理问题转化成了代码审查问题。
二、状态怎么保存:三层持久化 + 一条特权总线
这是三问里设计最讲究的部分,分三层:
L1 内核态(工作记忆):变量、import、函数、解析结果、任务句柄跨 turn 跨 compaction 存活。核心概念论文叫 prompt-as-a-variable / context-as-variables——上下文不再挤 token 流,住进 Python 命名空间。compaction 摘要旧对话,但 kernel 态不动:什么进 token 流、什么不进,从架构默认变成了显式编程决策。
L2 磁盘态(会话):JSONL transcript + session artifacts;daemon 化的 worker 让终端断开≠会话停止(attach/detach);worker 或 supervisor 重启能恢复调度,还能 rehydrate 已完成的子代理。
L3 harness 态(跨轨迹经验):这是 Continual Harness 论文的主场——增量 prompts、memories、技能描述、子代理规格存成 durable state,/refine 命令审当前轨迹后做小步、证据背书的更新。关键设计两条:永不重写不可变基座 system prompt;每次精炼有快照、可回滚。
再加一条总线:Host Bridge。goal/agent_message/heartbeat/compact 这些特权操作走 typed host request,由 TypeScript 宿主验证并持有状态转移——"凭证、provider 执行、转录写、worker 路由、调度不进 Python,同时保留编程式模型接口"。膜的两面两种语言:特权面住 TS,表达面住 Python。
主线回接三连:①"草稿纸从 token 流里搬走"——上周 Mobius 把工作记忆搬进隐空间(参数级),这周 Prime 搬进 Python 堆(符号级),CoT 废话文学的两种工程解,同构不同层;②可逆性=agent 自改物理前提(Cordis 定律)的 harness 层第二案:不可变基座+增量层+回滚快照——自改的可逆性设计正在从 Cordis 一家变成行业标配;③策划型外存家族再添一员:kernel 命名空间=摩擦最低的外置工作记忆,且它是活的(可执行),不是死档案——正好接昨天的结论:奏折存档是碑林不是免疫系统,Prime 的 kernel 态是免疫细胞。
三、工作流复用与子代理编排:经验固化为技能,编排坍缩为函数
复用的答案是 skill 化。skill = Agent Skills 标准的超集:markdown 指令 + 装进 kernel 的 Python 包 + 类型化调用签名(report = await release_audit(repository=".", ...))。两个设计细节见功力:启动 prompt 只放 skill metadata,任务匹配才加载全文——上下文按需加载的经济学;内置 skill-creator 技能教 agent 自己造 skill——复用闭环。Python skill 还可以自己调 rlm(),递归委托装进技能。放在自改进栈上看:CoE 的 trail 是非结构化经验,Prime 的 skill 是固化成代码的经验——经验→代码通道的产品化。
编排的答案是 rlm() 原语。kernel 里预载一个可调用对象:
handle = await rlm("Review the public API", name="api-reviewer")
三个反直觉设计:①调用立即返回 admission handle(id/name/session_dir/model),从不等结果——结果只通过 agent_message 回信或文件到达,这是纯异步消息传递;②子代理由 TS 宿主创建独立 AgentSession(独立上下文、独立目录),继承父的模型/技能/重试策略,除非显式换——编排拓扑不在框架里,在代码里,并行=多调用+结束本 turn,递归深度可配置;③agent 间直连:auto/steer/follow_up 三种投递模式带回执(delivered/queued),daemon 强制消息大小、速率、队列上限——协议在守护进程里,不在模型手里。
最漂亮的一条架构不变量藏在 architecture.md:从会话队列往后,prompt 来自心跳、cron、goal、autonomous 模式还是另一个 agent,走同一条执行与持久化路径。来源不影响执行面——这是把"谁在说话"和"怎么执行"彻底解耦。
编辑观察
同周对照昨天刚发的 CAS 治理篇,浮现一组路线分野:Edict(三省六部,16.8k★)给 N 个角色加制度,Prime 给 1 个工具加语言。组织学派用封驳和审计换确定性,语言学派用表达式和回滚换覆盖面。我上周说 agent 社会的治理缺口是"死亡机制",Prime 的回答其实是另一个方向:先别急着建社会,把语言给够——很多需要制度协调的场景,在图灵完备的单接口里退化为函数调用。但语言派的代价也真实:治理点从"部门"散到"每行代码",所以文档里两处强调"不是 security sandbox"、README 原话"A passed gate checks only what that gate verifies"——诚实边界学满分,治理带宽问题原样保留。
最后记一个彩蛋:Continual Harness 论文的 origin story 是 Gemini Plays Pokemon——第一个通关 Pokemon Blue、困难模式 Yellow Legacy 和 Crystal 且不丢一战的 AI 系统。人类在环精炼 harness 时发现 agent 开始自涌现改进信号,于是干脆把人类从环里去掉,做成 reset-free 自改进。从 Pokemon 到 ARC-AGI-3,这条线本身就是"长视野部分可观测决策"的连续性证明。至于公司名 Prime Intellect——来自 localroger 1994 年的科幻中篇,讲的是人类造出第一个 AGI 之后的故事。取名即世界观,HN 老哥们为了那篇小说的原文内容打了三层内容警告,这里只取名字,不展开。
*核查备注:star/fork/建仓时间取自 GitHub API(2026-09-02 实抓);30%→95.5% 与所有引号文字取自 arXiv 2608.23552 / 2605.09998 摘要与官方文档(README、usage/rlm/architecture/skills/long-running-agents.md 原文);HN 评论取自 hn.algolia.com item 49189075;"不在官方 ARC 榜"为 HN 用户 tintor 指出,未独立复核 arcprize.org。*