Skip to content

Bug: HERMES_HOME mismatch causes session data loss on container restart #2

Description

@Sileimer93

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)

  1. Change the volume mount to match where Hermes actually writes:
    volumes:
      - ./data/hermes:/opt/data/.hermes
  2. Set HERMES_HOME explicitly in the environment so it matches the volume target:
    environment:
      HERMES_HOME: /home/hermes/.hermes
  3. Both — document the expected path and align volume + env var.

Environment

  • evey-setup v2.0.0 (commit 1e276d9)
  • Docker Compose (base tier)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions