feat: claude-code backends + llamaswap provider + dogfood the CC engine #3

Merged
steve merged 2 commits from feat/cc-backends into main 2026-06-27 21:53:42 +00:00

2 Commits

Author SHA1 Message Date
steve 540645c2ae fix: fold in PR #3 review findings (llamaswap test + error message)
Build & push image / build-and-push (pull_request) Successful in 33s
The 11-model swarm (incl. the new claude-code/sonnet competitor)
reviewed PR #3. 52 findings graded via the MCP — almost all accurate
clean-verifications of a small, clean PR (telemetry over-extracts them).
Two were real and are folded in:

- model_test.go: add llamaswap with/without-token cases to
  TestEndpointProvider. Caught by claude-code/sonnet itself, citing
  CLAUDE.md's "add a test when you add logic" rule — the standout
  finding and a strong validation of the Phase-1 engine.
- model.go: the default provider error messages omitted
  "openai-compatible" though the switch accepts it. Caught by gpt-oss.
  Added it to both messages.

gofmt clean, go vet quiet, go test -race green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 17:53:16 -04:00
steve 9a6c662615 feat: claude-code backends, llamaswap provider, dogfood the CC engine
Build & push image / build-and-push (pull_request) Successful in 21s
Adversarial Review (Gadfly) / review (pull_request) Successful in 7m37s
Phase 2 of the gadfly-games build.

- Bump majordomo to the latest build and wire its new **llamaswap**
  provider into gadfly's endpoint switches (GADFLY_PROVIDER=llamaswap +
  GADFLY_BASE_URL, and GADFLY_ENDPOINT_<NAME>="llamaswap|url[|key]"),
  mirroring the ollama provider. Wired but untested (no llama-swap here).
- Dogfood the Phase-1 claude-code engine: add `claude-code/sonnet` to
  gadfly's own review swarm as a competitor alongside the 9 cloud models
  + M5, pin the workflow to :sha-86f12c1 (the image that bundles the
  claude CLI), and map CLAUDE_CODE_OAUTH_TOKEN. Its own provider lane
  (claude-code=1), parallel with the cloud and m5 lanes.
- Document the alternate Claude Code backends: Pro/Max (default), and —
  EXAMPLE ONLY, not wired — running Ollama models THROUGH the CC harness
  via ANTHROPIC_BASE_URL pointed at an Anthropic-compatible proxy
  (claude-code-router / LiteLLM). The subprocess env already forwards
  ANTHROPIC_*/CLAUDE_*, so no code change is needed for that path.
- README: llamaswap row in the providers table + a Claude Code
  "alternate backends" note; examples/claude-code.yml shows the proxy env.

gofmt clean, go vet quiet, go build + go test -race green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-27 17:37:47 -04:00