# skills A self-contained set of development-cycle skills and agents for Claude Code. Originally distilled from the AILang project's in-tree `skills/` directory and generalised so it can carry the same discipline across any project. The plugin is **mechanics**: pipeline shape, hard-gates, TDD, RED-first bug fixing, agent-template, working-tree-as-quarantine, status protocol. It does **not** know your project's paths, build commands, vocabulary, or domain-specific contracts. Those live in a small per-project profile file (`.claude/dev-cycle-profile.yml`) plus the project's `CLAUDE.md`. ## What's in the box Eight skills, each with the agents it primarily dispatches: | Skill | Trigger | Output | Mandatory? | |-------|---------|--------|------------| | `brainstorm` | New cycle starting | spec under the configured spec dir | Hard-gate before plan | | `planner` | New iteration within an open cycle | plan under the configured plan dir | Hard-gate before implement | | `implement` | Plan exists | code + tests, uncommitted in working tree | Standard iteration path | | `audit` | Cycle closing OR baseline drift suspected | drift report + regression report | Mandatory at cycle close | | `debug` | Bug observed | RED test in working tree + cause analysis | Mandatory RED-first for any bug | | `fieldtest` | Orchestrator-dispatched post-audit, surface-touching cycle | example fixtures + friction spec | Optional | | `docwriter` | API surface stable across N cycles | rustdoc / docstring sweep | Optional | | `boss` | User types `/boss` | autonomous-orchestrator session — dispatches the other skills until done-state or bounce-back | User-invoked, never auto-dispatched | Vocabulary is configurable. AILang calls a cycle a *milestone* and a sub-cycle an *iteration*; your project may call them *release* and *sprint*, or *epic* and *story*, or whatever fits. ## The two-layer split This repo (the **plugin**) carries everything that is universal: - Pipeline form: `design → plan → execute → review → close` - Hard-gates between phases - TDD as an independent inner-loop discipline - RED-first bug fixes - Agent template (frontmatter / Iron Law / standing reading / process / status / output / rationalisations / red flags) - Status protocol: `DONE / DONE_WITH_CONCERNS / PARTIAL / BLOCKED / NEEDS_CONTEXT` - Working-tree-as-quarantine and only-orchestrator-commits - main HEAD sacrosanct - No nested subagent dispatch (Claude Code platform constraint) - No orphan agents Your project carries a small **profile** that fills the slots: - Paths: spec dir, plan dir, design ledger, code roots, bench dir - Commands: build, test, lint, regression scripts - Vocabulary: cycle name, sub-cycle name, ledger-entry name - Naming: counter prefix vs date prefix vs flat, slug shape - Standing reading list: concrete files, per role - Git: issue tracker kind, close marker, main-protection policy - Pipeline customisations: which phases are mandatory, when optional ones fire See `docs/profile-schema.md` for the full schema and `templates/project-profile.yml` for a copy-and-fill starting point. ## Install See `INSTALL.md`. In short: clone, run `install.sh`, then drop a `dev-cycle-profile.yml` into each project that should use the plugin. ## Status Migration from AILang's in-tree `~/dev/ailang/skills/` is in progress. The `boss` skill is the landed pilot; the remaining seven skills follow. See `docs/migration.md` for the per-skill and per-agent migration checklists and the expected final layout.