What problem does it solve? Embedding a local email triage, drafting, and sending agent into a JavaScript or TypeScript app involves many failure-prone details: fetching and verifying the sidecar binary, spawning it with a session token, handling SSE event streams, and avoiding common integration mistakes like CORS blocks or missing auth tokens. This Skill provides a step-by-step playbook that gets the integration right the first time. ## Core Features & Use Cases - Sidecar Lifecycle Management: Download and SHA-256-verify the platform binary with fetchBinary, spawn it with startSidecar, and rely on automatic cleanup on process exit. - Typed Client Calls: Triage single messages or batches, search and prescan a connected Gmail/Outlook mailbox, draft and send with confirmation tokens, archive/quarantine with undo, and manage calendar events. - Streaming Agent Loop: Drive natural-language requests through query() with typed SSE events (status, tool_call, needs_input, final), mid-run user questions, and cancellation via cancelQuery. - Use Case: An Electron mail client spawns the sidecar in its main process, forwards the session token to the renderer over IPC, and lets users ask "find today's urgent mail and archive the promotions" with streamed progress. ## Quick Start Ask the assistant to integrate the @amd-gaia/agent-email package into your Node or Electron app, starting with fetchBinary and startSidecar and ending with a working triage call.