Skip to content

OpenProse

OpenProse 是一种可移植的、以 Markdown 为先的工作流格式,用于编排 AI 会话。在 openclaw 中,它作为一个插件提供,安装一个 OpenProse 技能包加上一个 /prose 斜杠命令。程序存在于 .prose 文件中,可以生成多个具有显式控制流的子智能体。

官方网站:https://www.prose.md

它能做什么

  • 具有显式并行性的多智能体研究 + 合成。
  • 可重复的、审批安全的工作流(代码审查、事件分类、内容管道)。
  • 可重用的 .prose 程序,可以在支持的智能体运行时中运行。

安装 + 启用

捆绑的插件默认是禁用的。启用 OpenProse:

bash
openclaw plugins enable open-prose

启用插件后重新启动网关。

开发/本地检出:openclaw plugins install ./extensions/open-prose

相关文档:插件插件清单技能

斜杠命令

OpenProse 将 /prose 注册为用户可调用的技能命令。它路由到 OpenProse VM 指令,并在底层使用 openclaw 工具。

常用命令:

/prose help
/prose run <file.prose>
/prose run <handle/slug>
/prose run <https://example.com/file.prose>
/prose compile <file.prose>
/prose examples
/prose update

示例:一个简单的 .prose 文件

prose
# 两个智能体并行运行的研究 + 合成。

input topic: "我们应该研究什么?"

agent researcher:
  model: sonnet
  prompt: "您进行彻底的研究并引用来源。"

agent writer:
  model: opus
  prompt: "您撰写简洁的摘要。"

parallel:
  findings = session: researcher
    prompt: "研究 {topic}。"
  draft = session: writer
    prompt: "总结 {topic}。"

session "将研究结果 + 草稿合并成最终答案。"
context: { findings, draft }

文件位置

OpenProse 在您的工作空间中的 .prose/ 目录下保存状态:

.prose/
├── .env
├── runs/
│   └── {YYYYMMDD}-{HHMMSS}-{random}/
│       ├── program.prose
│       ├── state.md
│       ├── bindings/
│       └── agents/
└── agents/

用户级别的持久化智能体位于:

~/.prose/agents/

状态模式

OpenProse 支持多种状态后端:

  • 文件系统(默认):.prose/runs/...
  • 上下文内:临时的,适用于小程序
  • sqlite(实验性):需要 sqlite3 二进制文件
  • postgres(实验性):需要 psql 和连接字符串

注意事项:

  • sqlite/postgres 是可选的且处于实验阶段。
  • postgres 凭据会流入子智能体日志;请使用专用的、最小权限的数据库。

远程程序

/prose run <handle/slug> 解析为 https://p.prose.md/<handle>/<slug>。 直接 URL 按原样获取。这使用 web_fetch 工具(或用于 POST 的 exec)。

openclaw 运行时映射

OpenProse 程序映射到 openclaw 原语:

OpenProse 概念openclaw 工具
生成会话 / 任务工具sessions_spawn
文件读取/写入read / write
网络获取web_fetch

如果您的工具允许列表阻止了这些工具,OpenProse 程序将失败。请参阅 技能配置

安全 + 审批

.prose 文件视为代码。运行前进行审查。使用 openclaw 工具允许列表和审批门控来控制副作用。

对于确定性的、有审批门控的工作流,请与 Lobster 进行比较。