
feature-ship
by schuettc
Claude Code plugins for feature lifecycle management
SKILL.md
name: feature-ship description: Complete a feature with quality gates - security review, QA validation, and final verification. Use when user says they're done implementing, wants to ship a feature, or asks to complete/finish work. user-invocable: true
Complete Feature Command
You are executing the COMPLETE FEATURE workflow - a quality gate process that ensures features meet security, quality, and testing standards before being marked as completed.
First Step (Do This Now)
Read the file at path: docs/features/DASHBOARD.md
This file shows in-progress features. Look at the "In Progress" section to find features ready to ship.
Note: To complete a feature, create
docs/features/[id]/shipped.md. The PostToolUse hook automatically updates DASHBOARD.md - do NOT edit DASHBOARD.md directly.
Contents
Feature Target
$ARGUMENTS
If no specific feature ID was provided above, you will help the user select from in-progress items.
File Organization
Features are stored in directories with status determined by file presence:
docs/features/
├── DASHBOARD.md # Auto-generated, read-only for Claude
├── my-feature/
│ ├── idea.md # Problem statement + metadata (backlog)
│ ├── plan.md # Implementation plan (in-progress)
│ └── shipped.md # Completion notes (completed)
└── another-feature/
└── idea.md
Status Detection by File Presence
| Files Present | Status |
|---|---|
idea.md only | backlog |
idea.md + plan.md | in-progress |
idea.md + plan.md + shipped.md | completed |
Key Principles:
/feature-capturecreatesidea.mdonly (backlog status)/feature-planaddsplan.md(changes to in-progress)/feature-shipaddsshipped.md(changes to completed)- DASHBOARD.md is auto-regenerated by hooks - never edit directly
Workflow Overview
This command orchestrates a 6-phase quality gate workflow:
| Phase | Name | Purpose |
|---|---|---|
| 1 | Pre-flight Check | Verify feature is in-progress, has implementation artifacts |
| 2 | Security Review | Scan for vulnerabilities (OWASP Top 10, CVEs) |
| 3 | QA Validation | Verify test coverage and acceptance criteria |
| 4 | Final Verification | Run tests, type check, lint, build |
| 5 | Write shipped.md | Create shipped.md to complete the feature |
| 6 | Summary | Display completion report |
Effort-Based Scaling
| Effort | Phase 2 (Security) | Phase 3 (QA) |
|---|---|---|
| Small (< 8 hours) | npm audit only | npm test only |
| Medium/Large | Full security-reviewer agent | Full qa-engineer agent |
Phase Details
Phase 1: Pre-flight Check & Effort Selection
See: preflight.md
- Read DASHBOARD.md and find/select feature from In Progress section
- Read the feature's
idea.mdandplan.mdfor details - Verify feature is in-progress (has plan.md, no shipped.md)
- Determine effort level for workflow scaling
Phase 2: Security Review
See: security.md
- Small effort: Run
npm audit --audit-level=high - Medium/Large: Run security-reviewer agent
- BLOCKS completion if Critical/High issues found
Phase 3: QA Validation
See: qa.md
- Small effort: Run
npm test - Medium/Large: Run qa-engineer agent
- BLOCKS completion if critical issues or test failures
Phases 4-6: Verification & Completion
See: completion.md
- Run full test suite, type check, lint, build
- Review implementation checklist from plan.md
- Get user confirmation
- Write shipped.md (triggers hook to update DASHBOARD.md)
- Clear statusline by running:
${CLAUDE_PLUGIN_ROOT}/skills/feature-ship/scripts/clear-context.sh - Display completion summary
shipped.md Format
Write shipped.md with YAML frontmatter followed by content:
---
shipped: YYYY-MM-DD
---
# Shipped: [Feature Name]
## Summary
Brief summary of what was delivered...
## Key Changes
- Change 1
- Change 2
- Change 3
## Testing
How the feature was tested and verified...
## Notes
Any follow-up items, known limitations, or context for future maintainers...
Error Handling
| Error | Resolution |
|---|---|
| Feature not in-progress | Direct user to correct command or status |
| Security issues found | BLOCK and provide fixes |
| QA issues found | BLOCK and list what needs fixing |
| Tests failing | BLOCK and show failures |
| Feature artifacts missing | Ask user to verify implementation was done |
| Already completed | Feature has shipped.md - nothing to do |
Fallback: Manual Ship
If shipped.md wasn't created, you can use the ship script:
# Use the ship-feature.sh script
${CLAUDE_PLUGIN_ROOT}/skills/feature-ship/scripts/ship-feature.sh <project_root> <feature-id> "Summary message"
Or create shipped.md manually:
cat > docs/features/[feature-id]/shipped.md << 'EOF'
---
shipped: $(date +%Y-%m-%d)
---
# Shipped: [Feature Name]
## Summary
Feature completed and committed.
EOF
The PostToolUse hook will regenerate DASHBOARD.md when the file is written.
Philosophy: "Quality is Not Optional"
This workflow ensures:
- Security vulnerabilities are caught before production
- Quality standards are met consistently
- Test coverage is verified
- Features are properly documented
- Clean transition from in-progress to completed
No feature should be marked complete without passing these quality gates.
Let's verify your feature is ready for completion!
スコア
総合スコア
リポジトリの品質指標に基づく評価
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
レビュー
レビュー機能は近日公開予定です