opencode-gemini-imagegen
v0.1.0
Published
OpenCode plugin for Gemini image generation via Antigravity Manager
Maintainers
Readme
opencode-gemini-imagegen
OpenCode plugin for Gemini image generation via Antigravity Manager.
Prerequisites
- Antigravity Manager running locally at
http://127.0.0.1:8045 - The manager must have
gemini-3-pro-imagemodel available
Installation
Add to your opencode.json:
{
"plugin": [
"opencode-gemini-imagegen"
]
}Then install dependencies:
cd ~/.config/opencode && bun installUsage
Once installed, any model can call the gemini_image tool:
User: Generate an image of a futuristic city
Assistant: [calls gemini_image(prompt="futuristic city with neon lights and flying cars", size="1920x1080", quality="hd")]
Result:
## Image Generated Successfully
**File**: `./generated-images/futuristic-city-2026-02-03T15-30-42.jpg`
**Format**: image/jpeg
**Dimensions**: 1920x1080
**Quality**: hdConfiguration
Configure via environment variables:
| Variable | Default | Description |
|----------|---------|-------------|
| OPENCODE_IMAGE_BASE_URL | http://127.0.0.1:8045/v1 | Antigravity Manager URL |
| OPENCODE_IMAGE_API_KEY | (from ANTIGRAVITY_MANAGER_API_KEY) | API key |
| OPENCODE_IMAGE_MODEL | gemini-3-pro-image | Model for image generation |
| OPENCODE_IMAGE_TIMEOUT_MS | 120000 | Request timeout (ms) |
| OPENCODE_IMAGE_OUTPUT_DIR | ./generated-images | Output directory |
Tool Arguments
| Argument | Type | Default | Description |
|----------|------|---------|-------------|
| prompt | string | (required) | Image description |
| size | string | 1024x1024 | Dimensions in WxH format (256-4096) |
| quality | enum | hd | standard, hd, or medium |
| filename | string | (auto) | Custom filename (without extension) |
Features
- Auto-detects image format (JPEG/PNG) from response
- Path traversal protection for filenames
- File collision handling with automatic suffix
- Memory protection for large responses
- Detailed error messages with actionable hints
Security Notes
- Generated images are saved locally only
- Filenames are sanitized to prevent path traversal
- Prompts may be rejected by content filters
License
MIT
