Common Errors
When using Hermes Agent, you may encounter various errors. This page compiles the most common errors and their solutions to help you quickly identify and fix issues.
command not found: hermes
Section titled “command not found: hermes”Symptom: Terminal shows “command not found” when typing hermes.
Cause: Shell environment variables not refreshed after installation, or PATH configuration incorrect.
Solutions:
# Method 1: Reload shell configurationsource ~/.bashrc # Bash userssource ~/.zshrc # Zsh users
# Method 2: If Method 1 fails, reopen terminal window
# Method 3: Check if hermes is in PATHwhich hermes# If not found, manually add:echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrcsource ~/.bashrcAPI Key Not Set or Invalid
Section titled “API Key Not Set or Invalid”Symptom: LLM connection fails when running hermes chat, or 401 Unauthorized error.
Cause: API Key not configured, expired, or entered incorrectly.
Solutions:
# Method 1: Use interactive configuration wizardhermes model
# Method 2: Manually edit configuration file# Open ~/.hermes/config.yaml and verify these fields:llm: provider: openrouter model: anthropic/claude-sonnet-4-20250514 api_key: sk-or-v1-xxxxx # Confirm Key is correct and valid# Method 3: Use environment variables (good for Docker deployments)export LLM_API_KEY=sk-or-v1-xxxxxConfiguration File Missing or Corrupted
Section titled “Configuration File Missing or Corrupted”Symptom: Configuration file read error on startup, or abnormal behavior.
Cause: ~/.hermes/config.yaml file deleted, format error, or encoding corruption.
Solutions:
# Method 1: Reset config to defaults (preserves memory and skills)hermes config reset
# Method 2: Manually rebuild minimal configmkdir -p ~/.hermescat > ~/.hermes/config.yaml << 'EOF'llm: provider: openrouter model: anthropic/claude-sonnet-4-20250514 api_key: ${LLM_API_KEY}EOF
# Method 3: Use doctor to diagnosehermes doctorPort Conflict
Section titled “Port Conflict”Symptom: Port already in use error when starting gateway service.
Cause: Another Hermes Agent instance or service is using the same port.
Solutions:
# Find process using the portlsof -i :8080 # macOS / Linuxnetstat -ano | grep 8080 # Windows
# Kill the occupying processkill -9 <PID> # macOS / Linux
# Or change the port Hermes uses# In ~/.hermes/config.yaml:gateway: port: 8081 # Use an available portModuleNotFoundError
Section titled “ModuleNotFoundError”Symptom: Python module not found error on startup.
Cause: Python dependency package missing or virtual environment corrupted.
Solutions:
# Method 1: Reinstall Hermes Agentpip install --force-reinstall hermes-agent
# Method 2: If installed from source, reinstall dependenciescd ~/.hermes-agentpip install -r requirements.txt
# Method 3: Ensure using correct virtual environmentsource ~/.hermes-agent/.venv/bin/activatePermission Denied
Section titled “Permission Denied”Symptom: Insufficient permissions when reading/writing ~/.hermes/ directory.
Cause: Incorrect directory ownership, possibly from running Hermes with sudo before.
Solutions:
# Fix directory ownershipsudo chown -R $(whoami):$(whoami) ~/.hermes
# Verify permissionsls -la ~/.hermes/Agent Unresponsive or Hanging
Section titled “Agent Unresponsive or Hanging”Symptom: Agent takes a long time to respond after sending a message.
Cause: Network connection issues, LLM API timeout, or incorrect proxy configuration.
Solutions:
# 1. Check network connectivitycurl -I https://openrouter.ai/api/v1/models
# 2. If using proxy, ensure it's configured correctlyexport HTTPS_PROXY=http://127.0.0.1:7890
# 3. Try switching to another LLM providerhermes model # Choose a local provider like DeepSeek or Kimi
# 4. Press Ctrl+C to interrupt current request, then resendRate Limit Exceeded
Section titled “Rate Limit Exceeded”Symptom: Frequent 429 rate limit errors.
Cause: API request frequency exceeded provider’s limit.
Solutions:
# 1. Wait 60 seconds and retry
# 2. Set auto-retry in configurationllm: provider: openrouter model: anthropic/claude-sonnet-4-20250514 retry: max_retries: 3 retry_delay: 5# 3. Upgrade API plan or switch to provider with higher limits# 4. Use OpenRouter as middleware for automatic routing and retryGarbled Chinese Output
Section titled “Garbled Chinese Output”Symptom: Chinese characters display as garbled text in terminal.
Cause: Terminal encoding settings incorrect.
Solutions:
# Set terminal encoding to UTF-8export LANG=en_US.UTF-8export LC_ALL=en_US.UTF-8
# Windows PowerShell users:[Console]::OutputEncoding = [System.Text.Encoding]::UTF8$OutputEncoding = [System.Text.Encoding]::UTF8Memory Not Persisting
Section titled “Memory Not Persisting”Symptom: Agent forgets previous conversations and preferences after restart.
Cause: Multiple instances writing to ~/.hermes/ directory simultaneously, or data directory not properly mounted (Docker scenario).
Solutions:
# 1. Ensure only one Hermes Agent instance is using ~/.hermes/hermes session listhermes session kill --all # Clean up residual sessions
# 2. Docker users: Confirm data volume is mounted correctlydocker run -v /path/to/hermes-data:/root/.hermes ...
# 3. Check if memory files existls ~/.hermes/memory/General Troubleshooting Flow
Section titled “General Troubleshooting Flow”When encountering issues, try in this order:
- Run
hermes doctor— Automatically diagnose common issues - Run
hermes config reset— Reset configuration (preserves memory and skills) - Run
hermes cache clear— Clear temporary caches - Check Install Issues and Model Issues
- For complete reset:
cp -r ~/.hermes ~/.hermes.backup # Backup firstrm -rf ~/.hermes # Clear all datahermes model # ReconfigureRelated Pages
Section titled “Related Pages”- Install Issues — Common installation problems
- Model Issues — LLM provider related issues
- Gateway Issues — Messaging platform connection issues
- hermes doctor — Automatic diagnostic tool