[HARNESS] Switch model default from Anthropic cloud to local llama.cpp backend (sovereignty) #22

Closed
opened 2026-03-26 19:57:09 +00:00 by perplexity · 9 comments
Member

Context

Per research spike the-nexus#576 and the sovereignty mandate. Current config.yaml:

model:
  default: claude-opus-4-6
  provider: anthropic

When Anthropic quota expires (like right now), Timmy is dead. The fallback is gemini-2.5-pro (also cloud). The Ollama entry points at hermes3:latest (old 8B base, not our trained model).

Per FALSEWORK.md: cloud services are temporary scaffolding. The permanent structure is local.

Task

After Hermes 4 14B is pulled and Modelfile created (#9, the-nexus#564):

model:
  default: hermes4:14b
  provider: custom

providers:
  ollama:
    base_url: http://localhost:11434/v1
    model: hermes4:14b

fallback_model:
  provider: custom
  model: gemini-2.5-pro
  base_url: https://generativelanguage.googleapis.com/v1beta/openai
  api_key_env: GEMINI_API_KEY

Cloud becomes the fallback, not the default. Local becomes primary.

Also clean up stale custom_providers entries (glm-4.7-flash:latest is deleted, shouldn't be listed).

Acceptance criteria

  • hermes config show shows model.default: hermes4:14b
  • hermes config show shows model.provider: custom
  • Timmy responds using local Ollama when Anthropic quota is expired
  • Stale custom_providers entries removed
  • Fallback to Gemini only triggers when local model can't handle the task

Depends on

  • timmy-config#9 (Pull Hermes 4 14B)
  • the-nexus#564 (Create Modelfile)

Pillar: Harness (sovereignty)

Research update — 2026-03-27

Reclassify from research to execution. Hermes already supports sovereign/local routing; the remaining work is provider/default config, fallback policy, and proof that local-first is actually active. Local model path here is llama.cpp, not Ollama.

## Context Per research spike the-nexus#576 and the sovereignty mandate. Current config.yaml: ```yaml model: default: claude-opus-4-6 provider: anthropic ``` When Anthropic quota expires (like right now), Timmy is dead. The fallback is `gemini-2.5-pro` (also cloud). The Ollama entry points at `hermes3:latest` (old 8B base, not our trained model). Per FALSEWORK.md: cloud services are temporary scaffolding. The permanent structure is local. ## Task After Hermes 4 14B is pulled and Modelfile created (#9, the-nexus#564): ```yaml model: default: hermes4:14b provider: custom providers: ollama: base_url: http://localhost:11434/v1 model: hermes4:14b fallback_model: provider: custom model: gemini-2.5-pro base_url: https://generativelanguage.googleapis.com/v1beta/openai api_key_env: GEMINI_API_KEY ``` Cloud becomes the fallback, not the default. Local becomes primary. Also clean up stale `custom_providers` entries (`glm-4.7-flash:latest` is deleted, shouldn't be listed). ## Acceptance criteria - [ ] `hermes config show` shows `model.default: hermes4:14b` - [ ] `hermes config show` shows `model.provider: custom` - [ ] Timmy responds using local Ollama when Anthropic quota is expired - [ ] Stale custom_providers entries removed - [ ] Fallback to Gemini only triggers when local model can't handle the task ## Depends on - timmy-config#9 (Pull Hermes 4 14B) - the-nexus#564 (Create Modelfile) ## Pillar: Harness (sovereignty) ## Research update — 2026-03-27 Reclassify from research to execution. Hermes already supports sovereign/local routing; the remaining work is provider/default config, fallback policy, and proof that local-first is actually active. Local model path here is llama.cpp, not Ollama.
Timmy was assigned by perplexity 2026-03-26 19:57:09 +00:00
Owner

Dispatched to claude. Huey task queued.

⚡ Dispatched to `claude`. Huey task queued.
Owner

Dispatched to gemini. Huey task queued.

⚡ Dispatched to `gemini`. Huey task queued.
Owner

Dispatched to kimi. Huey task queued.

⚡ Dispatched to `kimi`. Huey task queued.
Owner

Dispatched to grok. Huey task queued.

⚡ Dispatched to `grok`. Huey task queued.
Owner

Dispatched to perplexity. Huey task queued.

⚡ Dispatched to `perplexity`. Huey task queued.
Member

🔧 gemini working on this via Huey. Branch: gemini/issue-22

🔧 `gemini` working on this via Huey. Branch: `gemini/issue-22`
Member

🔧 grok working on this via Huey. Branch: grok/issue-22

🔧 `grok` working on this via Huey. Branch: `grok/issue-22`
Member

⚠️ grok produced no changes for this issue. Skipping.

⚠️ `grok` produced no changes for this issue. Skipping.
Timmy changed title from [HARNESS] Switch model default from Anthropic cloud to local Ollama (sovereignty) to [HARNESS] Switch model default from Anthropic cloud to local llama.cpp backend (sovereignty) 2026-03-28 03:36:39 +00:00
Owner

Closing during the 2026-03-28 backlog burn-down.

Reason: this issue is being retired as part of a backlog reset toward the current final vision: Heartbeat, Harness, and Portal. If the work still matters after reset, it should return as a narrower, proof-oriented next-step issue rather than stay open as a broad legacy frontier.

Closing during the 2026-03-28 backlog burn-down. Reason: this issue is being retired as part of a backlog reset toward the current final vision: Heartbeat, Harness, and Portal. If the work still matters after reset, it should return as a narrower, proof-oriented next-step issue rather than stay open as a broad legacy frontier.
Timmy closed this issue 2026-03-28 04:53:05 +00:00
Sign in to join this conversation.
4 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/timmy-config#22