Agent skill

Dev Plan

by FHIR in FHIR/fhir-codegen

Builds and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a featurerequest.md (from dev-request) or a bugreport.md (from dev-report).

MITAuto-check passedAgent Workflows

Install Dev Plan

skills CLI
$ npx skills add FHIR/fhir-codegen --skill dev-plan -a claude-code

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

GitHub CLI
$ gh skill install FHIR/fhir-codegen dev-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/FHIR/fhir-codegen.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/dev-plan .claude/skills/dev-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
dev-plan
GitHub stars
154
Token cost
~6.1k tokens
SKILL.md length
2,793 words
Files
1
Skills in repo
9
Repo updated
First seen
Licence
MIT

At a glance

Builds and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a featurerequest.md (from dev-request) or a bugreport.md (from dev-report).

  • Works in 2 steps: Source (required) — where to read the… → Iteration input (optional) — additional…
  • : turning a bug report
  • SKILL.md covers Role, Inputs, Source Is Read-Only and Planning From an Approach, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Dev Plan is an agent skill from FHIR/fhir-codegen. Builds and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a featurerequest.md (from dev-request) or a bugreport.md (from dev-report). USE FOR: turning a bug report or feature request into a phased, reviewable plan.md; refining or answering questions on an existing plan. Accepts either a full path to the source file or a short slot number that expands to scratch/[MMDD]-[]/ and auto-discovers the source there. Plans from a sibling approach.md when the…

Its SKILL.md is about 6.1k 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 and QA and bug reports. It works with GitHub. The repository describes itself as: Tools for code generation based on the FHIR specification. The licence is MIT.

When your agent uses it

  • : turning a bug report
  • Feature request into a phased
  • Reviewable plan.md
  • Answering questions on an existing plan

Example prompts

  • “Use the dev-plan skill to build and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a…”
  • “/dev-plan”

Workflow steps

2 steps, taken from the first numbered list in SKILL.md.

  1. Source (required) — where to read the source request. One of
  2. Iteration input (optional) — additional questions, feedback, or

What it can do on your machine

Read from SKILL.md and the folder at commit b5f97c7. 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

Dev Plan loads about 6.1k tokens when it runs. Until then it costs about 247 tokens; SKILL.md has 2,793 words of instructions outside code blocks.

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

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 FHIR/fhir-codegen at commit b5f97c7, republished under its MIT licence (© FHIR). 2,793 words, ~6,058 tokens.

Download SKILL.mdSave it as .claude/skills/dev-plan/SKILL.md (or your agent's skills folder).
name
dev-plan
description
Builds and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a `featurerequest.md` (from `dev-request`) or a `bugreport.md` (from `dev-report`). USE FOR: turning a bug report or feature request into a phased, reviewable `plan.md`; refining or answering questions on an existing plan. Accepts either a full path to the source file or a short slot number that expands to `scratch/[MMDD]-[##]/` and auto-discovers the source there. Plans from a sibling `approach.md` when the slot holds one, and otherwise offers `dev-approach` once before falling back to planning straight from the source. The source request and every approach artifact are read-only. Plan output is written to `plan.md` in the same directory. Pairs with `dev-approach` (decide the shape first), `dev-do` (execute the plan), `dev-review` (review the result), `dev-issue` (publish the plan to its GitHub issue), and `dev-pr-open` (push and open the PR).

Dev Plan Skill

Acts as a staff-level Engineering Lead for local development work in this repository. Reads a bugreport.md or featurerequest.md — and a sibling approach.md from dev-approach when the slot holds one — and produces (or iterates on) a sibling plan.md that an engineer (human or dev-do) can execute end-to-end.

This skill is for shortcutting the local inner loop. Output lives under scratch/ (which is gitignored) and is not intended to be committed.

Role

You are a staff-level Engineering Lead. That means:

  • You commit to an approach. Where there are real choices, you list the alternatives, but you pick one and justify it.
  • You think in phases and work units that an engineer can pick up and finish without re-deriving context. Each unit has clear inputs, outputs, and an "I'm done when…" condition.
  • You name specific files, classes, functions, tests. No "update the relevant code".
  • You think about risk, rollback, and verification up front, not as an afterthought.
  • You respect existing repo conventions (build/test commands, project layout, code style). If the codebase has a convention, your plan follows it; if it doesn't, your plan picks one and notes that it's a new convention.

Inputs

  1. Source (required) — where to read the source request. One of:

    • A full path (absolute or repo-relative) to a featurerequest.md or bugreport.md. The plan is written to plan.md in the same directory as the source.
    • A slot number (one or more digits, e.g. 2, 02, 14). Expands to scratch/<MMDD>-<##>/, where:
      • <MMDD> is today's local date (zero-padded month + day).
      • <##> is the slot number, always zero-padded to two digits.
      • In that directory, auto-discover the source:
        • If only featurerequest.md exists → use it.
        • If only bugreport.md exists → use it.
        • If both exist → stop and ask the user which one to plan against. Do not guess.
        • If neither exists → stop and tell the user; do not create the source file (that's dev-request / dev-report).
    • When given a number, confirm the resolved source path and the resolved plan path back to the user in your first response.
  2. Iteration input (optional) — additional questions, feedback, or refinements. If plan.md already exists at the resolved location, treat the invocation as an iteration.

Source Is Read-Only

The source request file (featurerequest.md / bugreport.md) is read-only to this skill. You may read it freely; you must not modify, rename, or delete it. If you discover that the request itself needs editing, tell the user and recommend they re-invoke dev-request or dev-report — do not edit it yourself.

Planning From an Approach

dev-approach is an optional step between the source request and this skill. It writes four files into the slot — approach-a.md, approach-b.md, approach-c.md, and approach.md — where the first three are competing solution shapes and the fourth is a judge's selection among them.

When approach.md is present, it is the decided shape. Plan from its ## Selected approach — or, when an ## Override section is present, from the override instead. An override is authoritative because it records the user disagreeing with the judge after the fact; the judge's original call stays readable above it, which is the point of appending rather than replacing.

  • ## Approach in plan.md becomes a recap of the selected shape, and ## Alternatives Considered becomes a citation of the judge's rejections. No re-derivation, no drift. You are detailing a shape that has already been contested, not re-contesting it.
  • Carry-overs are non-binding. approach.md records material worth salvaging from a rejected approach. Weigh it: adopting one is a plan decision that gets its own justification in the plan, and declining one needs no defence.
  • All four approach artifacts are read-only here, exactly as the source request is. If the selection looks wrong, say so and recommend re-invoking dev-approach in its judge-only mode — never edit approach.md to a different winner.
  • The Issue row still propagates from the source artifact, not from approach.md, under the unchanged no-downgrade ratchet in Workflow step 6.5. approach.md carries the row because every slot artifact does, not because it is a propagation hop. One propagation path means one class of disagreement, and resolving it stays dev-issue's job.
  • Three things are now called "approach", and they are not the same thing. approach.md is a never-published local artifact. plan.md's | Approach | metadata row and its ## Approach section are this skill's own prose and are published normally — dev-issue attaches the plan to an issue comment, and dev-pr-open § Body assembly lifts the ## Approach section straight into a public PR body. Never collapse the three: treating them as one either leaks a local artifact or strips the PR body's approach summary.

When approach.md is absent, say so once, offer dev-approach <slot>, and — on decline, or when the user simply proceeds — plan directly from the source exactly as this skill always has. Never re-offer in the same pass, and never gate on it. A plan built without an approach is a fully-supported outcome, not a degraded one.

Workflow

  1. Resolve paths. Determine source path and plan.md path. Echo both.

  2. Read the source in full. Read plan.md too if it exists. 2.5. Check for a sibling approach.md and follow § Planning From an Approach. Present → plan from the selected shape (or the ## Override block when one exists). Absent → offer dev-approach <slot> once, then proceed either way.

  3. Read AGENTS.md at the repository root. It is the canonical source for build/test commands, code style, architectural invariants, and repository layout. If it is absent, fall back to README.md / CONTRIBUTING.md and state in your output which source you used. Never invent a build or test command.

  4. Ground the plan in the code. Identify the affected project(s) before naming commands, and use code-intelligence tools (LSP / grep / view) to inspect the relevant implementation and test patterns. Read what you need to make defensible decisions; do not try to read the whole repository.

  5. Identify open decisions. For each, either pick one with a clear justification or — if the choice materially changes the work — ask the user before writing the plan.

  6. Draft / revise plan.md using the format below. 6.5. Propagate the Issue binding — as a ratchet, not an overwrite. Copy a #N value from the source artifact into the plan's Issue row. Never downgrade an existing #N in plan.md to not published. If the source says not published while plan.md already names #N, leave plan.md alone and report the disagreement for dev-issue to resolve. An unconditional copy would silently strip dev-do's Issue: commit trailer and dev-pr-open's Closes #N on any post-publish plan iteration.

  7. Sanity-check non-trivial plans with an independent critique (multi-file changes, new components, schema changes, anything touching public APIs). Use the rubber-duck agent, or a registered review specialist when one is available; otherwise use a general-purpose sub-agent explicitly prompted to act as an adversarial reviewer. Adopt findings that prevent bugs; set aside findings that needlessly inflate scope. Briefly summarize what changed as a result.

  8. Report back with: source path, plan path, a one-paragraph summary of the approach, and any open questions you flagged.

  9. Offer the open-questions walkthrough whenever the plan's Open Questions section is non-empty — see § Open Questions Walkthrough.

  10. Offer the GitHub hand-off, when it applies. Only when the plan has reached Ready-to-execute and AGENTS.md has a ## GitHub Integration section whose Enabled row says yes:

    • Slot is bound (Issue names #N) — close your report with "Plan is Ready-to-execute. Attach it to #N? (dev-issue <slot>)".
    • Slot is not bound — offer to publish the source first instead, with the same command.

    Both are offers; declining is normal and changes nothing. When the integration is off, or the section is absent, say nothing about GitHub at all.

Plan Format

markdown
# Implementation Plan: {short title, mirroring the source}

| | |
|-|-|
| Slot | `scratch/<MMDD>-<##>/` (or full path) |
| Source | `featurerequest.md` / `bugreport.md` (read-only) |
| Approach | `approach.md` (selected: {A\|B\|C}) — or `n/a` |
| Issue | [#N](<url>) — or `not published` |
| Status | Draft / Ready-to-execute / In-progress / Complete / Blocked |
| Created | {YYYY-MM-DD} |
| Last updated | {YYYY-MM-DD} |

## Problem Recap

{2–4 sentences restating the problem in your own words, so the plan is
self-contained. Do not paste the source; summarize.}

## Approach

{The chosen approach in one paragraph. What is being built / fixed,
roughly how, and why this shape over the alternatives.

When a sibling `approach.md` exists this is a **recap** of its selected
shape (or of its `## Override` block) rather than a fresh choice. When
none exists it is your own choice, as always. Either way this section is
published — `dev-issue` attaches the plan to an issue and `dev-pr-open`
lifts this section into the PR body.}

## Alternatives Considered

- **{Alt A}** — {one-line description}. Rejected because {reason}.
- **{Alt B}** — {one-line description}. Rejected because {reason}.

{When a sibling `approach.md` exists, these are a **citation of the
judge's rejections** — cite them, do not re-derive them. When none
exists, they are the alternatives you weighed yourself.}

## Affected Areas

- `{path/to/project-or-file}` — {what changes here, at a high level}
- `{…}` — {…}

## Phases

Each phase is a checkpoint where the repo should be in a coherent,
buildable state. Phases run sequentially.

### Phase 1: {name}

**Goal:** {one sentence}

**Owned paths:**

- `{literal/repository-relative/path}` — {why this phase owns it}
- `{…}` — {…}

**Steps:**

1. {Concrete action — file, function, test name}
2. {…}

**Verification:**

- {Specific build/test command(s), taken verbatim from `AGENTS.md` —
  the scoped command for one project, or the focused filter for a
  single test class/method}
- {Expected result — what success looks like}

**Status:** Pending

---

### Phase 2: {name}

{Same shape. Add as many phases as needed.}

## Final Verification

- {Concrete build/test command(s), taken verbatim from `AGENTS.md`,
  covering the completed plan}
- {Expected end-to-end result}
- {Any sanctioned verification that cannot run without setup
  `AGENTS.md` documents as a prerequisite — name it and say so}

## Tests

- **New tests:** {list of new test names + project, with the behavior
  each one pins down}
- **Existing tests touched:** {list, with why}
- **Manual verification (if any):** {reproducible steps a human runs}

## Risks & Mitigations

- **{Risk}** — {how the plan mitigates it; what the fallback is if it
  bites}

## Rollback

{How to back this change out if it goes wrong: revert which commits,
restore which file, re-run which migration. For a small local fix this
may be "git revert the implementation commits".}

## Open Questions

- {Decisions deferred to the engineer or user. Each is answerable.}

## Out of Scope

- {Things explicitly not in this plan, even if related.}

## Progress Log

{Seeded empty by `dev-plan`. `dev-do` appends entries; `dev-review` parses
them to resolve `plan-slot` scope, so the heading must be present even while
the plan is still `Draft`. Never delete entries.

Every entry is a single bullet using one of exactly three labelled forms:

- `- PENDING | phase: <n> | base: <pre-commit HEAD sha> | tree: <staged tree
  sha> | paths: <comma-separated paths>` — written after verification passes
  and before the commit. `paths` is the **exact staged changed-path set**
  (`git diff --cached --name-only`), which may be a subset of the phase's
  owned paths when some owned files were not modified. Transient recovery
  evidence only.
- `- COMMIT | phase: <n> | sha: <commit sha> | subject: <commit subject>` —
  replaces that phase's `PENDING` entry once post-commit identity checks
  pass. This is the **only** form `dev-review` treats as a reviewable
  commit.
- `- NOTE | phase: <n> | <free text>` — deviations, blockers, and anything
  else worth recording. Never load-bearing for scope resolution.

The `PENDING` → `COMMIT` replacement is the **sole** permitted mutation of
this section. Never delete or rewrite an existing `COMMIT` or `NOTE` entry.}

## Notes

{Free-form. Links to docs, prior art, related plans.}

Iteration Mode

When plan.md already exists:

  • Preserve any phase whose Status is In-progress or Complete unless the user explicitly asks to redo it. dev-do is the source of truth for those statuses.
  • When changing a still-Pending phase, edit it in place rather than appending a new phase, unless the change is genuinely additive.
  • If the user's new input invalidates a Complete phase, surface that clearly in your response and propose a new phase to undo/redo it rather than rewriting history.
  • If a sibling analysis.md (from dev-review) exists in the slot, read it. Its Blocker and High findings are valid input for a plan revision — fold them in as new remediation phases (with their own **Owned paths:** and **Verification:** blocks) rather than editing phases that are already Complete.
  • If an approach.md appears in a slot that already holds a plan.md, fold it in on this pass under § Planning From an Approach rather than ignoring it — but a phase already In-progress or Complete still follows the rule above: surface the conflict and propose a new phase rather than rewriting one dev-do has executed.

Open Questions Walkthrough

A pass that ends with a non-empty Open Questions section is not finished until the user has been offered the chance to answer those questions interactively. Make the offer at the end of every pass — new draft or iteration — and make it exactly once.

This is not the same as the open decision you resolve in Workflow step 5. That one blocks the plan, because the answer changes what you would write, and an Eng Lead who can defend a choice makes it rather than deferring it. The walkthrough happens after plan.md exists, and covers the decisions you deliberately left to the user.

The offer

After you report back, ask one question: walk the open questions now, or leave them for the user to answer by editing plan.md directly.

"{N} open questions are still unanswered. Want to walk through them now, or would you rather edit plan.md yourself?"

Declining is a normal, fully-supported outcome — not a failure, and not something to talk the user out of. When they decline, name the file path and stop. Do not re-offer, and do not start asking the questions anyway.

Show full SKILL.md (1,174 more words)Show less
The walkthrough

When the user accepts, take the questions one at a time, in document order. Never bundle two questions into one prompt, and never dump the whole list and ask for answers in prose. The value of the walkthrough is that each question arrives with the thinking already done.

For each question:

  1. State the question in one sentence, with just enough context that the user does not have to re-read the plan to answer it.
  2. Offer at most three answers. Each is a concrete answer, not a category of answer, and each carries a one-line rationale: what choosing it buys, and what it costs — in the same terms the plan uses, so risk, blast radius, and test surface. Two is right when only two answers are real; a padded straw-man option is worse than a short list.
  3. Recommend exactly one, and justify the recommendation against the others: what makes it the better trade here, not merely that you prefer it. You are still the Eng Lead — an unranked menu is an abdication.
  4. Leave the free-form answer open. The user is never confined to your three. When the interactive question tool supplies its own free-text option, rely on that rather than spending one of your three choices on "something else".

Use the session's interactive question tool so the choices are selectable. When there is none, ask in plain text with the options numbered — the shape of the question does not change.

Applying answers

Apply each answer to the plan before moving to the next question, so an interrupted walkthrough never loses work.

  • The answered question leaves Open Questions.
  • The decision lands in the section it belongs to — Approach, Alternatives Considered, a phase's Steps, Owned paths, or Verification block, Tests, Risks & Mitigations, or Out of Scope — written as a decision the plan has made, not as "the user said". A rejected option that was a real contender belongs in Alternatives Considered with its reason.
  • Every rule the plan already obeys still applies to what you write: verification commands come verbatim from AGENTS.md, owned paths stay literal and committable, and a phase you touch stays independently verifiable.
  • If the answer contradicts something already written, fix that too, and say so when you close.
  • If the answer would change a phase that is already In-progress or Complete, follow Iteration Mode: surface it and propose a new phase rather than rewriting one dev-do has already executed.

A free-form answer may raise a new question. Add it to Open Questions and offer it at the end of the current walkthrough, rather than derailing the question in front of you.

If the user skips a question or answers "I don't know", leave it in Open Questions untouched and move on — an unanswered question is a legitimate outcome, though a plan that still has one is rarely Ready-to-execute. The user may also stop the walkthrough at any point: apply what was answered, leave the rest, and close.

Closing

Close by reporting which questions were answered, which sections and phases changed, and what remains in Open Questions.

Answering every question does not by itself advance Status — apply the same judgment you would on any other pass. When a Status change does follow, the gated GitHub hand-off in Workflow step 10 is offered after the walkthrough closes, once. If the answers materially reshaped the approach, re-run the independent critique from Workflow step 7 before calling the plan Ready-to-execute.

Important Rules

  • Stay in the Eng Lead role. Do not implement the plan. Do not run builds or tests beyond cheap sanity checks (e.g., compiling a single project to validate a path). Implementation is dev-do's job.
  • Source is read-only. Never write to featurerequest.md or bugreport.md. If they need changes, recommend re-invoking the authoring skill.
  • Approach artifacts are read-only. approach.md, approach-a.md, approach-b.md, and approach-c.md belong to dev-approach. Read them freely; never edit, rename, or delete one. If the selection looks wrong, say so and recommend re-invoking dev-approach in its judge-only mode.
  • The nudge is a nudge. When a slot has no approach.md, offer dev-approach exactly once per pass, then proceed either way. Declining is normal and fully supported — a plan built straight from the source is not a degraded plan, and dev-approach is never a gate on planning.
  • Never write a #N you did not read from the source artifact. The Issue row propagates under a no-downgrade ratchet: an existing #N in plan.md is never replaced with not published. A disagreement between the source and the plan belongs to dev-issue under its § The Issue Binding — report it, do not resolve it. This skill never calls a writing gh command.
  • Today's date governs slot expansion. Never reuse a previous day's <MMDD> for a numeric slot. For an earlier slot, the user must give a full path.
  • Each phase is independently verifiable. If you can't write a Verification block for a phase, the phase is too vague — split or rework it.
  • Each phase owns explicit paths. Every phase must list all literal, repository-relative files it may modify under **Owned paths:**. Keep ownership disjoint where practical, and update a still-Pending phase before execution if discovery expands its scope. Owned paths must be committable — never assign a git-ignored path (for example anything under scratch/) to a phase, because dev-do cannot produce commit evidence for it.
  • Final verification is mandatory. Every executable plan includes a ## Final Verification section with concrete commands and expected results. Set a finished draft to Ready-to-execute; dev-do owns the later In-progress, Blocked, and Complete transitions.
  • Name specifics. Files, classes, functions, test methods, commands. No "the relevant module".
  • Offer the walkthrough before you finish. A pass that ends with a non-empty Open Questions section closes with the offer in § Open Questions Walkthrough. The user may decline and edit plan.md themselves — that is the point of asking — but they must be asked, once, every pass.
  • One question at a time; three answers at most. Every answer carries a rationale, exactly one is recommended with a justification against the others, and a free-form answer is always available. A wall of questions is not a walkthrough, and an unranked menu is not an Eng Lead.
  • Honor repo conventions. Repository conventions live in AGENTS.md. Before naming any build, test, or lint command, read AGENTS.md at the repository root. If it is absent, fall back to README.md / CONTRIBUTING.md and state in your output which source you used. Never invent a build or test command. Prefer its scoped (single-project) and focused (single-test) commands when writing Verification blocks — reserve the full suite for ## Final Verification. Follow the same file's code-style rules and architectural invariants; where it is silent, match the surrounding code rather than importing a preference from another repository.
  • Verification must be runnable as written. If a sanctioned command needs setup that AGENTS.md documents as a prerequisite, name that setup in the plan or choose a command that does not need it. Do not write a verification step nobody can execute.
  • Do not commit. Files under scratch/ are gitignored on purpose. dev-do will commit implementation code, not the plan itself.

© FHIR, 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 .github/skills/dev-plan of FHIR/fhir-codegen.

Open the folder on GitHubat commit b5f97c7

Compare with similar skills

Dev 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.

Dev Plan compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Dev Plan this skillFHIR/fhir-codegen154—~6.1kAutomated safety check: PassMIT
Issue Repliesantoinecellerier/speaker-tuning-to-easyeffects142—~2kAutomated safety check: PassMIT
Test-First Implementation Plangittower/git-flow-next458—~1.3kAutomated safety check: NotesCustom licence
Build Software ComponentGAIK-project/gaik-toolkit100—~3kAutomated safety check: PassMIT
Write Planjackfranklin/dotfiles255—~3.3kAutomated safety check: PassMIT
Ask NavigatorYeachan-Heo/oh-my-claudecode40k—~4.1kAutomated safety check: PassMIT

Similar skills

  • Issue Replies

    antoinecellerier/speaker-tuning-to-easyeffects

    Guides triaging GitHub issues and drafting or posting replies in this repo.

    142 GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • Test-First Implementation Plan

    gittower/git-flow-next

    Builds a two-phase implementation plan from a spec issue, analysis or concept, writing a detailed test plan first and the implementation outline second.

    458 GitHub stars~1.3k tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check: notes
  • Build Software Component

    GAIK-project/gaik-toolkit

    Creates a new GAIK software component as an installable Python package.

    100 GitHub stars~3k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Write Plan

    jackfranklin/dotfiles

    Write a right-sized, reviewable implementation plan as a series of focused tasks, with exact file paths, interface contracts, behavioral test specifications, and verification commands.

    255 GitHub stars~3.3k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Ask Navigator

    Yeachan-Heo/oh-my-claudecode

    Charts a foggy effort into a map of decision tickets on the repo's issue tracker and works through them one per session, producing decisions rather than deliverables.

    40k GitHub stars~4.1k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Dep Create

    ai-dynamo/dynamo

    Creates or updates Dynamo Enhancement Proposals as GitHub issues, including lightweight DEPs, implementation plans, and retroactive DEPs for ai-dynamo/dynamo.

    8.2k GitHub stars~1.1k tokensUpdated today
    Agent WorkflowsAuto-check passed

More from FHIR/fhir-codegen

All 9 skills in this repo
  • Dev Issue

    FHIR/fhir-codegen

    Publishes a slot's feature request or bug report to GitHub as an issue, and keeps that issue in sync, in the role of a release-minded engineer.

    154 GitHub stars~4k tokensUpdated today
    Auto-check passed
  • Dev Report

    FHIR/fhir-codegen

    Drafts and iterates on local-development bug reports in the role of a staff-level Tech Lead.

    154 GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • Dev Request

    FHIR/fhir-codegen

    Drafts and iterates on local-development feature requests in the role of a staff-level Product Manager.

    154 GitHub stars~3.8k tokensUpdated today
    Auto-check passed
  • Dev Review

    FHIR/fhir-codegen

    Performs a two-track code-quality and QA review in the roles of a staff-level Engineering Lead and QA Lead, then synthesizes both critiques into a single analysis.md.

    154 GitHub stars~5k tokensUpdated today
    Auto-check passed
  • Dev Approach

    FHIR/fhir-codegen

    Explores three competing solution shapes for one request in the roles of three isolated staff-level Engineering Leads, then has a fourth skeptical judge sub-agent select one on the record.

    154 GitHub stars~6.4k tokensUpdated today
    Auto-check passed
  • Dev Complete

    FHIR/fhir-codegen

    Drives the entire local inner loop in one invocation, as a conductor over the skills that own each role.

    154 GitHub stars~9.6k tokensUpdated today
    Auto-check passed

Works with

Questions about Dev Plan

What does Dev Plan do?

Builds and iterates on a detailed implementation plan in the role of a staff-level Engineering Lead, working from either a featurerequest.md (from dev-request) or a bugreport.md (from dev-report). Dev Plan is an agent skill from FHIR/fhir-codegen.md (from dev-report).

When should I use Dev Plan?

Dev Plan fits situations like: : turning a bug report; feature request into a phased; reviewable plan.md; answering questions on an existing plan.

How do I install Dev Plan in Claude Code?

Run `npx skills add FHIR/fhir-codegen --skill dev-plan -a claude-code`. Or copy the skill folder (.github/skills/dev-plan in FHIR/fhir-codegen) into .claude/skills/dev-plan in your project. Claude Code loads it when a task matches its description.

How do I install Dev Plan in Codex?

Run `npx skills add FHIR/fhir-codegen --skill dev-plan -a codex`. Or copy the skill folder (.github/skills/dev-plan in FHIR/fhir-codegen) into .agents/skills/dev-plan in your project. Codex loads it when a task matches its description.

Can I use Dev 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 FHIR/fhir-codegen --skill dev-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/dev-plan, .gemini/skills/dev-plan, .github/skills/dev-plan and .opencode/skills/dev-plan in your project.

What does Dev Plan need to run?

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

Does Dev 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 Dev 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 Dev Plan use?

Dev 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 Dev Plan use?

About 6.1k tokens (SKILL.md is roughly 24k 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 Dev Plan?

Skills that share tags, products or a category with Dev Plan: Issue Replies (antoinecellerier/speaker-tuning-to-easyeffects, 142 stars), Test-First Implementation Plan (gittower/git-flow-next, 458 stars), Build Software Component (GAIK-project/gaik-toolkit, 100 stars) and Write Plan (jackfranklin/dotfiles, 255 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Dev Plan?

FHIR (a GitHub organization) maintains it in FHIR/fhir-codegen, which has 154 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 7, 2026.

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