Hermes Browser Extension: a side panel that feeds web context to your Hermes Agent runtime
Browser-native side panel for Hermes Agent — connect web context to your local Hermes runtime.
At a glance
- What is it?
- Hermes Browser Extension is a Chrome, Edge and Chromium side panel that connects the page you are reading to a local, Cloud or self-hosted Hermes Agent gateway. It is still load-unpacked software, and its value depends entirely on you already running Hermes somewhere.
- Who is it for?
- Adopt it if you already run Hermes Agent locally or on your own gateway and want the page you are reading inside that runtime without copy-pasting. Skip it if you have no Hermes runtime, if you want a store-installed extension, or if you expect a general-purpose browser chatbot.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 2 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 17, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The gap it fills: page context that stops at the clipboard
Most agent work in a browser ends with a manual copy. You read a page, select the useful part, paste it into a chat window, and lose the structure: the URL, the tab set, the DOM location. Hermes Browser Extension moves that step inside the browser. It is a side panel for the Hermes Agent runtime, not a chatbot of its own, and the README is explicit about the distinction: local and remote API connections can use the models, tools, skills, sessions, memory and MCP servers already configured in Hermes, while Cloud and dashboard-ticket connections are intentionally chat-only.
The intended user is someone who already has Hermes Agent running. The extension does not ship a model, a key, or a hosted backend. Three connection modes are documented: a local gateway, an attached signed-in Hermes Cloud agent tab, and a self-hosted remote API or dashboard. If none of those exist on your machine or network, the panel has nothing to talk to. That is the first thing to settle before you spend time on a load-unpacked install.
How the side panel, gateway and tab scoping fit together
The architecture is a browser extension talking to a gateway over a socket, with the Hermes runtime doing the actual agent work. The side panel is the UI; a background service worker holds the connection; content scripts extract page material. The repository layout supports this: extension/ holds sidepanel.js, background.js, content.js and content-extractor.js, with shared logic under extension/lib/, including context-delivery.mjs and content-extraction-core.mjs. The manifest is MV3.
Tab scoping is the most consequential design decision. By default only the active tab is included and sent in the prompt envelope, described in the README as 1/N tabs in prompt. Other open tabs stay excluded unless you click them IN, or use Include all tabs or AI Triage Tabs. This is a deliberate trade against context bloat. The cost is that any question spanning several pages needs manual toggling first, and the AI Tab Triage command (/sort-tabs) clusters tabs by topic, flags duplicate domains and URLs, and produces a checklist of tabs recommended for closure rather than closing them itself.
A second mechanism worth knowing is the reconnect behaviour. The README states that if the browser socket goes quiet while Hermes is still working, the panel reconnects to the live turn instead of showing a dashboard timeout. That matters because long agent turns over a socket are exactly where naive implementations show a false failure.
Installing the Hermes Browser Extension from the repository
There is no store listing. The README states plainly: Public v0.3.2, Load unpacked, and Not on the Chrome Web Store yet. So installation means cloning the repository and pointing the browser at the extension directory. The repository also ships two Windows helper scripts at the top level, Setup_Hermes_Browser_Extension.cmd and Copy_Hermes_Browser_API_Key.cmd, which the README does not document in the section available here; treat them as convenience wrappers and read them before running.
Start by getting the code and confirming the package metadata matches the release you expect:
git clone https://github.com/abundantbeing/hermes-browser-extension.git
cd hermes-browser-extension
node -p "require('./package.json').version"The version field in package.json is 0.3.2, matching the v0.3.2 release. Next, open the browser's extension page, enable developer mode, choose Load unpacked, and select the extension/ directory from the clone. The manifest.json at the repository root and the extension/ directory are the two places to look if the browser rejects the load.
The package scripts are the project's own verification path, and they are useful before you trust a build:
npm test
npm run check:jsThe test script runs node --test over tests/*.test.mjs, and its pretest step runs npm run build:firefox first, so the suite expects the Firefox build to succeed before tests execute. check:js runs node --check over the extension sources. Neither command installs anything for you; package.json marks the package private, so there is no npm publish step to rely on.
Once loaded, open the side panel and pick a connection mode. For a local gateway you supply the endpoint Hermes Agent is already serving; for Cloud you attach to a signed-in Hermes Cloud agent tab; for remote you point at your self-hosted API or dashboard. The README does not document the exact field names or default ports for these settings in the section available here, so read the settings screen itself rather than guessing.
Hermes Assist, page comments and what the extension will not do
Hermes Assist is the drafting surface: a compact panel beside supported text composers that recognizes 31 writing environments and changes its primary action to match, such as Draft a reply, Draft a post or Draft a message. The boundaries are stated rather than implied. Hermes Assist never clicks Send, Post or Submit, never navigates, purchases, or operates the page autonomously. Plain-text composers can apply a draft only after an explicit user action; framework-owned structured editors default to preview or copy.
Model routing is where the design gets interesting. When the gateway advertises per-session model locking, Hermes Assist sends the exact selected provider and model and fails closed if Hermes does not acknowledge it. Older gateways without that contract fall back to the active model configured in Hermes Agent and receive no unsupported override fields. Failing closed is the right call for reproducibility, but it also means a version mismatch between extension and gateway can block a draft that would otherwise have worked.
Page comments use the red element picker: click a target, write a note, and pins queue beside Ask Hermes until you send. The chat then shows a compact summary while Hermes receives the annotated targets, notes and crops. Closing the side panel or pressing Esc cancels the pick and comment chrome. If you want to annotate a page without filling the composer, this is the flow.
Live browser control is opt-in, leased and narrow on purpose
v0.3.0 added an opt-in MV3 controller for leased browser tabs, with explicit approval gates for consequential or privileged actions, local HTML, PDF and localhost document access after approval, scoped artifact transfer, and reviewed workflow-to-skill drafts. The constraint that matters is lease binding: control stays bound to the exact controller, tab lease, frame and document generation, and a browser-bound request never falls back to an isolated browser backend.
That last sentence is the strongest safety property in the README and also the sharpest limitation. If the page navigates, or the frame changes, or the document generation moves on, the lease no longer matches and the action should not silently retarget. The practical result is that long multi-step flows across redirects or single-page-app route changes are exactly where you should expect to re-approve. The README does not document a rollback or undo path for actions already taken, and it does not describe how leases are renewed. Verify both against your own gateway before relying on control for anything irreversible.
This is also the case where the extension is the wrong tool. It is not a general browser automation framework. If you need unattended scripted navigation, scheduled scraping, or actions with no human in the loop, the approval gates and lease model work against you by design.
How it differs from a generic browser agent or a plain chat sidebar
The obvious alternative is a general browser-automation agent that drives pages on its own. The difference is where state lives. A generic agent typically owns its own model configuration, its own tool registry and its own session store inside the extension. Hermes Browser Extension owns none of that: it is a client for a Hermes Agent runtime you operate, so sessions, memory, skills and MCP servers come from that runtime, and the extension's job is context delivery and control leasing.
The second alternative is a plain chat sidebar pointed at an API key. That is simpler to install and has no gateway to run. It also cannot use the tools, skills or MCP servers configured in Hermes, cannot attach to a Cloud agent tab, and has no equivalent of the tab scoping controls or the page-comment picker. The trade is real in both directions: the sidebar works in five minutes, while this extension assumes you already run Hermes and are willing to load unpacked software.
A third contrast is Hermes Web Alpha, which the README lists alongside Hermes Assist and session-scoped model routing as features kept from v0.2.0. The extension is the browser-native path; the README does not compare the two in the section available here, so treat that as an open question rather than a settled one.
Licence, maintenance and the cost of tracking Hermes releases
The project is MIT licensed, and package.json declares the same. MIT is permissive: you can fork, modify and redistribute, including commercially, provided the copyright notice and licence text travel with the code. The repository carries PRIVACY.md, SECURITY.md, PERMISSIONS.md and DATA-FLOW.md at the top level, which is more disclosure documentation than most browser extensions ship. None of that is legal advice; if you redistribute a modified build, read LICENSE yourself.
The maintenance picture is straightforward from the metadata. The repository is not archived, and the last push was on 2026-09-16. Releases are frequent and versioned: v0.3.0 on 2026-08-21, v0.3.1 on 2026-08-27, v0.3.2 on 2026-09-05. The upgrade cost is not in the extension itself but in the contract with your gateway. Per-session model locking, the browser-control lease, and the Cloud versus local capability split all depend on what the gateway advertises. A gateway that predates those contracts will silently degrade to chat-only or to the active configured model. Budget for reading CHANGELOG.md before each upgrade, and for testing your gateway against the new build rather than assuming forward compatibility.
One structural risk: the README describes this as a community extension for Hermes Agent by Nous Research, created by Jon Komet. It is not a first-party Nous Research product, so its release cadence is one person's, not a company's.
Editorial conclusion
Adopt it if you already run Hermes Agent locally or on your own gateway and want the page you are reading inside that runtime without copy-pasting. Skip it if you have no Hermes runtime, if you want a store-installed extension, or if you expect a general-purpose browser chatbot. Before installing, read PERMISSIONS.md and DATA-FLOW.md in the repository, confirm which of the three connection modes your gateway supports, and check whether the v0.3.0 browser-control controller is opt-in in your build. The repository is not archived and the last push was on 2026-09-16.
Frequently asked questions
Is there a Chrome extension for Hermes Agent?
Yes. Hermes Browser Extension is a Chrome, Edge and Chromium side panel for the Hermes Agent runtime, created by Jon Komet as a community extension. The README states it is not on the Chrome Web Store yet, so it installs by loading the extension/ directory unpacked.
Is there a web UI for Hermes?
The extension is a browser side panel rather than a standalone web UI, and it connects to a local gateway, a signed-in Hermes Cloud agent tab, or a self-hosted remote API or dashboard. The README also lists Hermes Web Alpha as a feature kept from v0.2.0, but does not compare it with the extension in the section available here.
Can Hermes control my browser?
Only through an opt-in MV3 controller for leased browser tabs added in v0.3.0, with explicit approval gates for consequential or privileged actions. Control stays bound to the exact controller, tab lease, frame and document generation, and a browser-bound request never falls back to an isolated browser backend.
How do I get to my browser extension?
The extension ships as a load-unpacked build, so you enable developer mode on the browser's extension page and select the extension/ directory from a clone of the repository. The README does not document a store listing or an automatic update channel.
Community notes