Menu

#119 feat(llm): add first-class Gemini provider

open
nobody
None
2026-08-12
2026-08-12
Anonymous
No

Originally created by: yablokolabs

Problem

Atomic's generic OpenAI-compatible provider appends /v1/..., while Google's documented OpenAI-compatible API root is /v1beta/openai. That made direct Gemini setup require a translating proxy.

Change

  • Add a first-class gemini provider backed by Atomic's existing OpenAI transport.
  • Route chat completions and model discovery through Google's documented /v1beta/openai/... paths.
  • Resolve Gemini credentials from GEMINI_API_KEY without including the key in logs or errors.
  • Add Gemini to the provider setup flow with a stable default chat model and no manual base-URL step.
  • Preserve the existing OpenAI-compatible, OpenRouter, and AIMLAPI paths unchanged.

Scope

This PR fixes native provider setup and endpoint routing only. Gemini SSE reconstruction, parallel-tool-call control, and structured retry delays remain tracked by [#103], [#104], and [#106] respectively.

Testing

  • npm run lint
  • Post-review Gemini export/configure regressions: 5 passed, 0 failed
  • Affected provider/config/TUI suite: 389 passed, 0 failed
  • npm run build
  • Full suite: 3,953 passed, 6 failed, 4 skipped; no new failure names were introduced versus the captured upstream baseline (one baseline failure did not reproduce)
  • git diff --check
  • Public diff credential/private-path audit

Closes [#108]

Implementation and test preparation were LLM-assisted, then independently reviewed by Yabloko Labs.

Related

Tickets: #103
Tickets: #104
Tickets: #106
Tickets: #108

Discussion


Log in to post a comment.