index
The intent client's host-agnostic capture + transport runtime — the live half of what the retired dev overlay carved out for its two hosts (copied here in the overlay retirement; the original is deleted — read it in git history).
The discipline every module keeps: a DOM-free, framework-free core (a state machine, an algorithm, a batching loop) with the thin browser edge injected as a dependency (PcmSource, VideoSamplerDeps.captureFrame, WireDeps), so the cores run in plain Node under Vitest with a fake edge and the real edge is supplied only in a live tab. Losing that split makes this untestable — keep it.
This root entry is the shared substrate; the jobs ride subpath entries:
./locator— the component locator (screenshot-rect → components → source, off the source-processor stamps)./talk— the audio stack: mic → PCM (AudioWorklet), REST segments, realtime PCM streaming, TTS playback with barge-in, offline transcriber./video— the screen-share frame sampler over a warm capture stream./selection— the "select on the page, then ask about it" watcher./wire— the per-thread socket: batched event log, shots/audio/PCM uploads, lowered echoes merged back in./thread— the host-agnostic intent-thread adapter over./protocol's socket client
Interfaces
- Ack
- ErrorMessage
- IntentErrorInput
- IntentSocket
- IntentThread
- LoweredPromptMessage
- OpenThreadOptions
- ServerMessage
- WebSocketLike
Type Aliases
Variables
Functions
References
ACTOR_STORAGE_KEY
Re-exports ACTOR_STORAGE_KEY
ClientMeta
Re-exports ClientMeta
collectClientMeta
Re-exports collectClientMeta
CollectClientMetaOptions
Re-exports CollectClientMetaOptions
getInstrumentation
Re-exports getInstrumentation
PageInstrumentation
Re-exports PageInstrumentation
pageTabRecord
Re-exports pageTabRecord
PageTabRecord
Re-exports PageTabRecord