Repository navigation
v0.15.0 — :investigator cohort + per-cohort default-model axis
v0.15.0 — 5 cohorts + per-cohort default-model axis (cost-drop release)
One feature (feature/cohort-taxonomy-v3, ADR-M010-A M010.1 amendment) grows the cohort taxonomy from 4 → 5 and binds each cohort to a default model — so presets now tune both axes (model and effort) per role in one flag. Ships a measurable cost reduction with zero reasoning regression on :planner / :adversarial paths.
Headline
- New
:investigatorcohort —debugger,debug-session-manager,user-profilersplit out of:verifier. Hypothesis-driven investigation of runtime/behavioral state is a distinct reasoning shape from static artifact verification. - Per-cohort default-model field — each cohort now declares a default model in
pkg/.aihaus/skills/aih-calibrate/annexes/cohorts.md, informed by Anthropic's models overview:
| Cohort | Default model | Default effort | Rationale |
|---|---|---|---|
:planner |
opus | high (xhigh for binding-4) | "Complex reasoning + agentic coding" |
:doer |
sonnet | high | "Speed-intelligence balance" (daily driver) |
:verifier |
haiku | high | "Near-frontier intelligence, fastest" — boolean artifact checks |
:investigator |
sonnet | high | Hypothesis-driven reasoning, not artifact checks |
:adversarial |
opus | high/max | Binding review; preset-immune per ADR-M008-C/M010-A |
- Shipped distribution: v0.14.0
32 opus / 11 sonnet / 0 haiku→ v0.15.016 opus / 21 sonnet / 6 haiku. Roughly 30-40% cost reduction on an average multi-milestone run.
What changed
- 16 agents moved from opus to sonnet or haiku per new cohort defaults (8
:doeropus→sonnet; 4:verifieropus→haiku; 2:verifieropus→sonnet overrides —nyquist-auditor+ui-auditor; 2:investigatoropus→sonnet —debugger,debug-session-manager). - 2 additional
:verifieragents moved sonnet→haiku (doc-verifier,ui-checker). - Preset map rewritten (
annexes/presets.md) — each preset now expresses 5 cohort tuples + bounded### Overridesblock.balancedpreset on clean v0.15.0 install = zero-diff no-op (AC-07 relative to v0.15.0).cost-optimizedpushes:verifier+:investigatortomediumeffort for maximum cost reduction. - Two
:verifieroverrides retained on sonnet:nyquist-auditor(writes + iteratively debugs minimal behavioral tests — code-gen surface)ui-auditor(6-pillar visual audit — needs vision + aesthetic judgment)
- Smoke-test Check 28 updated to exercise
:investigatorcohort row in the v2 sidecar round-trip.
Binding decisions
- ADR-M010-A M010.1 amendment (new, appended to
.aihaus/decisions.md) — formalizes 4 → 5 cohorts + per-cohort default-model field. Additive extension, not supersession. Preserved:- ADR-M008-A amendment — cohort-scoped
model:edits; per-agent dual-axis escape hatch. - ADR-M008-C / M010 Decision (d) —
:adversarialcohort preset-immunity, 4 members unchanged (plan-checker,contrarian,reviewer,code-reviewer). - ADR-M009-A — sidecar ownership (user-owned, never-committed, absolute values, schema-gated). Schema v2 additive; new
:investigatorcohort name accepted; older readers warn+skip unknown rows.
- ADR-M008-A amendment — cohort-scoped
Usage
New cohort CLI
# Downgrade :verifier cohort to haiku explicitly (matches new default)
/aih-calibrate --cohort :verifier --model haiku --effort high
# Tune :investigator specifically
/aih-calibrate --cohort :investigator --model sonnet --effort medium
# Apply the new cost-optimized preset (haiku verifiers + sonnet investigators)
/aih-calibrate --preset cost-optimizedRead-only audit
/aih-calibrate --inspectPhase-1 report now includes cohort membership for all 43 agents plus the default-model column (GFM pipe table, no Unicode box-drawing — fix from v0.14.0).
Cohort membership
:planner(17) — analyst, architect, planner, product-manager, roadmapper, eval-planner, domain-researcher, phase-researcher, project-researcher, ai-researcher, framework-selector, ux-designer, ui-researcher, advisor-researcher, assumptions-analyzer, brainstorm-synthesizer, research-synthesizer:doer(11) — implementer, frontend-dev, executor, code-fixer, doc-writer, intel-updater, test-writer, notion-sync, project-analyst, codebase-mapper, pattern-mapper:verifier(8) — verifier, integration-checker, security-auditor, doc-verifier, eval-auditor, nyquist-auditor, ui-auditor, ui-checker:investigator(3, new in v0.15.0) — debugger, debug-session-manager, user-profiler:adversarial(4, preset-immune) — plan-checker, contrarian, reviewer, code-reviewer
Full (cohort, model, effort) per agent: pkg/.aihaus/skills/aih-calibrate/annexes/cohorts.md.
Upgrade notes
v0.14.0 → v0.15.0 — distribution shift, not regression
- First
/aih-calibrate --preset <any>after upgrading will mutate frontmatter for the 16 agents whose cohort defaults changed. This is intentional — the v0.15.0 cost-drop is the point of this release. - If you were running
--preset balancedon v0.14.0 and you want the v0.15.0balanceddistribution, simply re-run/aih-calibrate --preset balancedafter update. - If you want to preserve v0.14.0's opus-heavy distribution on v0.15.0, apply
--preset quality-firstor use explicit per-agent overrides.:adversarialmembers never change.
Schema v2 additive — v1 sidecars still restore
- v0.13.0
schema=1sidecars continue to restore byte-identically on v0.15.0 (unchanged from v0.14.0). - v0.14.0
schema=2sidecars withoutcohort.investigator.*rows parse fine — v0.15.0 reader treats missing cohort rows as "use cohort defaults". - First
/aih-calibraterun on v0.15.0 writes a v2 sidecar that includescohort.investigator.*rows when relevant.
Known implications
- Agents that were running at
effort: xhighandmodel: opuspre-v0.15.0 may respond slightly faster atmodel: sonnetbut with less deliberation. The:plannercohort (17 members including all planning + research agents) stays on opus — the reasoning-critical path is untouched. :verifieragents at haiku may produce slightly terser findings but catch the same failures; multiple M010 smoke tests verify this.
Claude Code requirements (unchanged)
effort: xhighrequires Claude Code ≥ v2.1.111. Older releases silently fall back toeffort: high.permissions.defaultMode: autorequires Claude Code ≥ v2.1.83. Older releases ignore the field.
Deferred / follow-up
- R11 (carried from M009) — pre-existing
update_aihaus_dircrash window. Out of scope; dedicated plan if prioritized. - R12 (carried from M009) — pre-v0.13.0 hand-edited frontmatter migration. One-time user action; documented in
state-file.md. - Per-cohort effort-only CLI (
--cohort :<name> --effort Xwithout--model) — currently rejected by D-2 (both axes required). Could relax in a future minor bump if user feedback warrants it. haiku-doerspreset — proposed during M010 planning, not shipped. Candidate for v0.16.0 if haiku-tier:doerperformance proves acceptable in real use.
Full changelog
Commit: 14f2072 feat(calibrate): split :investigator cohort + add per-cohort default-model axis (v0.15.0) on feature/cohort-taxonomy-v3.
See ADR-M010-A M010.1 amendment (local / gitignored — on-disk file in the dogfood install) for the formal decision record.