Loading...
Loading...
Use when setting up speckit (Specification-Driven Development) in a repo — copies slash commands, templates, and optionally creates a project constitution.
npx skill4agent add fellowship-dev/dogfooded-skills setup-speckit| Fork | Repo | Notes |
|---|---|---|
| fellowship-dev (default) | fellowship-dev/spec-kit | Leaner, fewer tokens, opinionated defaults |
| upstream | github/spec-kit | Original, more verbose, higher token cost |
.claude/setup-harnesstarget-repo/
├── .specify/
│ ├── scripts/bash/ # create-new-feature.sh, setup-plan.sh, common.sh, etc.
│ ├── templates/ # spec, plan, tasks, checklist, constitution templates
│ └── memory/
│ └── constitution.md # Project principles (customized or default)
├── .claude/commands/
│ ├── speckit.specify.md # /speckit.specify <issue-number>
│ ├── speckit.plan.md # /speckit.plan
│ ├── speckit.tasks.md # /speckit.tasks
│ ├── speckit.implement.md # /speckit.implement
│ ├── speckit.clarify.md # /speckit.clarify
│ ├── speckit.checklist.md # /speckit.checklist
│ ├── speckit.analyze.md # /speckit.analyze
│ └── speckit.constitution.md
└── specs/ # Created per-feature by /speckit.specify# Default: fellowship-dev fork (leaner, recommended)
SPECKIT_SRC=$(mktemp -d)
git clone --depth 1 https://github.com/fellowship-dev/spec-kit.git "$SPECKIT_SRC"
# Alternative: upstream (more verbose, higher token cost)
# git clone --depth 1 https://github.com/github/spec-kit.git "$SPECKIT_SRC"mkdir -p .specify/scripts/bash .specify/templates .specify/memory
mkdir -p .claude/commands
mkdir -p specscp "$SPECKIT_SRC"/scripts/bash/*.sh .specify/scripts/bash/
chmod +x .specify/scripts/bash/*.shcp "$SPECKIT_SRC"/templates/spec-template.md .specify/templates/
cp "$SPECKIT_SRC"/templates/plan-template.md .specify/templates/
cp "$SPECKIT_SRC"/templates/tasks-template.md .specify/templates/
cp "$SPECKIT_SRC"/templates/checklist-template.md .specify/templates/
cp "$SPECKIT_SRC"/templates/constitution-template.md .specify/templates/cp "$SPECKIT_SRC"/templates/commands/specify.md .claude/commands/speckit.specify.md
cp "$SPECKIT_SRC"/templates/commands/plan.md .claude/commands/speckit.plan.md
cp "$SPECKIT_SRC"/templates/commands/tasks.md .claude/commands/speckit.tasks.md
cp "$SPECKIT_SRC"/templates/commands/implement.md .claude/commands/speckit.implement.md
cp "$SPECKIT_SRC"/templates/commands/clarify.md .claude/commands/speckit.clarify.md
cp "$SPECKIT_SRC"/templates/commands/checklist.md .claude/commands/speckit.checklist.md
cp "$SPECKIT_SRC"/templates/commands/analyze.md .claude/commands/speckit.analyze.md
cp "$SPECKIT_SRC"/templates/commands/constitution.md .claude/commands/speckit.constitution.mdcp .specify/templates/constitution-template.md .specify/memory/constitution.mdrm -rf "$SPECKIT_SRC"REPO=$(gh repo view --json nameWithOwner -q '.nameWithOwner')
gh label create "in-progress" --repo "$REPO" --color "97f157" --description "Issue is actively being worked on" 2>/dev/null || true
gh label create "ready-to-work" --repo "$REPO" --color "f6a80a" --description "PRD complete, ready for implementation" 2>/dev/null || truels .specify/scripts/bash/*.sh # Scripts present and executable
ls .specify/templates/*.md # Templates present
ls .claude/commands/speckit.*.md # Slash commands present
cat .specify/memory/constitution.md # Constitution initialized
gh label list --repo "$REPO" | grep -E "in-progress|ready-to-work"/speckit.constitution/speckit.specify <issue-number><issue-number>-<short-name>