ahel is live on Product Hunt today. Upvote

doctor - Blueprint health check

SkillDev tools

Run a Blueprint health and context check covering setup, adapters, commands, visibility, plans, overview freshness, configuration, dashboard state, and workflow drift. May offer to reset malformed generated dashboard state after approval. Use for /doctor, installation checks, context overhead, setup problems, or when something feels wrong.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the doctor - Blueprint health check skill

What this skill tells your AI

The instructions your AI receives, as published by aiblueprinthq/ai-blueprint in .agents/skills/doctor/SKILL.md and read by ahel’s review.

Context reuse: Reuse any required file already loaded in project instructions or the current session. Read it again only if absent, changed, or exact current bytes or line references are needed.

Where this sits in the workflow:

any time  ->  [doctor]  ->  reads setup + plans + workflow state + git
              (diagnostic)  prints health, warnings, and repair order

This skill answers one question: is this Blueprint project ready to use? It is the diagnostic pass for setup drift, incomplete onboarding, missing files, placeholder plans, stale generated context, Blueprint visibility, and confusing workflow state. It never changes anything: no edits, no commits, no installs, no builds, no branch changes. Its only repair is an approved reset of a malformed generated blueprint/.state/run.json file.

Use /status when the user mainly wants progress and the next build action. Use /doctor when the user wants to know whether the workflow itself is healthy.

Input

None. /doctor takes no argument.

What it checks

Gather these, then summarize. Do not dump file contents.

  1. Required Blueprint files
    • Confirm AGENTS.md, blueprint/, blueprint/project-plan.md, blueprint/build-plan.md, and blueprint/context/ exist.
    • Confirm blueprint/context/coding-standards.md, blueprint/context/ai-interaction.md, blueprint/context/current-feature.md, and blueprint/context/project-overview.md exist.
    • Confirm blueprint/history/features/ and blueprint/history/fixes/ exist. When the rollback skill is installed, also check blueprint/history/rollbacks/. A missing rollback folder on a legacy installation is a warning, not a blocker; /complete creates it on the first rollback.
    • Check blueprint/context/findings.md. Missing on a legacy installation is a warning, not a blocker; /audit and /complete create it on first use. When present, confirm its entry headers still match ### <id> [<severity>] <status> - <title> and warn on a malformed ledger. Report any P0 or P1 finding still open or fixed by ID, since it will block /complete. Never block on the ledger yourself.
    • Check blueprint/context/review.md. Missing on a legacy installation is a warning, not a blocker; /audit independent current and /complete create it on first use. When present, validate the required request or receipt fields and report pending, changes-requested, malformed, or stale state.
    • If .gitignore marks Blueprint workflow files as local-only, still require the files to exist on disk. Ignored but present is healthy; ignored and missing means the local workflow needs to be restored.
    • Read blueprint/config.json when present. Missing is healthy and means built-in defaults. When present, require a regular non-symbolic-link JSON file with schemaVersion: 1. Reject unknown keys and unsupported values. Report the effective workflow, git, verification, review execution, regular quality-gate, Continuous quality-gate, and Continuous Mode settings. Confirm each audit, independent-review, check, and try-guide gate uses its supported values. Independent review defaults to when-sensitive for both workflows; audit, check, and try guide default to manual. Confirm review.independentExecution is manual or automatic and defaults to automatic. Do not claim automatic capability is available from installed project files alone. An invalid config is a setup blocker for mutating workflow skills because they must not guess which policy to follow.
  2. Tool adapters
    • Read blueprint/.state/manifest.json when present and report its exact logical adapters: Codex, Claude Code, GitHub Copilot, and OpenCode.
    • Confirm at least one compatible skill tree exists. Codex and GitHub Copilot use .agents/skills/. Claude Code uses .claude/skills/. OpenCode can use either tree.
    • If both skill trees are present, say that is healthy when the selected tools require both. Compare their skill folder names and warn about missing skills on either side.
    • If OpenCode is selected, do not require .opencode/skills/. If it contains duplicate Blueprint skills alongside .agents/skills/ or .claude/skills/, warn that OpenCode discovers all of those locations and the duplicate tree should be reviewed.
    • If git shows changes under .agents/skills/ or .claude/skills/, check the matching adapter file too. Warn when workflow behavior was updated in one adapter but not the other.
    • Confirm each installed adapter tree contains doctor/scripts/run-state.mjs. This managed helper validates and atomically writes dashboard activity. A missing helper needs a Blueprint update before tracked commands can record activity safely.
    • If only one tool is used, mention the unused adapter can be deleted. Do not treat extra adapters as an error.
    • If CLAUDE.md exists and still starts with # Project Name, flag that /onboard probably has not finished.
    • When Claude Code is installed, report its startup-context shape. Confirm CLAUDE.md imports AGENTS.md and lets skills load the overview, active spec, coding standards, and interaction guide on demand. If it directly imports any of those four context files, warn that this is the legacy always-loaded layout and give the exact direct import lines to remove. Count the imported files and their total byte size, plus the total byte size of project skill descriptions. Label these as file-size diagnostics, not token counts. Recommend Claude Code's /context all for the live token breakdown.
  3. Commands and project setup
    • Read existing AGENTS.md for substantive proportional-engineering guidance, under ## Proportional engineering or equivalent customized wording. Accept equivalent guidance anywhere in the file; do not require exact prose. Look for current requirements over hypothetical scale, reuse before new machinery, smaller reversible defaults, questions for material unknowns, and trust boundaries grounded in actual reachability. Simplicity must preserve real validation, data-loss prevention, accessibility, security, configured tests, and project rules; stack-specific standards apply only to the project's stack. A heading or a single slogan is not sufficient. If guidance is missing or incomplete, identify the missing substance as a warning, not a setup blocker. The updater preserves existing AGENTS.md, so updating Blueprint alone does not repair this warning.
    • Check whether root README.md is still the copied Blueprint workflow doc by looking for # AI Coding Blueprint or opening text that describes the Blueprint workflow instead of the app. If so, warn that /onboard should replace it with a project README before publishing.
    • If blueprint/README.md clearly contains copied Blueprint workflow docs, report it as an obsolete installer artifact. Its absence is healthy. An unchanged managed copy can be removed by the updater; a modified copy needs user review.
    • Check whether AGENTS.md has a ## Commands section with dev and build commands.
    • Report missing lint or test commands as informational unless the project has real lint or test scripts elsewhere that are not reflected in AGENTS.md.
    • If package.json exists, compare its scripts against AGENTS.md at a high level. Do not require every script to be documented.
    • If AGENTS.md declares a Verify command, confirm it resolves to real project commands in the expected order: typecheck, tests when configured, then build. Do not require checks the project does not have.
    • If .github/workflows/verify.yml exists, confirm it runs the exact documented Verify command for pull requests and pushes to the default branch, uses the detected runtime and package manager, and starts with read-only contents permission. Preserve other workflows and report overlap for review.
    • A missing Verify command or GitHub workflow is informational. It means the optional automatic-check setup was not selected, not that the Blueprint is unhealthy.
  4. Ignore rules
    • Check obvious ignore patterns for the detected stack. For Node or Astro, look for node_modules, .env, dist, and framework cache folders such as .astro or .next when relevant.
    • Detect local-only Blueprint mode if .gitignore ignores .agents/, .claude/, blueprint/, or CLAUDE.md. Report it as a visibility choice, not a failure, when the local files exist.
    • In local-only mode, check whether tracked AGENTS.md still describes the Blueprint workflow, lists hidden adapter paths, or exposes the core skill list. If so, warn that /onboard should make AGENTS.md public-safe.
    • If local-only mode is active but those paths are already tracked by git, warn that .gitignore does not hide tracked files and the user must approve any git rm --cached cleanup separately.
    • Keep this conservative. If uncertain, report "review" instead of failure.
  5. Planning readiness
    • Check whether blueprint/project-plan.md and blueprint/build-plan.md look filled in or still template-like. Treat obvious TODO, TBD, example-only text, or empty required sections as not ready.
    • Follow the proportional-engineering contract in AGENTS.md: treat a blank or template-only optional Usage model and constraints section as healthy unknown context, not an incomplete requirement.
    • Check whether blueprint/build-plan.md is a numbered checkbox list. Raw bullets are allowed as a first draft, but they should be normalized by /overview before the build loop starts.
    • Count checked and unchecked leaf items in blueprint/build-plan.md.
  6. Overview freshness
    • Check whether blueprint/context/project-overview.md exists and looks generated from the current plans.
    • Report its byte size. At or above 20,000 bytes, call it oversized and say /feature should stop until /overview regenerates a compact consolidation.
    • If either planning file appears newer than the overview by filesystem time, call the overview possibly stale and suggest /overview before feature work.
  7. Current workflow state
    • Inspect blueprint/.state/run.json when it exists. Missing means no recorded activity and is healthy. Require a regular non-symbolic-link JSON file that matches dashboard schema version 1 from AGENTS.md.
    • If the path is a symbolic link or not a regular file, do not read, replace, or remove it. Report the exact path for manual review.
    • If the regular file is invalid JSON or does not match the schema, report it as malformed generated state. Explain that resetting it removes only the dashboard's last-command record, not project work, and that the next tracked Blueprint command recreates it.
    • Offer this exact repair question: Reset the malformed dashboard state now? On approval, use the installed dashboard activity helper's reset action. It confirms the exact path is a regular non-symbolic-link file and removes only blueprint/.state/run.json. Verify the file is absent and report the dashboard state as reset. Never remove blueprint/.state/, its manifest, backups, or any project file. Without approval, leave it unchanged and include the reset in Repair order:.
    • Check whether blueprint/context/current-feature.md is the reset stub or an active feature, fix, or rollback spec.
    • If a spec is active, report checked and unchecked implementation steps.
    • If current-feature.md is the reset stub but git has source or workflow changes, warn that work is happening without an active spec.
    • Flag active spec on main, all spec steps checked but no completion, or a branch that does not match the configured feature, fix, or rollback prefix for the spec type. For a feature, also flag a mismatch with the next unchecked build-plan item. For a rollback, confirm its target is a checked item and do not compare it to the next unchecked item.
  8. Git
    • Report current branch, clean vs dirty working tree, rough changed-file count, last commit subject, and whether the branch is ahead of upstream.
    • If the directory is not a git repo, report that as a setup issue and keep going.

Output

Print a compact health report with these labels:

Health: Pass | Needs attention | Blocked
Setup: ...
Configuration: ...
Verification: ...
Adapters: ...
Context: ...
Visibility: ...
Plans: ...
Workflow: ...
Git: ...
Watch: ...
Repair order: ...

Use Watch: only when there are warnings. Use Repair order: for the exact next steps, in order. Keep it short and practical.

Choose the repair order in this priority:

  • Required Blueprint files missing -> overlay the Blueprint again, or use /adopt for a brownfield app.
  • Invalid blueprint/config.json -> fix the named key or value, then rerun /doctor. Do not mutate project work while configuration is ambiguous.
  • No git repo -> initialize git before using the build loop.
  • No tool adapter -> restore .agents/skills/ or .claude/skills/ for the selected tool. OpenCode can use either compatible tree.
  • Installed adapter is missing doctor/scripts/run-state.mjs -> update Blueprint before relying on dashboard activity.
  • Claude uses legacy direct context imports -> remove the exact direct imports for project-overview.md, current-feature.md, coding-standards.md, and ai-interaction.md that are present in CLAUDE.md, then rerun /doctor. The files stay in the project and workflow skills still read them on demand.
  • Onboarding incomplete -> run /onboard.
  • Proportional-engineering guidance missing or incomplete -> review the current Blueprint template's AGENTS.md Proportional engineering section and manually merge only the missing guidance into the project's AGENTS.md. Preserve existing project rules and equivalent customized wording. In local-only mode, keep AGENTS.md public-safe without adding hidden workflow paths or skill lists. Doctor must not edit or replace AGENTS.md.
  • Root README is still the Blueprint workflow doc -> run /onboard to replace it with a project README before publishing.
  • Local-only visibility selected but ignored Blueprint files are missing -> reinstall or restore the Blueprint files locally.
  • Local-only visibility selected but Blueprint paths are tracked -> ask whether to untrack them with git rm --cached while keeping local files.
  • Local-only visibility selected but AGENTS.md still exposes the workflow -> run /onboard to make AGENTS.md a lightweight public project guide.
  • A documented Verify command, project script, and GitHub workflow disagree -> run /ci to review and align them. Missing optional CI alone does not need repair.
  • Commands or ignore rules need review -> update the files or run /onboard if this is an early project.
  • Plans are placeholders -> fill blueprint/project-plan.md and blueprint/build-plan.md.
  • Overview missing or stale -> run /overview.
  • Malformed regular blueprint/.state/run.json -> offer to reset that exact generated file, then rerun /doctor or refresh the dashboard.
  • Active spec has unchecked steps -> run /status or /implement, depending on whether the user wants orientation or action.
  • A P0 or P1 finding is open -> repair it through /implement while a spec is active, or /fix <finding id> between work items. One that is fixed -> /audit to re-review and close it. Both come before suggesting /complete.
  • Active spec is done but not closed -> run /check, then /complete.
  • Everything is healthy -> say so, then suggest /status for progress or /feature for the next planned feature.

Rules

  • Diagnostic by default. This skill never edits project files, commits, runs installs, runs builds or tests, or switches branches. It may remove only a malformed regular blueprint/.state/run.json through the installed helper after the user approves the exact reset described above.
  • Diagnose, then order repairs. Do not just list problems. End with the smallest ordered sequence that gets the project back to a healthy state.
  • Do not over-police adapters. Extra adapters are optional clutter, not a failure.
  • Be conservative with stack-specific checks. If a command or ignore pattern is uncertain, mark it for review instead of inventing a hard failure.
  • Stay concise. A doctor pass should feel like a checklist, not an audit.

Formatting

Format the output to match the project's conventions in blueprint/context/ai-interaction.md: concise, scannable markdown, with lists for enumerations and tables for matrices rather than dense paragraphs.

Signals

GitHub stars
406
Forks
102
Last commit
Sep 2026

ahel review

  • K6low
    bundled executables the agent is told to run

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Catalog kind
skill
Gateway key
doctor
Source
github.com/aiblueprinthq/ai-blueprint