Files
stack/packages/mosaic/framework/fleet
Jarvis 416d1c66c9
All checks were successful
ci/woodpecker/pr/ci Pipeline was successful
ci/woodpecker/push/ci Pipeline was successful
feat(fleet): config-type presets + AI-free init wizard
Add four config-type preset rosters (general, coding, research, hybrid) with
exactly one orchestrator each using the claude runtime; worker agents use pi
with model_hint openai-codex/gpt-5.5:high. Extend `mosaic fleet init` with a
readline-based interactive wizard (AI-free) that prompts for preset selection
when no --profile is given and stdin is a TTY; falls back to "general" with a
note when non-interactive. Export parseInitProfile, resolvePresetFilename,
countOrchestrators, FLEET_PROFILES, and FleetProfile for testability. Add 24
new tests covering preset shape, sanitization, wizard TTY/non-TTY paths, and
R8 idempotency. All gates green: test (428/428), typecheck, lint, prettier,
and the sanitization gate.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RMoEx7hfdFGjUiCHuN1RRi
2026-06-21 17:59:53 -05:00
..

Mosaic Fleet Rosters

The local fleet canary uses a product-owned roster schema with site-owned roster files. Product examples live here; active local rosters should live outside the package, normally at:

~/.config/mosaic/fleet/roster.yaml

The default tmux socket is mosaic-factory so fleet commands do not touch the default tmux server.

Examples

  • examples/minimal.yaml starts one local canary slot.
  • examples/local-canary.yaml starts a small generic dogfood fleet.

Initialize a roster:

mosaic fleet init --profile minimal --write
mosaic fleet install-systemd
mosaic fleet start
mosaic fleet verify