Connectors
Telegram
Send something to @persistmemory_bot and it becomes a memory. Forwards, voice notes, photos and documents all go through the same pipeline as the API, so what you capture on your phone is searchable from Claude, Cursor or anywhere else you have connected.
Connecting
The bot cannot work this out by itself. It sees a chat id and nothing else, so until you hand it a link made while signed in, it has no way to know whose memory a message belongs in — which is exactly what it says if you message it first.
- 1
Make your connect link
Sign in and open Connect a chat. Press Make my connect link. It is shown once, because only its hash is stored — nobody, including us, can show it to you again. Making another one replaces it.
- 2
Open it on the device Telegram is on
Tapping the link opens the chat with @persistmemory_bot and passes the link along with it. If you are reading this on a laptop, copy the link onto your phone rather than opening it here.
- 3
Press Start
Telegram shows a Start button. Pressing it sends the link back to us and we record that this chat belongs to your account. The bot replies to say so.
- 4
Send anything
That is the whole setup. Forward a message, record a voice note, or send a photo. The bot replies to confirm what it captured.
“This chat is not connected to a PersistMemory account yet”
This is what the bot says to every message from a chat it does not recognise, including /start with no link and any attempt to ask it for one. It cannot send you the link: the link proves who you are, and a bot that handed one to whoever asked would connect a stranger’s chat to your memory. Make it at Connect a chat instead.
What it accepts
Text and forwards
Anything you type, and anything you forward. A forwarded message keeps the original sender and date, so the memory records who said it and when, not when you passed it along.
Voice notes and audio
Transcribed, then stored as text with the recording kept alongside. A voice note on a walk is the fastest way to get something into memory.
Photos and screenshots
Read for text, so a photographed receipt or a screenshot of a conversation is searchable by what it says rather than by its filename.
Documents
PDFs and files are parsed exactly as an upload to the API would be. A document sent to the bot and the same document sent to the API produce the same memories.
Two things worth knowing
A chat belongs to one account
Once a chat is linked, a second link from a different account is refused rather than accepted. That is deliberate: the alternative is that somebody else’s link silently re-points your conversation at their account, and everything you send afterwards lands in their memory. To move a chat, disconnect it from the dashboard first.
In groups, it only sees what is addressed to it
Telegram’s privacy mode is on, so adding the bot to a group does not give it the group’s conversation. It receives replies to itself and messages that mention it, and nothing else. If you want it to read a whole group, that is a change you make deliberately in Telegram, not a default we chose for you.
It answers, too
Anything you type without a slash becomes memory. Anything with one is a command, and Telegram shows the whole list in its “/” menu — the bot publishes it on startup, so a capability it has is never a secret kept from the person using it.
Asking and filing
| /ask <question> | answer it from your memory — anything without a slash becomes memory instead |
| /spaces | the Spaces on your account |
| /space <name> | send everything from this chat to one Space — /space none to stop |
| /help | the whole menu, printed |
| /disconnect | let go of this chat |
Your computer
| /machines | which computers are connected, and awake |
| /ls <path> | names and sizes in a folder |
| /get <path> | the file itself, delivered into this chat |
| /save | caption a file with this to put it on your computer |
| /run <command> | propose a command — you approve the exact line first |
| /approve <id> | yes |
| /deny <id> | no |
Google, when connected
| /drive [name] | find a file in your Drive |
| /drive get <id> | have it delivered here |
| /mail [search] | recent mail — from:priya, has:attachment |
| /who <name> | look somebody up in your contacts |
Videos, and what was said
| /video <link> [analyse|transcript|audio] | fetch a video from TikTok, Instagram, YouTube or anywhere else, and say what is in it — the answer arrives here on its own when it has been watched |
| /find <words> [in <folder>] | find a file on your computer by name |
| /said <words> | find what was said in an earlier conversation |
| /recall <what to look for> | look something up in your own memory |
Tasks
| /tasks | what you still have to do |
| /task <what you have to do> | add something to your list — a due date is what gets you a reminder email |
Working together
| /sharing <Space> | who can see one of your Spaces |
| /share <Space> <email> [viewer|editor] | let somebody see one of your Spaces — an editor can also file into it and ask a computer shared into it |
| /unshare <Space> <email> | stop somebody seeing one of your Spaces |
| /role <Space> <email> <viewer|editor|owner> | change a collaborator's access |
/tasks lists yours and /task adds one; a task with a due date is what causes a reminder email, and asking in words — “stop reminding me about the rota” — is how one is seen or cancelled. An earlier version of this page said the two did not work: they answered that no task list was wired up, and now one is.Approving from a chat
A private chat is bound to your account by a link only you had, so asking for one of your own files here counts as you asking and needs no second confirmation. A command is different: /run always waits, and it shows you the exact line before it runs. Say yes with /approve and no with /deny — refusing is deliberately exactly as easy as approving, because when no is harder than yes, yes is what tired people type.
The machine judges it again on arrival and refuses anything reaching the network or running a language whatever you approved. Why that refusal exists.
Messages you send are stored as memories under your account. Do not forward somebody else’s private conversation into a system you intend to search later, and remember that a forwarded message keeps its original author.