Hermod � a fork of Hermes Agent by Nous Research, modified for our own use.
  • Python 75.5%
  • TypeScript 20.9%
  • JavaScript 1.4%
  • TeX 0.5%
  • Shell 0.4%
  • Other 1.2%
Find a file
Kai Robbins f5b499b837
Some checks failed
ci.yaml / Initial commit: Hermod fork of Hermes Agent by Nous Research (push) Failing after 0s
Deploy Site / deploy-vercel (push) Has been cancelled
Deploy Site / deploy-docs (push) Has been cancelled
Docker Build, Test, and Publish / Detect affected areas (push) Has been cancelled
Docker Build, Test, and Publish / build (amd64, type=gha,scope=docker-amd64, type=gha,mode=max,scope=docker-amd64, linux/amd64, ubuntu-latest) (push) Has been cancelled
Docker Build, Test, and Publish / build (arm64, type=gha,scope=docker-arm64, type=gha,mode=max,scope=docker-arm64, linux/arm64, ubuntu-24.04-arm) (push) Has been cancelled
Docker Build, Test, and Publish / publish (amd64, type=gha,scope=docker-amd64, type=gha,mode=max,scope=docker-amd64, linux/amd64, ubuntu-latest) (push) Has been cancelled
Docker Build, Test, and Publish / publish (arm64, type=gha,scope=docker-arm64, type=gha,mode=max,scope=docker-arm64, linux/arm64, ubuntu-24.04-arm) (push) Has been cancelled
Docker Build, Test, and Publish / merge (push) Has been cancelled
auto-fix lint issues & formatting / Generate eslint --fix patch (push) Has been cancelled
auto-fix lint issues & formatting / Apply patch (push) Has been cancelled
Nix flake check / Detect affected areas (push) Has been cancelled
Nix flake check / nix flake check (push) Has been cancelled
Build Skills Index / build-index (push) Has been cancelled
Build Skills Index / trigger-deploy (push) Has been cancelled
Initial commit: Hermod fork of Hermes Agent by Nous Research
Personal fork. See README.md for the full attribution.

Forked from https://github.com/NousResearch/hermes-agent (commit 13ce0c5c6).
Source tree carried over verbatim with two rebrand commits applied:

  e81858385  rebrand: Hermod — fork of Hermes Agent by Nous Research
  3d62db80d  license: credit modifications copyright to the Hermod fork

The full upstream history is intentionally not preserved in this fork; the
working tree is byte-for-byte identical to upstream HEAD with the two
rebrand commits applied on top.
2026-08-19 10:17:14 -04:00
.github Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
acp_adapter Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
agent Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
apps Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
assets Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
contributors Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
cron Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
datagen-config-examples Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
docker Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
docs Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
evals Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
gateway Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_cli Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
locales Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
mcp-research-data Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
native/fts5_cjk Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
nix Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
optional-mcps Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
optional-skills Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
plugins Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
providers Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
scripts Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
skills Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
tests Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
tests-js Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
tools Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
tui_gateway Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
ui-tui Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
web Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
website Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.coderabbit.yaml Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.dockerignore Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.env.example Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.envrc Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.gitattributes Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.gitignore Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.hadolint.yaml Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.mailmap Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.npmrc Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.nvmrc Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.prettierignore Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.prettierrc Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
.python-version Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
AGENTS.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
batch_runner.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
cli-config.yaml.example Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
cli.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
constraints-termux.txt Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
CONTRIBUTING.es.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
CONTRIBUTING.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
docker-compose.windows.yml Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
docker-compose.yml Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
Dockerfile Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
eslint.config.shared.mjs Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
flake.lock Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
flake.nix Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_bootstrap.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_constants.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_logging.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_state.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_state_common.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_state_portability.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_state_schema.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_state_search.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
hermes_time.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
LICENSE Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
log.txt Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
mcp_serve.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
mini_swe_runner.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
model_tools.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
package-lock.json Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
package.json Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
pyproject.toml Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
README.es.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
README.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
README.ur-pk.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
README.zh-CN.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
registration_lifecycle.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
run_agent.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
SECURITY.es.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
SECURITY.md Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
setup-hermes.sh Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
setup.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
sqlite_leak_fix.png Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
toolset_distributions.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
toolsets.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
trajectory_compressor.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
utils.py Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00
uv.lock Initial commit: Hermod fork of Hermes Agent by Nous Research 2026-08-19 10:17:14 -04:00

Hermod

Hermod

Hermod is a personal fork of Hermes Agent by Nous Research. All credit for the original design, architecture, and implementation goes to the Hermes team. This fork exists because we wanted to make our own modifications — bug fixes, tweaks, and experiments — on top of the upstream project. If you want the canonical, supported version of Hermes, use the upstream repo.

Hermod is an AI agent with a built-in learning loop: it creates skills from experience, improves them during use, nudges itself to persist knowledge, searches its own past conversations, and builds a deepening model of who you are across sessions. Run it on a $5 VPS, a GPU cluster, or serverless infrastructure that costs nearly nothing when idle. It's not tied to your laptop — talk to it from Telegram while it works on a cloud VM.

Use any model you want — OpenRouter, OpenAI, Anthropic, your own endpoint, and many others. Switch with hermes model — no code changes, no lock-in.

A real terminal interfaceFull TUI with multiline editing, slash-command autocomplete, conversation history, interrupt-and-redirect, and streaming tool output.
Lives where you doTelegram, Discord, Slack, WhatsApp, Signal, and CLI — all from a single gateway process. Voice memo transcription, cross-platform conversation continuity.
A closed learning loopAgent-curated memory with periodic nudges. Autonomous skill creation after complex tasks. Skills self-improve during use. FTS5 session search with LLM summarization for cross-session recall. Honcho dialectic user modeling. Compatible with the agentskills.io open standard.
Scheduled automationsBuilt-in cron scheduler with delivery to any platform. Daily reports, nightly backups, weekly audits — all in natural language, running unattended.
Delegates and parallelizesSpawn isolated subagents for parallel workstreams. Write Python scripts that call tools via RPC, collapsing multi-step pipelines into zero-context-cost turns.
Runs anywhere, not just your laptopSeven terminal backends — local, Docker, SSH, Singularity, Modal, Daytona, and Vercel Sandbox. Daytona and Modal offer serverless persistence — your agent's environment hibernates when idle and wakes on demand, costing nearly nothing between sessions. Run it on a $5 VPS or a GPU cluster.
Research-readyBatch trajectory generation, trajectory compression for training the next generation of tool-calling models.

Install

Hermod is installed by cloning this repository and running the local setup script. There is no hosted one-liner — this fork ships its installer in-repo.

git clone https://forgejo.j4f.org.uk/hraisikai/hermod.git
cd hermod
bash setup-hermes.sh

setup-hermes.sh detects your platform (desktop/server vs. Android/Termux), creates a Python 3.11 virtual environment, installs the right dependency set, creates .env from the template, symlinks the hermes CLI into a user-facing bin dir, and offers to run the setup wizard.

If you already have uv and would rather drive the install yourself:

git clone https://forgejo.j4f.org.uk/hraisikai/hermod.git
cd hermod
uv venv .venv --python 3.11
source .venv/bin/activate
uv pip install -e ".[all,dev]"

After installation:

source ~/.bashrc    # reload shell (or: source ~/.zshrc)
hermes              # start chatting!

Windows: Native Windows runs the CLI, gateway, TUI, and tools without WSL. Install Python 3.11 (e.g. via winget install Python.Python.3.11) and uv (winget install astral-sh.uv), then run setup-hermes.sh from a Git Bash shell.


Getting Started

hermes              # Interactive CLI — start a conversation
hermes model        # Choose your LLM provider and model
hermes tools        # Configure which tools are enabled
hermes config set   # Set individual config values
hermes config get   # Print individual config values
hermes gateway      # Start the messaging gateway (Telegram, Discord, etc.)
hermes setup        # Run the full setup wizard (configures everything at once)
hermes update       # Update to the latest version
hermes doctor       # Diagnose any issues

Full documentation for Hermes (which also applies to Hermod unless noted otherwise) lives at hermes-agent.nousresearch.com/docs.


Migrating from OpenClaw

If you're coming from OpenClaw, Hermes can automatically import your settings, memories, skills, and API keys.

During first-time setup: The setup wizard (hermes setup) automatically detects ~/.openclaw and offers to migrate before configuration begins.

Anytime after install:

hermes claw migrate              # Interactive migration (full preset)
hermes claw migrate --dry-run    # Preview what would be migrated
hermes claw migrate --preset user-data   # Migrate without secrets
hermes claw migrate --overwrite  # Overwrite existing conflicts

What gets imported:

  • SOUL.md — persona file
  • Memories — MEMORY.md and USER.md entries
  • Skills — user-created skills → ~/.hermes/skills/openclaw-imports/
  • Command allowlist — approval patterns
  • Messaging settings — platform configs, allowed users, working directory
  • API keys — allowlisted secrets (Telegram, OpenRouter, OpenAI, Anthropic, ElevenLabs)
  • TTS assets — workspace audio files
  • Workspace instructions — AGENTS.md (with --workspace-target)

See hermes claw migrate --help for all options, or use the openclaw-migration skill for an interactive agent-guided migration with dry-run previews.


Contributing to Hermod

This is a personal fork. Bug fixes and tweaks land here without an external review process. For the supported, community-contributed version of the same code, see the upstream Hermes Agent repository.

If you want to contribute a change that you think upstream would want too, open it against the upstream repo first. Changes that diverge from upstream intent live here.

Quick start for working on Hermod:

git clone https://forgejo.j4f.org.uk/hraisikai/hermod.git
cd hermod
uv venv .venv --python 3.11
source .venv/bin/activate
uv pip install -e ".[all,dev]"
scripts/run_tests.sh

License

MIT — see LICENSE.


Credits

Hermod is a fork of Hermes Agent, originally built by Nous Research. The original architecture, design, and the bulk of the code are theirs. Any bugs, weirdness, or regressions you find in this fork are ours, not theirs.