In short:
ak-goal-warmupprepares a job that will run for hours: it settles an outcome contract with you, plans against that contract, reviews the risks and checks every phase for missing tools, permissions or credentials. It ends at Ready, Blocked or Decision required, and when Ready it gives you a handoff pack to paste into Codex/goalor a long-running Claude session yourself. It never starts/goalon its own.
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 are about to hand an agent a job that runs for hours, where a wrong turn halfway costs a whole night, or when the job involves deploys, credentials or outside services and you want to know up front what is missing. For a small, local-only job, use --fast. You do not need it when you want the agent to do the work and start right away: this skill only prepares, and you still paste the pack into /goal yourself.
flowchart LR
A["Idea for a long run"] --> B["ak-advise, if needed"]
A --> C["ak-goal-warmup"]
B --> C
C --> D["Ready: handoff pack"]
C --> E["Blocked: items to add"]
C --> F["Decision required: you choose"]
D --> G["You paste it into Codex /goal or a long Claude session"]It rests on 4 concepts:
| Concept | Question | Example |
|---|---|---|
| Outcome contract | What does done look like, and what must never change midway? | Outcome: the new API runs alongside the old one. In scope: 12 endpoints. Out of scope: UI changes. Acceptance: the old client's e2e tests still pass. Constraints: no new paid service. Allowed substitutes: none. Decision owner: you. |
| Four kinds of review findings | How far may a review comment change the plan? | "Rename a function for readability" is mitigation-within-contract, so the plan may change. "Drop e2e to go faster" when e2e is the acceptance check is outcome-change-request, so the plan stays and it asks you. |
| Pre-run checklist | Which phase will get stuck at midnight for lack of a tool, permission or credential? | The deploy phase needs the CLOUD_DEPLOY_TOKEN variable: status missing, blocking, and the action is to set that variable in env or a secret store. |
| Three end states | What do you do next? | Ready: you paste the pack into /goal. Blocked: you add exactly the listed items and run it again. Decision required: you pick an option. |
Once you approve it, the contract is locked: the plan, the review and the checks may only add risks, evidence and questions, never change the outcome. Any proposal that changes the outcome goes through Decision required, and you must approve again.
Sample prompt for a large multi-phase job:
/ak-goal-warmup "Move the <project name> API from REST to tRPC.
Outcome: every endpoint has a tRPC version, the old client can still call REST.
Constraints: do not change the DB schema. Not doing: UI changes.
Acceptance: existing tests pass, with new tests for each tRPC router."| Flag | What it is for | Since ak |
|---|---|---|
--fast | Quick preparation for a small local-only job | 2.5.0 |
Below is the detailed version: the run flow, 4 situations with prompts, the --fast flag explained (when to use it, when you do not need it, what you get), 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-goal-warmup: prepare properly before a long /goal run" on modernEngineer and apply it to this repo.
1. Call the content_get tool of the modernengineer MCP server with locale "en", slug "ak-goal-warmup". 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-goal-warmup


