ThresholdPrivate preview

EXECUTE, PAUSE, or BLOCK. Nothing unknown auto-runs.

A Go gateway that sits between an AI agent and its tools: every tool call is evaluated against declarative policy and routed. Approved actions execute, risky ones block, and everything unknown pauses for a human in Slack or the dashboard.

EXECUTEPAUSEBLOCK

the default decision is pause

The mechanism

Consequential actions pause for a human.

Each of these exists in the codebase. We name the mechanism so you can hold us to it.

  1. PAUSE is the default

    No matching policy, no matching condition, even an unknown operator: every ambiguous path resolves to PAUSE, never EXECUTE. The fail-safe is structural, not a convention.

  2. Human approval in Slack

    Paused calls post to Slack with interactive Approve / Reject buttons behind signed webhooks, deep-linked into a dashboard with live updates.

  3. Declarative policy conditions

    Rules like amount_exceeds, field_equals, and field_in_list match against the tool call’s actual input; the highest-priority match decides. Policies are cached in Redis with a Postgres fallback.

  4. Synchronous audit log

    Every decision is written append-only before the response returns. A pause produces two entries: the decision, and the human’s resolution.

What it does3 capabilities, all shipped

Per-org, per-agent routing

Tool calls route through org- and agent-scoped paths, authenticated with hashed API keys.

SDKs in three languages

Go, Python, and TypeScript SDKs wrap the gateway API (source in-repo; not yet published to registries).

Evaluated in memory

Policy is evaluated in memory against a Redis cache with a Postgres fallback, so the gate adds a thin layer in front of your tool calls rather than a round-trip to a separate service. We will publish real latency benchmarks before quoting numbers.

Where it standsIn private beta, deploy-ready. Not yet open source; open-sourcing is planned. Ask us for early access.

More from the studio

All products