Speck vs Spec-Kit

Speck builds on GitHub's excellent spec-kit project, extending it specifically for Claude Code users. Both tools share the same specification-driven methodology, but serve different use cases.

Feature Comparison

Feature Speck Spec-Kit
AI Assistant Compatibility Claude Code only Multi-agent: Claude, Copilot, Cursor, Cody, any LLM
Runtime Environment Bun 1.0+ (requires installation) Bash (zero dependencies, universal)
Installation One command via Claude Code marketplace Clone repo (simpler, no runtime needed)
Command Style Claude-native slash commands (/speck.specify) Bash scripts (works in any terminal)
Learning Curve Moderate (more concepts: multi-repo, worktrees, hooks) Gentler (simpler, focused on core workflow)
Multi-Repo Support Built-in (symlink detection, shared specs) Manual coordination
Worktree Integration Built-in (session handoff, auto-IDE launch) Manual git worktrees
Performance Sub-100ms hook-based execution Lightweight bash scripts
Platform Support Windows, macOS, Linux (requires Bun) Any platform with bash (more universal)

When to Use Speck

  • You use Claude Code daily and want tight integration
  • You need multi-repo support for microservices or monorepos
  • You want worktree integration with session handoff
  • You value sub-100ms command execution performance
  • You prefer one-command installation via marketplace over cloning repos
  • You want automatic prerequisite checking via hook-based architecture

When to Use Spec-Kit

  • You use any AI assistant (Copilot, Cursor, Cody, etc.) - spec-kit is multi-agent compatible
  • You want the easier, gentler learning curve with simpler bash scripts
  • You prefer zero dependencies (just bash and git, no runtime installation)
  • You work in constrained environments or prefer lightweight tooling
  • You're not using Claude Code - spec-kit is the better choice
  • You want community-driven development backed by GitHub

Migrating from Spec-Kit to Speck

1. Install Bun

Speck requires Bun 1.0+ for TypeScript execution

# macOS/Linux
curl -fsSL https://bun.sh/install | bash

# Windows (PowerShell)
irm bun.sh/install.ps1 | iex

# Verify installation
bun --version

2. Clone Speck

Add Speck to your project (or as a separate repo)

git clone https://github.com/nprbst/speck.git
cd speck
bun install

3. Copy Your Existing Specs

Speck specs are compatible with spec-kit structure

# Copy specs from spec-kit to Speck
cp -r /path/to/spec-kit/specs/ /path/to/speck/specs/

# Your existing spec.md, plan.md, tasks.md files work as-is

4. Run Your First Command

Use Speck's slash commands in Claude Code

/speck.specify "Add user authentication"

5. Optional: Customize Templates

Override default templates in .speck/templates/ directory

# Example: Custom specification template
.speck/templates/
├── specify.md
├── plan.md
└── tasks.md

Frequently Asked Questions

Can I use both Speck and spec-kit?

Yes! Both tools use compatible file formats. You can experiment with Speck while keeping spec-kit as a fallback.

Will my existing spec-kit files work in Speck?

Yes. Speck uses the same markdown-based spec.md, plan.md, and tasks.md structure. Just copy your specs over and run Speck commands.

Does Speck support Windows?

Yes! Bun supports Windows, macOS, and Linux. Install Bun via PowerShell on Windows.

Can I customize Speck's templates?

Yes. Override templates in .speck/templates/ directory. See the documentation for details.

How does Speck compare to Claude Code's Plan Mode?

They're complementary! Plan Mode saves plans to ~/.claude/plans/ for session-focused exploration. Speck saves specs to your repo's specs/ directory for persistent, team-visible documentation. Use Plan Mode to think through options, then Speck to capture your decision. Learn more →