The Claude plugin
Install the Cori plugin in Claude Code or Claude Desktop — capture skill, MCP tools, slash commands, and a save-offer hook, with honest per-surface degradation.
The Cori plugin is the Claude-native packaging of the same capture skill that
npx skills add cori-do/cori installs for 40+ agents. It bundles four things:
- the
cori-save-workflowskill — the capture procedure (single source of truth; the plugin wraps it, nothing is forked); - the
coriMCP server (cori mcp) —check,run,show,runs_list,runs_show,statusas tools, with human-in-the-loop consent on every run; - two slash commands —
/save_workflow(capture this conversation) and/cori-run(run a workflow and narrate the trace); - a save-offer hook — after a session with real multi-step tool work, Claude considers offering to save it, at most once per session. The skill's own suppression rules stay the final gate; declining is always respected.
Install
/plugin marketplace add cori-do/cori
/plugin install cori@coriThe MCP server runs the cori binary from your PATH. If you don't have it
yet, either download the Cori desktop app from cori.do
(it bundles the CLI and can put it on your PATH for you), or install the CLI
directly:
curl -fsSL https://cli.cori.do/install.sh | bashWhat works where
Every piece degrades independently — the plugin never breaks a surface it can't fully serve:
| Piece | Claude Code | Claude Desktop chat | Cowork |
|---|---|---|---|
| Capture skill | ✅ | ✅ | ✅ |
MCP tools (check/run/…) | ✅ | ✅ (local MCP) | ✅ — including cloud sessions while your desktop app is open |
| Slash commands | ✅ | — | version-dependent |
| Save-offer hook | ✅ | — | version-dependent |
- No
coribinary? The skill still captures and reviews the workflow folder; validation hands off to the desktop app or a machine with the CLI. In sandboxed cloud sessions the skill knows not to retry blocked installs. - Run consent is never silent. MCP
runasks the human every time — through your client's elicitation UI, the Cori desktop app's inbox, or a native dialog on the machine.CORI_ASSUME_YESis ignored over MCP.
Naming note
The skills installer normalizes the skill folder to cori_save_workflow
(underscores) on some agents; the plugin and this repo use
cori-save-workflow (hyphens). Same skill, one content source — only the
folder name differs. The slash commands are /save_workflow and /cori-run.
Relationship to the other install paths
| You use… | Install via |
|---|---|
| Claude Code / Claude Desktop / Cowork | this plugin |
| Any other agent (Cursor, Copilot, OpenCode, …) | npx skills add cori-do/cori |
| Just the runtime (no agent integration) | desktop app from cori.do, or the curl install |
All three paths converge on the same workflow folders, the same cori engine,
and the same consent model.

