What is Specify CLI?
Specify CLI is the command-line interface for GitHub Spec Kit — a comprehensive toolkit for implementing Spec-Driven Development (SDD). The CLI bootstraps projects with the necessary directory structures, templates, and AI agent integrations to support the spec-driven workflow.Purpose
Specify CLI helps development teams:- Initialize projects with spec-driven development structure
- Integrate AI assistants (Claude, Copilot, Gemini, Cursor, and more)
- Manage extensions for custom workflows and integrations
- Verify tool availability before starting development
Core Philosophy
Spec-Driven Development emphasizes creating clear specifications before implementation. The Specify CLI sets up your project to follow this workflow:- Constitution — Establish project principles and guidelines
- Specify — Create baseline feature specifications
- Plan — Generate technical implementation plans
- Tasks — Break down plans into actionable tasks
- Implement — Execute implementation systematically
Installation
Install Specify CLI usinguv (recommended) or pip:
Quick Start
Initialize a new project with an AI assistant:Available Commands
Specify CLI provides the following commands:Core Commands
specify init— Initialize a new Specify projectspecify check— Verify installed tools and dependenciesspecify version— Display version and system information
Extension Management
specify extension list— List installed extensionsspecify extension add— Install an extensionspecify extension remove— Uninstall an extensionspecify extension search— Search available extensionsspecify extension info— Show extension detailsspecify extension update— Update extensionsspecify extension enable— Enable a disabled extensionspecify extension disable— Disable an extension
Supported AI Assistants
Specify CLI supports integration with multiple AI coding assistants:CLI-Based Assistants
- Claude Code (
.claude/commands/) — Anthropic’s Claude Code CLI - Gemini CLI (
.gemini/commands/) — Google’s Gemini CLI - Cursor (
.cursor/commands/) — Cursor CLI - Qwen Code (
.qwen/commands/) — Alibaba’s Qwen Code CLI - opencode (
.opencode/command/) — opencode CLI - Amazon Q Developer CLI (
.amazonq/prompts/) — Amazon Q Developer - Amp (
.agents/commands/) — Amp CLI - SHAI (
.shai/commands/) — SHAI CLI - Auggie CLI (
.augment/commands/) — Auggie CLI - CodeBuddy CLI (
.codebuddy/commands/) — CodeBuddy CLI - Qoder CLI (
.qoder/commands/) — Qoder CLI - Codex CLI (
.codex/prompts/) — Codex CLI
IDE-Based Assistants
- GitHub Copilot (
.github/agents/) — Built into VS Code - Windsurf (
.windsurf/workflows/) — Windsurf IDE - Kilo Code (
.kilocode/workflows/) — Kilo Code IDE - Roo Code (
.roo/commands/) — Roo Code IDE - IBM Bob (
.bob/commands/) — IBM Bob IDE - Antigravity (
.agent/workflows/) — Antigravity IDE
Generic Agent Support
For unsupported agents, use thegeneric option with a custom commands directory:
Project Structure
After initialization, your project will have:Getting Help
View help for any command:Next Steps
- Learn about the
initcommand to bootstrap projects - Use the
checkcommand to verify your environment - Explore the Commands Reference for all available options