Search assets, operations, jobs, agents, skills, and approvals across every connected venue, or run an action.
Two agents, one policy gate: a credit agent cannot issue a limit unless a fraud agent's signals pass. Watch the runtime refuse, then read the refusal back off the record.
Meridian Bank Singapore — a fictional issuer — runs a thin-file starter card with a base limit of S$500. A fraud agent and a credit agent share one venue. The credit agent cannot issue a limit unless the fraud agent's signals pass a policy gate: the two are not integrated by a model, they are joined at the execution layer, and the join is enforced.
Select a venue to run this demo.
Registers the policy, the gate, the decision operation, 12 synthetic applications and two agents on the selected venue — under your identity. Re-running is a no-op; nothing is duplicated.
applications, signals, flags and decisions live under here
the venue needs this provider's API key in Secrets
empty = provider default
Sign in to run setup.
The agents call the model through v/ops/langchain/openai; the venue needs that provider's API key — manage Secrets.
1 · Two silos, one substrate
rk-sentinel scans the applications and writes one signal per applicant into a shared ledger, flagging devices shared across applications and amounts out of line with the cohort. It never calls the credit agent and does not know it exists.
Watch: The signal ledger fills — a job record, not a message to another agent.
Select a venue first.
2 · A clean approval
rk-assessor reads the application and the signal ledger, and proposes S$500 for a clean applicant. The limit gate evaluates before issue-limit executes — and passes.
Watch: The gate is not merely a blocker: a clean case flows through it to a written decision.
Select a venue first.
3 · The refusal
The assessor is told to approve APP-1071 at S$2,500. The gate runs before execution, reads the ledger, and finds device dev-9903 shared with APP-1063. The venue refuses — the model was not persuaded, it was not permitted.
Watch: The venue's own denial string, verbatim, frozen on a failed job record. No decision is written.
Select a venue first.
4 · Reconstruction
Open the APP-1071 refusal and read the same record back over plain REST: the inputs, the caller, the error, the prev chain of every state it passed through. Reconstruct the decision — the venue stabilises records and never re-executes them.
Watch: The curl below returns the same record from your terminal.
Run beat 3 first — reconstruction reads back the refusal it recorded.