Questions worth asking first.

Including the ones about latency, privacy and failure that decide whether something like this is usable in front of a real client.

How is this different from a meeting notetaker?

A notetaker tells you what happened after it happened. Second Chair intervenes during the conversation — the warning about a prohibited phrase arrives while the professional is still in the sentence, in time to correct it. The record it produces afterwards is a by-product, not the point.

Does the client hear the warnings?

No. Warnings go to a private channel intended for an earpiece. In the browser demo that channel is panned hard left so you can hear the separation with headphones on; in a real deployment it is a separate audio device. The room channel is the only thing anyone else hears, and it only ever speaks when the agent is addressed by name.

What stops it interrupting a normal conversation?

An addressivity check runs on every finalised turn and is deliberately biased toward silence. It answers a direct address, and it recognises that being talked about in the third person is not a summons. Across the twenty-turn reference call, the agent speaks aloud twice and stays silent eighteen times.

How fast is the warning, really?

The rule tier measures 0 ms across a full call and is budgeted at under 15 ms per scan, because it is deterministic pattern matching running locally with no network call. The contextual review that follows takes a few seconds and is labelled as a second-tier finding, so it is never counted against the fast path.

Where does personal data go?

Redaction is the first stage of the pipeline, before compliance, before display, before storage, and before any model sees the text. Social security numbers spoken digit by digit are caught alongside written ones. There is no configuration in which raw personal data reaches the audit log.

Which speech and language models does it use?

Transcription and real-time diarization run on AssemblyAI's Universal-Streaming API. The contextual review and the spoken answers run on a language model through one of three interchangeable providers — Groq, the AssemblyAI LLM Gateway, or Anthropic directly — chosen by whichever credential is present.

What happens if the language model is unavailable?

The call continues. The contextual tier is best-effort by design: a rate limit or an outage costs one nuanced finding, never the session. The deterministic rule tier requires no model at all and keeps catching every pattern violation.

Can the rule pack be changed?

Yes. Rules are a YAML file — an identifier, a severity, the regulation cited, the phrasing to suggest, and the patterns that trigger it. The nine shipped rules are a credible FINRA and SEC starting point for demonstration, not a compliance product. A real deployment needs a pack reviewed by counsel.

What does a deployment actually involve?

Three things. A rule pack for your jurisdiction and product set, reviewed by your compliance function — rules are a YAML file, so this is configuration rather than engineering. A connection to wherever your client records live, replacing the fixture the demo answers from. And a decision about audio capture: a single room microphone works, but per-speaker channels give cleaner separation and are worth it for recorded calls.

Why is the demo slow to load?

It runs on a free container that sleeps after about fifteen minutes of inactivity, so the first request has to wake it — roughly forty seconds. Everything after that is instant. The status indicator on this page tells you which state it is in before you click.

The fastest answer is the demo

Two minutes in the browser explains more about the two-channel idea than any paragraph here does.

Run a callRead the sourceChecking the backend