LINUXOR.SK ... open source notes ...

SDD 05 - Spec Kit: Quick & Dirty Starter Guide

category: learnz/sdd · date: 2026-10-04 · author: LALA · theme: github

SDD Learning · Previous: Matt Pocock Skills lab route · Next: Spec Kit lab route

Spec Kit gives a coding agent a visible route from a requirement to a reviewed implementation. The useful part is the chain of artifacts: the feature specification says what must happen, the plan explains the technical approach, and the tasks make the work executable in small steps.

This is the specification-first counterpart to the Matt Pocock Skills starter guide. Where Matt's skills let you assemble an engineering workflow, Spec Kit supplies a more explicit specification and planning structure.

noteDocumentation snapshot: 2026-10-04. Commands below follow the current upstream documentation, including skills-mode names and the convergence step. They are documentation-checked examples, not a claim that every agent integration was exercised. Record your installed version before adopting the workflow in a team.

What you install

The project is github/spec-kit. The executable is specify, distributed as specify-cli. Initialization installs project support files and instructions for your chosen coding agent. The model and agent still perform the reasoning and code changes.

speckit.org is a useful entry point, but use the upstream installation guide and generated commands when instructions disagree. In particular, do not mix an older tutorial's command names with a newer integration.

Quick start

You need Python 3.11 or newer, uv, and a supported coding agent. Git is useful for reviewing and reverting changes. These shell examples target Linux, macOS, or WSL.

Run in the terminal:

bash
$ uv tool install specify-cli
$ specify version
$ specify init spec-kit-demo --integration copilot
$ cd spec-kit-demo

Open your coding agent in this directory. The examples below use Copilot's default skills mode. Invoke each command separately in the agent chat and read its output before continuing.

prompt
/speckit-constitution Keep the project small. Preserve documented behavior. Test observable behavior. Avoid unnecessary dependencies. Require actual verification evidence before calling a change complete.

For another agent, choose its integration at initialization. specify integration list shows the available keys. The integration reference describes their layouts; some command-mode integrations use dotted names such as /speckit.specify. Use the names your agent exposes.

The workflow to learn first

Spec Kit connects constitution, specification, plan, tasks and implementation with convergence and human review.
Spec Kit connects constitution, specification, plan, tasks and implementation with convergence and human review.

Colors mean the same thing in every diagram of this Learning: see the color key.

The constitution is a project-level document. The specification, plan and tasks belong to a feature. Avoid rewriting project principles every time you add a flag.

StageWhat should become clearer
speckit-constitutionThe engineering rules the project intends to follow
speckit-specifyUser-visible behavior, scope and acceptance scenarios
speckit-clarifyDecisions that would otherwise be guessed
speckit-planArchitecture, dependencies and verification approach
speckit-tasksWork small enough to execute and check
speckit-analyzeContradictions between specification, plan and tasks
speckit-implementCode changes and execution evidence
speckit-convergeWhether implementation and artifacts agree, and what remains

The upstream SDD quickstart also describes speckit-checklist. That checklist reviews the quality of requirements. Checking an item does not prove that the corresponding behavior works.

What survives the conversation

Project rules guide feature specification, technical planning and tasks; all link to code and tests.
Project rules guide feature specification, technical planning and tasks; all link to code and tests.
ArtifactWhy it matters
.specify/memory/constitution.mdShared project principles
Feature spec.mdThe requirement you can review independently of code
Feature plan.mdTechnical decisions and verification strategy
Feature tasks.mdWork breakdown and completion state
.specify/feature.jsonThe active feature in the current upstream workflow
Tests and Git historyEvidence and an inspectable change boundary

Let the installed tooling choose the feature directory. Current upstream documentation resolves the active feature through .specify/feature.json; changing Git branches alone does not select a different feature. Older examples that assume branch-based selection can therefore be misleading.

How much process does the work deserve?

SituationPractical starting point
A feature crosses sessions or contributorsThe SDD workflow
One obvious wording correctionYour normal editing workflow
A difficult existing bugInvestigate first; current Spec Kit also offers an optional bug extension
An uncertain product ideaEstablish whether it deserves investment before producing a feature plan
An existing codebaseRead its behavior and tests before writing replacement assumptions

The current repository documents independent bug-fixing and idea-assessment extensions. They are optional entry points; you do not have to run SDD before diagnosing a bug. See the repository's process overview.

Common mistakes

Instead ofPrefer
Putting stack choices into every requirementKeep behavior in the spec and implementation decisions in the plan
Running every command without reading its outputReview the handoff artifacts
Treating a checklist as a test suiteExecute behavior tests
Editing code while the spec says something elseUpdate the decision and implementation together
Copying slash commands into BashRun specify in the terminal and skills in agent chat
Assuming every generated file is usefulRemove ceremony that does not improve the handoff

Practice on the shared lab

The Spec Kit lab route walks levels 2 to 6 of the SDD Learning with Spec Kit. It is the same small change every track uses: add JSON output to a tiny CLI and keep its text output unchanged.

A pragmatic adoption path

My recommendation: choose Spec Kit when the missing piece is a consistent route from a requirement to an implementation plan. Keep the artifacts short enough that a human will review them.

← learnz/sdd