Architecture
System overview
A high-level map of the local-first desktop clients, Rust proxy, storage layer, provider upstreams, and release automation.
Runtime shape
tether capture -- <agent command>
-> wrapper starts or uses local proxy
-> source adapters normalize agent events
-> SQLite trace database
-> macOS or Linux desktop execution graphThe proxy is one capture path, not the whole product. Tether also ingests local logs and adapter events, stores normalized execution evidence locally, and serves a local REST API consumed by the macOS and Linux apps.
Module map
| Surface | Responsibility |
|---|---|
| tether capture | Wrap local agent commands and coordinate proxy or adapter-based capture. |
| core/proxy/src/gateway | Provider routing, upstream forwarding, cache hit responses, stream completion. |
| core/proxy/src/trace | Capture, summarize, persist, query, replay, rollback evidence, and session lifecycle. |
| apps/macos/Sources/Core | Shared trace models and reducer state. |
| apps/macos/Sources/Networking | Proxy API, local launcher, Keychain, and source-log ingestion. |
| apps/macos/Tether/Features | App shell, graph, sidebar, inspector, settings, and welcome UI. |
| apps/linux | Tauri shell, React graph, inspector, settings, and Linux sidecar proxy control. |
| apps/web | Marketing site and public documentation pages. |