OpenProse is a portable, markdown-first workflow format for orchestrating AI sessions. In CoderClaw it ships as a plugin that installs an OpenProse skill pack plus a /prose slash command. Programs live in .prose files and can spawn multiple sub-agents with explicit control flow.
Official site: https://www.prose.md
.prose programs you can run across supported agent runtimes.Bundled plugins are disabled by default. Enable OpenProse:
coderclaw plugins enable open-prose
Restart the Gateway after enabling the plugin.
Dev/local checkout: coderclaw plugins install ./extensions/open-prose
Related docs: Plugins, Plugin manifest, Skills.
OpenProse registers /prose as a user-invocable skill command. It routes to the OpenProse VM instructions and uses CoderClaw tools under the hood.
Common commands:
/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 file# Research + synthesis with two agents running in parallel.
input topic: "What should we research?"
agent researcher:
model: sonnet
prompt: "You research thoroughly and cite sources."
agent writer:
model: opus
prompt: "You write a concise summary."
parallel:
findings = session: researcher
prompt: "Research {topic}."
draft = session: writer
prompt: "Summarize {topic}."
session "Merge the findings + draft into a final answer."
context: { findings, draft }
OpenProse keeps state under .prose/ in your workspace:
.prose/
├── .env
├── runs/
│ └── {YYYYMMDD}-{HHMMSS}-{random}/
│ ├── program.prose
│ ├── state.md
│ ├── bindings/
│ └── agents/
└── agents/
User-level persistent agents live at:
~/.prose/agents/
OpenProse supports multiple state backends:
.prose/runs/...sqlite3 binarypsql and a connection stringNotes:
/prose run <handle/slug> resolves to https://p.prose.md/<handle>/<slug>.
Direct URLs are fetched as-is. This uses the web_fetch tool (or exec for POST).
OpenProse programs map to CoderClaw primitives:
| OpenProse concept | CoderClaw tool |
|---|---|
| Spawn session / Task tool | sessions_spawn |
| File read/write | read / write |
| Web fetch | web_fetch |
If your tool allowlist blocks these tools, OpenProse programs will fail. See Skills config.
Treat .prose files like code. Review before running. Use CoderClaw tool allowlists and approval gates to control side effects.
For deterministic, approval-gated workflows, compare with Lobster.