All commands follow the pattern hermes <subcommand> [flags]. Running hermes with no arguments starts an interactive chat session.
Core
hermes / hermes chat
Start an interactive chat session with the agent. Running hermes with no subcommand is equivalent to hermes chat.
hermes
hermes chat [flags]
Flag Short Description --query TEXT-qSingle non-interactive query (exits after response) --model MODEL-mModel to use, e.g. anthropic/claude-opus-4.6 --toolsets LIST-tComma-separated toolsets to enable for this session --skills NAME-sPreload one or more skills (repeat flag or comma-separate) --provider PROVIDERInference provider: auto, openrouter, nous, openai-codex, copilot-acp, copilot, anthropic, zai, kimi-coding, minimax, minimax-cn, kilocode --resume SESSION-rResume a previous session by ID or title --continue [NAME]-cResume a session by name, or the most recent if no name given --worktree-wRun in an isolated git worktree (for parallel agents on the same repo) --checkpointsEnable filesystem checkpoints before destructive file operations --yoloBypass all dangerous command approval prompts --verbose-vVerbose output --quiet-QSuppress banner, spinner, and tool previews — output final response only --pass-session-idInclude the session ID in the agent’s system prompt
Interactive chat
Single query
Resume session by name
Resume most recent session
Specific model and toolsets
Quiet non-interactive use
The top-level flags --resume, --continue, --worktree, --skills, --yolo, and --pass-session-id are also accepted directly at the root level (e.g. hermes -c is equivalent to hermes chat -c).
hermes setup
Run the interactive setup wizard to configure your provider, model, terminal backend, and optional integrations.
hermes setup [section] [flags]
Argument Description sectionOptional: run only one section — model, terminal, gateway, tools, or agent
Flag Description --non-interactiveUse defaults and environment variables without prompting --resetReset configuration to factory defaults
hermes setup
hermes setup model
hermes setup terminal
hermes model
Interactively select your inference provider and default model. Presents a menu of available providers and models.
No flags. The command prompts you to choose a provider (OpenRouter, Nous Portal, GitHub Copilot, Anthropic, custom endpoint, etc.) and then a model within that provider.
Configure which tools are enabled per platform. Run without a subcommand for the interactive configuration UI.
hermes tools [flags]
hermes tools list [--platform PLATFORM]
hermes tools enable NAME... [--platform PLATFORM]
hermes tools disable NAME... [--platform PLATFORM]
Flag Description --summaryPrint a one-line summary of enabled tools per platform and exit
Subcommands:
Subcommand Description listShow all tools and their enabled/disabled status. --platform defaults to cli enable NAME...Enable toolsets or MCP tools (github:create_issue). --platform defaults to cli disable NAME...Disable toolsets or MCP tools. --platform defaults to cli
hermes tools
hermes tools list --platform telegram
hermes tools disable browser --platform cli
hermes tools enable web terminal
Gateway
hermes gateway
Manage the messaging gateway that connects Hermes to Telegram, Discord, WhatsApp, Slack, and other platforms.
hermes gateway [subcommand] [flags]
Running hermes gateway with no subcommand starts the gateway in the foreground (same as hermes gateway run).
Subcommand Description runRun gateway in the foreground (Ctrl-C to stop) startStart gateway as a background service stopStop the running gateway service restartRestart the gateway service statusShow current gateway status installInstall gateway as a system/user service (launchd on macOS, systemd on Linux) uninstallUninstall the installed service setupInteractive wizard to configure messaging platforms
Common flags for start, stop, restart, status, install, uninstall:
Flag Description --systemTarget the Linux system-level (root) service instead of the user service
run flags:
Flag Description -v, --verboseVerbose logging --replaceReplace any existing gateway instance (useful for systemd)
install flags:
Flag Description --forceForce reinstall even if service already exists --run-as-user USERUser account the Linux system service should run as
status flags:
Flag Description --deepRun deep connectivity checks
Run in foreground
Install as service
Check service status
Configure platforms
Config
hermes config
View and manage the Hermes configuration file (~/.hermes/config.yaml) and .env file.
hermes config [subcommand]
Running hermes config with no subcommand shows the current configuration.
Subcommand Description showShow current configuration (default) editOpen ~/.hermes/config.yaml in $EDITOR set KEY VALUESet a configuration value by dotted key path pathPrint the path to config.yaml env-pathPrint the path to the .env file checkCheck for missing or outdated config fields migrateUpdate config to the latest version, adding new fields
Show config
Edit in $EDITOR
Set a value
Run migration
Authentication
hermes login
Run an OAuth device authorization flow to authenticate with Nous Portal or OpenAI Codex.
Flag Description --provider PROVIDERProvider to authenticate with: nous or openai-codex (default: nous) --portal-url URLPortal base URL override (default: production) --inference-url URLInference API base URL override --no-browserPrint the device code URL instead of opening the browser --timeout SECONDSHTTP request timeout (default: 15) --ca-bundle FILEPath to CA bundle PEM file for TLS verification --insecureDisable TLS verification (testing only)
hermes logout
Clear stored credentials for an OAuth provider.
hermes logout [--provider PROVIDER]
Flag Description --provider PROVIDERProvider to log out from: nous or openai-codex (default: active provider)
Maintenance
hermes status
Display the health and status of all Hermes components.
Flag Description --allShow all details (values are redacted for sharing) --deepRun deep connectivity checks (may take longer)
hermes doctor
Diagnose configuration and dependency issues.
Flag Description --fixAttempt to fix detected issues automatically
hermes update
Pull the latest changes from git and reinstall dependencies.
hermes uninstall
Remove Hermes Agent from your system.
Flag Description --fullFull uninstall — also removes ~/.hermes/ configs and data --yes, -ySkip confirmation prompts
--full permanently deletes your configuration, API keys, memories, and session history stored in ~/.hermes/.
hermes version
Print version and release date.
Sessions
hermes sessions
View and manage conversation history stored in the SQLite session store.
hermes sessions < subcomman d > [flags]
Subcommand Description listList recent sessions browseInteractive curses-based session picker — browse, search, and resume rename ID TITLESet or change a session’s title export OUTPUTExport sessions to a JSONL file delete SESSION_IDDelete a specific session pruneDelete old sessions statsShow session store statistics
list flags:
Flag Default Description --source PLATFORMFilter by source: cli, telegram, discord, etc. --limit N20 Maximum number of sessions to show
browse flags:
Flag Default Description --source PLATFORMFilter by source --limit N50 Max sessions to load into the picker
export flags:
Flag Description --source PLATFORMFilter by source --session-id IDExport a specific session only
prune flags:
Flag Default Description --older-than N90 Delete sessions older than N days --source PLATFORMOnly prune sessions from this source --yes, -ySkip confirmation
hermes sessions list
hermes sessions browse
hermes sessions rename cli_abc123 "My project session"
hermes sessions prune --older-than 30 --yes
Cron
hermes cron
Manage scheduled tasks that run agent prompts on a schedule.
hermes cron < subcomman d > [flags]
Subcommand Description listList scheduled jobs (--all to include disabled) create / addCreate a new scheduled job edit JOB_IDEdit an existing job pause JOB_IDPause a job resume JOB_IDResume a paused job run JOB_IDTrigger a job on the next scheduler tick remove / rm / deleteRemove a job statusCheck if the cron scheduler is running tickRun all due jobs once and exit (for debugging)
create / add flags:
Flag Description scheduleSchedule string: 30m, every 2h, or cron expression 0 9 * * * promptOptional task instruction for the agent --name NAMEHuman-friendly job name --deliver TARGETDelivery target: origin, local, telegram, discord, signal, or platform:chat_id --repeat NOptional repeat count --skill NAMEAttach a skill (repeatable)
hermes cron list
hermes cron create "every 1h" "Check my email and summarize unread messages" --name hourly-email
hermes cron status
Skills
hermes skills
Browse, search, install, and manage skill documents.
hermes skills < subcomman d > [flags]
Subcommand Description listList installed skills browseBrowse all available skills (paginated) search QUERYSearch skill registries install NAMEInstall a skill from a registry inspect NAMEPreview a skill without installing checkCheck installed hub skills for updates updateUpdate installed hub skills auditRe-scan installed hub skills uninstall NAMERemove a hub-installed skill publishPublish a skill to a registry snapshot export FILEExport installed skills to a file snapshot import FILEImport and install skills from a file tap listList configured skill sources (taps) tap add REPOAdd a GitHub repo as a skill source tap remove NAMERemove a tap configInteractive skill configuration — enable/disable individual skills
Honcho
hermes honcho
Configure and manage the Honcho AI-native cross-session memory integration.
hermes honcho < subcomman d > [flags]
Subcommand Description setupInteractive setup wizard for Honcho statusShow current Honcho config and connection status sessionsList directory → session name mappings map NAMEMap the current directory to a Honcho session name peerShow or set peer names and dialectic reasoning settings mode [hybrid|honcho|local]Show or set the memory mode tokensShow or set token budget settings identity [FILE]Show or seed the AI peer identity from a file (e.g. SOUL.md) migrateStep-by-step migration guide from OpenClaw native to Hermes + Honcho
peer flags:
Flag Description --user NAMESet the user peer name --ai NAMESet the AI peer name --reasoning LEVELSet dialectic reasoning level
tokens flags:
Flag Description --context NSet the session.context() token cap --dialectic NSet the dialectic result character cap
Other
hermes whatsapp
Configure WhatsApp integration and pair via QR code.
Interactive — walks you through choosing a mode (bot number or personal self-chat), setting allowed users, installing bridge dependencies, and scanning a QR code to pair.
hermes insights
Analyze session history to show token usage, costs, tool patterns, and activity trends.
hermes insights [--days N] [--source PLATFORM]
Flag Default Description --days N30 Number of days to analyze --source PLATFORMFilter by platform
hermes pairing
Manage DM pairing codes for user authorization on messaging platforms.
hermes pairing < subcomman d >
Subcommand Description listShow pending and approved users approve PLATFORM CODEApprove a pairing code revoke PLATFORM USER_IDRevoke a user’s access clear-pendingClear all pending codes
hermes claw migrate
Migrate settings, memories, skills, and API keys from an OpenClaw installation.
hermes claw migrate [flags]
Flag Default Description --source PATH~/.openclawPath to OpenClaw directory --dry-runPreview changes without writing anything --preset PRESETfullfull or user-data (excludes secrets)--overwriteOverwrite existing files (default: skip conflicts) --migrate-secretsInclude allowlisted secrets (bot tokens, API keys) --workspace-target PATHAbsolute path to copy workspace instructions into --skill-conflict ACTIONskipHow to handle skill name conflicts: skip, overwrite, or rename --yes, -ySkip confirmation prompts
hermes acp
Run Hermes Agent as an ACP (Agent Client Protocol) server for editor integration.
Used by VS Code, Zed, and JetBrains extensions. Requires the ACP dependencies (pip install -e '.[acp]').