Chrome extension + local bridge for chatting with zot from a Chrome side panel and letting zot operate browser tabs through a browser_action tool.
Install directly as a zot extension, then install the zot-chrome command shim:
zot ext install https://github.com/patriceckhart/zot-chrome-operator
node "$HOME/Library/Application Support/zot/extensions/zot-chrome-operator/bin/install-cli.js"This does not require any changes to zot. The second command creates a global zot-chrome shim at:
~/.local/bin/zot-chrome
Make sure ~/.local/bin is on your PATH. For example, add this to your shell profile if needed:
export PATH="$HOME/.local/bin:$PATH"Why the second command? zot ext install only clones/copies extension files; it does not execute install hooks. The shim is also refreshed automatically the next time zot starts normally, but running install-cli.js makes zot-chrome available immediately.
After installation, zot-chrome should be available from any directory:
zot-chrome statusBuild the unpacked Chrome extension and print its path:
zot-chrome extThe first run installs npm dependencies and builds the unpacked extension if needed. The command prints a path ending in dist, for example:
/Users/you/Library/Application Support/zot/extensions/zot-chrome-operator/dist
Then install it in Chrome:
- Open
chrome://extensions. - Enable Developer mode in the top-right corner.
- Click Load unpacked.
- Select the printed
distdirectory. - Pin the
zotextension if you want quick access. - Click the extension icon to open the side panel.
After updates, run zot-chrome ext again if needed, then click the reload button for the unpacked extension on chrome://extensions.
zot-chrome start
zot-chrome status
zot-chrome logs
zot-chrome stopzot-chrome start ensures the Chrome extension is built, then starts the local bridge in the background. The bridge starts zot rpc --no-session with the bundled zot extension. The Chrome side panel connects to ws://localhost:9224 and executes browser actions requested by zot.
Optional environment:
ZOT_PROVIDER=anthropic ZOT_MODEL=claude-sonnet-4-5 zot-chrome start
PORT=9225 zot-chrome startzot-chrome start # start the bridge server in the background
zot-chrome stop # stop the bridge server
zot-chrome status # check bridge state
zot-chrome logs # tail bridge logs
zot-chrome ext # print/build the unpacked Chrome extension pathThe registered zot tool can:
- list, create, switch, and close tabs
- inspect page context
- navigate
- click
- type into native and rich editors
- select options
- scroll
- extract page text
- wait
No chat session is persisted; the bridge uses zot --no-session.
MIT
