@jiggai/recipes 0.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +142 -0
- package/clawcipes_cook.jpg +0 -0
- package/docs/AGENTS_AND_SKILLS.md +232 -0
- package/docs/BUNDLED_RECIPES.md +208 -0
- package/docs/CLAWCIPES_KITCHEN.md +27 -0
- package/docs/COMMANDS.md +266 -0
- package/docs/INSTALLATION.md +80 -0
- package/docs/RECIPE_FORMAT.md +127 -0
- package/docs/TEAM_WORKFLOW.md +62 -0
- package/docs/TUTORIAL_CREATE_RECIPE.md +151 -0
- package/docs/shared-context.md +47 -0
- package/docs/verify-built-in-team-recipes.md +65 -0
- package/index.ts +2244 -0
- package/openclaw.plugin.json +28 -0
- package/package.json +46 -0
- package/recipes/default/customer-support-team.md +246 -0
- package/recipes/default/developer.md +73 -0
- package/recipes/default/development-team.md +389 -0
- package/recipes/default/editor.md +74 -0
- package/recipes/default/product-team.md +298 -0
- package/recipes/default/project-manager.md +69 -0
- package/recipes/default/research-team.md +243 -0
- package/recipes/default/researcher.md +75 -0
- package/recipes/default/social-team.md +205 -0
- package/recipes/default/writing-team.md +228 -0
- package/src/lib/bindings.ts +59 -0
- package/src/lib/cleanup-workspaces.ts +173 -0
- package/src/lib/index.ts +5 -0
- package/src/lib/lanes.ts +63 -0
- package/src/lib/recipe-frontmatter.ts +59 -0
- package/src/lib/remove-team.ts +200 -0
- package/src/lib/scaffold-templates.ts +7 -0
- package/src/lib/shared-context.ts +52 -0
- package/src/lib/ticket-finder.ts +60 -0
- package/src/lib/ticket-workflow.ts +153 -0
package/README.md
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# ClawRecipes (OpenClaw Recipes Plugin)
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="./clawrecipes_cook.jpg" alt="ClawRecipes logo" width="240" />
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
ClawRecipes is an OpenClaw plugin that provides **CLI-first recipes** for scaffolding specialist agents and teams from Markdown.
|
|
8
|
+
|
|
9
|
+
If you like durable workflows: ClawRecipes is built around a **file-first team workspace** (inbox/backlog/in-progress/testing/done) that plays nicely with git.
|
|
10
|
+
|
|
11
|
+
## Quickstart
|
|
12
|
+
### 1) Install
|
|
13
|
+
#### Option A (preferred): install from npm
|
|
14
|
+
Once published:
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
openclaw plugins install @jiggai/recipes
|
|
18
|
+
openclaw gateway restart
|
|
19
|
+
openclaw plugins list
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
#### Option B: install from GitHub
|
|
23
|
+
```bash
|
|
24
|
+
git clone https://github.com/JIGGAI/ClawRecipes.git ~/clawrecipes
|
|
25
|
+
openclaw plugins install --link ~/clawrecipes
|
|
26
|
+
openclaw gateway restart
|
|
27
|
+
openclaw plugins list
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
### 2) List available recipes
|
|
31
|
+
```bash
|
|
32
|
+
openclaw recipes list
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 3) Scaffold a team
|
|
36
|
+
```bash
|
|
37
|
+
openclaw recipes scaffold-team development-team \
|
|
38
|
+
--team-id development-team-team \
|
|
39
|
+
--overwrite \
|
|
40
|
+
--apply-config
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### 4) Dispatch a request into work artifacts
|
|
44
|
+
```bash
|
|
45
|
+
openclaw recipes dispatch \
|
|
46
|
+
--team-id development-team-team \
|
|
47
|
+
--request "Add a new recipe for a customer-support team" \
|
|
48
|
+
--owner lead
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Commands (high level)
|
|
52
|
+
- `openclaw recipes list|show|status`
|
|
53
|
+
- `openclaw recipes scaffold` (agent → `workspace-<agentId>`)
|
|
54
|
+
- `openclaw recipes scaffold-team` (team → `workspace-<teamId>` + `roles/<role>/`)
|
|
55
|
+
- `openclaw recipes install <idOrSlug> [--yes] [--global|--agent-id <id>|--team-id <id>]` (skills: global or scoped)
|
|
56
|
+
- `openclaw recipes bind|unbind|bindings` (multi-agent routing)
|
|
57
|
+
- `openclaw recipes dispatch ...` (request → inbox + ticket + assignment)
|
|
58
|
+
- `openclaw recipes tickets|move-ticket|assign|take|handoff|complete` (file-first ticket workflow)
|
|
59
|
+
- `openclaw recipes cleanup-workspaces` (safe cleanup of temporary test/scaffold workspaces)
|
|
60
|
+
|
|
61
|
+
For full details, see `docs/COMMANDS.md`.
|
|
62
|
+
|
|
63
|
+
## Configuration
|
|
64
|
+
The plugin supports these config keys (with defaults):
|
|
65
|
+
- `workspaceRecipesDir` (default: `recipes`)
|
|
66
|
+
- `workspaceAgentsDir` (default: `agents`)
|
|
67
|
+
- `workspaceSkillsDir` (default: `skills`)
|
|
68
|
+
- `workspaceTeamsDir` (default: `teams`)
|
|
69
|
+
- `autoInstallMissingSkills` (default: `false`)
|
|
70
|
+
- `confirmAutoInstall` (default: `true`)
|
|
71
|
+
- `cronInstallation` (default: `prompt`; values: `off|prompt|on`)
|
|
72
|
+
|
|
73
|
+
Config schema is defined in `openclaw.plugin.json`.
|
|
74
|
+
|
|
75
|
+
## Documentation
|
|
76
|
+
Start here:
|
|
77
|
+
- Installation: `docs/INSTALLATION.md`
|
|
78
|
+
- Agents + skills: `docs/AGENTS_AND_SKILLS.md`
|
|
79
|
+
- Tutorial (create a recipe): `docs/TUTORIAL_CREATE_RECIPE.md`
|
|
80
|
+
|
|
81
|
+
## Development
|
|
82
|
+
### Unit tests (vitest)
|
|
83
|
+
Run:
|
|
84
|
+
- `npm test`
|
|
85
|
+
|
|
86
|
+
### Scaffold smoke test (regression)
|
|
87
|
+
A lightweight smoke check validates scaffold-team output contains the required testing workflow docs (ticket 0004).
|
|
88
|
+
|
|
89
|
+
Run:
|
|
90
|
+
- `npm run test:smoke` (or `npm run scaffold:smoke`)
|
|
91
|
+
|
|
92
|
+
Notes:
|
|
93
|
+
- Creates a temporary `workspace-smoke-<timestamp>-team` under `~/.openclaw/` and then deletes it.
|
|
94
|
+
- Exits non-zero on mismatch.
|
|
95
|
+
|
|
96
|
+
Reference:
|
|
97
|
+
- Commands: `docs/COMMANDS.md`
|
|
98
|
+
- Recipe format: `docs/RECIPE_FORMAT.md`
|
|
99
|
+
- Bundled recipes: `docs/BUNDLED_RECIPES.md`
|
|
100
|
+
- Team workflow: `docs/TEAM_WORKFLOW.md`
|
|
101
|
+
- ClawRecipes Kitchen (UI): `docs/CLAWCIPES_KITCHEN.md`
|
|
102
|
+
|
|
103
|
+
(Also see: GitHub repo https://github.com/JIGGAI/ClawRecipes)
|
|
104
|
+
## Notes / principles
|
|
105
|
+
- Workspaces:
|
|
106
|
+
- Standalone agents: `~/.openclaw/workspace-<agentId>/`
|
|
107
|
+
- Teams: `~/.openclaw/workspace-<teamId>/` with `roles/<role>/...`
|
|
108
|
+
- Skills:
|
|
109
|
+
- Global (shared): `~/.openclaw/skills/<skill>`
|
|
110
|
+
- Scoped (agent/team): `~/.openclaw/workspace-*/skills/<skill>`
|
|
111
|
+
- Team IDs end with `-team`; agent IDs are namespaced: `<teamId>-<role>`.
|
|
112
|
+
- Recipe template rendering is intentionally simple: `{{var}}` replacement only.
|
|
113
|
+
|
|
114
|
+
## Removing (uninstalling) a scaffolded team
|
|
115
|
+
ClawRecipes includes a safe uninstall command:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
openclaw recipes remove-team --team-id <teamId> --plan --json
|
|
119
|
+
openclaw recipes remove-team --team-id <teamId> --yes
|
|
120
|
+
openclaw gateway restart
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Notes:
|
|
124
|
+
- The command is confirmation-gated by default (use `--yes` to apply).
|
|
125
|
+
- Cron cleanup is conservative: it removes only cron jobs that are explicitly **stamped** with `recipes.teamId=<teamId>`.
|
|
126
|
+
- If you need a manual fallback, you can still delete `~/.openclaw/workspace-<teamId>` and remove `<teamId>-*` agents from `agents.list[]` in `~/.openclaw/openclaw.json`.
|
|
127
|
+
|
|
128
|
+
## Links
|
|
129
|
+
- GitHub: https://github.com/JIGGAI/ClawRecipes
|
|
130
|
+
- Docs:
|
|
131
|
+
- Installation: `docs/INSTALLATION.md`
|
|
132
|
+
- Commands: `docs/COMMANDS.md`
|
|
133
|
+
- Recipe format: `docs/RECIPE_FORMAT.md`
|
|
134
|
+
- Team workflow: `docs/TEAM_WORKFLOW.md`
|
|
135
|
+
|
|
136
|
+
## What you should be developing (not this plugin)
|
|
137
|
+
ClawRecipes is meant to be *installed* and then used to build **agents + teams**.
|
|
138
|
+
|
|
139
|
+
Most users should focus on:
|
|
140
|
+
- authoring recipes in their OpenClaw workspace (`<workspace>/recipes/*.md`)
|
|
141
|
+
- scaffolding teams (`openclaw recipes scaffold-team ...`)
|
|
142
|
+
- running the file-first workflow (dispatch → backlog → in-progress → testing → done)
|
|
Binary file
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
# Agents and skills (OpenClaw + ClawRecipes)
|
|
2
|
+
|
|
3
|
+
This doc explains the mental model: **what an agent is**, how **skills/tools** work, and how ClawRecipes helps you build agents + teams.
|
|
4
|
+
|
|
5
|
+
## What is an agent?
|
|
6
|
+
In OpenClaw, an **agent** is a configured assistant persona with:
|
|
7
|
+
- a **workspace folder** (where it reads/writes files)
|
|
8
|
+
- optional **identity** (name, avatar, emoji, tone)
|
|
9
|
+
- a **tool policy** (what tools it is allowed to use)
|
|
10
|
+
- a **model** configuration (defaults come from OpenClaw)
|
|
11
|
+
|
|
12
|
+
In ClawRecipes, a **standalone** agent recipe scaffolds a dedicated workspace like:
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
~/.openclaw/workspace-<agentId>/
|
|
16
|
+
SOUL.md
|
|
17
|
+
AGENTS.md
|
|
18
|
+
TOOLS.md
|
|
19
|
+
...other recipe files...
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### Why separate agents?
|
|
23
|
+
- Separation of concerns (research vs writing vs devops)
|
|
24
|
+
- Cleaner prompts/personas
|
|
25
|
+
- Safer tool permissions (e.g., only DevOps gets automation)
|
|
26
|
+
- Clear ownership of outputs (each agent writes to its own workspace)
|
|
27
|
+
|
|
28
|
+
## What is a skill?
|
|
29
|
+
A **skill** is a packaged integration or capability (e.g. Gmail, Calendar, Places search, Twitter/X tooling).
|
|
30
|
+
|
|
31
|
+
Skills can provide:
|
|
32
|
+
- tools/actions (e.g., `gog gmail ...`, `local-places ...`)
|
|
33
|
+
- configuration schemas / env vars
|
|
34
|
+
- helper scripts or CLIs
|
|
35
|
+
|
|
36
|
+
In OpenClaw, skills are surfaced as tools the agent can use.
|
|
37
|
+
|
|
38
|
+
## Tool policies (allow/deny)
|
|
39
|
+
Every agent can have a tool policy in OpenClaw config (written via `--apply-config` when scaffolding).
|
|
40
|
+
|
|
41
|
+
ClawRecipes recipes commonly use:
|
|
42
|
+
- `allow: ["group:fs", "group:web"]` for safe file + web access
|
|
43
|
+
- `allow: ["group:runtime"]` when the agent needs to run local commands
|
|
44
|
+
- `allow: ["group:automation"]` for automation-oriented tools
|
|
45
|
+
- `deny: ["exec"]` for safety on agents that shouldn’t execute commands
|
|
46
|
+
|
|
47
|
+
The intent:
|
|
48
|
+
- Most agents should **not** have `exec`.
|
|
49
|
+
- Only agents that truly need it (dev/devops) should get runtime/exec capabilities.
|
|
50
|
+
|
|
51
|
+
## How to add/update tool access (allow list)
|
|
52
|
+
There are two common approaches.
|
|
53
|
+
|
|
54
|
+
### Option A (recommended): update the recipe, then re-apply config
|
|
55
|
+
1) Edit the recipe markdown (either a workspace recipe or your own copy of a bundled recipe) and change `tools.allow` / `tools.deny`.
|
|
56
|
+
|
|
57
|
+
2) Re-run scaffold with `--apply-config`:
|
|
58
|
+
|
|
59
|
+
Team:
|
|
60
|
+
```bash
|
|
61
|
+
openclaw recipes scaffold-team <recipeId> --team-id <teamId> --overwrite --apply-config
|
|
62
|
+
openclaw gateway restart
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Individual agent:
|
|
66
|
+
```bash
|
|
67
|
+
openclaw recipes scaffold <recipeId> --agent-id <agentId> --overwrite --apply-config
|
|
68
|
+
openclaw gateway restart
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Option B: edit OpenClaw config directly
|
|
72
|
+
1) Edit:
|
|
73
|
+
- `~/.openclaw/openclaw.json`
|
|
74
|
+
|
|
75
|
+
2) Find the matching agent under `agents.list[]` and edit:
|
|
76
|
+
- `tools.allow`
|
|
77
|
+
- `tools.deny`
|
|
78
|
+
|
|
79
|
+
3) Restart:
|
|
80
|
+
```bash
|
|
81
|
+
openclaw gateway restart
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
> Tip: if you later re-run scaffold with `--apply-config`, the recipe’s tool policy may overwrite your manual edits. If you want a change to stick, encode it in the recipe.
|
|
85
|
+
|
|
86
|
+
## Installing skills (workspace-local)
|
|
87
|
+
ClawRecipes favors **workspace-local** installs so each OpenClaw workspace is self-contained.
|
|
88
|
+
|
|
89
|
+
### Install a skill slug
|
|
90
|
+
```bash
|
|
91
|
+
openclaw recipes install <skill-slug>
|
|
92
|
+
# or non-interactive:
|
|
93
|
+
openclaw recipes install <skill-slug> --yes
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
This runs ClawHub under the hood and installs into the **current OpenClaw workspace** skills dir:
|
|
97
|
+
- `<workspace>/skills/<skill-slug>`
|
|
98
|
+
|
|
99
|
+
Examples:
|
|
100
|
+
- standalone agent workspace: `~/.openclaw/workspace-<agentId>/skills/<skill-slug>`
|
|
101
|
+
- team workspace: `~/.openclaw/workspace-<teamId>/skills/<skill-slug>`
|
|
102
|
+
|
|
103
|
+
> Note: in the new workspace policy, standalone agents live in `~/.openclaw/workspace-<agentId>` and teams live in `~/.openclaw/workspace-<teamId>`. Skill install targeting is still being refined during the experimental phase.
|
|
104
|
+
|
|
105
|
+
### Install the skills required by a recipe
|
|
106
|
+
If a recipe declares skills in `requiredSkills` or `optionalSkills`:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
openclaw recipes install <recipe-id>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
That installs the recipe’s declared skills.
|
|
113
|
+
|
|
114
|
+
### Removing a skill
|
|
115
|
+
ClawRecipes currently does **not** implement a remove command.
|
|
116
|
+
|
|
117
|
+
To remove a workspace-local skill:
|
|
118
|
+
- delete the folder: `<workspace>/skills/<skill-slug>`
|
|
119
|
+
- restart: `openclaw gateway restart`
|
|
120
|
+
|
|
121
|
+
(We can add `openclaw recipes uninstall <slug>` later if you want it to be first-class.)
|
|
122
|
+
|
|
123
|
+
## Removing (uninstalling) a scaffolded team
|
|
124
|
+
ClawRecipes includes a safe uninstall command:
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
openclaw recipes remove-team --team-id <teamId> --plan --json
|
|
128
|
+
openclaw recipes remove-team --team-id <teamId> --yes
|
|
129
|
+
openclaw gateway restart
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
Notes:
|
|
133
|
+
- Cron cleanup is conservative: it removes only cron jobs explicitly stamped with `recipes.teamId=<teamId>`.
|
|
134
|
+
- You can still do it manually by deleting `~/.openclaw/workspace-<teamId>` and removing `<teamId>-*` entries from `agents.list[]` in `~/.openclaw/openclaw.json`.
|
|
135
|
+
|
|
136
|
+
## Teams: shared workspace + multiple agents
|
|
137
|
+
A **team** recipe scaffolds a **shared workspace root** plus role folders:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
~/.openclaw/workspace-<teamId>/
|
|
141
|
+
TEAM.md
|
|
142
|
+
inbox/
|
|
143
|
+
outbox/
|
|
144
|
+
shared/
|
|
145
|
+
notes/
|
|
146
|
+
work/
|
|
147
|
+
backlog/
|
|
148
|
+
in-progress/
|
|
149
|
+
testing/
|
|
150
|
+
done/
|
|
151
|
+
assignments/
|
|
152
|
+
roles/
|
|
153
|
+
<role>/
|
|
154
|
+
...role-specific recipe files...
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
Each role agent is a separate OpenClaw agent id (`<teamId>-<role>`), but they share the same workspace root (`workspace-<teamId>`) so collaboration is file-based.
|
|
158
|
+
|
|
159
|
+
The shared workspace is the source of truth for:
|
|
160
|
+
- intake (`inbox/`)
|
|
161
|
+
- work queue (`work/backlog`, `work/in-progress`, `work/testing`, `work/done`)
|
|
162
|
+
- assignments (`work/assignments`)
|
|
163
|
+
- deliverables (`outbox/`)
|
|
164
|
+
|
|
165
|
+
## Updating agents after you scaffold them
|
|
166
|
+
Once an agent exists, there are **two layers** you can update:
|
|
167
|
+
|
|
168
|
+
### 1) The agent’s files (workspace)
|
|
169
|
+
Agents are just folders under:
|
|
170
|
+
- standalone: `~/.openclaw/workspace-<agentId>/`
|
|
171
|
+
- team roles: `~/.openclaw/workspace-<teamId>/roles/<role>/`
|
|
172
|
+
|
|
173
|
+
Common files:
|
|
174
|
+
- `SOUL.md` — the persona / operating style
|
|
175
|
+
- `AGENTS.md` — operating instructions / workflow
|
|
176
|
+
- `TOOLS.md` — agent-local notes (paths, conventions, env quirks)
|
|
177
|
+
- `STATUS.md` — current focus / next actions
|
|
178
|
+
- `NOTES.md` — scratchpad
|
|
179
|
+
|
|
180
|
+
To change behavior, edit these files and then just use the agent again.
|
|
181
|
+
|
|
182
|
+
If the agent was created from a recipe, re-running scaffold with `--overwrite` will overwrite recipe-managed files:
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
openclaw recipes scaffold <recipeId> --agent-id <agentId> --overwrite
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
For teams, you typically re-run `scaffold-team` (role files live under `roles/<role>/`):
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
openclaw recipes scaffold-team <recipeId> --team-id <teamId> --overwrite
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### 2) The agent’s OpenClaw config (tool permissions, identity, model)
|
|
195
|
+
When you scaffold with `--apply-config`, ClawRecipes writes the agent entry into OpenClaw config:
|
|
196
|
+
- `~/.openclaw/openclaw.json` → `agents.list[]`
|
|
197
|
+
|
|
198
|
+
Re-run scaffold/scaffold-team with `--apply-config` any time you want the recipe’s tool policy (allow/deny) to be re-applied.
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
openclaw recipes scaffold-team <recipeId> --team-id <teamId> --apply-config
|
|
202
|
+
openclaw gateway restart
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
## Where to find agent config in the OpenClaw UI
|
|
206
|
+
OpenClaw exposes agent configuration in its UI (labels/paths depend on your build), typically under something like:
|
|
207
|
+
- **Settings → Agents**
|
|
208
|
+
|
|
209
|
+
From there you can:
|
|
210
|
+
- select an agent
|
|
211
|
+
- view/edit its identity
|
|
212
|
+
- review tool permissions
|
|
213
|
+
- confirm which workspace it uses
|
|
214
|
+
|
|
215
|
+
If you prefer files, the source-of-truth config file is:
|
|
216
|
+
- `~/.openclaw/openclaw.json`
|
|
217
|
+
|
|
218
|
+
## How to create your own agents/teams
|
|
219
|
+
You have three main options:
|
|
220
|
+
|
|
221
|
+
1) Use a bundled recipe (fast start)
|
|
222
|
+
- `openclaw recipes scaffold-team development-team --team-id my-dev-team-team --apply-config`
|
|
223
|
+
|
|
224
|
+
2) Write your own recipe in your workspace
|
|
225
|
+
- Create: `~/.openclaw/workspace/recipes/my-team.md`
|
|
226
|
+
- Then: `openclaw recipes scaffold-team my-team --team-id my-team-team --apply-config`
|
|
227
|
+
|
|
228
|
+
3) Copy a bundled recipe and modify it
|
|
229
|
+
- Use `openclaw recipes show <id>` to view it
|
|
230
|
+
- Copy into your workspace recipes dir and edit
|
|
231
|
+
|
|
232
|
+
Next: read `docs/TUTORIAL_CREATE_RECIPE.md` for a step-by-step guide.
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
# Bundled recipes
|
|
2
|
+
|
|
3
|
+
ClawRecipes ships with a few recipes in `recipes/default/`.
|
|
4
|
+
|
|
5
|
+
You can:
|
|
6
|
+
- list them: `openclaw recipes list`
|
|
7
|
+
- inspect them: `openclaw recipes show <id>`
|
|
8
|
+
|
|
9
|
+
Below is a guided explanation of what each bundled recipe does.
|
|
10
|
+
|
|
11
|
+
## 1) `project-manager` (agent)
|
|
12
|
+
**Kind:** agent
|
|
13
|
+
|
|
14
|
+
**Use when:** you want a lightweight agent that keeps plans tidy and maintains a cadence.
|
|
15
|
+
|
|
16
|
+
Scaffold:
|
|
17
|
+
```bash
|
|
18
|
+
openclaw recipes scaffold project-manager --agent-id pm --name "Project Manager" --apply-config
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
What it writes:
|
|
22
|
+
- `agents/pm/SOUL.md`
|
|
23
|
+
- `agents/pm/AGENTS.md`
|
|
24
|
+
|
|
25
|
+
Default tool policy (recipe-defined):
|
|
26
|
+
- allows: `group:fs`, `group:web`, plus `cron` and `message`
|
|
27
|
+
- denies: `exec`
|
|
28
|
+
|
|
29
|
+
## 2) `social-team` (team)
|
|
30
|
+
**Kind:** team
|
|
31
|
+
|
|
32
|
+
**Use when:** you want a multi-role social pipeline: lead + research + writer + editor.
|
|
33
|
+
|
|
34
|
+
Scaffold:
|
|
35
|
+
```bash
|
|
36
|
+
openclaw recipes scaffold-team social-team --team-id social-team-team --apply-config
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
What it creates:
|
|
40
|
+
- `teams/social-team-team/` shared workspace
|
|
41
|
+
- agents:
|
|
42
|
+
- `agents/social-team-team-lead/`
|
|
43
|
+
- `agents/social-team-team-research/`
|
|
44
|
+
- `agents/social-team-team-writer/`
|
|
45
|
+
- `agents/social-team-team-editor/`
|
|
46
|
+
|
|
47
|
+
Notes:
|
|
48
|
+
- Default `tools` in the recipe deny `exec` (safer by default).
|
|
49
|
+
|
|
50
|
+
## 3) `development-team` (team)
|
|
51
|
+
**Kind:** team
|
|
52
|
+
|
|
53
|
+
**Use when:** you want a small engineering team with a file-first ticket queue.
|
|
54
|
+
|
|
55
|
+
Scaffold:
|
|
56
|
+
```bash
|
|
57
|
+
openclaw recipes scaffold-team development-team --team-id development-team-team --apply-config
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
What it creates:
|
|
61
|
+
- `teams/development-team-team/` shared workspace
|
|
62
|
+
- agents:
|
|
63
|
+
- `agents/development-team-team-lead/`
|
|
64
|
+
- `agents/development-team-team-dev/`
|
|
65
|
+
- `agents/development-team-team-devops/`
|
|
66
|
+
|
|
67
|
+
Special features:
|
|
68
|
+
- A strict ticket workflow documented in the lead’s `AGENTS.md`.
|
|
69
|
+
- Recommended ticket naming: `0001-...md`, `0002-...md`, etc.
|
|
70
|
+
- Tool policies intended for real work:
|
|
71
|
+
- lead: includes runtime + automation
|
|
72
|
+
- dev: includes runtime
|
|
73
|
+
- devops: includes runtime + automation
|
|
74
|
+
|
|
75
|
+
## 4) `research-team` (team)
|
|
76
|
+
**Kind:** team
|
|
77
|
+
|
|
78
|
+
**Use when:** you need repeatable, citations-first research output.
|
|
79
|
+
|
|
80
|
+
Scaffold:
|
|
81
|
+
```bash
|
|
82
|
+
openclaw recipes scaffold-team research-team --team-id research-team-team --apply-config
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
What it creates:
|
|
86
|
+
- shared team workspace with conventional research folders:
|
|
87
|
+
- `work/sources/`, `work/notes/`, `work/briefs/`
|
|
88
|
+
- agents:
|
|
89
|
+
- lead (dispatch + quality bar)
|
|
90
|
+
- researcher (web sourcing + notes)
|
|
91
|
+
- fact-checker (verification)
|
|
92
|
+
- summarizer (brief writing)
|
|
93
|
+
|
|
94
|
+
Default tool policy:
|
|
95
|
+
- allows web access + file operations
|
|
96
|
+
- denies `exec` (safe-by-default)
|
|
97
|
+
|
|
98
|
+
## 5) `writing-team` (team)
|
|
99
|
+
**Kind:** team
|
|
100
|
+
|
|
101
|
+
**Use when:** you want a writing pipeline from brief → outline → draft → edit.
|
|
102
|
+
|
|
103
|
+
Scaffold:
|
|
104
|
+
```bash
|
|
105
|
+
openclaw recipes scaffold-team writing-team --team-id writing-team-team --apply-config
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
What it creates:
|
|
109
|
+
- shared team workspace with writing pipeline folders:
|
|
110
|
+
- `work/briefs/`, `work/outlines/`, `work/drafts/`, `work/edited/`
|
|
111
|
+
- agents:
|
|
112
|
+
- lead
|
|
113
|
+
- outliner
|
|
114
|
+
- writer
|
|
115
|
+
- editor
|
|
116
|
+
|
|
117
|
+
Default tool policy:
|
|
118
|
+
- allows web access + file operations
|
|
119
|
+
- denies `exec` (safe-by-default)
|
|
120
|
+
|
|
121
|
+
## 6) `customer-support-team` (team)
|
|
122
|
+
**Kind:** team
|
|
123
|
+
|
|
124
|
+
**Use when:** you want a repeatable support workflow: triage → resolution → KB.
|
|
125
|
+
|
|
126
|
+
Scaffold:
|
|
127
|
+
```bash
|
|
128
|
+
openclaw recipes scaffold-team customer-support-team --team-id customer-support-team-team --apply-config
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
What it creates:
|
|
132
|
+
- shared workspace conventions:
|
|
133
|
+
- `work/cases/`, `work/replies/`, `work/kb/`
|
|
134
|
+
- agents:
|
|
135
|
+
- lead, triage, resolver, kb-writer
|
|
136
|
+
|
|
137
|
+
Default tool policy:
|
|
138
|
+
- allows web access + file operations
|
|
139
|
+
- denies `exec` (safe-by-default)
|
|
140
|
+
|
|
141
|
+
## 7) `product-team` (team)
|
|
142
|
+
**Kind:** team
|
|
143
|
+
|
|
144
|
+
**Use when:** you want a PRD → design → build → QA delivery loop.
|
|
145
|
+
|
|
146
|
+
Scaffold:
|
|
147
|
+
```bash
|
|
148
|
+
openclaw recipes scaffold-team product-team --team-id product-team-team --apply-config
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Notes:
|
|
152
|
+
- The `engineer` role allows `group:runtime` and does **not** deny `exec` so it can run local tooling.
|
|
153
|
+
|
|
154
|
+
## 8) `researcher` (agent)
|
|
155
|
+
**Kind:** agent
|
|
156
|
+
|
|
157
|
+
**Use when:** you want a single, citations-first research agent.
|
|
158
|
+
|
|
159
|
+
Scaffold:
|
|
160
|
+
```bash
|
|
161
|
+
openclaw recipes scaffold researcher --agent-id researcher --apply-config
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Default tool policy:
|
|
165
|
+
- allows web access + file operations
|
|
166
|
+
- denies `exec`
|
|
167
|
+
|
|
168
|
+
## 9) `editor` (agent)
|
|
169
|
+
**Kind:** agent
|
|
170
|
+
|
|
171
|
+
**Use when:** you want a single editing agent.
|
|
172
|
+
|
|
173
|
+
Scaffold:
|
|
174
|
+
```bash
|
|
175
|
+
openclaw recipes scaffold editor --agent-id editor --apply-config
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
Default tool policy:
|
|
179
|
+
- allows web access + file operations
|
|
180
|
+
- denies `exec`
|
|
181
|
+
|
|
182
|
+
## 10) `developer` (agent)
|
|
183
|
+
**Kind:** agent
|
|
184
|
+
|
|
185
|
+
**Use when:** you want a single developer agent with runtime tooling.
|
|
186
|
+
|
|
187
|
+
Scaffold:
|
|
188
|
+
```bash
|
|
189
|
+
openclaw recipes scaffold developer --agent-id dev --apply-config
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Default tool policy:
|
|
193
|
+
- allows `group:runtime`
|
|
194
|
+
- does not deny `exec`
|
|
195
|
+
|
|
196
|
+
## Copying and modifying bundled recipes
|
|
197
|
+
A good workflow is:
|
|
198
|
+
1) Inspect:
|
|
199
|
+
```bash
|
|
200
|
+
openclaw recipes show development-team > /tmp/development-team.md
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
2) Copy into your workspace recipes folder:
|
|
204
|
+
```bash
|
|
205
|
+
cp /tmp/development-team.md ~/.openclaw/workspace/recipes/my-dev-team.md
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
3) Edit the new recipe file and scaffold it.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# ClawRecipes Kitchen (UI)
|
|
2
|
+
|
|
3
|
+
ClawRecipes Kitchen is our UI for managing ClawRecipes workflows.
|
|
4
|
+
|
|
5
|
+
## What it’s for
|
|
6
|
+
- Activity feed (high-level semantic events)
|
|
7
|
+
- Weekly scheduled-task view
|
|
8
|
+
- Global search across workspace + memory/docs + tasks
|
|
9
|
+
- Agent chat room
|
|
10
|
+
- Goals system (file-based source of truth)
|
|
11
|
+
- Approvals inbox + routing (e.g., Telegram)
|
|
12
|
+
|
|
13
|
+
## Status
|
|
14
|
+
ClawRecipes Kitchen is under active development.
|
|
15
|
+
|
|
16
|
+
## Relationship to the plugin
|
|
17
|
+
- The **ClawRecipes plugin** is CLI-first and works without any UI.
|
|
18
|
+
- ClawRecipes Kitchen is an optional UI companion for:
|
|
19
|
+
- visibility (activity/search)
|
|
20
|
+
- approvals
|
|
21
|
+
- human review of plans and changes
|
|
22
|
+
|
|
23
|
+
## Roadmap (high level)
|
|
24
|
+
- Approvals UI (approve/deny + audit trail)
|
|
25
|
+
- Recipe browser and scaffold flows
|
|
26
|
+
- Team dashboards (backlog/in-progress/testing/done)
|
|
27
|
+
- Publishing workflow integration
|