architect-review-live-calls

Installation
SKILL.md

Review an agent's live calls

Every other conversation read in this plugin is downstream of a problem someone already found — a QA ticket, a reported tool error, one bad call to turn into a test. This skill is the entry point that surfaces the problem: start from recent calls, end with clustered findings routed to a fix.

This skill owns the list→paginate→transcript fetch pattern. When another skill needs a sample of real calls, point at this one rather than reimplementing pagination and the PII rules.

This is a review of finished calls. Live in-flight audio over wss://.../v1/convai/conversations/{id}/monitor is a different thing and is not covered here.

Host https://api.elevenlabs.io, header xi-api-key: $API_KEY. The engineer supplies $API_KEY and $AGENT_ID. For an EU/IN/SG residency workspace the host is https://api.<eu|in|sg>.residency.elevenlabs.io and the key is workspace-specific. Sending a residency key to the global host fails with a clear message — Invalid API key: The API key used is for a data residency stack, however this server is a global server — so if you see that, switch hosts rather than doubting the key.

Two modes — pick one before fetching

Baselines live at a fixed path so a later run — even a different session — can find one without being told where to look: .architect-live-calls/<agent_id>-baseline.json, relative to the repo root. Check for that file before you fetch anything.

  • Launch sweep (default; use when the agent went live within roughly the last two weeks, or when no baseline file exists at that path for this agent). Question: is this thing working at all? Did calls complete, did tools fire, where do callers drop, is the first message landing. Small N, no baseline, no QA tickets to route into — findings go straight to a fix.
  • Drift check (use when the baseline file exists for this agent). Question: what changed? Compare this window's aggregates against the baseline and lead with deltas. Without a baseline a rate is not a finding — "12% of calls failed" means nothing on its own, so if the user asks for a drift check and no baseline file exists, run a launch sweep instead and write the baseline for next time.

State which mode you are running in one line before you start, and name the baseline path when you are running a drift check or writing a fresh baseline.

Installs
1
GitHub Stars
4
First Seen
Sep 27, 2026