| title | Hermes Agent |
|---|---|
| sidebarTitle | Hermes |
Fetch and follow https://raw.githubusercontent.com/agentrhq/webcmd/main/start.md to set up Webcmd end to end.
- Node.js 20.6+ on the Hermes host
- The
webcmdnpm CLI, installed globally on the Hermes host - Hermes
terminaltoolset enabled (needed to runwebcmd) - A browser runtime; confirm with
webcmd doctorbefore browser work
Install Webcmd and its skills on the Hermes host:
npm install -g @agentrhq/webcmd
webcmd doctor
webcmd skills addWhen webcmd skills add prompts, choose the agents provider (installs into ~/.agents/skills/). Then make Hermes load those skills by adding the external skills directory to ~/.hermes/config.yaml:
skills:
external_dirs:
- ~/.agents/skillsHermes then reads webcmd-browser as a skill. Restart Hermes after changing config and confirm the skill is discoverable.
Hermes' web surface spans three toolsets:
| Toolset | Tools | What to do |
|---|---|---|
web |
web_search, web_extract |
Keep enabled for web_search; prefer Webcmd over web_extract |
browser |
browser_navigate, browser_click, browser_type, browser_scroll, browser_press, browser_back, browser_snapshot, browser_vision, browser_console, browser_get_images, plus CDP-gated browser_cdp and browser_dialog |
Keep for localhost, route open-web work to Webcmd |
x_search |
x_search |
Keep — it is search, and it auto-enables whenever xAI credentials are present |
web_search lives in web, not in browser, so disabling browser leaves search intact.
Hermes toggles toolsets, not individual tools. There is no way to drop web_extract while keeping web_search, so leave the web toolset on and steer the agent with instructions instead. Add this to your Hermes system prompt or project instructions:
Use Webcmd (
webcmd --profile work session create "Work Project", thenwebcmd --profile work --session work-project-k7 browser tabsvia theterminaltoolset) for anything on the open web: fetching, authenticated third-party sites, and multi-step automation. Prefer it overweb_extract. Use thebrowser_*tools only for the app being edited — localhost dev server, console and network triage, visual checks. Keep usingweb_searchandx_searchto find URLs.
Also check the computer_use toolset. It drives the whole desktop rather than a browser, so it overlaps with Webcmd whenever it is aimed at a website. Disable it if the user does not need desktop control.
Full override (opt-in). If the user never debugs local apps through Hermes' browser, disable the toolset outright:
hermes tools disable browserOr in ~/.hermes/config.yaml:
agent:
disabled_toolsets:
- browserRecommended: use hermes tools disable browser so the terminal toolset stays available.
Do not disable the terminal toolset — that is how Hermes runs webcmd.
| Symptom | What to try |
|---|---|
webcmd doctor is red |
Fix the browser runtime first; browser commands depend on it. |
| Skills not loading in Hermes | Confirm skills.external_dirs includes ~/.agents/skills, restart Hermes, and check skill discovery. |
Hermes uses browser_* for open-web work |
Remind it in the system prompt that Webcmd handles the open web; for a hard block, add browser to agent.disabled_toolsets and restart Hermes. |
web_search missing after disabling browser |
Unexpected — web_search is in the web toolset. Confirm web is still enabled with hermes tools. |
Search disappeared after disabling web |
Expected: web_search and web_extract share one toolset. Re-enable web and steer the agent with instructions instead. |
x_search appeared on its own |
Expected: it auto-registers when XAI_API_KEY or Grok OAuth is configured. Leave it — it is search. |
webcmd not found in Hermes terminal |
Confirm webcmd is on the host PATH that Hermes' terminal toolset uses; non-interactive shells may skip shell init files. |
| Browser Session idles or loses its window | Keep its immutable, Profile-scoped ID; webcmd --profile work --session work-project-k7 browser tabs reopens it. Use webcmd --profile work session list to inspect it and webcmd --profile work session close work-project-k7 when finished. |
start.md— common setup, auth profiles and human handoff, and security.webcmd-browser— the raw browser session surface.