Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/muratsilahtaroglu/claude-code-starter-kit/keel-plannpx skills add muratsilahtaroglu/claude-code-starter-kit --skill keel-plangit clone --depth 1 https://github.com/muratsilahtaroglu/claude-code-starter-kitWrote 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/muratsilahtaroglu/claude-code-starter-kit/keel-plan)<a href="https://agentmods.dev/skills/muratsilahtaroglu/claude-code-starter-kit/keel-plan"><img src="https://agentmods.dev/badge/skills/muratsilahtaroglu/claude-code-starter-kit/keel-plan.svg" alt="Measured on agentmods" 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.00070 | $0.01455 |
| Opus 5 | $0.00035 | $0.00727 |
| Sonnet 5 | $0.00014 | $0.00291 |
| Haiku 4.5 | $0.00007 | $0.00145 |
Grade A, and why
keel-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 6d 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 — 64 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/keel-plan — build and maintain the phase map
When: at bootstrap right after the tailoring (rules.md §0), whenever the user asks for a plan or a
re-plan, or when scope changes enough that the DAG no longer matches reality. PLAN.md is the strategic
view; TASKS.md stays the tactical board — never duplicate checkboxes across them.
-
Propose. From the user's goal derive phases + sub-phases, each with: id (
p1,p1_2— lowercase[a-z0-9_]), a gate (verifiable done-when, same spirit as TASKS.md),afterdependencies (siblings with no mutualaftermay run in parallel), and — on a multi-user project — anowner(the person'sgit config user.name; blank = anyone). Ask who owns what when parallel branches are assigned to different people; only the owner advances an owned phase (/keel-autopilotstops at a foreign one). Single-user projects leaveownerblank. Multi-user governance: when the project declares itself multi-user, ASK who the PROJECT owner (founder) is — never assume it's whoever is bootstrapping — and write theirgit config user.nameas the single line of.claude/project-owner. That file arms theowner-guardhook (governance files — PLAN/rules/CLAUDE/architecture/ADR/.claude — become owner-only; non-ownergit pushto main blocked) and the session role line. Assignments (@nametags in TASKS, theownercolumn here) are then the OWNER's call; sprint deadlines ride the TASKS item asdue: YYYY-MM-DD(the re-ground hook nags past-due) (docs/steering.md "Multi-user"). Single-user: no file, nothing changes. Map product phases only — what the project builds and ships. One-time meta/tooling work (a mid-project tool adoption, a dependency/CVE sweep, a pure refactor) is not a phase node: record it in an ADR and/or the Fix log. A meta stub given anafterbecomes a permanent dead-end fork in the graph — exactly the noise the map should avoid. Show the table draft — apply only after approval (§10.36). -
Write
PLAN.md. Patch the phase table (SOURCE OF TRUTH) and Current focus; regenerate the whole diagram block from the table between theKEEL_PLAN_DIAGRAMmarkers — never hand-edit inside, never rewrite the rest of the file (patch, don't clobber). One syntax slip breaks the whole GitHub render.Canonical diagram spec — this skill OWNS it. (
PLAN.mdis PROTECTED by/keel-update, so palette fixes reach existing projects only through this skill's regeneration, not by editing their PLAN header.)- Node id = the phase id (
p1,a2), NOT "Phase 1"; label readsid short-nameso table, TASKS, Fix-log and diagram key on ONE token. Order is the ARROWS, never the number — a big id on a parallel branch may finish before a small one (that is normal in a DAG, not a mistake to hide). - Status → semantic class (a plan at rest must not look alarming — reserve red for real trouble):
done green · wip amber+thick border (the "you are here") · todo neutral grey+dashed (not-started ≠ broken) · blocked red (reserved). Emit a one-line legend just above the fence:classDef done fill:#2e7d32,color:#ffffff,stroke:#1b5e20 classDef wip fill:#f9a825,color:#000000,stroke:#e65100,stroke-width:3px classDef todo fill:#eceff1,color:#37474f,stroke:#b0bec5,stroke-dasharray:4 3 classDef blocked fill:#c62828,color:#ffffff,stroke:#8e0000> yeşil done · **amber** wip · gri-kesik todo · kırmızı blocked — sıra OKLARDA, numarada değil. - Mermaid safety (GitHub ~v10): ids
[a-z0-9_]; every node on its own line, edges below; labels"double-quoted", ASCII only — no emoji, no unquoted(), no lowercaseend; solid-->= depends-on, dotted-.->= contains; everyclassDefpairsfillwithcolor; no%%{init}%%.
- Node id = the phase id (
-
Seed the board. Refill
TASKS.md ## Now(3–5 items max) from the wip leaf's gate; reference the phase id in each item so the Fix log and HANDOVER one-liners can point back. -
Status lifecycle.
todo → wip → done, flipped at rituals:/keel-handoverupdates statuses + Current focus each session;/keel-phase-reviewis the only gate todone.donenever flips back — a bug found later is a Fix log row (date | fix | phase-id), which keeps the map honest after the project completes. -
Re-planning (experiments change the plan).
PLAN.mdalways shows ONLY the latest plan: phases dropped in a re-plan are removed entirely from the table and diagram — no tombstone rows or statuses. The failed approach is already recorded inLESSONS.md [fail]/ HANDOVER block (b), and git history keeps every earlier shape of the plan.donephases stay; existing ids are never renumbered (Fix log / HANDOVER references must keep resolving). -
Drift. The SessionStart hook warns when the table and diagram disagree or when a wip phase has an empty
TASKS.md ## Now— fix by regenerating from the table (this skill), not by editing the diagram.
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.
- 6d ago First seen · 64 lines · 70 tokens per session scan A 0c0fe360da63
keel-plan is a skill published in the GitHub repository muratsilahtaroglu/claude-code-starter-kit (9 stars, last pushed 2d ago), licensed MIT. It adds 70 tokens to every session and 1,455 once invoked, about $0.0003 per session on Opus 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.
Other skills, from other repositories
autonomous-loops
Patterns and architectures for autonomous Claude Code loops — from simple sequential pipelines to RFC-driven multi-agent DAG systems.
mle-workflow
Production machine-learning engineering workflow for data contracts, reproducible training, model evaluation, deployment, monitoring, and rollback. Use when building, reviewing, or hardening ML systems beyond one-off notebooks.
react-patterns
React 18/19 patterns including hooks discipline, server/client component boundaries, Suspense + error boundaries, form actions, data fetching, state management decision trees, and accessibility-first composition. Use when writing or reviewing React components.
content-engine
Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.
article-writing
Write articles, guides, blog posts, tutorials, newsletter issues, and other long-form content in a distinctive voice derived from supplied examples or brand guidance. Use when the user wants polished written content longer than a paragraph, especially when voice consistency, structure, and credibility matter.
agent-carnet
Use this skill when the user asks to save, recall, find, or organize notes. Triggers on: 'remember this', 'save this', 'note this', 'what did we discuss about...', 'check the notebook', 'find in carnet'. Also use proactively when discovering findings worth preserving across sessions.