spec-lifecycle
SKILL.md
Spec Lifecycle
Manages the state machine for feature specs in .context/specs/. Keeps the active specs directory clean and ensures completed work is properly archived.
When to Use This Skill
- Creating a new feature spec
- Updating spec status during development
- Completing and archiving a feature spec
- Reviewing active specs for staleness
Spec States
┌──────────┐ ┌──────────────┐ ┌───────────┐ ┌──────────┐
│ Created │────▶│ In Progress │────▶│ Completed │────▶│ Archived │
└──────────┘ └──────────────┘ └───────────┘ └──────────┘
│ │ ▲
│ ▼ │
│ ┌──────────┐ │
└──────────▶│ Blocked │──────────────────────────────────┘
└──────────┘
| State | Marker | Location |
|---|---|---|
| Created | Status: [ ] Not Started |
.context/specs/ |
| In Progress | Status: [/] In Progress |
.context/specs/ |
| Blocked | Status: [!] Blocked |
.context/specs/ |
| Completed | Status: [x] Completed |
.context/specs/ |
| Archived | (moved) | .context/specs/.archive/ |
Operations
Create a Spec
- Copy
.context/specs/_template.mdto.context/specs/feat-{name}.mdorfix-{name}.md - Fill in: Goal, User Story, Requirements
- Set status to
[ ] Not Started - Set priority and date
Naming convention:
- Features:
feat-{short-description}.md(e.g.,feat-user-auth.md) - Bug fixes:
fix-{short-description}.md(e.g.,fix-payment-timeout.md) - Performance:
perf-{short-description}.md(e.g.,perf-query-optimization.md)
Start Work on a Spec
- Change status marker from
[ ]to[/] - Update the
Last Updatedfield - Ensure the Implementation Plan section is filled in
Complete a Spec
- Change status marker from
[/]to[x] - Update the
Last Updatedfield - Verify all acceptance criteria are checked
[x] - Trigger
context-syncto updateproject.md
Archive a Spec
- Move the completed spec file to
.context/specs/.archive/ - Remove any references to it from active documentation
git mv .context/specs/feat-{name}.md .context/specs/.archive/
Staleness Detection
A spec is considered stale if:
- Status is
[/] In Progressfor more than 14 days without updates - Status is
[ ] Not Startedfor more than 30 days - Status is
[!] Blockedwith no blocker description
When detected, report:
⚠️ STALE SPECS DETECTED:
- feat-dashboard-api.md — In Progress for 21 days (last updated: 2026-01-28)
- fix-cache-invalidation.md — Not Started for 35 days
Recommended action: Review and update or archive these specs.
Dashboard View
When asked for spec status, produce:
📋 SPEC DASHBOARD
─────────────────
Active: 2 specs
Blocked: 0 specs
Completed: 1 spec (pending archive)
Archived: 8 specs
ACTIVE SPECS:
[/] feat-user-auth.md — Priority: High — 5 days in progress
[ ] feat-dashboard-api.md — Priority: Medium — Not started
PENDING ARCHIVE:
[x] fix-payment-timeout.md — Completed 3 days ago
Weekly Installs
4
Repository
kaiboo404/agent…templateFirst Seen
Feb 18, 2026
Security Audits
Installed on
github-copilot4
codex4
kimi-cli4
gemini-cli4
opencode4
amp4