vitya 8c547d73af feat(project-bootstrap): generic Step 5.6 skill-deps check
Collapse Step 5.6 from a single-skill detector (only the
superpowers@claude-plugins-official plugin) into a generic
`trigger -> fulfiller` table walker that scales to every canonical
CLAUDE.md trigger.

Inline 9-row map in SKILL.md covers: caveman, superpowers (kind: plugin),
using-wiki, using-tasks, using-projects-meta, pulling-before-work,
project-discipline, using-interns, active-platform. The `kind` flag
(skill | plugin) drives which install command is emitted in the chat-only
recommendation block. Detection paths: ~/.claude/skills/<name>/SKILL.md
for skills, plugins.<id> in ~/.claude/plugins/installed_plugins.json
for plugins.

Algorithm: read project's CLAUDE.md -> match each non-comment line vs
map (substring + tolower, mirrors Step 5 idempotent merge) -> for each
canonical match check disk -> print one chat block listing every missing
fulfiller with copy-pasteable install commands, OR a single
"all dependencies satisfied" line. User-custom lines and removed
canonical lines are silently skipped. Hard rule "never auto-install"
preserved verbatim.

version: 1.6.0 -> 1.7.0 (MINOR per project-discipline Rule 3 -- adds
capability, absorbs prior superpowers-only detector cleanly).

Closes [bootstrap-skill-deps-check] (.tasks/STATUS.md done).
Closes [bootstrap-recommend-projects-meta] by absorption -- the deferred
mirror task was the seed of this generalization; the generic walker now
handles using-projects-meta along with everything else, no per-skill
mirror needed.

Design rationale at .wiki/concepts/bootstrap-skill-deps-check.md:
- why generic over per-skill mirrors (5x mirror explosion)
- skill vs plugin kind distinction
- MCP-server-backed skills (only check using-X policy skill;
  setup-X self-fires via Prerequisites pointer)
- source-of-truth invariant: SKILL map + assets/CLAUDE.md.template
  must stay in sync (a future CI lint could enforce)
2026-05-05 21:21:19 +03:00

claude-skills

Russian version: README.ru.md.

Joint workshop and storage for Claude skills.

About

A shared workspace where Claude and I author, debug, and ship skills together:

  • skills/ — editable sources (markdown + assets), the source of truth
  • dist/ — built .skill archives, committed to the repo
  • scripts/ — utilities: build.sh (source → .skill), install.sh (source → ~/.claude/skills/)
  • .wiki/, .tasks/ — working notes and the task board

Quick start

Install skills on a fresh machine

Windows (PowerShell):

git clone <repo> claude-skills
cd claude-skills
bash scripts/install.sh           # copies every skills/* into ~/.claude/skills/
# or only specific ones:
bash scripts/install.sh caveman wiki-maintainer

Linux / macOS (bash):

git clone <repo> claude-skills
cd claude-skills
bash scripts/install.sh           # copies every skills/* into ~/.claude/skills/
# or only specific ones:
bash scripts/install.sh caveman wiki-maintainer

The install target can be overridden with CLAUDE_SKILLS_DIR=/path bash scripts/install.sh.

install.sh works on Windows under git-bash. A native install.ps1 is on the task board but not yet implemented.

Using skills in projects

Once the skills are installed, the easiest way to wire them into a new (or existing) project is the project-bootstrap skill. Tell the agent "bootstrap" or "set everything up" from the project's folder and it will, in one pass:

  • initialize git (if missing) and write a sane .gitignore
  • create a starter README.md
  • lay out .wiki/ per the Karpathy LLM Wiki pattern (delegated to setup-wiki)
  • lay out .tasks/ with the canonical task board (delegated to setup-tasks)
  • write CLAUDE.md with skill triggers (use superpowers, use project wiki, use task management system, check across all projects, we're on Windows)
  • record the skill versions used in .wiki/concepts/bootstrap-manifest.md so cross-project layout drift stays debuggable
  • check whether the official superpowers@claude-plugins-official plugin is installed and, if not, print the install command — the use superpowers trigger is a no-op without it

Two modes, picked automatically: init for an empty folder, upgrade for an existing project (the skill only fills the gaps and never overwrites without explicit confirmation). On upgrade, CLAUDE.md is merged idempotently — only canonical trigger lines that aren't already present are appended after explicit confirm, so re-running project-bootstrap after a template change picks up the new triggers without duplicating the old ones.

Edit a skill

# 1. Edit skills/<name>/SKILL.md (or its assets).
# 2. Push the changes into the live skill folder:
bash scripts/install.sh <name>
# 3. Rebuild the archive (optional, but handy before a commit):
bash scripts/build.sh <name>

Build .skill archives

bash scripts/build.sh                 # all skills
bash scripts/build.sh caveman         # one skill

build.sh uses zip when it's available (Linux/macOS) or delegates to scripts/build.ps1 via PowerShell (Windows without zip). On Windows you can also run powershell scripts/build.ps1 directly.

Layout

claude-skills/
├── skills/                 ← sources (one folder per skill)
├── dist/                   ← .skill archives (committed)
├── scripts/
│   ├── build.sh / build.ps1
│   └── install.sh
├── .wiki/                  ← design docs, notes
├── .tasks/                 ← STATUS.md
├── CLAUDE.md
└── README.md               (this file — see README.ru.md for Russian)

For the principles and decisions behind this layout see .wiki/concepts/repo-layout.md.

Description
No description provided
Readme 11 MiB
Languages
Python 45.3%
PowerShell 32.7%
Shell 22%