From a8008138c8e5ef1a6bbcec84635b9d82c5c22cc6 Mon Sep 17 00:00:00 2001 From: "jason.woltje" Date: Wed, 24 Jun 2026 18:14:37 +0000 Subject: [PATCH] docs(fleet): record per-agent model switch in north star (#667) --- docs/fleet/north-star.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/fleet/north-star.md b/docs/fleet/north-star.md index 642036e..c377435 100644 --- a/docs/fleet/north-star.md +++ b/docs/fleet/north-star.md @@ -353,6 +353,25 @@ re-evaluate if isolation or write-volume demands it. - **Docs as projections:** `docs/TASKS.md` and `MISSION-MANIFEST.md` become generated exports of the DB, not hand-maintained. - **Sub-decision pending:** dedicated schema in existing PG instance (recommended) vs. dedicated PG instance. Revisit if isolation or write-volume demands it. +## Decisions of record (2026-06-24, with Jason) + +- **Per-agent model switch (operator-configurable, NOT a global lock):** model selection is + **per-agent**, never a host-global pin. Claude sessions MUST NOT be locked to a single model in + `~/.claude/settings.json`; each agent chooses its model independently. The plumbing already exists — + roster `model_hint` → `MOSAIC_AGENT_MODEL` → `start-agent-session.sh` appends `--model ` to that + agent's harness (claude or pi); settable today via `mosaic fleet add|edit --model `. + **North-star target:** surface this as a **per-agent model switch in the webUI** (with CLI/TUI parity + per MVP-X1) — read the roster, expose a per-agent model dropdown, write `model_hint` back, and restart + that one agent to apply. Unset = inherit the harness default. This **composes with** the budget + downgrade ladder (opus → sonnet → haiku, then Claude → Codex): the operator sets the per-agent model + _intent/ceiling_; budget pacing may downgrade within policy. Tracked as a Fleet `TASKS.md` entry under + the Phase-5 webUI surface. +- **Orchestrator runtime (confirmed live):** the **orchestrator and enhancer run Claude Opus 4.8 in the + Claude Code harness**; only workers (coder/reviewer) run pi/gpt-5.5. Consistent with the 2026-06-20 + "Claude reserved for Claude Code only" decision (the orchestrator runs _in_ Claude Code, not an + alternate Claude harness). Pi/gpt-5.5 as the orchestrator is permitted **only if proven** at least as + satisfactory; absent that proof, the orchestrator stays on Claude Opus 4.8. + ## Future enhancements (north-star, post-MVP — not on the MVP track) - **Mosaic Claude Discord Plugin** — a first-party Mosaic Discord connector that properly