Brummel 37482ed03d brainstorm: skill + grounding-check agent migrated
Seventh skill via the boss pattern. brainstorm is the
spec-generation hard-gate; grounding-check is its Step-7.5
read-only assumption-ratification reviewer.

Vocabulary substitutions:
- AILang → "this project"
- milestone → cycle
- Boss → orchestrator
- ailang-grounding-check → grounding-check
- "the AILang program" / ".ail Form-A" → "the user-facing
  program in the project's canonical authoring/consumer form"
- "Brummel (orchestrator) + Claude" → "orchestrator + Claude"

AILang-specific bits dropped or generalized:
- `docs/specs/<milestone>.md` / `docs/plans/` → `paths.spec_dir`
  / `paths.plan_dir`
- AILang feature-acceptance criterion's three specific clauses
  (LLM-author-reaches-for-it, measurable correctness/redundancy
  improvement, no-reintroduction-of-core-constraint-bug) →
  "the criterion declared in the project's CLAUDE.md", with the
  three typical-shape clauses retained as illustrative
- `design/contracts/0004-feature-acceptance.md` cross-ref →
  pointer to project CLAUDE.md
- "AILang's own thesis is structured concrete form over prose
  description" → "concrete code first, prose second" (the
  discipline survives without the project-thesis hook)
- The 2026-05-11 incident date → generic "recurring failure
  mode" framing (the discipline survives without the date)
- `tea issues create --repo Brummel/AILang` → "the project's
  issue-tracker create command (typically tea/gh)" with both
  examples shown
- `cargo test --list -p <crate>` / `cargo check` → "the
  project's test-list / type-check command" with Rust example
- `crates/*/tests/`, `crates/*/src/**/tests.rs`, `examples/`
  → derived from `paths.code_roots` and the project's examples
  / fixtures convention
- The `Spec-23 / prelude free-fn ne / typeclass elaboration`
  worked example → generic "spec section that proposes
  adding to a table or extending a pass without stating that
  the existing entries / passes cover the new shape"
- AILang skill-system index reference (`skills/README.md`)
  → `../../README.md` (plugin's top-level)
- "Form-A / .ail / monomorphised compare__T symbol" examples
  → generic "function names, type names, schema fields, pass
  names" example

Universal substance preserved verbatim:
- The hard-gate (3 lines) — NO IMPLEMENTATION UNTIL SPEC
  APPROVED
- Nine-step process (explore context → clarify Q&A →
  propose 2-3 approaches → apply feature-acceptance → present
  in sections → write spec → self-review → grounding-check →
  user-review-gate → hand off)
- "Concrete code first, prose second" discipline
  (the universally-applicable form of what was the
  AILang-thesis hook)
- "The criterion is unjudgeable without concrete code" rule
  (universal good practice; project's CLAUDE.md picks the
  specific criterion)
- Spec structure (Goal / Architecture / Concrete code shapes
  / Components / Data flow / Error handling / Testing strategy
  / Acceptance criteria)
- Step-7 self-review checklist (5 items)
- Step-7.5 grounding-check dispatch + PASS/BLOCK/INFRA_ERROR
  three-way classification + failure-mode procedure + re-
  dispatch on post-PASS edit rule
- All 8 Common Rationalisations rows
- All 9 Red Flags bullets
- grounding-check's six-step process incl. assumption
  extraction, search design, ratification classification,
  aggregate status computation
- grounding-check's Iron Law (5 lines), output format (exact
  layout preserved), 6 Common Rationalisations rows, 8 Red
  Flags bullets

The brainstorm is the largest skill in the migration (366 →
355 lines after substitutions). Calibrated discipline kept
intact per memory feedback_dont_strip_repeated_discipline.md:
"concrete code first" + grounding-check hard-gate + "re-
dispatch on post-PASS edit" are the load-bearing rules; all
survive verbatim except for project-specific identifiers.
2026-05-28 16:08:46 +02:00

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.

S
Description
No description provided
Readme 3.2 MiB
Languages
JavaScript 85.6%
HTML 6.8%
Python 4.4%
Shell 3.2%