Adds the conversion infrastructure for the Hermes-rollout (Nous Research): - hermes/mapping.yaml — per-skill schema (mode: auto|manual|skip|pending, category, replace-rules, source override). Every skills/<name>/ has an explicit entry; the build fails on unmapped skills. - scripts/build-hermes.py — Python converter. Reads mapping.yaml; for auto applies replace-rules to SKILL.md and copies the rest verbatim; for manual copies hermes/skills/<source>/ as-is; for skip / pending records to dist-hermes/SKIPPED.md. - dist-hermes/ — pre-converted Hermes-flavour tree (committed; consumed by the recursive installer in [hermes-installer-skill]). Includes 4 universal skills: pulling-before-work, active-platform (with Linux+bash replacement rule), project-discipline, using-markitdown. Plus SKIPPED.md listing 8 skip + 10 pending entries. - README.md — adds "Build for Hermes" section, updates layout, mentions hermes/, dist-hermes/, build-hermes.py. Mapping is the source of truth for the audit table from .wiki/concepts/hermes-skills-rollout-design.md (Q1-Q8). Pending entries preserve the audit decision (intended mode/category) for the follow-up tasks: hermes-flavour-mcp-setups, hermes-installer-skill, hermes-mvp-coverage. Security carry-forward (extraheader-pattern, POSIX-absolute paths, semver bumps) — infrastructure ready (replace-rules + manual mode); concrete content lands in hermes-flavour-mcp-setups. Smoke-tests: idempotent re-run produces no diff; replace-rules verified on active-platform (Linux+bash); strict-mapping fail-fast verified on a synthetic unmapped skill (exit 1). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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 truthdist/— built.skillarchives for Claude, committed to the repohermes/— Hermes-rollout config:mapping.yamland anymode: manualoverrides underhermes/skills/dist-hermes/— pre-converted Hermes-flavour skill tree, committed (regenerated byscripts/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):
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.shworks on Windows under git-bash. A nativeinstall.ps1is 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 tosetup-wiki) - lay out
.tasks/with the canonical task board (delegated tosetup-tasks) - write
CLAUDE.mdwith 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.mdso cross-project layout drift stays debuggable - check whether the official
superpowers@claude-plugins-officialplugin is installed and, if not, print the install command — theuse superpowerstrigger 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.
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.
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.
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)
│ ├── <category>/<name>/ ← 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.