一句话定位: Prime Intellect 出品的开源自进化 coding agent——围绕 Recursive Language Model(RLM)与 Continual Harness 两大抽象构建,持久 IPython 内核作为唯一模型工具面,rlm(...) 原生派生子 Agent,/refine 以证据驱动的小步更新持续改进 harness 状态,专为长时域自主任务设计。

GitHub: PrimeIntellect-ai/prime-agent Stars: 15,752 | License: MIT | Language: TypeScript | 创建: 2026-05(3 个月 15k+ stars) 基座: fork 自 pi(本 wiki 的 oh-my-pi 同源的 Pi coding agent)

为什么值得关注

  • RLM 范式的完整工程落地:把 Prime Intellect 博客提出的 Recursive Language Model 做成了可用产品——上下文即变量(prompt-as-a-variable)、工具调用即程序内函数调用、子 Agent 即递归调用,全部发生在一个持久 Python REPL 里
  • 自进化不靠改 system prompt:Continual Harness 把补充提示词/记忆/技能描述/子 Agent 规格存为持久状态,/refine 只做小幅、有证据支撑的增删改,基础 system prompt 不可变,全程快照可回滚(论文:Continual Harness, arXiv:2605.09998)
  • 长时域能力全家桶:daemon 后台常驻(终端断开继续跑)、自动 compaction、持久 goal、heartbeat、cron 调度、有预算约束的自主模式 + 质量门
  • Agent 间直接通信:运行中的 Agent 与保留的子 Agent 可互相发现、发消息、指挥对方,不必经过用户中转
  • 为评测/研究而生:官方定位明确支持长时程 evals,配套 verifiers 与 prime-rl(RL 训练),是 Prime Intellect「agent ↔ RL 训练闭环」的前端
  • 兼容 Agent Skills 标准,并扩展出可执行 Python 包的技能形态

两大核心抽象

1. Recursive Language Model(RLM)

默认只有一个内置模型工具:ipython。读写文件、跑 shell、转换数据、调技能、派活,全部从持久 IPython 内核里以代码完成:

# Python 状态跨工具调用、跨 compaction 存活
config_files = list(Path(".").rglob("*.toml"))
%%bash          # 每个 cell 是临时子 shell,Python 状态不受影响
npm run check

子 Agent 是原生 RLM 调用:内核预载可调用对象 rlm:

handle = await rlm("Review the authentication flow", name="auth-reviewer")
# 立即返回 handle(rlm_child_id/name/session_dir/model),不阻塞等答案
  • 多个独立子任务分别 spawn 后结束本轮,不等完成
  • 结果只通过 agent_message 显式回复或文件传递,rlm() 永不返回子 Agent 的答案
  • 子 Agent 注册表存活于 compaction、内核重启、父会话恢复之后;可 rlm.list_subagents() / delete_subagent() 管理
  • 递归深度可配置,默认只允许 root 派生子级

Host Bridge:凭证、provider 执行、transcript 写入、路由、调度等权威状态留在 TypeScript 宿主侧;Python 侧通过 rlm.host_request(...) 发类型化请求(goal、agent_message、rlm_heartbeat、compact 等技能都是薄封装)。

2. Continual Harness(自进化机制)

rlm.harness 是一个持久状态账本:prompt notes、memories、可复用技能描述、子 Agent 规格、refinement 事件。

  • 会话级状态存于 session-artifacts/<id>/harness/harness_state.json,显式全局条目在 ~/.prime/agent/harness/
  • /refine 对当前轨迹做专项复盘,应用 create/update/delete 小编辑;每次改动记录 before/after 快照支持回滚
  • 基础 system prompt 永远不可变,refinement 只是补充状态
  • harness 里的”技能条目”是可复用 Python 调用的持久描述,与真正的已安装技能包互补:重复流程先沉淀为条目,成熟后再用 skill-creator 打包

这与 agent-continual-learning 的 Harness 层持续学习、sia 的 Self-Improving 思路同赛道,但走的是”状态账本 + 小步可回滚”的保守工程路线,而非直接改 harness 文件。

架构(五层分治)

TUI 客户端(只管渲染/输入)
  → AgentConnection(客户端执行边界,快照/重放/重连)
    → Daemon supervisor(路由/attach/worker 健康/跨 Agent 消息投递)
      → Session worker(一个 root 会话树:AgentSessionRuntime + Scheduler)
        → AgentSession(provider 调用/队列/工具/compaction/goal/子级生命周期/transcript)
          ↔ IPython kernel(模型面控制环境,独立进程)
  • worker 与 kernel 分进程是为了生命周期隔离与故障恢复,不是安全沙箱(官方明确警告:模型生成的 Python 以用户权限执行)
  • 会话持久化为 JSONL;kernel 状态存 kernel-state.dill;子 Agent 有独立 session 目录
  • 无论 prompt 来自用户、heartbeat、cron、goal 续跑、自主模式还是别的 Agent,进入会话队列后走同一条执行/持久化路径
  • 支持 JSON / RPC headless 模式、SDK 嵌入、ACP 协议(ACP 没有的能力走 _meta 反向域名信封)

Skills 体系

  • 实现 Agent Skills 标准(SKILL.md 发现/路由/指令),违规警告但宽容
  • Python-backed skills 是超集:技能自带 Python 包,安装进内核环境后按 import 名直接调用:
    report = await release_audit(repository=".", target_version="0.4.0")
  • 启动 prompt 只注入技能元数据,任务匹配时才加载完整 SKILL.md(与 agent-skill-loading 两阶段加载一致)
  • 加载位置:~/.prime/agent/skills/、~/.agents/skills/、项目 .prime//.agents/、package.json、--skill、内置(优先级最低)
  • 内置技能:prime-intellect(Prime 全家桶 CLI 入口)、skill-creator(教 Agent 造技能)、websearch(Serper API)

长时域能力清单

能力入口说明
后台常驻prime-agent attach <agent>daemon-backed,终端断开继续跑
持久目标/goal目标跨轮存活直到完成/暂停/清除,含 token/时长预算
Heartbeat/heartbeat、rlm_heartbeat周期性或定时重入会话
调度prime-agent schedulecron 式定时 prompt
自主模式/autonomousturn/token/时间三重预算 + 用户自定义质量门;官方明确”过门≠任务成功”
上下文压缩自动 compaction保近期消息与内核状态,摘要旧上下文

快速上手

curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh
cd /path/to/project && prime-agent    # 首次 /login 选订阅或 API key provider
prime-agent agents                    # 浏览运行中/空闲/已保存会话
prime-agent status                    # 后台服务状态
prime-agent doctor --fix              # 诊断修复

Monorepo 结构:packages/{ai(provider 注册表/MCP), agent(agent loop 内核), coding-agent(CLI/core/文档), tui}。

相关页面

资源