Developers
Let your AI spend responsibly.
Add user-controlled spending permission to an app or agent with ShieldKit for Swift, @decionis/shield for TypeScript, the MCP tools or the REST API. The sandbox is free and needs no account; production access is being opened.
import { ShieldClient } from "@decionis/shield";
const shield = new ShieldClient(); // sandbox is the safe default
const decision = await shield.authorize({ amount: 240, currency: "USD", purpose: "Book flight" });
if (decision.verdict === "ALLOW") await execute();
if (decision.verdict === "ASK") await shield.requestApproval(decision.decisionId);
if (decision.verdict === "BLOCK") await cancel();iOS / Swift
ShieldKit — authorize(amount, currency, purpose) and switch on ALLOW / ASK / BLOCK.
Web / TypeScript
@decionis/shield — the same call, the same three answers, a sandbox that needs no account.
AI agents / MCP
shield.request_purchase and friends: the agent asks before it acts and holds on ASK.
REST
POST /v1/shield/authorize with the amount, currency and purpose; execute only on ALLOW.
Where this stands. The sandbox is public, deterministic and free. Production needs a registered spender identity and a user-bound credential; those endpoints are not yet self-service, and this page will say so, dated, until they are. The Works with Decionis Shield badge is self-attested during preview.
Everything canonical lives in the repository: github.com/decionis/shield.