Borrowing it
Nothing to install: this file belongs to haakonbull/autosprint. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/haakonbull/autosprint/master/.claude/skills/grill-plan/SKILL.mdgit clone --depth 1 https://github.com/haakonbull/autosprintWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/haakonbull/autosprint/grill-plan)<a href="https://agentmods.dev/skills/haakonbull/autosprint/grill-plan"><img src="https://agentmods.dev/badge/skills/haakonbull/autosprint/grill-plan/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/haakonbull/autosprint/grill-plan"><img src="https://agentmods.dev/badge/skills/haakonbull/autosprint/grill-plan.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00139 | $0.01758 |
| Opus 5.5 | $0.00056 | $0.00703 |
| Sonnet 5.5 | $0.00028 | $0.00352 |
| Haiku 4.5 | $0.00014 | $0.00176 |
Grade A, and why
grill-plan scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 70 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Vet the pending tasks in <target_repo>/autosprint/plan.md for agent-readiness — whether an implement agent could pick each one up and execute it without guessing — and sharpen the weak ones with the user.
This is the plan-level companion to grill-destination. grill-destination sharpens the destination; grill-plan sharpens the next steps toward it. It is meant to be used during the hand-review of a plan that autosprint plan just drafted — a second pair of eyes on executability, before an autosprint run executes the plan as-is.
What this skill is NOT
It does not re-plan. Generating tasks from scratch — reading the gap between the repo and destination.md and proposing what to do — is the Plan phase's job (autosprint plan). grill-plan vets and sharpens the tasks that are already in plan.md. It may sharpen, split, drop, or reframe a task, but it never invents a fresh plan. If the plan is wrong at the root (wrong tasks entirely), the fix is to re-run autosprint plan or hand-author plan.md — not this skill.
It also does not second-guess strategy. Whether a task is the right priority is the user's call and the planner's job. grill-plan asks one question per task: could an agent execute this as written?
Run it between autosprint runs, not while a loop is live — a running loop rewrites plan.md itself and would clobber your edits.
Before starting
- Read
<target_repo>/autosprint/plan.md— the## Pendingsection is the subject. Leave## Recent completedalone. - Read
destination.mdandadr.mdfor context — a task must move toward the destination and must not contradict a locked decision. - Read the actual code the tasks refer to. A task's claim ("the parser silently swallows errors") must be verified against the real code — a task aimed at a problem that doesn't exist is not ready.
The rubric — is a task agent-ready?
Judge each pending task against all of these:
- Concrete — names files, functions, or observable behavior. "Improve the code" fails; "split the 400-line
run_implementinimplement_phase.py" passes. - Scoped — one coherent piece of work. Not a mega-task spanning many files, not so trivial it's noise. The trailing
(N)story-point tag must be present and sane; anything clearly aboveSPRINT_STORY_POINT_MAXmust be split. - Has a done-condition — there is a way to know it is finished: a test that would pass, an observable behavior, a check. A task with no done-condition is one an agent cannot finish.
- Self-contained — does not depend on a decision nobody has made. A decision in disguise — "use uv to add numpy for the vector math" — hides the unmade decision "do we want numpy?". That is not ready: it needs deciding (and recording in
adr.md), not implementing. - Real — the problem it describes actually exists in the current code. Verify against the code, not the task's say-so. A task may carry an explicit
(unverified: <…>)tag where the planner flagged a claim it could not check — treat those as your first priority: verify the tagged claim against the code, then strip the tag once confirmed, or sharpen/drop the task if the claim is false. - Destination-aligned — closes distance to something in
destination.md. A task that does not is orphan scope. - Distinct — does not overlap or duplicate another pending task.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 70 lines · 139 tokens per session scan A a84fc76b6b7f
grill-plan is a skill published in the GitHub repository haakonbull/autosprint (5 stars, last pushed 4d ago), licensed MIT. It adds 139 tokens to every session and 1,758 once invoked, about $0.0006 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
grill-plan compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| grill-planhaakonbull/autosprint | Skill | 5 | 4d ago | MIT | A | 139 | Claude Code |
| imagegenopenai/codex | Skill | 133k | yesterday | Apache-2.0 | A | 113 | Codex |
| playwright-climicrosoft/playwright | Skill | 99k | yesterday | Apache-2.0 | A | 19 | Claude Code |
| local-ai-agentsmicrosoft/ai-agents-for-beginners | Skill | 79k | 4d ago | MIT | A | 200 | Claude Code, Codex |
| systematic-debuggingobra/superpowers | Skill | 313k | 3d ago | MIT | A | 21 | Claude Code |
| next-cache-components-adoptionvercel/next.js | Skill | 143k | yesterday | MIT | A | 95 | Claude Code |
| next-partial-prefetching-adoptionvercel/next.js | Skill | 143k | yesterday | MIT | A | 103 | Claude Code |