v1.9.3 - Gemini Provider Fully Functional
🎉 Gemini Provider Now Fully Functional
Three critical bugs have been fixed in v1.9.3, making the Gemini provider production-ready with complete streaming support.
Fixed
1. Model Selection Bug (cli-proxy.ts, anthropic-to-gemini.ts)
- Issue: Proxy incorrectly used
COMPLETION_MODELenvironment variable containingclaude-sonnet-4-5-20250929instead of Gemini model - Fix: Ignore
COMPLETION_MODELfor Gemini proxy, always default togemini-2.0-flash-exp - Impact: Gemini API now receives correct model name
2. Streaming Response Bug (anthropic-to-gemini.ts:119-121)
- Issue: Missing
&alt=sseparameter in streaming API URL caused empty response streams - Fix: Added
&alt=sseparameter tostreamGenerateContentendpoint - Impact: Streaming responses now work perfectly, returning complete LLM output
3. Provider Selection Logic Bug (cli-proxy.ts:299-302)
- Issue: System auto-selected Gemini even when user explicitly specified
--provider anthropic - Fix: Check
options.providerfirst and return false if user specified different provider - Impact: Provider flag now correctly overrides auto-detection
Verified Working
All providers tested end-to-end with agents:
- ✅ Gemini provider with streaming responses
- ✅ Anthropic provider (default and explicit)
- ✅ OpenRouter provider
- ✅ ONNX local provider
Quick Start with Gemini
# Setup Gemini API key
export GOOGLE_GEMINI_API_KEY=your_key_here
# Use Gemini (2-5x faster, 70% cheaper than Claude)
npx agentic-flow --agent coder --task "Write function" --provider gemini
# Gemini with streaming
npx agentic-flow --agent coder --task "Build API" --provider gemini --streamDocumentation
Updated README with comprehensive provider documentation including:
- Provider comparison table
- Configuration guides
- Architecture explanation
- Gemini-specific setup
Full Changelog: https://github.com/ruvnet/agentic-flow/blob/main/CHANGELOG.md