spec-kit is a set of Claude Code slash commands that guide a team from a rough idea to a fully planned, task-broken-down feature — before writing a single line of code.
This template comes pre-configured with spec-kit. Use it during the first hour of your hackathon to align the team and hit the ground running.
Hackathons often stall because:
- Team members have different mental models of what they're building
- Scope creep kills momentum halfway through
- No one knows what to build next after the initial rush
spec-kit solves this by producing structured artifacts (spec, plan, tasks) that keep everyone aligned and make individual tasks small enough to complete in 30-minute sprints.
/speckit.specify → /speckit.clarify → /speckit.plan → /speckit.tasks → /speckit.implement
↓ ↓ ↓ ↓ ↓
spec.md (updated spec) plan.md + more tasks.md code written
Purpose: Converts a natural-language feature description into a structured specification document.
When to use: At the start of your hackathon, before any coding begins.
How to use:
/speckit.specify Build a recipe sharing app where users can post recipes,
browse by ingredient, and save favorites. Mobile-first, deployed on Vercel.
Output: specs/<N>-<name>/spec.md — a structured spec with user stories, requirements, and success criteria.
Purpose: Asks up to 5 targeted questions about the spec to resolve ambiguities before planning begins.
When to use: After /speckit.specify, before /speckit.plan. Especially useful when the spec has [NEEDS CLARIFICATION] markers.
How to use:
/speckit.clarify
Claude will ask questions one at a time. Answer with the option letter or a short phrase. Run this in under 10 minutes.
Output: Updated spec.md with clarifications recorded.
Purpose: Researches technology choices and produces a full implementation plan, data model, API contracts, and integration guide.
When to use: After the spec is finalized (after /speckit.clarify).
How to use:
/speckit.plan
Output:
plan.md— tech stack, architecture, file structuredata-model.md— database schema and entity typescontracts/— API endpoint specificationsresearch.md— technology decisions with rationalequickstart.md— step-by-step integration guide
Purpose: Generates a prioritized, dependency-ordered task list that maps directly to the plan and spec.
When to use: After /speckit.plan is complete.
How to use:
/speckit.tasks
Output: tasks.md — all implementation tasks organized by user story, with parallel execution markers.
Purpose: Converts tasks.md into GitHub Issues, ready to assign to team members.
When to use: After /speckit.tasks, when you want to distribute work via GitHub Issues.
How to use:
/speckit.taskstoissues
Output: GitHub Issues created in the repository, one per task group or user story.
Purpose: Works through tasks.md phase by phase, writing code, running tests, and marking tasks complete.
When to use: After tasks.md is finalized and the team is ready to code.
How to use:
/speckit.implement
Claude will implement tasks in order, respecting dependencies and running checkpoints between phases.
- One person runs
/speckit.specifywith the feature idea - Team reviews the generated
spec.mdtogether - Run
/speckit.clarifyto answer any open questions - Everyone agrees on scope (especially "Out of Scope")
- Run
/speckit.planto generate the technical plan - Team reviews
plan.mdanddata-model.md - Run
/speckit.tasksto generate the task list - Optionally run
/speckit.taskstoissuesto create GitHub Issues
- Run
/speckit.implementto start coding, or - Divide
tasks.mdamong team members manually - Each PR runs CI automatically (lint + build + test)
- Vercel generates a preview URL for every PR
- Fill in
docs/demo-runbook.mdwith your demo steps - Update
docs/architecture.mdwith your actual system design - Verify the production Vercel deployment is healthy
All spec-kit artifacts are stored under specs/<N>-<name>/:
specs/
└── 001-my-feature/
├── spec.md ← Feature specification
├── plan.md ← Technical implementation plan
├── research.md ← Technology decisions
├── data-model.md ← Database schema
├── tasks.md ← Task breakdown
├── quickstart.md ← Integration guide
└── contracts/
├── api-*.md ← API endpoint contracts
└── env-schema.md ← Environment variable schema
- Keep specs short — aim for 1-2 user stories per spec. Scope creep is the enemy.
- Use "recommended" — during
/speckit.clarify, accepting the recommended option is almost always correct for a hackathon context. - Skip clarify if you're in a rush — you can go straight from
/speckit.specifyto/speckit.planif the spec is clear enough. - Commit after each phase —
git commitafter spec, after plan, after tasks. This makes it easy to roll back if something goes wrong.