Overview
hermes is the primary entry point for Hermes Agent. Running it without any subcommand launches an interactive chat session in your configured interface (TUI or classic REPL) — it is equivalent to hermes chat. The CLI also exposes dozens of subcommands for configuration, integrations, skills, sessions, and maintenance.
hermes [options] [command]
Global Options
| Option | Description |
|---|---|
-h, --help |
Show help and exit. |
--version, -V |
Show version information and exit. |
-z PROMPT, --oneshot PROMPT |
One-shot mode: send a single prompt and print only the final response to stdout. No banner, spinner, or session ID line — ideal for scripts and pipes. |
--usage-file PATH |
One-shot mode only: after the run, write a JSON usage report (cost, token counts, model, api_calls) to PATH. |
-m MODEL, --model MODEL |
Model override for this invocation (e.g. anthropic/claude-sonnet-4.6). Applies to --oneshot and --tui. |
--provider PROVIDER |
Provider override (e.g. openrouter, anthropic). Applies to --oneshot and --tui. |
--reasoning LEVEL |
Reasoning effort for this invocation: none, minimal, low, medium, high, xhigh, max, or ultra. |
-t TOOLSETS, --toolsets TOOLSETS |
Comma-separated toolsets to enable for this invocation. |
--resume SESSION, -r SESSION |
Resume a previous session by ID or title. |
--no-restore-cwd |
Don’t cd into a resumed session’s recorded working directory. |
--continue [SESSION_NAME], -c [SESSION_NAME] |
Resume a session by name, or the most recent one if no name is given. |
--worktree, -w |
Run in an isolated git worktree (for parallel agents). |
--accept-hooks |
Auto-approve any unseen shell hooks without a TTY prompt (useful for CI and headless runs). |
--skills SKILLS, -s SKILLS |
Preload one or more skills for the session (repeat flag or comma-separated). |
--yolo |
Bypass all dangerous command approval prompts (use at your own risk). |
--pass-session-id |
Include the session ID in the agent’s system prompt. |
--ignore-user-config |
Ignore ~/.hermes/config.yaml and fall back to built-in defaults (credentials in .env are still loaded). |
--ignore-rules |
Skip auto-injection of AGENTS.md, SOUL.md, .cursorrules, memory, and preloaded skills. |
--safe-mode |
Troubleshooting mode: disable ALL customizations — user config, memory injection, plugins, and MCP servers. Implies --ignore-user-config and --ignore-rules. |
--tui |
Launch the modern TUI instead of the classic REPL. |
--cli |
Force the classic prompt_toolkit REPL (overrides display.interface=tui). |
--dev |
With --tui: run TypeScript sources via tsx (skip the dist build). |
--profile PROFILE, -p PROFILE |
Run under a named Hermes profile (sets HERMES_HOME). Consumed before argument parsing, so it works with every subcommand. |
Subcommands
hermes ships with more than sixty subcommands. The main groups:
| Group | Subcommands |
|---|---|
| Chat & models | chat, model, moa, fallback, acp |
| Integrations & messaging | gateway, whatsapp, whatsapp-cloud, slack, send, webhook, portal, proxy, mcp, lsp, computer-use |
| Configuration & access | setup, config, profile, project, secrets, egress, skin, console, pairing, approvals, auth, login, logout |
| Sessions, memory & analytics | sessions, memory, journey (alias for learning + memory-graph), checkpoints, insights, prompt-size, logs |
| Skills & extensions | skills, bundles, plugins, curator, pets, sync |
| Management & admin | status, doctor, security, cron, hooks, backup, import, import-agent, migrate, dump, debug, monitoring, version, update, uninstall, completion, dashboard, serve, desktop (alias gui), claw, kanban, tools |
Run hermes <command> --help for details on any subcommand.
Examples
hermes # Start interactive chat
hermes chat -q "Hello" # Single query mode
hermes -z "Summarize this repo" # One-shot mode: prints only the response
hermes --tui # Launch the modern TUI
hermes --cli # Force the classic REPL
hermes -c # Resume the most recent session
hermes -c "my project" # Resume a session by name (latest in lineage)
hermes --resume <session_id> # Resume a specific session by ID
hermes -m anthropic/claude-sonnet-4.6 --reasoning high # Model + reasoning override
hermes -t web -s hermes-agent-dev,github-auth # Toolset + skill preload
hermes --profile work # Run under the 'work' profile
hermes setup # Run the setup wizard
hermes model # Select the default model
hermes config edit # Edit config in $EDITOR
hermes gateway install # Install gateway background service
hermes sessions list # List past sessions
hermes logs -f # Follow agent.log in real time
hermes dashboard # Start web UI dashboard (port 9119)
hermes update # Update to the latest version
Tips
- Bare
hermesstarts interactive chat — equivalent tohermes chat. - Use
--tuifor the full-screen interface, or setdisplay.interface: tuiin config.yaml to make it the default. -c/--continuepicks up the most recent session;-r/--resumetargets a specific session ID.-z/--oneshotis designed for scripts and pipes; pair it with--usage-fileto track spend.--safe-modedisables all customizations — the first thing to try when something breaks.--yoloskips all approval prompts; only use it in trusted, isolated environments.--profile/-pis handled before argument parsing, so it works with every subcommand.