Some_claude_skills feature-manifest
Manage feature manifests for code traceability — create features, validate manifest health, map features to code, update changelogs. Activates for 'feature manifest', 'feature tracking', 'code
install
source · Clone the upstream repo
git clone https://github.com/curiositech/some_claude_skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/curiositech/some_claude_skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/feature-manifest" ~/.claude/skills/curiositech-some-claude-skills-feature-manifest && rm -rf "$T"
manifest:
.claude/skills/feature-manifest/SKILL.mdsource content
Feature Manifest Management
This skill helps you work with the feature manifest system that tracks the relationship between features and their implementations.
When to Use This Skill
- Creating a new feature
- Modifying existing feature code
- Checking which feature owns a file
- Validating manifest accuracy
- Updating changelogs
- Running feature health checks
Quick Commands
# List all features npm run feature:info -- --list # Get details about a feature npm run feature:info -- <feature-id> # Find which feature owns a file npm run feature:info -- --files <filepath> # Validate all manifests npm run feature:validate # Check feature health (staleness, orphans, coverage) npm run feature:health # Create a new feature manifest npm run feature:create
Workflow: Creating a New Feature
-
Create the manifest first:
npm run feature:create -- --id=my-feature --name="My Feature" -
Implement the feature, adding files as you go
-
Update the manifest with:
- All implementation files in
implementation.files - Tests in
tests.unit/integration/e2e - Dependencies in
dependencies.internal/external - Environment variables in
dependencies.env_vars
- All implementation files in
-
Validate before committing:
npm run feature:validate
Workflow: Modifying an Existing Feature
-
Read the manifest first:
npm run feature:info -- <feature-id> -
Make your changes to the implementation files
-
Update the manifest:
- Add new files to
implementation.files - Update
to today's datehistory.last_modified - Add a changelog entry
- Add new files to
-
Validate:
npm run feature:validate
Manifest Structure
id: feature-id name: Human Readable Name status: complete # planned | in-progress | complete | deprecated priority: P1 description: | What this feature does and why it exists. implementation: files: - src/app/api/feature/route.ts - src/lib/feature.ts entry_point: src/lib/feature.ts database_tables: - tableName api_routes: - POST /api/feature tests: unit: - src/lib/__tests__/feature.test.ts integration: [] e2e: [] dependencies: internal: - features/authentication.yaml external: - package-name env_vars: - FEATURE_SECRET secrets: - feature-api-key history: created: "2024-12-01" last_modified: "2024-12-23" changelog: - version: "1.0.0" date: "2024-12-23" changes: - "Initial implementation"
Health Report Interpretation
When running
npm run feature:health:
- Healthy Features: Manifest matches code, tests exist
- Stale Features: Manifest not updated in 90+ days, or code changed after manifest
- Without Tests: Complete features that have no tests listed
- Orphaned Files: Files in
not tracked by any manifestsrc/ - Suggested Manifests: New directories that should have manifests
Best Practices
- One feature per manifest - Keep them focused
- Update on every change - Don't let manifests go stale
- Changelog is append-only - Never modify old entries
- Include all files - Don't leave orphaned files
- Link dependencies - Show which features depend on others