Skip to content

[feature] Session Switchboard — first-class inter-session messaging via Medusa MCP #333

@Jason-Vaughan

Description

@Jason-Vaughan

What

First-class two-way messaging between open agent sessions in TangleClaw — sessions can ask each other questions, broadcast, and share context, replacing today's manual tmux send-keys "inject into the other session and hit enter" workaround. (Working name: Switchboard / inter-session messaging. The old joke name "BitchBoard" is retired.)

Approach — integrate Medusa over MCP (NOT reimplement, NOT a Claude plugin)

This is a third integration pattern distinct from PortHub (reimplement-native) and Prawduct (delegate-to-Claude-plugin): Medusa is already an MCP server that exposes exactly this feature, so TC connects to it over standard MCP. Medusa is the operator's own system (no third-party drift) and is already half-wired to TC (its A2A node self-registers in PortHub).

Live-proven (2026-06-12)

Started Medusa's A2A node on :3200 from the canonical repo (~/Documents/Projects/Medusa) and drove the MCP gateway (src/medusa/medusa-mcp-server.js) end-to-end:

  • ✅ MCP initialize + tools/list — standard MCP (protocolVersion 2024-11-05), 7 tools (medusa_hook/gaze/stone/census/craft/whisper/coil), so any MCP-capable harness (Claude Code, etc.) can drive it — multi-model, not Claude-locked.
  • ✅ Round-trip: medusa_stone (broadcast) → medusa_gaze read the message back through the live node.
  • ✅ No BiTCH involved (BiTCH is the retired ancestor); HMAC auth passed.

Integration surface for TC (the actual work — wiring, not remaking)

  1. Lifecycle: manage the Medusa A2A node (start/health-check/stop) as a TC-orchestrated service (like OpenClaw). It already leases its port via PortHub.
  2. Register sessions as reachable workspaces/peers: so messages actually route (live test showed 0/2 recipients because peers weren't reachable endpoints — presence ≠ deliverability today). This is the key wiring.
  3. Inject MCP config per harness: write the mcpServers entry (pointing at Medusa's gateway, not the dead BiTCH path) into each session's config — analogous to how TC generates CLAUDE.md. A per-session "enable Switchboard" toggle in the picker.
  4. Human surface: the Project Master ([feature] Project Master — a global AI session administrator on the landing page #331) is the natural place to watch/referee inter-session conversations; Medusa also ships a dashboard (:8181) as a starting UI.

Dependencies — Medusa-side fixes (filed on the Medusa repo)

The live test surfaced a punch-list now tracked as issues on Jason-Vaughan/Medusa: version source-of-truth, retire-BiTCH/duplicate-gateway cleanup, presence≠deliverability + ledger cleanup, structured MCP output (not just emoji prose), and implement-or-remove ignored tool params.

Cross-refs

Drafted from a live design + test session 2026-06-12.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions