chore: add role agent definitions with pinned models #248

Closed
opened 2026-08-22 22:53:47 +00:00 by egullickson · 0 comments
Owner

Problem

An audit of the agent configuration found that no model enforcement exists anymore: commit c239bb9 deleted the old role-agent library and its enforce-agent-model.sh hook, but the hook registration was left dangling in settings.local.json (firing a nonexistent command on every subagent spawn), and no .claude/agents/ definitions replaced the deleted roster. Subagents therefore inherit the session model (opus) instead of running on cheaper pinned models.

Change

Add a role-based agent roster under .claude/agents/, one file per role, each with a frontmatter model: pin (the durable mechanism, replacing shell-hook enforcement). Each agent's prompt directs it to read the relevant .claude/skills/mvp-*/SKILL.md files before acting, so the skill library remains the single source of domain knowledge.

Agent Model Role
developer sonnet Scoped implementation, self-gates lint/type-check/tests
debugger sonnet Root-cause analysis with evidence; no fixes unless asked
quality-reviewer opus RULE 0/1/2 merge-gate review, read-only toolset
operator sonnet Deploys, rollbacks, backups, CI workflow changes
tech-writer sonnet Doc-sync and new docs under house style

Also updates the .claude/CLAUDE.md index (Agents table) and the root CLAUDE.md .claude/ row per doc-sync discipline. The dangling hook removal in settings.local.json is local-only (gitignored) and not part of this diff.

Acceptance criteria

  • Five agent definitions exist in .claude/agents/ with valid frontmatter (name, description, model; tools restricted for quality-reviewer)
  • Model pins: sonnet for developer/debugger/operator/tech-writer, opus for quality-reviewer
  • Every skill path referenced in agent prompts resolves to an existing SKILL.md
  • .claude/CLAUDE.md and root CLAUDE.md indexes updated
## Problem An audit of the agent configuration found that no model enforcement exists anymore: commit c239bb9 deleted the old role-agent library and its `enforce-agent-model.sh` hook, but the hook registration was left dangling in `settings.local.json` (firing a nonexistent command on every subagent spawn), and no `.claude/agents/` definitions replaced the deleted roster. Subagents therefore inherit the session model (opus) instead of running on cheaper pinned models. ## Change Add a role-based agent roster under `.claude/agents/`, one file per role, each with a frontmatter `model:` pin (the durable mechanism, replacing shell-hook enforcement). Each agent's prompt directs it to read the relevant `.claude/skills/mvp-*/SKILL.md` files before acting, so the skill library remains the single source of domain knowledge. | Agent | Model | Role | |-------|-------|------| | developer | sonnet | Scoped implementation, self-gates lint/type-check/tests | | debugger | sonnet | Root-cause analysis with evidence; no fixes unless asked | | quality-reviewer | opus | RULE 0/1/2 merge-gate review, read-only toolset | | operator | sonnet | Deploys, rollbacks, backups, CI workflow changes | | tech-writer | sonnet | Doc-sync and new docs under house style | Also updates the `.claude/CLAUDE.md` index (Agents table) and the root `CLAUDE.md` `.claude/` row per doc-sync discipline. The dangling hook removal in `settings.local.json` is local-only (gitignored) and not part of this diff. ## Acceptance criteria - Five agent definitions exist in `.claude/agents/` with valid frontmatter (`name`, `description`, `model`; `tools` restricted for quality-reviewer) - Model pins: sonnet for developer/debugger/operator/tech-writer, opus for quality-reviewer - Every skill path referenced in agent prompts resolves to an existing SKILL.md - `.claude/CLAUDE.md` and root `CLAUDE.md` indexes updated
egullickson added the
status
in-progress
type
chore
labels 2026-08-22 22:53:47 +00:00
egullickson added
status
review
and removed
status
in-progress
labels 2026-08-23 13:22:47 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: egullickson/motovaultpro#248