In short:
ak-cookbuilds a task that is already clear, or runs an approved plan, from reading the code through editing, checks and review. When it is done, you move on toak-testthenak-ship. It does not hunt for the cause of a bug: that is the job ofak-fix.
Disclosure: I maintain AgentKit and have an affiliate relationship with it: the AgentKit link in this post is an affiliate link; buying through it gets you 30% off.
Summary
Use it when you know exactly what to build, when you have a plan from ak-plan, or when you need a refactor that keeps behavior the same. You do not need it for a bug, a failing test or a CI error with no clear cause (run ak-fix), or when you are still unsure how to build it (run ak-brainstorm).
flowchart LR
A["ak-brainstorm or ak-plan"] --> B["ak-cook"]
B --> C["Checked and reviewed code"]
C --> D["ak-test"]
D --> E["ak-ship"]
B --> F["Stop: needs your decision"]Four concepts decide how it runs:
| Concept | Question | Example |
|---|---|---|
| Allowed scope | How far can cook go on its own without asking you again? | "Edit inside src/billing, tests allowed, no commit": it fixes regressions it caused itself, but stops before committing or deleting data. |
| Run mode | Which steps does this run skip, and where does it stop? | No flag runs straight through. --interactive stops 4 times for your approval. --fast skips research. A flag beats every other signal in the command. |
| Risk-based checks | Which checks must run before it can call the work done? | Changing a pricing function: run that function's tests first, then its callers, then type, lint or build depending on risk. It never turns off a red check to get through. |
| The plan lives in files | Where is plan progress recorded? | In your plan.md and phase-NN-*.md files. Cook only ticks items that have evidence, and leaves the rest as they are. |
Before editing, it settles 4 points: outcome, constraints, non-goals, acceptance criteria. With an approved plan, it reuses the 4 points from that plan. It only commits when you have allowed it, so say so clearly in the prompt.
Sample prompt for a clear feature:
/ak-cook Add an "Export CSV" button to the orders table in the <app name> app.
Outcome: clicking the button downloads a CSV file with exactly the visible columns.
Constraints: do not change the orders list API.
Not doing: Excel export, date filters.
Done when: there is a test for the CSV builder and the existing tests still pass. No commit.| Flag | What it is for | Since ak |
|---|---|---|
--interactive | Stops for your approval at the major steps | 1.0.0 |
--fast | Skips research and moves fast | 1.0.0 |
--parallel | Splits independent work across several agents | 1.0.0 |
--auto | Runs every phase without approval stops | 1.0.0 |
--no-test | Skips tests and states the gap clearly | 1.0.0 |
--tdd | Writes tests for current behavior before refactoring | 1.0.0 |
--advice | A stronger advisor model at key checkpoints | 2.5.0 |
--yagni | Cuts what the outcome does not need | 2.8.0 |
--skip-journal | Skips the automatic journal step | 2.9.0 |
Below is the detailed version: the run flow, 6 situations with prompts, each flag explained (when to use it, when you do not need it, what you get, which flags it combines with), the change history by ak release, and common pitfalls. The detailed version and the interactive page are for subscribers. Your agent can also search them through the portal's MCP.
Opens when your account has subscriber access
This guide is for subscribers
Once your account has access, the full piece, the interactive visual and the agent call all open.
- Sign in or create a modernEngineer accountReading access belongs to your account email.
- Choose a plan on the pricing page1, 3 or 12 months, paid by VietQR bank transfer. Access opens about a minute after the money arrives.
- Or redeem a Facebook subscriber codePeople supporting the page on Facebook get an activation code by message each month.
Already a subscriber? Sign in to read.
Use this piece in your agent
Get an API keyCopy the text below and paste it into Claude Code, Codex or whichever agent you use. The agent reads the piece and checks it against the repo you have open.
Read "ak-cook: turn a clear request into checked code" on modernEngineer and apply it to this repo.
1. Call the content_get tool of the modernengineer MCP server with locale "en", slug "ak-cook". If the modernengineer MCP server is not connected, stop and walk me through connecting it from https://modernengineer.dev/en/mcp.
2. Summarize the main steps of the piece and point out which apply to this repo.
3. Propose concrete changes and ask me before editing any file.Connect MCP in Claude Code (once)
claude mcp add --transport http modernengineer \
https://api.modernengineer.dev/mcp \
--header "Authorization: Bearer <API key>"Reading the full piece over MCP needs an API key from a subscriber account or one that bought this guide. Without access, the agent only gets the opening.
- Version
- v1.0.0
- Updated
- 22/10/2026
- Licence
- All rights reserved
- Slug
- ak-cook


