How-To Guide
Fix API Key Paste Issues During Hermes Setup
Resolve issues where API keys won't paste during Hermes setup on WSL, Termux, or non-standard terminals.
Quick answer
If your API key 'won't paste' when setting up Hermes on WSL, Termux, or a web terminal, it usually is pasting — Python's getpass hides the input, so you see nothing. Paste and press Enter anyway. If it genuinely fails, set the key via an environment variable or edit ~/.hermes/.env directly.
When setting up Hermes on WSL, Termux, or web-based terminals, API keys may appear not to paste. This is usually a Python getpass limitation — the key IS being entered, it's just hidden. If that doesn't work, adding the key directly to .env bypasses the issue entirely.
Managed cloud · API costs included · Skill library · Cancel anytime
Before you start:
- ☑Hermes Agent installer running
- ☑Your API key ready to paste
- ☑Access to ~/.hermes/.env file
Steps
- 1
Understand the behavior
API key prompts use Python getpass which hides input for security — your paste IS working, it just doesn't show
- 2
Try pasting anyway
Paste the key and press Enter — it should work even though nothing appears on screen
- 3
Add key directly to .env
If paste still fails, add your key directly to ~/.hermes/.env: OPENROUTER_API_KEY=sk-or-...
- 4
Restart Hermes
Hermes will pick up the key from .env automatically on next start
Pro Tips
- 💡The hidden input is a security feature, just like sudo password prompts — paste and press Enter even though you see nothing
- 💡On Termux, you may need to grant clipboard permissions to the terminal app
- 💡Revoke and regenerate any API key you've accidentally exposed in screenshots or logs
- 💡Do not store one high-value provider key as the only runtime path for every Hermes job. Keep profile-specific keys, budgets, and fallback routes documented.
Troubleshooting
❌ Nothing appears when pasting API key
✅ This is expected behavior with getpass. Paste the key and press Enter — it's working even though you can't see it.
❌ Key rejected after pasting
✅ Check for trailing spaces or URL-encoding artifacts (%3D instead of =). Copy the raw key from your provider dashboard and add it directly to ~/.hermes/.env
❌ Paste doesn't work at all on Termux
✅ Add the key manually: echo 'OPENROUTER_API_KEY=your-key-here' >> ~/.hermes/.env
FAQ
Why doesn't my API key appear when I paste it?
Hermes uses Python's getpass for key entry, which hides input by design. The key is going in — you just can't see it. Paste and press Enter.
It still won't accept the key — what now?
Set it directly: export the provider's environment variable, or edit ~/.hermes/.env and add the key there, then restart Hermes.
Does this happen everywhere?
It's most common on WSL, Termux, and web-based terminals where paste behavior differs. The getpass hiding is the usual cause rather than an actual paste failure.