Reference

IPC surface

The main process exposes fifteen IPC namespaces. The renderer reaches them only through window.uct.*; every channel has a matching ipcMain.handle that validates input.

  • ipc/fs — project inspection, env masking, file read/write with size caps, skill/agent/rule discovery.
  • ipc/terminal — node-pty PTY sessions, data + exit channels.
  • ipc/process — spawned dev servers, destructive-command refusal, detached process-tree kill.
  • ipc/qwen — local open-source runtime chat + NDJSON stream + abort.
  • ipc/models — multi-provider stream (local open-source runtime, cloud providers, OAuth CLI).
  • ipc/secrets — safeStorage-encrypted provider keys.
  • ipc/playwright — smoke + step runner + screenshot.
  • ipc/domAgent — CDP attach to the preview webview.
  • ipc/network — CDP request capture.
  • ipc/codeIndex — regex symbol extraction + search, SQLite snapshot.
  • ipc/agentTools — read-oriented exec allowlist + grep.
  • ipc/mcp — stdio MCP client (JSON-RPC 2.0).
  • ipc/git — status, branch, log, push, fetch.
  • ipc/capture — window screenshot, data-URL save.
  • ipc/auth — Claude CLI detection, OAuth setup.

Full architecture: Architecture.