Every business will need Know Your Agent. It should not have to invent its own. One gate answers which agent this is, who it acts for, what that person authorised, what your business allows, and keeps a sealed record of every answer.
Which agent is this?
The agent's signed request is verified against its published keys: the same HTTP Message Signatures (RFC 9421, Web Bot Auth) that Visa's Trusted Agent Protocol and Mastercard Agent Pay are built on. Time window and replay checked.
Who does it act for?
A sebbi.pro Agent Passport names the person who authorised it, the one action and the one site. Checked live: withdrawn or expired authority fails.
What do we allow?
Your own policy, per action: allowed, needs a person, or refused, with amount and daily limits. Comparing savings rates can be allowed while moving savings needs a person.
What happened?
Every decision, every human approval and every withdrawal of permission is sealed and timestamped in Bitcoin.
# 1. Publish what outside agents may do at your business
curl -X POST https://sebbi.pro/x/kya/policy -H "Authorization: Bearer $SEBBI_KEY" -d '{
"domain":"yourbank.co.uk",
"rules":[{"action":"compare-rates","decision":"allow","per_day":500},
{"action":"transfer","decision":"human","max_amount":5000},
{"action":"close-account","decision":"deny"}],
"default":"deny","require_passport":true}'
# 2. Every agent request: pass its headers to the gate
curl -X POST https://sebbi.pro/x/kya/check -H "Authorization: Bearer $SEBBI_KEY" -d '{
"policy":"KP-...","action":"transfer","amount":1200,
"request":{"method":"POST","authority":"yourbank.co.uk","path":"/transfers",
"headers":{"Signature-Agent":"...","Signature-Input":"...","Signature":"..."}},
"passport":"sbp1...."}'
# -> ALLOW, NEEDS_HUMAN or DENY, with who it is, who it acts for, and why. Sealed.
# 3. A person decides, or permission is withdrawn - both sealed
curl -X POST https://sebbi.pro/x/kya/approve -H "Authorization: Bearer $SEBBI_KEY" -d '{"check":"KC-...","approver":"J. Smith","approve":true}'
curl -X POST https://sebbi.pro/x/kya/block -H "Authorization: Bearer $SEBBI_KEY" -d '{"policy":"KP-...","agent":"agent.example#keyid","reason":"withdrawn"}'
Your policy is published as a file outside agents can read before they try (host a copy at https://your-domain/.well-known/agent-policy.json). Recognition works with any agent that signs its requests, from any network or vendor. Included in the 50p per device plan.