On this page
This page sets out what the Umbris bot keeps about you, where your API key and your messages go, and what deleting your data removes and keeps. The last section covers your account on this site. A figure marked "by default" is a setting the operator can change. Memory, and some of the tools named below, are off unless the operator turns them on. Commands that start with /umbris use the bot's default group name. If its commands show under another name when you type a slash, use that name instead.
In short
- A key you save yourself is sealed in your browser first;
Connect OpenRouterhands the key to the bot directly. The bot stores keys encrypted. The operator can still decrypt them, and can read a key while it is in use. - Each reply sends the message that asked for it, and recent messages from the same channel, to the provider of the member who asked.
- The bot's record of a reply holds ids, times, the model, the token count and the cost. It does not hold the text of your message or of the reply.
- What a tool was given, such as a search query, is recorded too. Its text is scrubbed after 30 days by default.
- If memory is on, its notes do not expire. You can see and clear the notes about you.
/umbris delete-all-my-datadeletes your notes, your stored keys, your model choices and the text of your requests, among other things. The record of when and where you used the bot stays, a year by default, as do some security records, and backups keep their copy until it rotates out.- The bot has no spending cap. Set one at your provider.
Your API key
- The seal page encrypts your key in your browser to the bot's own key, with your Discord id bound in. Only the bot can open the result, and only for you. Discord, or the terminal, carries only that sealed text.
- With
Connect OpenRouteron the terminal, OpenRouter hands a new key to the bot directly. - The bot stores each key encrypted, under your Discord id and the provider it is for. Only the encrypted form is written to disk. It is unlocked with the operator's key-encryption key, so anyone with a copy of both the stored keys and that key can decrypt them.
- The operator can decrypt stored keys, and can read a key while it is in use. Sealing keeps your key out of Discord; it does not hide it from the bot or its operator.
- Your key is sent only to the provider you saved it for.
- A saved key is never shown again.
/keysand the terminal list each key by name and the date you saved it, nothing more. - Text shaped like a key is masked before it reaches the bot's logs. If you paste a key itself into Discord, treat it as exposed and replace it at the provider.
/revokekeyremoves one stored key, or all of them. On the terminal, each key has aRemovebutton. Neither disables the key at the provider. The reply to removing them all reads:
Removed all API keys this bot stored for you. A reply already running may still finish. This does not disable your keys at the provider.
Each removal leaves a record with your Discord id, the time, the provider and a short fingerprint of the key. It has no end date, and deleting your data does not remove it.
What a reply sends
A reply is made by the provider of the member who addressed the bot, on that member's key, or on the operator's key during the free trial. The request sent there holds:
- the message that addressed the bot, and the files attached to it, where the model accepts them;
- recent messages from the same channel or DM, up to 100 by default, including other members' messages;
- if memory is on, the notes the bot looks up for the reply.
So when another member addresses the bot in a channel, your recent messages there can go to their provider, on their key. What a provider keeps after that is up to the provider.
If the bot searches the web for you, the search words go to the operator's search service, on the operator's key, and a page it fetches is requested from that page's site. Your earlier search words and fetched addresses, from the log, can be added to your own later requests.
When the reply was made without the channel's recent messages, because the operator turned them off or the bot could not read them, it carries this line:
(Note: this reply was generated without recent channel history.)
What the bot records
The request log
- For each reply, the log holds who asked, when, in which channel and server, which model answered, the token count and the cost. It does not hold the text of your message or of the reply.
- When the bot uses a tool for you, the log holds what the tool was given, which can repeat your own words: a search query, an address it fetched, the prompt for a picture. Key-shaped text is masked, and each entry is cut at 2,000 characters.
- For some tools it keeps only the size: programs and their input, file contents, and memory notes.
- After 30 days by default, the text in the log is scrubbed. The entry stays, with who, when, where, the model and the cost, and is deleted after a year by default.
- Records of refused requests, such as a refused tool call or a message refused by the rate limit, are kept for at least a year, whatever the delete age is set to.
- Staff can hold your records for an investigation for up to 30 days. If they ask for longer, or you had a hold in the last 90 days, the hold starts at once for 30 days and the operator decides. Approved, it runs for the full length asked, up to a year. Refused, a longer hold ends at 30 days and a repeat hold ends there and then. If the operator doesn't decide, it ends at 30 days. The operator's own holds skip this step. Held records are not scrubbed or deleted until every hold on them ends, and that includes a deletion you ask for. When the sandbox refuses a command that tried to leave its working folder, the bot holds that one request's records for 90 days.
Other records
- Message receipts. A receipt of each message addressed to the bot is kept for a day by default. It holds ids, times and a keyed fingerprint of the message, not its text.
- Kept scripts. A script the bot ran for you, and its traceback, are kept for one day, longer while an automatic hold covers them.
- Kept files. Files the bot keeps for you between runs are cleared after 90 days without use. The bot sends you a notice first and clears them 7 days later. They are not backed up.
- Attached files. The bot indexes the files you attach to messages addressed to it: name, size, type and checksum, not their contents. An entry goes when its message is deleted.
- Saved work. Work saved when a reply is cut short lives only in the running bot's memory and is lost when it restarts.
- Terminal sign-in. A sign-in lasts 7 days.
Sign outon the terminal ends every session you have.
Memory, if it is on
- A note is something the model wrote, stored beside a word-for-word quote of a message you sent. The bot checks the quote. It does not check that the note says the same thing.
- Other members can have the bot note something about you, only from your own words, and each of them can hold at most 3 notes about you. The notes about you are yours to see and to clear, whoever asked for them.
- You can recall your notes anywhere, except that notes taken in a DM stay in DMs. Other members can recall only the notes about you that came from channels they can read.
- Moderators can see the notes about you from channels they can read, and can clear them. Each look and each clear by a moderator is recorded.
- Notes do not expire with age.
- If the operator has set up an embedding service (it helps the bot search its notes), the bot can send it the notes, their quotes and the words used to look them up. By default that service is Google's. There is no setting to opt out.
To see and clear your notes on Discord:
- Type
/umbris memory showto list the notes about you. - Type
/umbris memory clear-mineto delete them. It also deletes the notes you had the bot take about others, and the text of your past requests in the log, except while a hold covers it. - Read the question, then press
Delete it allwithin a minute. The button deletes what the step above lists, with any facts and summaries about you. For everything else, see Delete my data.
On the terminal, the section "What the bot remembers about you" lists your notes, facts and summaries, and deletes them one at a time. Clear all memory deletes them all, and scrubs the text of your past requests as the command does. Deleting a single item does not scrub the log.
Delete my data
One command deletes the data the bot holds about you; some records are kept. It works on Discord only; the terminal has no button for it. It works even if a moderator has had the bot stop replying to you.
- Type
/umbris delete-all-my-datain a channel of a server the bot answers in, or in a DM with the bot. A DM works even when DMs are off for chat, and even after you've left every server the bot serves. The reply is visible only to you. - Read the question. It lists what is deleted and some of what is kept.
- Press
Delete my datawithin a minute.Cancel, or letting the minute pass, deletes nothing. - Read the reply: one line for each part, with how many items it cleared.
The reply always ends with this line:
Some records are kept for security and abuse prevention.
If a part fails, its line says so and the other parts still run; run the command again to retry. If the first part, the request log, fails, nothing else is deleted.
What it removes
- the notes and summaries about you, and the notes you had the bot take about others;
- the text of your requests in the log, except while a hold covers it;
- your stored API keys, which stay valid at the provider;
- your model choices: provider, model, recent models, backups and image model, and the names of your keys;
- work saved from a cut reply, and files waiting to be sent to you;
- the bot's receipts of your recent messages, and the index of files you attached;
- your kept files, and kept scripts and tracebacks, except while an automatic hold covers them;
- your queued and running long jobs, and finished results not yet delivered;
- your past days of sandbox time;
- your entry in a persona's roster, if an operator added you: it stops reaching the bot at once and is removed after 30 days by default, later while a hold applies.
What it keeps
- Free trial. If you used it: a scrambled form of your Discord id and the number of trial turns you used, so the trial is given once. The scrambled form is made with the operator's key, so the operator can still match it to you.
- Key activity. Records that you saved or removed a key, without the provider, with your id replaced by a scrambled form or a placeholder.
- Key removals. A record of every key removal, including this one, with your Discord id, the provider and a short fingerprint of the key; a fingerprint of each piece of sealed text you used, under your id, so none can be used twice; and the time you last saved a key.
- Moderation records. The record of each moderation step about you, such as having the bot ignore you, holding your records, stopping your work, or a moderator's look at or clear of your notes, with your Discord id. They have no end date.
- Request log. Your entries, without their text: who, when, where, the model and the cost, and a record that you asked for this deletion. They are deleted after a year by default.
- Self-notes proposals. Changes you asked the bot to propose to its own notes stay as its record. Your id is removed from them after 30 days by default, later while a hold applies.
- Restore record. A keyed hash of your id, for 40 days, so that restoring a backup can apply this deletion again to the key activity records, the persona roster and your self-notes proposals.
- Staff settings and limits. Settings that staff set for you, such as having the bot ignore you; today's count of sandbox time; and the record of your terminal sign-outs.
- Other members' records. Entries in someone else's request that mention you. Their text is scrubbed with everyone's, after 30 days by default.
- Terminal sign-in. A session stays valid until it expires or you press
Sign out. - Discord. The bot deletes nothing from Discord itself. Your messages stay where you posted them, and the bot can still read them into other members' requests as recent channel messages.
The bot's shared lore and its personas' own text are not touched. Backups and the system log are covered below.
Backups and system logs
- Backups are optional. The operator installs them, and a bot can run with none.
- Where they are installed, the backup job copies the bot's records each day, memory and request log among them. It removes daily copies older than 35 days but always keeps the newest copy. The bot calls this a 35-day target, not a hard limit.
- Backups never hold stored API keys. After a restore, members save their keys again. Backups do hold the key removal records.
- A copy made before you deleted your data keeps that data until the copy rotates out. If an older copy is restored within 40 days of your deletion, and the operator's backups carry the restore record, your deletion is applied again automatically, but only to the records of your key activity, a persona roster entry and your self-notes proposals.
- The bot's system log masks key-shaped text, but words from an error message can still reach it. Some lines name your Discord id, such as one about a setup message that could not be sent. Deleting your data does not reach the system log, and how long it is kept is set on the server, not by the bot.
- The bot's own web server for the terminal keeps no access log. The terminal is reached through a proxy the operator sets up, and what that proxy records is up to the operator.
What the bot does not do
- It does not answer a message that is not addressed to it.
@everyoneand@heredo not address it. - It does not send your key anywhere but the provider you saved it for.
- It does not show your key once it is saved.
- It does not put stored keys in backups.
- It does not store your messages or its replies as such in its request log or its receipts. What a tool was given can repeat your words, until the scrub. While it is answering, it can hold tool results and parts of its reply until the turn ends.
- It does not disable your key at the provider when you remove it.
- It does not cap your spending.
- It does not hide your key from its operator.
Your site account
Your account at accounts.umbris.org is separate from the bot. It holds:
- your Discord id, your Discord username as of your last Discord sign-in, and the date the account was made;
- each login you use, Discord and any Google or GitHub login you link, with the date it was linked and the last day it was used;
- a scrambled token for each browser you are signed in on;
- once you use them, your pen name, your site roles, your blog drafts with their reviews and earlier saved versions, images you upload to them, every version of the posts you published, and the Learn lessons you mark complete.
Your Discord username is updated each time you sign in with Discord, and editors and site admins see it beside your Discord id. It stores no email address, no avatar, no password and no IP address. Everything else Discord, Google or GitHub sends at sign-in is used once to read your id there, then dropped.
While you're signed in, your browser also keeps a cookie for all of umbris.org, umbris_hint. It holds only the number 1, so the menu can say Account instead of Sign in. It says nothing about who you are. Signing out removes it, and if your sign-in runs out on its own, it goes the next time you open your account.
If you flip the Light/Dark switch, your browser keeps one more, umbris_theme, for a year. It holds only the word light or dark, so umbris.org and your account pages open the way you chose.
- Each site role granted or revoked, and each login linked or unlinked, adds a line to the account's security record.
- An account with no sign-in for 24 months is deleted, with its site data.
- Deleting your account removes everything listed above. It does not touch the bot's data: for that, see Delete my data.
- If you delete your account, the posts you published either stay up, credited to a former contributor, or come down, whichever you picked; posts that stay up keep their images. Their old copies stay in the site's Git history. Security record lines that named you, publishing record lines (who published or took down which post), roles you granted to others, and reviews you wrote of other writers' drafts stay, with your account replaced by a scramble that names no one.
- The account database can bring deleted rows back for 30 days, by default, and the operator's weekly backup of it keeps them until that backup is pruned.