2.9 KiB
Providers & Model Aliases
Set via hermes model (picker) or hermes setup. 35+ provider profiles ship as
plugins under plugins/model-providers/; user plugins of the same name override.
Full docs: https://hermes-agent.nousresearch.com/docs/integrations/providers
Providers
| Provider | Auth | Key env var(s) |
|---|---|---|
| openrouter | API key | OPENROUTER_API_KEY |
| anthropic | API key | ANTHROPIC_API_KEY (also CLAUDE_CODE_OAUTH_TOKEN) |
| nous | OAuth device code | hermes auth add nous (or NOUS_API_KEY) |
| openai-codex | OAuth | hermes auth add openai-codex |
| qwen-oauth | OAuth | hermes auth add qwen-oauth |
| minimax-oauth | OAuth | hermes auth add minimax-oauth |
| copilot | Token | COPILOT_GITHUB_TOKEN / GH_TOKEN (Copilot device flow — gh auth login tokens do NOT work) |
| copilot-acp | External CLI | Copilot CLI on PATH or COPILOT_CLI_PATH |
| gemini | API key | GOOGLE_API_KEY or GEMINI_API_KEY |
| xai | API key | XAI_API_KEY (SuperGrok OAuth also supported) |
| deepseek | API key | DEEPSEEK_API_KEY |
| zai (GLM) | API key | GLM_API_KEY / ZAI_API_KEY |
| minimax / minimax-cn | API key | MINIMAX_API_KEY / MINIMAX_CN_API_KEY |
| kimi-coding / -cn | API key | KIMI_API_KEY / KIMI_CN_API_KEY |
| alibaba (+coding-plan) | API key | DASHSCOPE_API_KEY / ALIBABA_CODING_PLAN_API_KEY |
| xiaomi | API key | XIAOMI_API_KEY |
| huggingface | Token | HF_TOKEN |
| fireworks / novita / nvidia / deepinfra / gmi / arcee / stepfun / upstage / kilocode / ai-gateway / opencode-zen / opencode-go / ollama-cloud | API key | <NAME>_API_KEY |
| bedrock / vertex / azure-foundry | Cloud SDK / key | AWS SDK creds / Vertex ADC / AZURE_FOUNDRY_API_KEY |
| custom | Config | model.base_url + model.api_key in config.yaml |
Multiple credentials per provider pool and rotate automatically (hermes auth).
Fallback chain when the primary fails: hermes fallback add|remove|list.
User-defined model aliases
Work with /model <name> in CLI and every gateway platform. Resolved by
hermes_cli/model_switch.py::resolve_alias(); user aliases are checked BEFORE
the built-in table, so a user sonnet/grok shadows the built-in.
# Full form
model_aliases:
fav:
model: claude-sonnet-4.6
provider: anthropic
local-qwen:
model: qwen3.5:397b
provider: custom
base_url: "https://ollama.com/v1"
# Short form ("provider/model"), also via CLI:
# hermes config set model.aliases.fav openrouter/anthropic/claude-sonnet-4.6
model:
aliases:
fav: openrouter/anthropic/claude-sonnet-4.6
/model fav — session-scoped; add --global to persist as default.
Built-in aliases (catalog-resolved against the active provider): sonnet,
opus, haiku, claude, gpt5, gpt, codex, o3, o4, gemini,
deepseek, grok, llama, qwen, minimax, nemotron, kimi, glm,
step, mimo, trinity.