blueprint-plugin/skills/feature-tracking/SKILL.md
Track feature implementation against requirements with hierarchical FR codes and TODO.md sync. Use when linking features to PRDs or recalculating completion stats.
npx skillsauth add laurigates/claude-plugins feature-trackingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Track feature implementation status against requirements documents using hierarchical FR codes.
| Use this skill when... | Use blueprint-feature-tracker-sync instead when... |
|---|---|
| You need to read or update feature implementation status by FR code | You want to reconcile TODO.md checkboxes with the tracker |
| You're recalculating completion percentages mid-development | You want to drain WO entries from a taskwarrior sidecar |
| You manage hierarchical FR codes (FR1, FR1.2, FR1.2.1) | You want a markdown progress summary via --summary |
| You add features or phases to feature-tracker.json | Use blueprint-feature-tracker-status to view stats without modifying |
The feature tracker maintains a JSON file that maps requirements from a source document (e.g., REQUIREMENTS.md) to implementation status. It supports:
Run feature tracking operations when:
Each feature has one of five statuses:
complete: Implementation files exist, tests pass, TODO item checkedpartial: Some implementation exists, not all sub-features donein_progress: Active work, files modified recentlynot_started: No implementation files, TODO uncheckedblocked: Missing dependencies or explicitly markedFeatures are organized hierarchically:
FR1 (Game Setup & Configuration)
├── FR1.1 (Window Configuration)
├── FR1.2 (Game Mode Selection)
│ ├── FR1.2.1 (Versus Mode)
│ └── FR1.2.2 (Cooperative Mode)
└── FR1.3 (Scenario Setup)
Features are grouped by development phase:
phase-0: Foundationphase-1: Core gameplayphase-2: Advanced featuresdocs/blueprint/
├── feature-tracker.json # Main tracker file (source of truth)
└── schemas/ # Optional: local schema copy
└── feature-tracker.schema.json
The project's TODO.md is a sync target for checkbox states.
Note: As of v1.1.0, feature-tracker.json includes a tasks section that tracks in-progress and pending tasks, replacing the separate work-overview.md file.
jq '.statistics' docs/blueprint/feature-tracker.json
jq -r '.. | objects | select(.status == "not_started") | .name' docs/blueprint/feature-tracker.json
jq '.prds | to_entries | .[] | "\(.key): \(.value.status)"' docs/blueprint/feature-tracker.json
jq -r '.. | objects | select(.phase == "phase-1") | .name' docs/blueprint/feature-tracker.json
jq '[.. | objects | select(.status?) | .status] | group_by(.) | map({(.[0]): length}) | add' docs/blueprint/feature-tracker.json
The feature tracker uses a JSON Schema for validation. The schema is bundled with the blueprint-plugin at:
schemas/feature-tracker.schema.json
Key schema features:
^FR\d+(\.\d+)*$^phase-\d+$^PRD_[A-Z_]+$# Using ajv-cli or similar JSON schema validator
ajv validate -s schemas/feature-tracker.schema.json \
-d docs/blueprint/feature-tracker.json
The manifest.json references the feature tracker:
{
"structure": {
"has_feature_tracker": true
},
"feature_tracker": {
"file": "feature-tracker.json",
"source_document": "REQUIREMENTS.md",
"sync_targets": ["TODO.md"]
}
}
Features link to PRDs via the prd field:
{
"name": "Terrain Visual Enhancement",
"status": "complete",
"prd": "PRD_TERRAIN_VISUAL_ENHANCEMENT"
}
PRDs track which features they implement:
{
"PRD_TERRAIN_VISUAL_ENHANCEMENT": {
"name": "Terrain Visual Enhancement",
"status": "complete",
"features_implemented": ["FR2.8.1", "FR2.8.2", "FR2.8.3"],
"tests_passing": 107
}
}
Work orders can reference specific FR codes. When a work order is completed, update the corresponding feature status in the tracker.
The sync process ensures consistency between:
feature-tracker.json (source of truth for features AND tasks)TODO.md (checkbox-based task list)Use --summary flag to generate a markdown overview:
/blueprint:feature-tracker-sync --summary
For each feature, verify:
complete: Files exist, tests pass (if applicable), TODO checkedpartial: Some files exist, not all sub-features completein_progress: Recent commits touch feature filesnot_started: No implementation evidenceblocked: Documented dependency issuesRelated blueprint commands:
/blueprint:feature-tracker-status: Display statistics and completion summary/blueprint:feature-tracker-sync: Synchronize tracker with sync targetsWhen completing a feature:
Update feature status in feature-tracker.json:
{
"name": "Unit Selection",
"status": "complete",
"phase": "phase-2",
"implementation": {
"files": ["src/systems/selection.rs"],
"notes": "Box selection and click selection",
"tests": ["tests/selection_tests.rs"]
}
}
Run /blueprint:feature-tracker-sync to update:
tasks.in_progress to tasks.completedCommit all changes together for consistency
The tracker maintains aggregate statistics:
{
"statistics": {
"total_features": 42,
"complete": 22,
"partial": 4,
"in_progress": 2,
"not_started": 14,
"blocked": 0,
"completion_percentage": 52.4
}
}
These are recalculated during sync operations.
development
Debug HTTP APIs: trace requests, inspect headers. Use when a request fails: check status first.
documentation
Render architecture diagrams from text sources. Use when documenting system topology.
tools
Inspect JSON payloads and extract nested fields. Use when parsing API responses.
tools
--- name: no-description allowed-tools: Read --- # No Description This skill has no description and must be dropped with a warning.