5.7 KiB
Mission Manifest — CLI Unification & E2E First-Run
Persistent document tracking full mission scope, status, and session history. Updated by the orchestrator at each phase transition and milestone completion.
Mission
ID: cli-unification-20260404
Statement: Transform the Mosaic CLI from a partially-duplicated, manually-assembled experience into a single cohesive entry point that installs, configures, and controls the entire Mosaic system. Every Mosaic package gets first-class CLI surface. The first-run experience works end-to-end with no manual stitching. Gateway token recovery is possible without the web UI. Opt-in telemetry uses the published telemetry clients.
Phase: Complete
Current Milestone: —
Progress: 8 / 8 milestones
Status: completed
Last Updated: 2026-04-05
Release: mosaic-v0.1.0 (@mosaicstack/mosaic@0.1.0)
Success Criteria
- AC-1: Fresh machine
bash <(curl …install.sh)→ single command lands on a working authenticated gateway with a usable admin token; no secondary manual wizards required - AC-2:
mosaic --helplists every sub-package as a top-level command and is alphabetized for readability - AC-3:
mosaic auth,mosaic brain,mosaic forge,mosaic log,mosaic macp,mosaic memory,mosaic queue,mosaic storage,mosaic telemetryeach expose at least one working subcommand that exercises the underlying package - AC-4: Gateway admin token can be rotated or recovered from the CLI alone — operator is never stranded because the web UI is inaccessible
- AC-5:
mosaic telemetryuses the published@mosaicstack/telemetry-client-js(from the Gitea npm registry); local OTEL stays for wide-event logging / post-mortems; remote upload is opt-in and disabled by default - AC-6: Install → wizard → gateway install → TUI verification flow is a single cohesive path with clear state transitions and no dead ends
- AC-7:
@mosaicstack/mosaicis the solemosaicbinary owner;@mosaicstack/cliis gone from the repo and all docs - AC-8: All milestones ship as merged PRs with green CI, closed issues, and updated release notes
Milestones
| # | ID | Name | Status | Branch | Issue | Started | Completed |
|---|---|---|---|---|---|---|---|
| 1 | cu-m01 | Kill legacy @mosaicstack/cli package | done | chore/remove-cli-package-duplicate | #398 | 2026-04-04 | 2026-04-04 |
| 2 | cu-m02 | Archive stale mission state + scaffold new mission | done | docs/mission-cli-unification | #399 | 2026-04-04 | 2026-04-04 |
| 3 | cu-m03 | Fix gateway bootstrap token recovery (server + CLI paths) | done | feat/gateway-token-recovery | #411, #414 | 2026-04-05 | 2026-04-05 |
| 4 | cu-m04 | Alphabetize + group mosaic --help output |
done | feat/help-sort + feat/mosaic-config | #402, #408 | 2026-04-05 | 2026-04-05 |
| 5 | cu-m05 | Sub-package CLI surface (auth/brain/forge/log/macp/memory/queue/storage) | done | feat/mosaic-*-cli (x9) | #403–#407, #410, #412, #413, #415 | 2026-04-05 | 2026-04-05 |
| 6 | cu-m06 | mosaic telemetry — local OTEL + opt-in remote upload |
done | feat/mosaic-telemetry | #417 | 2026-04-05 | 2026-04-05 |
| 7 | cu-m07 | Unified first-run UX (install.sh → wizard → gateway → TUI) | done | feat/mosaic-first-run-ux | #418 | 2026-04-05 | 2026-04-05 |
| 8 | cu-m08 | Docs refresh + release tag | done | docs/cli-unification-release-v0.1.0 | #419 | 2026-04-05 | 2026-04-05 |
Deployment
| Target | URL | Method |
|---|---|---|
| Local tier (default) | localhost | mosaic gateway install — pglite + local queue |
| Team tier | any host | mosaic gateway install — PG + Valkey |
| Docker Compose (dev) | localhost | docker compose up for PG/Valkey/OTEL/Jaeger |
Coordination
- Primary Agent: claude-opus-4-6[1m]
- Sibling Agents: sonnet (standard implementation), haiku (status/explore/verify), codex (coding-heavy tasks)
- Shared Contracts:
docs/PRD.md(existing v0.1.0 PRD — still the long-term target), this manifest,docs/TASKS.md,docs/scratchpads/cli-unification-20260404.md
Token Budget
| Metric | Value |
|---|---|
| Budget | TBD |
| Used | ~80K |
| Mode | normal |
Session History
| Session | Runtime | Started | Duration | Ended Reason | Last Task |
|---|---|---|---|---|---|
| 1 | claude-opus-4-6 | 2026-04-04 | ~4h | context-budget | cu-m01 + cu-m02 merged (#398, #399); open questions resolved |
| 2 | claude-opus-4-6 | 2026-04-05 | ~6h | mission-complete | cu-m03..cu-m08 all merged; mosaic-v0.1.0 released |
Scratchpad
Path: docs/scratchpads/cli-unification-20260404.md