Skip to content

Internals

How Cue is wired internally — for contributors who need to change behavior. Most of these pages mirror the matching section of CLAUDE.md; update both when changing the subsystem.

Subsystem map

mindmap
  root((Cue))
    Menu bar / popup
      Hotkey path
      Selected text capture
      Suggest popup (Opus)
    Streaming recorder
      ocap subprocess
      Pruner (keyframes)
      Evictor (retention)
    Digest pipeline
      Frame selector
      Image preprocess
      Cloud or local backend
      PII output scrub
    Memory
      Opus rewrite
      memory.md
      RAG injection on hotkey
    Privacy pause
      5 reasons
      Manual hotkey
      Purge cascade
      Red border overlay
    On-device vision
      llama-server subprocess
      Gemma 4 GGUF + mmproj
      Fail-closed policy
    Platform abstraction
      cue.platform
      CGEventTap / pynput
      AX / UIA
    Preferences
      Subprocess + IPC-via-disk
      Apply / Revert
      File-lock single instance

Pages

Architecture overview →   project layout, shared modules, top-down map of the menu-bar process and its subprocesses.

Streaming recorder →   ocap subprocess, rotator, pruner, evictor, digest threads.

Digest pipeline →   frame selection, image preprocessing, cloud vs local backend decision, fail-closed policy gate, PII output scrub.

On-device vision →   bundled llama-server, Gemma 4 manifest, lockdown rules, Apple Silicon Metal bf16 caveat.

Memory →   how Opus maintains memory.md, the RAG injection point on the hotkey path.

Prompts →   every Claude prompt in the app, sourced from src/cue/prompts.py.

Privacy pause →   reason set, monitor/controller split, pause-entry sequence, thread model + lock ordering.

Platform abstraction →   what lives in cue.platform.{macos,windows} and the key behavioral differences.

Preferences subprocess →   the Settings window IPC model, Apply/Revert flow, file-lock single instance.