Note: This issue has been determined and fixed locally together with hermes-agent.
Description
When running the Hermes stack via docker-compose.base.yml, there is a mismatch between the configured HERMES_HOME inside the container and the Docker volume mount target.
The problem
In templates/docker-compose.base.yml, the volume is mapped as:
volumes:
- ./data/hermes:/home/hermes/.hermes
However, the Hermes agent process inside the container uses a different home directory (e.g. /opt/data), so all session data, memories, skills, and cron state are written to the ephemeral container layer instead of the mounted volume.
Impact
- Session data, memory, skills, and cron jobs are lost on every container restart
- Users lose conversation history and persistent agent state
- Not immediately obvious — everything works until the container is recreated
Expected behavior
Session data should persist across container restarts via the volume mount.
Suggested fix (pick one)
- Change the volume mount to match where Hermes actually writes:
volumes:
- ./data/hermes:/opt/data/.hermes
- Set
HERMES_HOME explicitly in the environment so it matches the volume target:
environment:
HERMES_HOME: /home/hermes/.hermes
- Both — document the expected path and align volume + env var.
Environment
- evey-setup v2.0.0 (commit
1e276d9)
- Docker Compose (base tier)
Note: This issue has been determined and fixed locally together with hermes-agent.
Description
When running the Hermes stack via
docker-compose.base.yml, there is a mismatch between the configuredHERMES_HOMEinside the container and the Docker volume mount target.The problem
In
templates/docker-compose.base.yml, the volume is mapped as:However, the Hermes agent process inside the container uses a different home directory (e.g.
/opt/data), so all session data, memories, skills, and cron state are written to the ephemeral container layer instead of the mounted volume.Impact
Expected behavior
Session data should persist across container restarts via the volume mount.
Suggested fix (pick one)
HERMES_HOMEexplicitly in the environment so it matches the volume target:Environment
1e276d9)