26e9630496
The profile was never parsed — it was prose the skill bodies told the model to read, so most slots were dead, constant across every project, or fiction (the whole pipeline block, including the "tdd is opt-in" claim, was enforced by nothing). Split it in two: constants become fixed conventions named directly by the skills (new docs/conventions.md), and the few genuinely per-project facts move to each project's CLAUDE.md under '## Skills plugin: project facts'. tdd/fieldtest/docwriter are now always available; the only behavioural toggle left is spec auto-sign. Delete docs/profile-schema.md and templates/project-profile.yml; add docs/conventions.md and a project-facts section to templates/CLAUDE.md.fragment; rewrite all SKILL/agent prose and the pipeline/design/migration/README/INSTALL docs accordingly.
64 lines
1.8 KiB
Markdown
64 lines
1.8 KiB
Markdown
# Install
|
|
|
|
## Prerequisites
|
|
|
|
- Claude Code with `~/.claude/` writable
|
|
- bash or any POSIX shell to run `install.sh`
|
|
|
|
## One-time global install
|
|
|
|
```sh
|
|
git clone <repo-url> ~/dev/skills
|
|
cd ~/dev/skills
|
|
./install.sh
|
|
```
|
|
|
|
`install.sh` creates symlinks from `~/.claude/skills/` and
|
|
`~/.claude/agents/` into this repo. Claude Code discovers them
|
|
at session start under user-level skill and agent registries,
|
|
so they become available in every project without further setup.
|
|
|
|
To uninstall:
|
|
|
|
```sh
|
|
~/dev/skills/uninstall.sh
|
|
```
|
|
|
|
## Per-project activation
|
|
|
|
There is no profile file. A project activates the plugin through its
|
|
own `CLAUDE.md` — which the skills read as standing reading on every
|
|
dispatch. Two things go in it:
|
|
|
|
1. **Project facts** — the handful of mechanical facts the skills
|
|
consume (code roots, build/test command, issue-tracker slug, …),
|
|
under a `## Skills plugin: project facts` heading.
|
|
2. **Sittenkodex** — feature acceptance criteria, anti-patterns the
|
|
project has earned the hard way, domain-specific contracts.
|
|
|
|
A starter for both lives in `templates/CLAUDE.md.fragment`: the
|
|
universal discipline sentences (only-orchestrator-commits, main
|
|
sacrosanct, …) plus a commented `## Skills plugin: project facts`
|
|
template. Copy what you need into the project's `CLAUDE.md` and fill
|
|
it in:
|
|
|
|
```sh
|
|
$EDITOR <project-root>/CLAUDE.md # paste from templates/CLAUDE.md.fragment
|
|
```
|
|
|
|
Everything the plugin does *not* read from project facts is a fixed
|
|
convention (spec dir `docs/specs`, 4-digit naming, the pipeline graph,
|
|
…) documented once in `docs/conventions.md` and `docs/pipeline.md` —
|
|
not configurable per project.
|
|
|
|
## Update
|
|
|
|
```sh
|
|
cd ~/dev/skills && git pull
|
|
```
|
|
|
|
Symlinks pick up the changes automatically. If new skills or
|
|
agents have been added, re-run `install.sh` to add the new
|
|
symlinks (it is idempotent and will not overwrite existing
|
|
ones).
|