| Filename | Latest commit message | Latest commit date |
|---|---|---|
| defaults | ||
| meta | ||
| tasks | ||
| .gitignore | ||
| LICENSE | ||
| README.md | ||
ansible-roles-hermes
Deploys Hermes Agent as a rootless Podman container in persistent gateway mode.
- https://hermes-agent.nousresearch.com/docs/user-guide/docker
- https://hub.docker.com/r/nousresearch/hermes-agent
All state (config, API keys, sessions, skills, memories) lives under
{{ deployment_config_path }}, mounted at /opt/data in the container.
First-time setup
Run the setup wizard once against the data directory before enabling the gateway, or exec into the container:
podman run -it --rm \
-v ~/.config/hermes:/opt/data:Z \
docker.io/nousresearch/hermes-agent:latest setup
Task Configuration
- name: Setup Hermes Agent
hosts: somehost
become: true
roles:
- role: hermes
hermes_api_server_enabled: true
hermes_deploy_env:
API_SERVER_KEY: "{{ vault_hermes_api_server_key }}"
Enable the web dashboard:
hermes_dashboard: true
hermes_deploy_env:
HERMES_DASHBOARD_BASIC_AUTH_USERNAME: admin
HERMES_DASHBOARD_BASIC_AUTH_PASSWORD: "{{ vault_hermes_dashboard_password }}"
HERMES_DASHBOARD_BASIC_AUTH_SECRET: "{{ vault_hermes_dashboard_secret }}"
Deployment and Removal
systemctl --user stop container-hermes.service
Deploy
./run.sh deploy actual --tags hermes --limit somehost
Remove
./run.sh deploy actual --tags hermes --extra-vars "deployment_state=absent" --limit somehost
Notes
- Never mount the same data directory to two gateway containers simultaneously.
- Port
8642is the OpenAI-compatible API server (optional chat-only gateways can leave it unpublished). - Port
9119is published whenhermes_dashboard: true.