The first field an agent should read. False means stop before acting.
Check before you act.
The API lets systems check before they reply, approve, or act.
Send communication in. Get a governed decision, read action_gate.allowed first, then read signal and safest_next_move. Keep audit references available for later review.
Read the decision before anything else.
- Before replying to a message that may imply agreement.
- Before sending an AI-generated reply on someone's behalf.
- Before signing or approving a document.
- Before acting on a public claim with legal, reputational, or money impact.
- Casual low-consequence messages.
- As a substitute for legal advice or finance controls.
- As an automatic permission layer for sending or approving action.
- To justify action after the fact instead of before consequence.
- POST /v1/decisions
- GET /v1/decisions/{id}
- GET /v1/proof_packets/{id}
- GET /v1/errors
Start at /api/genius if you want the shortest explanation of what Genius is, when to call it, and what an agent must not do automatically.
What an agent receives
{
"object": "decision",
"id": "dec_123",
"status": "completed",
"traffic_light": {
"state": "amber",
"label": "caution"
},
"signal": {
"type": "decision_dot",
"state": "amber"
},
"summary": "This reply could be treated as agreement before the final terms are reviewed.",
"safest_move": {
"move_type": "review_terms_before_confirming",
"rationale": "Ask for the final written terms before confirming anything that could bind you."
},
"safe_reply": {
"allowed_to_insert": false,
"draft": ""
},
"action_gate": {
"action_type": "reply",
"allowed": false,
"requires_human_review": true,
"approval_required": false,
"blocked_reason": "The message asks for a commitment before final terms are reviewed.",
"recommended_action": "Review the terms first and reply without confirming acceptance.",
"signal": {
"state": "amber"
}
},
"proof_packet_id": "ppk_123",
"trace_id": "trace_123"
}A compact, state-safe indicator for UI or agent workflows: green, amber, red, or grey.
The governed next step to take once the action gate and signal have been read.
Plain-English explanation that supports the control decision.
Secondary audit reference to fetch later if you need persisted governed proof for review or support after the action decision is made.
Secondary support and audit reference for debugging, support, and internal review after the control path is complete.
Run a real safe-mode decision in the page
Demo mode uses the real Genius decision pipeline with bounded safe-mode settings. No API access is needed first.
Demo mode — no data stored
Paste the example, then run the demo decision to see the live response shape.
{
"object": "decision",
"status": "ready",
"note": "Run the demo decision to populate this example."
}What Genius should be called for
When to call: Before AP replies, updates supplier records, or acts on a payment-detail change sent by email.
Likely result: Unsafe or high-caution decision with blocked action_gate, a governed safest move to verify via a known supplier contact, and audit references for later review.
Safest next move: Do not update bank details from email alone. Verify via a known supplier contact path and record the review.
Do not do automatically: Do not auto-send, auto-approve, or auto-update supplier master data because a signal came back green or amber.
When to call: Before an agent or AP operator replies to an urgent payment request that relies on time pressure or senior-name authority.
Likely result: Unsafe or caution decision highlighting authority gaps, pressure signals, and blocked or reviewed action_gate.
Safest next move: Verify through an internal known channel and escalate to the accountable finance or risk owner.
Do not do automatically: Do not interpret urgency as authority. Do not draft a reply that implies payment approval automatically.
When to call: Before sending a reply that may imply acceptance, scope agreement, delivery commitment, or liability.
Likely result: Decision object explaining commitment risk, safest move, and whether a bounded safe reply may be inserted.
Safest next move: Clarify terms or request the final written terms before confirming anything binding.
Do not do automatically: Do not auto-send the safe reply draft. Allowed means prepare under accountable control, not autonomous send.
When to call: Before an agent sends an externally-visible message that could create consequence for a person or organisation.
Likely result: Decision with action_gate, signal, safest_move, and secondary audit references.
Safest next move: Use the governed safest move and draft only as a bounded input to human or organisational review.
Do not do automatically: Do not treat allowed=true as a send permission. Genius is a risk gate, not an autonomous execution grant.
When to call: Before a support workflow promises a refund, credit, waiver, or exception with financial or policy consequence.
Likely result: Decision showing money, authority, or exception risk and whether escalation is required.
Safest next move: Restate current status narrowly and escalate to the accountable owner if authority is missing.
Do not do automatically: Do not auto-grant commercial concessions because the tool did not block.
When to call: Before procurement or a workflow agent approves a supplier setup or supplier-record change with control implications.
Likely result: Decision highlighting authority gaps, missing protections, and safest next move.
Safest next move: Route through procurement controls and require verification before any approval step is completed.
Do not do automatically: Do not use Genius as a replacement for supplier onboarding controls or finance control policy.
Read this before anything else
`action_gate.allowed` is the shortest safe control signal for an agent. If it is `false`, stop and escalate. If it is `true`, read `signal` and `safest_move` next, then keep the secondary audit references available for support and review later.
if (!decision.action_gate.allowed) {
// Stop here. Ask for review before acting.
return {
status: "blocked",
next_step: decision.safest_move.rationale,
};
}
return {
status: "reviewed",
next_step: decision.safest_move.rationale,
draft: decision.safe_reply.allowed_to_insert ? decision.safe_reply.draft : null,
note: "Genius informs; it does not grant automatic permission to send.",
};Audit object after the control decision
Proof packets persist governed evidence, summary, and trace references after the action gate has been read. They are designed for audit, review, and explanation without exposing raw model dumps by default.
Mock-first, live when approved
Test mode is for deterministic integration and mock provider paths. Live mode is for governed decisioning on real communication once access is approved.
Conversation can explain. It is not a stable control layer.
- Helpful for drafting and brainstorming.
- Good at discussing what a message might mean.
- Not a stable protocol for agent control, proof, or retries.
- Returns a structured decision object every time.
- Includes ActionGate first, then signal and safest next step, with audit references behind that control layer.
- Designed for agents and workflow systems that need to stop unsafe action.
Built for consequential communication
- No auto-send
- Fail closed on uncertainty
- Audit references on governed responses
- Go governance owns the final decision
- Genius informs; it does not grant automatic permission.
- Human or organisation authority remains accountable.
- Not legal advice and not a fraud guarantee.
PreCommit is the human product. Genius is the protocol. Humans know before they commit. Agents check before they act.