Agent Access, Tokens and the Audit Log
What a connected agent is allowed to do, how to issue and revoke an access key, and where to see everything one has done to your account.
Connecting an assistant covers getting one attached. This page is the part after that: what it can reach, how to take the access away, and how to check what it did.
Everything here lives in Algorithm & Agents → Agents & Access, which is a human-only console. An agent holding a key cannot issue itself another one, widen its own permissions, or delete the account — those need a signed-in session, whatever the key's scopes say.
The nine permissions
A connection asks for these, and they are the whole list:
| Scope | What it reaches |
|---|---|
feeds:read / feeds:write |
Your subscriptions and folders |
profile:read / profile:write |
Interests, muted topics, languages |
recommendations:read / recommendations:write |
Your ranked feed and the ranking itself |
memory:read / memory:write |
What the agent has remembered about your reading |
audit:read |
The log of what has been done |
The default grant is read and write, and that is deliberate. A read-only agent can describe everything wrong with your feed and fix none of it — not a safer version of this product so much as an inert one. The whole proposition is that your agent tunes the ranking on your behalf.
Nothing is granted quietly. The consent screen lists exactly this, with the write entries called out, and you approve or refuse it as a whole. A client that asks for less than the default gets exactly what it asked for — the list is a default, not a floor.
There is no permission that sends anything on your behalf. Digests go out under the scheduler, not under a user grant, so no key an agent holds can make Feedpik message anyone.
Issuing an access key
For anything that cannot do OAuth — a script, a cron job, a self-hosted tool.
Create an access key takes a name and an expiry: no expiry, 30 days, 90 days, or a year. Under Customise permissions you can drop any of the nine before issuing.
The key is shown once. There is no way to retrieve it afterwards; issue a new one and revoke the old.
No expiry is the honest default for a personal agent. A key that dies in 30 days is an agent that silently stops working in 30 days, usually on a morning when you have forgotten the key exists — and revoking on this page is one click whenever you want it gone. Pick an expiry when the key is going somewhere you do not fully control.
Reviewing and revoking
Each key lists its permissions, when it was created, and when it was last used.
Last-used is the line to read. A key that has not been touched in months is either a tool you stopped using or one you forgot you set up; both are reasons to revoke. Revoke access takes effect immediately and cannot be undone — reconnecting means issuing a new key.
Revoking is also the correct first move if you think something is wrong. It costs you one reconnection and it is the only action here that is instant and total.
The audit log
Audit Timeline is every change made to your account, by you or by anything holding a key: what the action was, which actor did it, and the full JSON of the change.
Two things make it worth actually opening:
- It distinguishes actors. A ranking change made by your agent is labelled differently from one you made yourself, so "why does my feed look different" has an answer rather than a theory.
- Memory changes are counted separately, which is where an agent's understanding of your reading accumulates — the part with no visible surface in the reader.
An agent can be granted audit:read so it can inspect its own history. It cannot write to the log.
If something looks wrong
My agent says it is not authorised — check the key has not expired or been revoked, and that it holds the write scope for what it is attempting. A read-only key fails every instruction to change something.
I lost the key — it cannot be recovered. Revoke it and issue a new one.
Something changed and I did not do it — Audit Timeline, filtered by actor. If it was an agent you no longer want, revoke its key first and read the log afterwards.
I want to stop an agent without breaking the others — keys are individual. Revoking one leaves every other connection working.
An agent is asking me to authorise again — its grant covers what the agent surfaces can reach, so this usually means the key was revoked or expired rather than that it needs something new.
Last updated August 10, 2026