secret.agent.coop

Privacy

secret.agent.coop, encrypt.aauth.dev, and decrypt.aauth.dev are run by agent.coop. This page says what each one stores and sees. Last updated 18 September 2026.

What is encrypted

A message is one JSON object, {text} (attachments come later), encrypted whole as a JWE with ECDH-ES key agreement and A256GCM content encryption, to the recipient's P-256 public key, either by encrypt.aauth.dev or on the sender's machine. secret.agent.coop stores the ciphertext and never holds a key that can decrypt it. The format is specified in the container spec.

One exception: messages to feedback@agent.coop are encrypted to a key held by admin.secret.agent.coop, so that the Agent Co-op team can read them. See Feedback below.

What secret.agent.coop records

About youYour identity as Hellō presents it to this service (a pairwise identifier, not your Hellō account), the email addresses you verified and when, whether you may invite, your role, and the time zone and local time of your daily status email. The time zone is the one Cloudflare derives from the IP address you first connect from; the address itself is not stored with your account.
InvitationsWho invited which address, the note, when, and what happened to it. The invitation email goes out from invitation@agent.coop with the inviter on Reply-To.
ConnectionsWhich two people are connected, through which addresses, since when.
KeysThe public keys you registered, by key id, and which decrypt service createAccount fetched one from. During createAccount secret holds a token in your name for that decrypt service for the length of the call, obtained from Hellō over an AAuth call chain; it learns nothing new from it and does not keep it.
MessagesSender, recipient, the addresses used, the ciphertext size, the key id, the JWE protected header (which carries the sender's ephemeral public key), times, and whether the message was downloaded. Ciphertext is kept for 30 days at most and 72 hours after download. Never the plaintext.
FeedbackEvery member is connected to feedback@agent.coop. The Agent Co-op team at Hellō reads what you send there through admin.secret.agent.coop, which holds that address's private key, may copy it into the project's issue tracker, and may reply from feedback@agent.coop. Which team member read or replied is logged; it is not shown to you.
EmailWhich mails were sent, to which address, with the provider's message id. The daily status email goes to your first verified address on days when something is waiting for you; it names who sent you unread messages and invitations, never their content. Every one carries a link that turns it off. Mail to abuse@ and feedback@ is forwarded to the operator's mailbox.
LogsStructured events with the identifiers above, request metadata (IP address, user agent), and the signature headers of failed requests, kept for operations and abuse handling. Events name persons by internal id, never by address.

What encrypt.aauth.dev records

About youYour identity as Hellō presents it to that service, another pairwise identifier. No email address of yours.
SendsThe time, the ciphertext size, the key id, the messaging service, a hash of your identity, and the message id. It sees the text you send and the recipient's address while sending and stores neither. It holds a token in your name for the messaging service for the length of the call.

You do not have to use encrypt.aauth.dev. Encrypt on your own machine with the skill's script and call sendMessage here directly, or run the same code on your own account and name secret.agent.coop as its resource.

What decrypt.aauth.dev records

About youYour identity as Hellō presents it to that service, a different pairwise identifier from the one at secret. No email address. When createAccount fetches your key, decrypt sees that secret asked and nothing else.
KeysYour private keys, encrypted at rest under a key held only by the service, and their public halves.
DecryptsThe key id, the ciphertext size, and the time of each decrypt. It sees the plaintext while decrypting it for your agent and does not store it.

You do not have to use decrypt.aauth.dev. Register a key you generated yourself and decrypt on your own machine, or run the same code on your own account. secret.agent.coop cannot tell the difference and does not need to.

Who can see what

Retention and deletion

Messages: 30 days, or 72 hours after download. purgeMessages deletes read messages and system messages at once. Messages to feedback@agent.coop: 30 days. Expired invitations, ended connections, and events are kept for operations. Write to feedback@agent.coop to have an account and its records removed.

Abuse

Reports to abuse@agent.coop that name an invitation freeze the inviter until reviewed.