Privacy policy
Last updated: April 2026
CtxAnt is an AI sidekick that drives your Chrome from Telegram. It runs entirely on your machine. This page explains exactly what data we touch (spoiler: almost none).
ws://127.0.0.1:8765. No CtxAnt server receives your browsing data. The only data that leaves your machine is whatever you explicitly ask the AI to do, which goes to the AI provider you configured (xAI or Anthropic) using your API key.
What the extension sees
When you ask the AI to act on a page, the extension can read the active tab's DOM, take screenshots, click, type, scroll, and navigate. This only happens in response to a command you send via Telegram to your own CtxAnt bot. The extension does not observe or transmit browsing activity otherwise.
Where data goes
-
On your machine, always: the WebSocket between the extension and the CtxAnt app is local-only (
127.0.0.1). It never leaves your computer. - To your AI provider, only when you run a task: the page content or screenshots needed to complete the task are sent to xAI or Anthropic directly from the CtxAnt app on your machine, authenticated with your API key. Their privacy terms apply.
- To Telegram, for messaging: your chat with the bot goes through Telegram's servers the same way any other Telegram message does. CtxAnt does not run a relay.
- Nowhere else: CtxAnt has no server, no analytics, no third-party crash reporting, and no account system.
What's stored locally
- A pairing secret (
WS_SECRET), generated on first run and kept in a SQLite DB at~/Library/Application Support/ctxant/. - Conversation history per agent, in that same DB, so each agent bot can remember context across messages.
- Anything you explicitly tell an agent to remember via its setup flow (e.g. "target role: Senior React Dev"), in the
agent_memorytable. - Your
.envfile (Telegram token + AI key) at~/Library/Application Support/ctxant/.env, chmod 0600.
Wipe any of this at any time by quitting CtxAnt and deleting that folder.
Permissions the extension requests & why
tabs,activeTab,scripting— to read and drive pages you ask the agent to operate on.storage— to cache the pairing secret in the extension.alarms— to keep the service worker alive so the local WebSocket stays connected.<all_urls>— CtxAnt has to be able to act on any site you use. The agent does not observe those sites unless you issue a command.http://127.0.0.1/*,http://localhost/*— to pair with the CtxAnt app via its local HTTP endpoint.
Children
CtxAnt is not directed at children under 13.
Changes
If this policy changes, the updated version will be posted here and the "Last updated" date above will change. Material changes will also be announced on the GitHub repo.
Contact
Questions: open a GitHub issue or email hello@ctxant.com.