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
hermesTUI 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 TUIhermes --continue # Resume the most recent sessionhermes -c # Shorthand for --continuehermes -c "Session Title" # Resume a session with a specific titlehermes --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 queryhermes chat -q "Question" --quiet # Quiet mode, suitable for scriptshermes chat -q "Question" --model anthropic/claude-sonnet-4 # Specify modelhermes chat -q "Question" --toolsets web,terminal # Enable specific toolsetshermes 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 wizardhermes setup model # Configure model settings onlyhermes setup terminal # Configure terminal backend onlyhermes setup gateway # Configure messaging platform gateway onlyhermes setup tools # Configure tools onlyhermes setup agent # Configure Agent behavior onlyhermes setup --non-interactive # Non-interactive mode using default valueshermes setup --reset # Reset to default configuration before setup
hermes config
View, edit, and query configuration files.
hermes config # Display current configurationhermes config edit # Edit configuration filehermes config set <key> <value> # Set a configuration optionhermes config set terminal.backend docker # Set backend to Docker sandboxhermes config get <key> # Get a configuration option valuehermes 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 toolshermes 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 wizardhermes auth list # List all credential poolshermes auth list openrouter # List credentials for a specific providerhermes auth add openrouter --api-key sk-or-v1-xxx # Add an API keyhermes auth add anthropic --type oauth # Add an OAuth credentialhermes auth remove openrouter 2 # Remove specified credentialhermes 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 usershermes pairing approve telegram <code> # Approve a pairing codehermes pairing revoke telegram <user-id> # Revoke user access permissionshermes pairing clear-pending # Clear pending pairing codes
Session Management Commands
hermes sessions
Manage chat sessions (list, export, rename, delete).
hermes sessions list # List all sessionshermes sessions rename <id> "New Title" # Rename sessionhermes sessions delete <id> # Delete sessionhermes sessions export <id> # Export sessionhermes 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 profileshermes profile use <name> # Switch to specified profilehermes profile create <name> # Create new profilehermes 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 sourcehermes profile delete <name> # Delete profilehermes profile show <name> # Show profile detailshermes profile export <name> # Export profile as tar.gzhermes profile import <file> # Import profile from tar.gzhermes profile alias <name> # Regenerate shell aliaseshermes 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 registryhermes skills browse --source official # Browse official skillshermes skills search <keyword> # Search for skillshermes skills inspect <skill> # Preview skill (without installing)hermes skills install <skill> # Install skillhermes skills install <skill> --force # Force install (bypass policy checks)hermes skills list # List installed skillshermes skills check # Check for skill updateshermes skills update # Update skills to latest versionhermes skills uninstall <skill> # Uninstall skillhermes skills publish <skill> # Publish skill to registryhermes skills config # Enable/disable skills per platformhermes skills tap <url> # Add custom skill repository
Diagnostics & Maintenance Commands
hermes doctor
Diagnose system environment, configuration issues, and dependency checks.
hermes doctor # Run diagnosticshermes 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 logshermes logs -f # Follow logs in real timehermes logs gateway -n 100 # Show recent 100 lines of gateway logshermes logs --level WARNING --since 1h # Warnings from the past hourhermes logs --session abc123 # Filter by session IDhermes logs errors --since 30m # Errors from the past 30 minuteshermes logs list # List all log files
hermes status
Display Agent, authentication, and platform runtime status.
hermes status # Show statushermes 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 ziphermes import <backup.zip> # Restore from backup
Scheduled Tasks & Webhooks
hermes cron
Manage the scheduled task runner.
hermes cron list # List all scheduled taskshermes cron create "Check email daily" --schedule "0 9 * * *" # Create taskhermes cron edit <id> # Edit taskhermes cron pause <id> # Pause taskhermes cron resume <id> # Resume taskhermes cron run <id> # Run task immediatelyhermes cron remove <id> # Delete taskhermes cron status # Check cron runner statushermes 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 subscriptionhermes webhook list # List all subscriptionshermes webhook remove <name> # Remove subscriptionhermes webhook test <name> # Test subscription
Integration & Extension Commands
hermes mcp
Manage MCP (Model Context Protocol) server configurations.
hermes mcp list # List MCP servershermes mcp add <name> # Add MCP serverhermes mcp remove <name> # Remove MCP serverhermes 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 pluginshermes plugins install <name> # Install pluginhermes plugins enable <name> # Enable pluginhermes plugins disable <name> # Disable pluginhermes 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 assistanthermes claw migrate # Perform migration
hermes dashboard
Launch the Web dashboard (manage settings, API keys, and sessions).
hermes dashboard # Start local Web server and open browserhermes dashboard --port 8080 # Custom porthermes dashboard --host 0.0.0.0 # Bind to all network interfaceshermes 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 scripthermes 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 Hermeshermes uninstall --full # Delete configuration and data as wellhermes 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.,
/hmatches/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 versionhermes --profile <name>, -p <name> # Specify profilehermes --resume <session>, -r <session> # Resume specified sessionhermes --continue [name], -c [name] # Continue recent sessionhermes --worktree, -w # Run inside an isolated git worktreehermes --yolo # Bypass approval prompts for risky commands
Best Practices
- Auto-completion: Type
/and pressTabto see all available slash commands. - Prefix Matching: Typing
/modautomatically matches/model, and/commatches/compress. - Platform Differences: Discord uses
!syntax (e.g.,!new,!status), while Telegram uses/syntax. - Profile Isolation: Use
hermes profile createto keep work and personal environments isolated, avoiding configuration conflicts. - Security: In production environments, run
hermes config set terminal.backend dockerto execute terminal commands in an isolated Docker sandbox. - Troubleshooting: Run
hermes doctorwhen encountering issues, and usehermes dumpto share redacted diagnostic info. - Regular Backups: Use
hermes backupregularly to back up your configurations and session data.