Expand description
The AI supervisor: an idle tokio task owning the provider child process,
the ACP Connection, and the active SessionId (AI-1b).
Agent conversation output (message/thought chunks, tool calls) folds into
the structured ConversationStore (AU‑1); trace (session lifecycle,
handshake, errors) flows into the AiLogger’s per-process rings – never
into *messages*, never through tracing::info!. AiClientHandle::spawn
is the crate’s entry point: it starts this task and returns the clone-able,
non-blocking handle the editor thread talks to.