65 lines
2.9 KiB
Markdown
65 lines
2.9 KiB
Markdown
# 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.
|
|
|
|
```yaml
|
|
# 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`.
|