Skip to content
The product

Six surfaces over one governed decision.

Regent sits between your AI and outbound channels, enforcing your rules before an engagement becomes a real-world action. What an operator actually works with is a feed of governed decisions, the receipt behind any one of them, the policy that produced it, and the health of the channel it went out on.

The outcome vocabulary

Eight terminal states, and none of them is a shrug.

The same table drives the API, the console, the audit record and the billing ledger. A state never quietly becomes a different one to make a dashboard look tidier.

SENTOutcome: sent

Dispatch authorized and accepted by the provider.

HOLD · TerminalOutcome: terminal hold, not sent

Terminal hold · no dispatch. Future outreach requires a new customer-triggered request.

SUPPRESSEDOutcome: suppressed, not sent

Suppression active for this subject and intent. It ends only on a trigger-fingerprint change, an authorized clear, or TTL expiry.

ESCALATEDOutcome: escalated to a named human, not sent

Outreach blocked. The named human escalation target was alerted.

DEFERREDOutcome: deferred, customer re-push required, not queued

Operation ended · no queue · customer re-push required.

PROVIDER REJECTEDOutcome: rejected by the provider, not delivered

The provider rejected the dispatch. Retry behaviour follows the declared retry class.

SEND UNCONFIRMEDOutcome: send unconfirmed, provider acceptance unresolved

Provider acceptance unresolved · no blind retry · investigation required.

ERROROutcome: error, controlled failure

A controlled failure inside the decision path. Recorded, not billed, not silently retried.

SEND UNCONFIRMED is the one people ask about. When the provider send response is lost, no provider-backed correlation exists. Matching on recipient and timestamp is a heuristic that can support investigation, and it never establishes acceptance. The state stays unknown until a provider-supported identifier resolves it, or an operator resolves it manually. There is 1 such operation in the demo dataset — read the receipt.

Surfaces

What an operator sees.

Each of these is live in the synthetic demo console. The descriptions below are generated from the same fixtures the console renders, so they cannot drift.

01

Decision Feed

Every governed operation, including the ones that did not send.

  • Outcome — sent, held, suppressed, escalated, deferred, provider-rejected, send-unconfirmed or error.
  • Subject pseudonym, never a raw recipient address.
  • Policy version in effect at decision time.
  • Channel the operation targeted.
  • Received by Regent and resolved times, on Regent's clock.
  • An explicit indicator when provider state is still unresolved.
14 operations in the demo datasetOpen in the demo console →
02

Decision Receipt

The evidence for why this person was — or was not — contacted.

  • Context gates: contactability, crisis flag, global opt-out.
  • Whether the judgment engine was invoked at all, and the proposal when there is one.
  • Governance gates: consent, content policy, recent human contact, frequency, window.
  • Dispatch state and provider acceptance, including unresolved.
  • Escalation state, named target and acknowledgment.
  • Evidence row: trace id, integrity status, signed checkpoint — tamper-evident with governed redaction.
One component renders all five canonical statesOpen in the demo console →
03

Policy

The rules that stopped the send, in the order they run.

  • Pre-judgment controls — the hard stops that run before the AI sees the case.
  • Post-judgment controls — what runs after the proposal and before any dispatch.
  • The named escalation target and its acknowledgment SLA.
  • Which channels the policy governs.
  • The active version, and retired versions kept so historic decisions still resolve.
  • Read-only in this lane: policy mutation is a provisioning capability with its own contract.
3 policy versions in the demo datasetOpen in the demo console →
04

Escalations

What happens after a hard stop resolves to a human.

  • Named, acknowledgment-capable target — not an inbox nobody owns.
  • Acknowledgment SLA, and what happens when it expires.
  • The fallback ladder, step by step, with timestamps.
  • The named operator alarm as a distinct terminal state.
  • Delivery, acknowledgment and resolution kept separate.
4 escalations across all four ladder statesOpen in the demo console →
05

Suppressions

Why this subject and intent stopped being contacted, and how that ends.

  • Subject and intent the suppression covers.
  • The request that created it.
  • The trigger fingerprint — the normalised fields whose change resolves the reason.
  • Expiry, status, and the exact reason an ended suppression ended.
  • Omission from a later snapshot never clears a suppression, and the surface never implies it does.
4 suppressions covering all three deterministic exitsOpen in the demo console →
06

Channel Health

The state of your own sending identity, without ever showing a secret.

  • Masked sender only.
  • Connection state: active, degraded, pending, expired, disconnected.
  • Webhook verification state.
  • Template sync health, and which template is paused.
  • Token expiry, so a rotation is visible before it becomes an outage.
  • Provider-event freshness.
3 connections, secrets held in the vaultOpen in the demo console →
Scope

What Regent is, and what it is not.

The fastest way to understand a governed action layer is usually to hear what it refuses to be.

Regent is

  • A governed action layer between probabilistic judgment and consequential outbound action.
  • A deterministic gate layer that runs your rules after the AI proposal and before any send.
  • An evidence system: every decision — including the ones that did not send — leaves a receipt.

Regent is not

  • Not a campaign optimizer. Regent does not try to raise your send rate.
  • Not a replacement CRM or ESP. You keep your systems of record.
  • Not merely a post-hoc archive. The gates run before the action, not after it.
  • Not generic policy-PDF management. The rules are executable and they are what stops the send.
See it working

The console is public and synthetic.

No login, no credential, no connection to a backend — synthetic demonstration dataset. not production telemetry. Walk the feed, open any receipt, read the policy that produced it.

Building against it? The integration contract →