52 lines
3.7 KiB
Markdown
52 lines
3.7 KiB
Markdown
# Project subagents
|
|
|
|
The project-level Claude Code subagents live in `./agents/`. They are intentionally few and have distinct ownership:
|
|
|
|
| Agent | Purpose | Write access | Default model |
|
|
| --- | --- | --- | --- |
|
|
| `fable-orchestrator` | frames, routes, and accepts verified work | no | Fable |
|
|
| `scout` | maps code and constraints | no | Haiku |
|
|
| `planner` | produces a minimal testable plan | no | Opus |
|
|
| `builder` | implements a named, scoped change | yes | Sonnet |
|
|
| `lexai-extension-dev` | LexAI-specific implementation (entrypoints, LLM proxy, key handling, selection/replace, Gitea/CWS release) | yes | Sonnet |
|
|
| `verifier` | independently checks acceptance tests | no direct file tools | Haiku |
|
|
| `critic` | adversarial review for high-risk work | no direct file tools | Opus |
|
|
| `security-auditor` | authn/authz, secrets, injection, deps, attack surface | `docs/attacksurface.md` only | Opus |
|
|
| `learning-steward` | turns proven mistakes into guardrails/evals | only lesson and eval artifacts | Haiku |
|
|
| `system-steward` | improves agents, skills, and role memory from evidence | operating artifacts only | Opus |
|
|
| `integrator` | combines independent named changes | yes | Sonnet |
|
|
|
|
## Use
|
|
|
|
Run Fable as the main session when the work needs coordination:
|
|
|
|
```powershell
|
|
claude --agent fable-orchestrator
|
|
```
|
|
|
|
`fable`, `opus`, `sonnet`, and `haiku` are version-flexible Claude Code aliases. They resolve to the newest enabled version for the current provider and account; this avoids leaving the project pinned to an obsolete model ID.
|
|
|
|
For a one-off specialist, invoke it in a normal Claude Code session, for example:
|
|
|
|
```text
|
|
@scout Map the code paths and tests relevant to [task]. Do not modify files.
|
|
@builder Implement the approved task contract for [task] in [paths].
|
|
@lexai-extension-dev Implement [task] in entrypoints/ respecting the message contract and key-handling rules.
|
|
@verifier Verify [task] against these acceptance tests: [tests].
|
|
@security-auditor Audit [change/component] for authz, injection, secrets, and attack-surface exposure.
|
|
@learning-steward Review this verified failure and decide the smallest durable prevention.
|
|
@system-steward Improve the relevant project agent or skill only from this evidence: [evidence].
|
|
```
|
|
|
|
For LexAI code (anything under `entrypoints/` or `src/`), prefer `lexai-extension-dev` over the generic `builder` — it knows the message contract, snapshot pattern, and key-handling rules. Use `builder` for repo-agnostic changes (config, tooling, docs). Use no more than one implementer on the same files. For low-risk, isolated work, use a normal Claude Code session instead of adding coordination overhead.
|
|
|
|
## Memory and skills
|
|
|
|
Fable, Planner, Builder, Verifier, Critic, Learning Steward, Integrator, and System Steward use project-scoped role memory. It is committed under `.claude/agent-memory/` when Claude Code creates it, so the team can review it. Fable also uses Claude Code Auto Memory for session continuity. Shared durable knowledge lives in `docs/MEMORY.md` (see the memory protocol in `CLAUDE.md`); role memory stays role-specific.
|
|
|
|
- `/resume-project` rebuilds verified working state after a new session, interruption, or compaction.
|
|
- `/memory-sync` consolidates durable knowledge into `docs/MEMORY.md`, dedupes, and enforces context caps (owner: Learning Steward).
|
|
- `/continuous-improvement` evaluates a proven workflow failure and sends agent/skill improvements to System Steward only when justified.
|
|
- `/dev-loop` runs a bounded autonomous maintenance loop (triage → one bounded task → full landing gates → clean stop).
|
|
- `/attack-surface` and `/prompt-injection-audit` keep security coverage current; `/self-model-audit` keeps the operator/project model honest.
|