hermes-webui

Installs and configures the Hermes WebUI on Linux with systemd, password auth, and Tailscale access.

Updated Jul 10, 2026
One-click install
npx skills add https://github.com/timchap/dot-hermes --skill hermes-webui-timchap
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: hermes-webui
Source: https://github.com/timchap/dot-hermes/tree/main/skills/meta/hermes-webui
Command: npx skills add https://github.com/timchap/dot-hermes --skill hermes-webui-timchap

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pyyaml, cryptography.

What problem does it solve? Deploying the Hermes WebUI on a Linux host involves several error-prone steps — Python venv setup, systemd service configuration, password authentication, and secure remote access — where small mistakes (like running start.sh with python instead of bash) cause silent failures. ## Core Features & Use Cases - Guided Installation: Clone the repo, create a Python venv with pyyaml and cryptography, and configure the .env file with host and password settings. - Systemd Service Setup: Provides a ready-to-use unit file with correct ExecStart (bash, not python), PATH including the hermes-agent venv, and HERMES_HOME environment. - Secure Remote Access: Enforces password authentication and recommends Tailscale or SSH tunneling instead of exposing port 8787 publicly. - Use Case: You need to bring up the Hermes WebUI on a new server and access it from your phone — follow the procedure to install, enable the service, verify the health endpoint, and connect over Tailscale. ## Quick Start Set up the Hermes WebUI on this Linux machine with a systemd service, password auth, and Tailscale access, then verify the health endpoint responds.

Frequently Asked Questions about hermes-webui

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I install the Hermes WebUI on a Linux server?▼

Clone the repo to /home/hermes/hermes-webui, create a Python venv, and install pyyaml and cryptography. Then create a .env file with HERMES_WEBUI_HOST=0.0.0.0 and a password, install the systemd unit, and start the service.

How do I set up a systemd service for a Python web app?▼

Create a unit file with Type=simple, set WorkingDirectory to the app path, and use ExecStart pointing to the start script. For Hermes WebUI, ExecStart must call bash on start.sh, and PATH must include the hermes-agent venv.

Why does the Hermes WebUI service fail with a Python SyntaxError?▼

The SyntaxError happens when ExecStart runs start.sh through python instead of bash, because start.sh is a shell script. Fix the unit file to use ExecStart=/usr/bin/bash /home/hermes/hermes-webui/start.sh.

Is it safe to expose port 8787 to the public internet?▼

No, port 8787 serves plain HTTP with no TLS despite being flagged as an HTTPS port by scanners. Use Tailscale or SSH tunneling for remote access, and always enable password authentication before exposing it beyond localhost.

Why does the WebUI start but use default configuration?▼

This happens when the hermes-agent venv is missing from PATH or HERMES_HOME is unset in the service file. Check logs for '(not found, using defaults)' and verify PATH includes /home/hermes/.hermes/hermes-agent/venv/bin.