Skip to content

About

Transforms the standard Zen Browser findbar into a modern, floating, AI-powered chat interface. Inspired by Arc Browser.

Resources

Contributing

Stars

8 stars

Watchers

0 watching

Forks

Repository files navigation

BrowseBot

Inspired by Arc Browser, this script transforms the standard findbar and URL bar in Zen Browser into modern, AI-powered command interfaces. The findbar becomes a floating chat panel for deep interaction with page content, while the URL bar offers quick AI-powered actions and searches. Heavy-duty agentic work lives in a dedicated BrowseBot section inside the Zen Library, which stays open across tab and workspace switches.

BrowseBot.1.mp4

🌟 Features

  • 🎨 Floating Chat UI: A sleek, draggable, and resizable findbar that transforms into an AI chat panel.
  • πŸ“š Library AI: A persistent BrowseBot section inside the Zen Library with chat, agent, and build modes.
  • πŸš€ URL Bar AI Commands: Activate an AI command mode directly in your URL bar for quick searches and navigation.
  • πŸ€– Multi-Provider Support: Works out of the box with Pollinations AI (free, no API key needed). Also integrates with Google Gemini, Mistral AI, OpenAI, Anthropic Claude, xAI Grok, Perplexity AI, Cerebras, DeepSeek, OpenRouter, any OpenAI-compatible endpoint, and local models via Ollama.
  • 🧠 Page Content Awareness: Lets the AI read the current page's text, HTML, and even YouTube transcripts to provide context-aware answers.
  • πŸ‘‘ Powerful AI Tool-belt: In Library agent mode, the AI controls the browser: manages tabs, workspaces, bookmarks, performs searches, and interacts with page elements.
  • πŸ–±οΈ Context Menu Integration: Right-click to quickly ask the AI about selected text or summarize the current page.
  • πŸ“š Citation Support: Get direct quotes from the page text that support the AI's answer.
  • πŸ”§ Highly Customizable: Fine-tune every aspect through settings or about:config.
  • ⌨️ Custom Shortcuts: Configure keyboard shortcuts to open the AI chat and URL bar commands.

Demo Videos

Library AI (Chat, Agent, Build)

library-ai-final-trailer-small.mp4

URL Bar AI

URL.bar.AI.mp4

🚨 Caution

  • Privacy: To answer questions about a webpage, this script sends the text content of the page to your selected provider. Please be aware of the privacy implications before using this feature on pages with sensitive information. Or if you are using ollama you don't have to worry about this.

  • Prompt Injectation: Be aware of prompt injectation attacks and use this mod only in websites you trust.

βš™οΈ Installation

Sine

  1. Install latest version of Sine (if you haven't already).
  2. Restart Zen Browser.
  3. Open settings and go to the Sine tab.
  4. Search for BrowseBot.
  5. Click Install.
  6. A toast for restart should appear. Click on that to restart Zen.
  7. Enjoy your new AI assistant! ✨

Note

If you want to try Early Beta version you can use the beta branch https://github.com/Vertex-Mods/Browse-Bot/tree/beta

Manual Install (fx-autoconfig)

For advanced users or those not using Sine or who are willing to contribute:

  1. Setup fx-autoconfig: If you haven't already, follow the setup instructions at MrOtherGuy/fx-autoconfig.

  2. Clone this Repository: Open a terminal or command prompt, navigate to the js directory created by fx-autoconfig inside your profile folder, and clone the repository with the name custom:

    git clone https://github.com/BibekBhusal0/zen-custom-js.git custom
  3. Import the Script: In your JS directory, create a new file import.uc.mjs (or add to an existing one), and add the following line:

    import "./custom/findbar-ai/index.js";
  4. Import the Styles: In your userChrome.css file, add the following line:

    @import "js/custom/findbar-ai/style.css";
  5. Restart Zen Browser: Restart the browser for all changes to take effect. You might need to clear the startup cache from about:support.

Note

No build step is needed. BrowseBot runs straight from source and has zero npm dependencies. Installing Bun is optional and only matters if you want to build the single-file release bundle yourself.

πŸš€ Usage

Findbar AI Chat

  1. Configure Provider: After installation, press Ctrl+Shift+F. No setup is needed to start: BrowseBot defaults to Pollinations AI, which is free and requires no API key. To use a different provider, select it and paste its API key instead. For Ollama, set the local Base URL in the settings.

Note

The default Pollinations tier is anonymous and rate limited (about one request per 15 seconds) and serves smaller models on sponsor funded infrastructure, so heavy or agentic use can feel slow. This is just for preview which works without key but is not recommended for heavy usage.

  1. Save the Key: Paste the key into the input field and click "Save". The chat interface will now appear.
  2. Start Chatting:
    • Press Ctrl+F to open the standard findbar.
    • In the default (non-minimal) view, click the "Expand" button to switch to AI chat. In Minimal Mode, just enter your query and click "Ask".
    • Type your questions about the current page and press on send button.
    • Use Ctrl+Shift+F to open the AI chat directly, using any text you have selected on the page as the initial prompt (this shortcut will not work if it has been changed).

URL Bar AI Commands

  1. Press Ctrl+Space to activate AI mode in the URL bar (this shortcut will not work if has been changed).
  2. Type your command directly (e.g., "search for red pandas", "open github").
  3. Press Enter to execute the command. The AI will perform the action, often providing feedback via a small toast notification.

Note

The URL bar AI is intentionally scoped to search, navigation, and opening links. For tab, workspace, and bookmark management, use the Library AI agent mode instead.

Library AI

Note

The Library section needs a Zen build with the Library feature (v1.23b or higher).

  1. Press Alt+Shift+A (customizable) to toggle the Library AI, or run Toggle BrowseBot Library from the command palette. The section appears in the Library sidebar as AI.
  2. Pick a mode with the header buttons or a slash command:
    • Chat (/chat): plain Q&A. No tools, no automatic page context.
    • Agent (/agent): the full browser tool-belt. It reads and organizes tabs, searches the web, manages bookmarks and workspaces, clicks and fills page elements, and reads YouTube transcripts.
    • Build (/build): styles the browser and builds Sine mods. Describe the look you want and it stages a live CSS and JS preview, then saves it as a mod.
  3. Type @ to reference any open tab. Picking one hands its full page content to the AI with your message.
  4. Slash commands accept a trailing message: /agent close all youtube tabs switches to agent mode and sends the rest immediately.
  5. Manage chats with /new, /delete, /close and /continue, or open saved chats from the history button in the header.

Command Palette Integration

BrowseBot integrates with Zen Command Palette to provide quick access to common actions:

  1. Press Ctrl+L to open the palette.
  2. Available BrowseBot commands:
    • Summarize Page: Opens the findbar AI and prompts to summarize the current page.
    • Open BrowseBot Settings: Opens the BrowseBot settings modal.
    • Open BrowseBot Settings: General/Surfaces/Models/Prompts: Opens the settings modal directly on that tab.
    • Toggle URL bar AI mode: Activates AI mode in the URL bar.
    • Expand findbar AI: Opens the findbar directly in AI chat mode.
    • Toggle BrowseBot Library: Opens the BrowseBot section in the Zen Library.

πŸ”§ Customization

You can customize the BrowseBot through the settings modal (found in the chat header) or via about:config.

Preferences (`about:config`)

Preference Type Default Description
extension.browse-bot.findbar-ai.enabled Boolean true Toggles the findbar AI feature on or off.
extension.browse-bot.urlbar-ai-enabled Boolean true Toggles the URL bar AI feature on or off.
extension.browse-bot.urlbar-ai.hide-suggestions Boolean true Hides autocomplete suggestions in the URL bar when AI mode is active.
extension.browse-bot.urlbar-ai.animations-enabled Boolean true Enables animations for the URL bar AI.
extension.browse-bot.findbar-ai.minimal Boolean true Toggles a simpler, more compact UI for the findbar.
extension.browse-bot.findbar-ai.persist-chat Boolean false Persists chat history across tab switches (but not browser restarts).
extension.browse-bot.findbar-ai.dnd-enabled Boolean true Enables dragging to move and resizing of the findbar window.
extension.browse-bot.findbar-ai.remember-dimensions Boolean true Remembers the size of the findbar window across sessions.
extension.browse-bot.findbar-ai.width Number 500 The width of the findbar.
extension.browse-bot.findbar-ai.position String "top-right" Sets the corner where the findbar snaps. Options: top-left, top-right, bottom-left, bottom-right.
extension.browse-bot.findbar-ai.background-style String "solid" The background style of the findbar. Options: solid, acrylic, pseudo.
extension.browse-bot.llm-provider String "pollinations" Which AI provider to use. Options: pollinations, gemini, mistral, openai, claude, grok, perplexity, cerebras, deepseek, openrouter, ollama, custom.
extension.browse-bot.pollinations-model String "openai" The Pollinations model ID to use. Pick from the live-fetched list in settings.
extension.browse-bot.pollinations-api-key String (empty) Optional personal key from enter.pollinations.ai. Unlocks more models and tool use; without it the free anonymous tier applies.
extension.browse-bot.deepseek-api-key String (empty) Your API key for DeepSeek.
extension.browse-bot.deepseek-model String "deepseek-flash" The specific DeepSeek model to use.
extension.browse-bot.openrouter-api-key String (empty) Your API key for OpenRouter.
extension.browse-bot.openrouter-model String "google/gemini-3.8-flash" The OpenRouter model ID to use.
extension.browse-bot.cerebras-api-key String (empty) Your API key for Cerebras AI.
extension.browse-bot.cerebras-model String "gpt-oss-120b" The specific Cerebras model to use.
extension.browse-bot.gemini-api-key String (empty) Your API key for Google Gemini.
extension.browse-bot.gemini-model String "gemini-3.8-flash" The specific Gemini model to use.
extension.browse-bot.mistral-api-key String (empty) Your API key for Mistral AI.
extension.browse-bot.mistral-model String "mistral-medium-latest" The specific Mistral model to use.
extension.browse-bot.openai-api-key String (empty) Your API key for OpenAI.
extension.browse-bot.openai-model String "gpt-6.1-sol" The specific OpenAI model to use.
extension.browse-bot.claude-api-key String (empty) Your API key for Anthropic Claude.
extension.browse-bot.claude-model String "claude-sonnet-5-5" The specific Claude model to use.
extension.browse-bot.grok-api-key String (empty) Your API key for xAI Grok.
extension.browse-bot.grok-model String "grok-4.7" The specific Grok model to use.
extension.browse-bot.perplexity-api-key String (empty) Your API key for Perplexity AI.
extension.browse-bot.perplexity-model String "sonar" The specific Perplexity model to use.
extension.browse-bot.ollama-base-url String http://localhost:11434/api The base URL for your local Ollama API.
extension.browse-bot.ollama-model String "qwen3:8b" The specific Ollama model to use.
extension.browse-bot.custom-api-key String (empty) Your API key for any OpenAI-compatible custom provider.
extension.browse-bot.custom-model String (empty) The model name to use on the custom provider.
extension.browse-bot.custom-base-url String (empty) The base URL for your OpenAI-compatible API (e.g. https://api.your-provider.com/v1).
extension.browse-bot.findbar-ai.context-menu-enabled Boolean true Toggles the "Ask AI" item in the right-click context menu.
extension.browse-bot.findbar-ai.context-menu-autosend Boolean true If true, clicking the context menu item sends the request to the AI immediately.
extension.browse-bot.findbar-ai.context-menu-command-no-selection String "Summarize current page" The command to send when no text is selected.
extension.browse-bot.findbar-ai.context-menu-command-with-selection String "Explain this in context of current page:\n\n{selection}" The command to send when text is selected. {selection} is the placeholder.
extension.browse-bot.library-ai.max-tool-calls Number 0 The maximum number of consecutive tool calls the AI can make in one turn. 0 means unlimited.
extension.browse-bot.findbar-ai.max-context-chars Number 0 Maximum page or transcript characters sent per message. 0 means unlimited.
extension.browse-bot.findbar-ai.system-prompt String (empty) Custom system prompt for the findbar AI.
extension.browse-bot.urlbar-ai.system-prompt String (empty) Custom system prompt for the URL bar AI.
extension.browse-bot.library-ai.chat-system-prompt String (empty) Custom system prompt for the Library chat mode.
extension.browse-bot.library-ai.agent-system-prompt String (empty) Custom system prompt for the Library agent mode.
extension.browse-bot.library-ai.build-system-prompt String (empty) Custom system prompt for the Library build mode.
extension.browse-bot.library-ai.confirm-before-tool-call Boolean true If true, prompts you for confirmation before the AI executes any tools.
extension.browse-bot.findbar-ai.stream-enabled Boolean true AI response will be streamed in chunks.
extension.browse-bot.findbar-ai.citations-enabled Boolean false If true, the AI will try to cite its sources from the page content.
extension.browse-bot.llm.temperature Number 0.7 Controls randomness.
extension.browse-bot.llm.top-p Number 1.0 Nucleus sampling limits.
extension.browse-bot.llm.top-k Number 40 Limits sampling to top K tokens.
extension.browse-bot.llm.frequency-penalty Number 0.0 Penalizes frequent tokens.
extension.browse-bot.llm.presence-penalty Number 0.0 Penalizes repeated tokens.
extension.browse-bot.llm.max-output-tokens Number 2048 Maximum number of tokens to generate.
extension.browse-bot.findbar-ai.shortcut-findbar String "ctrl+shift+f" Keyboard shortcut to open findbar AI. Format: ctrl+shift+f (press keys to record in settings).
extension.browse-bot.urlbar-ai.shortcut-urlbar String "ctrl+space" Keyboard shortcut to toggle URL bar AI mode. Format: ctrl+space (press keys to record in settings).
extension.browse-bot.library-ai.shortcut-library String "alt+shift+a" Keyboard shortcut to open the BrowseBot Library section.
extension.browse-bot.library-ai.enabled Boolean true Adds the BrowseBot section to the Zen Library (needs a Zen build with the Library feature).
extension.browse-bot.library-ai.mode String "chat" Library AI mode. Options: chat, agent, build.
extension.browse-bot.debug-mode Boolean false Set to true to enable verbose logging in the Browser Console for troubleshooting.

⌨️ Keymaps

Default keyboard shortcuts:

Shortcut Action
Ctrl+Shift+F Opens the findbar directly into the expanded AI mode.
Ctrl+Space Toggles the URL bar into AI command mode.
Alt+Shift+A Toggles the BrowseBot Library section (needs a Zen build with the Library feature).
Escape If the AI interface is expanded, it collapses to the standard findbar. If not expanded, closes the findbar.
Alt + Enter Sends the text from the standard findbar to the AI, expanding the view.

Note

You can customize these shortcuts in the Settings modal under "Keyboard Shortcuts".

πŸ”¨ Tool-calls

Tool calls live in the Library AI agent mode, which stays open across tab and workspace switches, so long multi-step runs are never aborted by navigation.

Note

The Findbar AI is page Q&A only and makes no tool calls. The URL Bar AI uses a focused subset for quick actions: Search, Navigation, and UI Feedback (toast notifications).

Currently available tool calls are (full set in Library agent mode):

  • Search: Searches a term on your default or a specified search engine.
  • Navigation: openLink in various locations (current/new tab, window, private, glance, splits), newSplit with multiple URLs, and splitExistingTabs.
  • Tab Management: A full suite of tools to getAllTabs (also lists tab folders, including empty ones), searchTabs, closeTabs, reorderTab, addTabsToFolder, removeTabsFromFolder, createTabFolder, deleteTabFolder, addTabsToEssentials, and removeTabsFromEssentials.
  • Page Interaction: getPageTextContent to read text, getHTMLContent for the full source, clickElement using a CSS selector, and fillForm inputs.
  • YouTube: getYoutubeTranscript, getYoutubeDescription, and getYoutubeComments for the current video.
  • Bookmark Management: A full suite of tools to searchBookmarks, getAllBookmarks, createBookmark, addBookmarkFolder, updateBookmark, and deleteBookmark.
  • Workspace Management: Tools to getAllWorkspaces, createWorkspace, updateWorkspace, deleteWorkspace, moveTabsToWorkspace, and reorderWorkspace.
  • UI Feedback: showToast to display temporary notifications to the user.

βœ”οΈ Development Roadmap

  • Pin/unpin the findbar
  • Context Menu integration
  • Different background styles (solid, acrylic, pseudo)
  • Smooth animations for all interactions
  • Custom system prompts
  • Add Settings.
  • Copy and regenerate buttons on chat messages
  • Slash Command and variables (library chat: /chat, /agent, /build)
  • Adding more tools (tab groups, workspaces, background search)
  • Giving AI YouTube transcript
  • Tagging multiple tabs (@ tab mentions in library chat)
  • Advanced LLM parameters (temperature, top-k, etc.)
  • Keyboard shortcut customization
  • Build mode (styles the browser and builds Sine mods)

πŸ™ Credits and Acknowledgements

  • This mod is released through Vertex Mods, and I, Bibek Bhusal, am the creator of this mod.
  • natsumi-browser: For inspiration on the modern, floating UI styles in Findbar.
  • Arc-2.0: For inspiration for animation for URL bar.
  • Arcline: For implementation of pseudo background.
  • aminomancer/uc.css.js: The _overrideFindbarMatchesDisplay function in findbar-ai.uc.js is adapted from JS/findbarMods.uc.js under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License (CC BY-NC-SA 4.0).
  • 12th-devs/library-tweaks: The BrowseBot Library section follows the native Library section contract (section classes, zenLibrarySections registration, gZenLibrary.openTab) demonstrated by this mod.
  • 12th-devs for helping me in each step of developement, styling, and design.
  • realSilasYang Finding out lots of issues and fixing them as well.

πŸ“œ License

This is licensed under MIT license. Check License for more details.

About

Transforms the standard Zen Browser findbar into a modern, floating, AI-powered chat interface. Inspired by Arc Browser.

Resources

Contributing

Stars

8 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages