We previously covered how to install Hermes Agent. However, most users simply run a single hermes launch command and start chatting, leaving those unfamiliar with the CLI unsure where to begin.

In fact, Hermes Agent features a rich built-in command system that allows you to easily leverage its full power. Currently, commands fall into two main categories:

  • CLI Commands: Executed directly in your terminal (e.g., hermes <command>) for configuration, management, and initialization.
  • Interactive Slash Commands: Typed inside a hermes TUI session or in messaging platforms (Telegram, Discord, etc.). They start with / and support auto-completion and aliases.

Through these commands, you can interact with the agent using natural language or structured instructions to execute tasks, query information, manage settings, and more.

Below is a categorized breakdown to help you memorize and use them effectively.

Core Interactive Commands

hermes

The essential command for getting started. It launches the interactive Terminal User Interface (TUI) to enter a chat session with the Agent.

hermes # Launch interactive TUI
hermes --continue # Resume the most recent session
hermes -c # Shorthand for --continue
hermes -c "Session Title" # Resume a session with a specific title
hermes --resume <session_id> # Resume a session by ID

hermes chat

Perform single queries or execution with specified parameters—ideal for scripts or quick questions.

hermes chat -q "Your question here" # Single query
hermes chat -q "Question" --quiet # Quiet mode, suitable for scripts
hermes chat -q "Question" --model anthropic/claude-sonnet-4 # Specify model
hermes chat -q "Question" --toolsets web,terminal # Enable specific toolsets
hermes chat -q "Question" --worktree # Run inside an isolated git worktree

Configuration & Setup Commands

hermes setup

Run the setup wizard to adjust models, API keys, gateway settings, and more.

hermes setup # Full configuration wizard
hermes setup model # Configure model settings only
hermes setup terminal # Configure terminal backend only
hermes setup gateway # Configure messaging platform gateway only
hermes setup tools # Configure tools only
hermes setup agent # Configure Agent behavior only
hermes setup --non-interactive # Non-interactive mode using default values
hermes setup --reset # Reset to default configuration before setup

hermes config

View, edit, and query configuration files.

hermes config # Display current configuration
hermes config edit # Edit configuration file
hermes config set <key> <value> # Set a configuration option
hermes config set terminal.backend docker # Set backend to Docker sandbox
hermes config get <key> # Get a configuration option value
hermes config migrate # Migrate configuration

hermes model

Interactively select or switch the default AI model and provider.

hermes model # Interactively select model

hermes tools

View, enable, or disable available toolsets (web search, terminal execution, skills, etc.).

hermes tools # Interactively configure tools
hermes tools --platform cli # Configure tools for the CLI platform

Authentication & Credential Management

hermes auth

Manage credentials, API keys, and OAuth logins, supporting multi-key rotation for the same provider.

hermes auth # Interactive credential management wizard
hermes auth list # List all credential pools
hermes auth list openrouter # List credentials for a specific provider
hermes auth add openrouter --api-key sk-or-v1-xxx # Add an API key
hermes auth add anthropic --type oauth # Add an OAuth credential
hermes auth remove openrouter 2 # Remove specified credential
hermes auth reset openrouter # Clear credential cooldown status

Note: hermes login and hermes logout are deprecated. Please use hermes auth instead.

Messaging Gateway Commands

hermes gateway

Start or configure the messaging gateway to support multi-platform access.

hermes gateway # Start gateway service (runs in foreground)
hermes gateway setup # Configure Telegram, Discord, and other platforms

hermes whatsapp

Configure and pair the WhatsApp bridge.

hermes whatsapp # Run WhatsApp pairing process (includes QR code scan)

hermes pairing

Manage pairing requests from messaging platforms.

hermes pairing list # Display pending and approved users
hermes pairing approve telegram <code> # Approve a pairing code
hermes pairing revoke telegram <user-id> # Revoke user access permissions
hermes pairing clear-pending # Clear pending pairing codes

Session Management Commands

hermes sessions

Manage chat sessions (list, export, rename, delete).

hermes sessions list # List all sessions
hermes sessions rename <id> "New Title" # Rename session
hermes sessions delete <id> # Delete session
hermes sessions export <id> # Export session
hermes sessions prune # Clean up old sessions

Profile Commands

hermes profile

Manage profile configurations (isolated memory, skills, and settings) to support multi-instance execution.

hermes profile list # List all profiles
hermes profile use <name> # Switch to specified profile
hermes profile create <name> # Create new profile
hermes profile create <name> --clone # Clone current config (config only)
hermes profile create <name> --clone-all # Clone everything (including memory and sessions)
hermes profile create <name> --clone-from <source> # Clone from specified source
hermes profile delete <name> # Delete profile
hermes profile show <name> # Show profile details
hermes profile export <name> # Export profile as tar.gz
hermes profile import <file> # Import profile from tar.gz
hermes profile alias <name> # Regenerate shell aliases
hermes profile rename <old> <new> # Rename profile

Tip: Creating a profile automatically generates command aliases (e.g., coder maps to hermes -p coder).

Skill Management Commands

hermes skills

Browse, manage, and invoke learned reusable skills.

hermes skills browse # Browse skill registry
hermes skills browse --source official # Browse official skills
hermes skills search <keyword> # Search for skills
hermes skills inspect <skill> # Preview skill (without installing)
hermes skills install <skill> # Install skill
hermes skills install <skill> --force # Force install (bypass policy checks)
hermes skills list # List installed skills
hermes skills check # Check for skill updates
hermes skills update # Update skills to latest version
hermes skills uninstall <skill> # Uninstall skill
hermes skills publish <skill> # Publish skill to registry
hermes skills config # Enable/disable skills per platform
hermes skills tap <url> # Add custom skill repository

Diagnostics & Maintenance Commands

hermes doctor

Diagnose system environment, configuration issues, and dependency checks.

hermes doctor # Run diagnostics
hermes doctor --fix # Attempt automatic fixes

hermes dump

Generate a shareable setup summary for technical support and debugging.

hermes dump # Show configuration summary (API keys are redacted)

Use cases: Reporting GitHub issues, asking for help on Discord, or quick config checks.

hermes debug

Upload debug information (logs and system info) for support.

hermes debug # Upload debug details

hermes logs

View, follow, and filter log files.

hermes logs # Show recent 50 lines of agent logs
hermes logs -f # Follow logs in real time
hermes logs gateway -n 100 # Show recent 100 lines of gateway logs
hermes logs --level WARNING --since 1h # Warnings from the past hour
hermes logs --session abc123 # Filter by session ID
hermes logs errors --since 30m # Errors from the past 30 minutes
hermes logs list # List all log files

hermes status

Display Agent, authentication, and platform runtime status.

hermes status # Show status
hermes status --all # Show full details (shareable, redacted format)
hermes status --deep # Deep diagnostic check (takes longer)

hermes backup / hermes import

Backup and restore Hermes data.

hermes backup # Backup config, sessions, skills, and memory to zip
hermes import <backup.zip> # Restore from backup

Scheduled Tasks & Webhooks

hermes cron

Manage the scheduled task runner.

hermes cron list # List all scheduled tasks
hermes cron create "Check email daily" --schedule "0 9 * * *" # Create task
hermes cron edit <id> # Edit task
hermes cron pause <id> # Pause task
hermes cron resume <id> # Resume task
hermes cron run <id> # Run task immediately
hermes cron remove <id> # Delete task
hermes cron status # Check cron runner status
hermes cron tick # Run due tasks once and exit

hermes webhook

Manage dynamic Webhook subscriptions (event-driven activation).

hermes webhook subscribe <name> --prompt "Handle {event.type}" # Create subscription
hermes webhook list # List all subscriptions
hermes webhook remove <name> # Remove subscription
hermes webhook test <name> # Test subscription

Integration & Extension Commands

hermes mcp

Manage MCP (Model Context Protocol) server configurations.

hermes mcp list # List MCP servers
hermes mcp add <name> # Add MCP server
hermes mcp remove <name> # Remove MCP server
hermes mcp serve # Run Hermes as an MCP server (for Claude Desktop, Cursor, etc.)

hermes acp

Run Hermes as an ACP (Agent Communication Protocol) server for editor integrations.

hermes acp # Start ACP server

hermes honcho

Manage Honcho cross-session memory integration.

hermes honcho # Configure Honcho memory

hermes memory

Configure external memory providers.

hermes memory # Configure memory provider

hermes plugins

Manage Hermes Agent plugins.

hermes plugins list # List plugins
hermes plugins install <name> # Install plugin
hermes plugins enable <name> # Enable plugin
hermes plugins disable <name> # Disable plugin
hermes plugins remove <name> # Remove plugin

Other Utility Commands

hermes insights

Display Token/Cost/Activity analytics.

hermes insights # Show usage analytics

hermes claw

OpenClaw migration assistant to easily transfer OpenClaw configurations to Hermes.

hermes claw # OpenClaw migration assistant
hermes claw migrate # Perform migration

hermes dashboard

Launch the Web dashboard (manage settings, API keys, and sessions).

hermes dashboard # Start local Web server and open browser
hermes dashboard --port 8080 # Custom port
hermes dashboard --host 0.0.0.0 # Bind to all network interfaces
hermes dashboard --no-open # Do not automatically open browser

Prerequisite: Requires pip install hermes-agent[web] (FastAPI + Uvicorn).

hermes completion

Generate shell auto-completion scripts.

hermes completion bash # Generate Bash completion script
hermes completion zsh # Generate Zsh completion script

hermes version

Display version information.

hermes version # Show Hermes Agent version

hermes update

Update Hermes to the latest version.

hermes update # Update to latest version

hermes uninstall

Uninstall Hermes Agent.

hermes uninstall # Uninstall Hermes
hermes uninstall --full # Delete configuration and data as well
hermes uninstall --yes # Uninstall without confirmation prompts

Interactive Slash Commands

While the CLI commands above are invoked directly from the terminal, the commands below must be used inside a hermes TUI session or a messaging platform (Telegram, Discord, etc.), starting with /.

Note: Slash commands are case-insensitive and support prefix matching (e.g., /h matches /help).

General Commands (Supported in both TUI and Gateway)

Command Description
/help Display help and list all available commands
/new Start a new session and clear history
/model View or switch current AI model. Optional argument: [provider/model]
/usage View token usage for current session
/insights Show usage analytics and statistics. Optional argument: [days]
/skills Browse or invoke learned skills. Optional argument: [skill-name]
/compress Manually compress session context to save tokens
/retry Retry generating the last response
/undo Revert the last interaction
/memory View persistent memory stored by the Agent
/personality Switch Agent personality mode
/stop Interrupt running background tasks or tool execution
/title Set custom title for current session. Argument: <title>
/verbose Cycle output verbosity for tool executions (off → new → all → verbose)

TUI-Specific Commands

Command Description
/quit Exit CLI session. Aliases: /exit, /q
/clear Clear terminal screen
/history Show session history
/save Save current session
/config View or edit configuration
/prompt View or edit current system prompt
/statusbar Toggle status bar display
/tools List currently enabled tools
/toolsets List available toolsets
/platforms Display gateway and platform status. Alias: /gateway
/paste Check clipboard images and attach to next message
/skin Switch CLI theme
/cron Manage scheduled tasks
/browser Browser automation control
/plugins Manage plugins

Gateway-Specific Commands

Command Description
/status Show current session info, Agent, and platform status
/sethome or /set-home Mark current chat as the main notification channel
/approve Approve pending risky commands. Optional arguments: session or always
/deny Deny pending risky commands
/update Update Hermes Agent to the latest version
/commands Browse all commands and skills. Optional argument: page number

Dynamic Skill Commands

Every installed skill automatically registers as a slash command:

/gif-search funny cats # Use gif-search skill
/axolotl help me fine-tune Llama 3 # Use axolotl skill
/github-pr-workflow create a PR # Use GitHub PR workflow skill
/excalidraw # Type skill name alone to prompt Agent for input

Quick Commands

You can also define custom shortcuts in config.yaml for tasks like code reviews or deployments:

quick_commands:
review: "Review my latest git diff and suggest improvements"
deploy: "Run the deployment script at scripts/deploy.sh"
morning: "Check my calendar and summarize today's priorities"

Then execute them directly in the CLI:

/review # Run defined code review prompt
/deploy # Run deployment script
/morning # Run morning briefing prompt

Global Options

All CLI commands support the following global options:

hermes --version, -V # Display version
hermes --profile <name>, -p <name> # Specify profile
hermes --resume <session>, -r <session> # Resume specified session
hermes --continue [name], -c [name] # Continue recent session
hermes --worktree, -w # Run inside an isolated git worktree
hermes --yolo # Bypass approval prompts for risky commands

Best Practices

  1. Auto-completion: Type / and press Tab to see all available slash commands.
  2. Prefix Matching: Typing /mod automatically matches /model, and /com matches /compress.
  3. Platform Differences: Discord uses ! syntax (e.g., !new, !status), while Telegram uses / syntax.
  4. Profile Isolation: Use hermes profile create to keep work and personal environments isolated, avoiding configuration conflicts.
  5. Security: In production environments, run hermes config set terminal.backend docker to execute terminal commands in an isolated Docker sandbox.
  6. Troubleshooting: Run hermes doctor when encountering issues, and use hermes dump to share redacted diagnostic info.
  7. Regular Backups: Use hermes backup regularly to back up your configurations and session data.