Skip to content
/docs

What is Veto?

Veto documentation for explicit machine authority, MAP artifacts, local evaluation, human approval binding, and verifiable receipts.

Veto is the machine authority runtime for agent actions. Agents often have technical capability to call tools, reach APIs, and change systems. Veto answers the separate authority question: what may this machine action do, under which artifact, with which constraints, approval, expiry, and receipt?

How Veto works: Agent calls tool, Veto validates, then allows, denies, or requires approval

Using an AI coding agent?

Copy the integration prompt — paste into Claude Code, Cursor, OpenCode, or another agent workspace. Full details

TypeScript in one minute

npm install veto-sdk
import { protect } from "veto-sdk";

const tools = await protect([
  {
    name: "issue_refund",
    execute: async ({ amount_usd }: { amount_usd: number }) => {
      return { refunded: amount_usd };
    },
  },
]);

What Veto Gives You

  • MAP artifacts: portable authority objects with subject, action, resource, constraints, approval, expiry, and receipt fields.
  • Local runtime: deterministic evaluation by default, with no account, API key, or network needed for the core decision.
  • Approval binding: human approval is bound to the exact action hash and policy hash, so mismatched approvals fail closed.
  • Receipts: offline-verifiable records that bind action, policy, approval, previous receipt, and issued-at time.
  • Authoring surfaces: LLM drafting may propose artifacts for human review; it is not in the authority decision path.
  • Adapters: existing authorization, policy, and governance tools can be wrapped into MAP receipts without making Veto an IAM system.

Current SDK Surfaces

SurfaceImport
Core — Veto, protect, VetoAdmin, guard, approvalsveto-sdk
CLI utilities — init, learn, compile, test, scan, diff, replayveto-sdk/cli
Provider adapters — OpenAI, Anthropic, Gemini, MCPveto-sdk/providers/adapters
Vercel AI SDK middlewareveto-sdk/integrations/vercel-ai
Local rule utilitiesveto-sdk/rules
Decision receipts — canonical schema, hashing, NDJSON, chain verificationveto-receipt-protocol
Charter authoringREST API POST /v1/charter/turn

Next Steps

Where to goWhat you'll learn
Quick StartPut one machine action behind explicit authority
TypeScript SDKCurrent SDK API surface
Charter SDKAuthoring workflows for human-reviewed policy drafts
Vercel AI SDKMiddleware for AI SDK tool calls
MCP APINative MCP surfaces for tool registration and guarded execution
Decision ReceiptsPortable, offline-verifiable proof of every decision