OpenTool Privacy

OpenTool — Privacy Policy

Last updated: 30 August 2026

OpenTool has no server, no analytics, and no telemetry. Everything it stores lives in chrome.storage.local on your machine: settings, conversations, per-provider API keys, per-site permission grants, custom providers, and shortcuts. Nothing is synced anywhere by the extension.

What leaves your machine, and when

The provider you choose is a third party with its own privacy policy, and page content the agent reads is included in what it receives. Which provider that is is entirely your choice. Apart from the anonymous catalogue read described above, the extension talks to no one but that provider.

Nothing is sent anywhere until you send a message or start an agent run.

Saving a page as Markdown

The Save page as Markdown button converts the page you are looking at into a Markdown file. The conversion happens entirely on your machine — no model is involved and nothing is uploaded. The file is yours, and it stays in the conversation until you delete it.

The converter reads the rendered page, so it can see anything you can see — with two deliberate exceptions, because a Markdown file is something you might share:

Content that is hidden (display:none, visibility:hidden) is left out, and the file says how much was skipped.

If the agent runs the same export as part of a task, the file still goes to you — the model is sent only a short receipt saying the file was produced, not its contents.

Task recordings

You can record yourself performing a task so the agent can learn the flow and repeat it. Recording only ever starts when you press record, only on the tab you choose, and a red REC badge stays on the toolbar icon until you stop.

A recording is stored in IndexedDB on your machine and holds:

What a recording never contains: the text you type. Typed values are never captured — only the fact that a field was filled. Ordinary keystrokes are not recorded either; only command keys (Enter, Tab, Escape, arrows) and shortcut combinations such as Ctrl+C. On password, payment, one-time-code, and similar fields the element's own text is redacted as well, and the action is marked as touching a sensitive field.

OpenTool never accesses your microphone or camera. The recorder captures no audio of any kind.

Recordings stay on your machine until you ask the agent to read one. At that point its contents — including the screenshots — are sent to the LLM provider you configured, exactly like any other page the agent reads.

Permissions, and why

PermissionWhy
sidePanelThe app lives in Chrome's side panel.
storageAll local data (see above).
activeTab, tabs, tabGroupsRead the tab the agent works on; the visible "OpenTool" session tab group.
scriptingInject the page readers (accessibility tree, console capture) on demand.
debuggerCDP-driven trusted input, screenshots, and console history for agent mode. Chrome shows a "being debugged" banner while it's attached — that's expected.
notificationsOne desktop notification when an agent run finishes while Chrome isn't focused. Nothing else raises one.
downloadsThe agent's download tool, which saves a file you asked for to your Downloads folder. Each download is permission-gated per site, and only http(s) URLs are allowed.
offscreenHosts the task recorder's IndexedDB buffer. Chrome's MV3 service worker is killed after ~30s idle, so a recording in progress needs a document that outlives it. Declared with the BLOBS reason only — not USER_MEDIA, which is what would be required to reach a microphone or camera.
Host permissions (http(s)://*/*)Call the LLM endpoints you configure and act on the pages you point the agent at. Broad because you choose the provider and the pages; the extension has no fixed list of either.

Safety rails

Page-mutating agent actions are permission-gated (typed per-site grants, plan approval, always-confirm on banking/payment sites), and the agent never acts on a page whose origin changed since the model last read it.