Skip to main content
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]
FlagShortDescription
--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
hermes
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]
ArgumentDescription
sectionOptional: run only one section — model, terminal, gateway, tools, or agent
FlagDescription
--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.
hermes model
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.

hermes tools

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]
FlagDescription
--summaryPrint a one-line summary of enabled tools per platform and exit
Subcommands:
SubcommandDescription
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).
SubcommandDescription
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:
FlagDescription
--systemTarget the Linux system-level (root) service instead of the user service
run flags:
FlagDescription
-v, --verboseVerbose logging
--replaceReplace any existing gateway instance (useful for systemd)
install flags:
FlagDescription
--forceForce reinstall even if service already exists
--run-as-user USERUser account the Linux system service should run as
status flags:
FlagDescription
--deepRun deep connectivity checks
hermes gateway

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.
SubcommandDescription
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
hermes config

Authentication

hermes login

Run an OAuth device authorization flow to authenticate with Nous Portal or OpenAI Codex.
hermes login [flags]
FlagDescription
--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]
FlagDescription
--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.
hermes status [flags]
FlagDescription
--allShow all details (values are redacted for sharing)
--deepRun deep connectivity checks (may take longer)

hermes doctor

Diagnose configuration and dependency issues.
hermes doctor [--fix]
FlagDescription
--fixAttempt to fix detected issues automatically

hermes update

Pull the latest changes from git and reinstall dependencies.
hermes update

hermes uninstall

Remove Hermes Agent from your system.
hermes uninstall [flags]
FlagDescription
--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.
hermes version

Sessions

hermes sessions

View and manage conversation history stored in the SQLite session store.
hermes sessions <subcommand> [flags]
SubcommandDescription
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:
FlagDefaultDescription
--source PLATFORMFilter by source: cli, telegram, discord, etc.
--limit N20Maximum number of sessions to show
browse flags:
FlagDefaultDescription
--source PLATFORMFilter by source
--limit N50Max sessions to load into the picker
export flags:
FlagDescription
--source PLATFORMFilter by source
--session-id IDExport a specific session only
prune flags:
FlagDefaultDescription
--older-than N90Delete 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 <subcommand> [flags]
SubcommandDescription
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:
FlagDescription
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 <subcommand> [flags]
SubcommandDescription
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 <subcommand> [flags]
SubcommandDescription
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:
FlagDescription
--user NAMESet the user peer name
--ai NAMESet the AI peer name
--reasoning LEVELSet dialectic reasoning level
tokens flags:
FlagDescription
--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.
hermes whatsapp
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]
FlagDefaultDescription
--days N30Number of days to analyze
--source PLATFORMFilter by platform

hermes pairing

Manage DM pairing codes for user authorization on messaging platforms.
hermes pairing <subcommand>
SubcommandDescription
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]
FlagDefaultDescription
--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.
hermes acp
Used by VS Code, Zed, and JetBrains extensions. Requires the ACP dependencies (pip install -e '.[acp]').

Build docs developers (and LLMs) love