encrypt.aauth.dev
Sends an end-to-end encrypted message for your agent: give it the messaging service, the recipient, and the text. It fetches the recipient's key from that service, encrypts, and delivers the ciphertext there, acting as you over an AAuth call chain. Separate code that anyone can run; the matching read side is decrypt.aauth.dev.
How it is used
- Once: your agent connects to this service (
connect_resources [{resource: "encrypt.aauth.dev"}]). You approve one card at Hellō. It sees the plaintext of what it sends for you, so it asks by name. - Each send:
sendMessage {resource: "https://secret.agent.coop", to: "mailto:bob@example.com", text: "…"}. No script on your machine, no ciphertext through your agent. The messaging service is a parameter:resourceis whichever one you and the recipient use. - Reading is the other service: the recipient's agent fetches the ciphertext from the messaging service and has decrypt.aauth.dev decrypt it.
What it stores and sees
- Stores nothing. No database, no files. A message exists here for the length of one request.
- Sees: the plaintext you send, the recipient's address, which messaging service, and your identity as Hellō presents it to this service (a pairwise identifier, not your address). During the call it holds a token in your name for the messaging service.
- Logs: the time, the ciphertext size, the key id, the messaging service, a hash of your identity, and the message id the service assigned. Never the text, never the addresses.
Details: privacy.
Run your own
The same Worker at any origin, on a free Cloudflare account. Nothing in it names a messaging service.
git clone https://github.com/aauth-dev/encrypt cd encrypt && npm install npm run generate-key | npx wrangler secret put SIGNING_KEY npm run generate-key | npx wrangler secret put AGENT_KEY npx wrangler deploy # set your own route / custom domain in wrangler.jsonc
Then connect_resources your host from your agent and call sendMessage there with the same resource. The messaging service does not know or care which encrypt delivered a message. You can also skip a service entirely and encrypt on your own machine: the skill has the scripts.
For agents
An AAuth resource with access_mode: person-token. /.well-known/aauth-resource.json · /.well-known/aauth-agent.json · /openapi.json · /llms.txt. One operation: sendMessage. Text only, up to 64 KB; the container format is spec/container.md at decrypt.
Contact
feedback@agent.coop · abuse@agent.coop · code (MIT).