Skip to main content

blueprint-status

Show blueprint version, config, PRD/ADR/PRP counts, and feature tracker progress. Use when auditing traceability, orphan docs, or stale generated content.

Datos de origen

Repositorio
laurigates/claude-plugins
Última actividad en el origen
19 de agosto de 2026 a las 13:00
Idioma detectado de SKILL.md
inglés
Estrellas
60
Forks
6

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
created
2025-12-17T00:00:00.000Z
modified
2026-07-27T00:00:00.000Z
reviewed
2026-07-27T00:00:00.000Z
description
Show blueprint version, config, PRD/ADR/PRP counts, and feature tracker progress. Use when auditing traceability, orphan docs, or stale generated content.
args
[--report-only]
argument-hint
--report-only to display status without interactive prompts
allowed-tools
Read, Bash, Glob, AskUserQuestion
model
sonnet
name
blueprint-status
Display the current blueprint configuration status with three-layer architecture breakdown. ## When to Use This Skill | Use this skill when... | Use blueprint-execute instead when... | |---|---| | You want a read-only status report (PRD/ADR/PRP counts, traceability) | You want auto-detection that takes the next action, not just reports | | You want the three-layer architecture breakdown | Use blueprint-feature-tracker-status instead for FR/phase progress | | You want to audit orphan docs and stale generated content | Use blueprint-sync instead for an actionable drift reconcile | | You run with `--report-only` for non-interactive auditing | Use blueprint-upgrade instead when you've already spotted an upgrade | ## Flags | Flag | Description | |------|-------------| | `--report-only` | Display status report and exit without prompting for next action | ## Steps 1. **Check if blueprint is initialized**: - Look for `docs/blueprint/manifest.json` - If not found, report: ``` Blueprint not initialized in this project. Run `/blueprint:init` to get started. ``` 2. **Read manifest and gather information**: - Parse `manifest.json` for version and configuration - Parse `id_registry` for traceability metrics - Count PRDs in `docs/prds/` - Count ADRs in `docs/adrs/` - Count PRPs in `docs/prps/` - For ADRs, also count: - With domain tags (`grep -l "^domain:" docs/adrs/*.md | wc -l`) - With relationship declarations (supersedes, extends, related) - By status (Accepted, Superseded, Deprecated) - Count work-orders (pending, completed, archived) - Resolve the configured rules path: `jq -r '.structure.generated_rules_path // ".claude/rules/"' docs/blueprint/manifest.json` - Count generated rules in the configured path (default `.claude/rules/`) - Count custom skills in `.claude/skills/` - Count custom commands in `.claude/commands/` - Check for `.claude/rules/` directory - Check for `CLAUDE.md` file - Check for `docs/blueprint/feature-tracker.json` - If feature tracker exists, read statistics and last_updated - Read `task_registry` from manifest (if present) - For each task, calculate schedule status: - `ok`: Not yet due based on schedule - `due`: Due for execution based on schedule - `overdue`: Past due by more than 1 schedule period (e.g., daily task not run in 2+ days) - `disabled`: `enabled: false` - `never`: `last_completed_at` is null (never tracked) 2a. **Validate the manifest against its schema** (issue #2136): Every consumer of the manifest degrades gracefully on bad input, which is correct at runtime but makes a **typo indistinguishable from an intentional omission** — `autonomy_levle: 3` reads as level 0, `adr_dris: [...]` reads as unconfigured, and nothing says a word. Status is the read-only diagnostic that already parses the whole manifest, so the schema check belongs here: ```bash uv run --quiet --script "${CLAUDE_SKILL_DIR}/../../scripts/check-manifest-schema.py" --project-dir "$(pwd)" ``` It validates against [`blueprint-plugin/schemas/manifest.schema.json`](../../schemas/manifest.schema.json) and emits the structured `STATUS=` / `ISSUE_COUNT=` convention. Blocks with a fixed key set (`automation`, `validation`, `structure`, `project`, `workspaces`, `id_registry`, and the root) are closed, so an unknown key is an error naming the typo and its JSON pointer; `task_registry`, `custom_overrides`, and the `generated` / `documents` / `github_issues` maps stay open because their keys are user or registry data. Read the emitted keys: | Key | Meaning | |-----|---------| | `STATUS=OK` | Manifest matches the schema (or there is nothing to validate) | | `STATUS=ERROR` + `schema_violation` issues | Each issue names an `AT=<json-pointer>` and the offending key — surface all of them in the Step 5 report | | `STATUS=WARN` + `format_version_below_schema` | The manifest predates the schema's format version; recommend `/blueprint:upgrade` rather than reporting schema findings | | `SOURCE=…:no_validator` | Neither `uv` nor an installed `jsonschema` is available — the check is skipped, not failed. Say so instead of claiming the manifest is clean | 2b. **Validate the feature tracker against its schema** (if one exists): `schemas/feature-tracker.schema.json` describes the tracker's shape, but until the schema reconciliation nothing applied it — the file was consulted by humans and by `get-validation-config.sh`'s enum read, and no run ever validated a tracker against it. The same engine as Step 2a does both: ```bash uv run --quiet --script "${CLAUDE_SKILL_DIR}/../../scripts/check-schema.py" --schema "${CLAUDE_SKILL_DIR}/../../schemas/feature-tracker.schema.json" --json-file docs/blueprint/feature-tracker.json ``` Same output contract as Step 2a. A missing tracker is `STATUS=OK` — most repos have none, and a check that errors on an absent optional file gets turned off. This covers the tracker's **shape**. `blueprint-tracker-check.sh` (run by `/blueprint:feature-tracker-sync` and `-status`) covers what a schema cannot express: the `statistics` block agreeing with the features collection it caches, `tasks.*[]` membership, and FR ids cited in `docs/**` but never minted. Run both; neither subsumes the other. 3. **Check for upgrade availability**: - Compare `format_version` in manifest with current plugin version - Current format version: **3.4.0** - If manifest version < current → upgrade available 3a. **Monorepo portfolio refresh (v3.3.0+)**: - If `workspaces.role == "root"`, invoke `/blueprint:workspace-scan` to refresh `workspaces.children` and cached stats before rendering. Skip if scanned within the last hour (`last_scanned_at`). - If `workspaces.role == "child"`, resolve `workspaces.root_relative_path` and mention the parent in the status report but do NOT trigger a scan. 4. **Check generated content status**: - For each generated rule in manifest: - Hash current file content - Compare with stored `content_hash` - Status: `current` (unchanged), `modified` (user edited), `stale` (source PRDs changed) 5. **Display status report**: ``` Blueprint Status Version: v{format_version} {upgrade_indicator} Initialized: {created_at} Last Updated: {updated_at} Project Configuration: - Name: {project.name} - Type: {project.type} - Stack: {project.detected_stack} - Rules Mode: {structure.claude_md_mode} Project Documentation (docs/): - PRDs: {count} in docs/prds/ - ADRs: {count} in docs/adrs/ - With domain tags: {count}/{total} ({percent}%) - With relationships: {count} - Status: {accepted} Accepted, {superseded} Superseded, {deprecated} Deprecated - PRPs: {count} in docs/prps/ Work Orders (docs/blueprint/work-orders/): - Pending: {count} - Completed: {count} - Archived: {count} Three-Layer Architecture: Layer 1: Plugin (blueprint-plugin) - Commands: /blueprint:* (auto-updated with plugin) - Skills: blueprint-development, blueprint-migration, confidence-scoring - Agents: requirements-documentation, architecture-decisions, prp-preparation Layer 2: Generated ({structure.generated_rules_path or .claude/rules/}) - Path: {structure.generated_rules_path} (default: .claude/rules/) - Rules: {count} ({status_summary}) {list each with status indicator: ✅ current, ⚠️ modified, 🔄 stale} Layer 3: Custom (.claude/skills/, .claude/commands/) - Skills: {count} (user-maintained) - Commands: {count} (user-maintained) {If feature_tracker enabled:} Feature Tracker: - Status: Enabled - Source: {feature_tracker.source_document} - Progress: {statistics.complete}/{statistics.total_features} ({statistics.completion_percentage}%) - Last Sync: {last_updated} - Phases: {count in_progress} active, {count complete} complete {If workspaces.role == "root":} Monorepo Portfolio ({workspaces.children|length} workspaces, scanned {last_scanned_at}): | Workspace | Format | Progress | Phase | |-----------|--------|----------|-------| {for each child:} | {child.path} | v{child.manifest_format_version} | {child.cached_stats.complete}/{child.cached_stats.total} ({child.cached_stats.completion_percentage}%) | {child.cached_stats.current_phase or "—"} | {If workspaces.role == "child":} Workspace: child of blueprint at {workspaces.root_relative_path} {If task_registry exists:} Task Health: - derive-plans last: {age} schedule: {schedule} status: {status} - derive-rules last: {age} schedule: {schedule} status: {status} - generate-rules last: {age} schedule: {schedule} status: {status} - adr-validate last: {age} schedule: {schedule} status: {status} - feature-tracker-sync last: {age} schedule: {schedule} status: {status} - sync-ids last: {age} schedule: {schedule} status: {status} - claude-md last: {age} schedule: {schedule} status: {status} - curate-docs disabled Traceability (ID Registry): - Total documents: {count} ({x} PRDs, {y} ADRs, {z} PRPs, {w} WOs) - With IDs: {count}/{total} ({percent}%) - Linked to GitHub: {count}/{total} ({percent}%) - Orphan documents: {count} (docs without GitHub issues) - Orphan issues: {count} (issues without linked docs) - Broken links: {count} {If orphans exist:} Orphan Documents (no GitHub issues): - {PRD-001}: {title} - {PRP-003}: {title} Orphan GitHub Issues (no linked docs): - #{N}: {title} - #{M}: {title} {If Step 2a reported schema_violation issues:} Manifest schema: {N} violation(s) in docs/blueprint/manifest.json - {AT=/automation}: {Additional properties are not allowed ('autonomy_levle' was unexpected)} A misspelled key reads as unconfigured — the consumer silently uses its default. {If Step 2a reported SOURCE=…:no_validator:} Manifest schema: not checked (no uv / jsonschema available) Structure: ✅ docs/blueprint/manifest.json {✅|❌} docs/prds/ {✅|❌} docs/adrs/ {✅|❌} docs/prps/ {✅|❌} docs/blueprint/work-orders/ {✅|❌} docs/blueprint/feature-tracker.json {✅|❌} .claude/rules/ {✅|❌} CLAUDE.md {If upgrade available:} Upgrade available: v{current} → v{latest} Run `/blueprint:upgrade` to upgrade. {If modified generated content:} Modified content detected: {count} files Run `/blueprint:sync` to review changes. Run `/blueprint:promote [name]` to move to custom layer. {If stale generated content:} Stale content detected: {count} files (PRDs changed since generation) Run `/blueprint:generate-skills` to regenerate. {If up to date:} Blueprint is up to date. ``` 6. **Additional checks**: - Report every `schema_violation` from Step 2a with its `AT=` pointer — a misspelled key is silently ignored by its consumer, so the schema check is the only place it surfaces - Warn if Step 2a reported `format_version_below_schema` (recommend `/blueprint:upgrade`) - Warn if any tasks are overdue (e.g., "3 maintenance tasks overdue - run `/blueprint:execute` to catch up") - Warn if feature-tracker.json is stale (> 1 day since last update) - Warn if PRDs exist but no generated rules - Warn if modular rules enabled but `.claude/rules/` is empty - Warn if generated content is modified or stale - Warn if feature-tracker.json is older than 7 days (needs sync) - Warn if TODO.md has been modified since last sync - Warn if ADRs have potential issues: - Multiple "Accepted" ADRs in same domain (potential conflict) - ADRs without domain tags (harder to detect conflicts) - Missing bidirectional links (e.g., supersedes without corresponding superseded-by) - **Traceability checks**: - Warn if documents exist without IDs (run `/blueprint:sync-ids`) - Warn if orphan documents exist (docs without GitHub issues) - Warn if orphan issues exist (GitHub issues without linked docs) - Warn if broken links detected (referenced docs/issues don't exist) 7. **If `--report-only`**: Output the status report from Steps 5-6 and exit. Skip the interactive prompt below. 8. **Prompt for next action** (use AskUserQuestion): **Build options dynamically based on state:** - If upgrade available → Include "Upgrade to v{latest}" - If modified content → Include "Sync generated content" - If stale content → Include "Regenerate skills" - If PRDs exist but no generated skills → Include "Generate skills from PRDs" - If skills exist but no commands → Include "Generate workflow commands" - If CLAUDE.md stale → Include "Update CLAUDE.md" - If feature tracker exists but stale → Include "Sync feature tracker" - If ADRs have potential issues → Include "Validate ADRs" - If documents without IDs → Include "Sync document IDs" - If orphan documents/issues → Include "Link documents to GitHub" - If overdue tasks exist → Include "Run overdue maintenance tasks" - Always include "Continue development" and "I'm done" ``` question: "What would you like to do?" options: # Dynamic - include based on state detected above - label: "Upgrade to v{latest}" (if upgrade available) description: "Upgrade blueprint format to latest version" - label: "Sync generated content" (if modified) description: "Review changes to generated skills/commands" - label: "Regenerate from PRDs" (if stale) description: "Update generated content from changed PRDs" - label: "Generate rules from PRDs" (if PRDs exist, no rules) description: "Extract project-specific rules from your PRDs" - label: "Update CLAUDE.md" (if stale or missing) description: "Regenerate project overview document" - label: "Sync feature tracker" (if feature tracker stale) description: "Synchronize tracker with TODO.md" - label: "Validate ADRs" (if ADR issues detected) description: "Check ADR relationships, conflicts, and missing links" - label: "Sync document IDs" (if documents without IDs) description: "Assign IDs to all documents missing them" - label: "Link documents to GitHub" (if orphans exist)
Ver en GitHub
Este SKILL.md es muy grande, por eso SkillsMP muestra aqui solo la primera seccion. Ver en GitHub