Establishes the repository structure for the skills plugin: - README + INSTALL describing the two-layer split (plugin mechanics vs per-project profile) - docs/design, profile-schema, pipeline, agent-template covering the universal discipline constants and the profile slot model - templates/project-profile.yml as a copy-and-fill starting point - templates/CLAUDE.md.fragment with the baseline orchestrator rules a project can import - install.sh / uninstall.sh wiring skills/ + agents/ into ~/.claude/ via idempotent symlinks - skills/ and agents/ directories empty except for migration READMEs; the actual SKILL bodies and agent files migrate from ~/dev/ailang/skills/ in the next iteration. No skill or agent runs yet — this commit only stands up the structure and documents the substitution model.
3.2 KiB
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
Seven 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 |
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
This is the skeleton commit. The skill bodies and agent files
still need to be migrated from AILang's in-tree
~/dev/ailang/skills/ and generalised against this plugin's
profile schema. That migration is iteration 1.