https://github.com/ericchansen/hermes-config
Portable personal Hermes Agent profile distribution for Windows, WSL2, and Linux
https://github.com/ericchansen/hermes-config
Last synced: about 1 month ago
JSON representation
Portable personal Hermes Agent profile distribution for Windows, WSL2, and Linux
- Host: GitHub
- URL: https://github.com/ericchansen/hermes-config
- Owner: ericchansen
- License: mit
- Created: 2026-05-28T01:31:00.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-28T01:31:03.000Z (about 2 months ago)
- Last Synced: 2026-05-31T06:27:49.413Z (about 2 months ago)
- Language: Python
- Size: 19.5 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# hermes-config
Portable personal Hermes Agent profile distribution for Windows native, WSL2, and Linux.
This repository is an official Hermes **profile distribution**. It packages the portable parts of a Hermes profile:
- `SOUL.md` personal behavior preferences
- `config.yaml` non-secret config defaults
- `mcp.json` documented distribution MCP manifest
- `skills/` personal Hermes skills
- validation scripts and OS docs
It deliberately does **not** sync secrets, OAuth tokens, session history, memories, logs, or other machine-local state.
## Install as a Hermes profile
From a local checkout:
```bash
hermes profile install /path/to/hermes-config --name personal --alias -y
hermes profile use personal
```
After this, run either:
```bash
hermes -p personal chat
# or, if --alias created a wrapper:
personal chat
```
After the repo is pushed to GitHub, install on another machine with:
```bash
hermes profile install github.com/ericchansen/hermes-config --name personal --alias
hermes profile use personal
```
Update later with:
```bash
hermes profile update personal
```
## Validate
Validate the installed profile:
```bash
./scripts/validate.sh --profile personal --require-smoke
```
Validate the active/default profile:
```bash
./scripts/validate.sh --require-smoke
```
The smoke test asks Hermes to reply with exactly `HERMES_OK` using Copilot `gpt-5.5` and the `safe` toolset.
## What is portable
| Artifact | Source controlled? | Notes |
| --- | --- | --- |
| Profile distribution manifest | Yes | `distribution.yaml` |
| Personality/preferences | Yes | `SOUL.md` |
| Personal skills | Yes | Installed into the profile's `skills/` directory |
| Non-secret config defaults | Yes | `config.yaml` |
| MCP definitions | Yes | `mcp.json` plus `config.yaml` `mcp_servers` for current Hermes runtime |
| Secrets / OAuth tokens | No | Configure per machine with `hermes auth` / `.env` |
| Memories, sessions, logs, DBs | No | User-owned runtime state |
## Repository layout
```text
distribution.yaml Hermes profile distribution manifest
SOUL.md Personal profile instructions
config.yaml Non-secret Hermes config defaults
mcp.json Distribution MCP manifest
skills/ Personal Hermes skills
scripts/ Validation entrypoints
docs/ OS-specific setup notes
templates/ Examples only, no secrets
```
## Supported environments
- Windows native Hermes under Git Bash/MSYS
- WSL2 Ubuntu
- Generic Linux
Windows native, WSL2, and Linux are separate Hermes installs. Do not copy `.env` or `auth.json` between them; authenticate each environment independently.
## Principles
- Use official Hermes profile distribution commands for install/update.
- Keep secrets and auth per-machine.
- Do not rely on ad hoc local Hermes source edits.
- Personal profile does not need mandatory secret/PII push scans.
- Validate real behavior, not just file copies.