A spec-kit extension that composes spec-kit's slash-command workflow with SPECLAN's entity model and lifecycle. Author, refine, and govern structured specifications from any AI coding agent — not just VS Code.
| Plain spec-kit | spec-kit + speclan | |
|---|---|---|
| Spec format | specs/001-feature/spec.md (flat, untyped) |
speclan/features/F-7421-login/F-7421-login.md (typed, hierarchical) |
| IDs | Folder number (001) |
Collision-checked random IDs (F-7421, R-3094) |
| Status lifecycle | None — every spec is implementable | draft → review → approved → in-development → under-test → released |
| Locked-spec edits | Direct edit, no audit trail | Change Request required — CR lifecycle gates the merge |
| Traceability | Agent memory | Filesystem-derived parent/child links |
| Agent support | 30+ agents | Same 30+ agents (spec-kit handles rendering) |
# Install the extension
specify extension add speclan
# Create a SPECLAN Feature with child Requirements
/speckit.speclan.specify build a magic-link login flow
# Refine the spec
/speckit.speclan.clarify R-3094
# Advance status
/speckit.speclan.status R-3094 approved
# Implement (only approved specs)
/speckit.speclan.implement R-3094| Command | Description |
|---|---|
/speckit.speclan.specify <description> |
Create a Goal, Feature, or Requirement from natural language |
/speckit.speclan.clarify <ID> |
Refine a spec (direct edit if unlocked; routes to CR if locked) |
/speckit.speclan.plan <F-####> |
Generate an implementation plan from approved Requirements |
/speckit.speclan.implement <R-####> |
Implement a Requirement (requires approved status) |
/speckit.speclan.status <ID> <status> |
Advance entity status (forward-only transitions) |
/speckit.speclan.cr.create <ID> <type> |
Create a Change Request on a locked spec |
/speckit.speclan.cr.merge <CR-####> |
Apply a CR's changes to the parent spec |
/speckit.speclan.cr.close <CR-####> <reason> |
Close a CR without merging |
SPECLAN owns the spec bodies (WHAT). Spec-kit owns the working artifacts (HOW).
speclan/ <- canonical store (SPECLAN owns)
features/F-7421-login/
F-7421-login.md <- THE spec (frontmatter, body, status)
requirements/R-3094-token-issuance/
R-3094-token-issuance.md
specs/ <- working dir (spec-kit owns)
001-login/
SPECLAN.md <- pointer to speclan/features/F-7421-login/
plan.md <- references F-7421 / R-3094
tasks.md <- references R-3094
data-model.md
research.md
Specs are stored once. No duplication, no sync.
Works with every agent spec-kit supports: Claude, Cursor, Codex, Cline, Windsurf, Gemini, and 30+ others.
- spec-kit >= 0.8
- bash >= 4, yq >= 4, jq >= 1.6, git >= 2.30
After install, edit .specify/extensions/speclan/config.yml to override defaults. See config-template.yml for available options.
- SPECLAN Help Page — full installation guide and composition model
- SPECLAN VS Code Extension — rich UI for SPECLAN specs
Apache-2.0 — see LICENSE.