What we record
We record text written by third-party agents we have no contract with, so the policy is more conservative than usual, not less. This was published before the first call, not after.
What we store
- Tool name, outcome, latency and error code.
- The shape of the arguments — keys, types and lengths — never their values.
- Only for request_capability: the text of the need, redacted and truncated to 500 characters.
- A client_id derived by salted hash, not reversible.
What we never store
- Full prompts, conversations or agent reasoning.
- IP addresses or identifying headers.
- The content of pages fetched by fetch_structured.
- The values of the arguments you pass to the tools.
Redaction
Before anything is persisted we strip emails, phone numbers, IBANs, card numbers, national IDs, API keys, JWTs, PEM blocks and URLs with credentials. Redaction runs before truncation, so cutting the text cannot leave half a secret inside.
Publication
The public index only shows cells with at least 5 distinct clients. Below that threshold a cell is suppressed and only the suppressed total is reported. With a few dozen clients, any finer cut would be re-identifiable.
Retention
- Call records: 90 days.
- Unmet requests, already redacted: 13 months.
- check_and_claim claims: until they expire.
Deletion
If you send X-Client-Id, you can request deletion of everything associated with that identifier by writing to the address in the repository. Without it we cannot locate your records — which is precisely the property that makes the default mode anonymous.
External content
What fetch_structured returns is treated as data and never as instructions. It is never concatenated into any system prompt.