ultracook — Claude Code skill: what it does, how to install
The skill is retired: any /ultracook call resolves to /cook, which now owns the whole implementation pathway. Worth installing only for compatibility.
npx skills add paulnsorensen/easy-cheese --skill ultracook -a claude-codeWhat ultracook does
/ultracook is no longer a top-level skill. Every invocation with its arguments and flags resolves to /cook, and --open-pr, --resume <slug> and --auto carry forward verbatim. The old mechanics — decompose, wave-fan the curds, harvest, wire, post-merge review — now live inside /cook's single pathway, dispatched via /cook --auto. Each phase still runs as a fresh, isolated sub-agent context blind to the prior phase's reasoning.
What stayed put: skills/ultracook/references/ as compatibility material for /cook's fan pathway, the manifest at .cheese/ultracook/<slug>/manifest.yaml, and src/easy_cheese/shared/fanout/mode.py, which /cook calls directly. The executable runtime ships only through the cook archive (skills/cook/scripts/cook.pyz); no ultracook archive is published. The manifest shape is references/manifest-schema.json, and each curd's dispatch prompt is references/curd-prompt.md.
The practical read: install this for the mechanics and you get a redirect, not a separate implementation. Source-code I/O in the retained scripts runs under /cook's ownership and follows the same routing rule as the rest of the set.
What it helps with
- redirect an old
/ultracookcall to the current pathway without editing scripts - keep existing manifests in
.cheese/ultracook/<slug>/working - run the wave fan-out through
/cook --auto - carry
--open-pr,--resume <slug>and--autointo the new skill unchanged - tell which files stayed with the old skill and which moved
Example prompts for the agent
- run /cook --auto on this spec
- resume the interrupted task with /cook --resume <slug>
- run /cook --open-pr on the current branch
How to install ultracook
1Skills CLI (Vercel)
npx skills add paulnsorensen/easy-cheese --skill ultracook -a claude-code2Manually: put the files in place
~/.claude/skills/ultracook/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/ultracook/
1Skills CLI (Vercel)
npx skills add paulnsorensen/easy-cheese --skill ultracook -a codex2Manually: put the files in place
.agents/skills/ultracook/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add paulnsorensen/easy-cheese --skill ultracook -a cursor2Manually: put the files in place
.cursor/skills/ultracook/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install paulnsorensen/easy-cheese ultracook2Manually: put the files in place
.github/skills/ultracook/SKILL.md1Skills CLI (Vercel)
npx skills add paulnsorensen/easy-cheese --skill ultracook -a gemini-cli2Platform CLI
gemini skills install https://github.com/paulnsorensen/easy-cheese --path skills/ultracookManually: put the files in place
.devin/skills/ultracook/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add paulnsorensen/easy-cheese --skill ultracook -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about ultracook
How do I install ultracook in Claude?
Run npx skills add paulnsorensen/easy-cheese --skill ultracook -a claude-code. The skill lands at ~/.claude/skills/ultracook/SKILL.md.
What does ultracook do?
Nothing of its own: it is retired, and any /ultracook invocation resolves to /cook. The decompose and fan-out mechanics now sit inside /cook's single pathway.
How is ultracook different from cook?
/cook owns the single implementation pathway, including the fan mechanics ultracook used to run. ultracook keeps only compatibility material in skills/ultracook/references/, while the executable runtime ships through the cook archive.
Source text
SKILL.md · MIT
---
name: ultracook
description: Retired — /ultracook no longer exists as a standalone skill. Any /ultracook invocation resolves to /cook, which now owns the single implementation pathway (including the fan-out mechanics this skill used to run). Use /cook instead.
license: MIT
metadata: {dispatches-agents: false}
---
# /ultracook (retired)
`/ultracook` is retired as a top-level skill. Its mechanics — decompose, wave-fan curds, harvest, wire, post-merge review, plate — now live inside `/cook`'s single pathway, dispatched via `/cook --auto`, each phase still running as a fresh, isolated sub-agent context blind to the prior phase's reasoning. See [`../cook/SKILL.md`](../cook/SKILL.md)'s `## Fan pathway` section.
## Redirect
Any `/ultracook <spec> [flags]` invocation resolves to `/cook <spec> [flags]`. Carry `--open-pr`, `--resume <slug>`, and `--auto` forward verbatim — their semantics are unchanged, just hosted inside `/cook` now.
## What did not move
- `skills/ultracook/references/` remains as compatibility material for `/cook`'s fan pathway; executable runtime now ships only through the cook archive (`skills/cook/scripts/cook.pyz`), and no ultracook archive is published.
- The manifest path stays `.cheese/ultracook/<slug>/manifest.yaml` for continuity — the identity of the skill that reads/writes it changed, not the path; its shape is `references/manifest-schema.json`, and each curd's dispatch prompt is `references/curd-prompt.md`, both read by `/cook`'s fan pathway.
- `src/easy_cheese/shared/fanout/mode.py` remains a decomposer/fanout internal — `/cook`'s fan pathway calls it directly rather than through this retired skill.
- The retained scripts/references still do source-code I/O under `/cook`'s ownership — that follows [`code-intelligence-routing.md`](../cheese/references/code-intelligence-routing.md) same as everywhere else.
If you are here because muscle memory typed `/ultracook`, run `/cook` with the same arguments.
© paulnsorensen · MIT · paulnsorensen/easy-cheese