paybondpaybond
Sign in

Let agents buy groceries

Multi-tool shopping agent with the shopping preset — search products, guarded checkout, and automatic evidence for agent commerce.

A grocery-shopping agent needs two tool classes: read-only search and a side-effecting checkout that moves money. Paybond's shopping preset registers both, caps checkout spend, and requires evidence after a successful order.

Multi-tool agents → middleware

Use paybond.instrument() when the agent exposes several tools. Auto-evidence on checkout is required middleware behavior — you should not hand-roll evidence submission per tool.

Try it

Terminal
Terminal commandSwipe to inspect long lines
paybond login
paybond agent sandbox smoke \
  --preset shopping \
  --operation commerce.checkout \
  --requested-spend-cents 2500 \
  --evidence-preset cost_and_completion \
  --result-body '{"status":"completed","cost_cents":2500,"order_id":"ord_smoke"}' \
  --format table

Scaffold

Terminal
Terminal commandSwipe to inspect long lines
paybond init --solution shopping --max-spend-usd 100 --framework generic --non-interactive
paybond policy init --preset shopping --out paybond.policy.yaml
paybond policy presets show shopping

Bundled defaults:

ToolSide effectingCap
commerce.checkoutYes$100 per call / $100 intent budget
search.productsNo

Multi-tool wiring

paybond-session.ts

Code exampleSwipe to inspect long lines
import { Paybond } from "@paybond/kit";

const paybond = await Paybond.open({ apiKey: process.env.PAYBOND_API_KEY! });

const { tools } = await paybond.agent({
  policy: "shopping",
  tools: {
    "commerce.checkout": checkout,
    "search.products": searchProducts,
  },
});

// Orchestrator loop:
// 1. Model calls search.products → executes without spend guard
// 2. Model calls commerce.checkout → Harbor verify → execute → auto-evidence

Framework-specific paths

StackGuide
Vercel AI + Next.jsNext.js agent checkout
OpenAI Agents SDKOpenAI Agents spend controls
LangGraphLangGraph spend controls
MCP coding agentMCP agent spend controls
MastraMastra spend controls (adapter planned)
Cloudflare AgentsCloudflare Agents spend controls (adapter planned)

Customize the preset

Fork the scaffolded YAML — add delivery tips, loyalty lookups, or raise caps:

Terminal
Terminal commandSwipe to inspect long lines
paybond policy init --preset shopping --max-spend 250 --out paybond.policy.yaml
paybond policy validate-tools --file paybond.policy.yaml --local-only

Visual trace

After smoke, open the local trace dashboard (same project directory):

Terminal
Terminal commandSwipe to inspect long lines
paybond dev trace

The UI renders a vertical timeline at http://127.0.0.1:9477 using events from .paybond/dev-trace.jsonl. Hosted replay: /demo/agent-trace.

Developer reference: /docs/kit/agent-policy.