{"id":51345008,"url":"https://github.com/runapi-ai/gemini","last_synced_at":"2026-07-02T11:00:42.000Z","repository":{"id":359532103,"uuid":"1246376615","full_name":"runapi-ai/gemini","owner":"runapi-ai","description":"RunAPI Gemini API skill for Claude Code, Codex, Gemini CLI, Cursor, and 50+ agents","archived":false,"fork":false,"pushed_at":"2026-07-02T09:23:07.000Z","size":21,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-02T11:00:17.257Z","etag":null,"topics":["api","claude-code","codex","gemini","gemini-cli","google","runapi","runapi-ai","skill"],"latest_commit_sha":null,"homepage":"https://runapi.ai/models/gemini","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/runapi-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-22T06:20:32.000Z","updated_at":"2026-07-02T09:23:10.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/runapi-ai/gemini","commit_stats":null,"previous_names":["runapi-ai/gemini"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/runapi-ai/gemini","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runapi-ai%2Fgemini","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runapi-ai%2Fgemini/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runapi-ai%2Fgemini/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runapi-ai%2Fgemini/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/runapi-ai","download_url":"https://codeload.github.com/runapi-ai/gemini/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/runapi-ai%2Fgemini/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35043936,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-02T02:00:06.368Z","response_time":173,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","claude-code","codex","gemini","gemini-cli","google","runapi","runapi-ai","skill"],"created_at":"2026-07-02T11:00:19.286Z","updated_at":"2026-07-02T11:00:41.988Z","avatar_url":"https://github.com/runapi-ai.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/runapi-ai/gemini\"\u003e\n    \u003ch3 align=\"center\"\u003eGemini API Skill for RunAPI\u003c/h3\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Configure Gemini or OpenAI-compatible clients to use Gemini models on RunAPI.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://runapi.ai/models/gemini\"\u003e\u003cstrong\u003eModel Reference\u003c/strong\u003e\u003c/a\u003e · \u003ca href=\"https://github.com/runapi-ai/gemini\"\u003e\u003cstrong\u003eSkill Repo\u003c/strong\u003e\u003c/a\u003e · \u003ca href=\"https://runapi.ai/models\"\u003e\u003cstrong\u003eAll Models\u003c/strong\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![skills.sh](https://www.skills.sh/b/runapi-ai/gemini)](https://www.skills.sh/runapi-ai/gemini/gemini)\n[![ClawHub](https://img.shields.io/badge/ClawHub-runapi--gemini-111827)](https://clawhub.ai/runapi-ai/runapi-gemini)\n[![License](https://img.shields.io/github/license/runapi-ai/gemini)](https://github.com/runapi-ai/gemini/blob/main/LICENSE)\n\n\u003c/div\u003e\n\u003cbr/\u003e\n\nCall the Gemini API through RunAPI with either the OpenAI SDK or Gemini\n`contents` clients -- point any OpenAI-compatible client at\n`https://runapi.ai/v1`, send `gemini-2.5-flash`,\n`gemini-2.5-pro`, `gemini-3-flash-preview`, `gemini-3-pro-preview`, or\n`gemini-3.1-pro-preview`, or call Gemini `contents` paths when an existing\nclient expects `generateContent` / `streamGenerateContent`, and pay through one\nRunAPI balance. This skill teaches Claude Code, Codex, Gemini CLI, Cursor, and\n50+ agents how to wire a Gemini API client up against RunAPI.\n\nThe canonical agent file is `skills/gemini/SKILL.md`.\n\n## Install the skill\n\n```bash\nnpx skills add runapi-ai/gemini -g\n```\n\nOr paste this prompt to your AI agent:\n\n```text\nInstall the gemini skill for me:\n\n1. Clone https://github.com/runapi-ai/gemini\n2. Copy the skills/gemini/ directory into your\n   user-level skills directory (e.g. ~/.claude/skills/\n   for Claude Code, ~/.codex/skills/ for Codex).\n3. Verify that SKILL.md is present.\n4. Confirm the install path when done.\n```\n\n## Use the Gemini API on RunAPI\n\nThe Gemini API on RunAPI exposes two request styles:\n\n1. **OpenAI-compatible** — `POST /v1/chat/completions`. Drop-in for\n   any existing OpenAI SDK client.\n2. **Gemini contents** — `POST /v1beta/models/\u003cmodel\u003e:generateContent` or\n   `:streamGenerateContent`. Drop-in for clients that send Gemini `contents`\n   requests.\n\n```python\nfrom openai import OpenAI\n\nclient = OpenAI(\n    api_key=\"YOUR_RUNAPI_TOKEN\",\n    base_url=\"https://runapi.ai/v1\",\n)\n\nresponse = client.chat.completions.create(\n    model=\"gemini-2.5-flash\",\n    messages=[{\"role\": \"user\", \"content\": \"Hello!\"}],\n)\nprint(response.choices[0].message.content)\n```\n\n```javascript\nimport OpenAI from \"openai\";\n\nconst client = new OpenAI({\n  apiKey: \"YOUR_RUNAPI_TOKEN\",\n  baseURL: \"https://runapi.ai/v1\",\n});\n\nconst response = await client.chat.completions.create({\n  model: \"gemini-2.5-flash\",\n  messages: [{ role: \"user\", content: \"Hello!\" }],\n});\nconsole.log(response.choices[0].message.content);\n```\n\n```bash\ncurl -X POST \"https://runapi.ai/v1/chat/completions\" \\\n  -H \"x-api-key: YOUR_RUNAPI_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"model\": \"gemini-2.5-flash\",\n    \"messages\": [{\"role\": \"user\", \"content\": \"Hello!\"}]\n  }'\n```\n\nGet a RunAPI API Key at \u003chttps://runapi.ai/api_keys\u003e.\n\nFor `gemini-3-flash-preview` and `gemini-3.5-flash`, RunAPI uses the native\nGemini `streamGenerateContent` route. For other callable Gemini models, RunAPI\naccepts Gemini `contents` requests and bridges them to the OpenAI-compatible\nchat request format. For new app code, prefer the OpenAI-compatible setup.\n\n## Connect Gemini CLI itself\n\n```bash\nexport GOOGLE_API_KEY=YOUR_RUNAPI_TOKEN\nexport GOOGLE_GENAI_BASE_URL=https://runapi.ai\ngemini\n```\n\n## Supported Gemini models\n\n| Model ID | Capabilities |\n|---|---|\n| `gemini-3.5-flash` | Streaming `contents` requests, multimodal, function calling, thoughts |\n| `gemini-3.1-pro-preview` | + reasoning effort |\n| `gemini-3-pro-preview` | + reasoning effort |\n| `gemini-3-flash-preview` | Chat, multimodal, function calling, structured output, reasoning effort |\n| `gemini-2.5-pro` | + reasoning effort |\n| `gemini-2.5-flash` | Chat, multimodal, Google Search, structured output, thoughts |\n\n`gemini-flash-latest` is an alias for `gemini-3-flash-preview`.\n\n## Routing\n\n- Gemini API on RunAPI: \u003chttps://runapi.ai/models/gemini\u003e\n- Gemini API docs: \u003chttps://runapi.ai/docs#gemini\u003e\n- Provider page: \u003chttps://runapi.ai/providers/google\u003e\n- Browse the full RunAPI catalog: \u003chttps://runapi.ai/models\u003e\n- Skill repository: \u003chttps://github.com/runapi-ai/gemini\u003e\n\n## Agent rules\n\n- Keep API keys in `GOOGLE_API_KEY` / `OPENAI_API_KEY` (or your secret\n  manager); never inline them in commits or shell history.\n- Use the OpenAI-compatible endpoint for new app code. Use Gemini `contents`\n  paths when an existing client already sends `contents` requests.\n- Stream long responses (`stream: true`) so the agent can release the\n  terminal/IO loop early.\n- For pricing, rate-limit, and commercial-usage answers, link to\n  \u003chttps://runapi.ai/models/gemini\u003e rather than this README.\n\n## License\n\nLicensed under the Apache License, Version 2.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunapi-ai%2Fgemini","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frunapi-ai%2Fgemini","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frunapi-ai%2Fgemini/lists"}