Back to skills
SkillHub ClubShip Full StackFull Stack

spec-kit

Imported from https://github.com/rhuss/cc-superpowers-sdd.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
7
Hot score
83
Updated
March 19, 2026
Overall rating
C3.7
Composite score
3.7
Best-practice grade
B80.4

Install command

npx @skill-hub/cli install rhuss-cc-superpowers-sdd-spec-kit

Repository

rhuss/cc-superpowers-sdd

Skill path: skills/spec-kit

Imported from https://github.com/rhuss/cc-superpowers-sdd.

Open repository

Best for

Primary workflow: Ship Full Stack.

Technical facets: Full Stack.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: rhuss.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install spec-kit into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/rhuss/cc-superpowers-sdd before adding spec-kit to shared team environments
  • Use spec-kit for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: spec-kit
description: Technical integration layer for spec-kit CLI - handles automatic initialization, installation validation, project setup, and ensures proper file/directory layout. Called by all SDD workflow skills.
---

# Spec-Kit Technical Integration

## Purpose

This skill is the **single source of truth** for all spec-kit technical integration:
- Automatic initialization and setup
- Installation validation
- Project structure management
- CLI command wrappers
- Layout and file path enforcement

**This is a low-level technical skill.** Workflow skills (brainstorm, implement, etc.) call this skill for setup, then proceed with their specific workflows.

## Automatic Initialization Protocol

**IMPORTANT: This runs automatically when called by any workflow skill.**

Every SDD workflow skill calls this skill first via `{Skill: spec-kit}`. When called, execute this initialization sequence once per session.

### Session Tracking

```bash
# Check if already initialized this session
# Use an environment variable or similar mechanism
# If "sdd_init_done" flag is set, skip to step 4
```

### Step 1: Check spec-kit CLI Installation

```bash
which speckit
```

**If NOT found:**
```
❌ ERROR: spec-kit is required but not installed

spec-kit provides the templates, scripts, and tooling for SDD workflows.

Installation:
1. Visit: https://github.com/github/spec-kit
2. Follow installation instructions
3. Ensure 'speckit' is in your PATH
4. Verify: run 'which speckit'

After installation, restart this workflow.
```

**STOP workflow.** Do not proceed without spec-kit.

**If found:**
```bash
# Get version for logging
speckit --version
```

Proceed to step 2.

### Step 2: Check Project Initialization

```bash
# Check if .specify/ directory exists
[ -d .specify ] && echo "initialized" || echo "not-initialized"
```

**If NOT initialized:**

Display message:
```
spec-kit is installed ✓

This project needs initialization...
Running: speckit init
```

Execute initialization:
```bash
speckit init
```

**Check for errors:**
- Permission denied → suggest running with proper permissions
- Command failed → display error and suggest manual init
- Success → proceed to step 3

**If already initialized:**
Skip to step 3.

### Step 3: Check for New Commands (Restart Detection)

After `speckit init` runs, check if local commands were installed:

```bash
# Check if spec-kit installed Claude Code commands
if [ -d .claude/commands ]; then
  ls .claude/commands/ | grep -q speckit
  if [ $? -eq 0 ]; then
    echo "commands-installed"
  fi
fi
```

**If commands were installed:**

Display restart prompt:
```
✅ Project initialized successfully!

⚠️  RESTART REQUIRED ⚠️

spec-kit has installed local slash commands in:
  .claude/commands/speckit.*

To load these new commands, please:
1. Save your work
2. Close this conversation
3. Restart Claude Code application
4. Return to this project
5. Continue your workflow

After restart, you'll have access to:
- /sdd:* commands (from this plugin)
- /speckit.* commands (from local spec-kit installation)

[Workflow paused - resume after restart]
```

**STOP workflow.** User must restart before continuing.

**If no new commands installed:**
Proceed to step 4.

### Step 4: Verify Installation

Quick sanity check:
```bash
# Verify key files exist
[ -f .specify/templates/spec-template.md ] && \
[ -f .specify/scripts/bash/common.sh ] && \
echo "verified" || echo "corrupt"
```

**If verification fails:**
```
❌ ERROR: .specify/ exists but appears incomplete

This may be due to a failed initialization.

Please run: speckit init --force

Then restart this workflow.
```

**STOP workflow.**

**If verification succeeds:**
- Set session flag: "sdd_init_done"
- Return success to calling skill
- Calling skill continues with its workflow

## Layout Validation

Use these helpers to validate spec-kit file structure:

### Check Constitution

```bash
# Constitution location (per spec-kit convention)
CONSTITUTION=".specify/memory/constitution.md"

if [ -f "$CONSTITUTION" ]; then
  echo "constitution-exists"
else
  echo "no-constitution"
fi
```

### Get Feature Spec Path

```bash
# Validate feature spec path follows spec-kit layout
# Expected: specs/NNNN-feature-name/spec.md
# Or: specs/features/feature-name.md

validate_spec_path() {
  local spec_path=$1

  # Check if follows spec-kit conventions
  if [[ $spec_path =~ ^specs/[0-9]+-[a-z-]+/spec\.md$ ]] || \
     [[ $spec_path =~ ^specs/features/[a-z-]+\.md$ ]]; then
    echo "valid"
  else
    echo "invalid: spec must be in specs/ directory with proper naming"
  fi
}
```

### Get Plan Path

```bash
# Plan location (per spec-kit convention)
# Expected: specs/NNNN-feature-name/docs/plan.md

get_plan_path() {
  local feature_dir=$1  # e.g., "specs/0001-user-auth"
  echo "$feature_dir/docs/plan.md"
}
```

### Ensure Directory Structure

```bash
# Create spec-kit compliant feature structure
ensure_feature_structure() {
  local feature_dir=$1  # e.g., "specs/0001-user-auth"

  mkdir -p "$feature_dir/docs"
  mkdir -p "$feature_dir/checklists"
  mkdir -p "$feature_dir/contracts"

  echo "created: $feature_dir structure"
}
```

## Spec-Kit CLI Commands

Wrapper helpers for common spec-kit commands:

### Initialize Project

```bash
# Already covered in automatic initialization
speckit init
```

### Create Specification

```bash
# Interactive spec creation
speckit specify [feature-description]

# Uses template from .specify/templates/spec-template.md
```

### Validate Specification

```bash
# Validate spec format and structure
speckit validate <spec-file>

# Example:
speckit validate specs/0001-user-auth/spec.md
```

### Generate Plan

```bash
# Generate implementation plan from spec
speckit plan <spec-file>

# Example:
speckit plan specs/0001-user-auth/spec.md
```

### Create Constitution

```bash
# Interactive constitution creation
speckit constitution

# Creates .specify/memory/constitution.md
```

## Error Handling

### spec-kit CLI Errors

**Command not found after installation:**
- Check PATH configuration
- Suggest shell restart
- Provide which speckit output

**Init fails:**
- Check write permissions
- Check disk space
- Suggest manual troubleshooting

**Validation fails:**
- Display validation errors
- Suggest fixes based on error type
- Reference spec template

### File System Errors

**Permission denied:**
```
Cannot write to project directory.

Please ensure you have write permissions:
  chmod +w .
```

**Path not found:**
```
Expected file not found: <path>

This suggests incomplete initialization.
Run: speckit init --force
```

## Integration Points

**Called by these workflow skills:**
- sdd:brainstorm (at start)
- sdd:implement (at start)
- sdd:evolve (at start)
- sdd:constitution (at start)
- sdd:review-spec (at start)
- All workflow skills that need spec-kit

**Calls:**
- spec-kit CLI (external command)
- File system operations
- No other skills (this is a leaf skill)

## Session Management

**First call in session:**
- Run full initialization protocol
- Check installation, project, commands
- Prompt restart if needed
- Set session flag

**Subsequent calls in session:**
- Check session flag
- Skip initialization if already done
- Optionally re-verify critical paths
- Return success immediately

**Session reset:**
- New conversation = new session
- Re-run initialization protocol
- Ensures project state is current

## Remember

**This skill is infrastructure, not workflow.**

- Don't make decisions about WHAT to build
- Don't route to other workflow skills
- Just ensure spec-kit is ready to use
- Validate paths and structure
- Handle technical errors

**Workflow skills handle:**
- What to create (specs, plans, code)
- When to use which tool
- Process discipline and quality gates

**This skill handles:**
- Is spec-kit installed?
- Is project initialized?
- Do files exist in correct locations?
- Are commands available?

**The goal: Zero-config, automatic, invisible setup.**
spec-kit | SkillHub