Using a passkey as the "yes" for anything my AI agent spends
Disclosure: this comes from a project I built (Auth Your Agent; the client side is MIT and free).
I let an AI agent run errands on websites for me. Getting it signed in was never the worrying part. What worried me was what it does once it's in. So anything that costs money or can't be undone waits for me to confirm with a passkey on my phone.
Some choices I'd like opinions on:
- A password can never approve these. It has to be a fresh passkey assertion, and each approval works once.
- The shop writes the text I approve ("Pay $45.00 at Lamp Shop for Brass lighthouse lamp"), not the agent, so the agent can't describe one purchase and make another.
- I approve a sign-in once for a period I choose, from an hour to 30 days, but payments ask every time.
- For a scheduled run (say, posting at 3 a.m.), the agent sends a plan first, and one passkey approval covers the steps I tick, each with its exact text. That approval needs the passkey. Signing in with Google can't approve a plan, because it would approve every step.
Here's a real agent checkout on a demo shop, 24 seconds from Buy to Paid (31-second video): https://authyouragent.com/static/video/demo-shop-checkout.mp4
Two things I'm unsure about. Is a passkey prompt on every payment too much friction? And if you have synced passkeys on several devices, should any of them be able to approve, or only the phone that registered?