Legal
Privacy policy.
This describes what the Kiro Bot desktop app and this site actually do with your data, checked against the source. Last updated August 23, 2026.
What gets stored
Kiro Bot keeps your data in a Supabase database. Row-level security scopes every table to the account that owns the row, so one account cannot read another's.
- Account
- Your email address and password, held by Supabase Auth. A profile row stores your email as the display name.
- Chats
- Every conversation title and message, including what you type, what the bot answers, and the tool calls it made.
- Workspace records
- The tool calls in a conversation and their output, so Agent Activity and Terminal can show the run afterwards.
- Usage
- Model name and input/output token counts per run, which is what the in-app usage summary reads.
- Skills
- Any skill you install: its name, description, markdown content, and source URL.
- Provider connections
- Credentials for accounts you connect yourself — Anthropic OAuth tokens, or an OpenAI or Gemini API key.
- Machines
- If you provision a persistent cloud VM: its provider IDs, region, status, and the bots and job records that belong to it.
- Feedback
- The thumbs up or down you leave on a bot message.
Who else sees it
An AI agent cannot answer without sending your message to a model, and cannot run a command without a machine to run it on. These are the services that receive your data, and what they receive.
- OpenRouter
- The default free model runs on OpenRouter and is paid for by RofiantAI. Your prompts, chat history, and tool results are sent there to produce a reply.
- Anthropic
- Only if you connect your own Claude account. Chats you run on a Claude model are sent to Anthropic under your subscription.
- Google (Gemini)
- Voice input only. Recorded audio is checked for silence locally, then sent to Gemini for transcription.
- E2B
- The default sandbox. Files the agent creates and commands it runs live in an E2B cloud microVM, created on the first tool call in a conversation.
- Fly.io
- Only if you provision a persistent machine. It runs on a Fly.io VM under your account.
- Supabase
- Hosts the database and authentication. Everything in the table above is stored there.
Self-hosting the backend with SANDBOX_BACKEND=local runs the agent's workspace in a container on your own computer instead of E2B, so files and
commands never leave the machine.
What we do not do
There is no analytics, tracking, or advertising code in the desktop app or on this site. We do not sell your data, and we do not use your chats to train models. Nothing is shared beyond the services listed above. Those providers set their own retention and training policies for what they receive, and free-tier model hosting in particular may retain prompts, so read their terms before sending anything sensitive.
Credentials you connect
Connecting your own Anthropic, OpenAI, or Gemini account stores that token or API key in the database so the backend can call the provider on your behalf. Those columns are protected by row-level security and database access control, but they are not yet encrypted at the column level. Anyone who obtained the database could spend the quota on those accounts. Disconnect a provider in Settings to delete the stored credential.
Deleting your data
Deleting a conversation deletes its messages, tool calls, and usage records. Deleting your account removes every row tied to it — profile, conversations, messages, usage, skills, provider connections, and machine records — because each one is keyed to your account and cascades with it. You can also deactivate instead, which locks sign-in without deleting anything.
Sandbox workspaces are temporary. E2B shuts one down after an hour without activity, and its files go with it.
Questions
Open an issue at github.com/RofiantAI/KiroBots/issues. The code behind every claim on this page is in the repository.