Skip to content

Bind-mount host ~/.hermes into hermes-webui container#50

Merged
cori merged 1 commit into
mainfrom
claude/hermes-webui-mount-agent-home
Jun 13, 2026
Merged

Bind-mount host ~/.hermes into hermes-webui container#50
cori merged 1 commit into
mainfrom
claude/hermes-webui-mount-agent-home

Conversation

@cori

@cori cori commented Jun 13, 2026

Copy link
Copy Markdown
Owner

The WebUI image is a thin Python server that imports the hermes-agent package in-process to serve /api/skills, /api/crons, /api/mcp/*, kanban, and plugin visibility. Without the agent source on disk those endpoints return 500 ModuleNotFoundError ('agent', 'cron', 'hermes_cli', 'tools').

Only chat completions and session data route through the gateway over HTTP; everything else is read locally. Upstream's docker-compose.yml mounts host ~/.hermes at /home/hermeswebui/.hermes for exactly this reason — the WebUI's startup script finds /hermes-agent and pip-installs it into the container's venv.

Adds a required Hermes Home Host Path form field, bind-mounts it, documents the why in description.md, bumps tipi_version 4 → 5.

The WebUI image is a thin Python server that imports the hermes-agent
package in-process to serve /api/skills, /api/crons, /api/mcp/*, kanban,
and plugin visibility. Without the agent source on disk those endpoints
return 500 ModuleNotFoundError ('agent', 'cron', 'hermes_cli', 'tools').

Only chat completions and session data route through the gateway over
HTTP; everything else is read locally. Upstream's docker-compose.yml
mounts host ~/.hermes at /home/hermeswebui/.hermes for exactly this
reason — the WebUI's startup script finds <home>/hermes-agent and
pip-installs it into the container's venv.

Adds a required Hermes Home Host Path form field, bind-mounts it,
documents the why in description.md, bumps tipi_version 4 → 5.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Hermes WebUI Runtipi app definition to require and bind-mount the host’s Hermes home directory into the container so the WebUI can import the hermes-agent Python package locally (enabling skills/crons/MCP/kanban/plugin visibility endpoints that otherwise fail).

Changes:

  • Add a required “Hermes Home Host Path” form field to collect the host path to ~/.hermes.
  • Bind-mount that host path into the container at /home/hermeswebui/.hermes.
  • Document why the mount is required and bump tipi_version (4 → 5) with an updated timestamp.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
apps/hermes-webui/metadata/description.md Documents the new required host mount and explains why WebUI needs local hermes-agent sources/config.
apps/hermes-webui/docker-compose.json Adds a second volume mount from ${HERMES_HOME_HOST_PATH} to /home/hermeswebui/.hermes.
apps/hermes-webui/config.json Adds the required form field for HERMES_HOME_HOST_PATH and increments tipi_version.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@cori cori merged commit 9d8a810 into main Jun 13, 2026
3 checks passed
@cori cori deleted the claude/hermes-webui-mount-agent-home branch June 13, 2026 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants