# claude-skills > Russian version: [README.ru.md](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 for Claude, committed to the repo - **`hermes/`** — Hermes-rollout config: `mapping.yaml` and any `mode: manual` overrides under `hermes/skills/` - **`dist-hermes/`** — pre-converted Hermes-flavour skill tree, committed (regenerated by `scripts/build-hermes.py`) - **`scripts/`** — utilities: `build.sh` (source → `.skill`), `install.sh` (source → `~/.claude/skills/`), `build-hermes.py` (source → `dist-hermes/`) - **`.wiki/`**, **`.tasks/`** — working notes and the task board ## Quick start ### Install skills on a fresh machine **Windows (PowerShell):** ```powershell git clone 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):** ```bash git clone 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`](skills/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](https://gist.github.com/karpathy/442a6bf555914893e9891c11519de94f) (delegated to [`setup-wiki`](skills/setup-wiki/)) - lay out `.tasks/` with the canonical task board (delegated to [`setup-tasks`](skills/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 ```bash # 1. Edit skills//SKILL.md (or its assets). # 2. Push the changes into the live skill folder: bash scripts/install.sh # 3. Rebuild the archive (optional, but handy before a commit): bash scripts/build.sh ``` ### Build `.skill` archives ```bash 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. ### Build for Hermes The same `skills/` are rolled out to Hermes Agent (Nous Research) on factory Linux machines. The converter reads `hermes/mapping.yaml` (per-skill mode / category / replace-rules / skip-list) and writes a Hermes-formatted skill tree to `dist-hermes/`, which is committed to the repo. ```bash python scripts/build-hermes.py # regenerate dist-hermes/ from mapping ``` Every skill in `skills/` must have an explicit entry in `mapping.yaml` (`auto` / `manual` / `skip` / `pending`); the build fails on unmapped skills. Skip and pending entries land in `dist-hermes/SKIPPED.md` with reasons. Full design rationale lives in [`.wiki/concepts/hermes-skills-rollout-design.md`](.wiki/concepts/hermes-skills-rollout-design.md). ## Layout ``` claude-skills/ ├── skills/ ← sources (one folder per skill) ├── dist/ ← .skill archives for Claude (committed) ├── hermes/ │ ├── mapping.yaml ← per-skill Hermes-rollout config │ └── skills/ ← `mode: manual` overrides (Hermes-flavour rewrites) ├── dist-hermes/ ← pre-converted Hermes-flavour tree (committed) │ ├── // ← e.g. software-development/pulling-before-work/ │ └── SKIPPED.md ← skip + pending log (auto-generated) ├── scripts/ │ ├── build.sh / build.ps1 │ ├── install.sh / install.ps1 │ └── build-hermes.py ├── .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`](.wiki/concepts/repo-layout.md).