When hermes-agent is not discoverable (common in Docker), create_profile_api() raised a hard RuntimeError while list and delete already had manual fallbacks. Changes: - Add _create_profile_fallback() that bootstraps profile directory structure directly (matching upstream hermes_cli.profiles: 8 subdirs + config clone) - Extract _validate_profile_name() so validation works without hermes_cli - Add constants _PROFILE_ID_RE, _PROFILE_DIRS, _CLONE_CONFIG_FILES matching upstream hermes-agent - Remove :ro from docker-compose.yml hermes home mount so profiles dir is writable inside the container Closes #44 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
23 lines
602 B
YAML
23 lines
602 B
YAML
version: "3.8"
|
|
|
|
services:
|
|
hermes-webui:
|
|
build: .
|
|
ports:
|
|
- "127.0.0.1:8787:8787"
|
|
volumes:
|
|
# Persist session data, settings, and projects across restarts
|
|
- hermes-data:/data
|
|
# Mount hermes home for agent features and profile management
|
|
- ${HERMES_HOME:-${HOME}/.hermes}:/root/.hermes
|
|
environment:
|
|
- HERMES_WEBUI_HOST=0.0.0.0
|
|
- HERMES_WEBUI_PORT=8787
|
|
- HERMES_WEBUI_STATE_DIR=/data
|
|
# Optional: set a password for remote access
|
|
# - HERMES_WEBUI_PASSWORD=your-secret-password
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
hermes-data:
|