Agent skill

Draft Plan

by tobihagemann in tobihagemann/turbo

Produce an implementation plan at .turbo/plans/<slug.md. An agent skill from tobihagemann/turbo.

MITAuto-check passedAgent Workflows

Install Draft Plan

skills CLI
$ npx skills add tobihagemann/turbo --skill draft-plan -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install tobihagemann/turbo draft-plan --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/tobihagemann/turbo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/codex/skills/draft-plan .claude/skills/draft-plan && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
draft-plan
GitHub stars
409
Token cost
~5.6k tokens
SKILL.md length
3,268 words
Files
1
Skills in repo
81
Repo updated
First seen
Licence
MIT

At a glance

Produce an implementation plan at .turbo/plans/<slug.md. An agent skill from tobihagemann/turbo.

  • Works in 8 steps: Capture the Task and Pick a Slug → Run $survey-patterns Skill → Consult Task-Specific Skills and Docs → …
  • The user asks to draft a plan
  • SKILL.md covers Task Tracking, Step 1: Capture the Task and…, Step 2: Run $survey-patterns… and Step 3: Consult Task-Specific…, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Draft Plan is an agent skill from tobihagemann/turbo. Produce an implementation plan at .turbo/plans/<slug.md. Use when the user asks to "draft a plan", "draft the plan", "write an implementation plan", "plan this change", "create an implementation plan", or needs a first-draft plan file before refinement.

Its SKILL.md is about 5.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering Planning. The repository describes itself as: Reusable workflows for planning, building, reviewing, and shipping with Claude Code and Codex. The licence is MIT.

When your agent uses it

  • The user asks to draft a plan
  • Write an implementation plan
  • Plan this change
  • Create an implementation plan

Example prompts

  • “draft a plan”
  • “draft the plan”
  • “write an implementation plan”
  • “/draft-plan”

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. Capture the Task and Pick a Slug
  2. Run $survey-patterns Skill
  3. Consult Task-Specific Skills and Docs
  4. Escalate Product Decisions
  5. Deep-Dive Discussion
  6. Draft and Write the Plan File
  7. Present Summary
  8. Act on the User's Reply

What it can do on your machine

Read from SKILL.md and the folder at commit 160a0fa. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Draft Plan loads about 5.6k tokens when it runs. Until then it costs about 66 tokens; SKILL.md has 3,268 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~66
When it runs · the whole SKILL.md, loaded when a task matches
~5.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from tobihagemann/turbo at commit 160a0fa, republished under its MIT licence (© tobihagemann). 3,268 words, ~5,568 tokens.

Download SKILL.mdSave it as .claude/skills/draft-plan/SKILL.md (or your agent's skills folder).
name
draft-plan
description
Produce an implementation plan at .turbo/plans/<slug>.md. Use when the user asks to "draft a plan", "draft the plan", "write an implementation plan", "plan this change", "create an implementation plan", or needs a first-draft plan file before refinement.

Draft Plan

Produce an implementation plan at .turbo/plans/<slug>.md. Capture the task, survey patterns, escalate decisions, discuss, and draft.

Task Tracking

Use update_plan to track each step, restating any remaining steps of a parent workflow alongside them:

  1. Capture the task and pick a slug
  2. Run $survey-patterns skill
  3. Consult task-specific skills and docs
  4. Escalate product decisions
  5. Deep-dive discussion
  6. Draft and write the plan file
  7. Present summary
  8. Act on the user's reply

Step 1: Capture the Task and Pick a Slug

Absorb the user's request without interrupting. Restate the goal in one or two sentences and confirm.

Generate a slug for the plan file from the task title:

  • Lowercase
  • Replace non-alphanumeric characters with hyphens
  • Collapse consecutive hyphens
  • Trim leading and trailing hyphens
  • Truncate to 40 characters at a word boundary

Example: "Add a caching layer to the image pipeline" → add-a-caching-layer-to-the-image-pipeline.

If .turbo/plans/<slug>.md already exists, append -2, -3, etc. until the path is free. Do not overwrite.

The user may pass an explicit slug or output path in their request (e.g., "draft plan as auth-rewrite"). If so, honor it. If .turbo/plans/<slug>.md exists in that case, use request_user_input to ask whether to overwrite, append a numeric suffix, or pick a different slug.

A path to a file that already exists is background input rather than an output destination. Treat it as the output path only when the request says so explicitly.

State the chosen slug and the resulting plan path before continuing.

Background Document as Input

If a path to a background document is passed as input (a design doc, an issue, a written proposal), treat it as the source of truth for product decisions and discussion areas. Read it, then:

  • In Step 4, skip escalation for any product decision the document resolves. Only escalate questions it did not answer.
  • In Step 5, skip deep-dive areas the document covers. Only discuss areas it did not address.
  • Confirm the deployment's bounds with the user even when the document states them, rather than carrying them over as settled.

A question is resolved only when the document makes a definitive statement that answers it. Mentions without a chosen direction, open questions, and deferred decisions do not count as resolved; escalate those normally.

Step 2 (pattern survey) and Step 3 (consult skills and docs) still run in full. The document describes what; $draft-plan still surveys how.

Step 2: Run $survey-patterns Skill

Run the $survey-patterns skill with the confirmed task description. Keep the returned findings in conversation context for use in Steps 5 and 6.

Step 3: Consult Task-Specific Skills and Docs

Ground library and framework choices in current reality before escalating decisions.

  1. Scan for matching skills. Compare the task description against available skill trigger descriptions. For each unambiguous match, run the skill by reading and following the installed skill instructions. This loads decision-level guidance (idiomatic patterns, known pitfalls, version constraints) before product decisions are made. If unsure, do not load.
  2. Look up library docs. For libraries or frameworks the task clearly depends on, query documentation MCP tools (or web search as a fallback) when the decision hinges on current library state such as whether a feature exists, which versions support it, or whether an API has been deprecated.
  3. Read both sides of an interface the task implements or adapts. Read the interface's shipped declaration at the installed version in full, including the obligations its documentation places on implementers; it outranks hosted docs for version-exact facts. Read the production code on the other side as well: the implementation real callers pass in, or the caller that drives the new work.

Keep findings at the decision level: what a library can do, which approach is idiomatic, which version to target. Do not embed specific API signatures or code snippets into the plan. Those belong at execution time, where the same skills are re-loaded.

Step 4: Escalate Product Decisions

Identify product or design decisions the user's request did not resolve. Escalate these via request_user_input before drafting steps.

Escalate when:

  • A plan step requires choosing between user-facing behaviors the request did not specify (opt-in vs opt-out, strict vs lenient, sync vs async)
  • The plan assumes product requirements that were not stated
  • Design trade-offs affect UX or product direction rather than technical implementation
  • Multiple valid approaches exist and the choice is a matter of product preference, not technical merit
  • The plan would introduce a pattern not yet established in this codebase, or follow one sourced from outside it
  • The plan adds consistency or durability machinery (a lease, lock, queue, versioning scheme, or new persistent entity) that no stated requirement or deployment bound demands; carrying that machinery is itself a product decision

Do not escalate technical decisions the agent can make autonomously: which data structure, which existing pattern to follow, internal implementation approach. The boundary is product intent.

Confirm external constraints before escalating. When an option depends on a third-party API, service, or platform behaving a particular way, drop it unless that behavior is confirmed by current documentation.

Look up a named precedent before escalating. When the request or a background document names a precedent the design is meant to follow, such as an existing product, a protocol, or a standard, look up how it behaves on the points the design touches, and frame options against what the lookup found. Mark as unverified only a claim about it that the lookup could not settle.

Observe existing surfaces before escalating. When an option concerns how an existing surface looks, observe it as it currently renders, by running the app from the current code, or from a screenshot requested from the user, and drop any option its rendered state rules out.

Apply the UX lens before escalating. When a decision concerns what the software does for the person using it, a default or a control included, run the $user-experience skill on it first, and state each option as the behavior that person gets and the goal it serves. Leave the mechanism behind each behavior to the plan.

Output what is at stake as text first, even when the reading it came from is fresh in this conversation. When the decision turns on a failure or misuse scenario, that means the invariant the change would protect and what makes that scenario reachable given the existing guards. Then use request_user_input to present the decision as a concise trade-off with options. Mark the strongest option "(Recommended)" and place it first. Treat the work of departing from the codebase's existing structure as a cost to state beside the option that incurs it, with no bearing on which option is strongest. Draft plan steps that depend on these decisions only after the user responds.

Offer a Get a second opinion option whenever the decision is costly to reverse (it establishes a pattern others will follow, defines an interface, commits to a data shape, or imports a pattern the codebase has not used), and whenever no option earns "(Recommended)" with conviction. It runs the $consult-claude skill for what each option commits to, what reversing it costs, and what the prevailing convention is. Hold the concrete options to two so the question stays within the three-option limit. Then resolve the decision with that answer in hand, re-asking when the choice stays the user's.

Step 5: Deep-Dive Discussion

Interview the user relentlessly about every aspect of the implementation shape until you reach shared understanding. Use request_user_input, one question at a time. Use the pattern survey findings to frame choices. Cover whichever of these matter for the task. Do not present a rigid checklist.

Settle the first two rows before the rest, so implementation choices land against concrete outcomes and bounds instead of being taken in the abstract. When the user jumps to implementation shape early, engage briefly then circle back.

AreaWhat to explore
OutcomesWhat must be true when this is done? The observable behaviors that decide whether it worked, and the acceptance criteria that pin each one.
BoundsHow many users and operators, now and realistically? Concurrent writers? Which rigor tier is proportionate — personal tool, small team, or business-critical — and what failure tolerance does that imply?
ConstraintsWhich non-functional requirements apply: performance, security, accessibility, i18n, compliance? Which tech-stack, hosting, or integration choices does the work commit to?
Prototype unknownsWhat does the surface look like, and does the interaction pattern make sense in the hand? Separate these from ordinary design questions by whether an answer in prose would still leave the user guessing.
Reuse vs newWhich survey findings should the new work build on? Which should it deliberately not follow, and why?
File placementWhere do new files live? Which existing files are modified?
Data flowHow does data move through the change? Any new boundaries or contracts?
Edge casesPartial failure, empty states, backward compatibility, concurrency
TestsWhich existing test patterns apply? Where do new tests live?
Scope cutAnything to explicitly defer? Keep in scope any items the change would otherwise leave as the last holdouts of the behavior it replaces, however small their payoff.
Discussion Guidelines
  • If a question can be answered by exploring the codebase, explore the codebase instead.
  • When a question concerns how an existing surface looks, observe it as it currently renders, by running the app from the current code, or from a screenshot requested from the user, before framing options. Drop any option its rendered state rules out.
  • When a question concerns how to guard against a state, find where that state is constructed before framing options. When a single place constructs it, offer making the state impossible to construct there alongside the shapes that detect it downstream or change its consumers.
  • When a question defines a boundary, contract, or data shape, add a Get a second opinion option and hold the concrete options to two so the question stays within the three-option limit. It runs the $consult-claude skill for the soundest answer on technical merit alone, independent of the task's original scope; on a question of product intent, run it for what each answer commits to and what reversing it costs. Then resolve the question with that answer in hand, re-asking when the choice stays the user's.
  • When a question turns on how a surface looks or how an interaction behaves, and an answer in prose would leave the user guessing, add a Prototype it first option and hold the concrete options to two so the question stays within the three-option limit. It runs the $prototype skill on that unknown, then asks the question again with the prototype in hand. A confirmation of outcomes is such a question when the outcomes describe what a control or gesture does in use.
  • When a question concerns what the software does for the person using it, a default or a control included, run the $user-experience skill on it before framing options, and state each option as the behavior that person gets and the goal it serves.
  • Pair each question with a recommendation and the reasoning behind it, so the discussion stays collaborative.
  • Walk down each branch of the design tree, resolving dependencies between decisions one-by-one.
  • When the user says "you decide," make the call and explain why.
  • Probe short answers before moving on.
  • Before closing the discussion, hold each decision resolved in Step 4 or earlier in this step against the shape as it now stands: re-read what its chosen option was described as doing. Where a description no longer holds, name the claim that fails and re-ask that decision.
  • When the shape is clear or the user signals readiness, confirm before drafting.
Show full SKILL.md (1,341 more words)Show less

Step 6: Draft and Write the Plan File

Synthesize the task description, pattern survey findings, consulted skill and doc context, resolved product decisions, and deep-dive discussion outcomes into a complete plan document.

When a decision in Step 4 or Step 5 deferred work to the improvements backlog, run the $note-improvement skill for it before writing the plan. State the deferral in the plan's Context as out of scope and, when the skill wrote a backlog entry, as already noted.

Create .turbo/plans/ if it does not exist. Write the plan to .turbo/plans/<slug>.md using the slug picked in Step 1 (or the override path from Step 1) using this structure:

markdown
---
status: draft
---

# Plan: <Task Title>

## Context

<Why this change is being made — the problem or need it addresses, what prompted it, the intended outcome. One or two paragraphs.>

<The deployment's bounds: user and operator count, concurrency, the rigor tier, and the failure tolerance it implies. One or two sentences.>

## Acceptance Criteria

What must be true when this is done:

- When <trigger or condition>, the system shall <expected behavior>.
- As a <persona>, I want <capability> so that <outcome>.
  - Acceptance: <criterion>

## Pattern Survey

<Insert the structured findings from `$survey-patterns`: Analogous Features, Reusable Utilities, Convention Anchors, Proposed Alignment. Use the same format the survey returned.>

## Implementation Steps

1. **<Step 1 title>**
   - <Concrete action with `file_path` references and named functions or symbols>
   - <Another action>
2. **<Step 2 title>**
   - ...
3. ...

## Verification

How to verify the change works end-to-end after implementation:

- <Specific test command, manual smoke check, or MCP tool invocation>
- <Expected observable result for each verification step>
- <Edge cases to spot-check>

## Context Files

Files to read in full before starting implementation:

- `<path/to/file1>` — <why it matters>
- `<path/to/file2>` — <why it matters>
- ...
Content Rules for the Plan
  • Context: State the deployment's bounds explicitly. Downstream review judges whether the plan's machinery is proportionate against these bounds, so a plan that omits them leaves that judgment ungrounded.
  • Acceptance Criteria: State observable outcomes, not implementation steps. Use the behavioral form or the user-story form per criterion; both can appear in one plan. Every criterion with observable behavior must be exercised by the Verification section. Promise no more than the change guarantees: hold each criterion against the exceptions, exclusions, and side effects the plan accepts elsewhere, and narrow it until none of them contradicts it. Omit this section only when the change has no observable behavior, which the Verification section already records.
  • Implementation Steps: Use concrete file_path references and named functions or symbols. Confirm each symbol a step names resolves to a real declaration — same spelling and casing, in a file you opened, carrying the signature, fields, or event name the step relies on — searching the codebase, or the dependency's shipped interface when the symbol belongs to one. Verify that shape rather than recording it. When the change introduces the symbol instead, mark it new and name where it is defined and what uses it. When a step deletes, renames, or changes the signature of a symbol, list every file that references it, including references on code paths the change otherwise leaves alone or that never execute in practice. When a step turns on how a platform, tool, or dependency behaves at runtime and that behavior has not been observed, observe it with a cheap experiment that leaves the working tree unchanged before writing the step, and state what it showed. When only a person's real input can show the behavior, such as keyboard focus or a gesture, use request_user_input to ask the user for a short hands-on check, and state what it showed. Mark a behavior that could not be observed as unobserved. When the change introduces per-entity state with an asynchronous lifecycle, state which path creates it, which single path commits its terminal outcome, and which path removes it once that outcome is committed. Confirm every state short of that outcome has a path that reaches it, then check every step that touches that state against those owners. Reference existing functions and utilities from the Pattern Survey instead of reinventing them. Each step describes a discrete unit of work that can be tracked independently during execution.
  • Verification: Describe how to know the change actually works. Prefer specific test commands, named test files, or named smoke checks over vague phrases like "run the tests." If the change has no observable behavior, say so explicitly. When citing an existing test as proof that a behavior is already pinned, first confirm that the test asserts the real value or behavior at issue rather than a fixture or the pass-through of a fabricated argument, and that its own inputs or match patterns reach each item it is cited for. Shape each test still to be written so it fails when the behavior it guards is absent: where the change introduces or corrects that behavior, drive an input that the code without the change handles wrongly, and assert on an observable the change alters. When it asserts an observable that some other mechanism in the system also produces, name that mechanism and shape both the fixture and the assertion so only the behavior under test can produce the observable. When a test still to be written asserts an outcome, place it in a suite that runs the real code producing that outcome: a suite that replaces that producer with a test double observes only the call into the double and what the double was scripted to return. When the change implements or adapts an interface, include a check that exercises it against the production counterpart, alongside any stand-in.
  • Context Files: Curate the minimum set needed to become productive. Do not dump every file touched — only the ones that anchor understanding.
  • Scope: Plan content describes what to build. Do not embed task tracking, skill loading, $finalize invocation, test commands, or commit instructions in the plan content — those are execution-wrapper concerns. One plan file covers one implementation run. When later work must wait on an external gate the implementation cannot pass itself, such as a verified deploy of the earlier work, write that later work as a separate plan file with the same structure, rather than marking a stopping point inside one plan. Derive its slug from the later work with Step 1's rules and state its path before writing it. When the later work changes a different repository than this one, write its plan file to .turbo/plans/ in that repository: check Step 1's free-path rule against that directory, write the plan's paths relative to that repository's root, and use the file's absolute path wherever this rule names the later plan's path. State the gate in the later plan's Context section, and name the later plan's path in the earlier plan's Context section. Plan size never justifies a second file.

Step 7: Present Summary

Present a brief summary of the drafted plan: the essence of what it builds and the key decisions behind it, short enough to read at a glance so the user does not have to read the full plan file. When the plan delivers value to a user, developer, or operator, also present a short list of stories capturing what that person gains, in the form "As a <persona>, I want <capability> so that <outcome>". Skip the stories only when no beneficiary or outcome can be named, such as a purely mechanical refactor. Fit both to the plan rather than a fixed template. When Step 6 also wrote a gated plan, summarize each file, and name which one to implement first and the gate the later one waits on.

Close with how to reply: approve the plan as final, or describe what to change. When an unknown that only a built artifact settles is still open, also offer prototyping it first, and recommend that over approving, since a surface or interaction pattern that is still unproven cannot be judged from the plan text.

Then end the turn.

Step 8: Act on the User's Reply

A goal continuation turn that carries no reply from the user is not an approval: end it without calling any tool and without advancing.

  • Revise — apply the edits the user describes to the affected plan file. Then re-present Step 7's summary, close with its reply guidance, and end the turn again.
  • Prototype first — run the $prototype skill, then apply what it settled to the plan file. Then re-present Step 7's summary, close with its reply guidance, and end the turn again.
  • Approve — the plan is final.

Then call update_plan to mark this step completed and continue with the next step of the active workflow.

Rules

  • Never skip the pattern survey.
  • Never skip decision escalation for questions left unanswered. When entering from a Background Document as Input, questions the document already resolves are considered answered and may be skipped.
  • The plan file, any gated plan the Scope rule calls for, any backlog entry for work a decision deferred, workflow-state bookkeeping under .turbo/, and any prototype the discussion or the user's reply to the summary called for are the only outputs. Do not write code, scaffolding, or other project files.
  • Do not run $review-plan or any review skills here.

© tobihagemann, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in codex/skills/draft-plan of tobihagemann/turbo.

Open the folder on GitHubat commit 160a0fa

Compare with similar skills

Draft Plan next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Draft Plan compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Draft Plan this skilltobihagemann/turbo409—~5.6kAutomated safety check: PassMIT
Executing Plans Inlineobra/superpowers297k2 repos~5.1kAutomated safety check: PassMIT
Interview Meaddyosmani/agent-skills103k6 repos~3.8kAutomated safety check: PassMIT
OpenSpec Guided OnboardingFission-AI/OpenSpec71k1 repos~4.5kAutomated safety check: PassMIT
Writing Plansgeeksblabla/stateofdev.ma16357 repos~661Automated safety check: PassNone
Subagent Driven DevelopmentAsvarox/allkaraoke26137 repos~1.2kAutomated safety check: PassNone

Similar skills

  • Executing Plans Inline

    obra/superpowers

    Has the agent carry out an implementation plan itself, task by task in the current session, keeping a ledger, proving each step with a test and ending with one whole-branch review.

    297k GitHub starsUsed in 2 repos~5.1k tokens
    Agent WorkflowsAuto-check passed
  • Interview Me

    addyosmani/agent-skills

    Asks one question at a time, each with a best guess attached, until the agent is about 95 percent sure what you really want, before any plan, spec or code.

    103k GitHub starsUsed in 6 repos~3.8k tokens
    Agent WorkflowsAuto-check passed
  • OpenSpec Guided Onboarding

    Fission-AI/OpenSpec

    Walks you through a complete OpenSpec workflow cycle with narration while doing real work in your codebase.

    71k GitHub starsUsed in 1 repo~4.5k tokens
    Agent WorkflowsAuto-check passed
  • Writing Plans

    geeksblabla/stateofdev.ma

    A skill your agent uses when design is complete and you need detailed implementation tasks for engineers with zero codebase context - creates comprehensive implementation plans with exact file…

    163 GitHub starsUsed in 57 repos~661 tokens
    Agent WorkflowsAuto-check passed
  • Subagent Driven Development

    Asvarox/allkaraoke

    A skill your agent uses when executing implementation plans with independent tasks in the current session

    261 GitHub starsUsed in 37 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • Planning With Files

    jd-opensource/JoySafeter

    Implements Manus-style file-based planning for complex tasks.

    313 GitHub starsUsed in 19 repos~1.8k tokens
    Agent WorkflowsAuto-check: notes

More from tobihagemann/turbo

All 81 skills in this repo
  • Consult Oracle

    tobihagemann/turbo

    Consult ChatGPT Pro via ChatGPT browser automation for problems that resist standard approaches.

    409 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Fetch PR Comments

    tobihagemann/turbo

    Fetch and summarize review feedback and conversation from a GitHub PR (unresolved review threads, review bodies, and PR conversation comments) without making changes.

    409 GitHub stars~967 tokensUpdated today
    Auto-check passed
  • Recall Rationale

    tobihagemann/turbo

    Recall why a past change was made by locating the Claude Code transcript that produced it.

    409 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Resolve PR Comments

    tobihagemann/turbo

    Evaluate, fix, answer, and reply to GitHub pull request review comments and conversation comments.

    409 GitHub stars~3.8k tokensUpdated today
    Auto-check passed
  • Resolve PR Comments

    tobihagemann/turbo

    Evaluate, fix, answer, and reply to GitHub pull request review comments and conversation comments.

    409 GitHub stars~3.8k tokensUpdated today
    Auto-check passed
  • Assess Technical Debt

    tobihagemann/turbo

    Assess project-wide structural technical debt: complexity hotspots, deprecated API usage, duplication clusters, architecture rot, and low-value tests.

    409 GitHub stars~2.8k tokensUpdated today
    Auto-check passed

Categories

Questions about Draft Plan

What does Draft Plan do?

Produce an implementation plan at .turbo/plans/<slug.md. An agent skill from tobihagemann/turbo. Draft Plan is an agent skill from tobihagemann/turbo.md.

When should I use Draft Plan?

Draft Plan fits situations like: the user asks to draft a plan; write an implementation plan; plan this change; create an implementation plan.

How do I install Draft Plan in Claude Code?

Run `npx skills add tobihagemann/turbo --skill draft-plan -a claude-code`. Or copy the skill folder (codex/skills/draft-plan in tobihagemann/turbo) into .claude/skills/draft-plan in your project. Claude Code loads it when a task matches its description.

How do I install Draft Plan in Codex?

Run `npx skills add tobihagemann/turbo --skill draft-plan -a codex`. Or copy the skill folder (codex/skills/draft-plan in tobihagemann/turbo) into .agents/skills/draft-plan in your project. Codex loads it when a task matches its description.

Can I use Draft Plan in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add tobihagemann/turbo --skill draft-plan -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/draft-plan, .gemini/skills/draft-plan, .github/skills/draft-plan and .opencode/skills/draft-plan in your project.

What does Draft Plan need to run?

SKILL.md names no scripts, command-line tools or credentials: Draft Plan is instructions for the agent only.

Does Draft Plan access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Draft Plan safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Draft Plan use?

Draft Plan is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Draft Plan use?

About 5.6k tokens (SKILL.md is roughly 22k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Draft Plan?

Skills that share tags, products or a category with Draft Plan: Executing Plans Inline (obra/superpowers, 297k stars), Interview Me (addyosmani/agent-skills, 103k stars), OpenSpec Guided Onboarding (Fission-AI/OpenSpec, 71k stars) and Writing Plans (geeksblabla/stateofdev.ma, 163 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Draft Plan?

tobihagemann (a GitHub user) maintains it in tobihagemann/turbo, which has 409 GitHub stars. The repository holds 81 skills in this directory. The repository was last updated on October 9, 2026.

Source: tobihagemann/turbo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.