Skip to content
initialization logo

initialization

Use when starting a new session without feature-list.json, setting up project structure, or breaking down requirements into atomic features. Load in INIT state. Detects project type (Python/Node/Django/FastAPI), creates feature-list.json with priorities, initializes .claude/progress/ tracking.

SKILL.md

Full skill instructions

Initialization

Project setup and feature breakdown for INIT state.

Execution Order (MANDATORY)

Follow this exact sequence. Do NOT skip steps.

Step 1: Global Setup (once per machine)

# Check if global CLAUDE.md exists
[ -f ~/​.claude/​CLAUDE.md ] || ~/​.claude/​skills/​initialization/​scripts/​global-init.sh

Step 2: Global Hooks (once per machine)

# Check and install global hooks
[ -x ~/​.claude/​hooks/​verify-state-transition.py ] || \
    ~/​.claude/​skills/​global-hook-setup/​scripts/​setup-global-hooks.sh

IMPORTANT: Load global-hook-setup skill if hooks missing.

Step 3: MCP Servers (once per project)

# Check and install MCP servers
[ -d mcp/​token-efficient-mcp ] || \
    ~/​.claude/​skills/​mcp-setup/​scripts/​setup-all.sh --non-interactive

IMPORTANT: Load mcp-setup skill if MCP missing.

Step 4: Project Structure

~/​.claude/​skills/​initialization/​scripts/​init-project.sh

Creates:

  • .claude/​config/​project.json - Project settings
  • .claude/​progress/​state.json - State (transitions to INIT)
  • CLAUDE.md - Project documentation
  • .claude/​CLAUDE.md - Quick reference

Step 5: Project Hooks (once per project)

# Check and install project hooks
[ -x .claude/​hooks/​verify-tests.py ] || \
    ~/​.claude/​skills/​project-hook-setup/​scripts/​setup-project-hooks.sh --non-interactive

IMPORTANT: Load project-hook-setup skill if hooks missing.

Step 6: Check Dependencies

~/​.claude/​skills/​initialization/​scripts/​check-dependencies.sh

Fix any errors before proceeding.

Step 7: Create Feature List

  • Analyze user requirements
  • Break down into atomic features (INVEST criteria)
  • Create .claude/​progress/​feature-list.json
~/​.claude/​skills/​initialization/​scripts/​create-feature-list.sh

Step 8: Initialize Progress

~/​.claude/​skills/​initialization/​scripts/​init-progress.sh

Step 9: Verify INIT Complete

~/​.claude/​skills/​initialization/​scripts/​verify-init.sh

Must pass all 14 checks before transitioning to IMPLEMENT.


CLAUDE.md Hierarchy

FileScopePurpose
~/​.claude/​CLAUDE.mdGlobalUser preferences, skill enforcement
CLAUDE.mdProjectProject documentation (100-300 lines)
.claude/​CLAUDE.mdLocalQuick reference (<50 lines)

Exit Criteria (Code Verified)

# Project structure initialized
[ -f "CLAUDE.md" ]                      # Project documentation created
[ -f ".claude/​CLAUDE.md" ]              # Quick reference created
[ -f ".claude/​config/​project.json" ]    # Project config
[ -d ".claude/​progress/" ]               # Tracking directory

# Feature list created
[ -f ".claude/​progress/​feature-list.json" ]
jq '.features | length > 0' .claude/​progress/​feature-list.json
jq '.features[0] | has("id", "description", "priority", "status")' .claude/​progress/​feature-list.json

# Dependencies verified
scripts/​check-dependencies.sh --quiet

# Hooks installed
[ -x "~/​.claude/​hooks/​verify-state-transition.py" ]  # Global hooks
[ -x ".claude/​hooks/​verify-tests.py" ]                 # Project hooks

Scripts

ScriptPurpose
scripts/​global-init.shOne-time setup for ~/​.claude/​CLAUDE.md (global preferences)
scripts/​init-project.shInitialize .claude/ structure, generate CLAUDE.md files
scripts/​detect-project.shDetect Python/​Node/​Django/​etc
scripts/​check-dependencies.shVerify MCP, env vars, services, ports
scripts/​create-init-script.shGenerate init.sh for dev server
scripts/​create-feature-list.shGenerate feature-list.json
scripts/​init-progress.shInitialize .claude/​progress/
scripts/​verify-init.shVerify all INIT criteria met

References

FileLoad When
references/​feature-breakdown.mdBreaking down requirements
references/​project-detection.mdDetecting project type
references/​mvp-feature-breakdown.mdMVP-first tiered feature generation (10/​30/​200)

Assets

FilePurpose
templates/​CLAUDE.project.template.mdTemplate for CLAUDE.md (project root)
templates/​CLAUDE.local.template.mdTemplate for .claude/​CLAUDE.md (quick reference)
templates/​framework-templates/​*.mdFramework-specific content (python, node, rust, go)
assets/​feature-list.template.jsonTemplate for new feature lists