Skip to content

Phase 3 — Unify the Command Bus (UI + agent) #18

Description

@ozgesolidkey

Part of #14. Ref: docs/ARCHITECTURE_V2.md §3 (the key idea).

Define every capability ONCE as a typed command; IPC, localhost HTTP (agent), and in-process calls become transports over one CommandBus. The MCP server becomes a thin adapter.

Tasks

  • Define shared/commands.ts typed command contract (doc.search, doc.getLines, analyze.run, triage.recipe, …).
  • CommandBus + transports: ElectronIPC, HTTP, in-proc.
  • Route renderer feature calls and api-server endpoints through the bus.
  • Collapse duplicated handlers (e.g. trends exist in both main IPC and api-server today).
  • MCP server re-expressed as a bus adapter.

Done when: one definition per capability; agent has automatic parity with the UI. (The triage recipe engine already previews this pattern.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions