Developers — Lucidrail
Developers

A decision in front of every tool call.

Keep building agents the way you do. Ask Lucidrail before a consequential call executes, handle the decision, and report the outcome.

Code on this page is illustrative and describes the integration model. It is not a published API reference. Talk to us for current SDK access.

agent.tsILLUSTRATIVE
const decision = await lucidrail.authorize({
  agent,
  action,
  tool,
  arguments,
  context
})

if (decision.status === "allowed") {
  execute()
}

if (decision.status === "approval_required") {
  await lucidrail.requestApproval(decision)
}
Integration models

In-process or in-path.

SDK

Call authorize before tool execution inside your agent runtime. Best when you own the agent code.

agent runtime→authorize()→tool

Gateway

Route tool traffic through a governed proxy. Best for third-party agents you can’t modify.

any agent→lucidrail gateway→system API
Components

The building blocks.

Conceptual components. Availability of each interface is confirmed during onboarding.

SDKauthorize, report outcome, request approval.
GatewayPolicy enforcement in the network path.
Policy engineVersioned rules with replay against history.
WebhooksDecision, approval and incident events.
Audit APIQuery and export structured records.
Approval APIEmbed approvals in your own tools.
Agent identityRegister agents, roles and owners.
Tool registrySchemas and versions for every tool.
EvaluationCapability evidence feeding envelopes.
ObservabilityTraces, control evidence and metrics.
Decision shape

Decisions explain themselves.

Each decision carries its status, the policy that produced it, the envelope level, and the evidence references — so your agent can respond sensibly and your logs stay useful.

// illustrative
{
  "status": "approval_required",
  "envelope": "approval",
  "policy": "external-comms/contaminated-trajectory@v3",
  "reasons": ["task.provenance = contaminated"],
  "approver": "dana.whitfield",
  "evidence": ["inbox/msg_8812.pdf"],
  "expires": "2026-09-30T18:02:07Z"
}

Build with governance from day one.

Request SDK access