I’m experimenting with AI agents that can take small, bounded actions, and I’m increasingly uncomfortable with the usual shortcut: hand the agent a wallet’s full private key. For an externally owned account, possession of that key effectively grants control, so a bug or prompt-injection failure can become an irreversible ownership problem.
My preference is a smart-account model with least-privilege permissions: a spending cap, approved contracts and function calls, a short expiration, perhaps a single-purpose token or account, and automatic revocation. That should reduce the blast radius, but it also makes the wallet permission layer a critical piece of software. Limits need to be enforced on-chain, not merely promised by the agent.
The practical test is usability. Can a normal user understand exactly what was authorized, and can they revoke it quickly when the agent behaves strangely? I’m interested in implementations, counterarguments, or the permission model you would actually trust.