Prime Agent 自我改进 RLM 智能体详细部署教程

Prime Agent 是一个开源的编码与研究智能体,专为长时间运行的复杂任务而设计。它基于**递归语言模型(RLM)持续训练框架(Continual Harness)**两大核心概念,将持久化的 Python 环境与可演进的状态相结合,让智能体能够记住、改进和委派任务。本教程将指导你完成安装、配置和首次使用。


📋 目录

  1. Prime Agent 是什么
  2. 核心概念与工作原理
  3. 安装前准备
  4. 详细安装步骤
  5. 首次启动与认证
  6. 核心功能与使用
  7. 高级特性与配置
  8. 更新与卸载
  9. 安全提示与常见问题

Prime Agent 是什么

Prime Agent 是一个 harness(工具框架),而不是一个模型。它为前沿语言模型提供了一个可编程的运行环境,使其能够执行长期任务、自动改进和递归协作。简单来说,它让模型拥有了一个”工作台”和”长期记忆”。

核心亮点

  • 自我改进:通过 /refine 命令分析执行轨迹,对自身状态进行有证据支持的小幅更新,实现持续进化。
  • 递归子智能体:父智能体可以像调用函数一样(rlm(...))生成独立的子智能体,并行或后台处理子任务,并以编程方式获取结果。
  • 持久会话:基于守护进程的智能体会在终端断开后继续在后台运行,并可以随时重新连接。
  • 一切皆可编程:持久化的 IPython 是内置模型工具,文件操作、Shell 命令、子智能体调用等均通过代码发生。
  • 可执行的技能:技能是可直接导入的 Python 包,内置技能创建器可将重复工作流转化为项目或个人技能。

核心概念与工作原理

  • 递归语言模型 (RLM):将上下文视为可编程变量(prompt-as-a-variable),将工具和递归子智能体视为函数调用(programmatic tool/sub-agent calling)。它通过 await rlm("subtask") 这样的异步原语创建工作流,父进程可以继续执行其他操作。
  • 持续训练框架 (Continual Harness):存储补充提示词、记忆、技能描述和可重用的子智能体规范作为持久状态。智能体可以通过 /refine 对其自身进行审慎的、有证据支撑的更新,从而在会话之间保留有用的工作模式和上下文。
  • 会话与分支:会话以 JSONL 格式存储在 ~/.prime/agent/sessions/ 中,支持会话树结构和原地分支。你可以使用 /tree 导航到任何历史节点继续工作,或使用 /fork 从某一点创建独立的新分支。

安装前准备

系统要求

  • 操作系统:Linux 或 macOS(Windows 原生暂不支持,需使用 WSL2)。
  • Node.js:运行安装的二进制文件通常不需要,若从源码运行则需 Node.js 22.8.0 或更新版本
  • 网络:能够访问互联网以运行安装脚本和下载发布包。

可选依赖

  • Python:Agent 会使用持久化的 IPython 内核,首次启动时会自动准备运行环境。你可以通过设置 PRIME_AGENT_KERNEL_PYTHON 环境变量来指定使用已有的 Python 环境(需包含 ipykernel)。
  • git:用于克隆仓库(若从源码安装)。

详细安装步骤

方式一:一键安装(推荐)

打开终端,执行以下命令安装最新稳定版:

1
curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh

如果想尝试最新的测试版(基于 main 分支),可以运行:

1
curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh -s -- beta

该安装脚本会下载经过校验的发布包,验证其 SHA-256 校验和,安装 prime-agent 命令,并准备 IPython 运行时。

方式二:从源码安装(开发/探索)

适合需要最新未发布特性或进行二次开发的用户:

1
2
3
4
5
6
7
8
9
# 1. 克隆仓库
git clone https://github.com/PrimeIntellect-ai/prime-agent
cd prime-agent

# 2. 安装依赖(需要 Node.js 22.8.0+)
npm ci

# 3. 通过源码启动脚本运行(保留调用目录)
./prime-agent.sh

源码运行器会保留它被调用的目录,因此你也可以从其他项目目录调用 /path/to/prime-agent/prime-agent.sh


首次启动与认证

1. 启动 Prime Agent

在你的项目目录中启动,它会默认在当前工作目录下工作:

1
2
cd /path/to/your/project
prime-agent

2. 认证 (/login)

首次启动时,运行 /login 命令选择模型提供商。

支持两种方式:

  • 订阅登录 (Subscription):支持 Claude Pro/MaxChatGPT Plus/Pro (Codex) 以及 GitHub Copilot。选择后按提示完成登录。
  • API 密钥 (API Key):支持 AnthropicOpenAIGoogle GeminiGroqDeepSeekxAI 等众多厂商。你可以通过环境变量(如 export ANTHROPIC_API_KEY=sk-...)在启动前设置,或在 /login 交互中存储到 ~/.prime/agent/auth.json。也支持通过 models.json 添加任何兼容 OpenAI 的端点(如 vLLM、Ollama)。

3. 执行第一次任务

认证完成后,你可以输入自然语言指令:

1
总结这个仓库,并告诉我如何运行其测试。

Prime Agent 会使用其持久化 IPython 内核来读取文件、执行命令并返回结果。


核心功能与使用

基础交互

  • 切换模型:在交互界面中使用 /model 或按 Ctrl+L 切换模型。
  • 设置推理强度:使用 /effort 调整模型的推理预算。
  • 运行 Shell 命令:在交互模式下输入 !npm run lint,命令输出会发送给模型。使用 !!command 则运行命令但不将输出加入上下文。
  • 引用文件:在编辑器中输入 @ 来模糊搜索文件并引用,或通过命令行传递:prime-agent @README.md "总结这个"

会话管理

  • 会话自动保存:会话自动保存在 ~/.prime/agent/sessions/ 中。
  • 继续上次会话prime-agent --resumeprime-agent -c
  • 查看所有会话prime-agent agents 浏览运行中、空闲和已保存的会话。
  • 重新附着会话prime-agent attach <agent> 重新连接到正在后台运行的会话。
  • 会话分支:在交互界面使用 /tree 导航历史,使用 /fork 从某个节点创建新分支。

递归子智能体 (RLM)

这是内置的核心能力。模型可以通过在 IPython 环境中执行 await rlm("子任务描述") 来生成一个独立的子智能体。该调用会立即返回一个子句柄,子智能体的结果会通过显式的 agent_message 回复或写入文件的方式返回给父智能体。你可以直接提示模型:

1
将代码审查和测试覆盖率检查作为独立子任务并行运行,然后综合所有发现。

高级特性与配置

自我改进 (/refine)

/refine 命令会回顾当前的执行轨迹(trajectory),并对持续训练框架的补充状态进行小规模、有证据支持的更新。它不会重写不可变的系统提示词,而是调整那些可演化的部分,并支持回滚。

项目指令 (AGENTS.md)

Prime Agent 在启动时会加载上下文文件。你可以在项目根目录创建 AGENTS.md(或 CLAUDE.md)来指导它的工作方式:

1
2
3
4
5
# 项目指令

- 代码修改后运行 `npm run check`
- 不要在生产环境本地运行迁移。
- 保持回复简洁。

它会加载:全局的 ~/.prime/agent/AGENTS.md,以及从当前目录向上查找的所有 AGENTS.mdCLAUDE.md

长时间运行与自治模式

  • 后台运行:守护进程确保会话在终端断开后继续运行。
  • 自治模式/autonomous 命令让智能体在设定的轮次、令牌和时间预算内持续工作,并可通过用户定义的质量门禁(quality gate)来验证任务完成状态。
  • 目标与心跳/goal 保持目标在跨轮次中持续有效。/heartbeatprime-agent schedule 可用于定时或周期性唤醒会话。

配置与设置

  • 使用 /settings 修改常用选项。
  • 配置文件位于:~/.prime/agent/settings.json(全局)和 .prime/agent/settings.json(项目,覆盖全局)。

更新与卸载

更新 Prime Agent

1
prime-agent update [--force]

卸载 Prime Agent

此操作会移除命令行程序和安装程序管理的 PATH 条目。如需同时删除 ~/.prime 目录下的状态,可加 --purge 参数,但建议先备份。

1
2
3
4
5
6
7
8
# 预览要删除的内容
prime-agent uninstall

# 执行卸载(保留数据)
prime-agent uninstall --yes

# 执行卸载并清除所有状态
prime-agent uninstall --purge --yes

如果 prime-agent 命令本身已损坏,可运行独立的卸载脚本:

1
curl -fsSL https://app.primeintellect.ai/prime-agent/uninstall.sh | sh

安全提示与常见问题

⚠️ 重要安全警告

Prime Agent 以你的用户权限执行模型生成的 Python 代码和项目命令。其 worker 和 kernel 进程提供了生命周期隔离和恢复能力,但它们不是安全沙箱

  • 推荐做法:在一次性克隆环境受限制的隔离环境(如容器、虚拟机)中运行。
  • 仅使用可信的仓库、指令、技能和扩展
  • 假定任何拥有网络访问权限和 shell 访问权限的东西都可能被操纵。

常见问题

问题/login 后看不到某些模型。
解决:确保已安装对应的提供商支持,并检查 ~/.prime/agent/auth.json 中凭据是否正确。可通过 prime-agent model list 查看可用模型。

问题:IPython 内核启动失败。
解决:确保 Python 环境已正确安装 ipykernel。可以通过设置 PRIME_AGENT_KERNEL_PYTHON 指向一个有效的 Python 解释器路径。

问题:希望迁移到另一台机器。
解决:复制 ~/.prime/agent/ 目录(包含配置、认证和会话数据)即可。注意不同机器的项目路径可能不同,会话中的工作目录可能需要调整。


通过以上步骤,你应该能够成功安装并开始使用 Prime Agent。它强大的自主性、自我改进能力和递归子智能体架构,使其成为处理复杂编码和研究任务的得力助手。如需更深入的信息,请查看项目官方文档和 README。