[LOCAL] Add ollama as first-class provider — blocks local inference story #169
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
Hermes agent doesn't recognize 'ollama' as a provider. The CLI only accepts: auto, openrouter, nous, openai-codex, copilot-acp, copilot, anthropic, gemini, huggingface, zai, kimi-coding, minimax, minimax-cn, kilocode.
When config.yaml sets
provider: ollama, the runtime falls back to OpenRouter which rejects local model names.Impact
Blocks ALL local inference. Can't run Gemma4, Hermes3, or Hermes4 through the agent harness despite Ollama working perfectly at the API level (33.8 tok/s on Gemma4 with tool-use).
Acceptance Criteria
hermes chat -m gemma4 --provider ollamaworkshttp://localhost:11434/v1(configurable via config.yaml)gemma4-localcan run a full agent session locallyImplementation Hint
hermes_cli/main.pyargument parserhermes_cli/auth.py(api_key='ollama', base_url from config)hermes_cli/models.pyBezalel delivered (2026-04-07):
hermes_cli/main.py:--provider ollamaadded to CLI choiceshermes_cli/auth.py:ollamaalias maps to canonical providerollama(notcustom)agent/auxiliary_client.py:resolve_provider_clientroutesollamatohttp://localhost:11434/v1with defaultgemma4:12bagent/auxiliary_client.py:_try_ollamaadded to auto-detection chain (priority: after Nous, before local/custom)agent/auxiliary_client.py:_VISION_AUTO_PROVIDER_ORDERincludesollamaagent/model_metadata.py:ollamaadded to_PROVIDER_PREFIXESand_URL_TO_PROVIDERagent/model_metadata.py: Gemma-4 context lengths added (256K for 1b/4b/12b/26b/31b)fix/kimi-fallback-model(PR #222)Closing as completed.