Why this page exists #
This page captures the Mirror system after the full documented staged integration stack was assembled into one preserved integration branch. The core runtime already existed; this checkpoint records how the human-facing layers, user utility seams, GUI starter lane, and voice reminder starter lane now sit together as one cohesive system without widening into premature product expansion.
Gateway, adapters, policy, actions, and runtime remain canonical
Read seams, create actions, and console consumers are assembled on one UI API spine
GUI and voice are integrated as starter contracts, not full product runtimes
Integrated system blueprint #
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1. Entrypoints / Hosts โ
โ โ
โ Compat CLI (legacy) Mirror CLI Mirror Service startMirrorService() โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 2. Core Runtime โ
โ โ
โ mirrordaemon runtime host provider plane observability sync โ
โ sessions execution model bridge metrics/diag peer state โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 3. Execution Plane โ
โ โ
โ mirror-gateway โ mirror-adapters โ mirror-runtime / mirror-actions โ
โ โ โ โ โ
โ โโโโโโโโโโโโโโ mirror-policy โโโโโโโโโโโโโ โ
โ โ โ
โ tool registry / native skills โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 4. State / Domain Plane โ โ 5. Contract Surfaces โ
โ โ โ โ
โ mirror-user-workspace โ โ mirror-ui-api โ
โ profile / preferences / notes / drafts โ โ discovery / forge / agents / runtime โ
โ recent-session / monk-context / heartbeat โ โ user reads / task create / reminder create โ
โ โ โ โ
โ mirror-task โ โ mirror-console โ
โ mirror-reminder โ โ browser consumers over ui-api / ops / sync โ
โ โ โ โ
โ file-backed personal state + domain logic โ โ service runtime / health / status routes โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โฒ โฒ
โ โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 6. Starter Lanes โ
โ โ
โ mirror-gui โ
โ boundary โ view-model โ data source โ HTTP source โ model loader โ
โ discovery bootstrap โ presentation โ continuity dashboard โ
โ consumes canonical UI API seams only โ
โ โ
โ mirror-voice-adapter โ
โ boundary โ transport contract โ chat/tool envelopes โ tool-response egress โ
โ reminder query/create helpers โ
โ consumes canonical adapter bridge only โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
What each band means #
CLI and service entrypoints are the doors. They launch the integrated Mirror system but do not own business logic themselves.
mirrordaemon, runtime host, provider plane, sync, and observability hold runtime truth, sessions, events, and health.
Gateway, adapters, policy, actions, runtime, and tools form the canonical execution path for chat and tools.
Workspace, task, and reminder layers keep personal state and utility flows grounded in file-backed, user-scoped storage.
UI API and console are the explicit human-facing seams over the system. The UI API is additive and discovery-driven.
GUI and voice are integrated as starter contracts/helpers only. They intentionally stop before full renderer/runtime/provider expansion.
User-layer spine #
Read seams
- Heartbeat
- Reminders
- Recent session
- Profile
- Preferences
- Monk context
- Notes
- Drafts
- Task list
- Workspace summary
Create seams
- Task create action
- Reminder create action
These write seams were merged by preserving the assembled read spine and unioning staged write intent without redesigning the API shape.
Starter lanes are real, but intentionally narrow #
mirror-gui
- Boundary doctrine
- View-model contract
- Data-source contract
- HTTP data source
- Starter model loader
- Discovery bootstrap
- Presentation contract
- Continuity dashboard contract
No renderer, no windowing/runtime choice, no mutation-flow invention.
mirror-voice-adapter
- Boundary doctrine
- Ingress/egress transport contract
- Canonical chat and tool envelopes
- Canonical bridge coverage
- Tool-response egress helper
- Reminder query/create helpers
No Alexa skill, no provider integration, no STT/TTS pipeline, no voice-specific runtime path.
Core integrated flows #
Client โ service โ gateway โ adapters โ policy โ runtime/actions โ provider/tool registry โ response, with daemon and observability spanning the path.
UI API โ workspace manager + task/reminder managers โ typed summary envelopes and task/reminder created envelopes on one additive discovery spine.
Browser console stays a consumer shell over UI API, gateway, sync, ops, and graph surfaces rather than becoming the source of truth.
Discovery bootstrap โ HTTP source โ model loader โ presentation / continuity dashboard structures. The renderer is intentionally deferred.
Voice ingress โ canonical chat/tool envelopes โ adapter bridge โ runtime/tool response โ voice egress, with reminder helper builders for lookup and create flows.
When branches touched shared seams, merges preserved the assembled spine and unioned staged intent instead of redesigning APIs.
Complete now vs intentionally deferred #
Complete now
- Docs/doctrine anchors
- Policy hardening chain
- User-layer read seams
- User-layer create actions
- Console consumers over read seams
- GUI starter contracts
- Voice starter contracts/helpers
Deferred by design
- Full GUI renderer/runtime/component tree
- Desktop runtime choice
- Richer GUI state model
- Alexa skill implementation
- Provider-specific voice integration
- STT/TTS pipeline
- Any new lane beyond the staged stack
Why this checkpoint matters #
The integrated stack matters because it turns scattered staged work into one preserved system branch with clear boundaries: canonical execution stays in the gateway/action/runtime path, personal utility lives on an additive user-layer UI spine, the console becomes a true consumer shell, and GUI/voice expansion now has disciplined starter contracts to build from later. It is the difference between ideas queued in branches and one coherent architecture standing in the repo.
Gateway + policy + runtime remain canonical
User reads/writes are assembled and test-covered
GUI and voice can grow later without breaking the center