How harnessmd/munder-difflin works
Munder Difflin is a local-first Electron desktop harness that turns terminal coding CLIs into a coordinated agent team. The user configures providers and starts work through the desktop UI; Michael, the orchestrator, assigns and routes tasks to agents running in real pseudo-terminals. Agents exchange mailbox messages and use persistent memory, while the shared office floor visualizes their activity. The README also documents schedules, inbound webhooks, integrations, and realtime voice features. Internal edges are limited to relationships stated in the README; several implementation details are unsampled.
Main entry points: pty.ts Agent processes · hive.ts Hive orchestrator · App.tsx Desktop app · memory.ts Agent memory
Components 27
Desktop experience
- Desktop app
src/renderer/src/App.tsx - Office floor
src/renderer/src/scene/office/OfficeFloor.tsx - Terminal UI
src/renderer/src/components/TerminalView.tsx - Provider settings
src/renderer/src/components/AiEnginesSettings.tsx - App configuration
src/main/config.ts - App updates
src/main/updater.ts - UI controls
src/renderer/src/components/PixelButton.tsx
Agent runtime
- Provider catalog
src/shared/agentProvider.ts - Agent processes
src/main/pty.ts - Coding CLIs
- Tool catalog
src/shared/toolCatalog.ts - Workspace files
src/main/fs.ts
Coordination
- Hive orchestrator
src/main/hive.ts - Agent roster
src/main/roster.ts - Agent memory
src/main/memory.ts - Knowledge layer
src/main/knowledge.ts - Agent mailboxes
src/main/hive.ts - Agent hooks
src/main/hooks.ts
Extended capabilities
- Trigger contracts
src/shared/triggers.ts - Webhook server
src/main/webhook.ts - Integrations
src/shared/integrations.ts - Realtime voice
src/main/realtimeActions.ts - Agent skills
src/main/skills.ts - Analytics
src/main/analytics.ts - Telemetry
src/main/telemetry.ts - Usage tracking
src/main/usage.ts
Other components
- User
Connections 15
- User → Desktop app: uses
README.md - Provider settings → Provider catalog: chooses provider
README.md - Desktop app → Hive orchestrator: requests work
README.md - Hive orchestrator → Agent processes: assigns tasks
README.md - Agent processes → Coding CLIs: runs in PTY
README.md - Coding CLIs → Agent processes: returns terminal output
README.md - Agent processes → Terminal UI: renders sessions
README.md - Desktop app → Office floor: shows agents
README.md - Hive orchestrator → Agent roster: coordinates agents
README.md - Hive orchestrator → Agent mailboxes: routes messages
README.md - Agent processes → Agent memory: reads memory
README.md - Agent processes → Agent mailboxes: drains inbox
README.md - Agent memory → Knowledge layer: semantic recall
- Trigger contracts → Webhook server: defines endpoints
README.md - User → Realtime voice: dictates and transcribes
README.md