Skip to content

Official Re-Integration of Gemini CLI #7353

@kotauchisunsun

Description

@kotauchisunsun

What specific problem does this solve?

Overview

Currently, RooCode does not provide any official integration with Gemini CLI.
Based on past history, reusing OAuth client credentials or relying on non-standard integrations should be avoided. However, Gemini CLI itself has been steadily developed as an official developer tool, and it has become a strong option to greatly enhance the local development experience.
If RooCode provides proper library-based integration, it will meet the needs of users who want to use Gemini CLI in a secure and sustainable way.

Proposed solution

Library-based integration: Import @google/gemini-cli-core as a dependency and implement it as a RooCode provider (e.g., GeminiCliCoreProvider).
The idea is to directly call the Gemini CLI core functions via the Node.js library.

According to the following issue, using Gemini CLI as a library does not seem to be a problem:
cline/cline#4495

Alternatives considered

Launch Gemini CLI as an external process and interact with its functions through inter-process communication.

Additional context (optional)

gemini-cli-mcp-openai-bridge

https://github.com/Intelligent-Internet/gemini-cli-mcp-openai-bridge

This OSS provides Gemini CLI functionality through an OpenAI-compatible API.

Google publishes Gemini functionality as the npm package gemini-cli-core, and the bridge project uses it to build a compliant API.
https://github.com/Intelligent-Internet/gemini-cli-mcp-openai-bridge/blob/main/bridge-server/src/bridge/bridge.ts#L5-L13

mcp-gemini-cli

https://github.com/choplin/mcp-gemini-cli/tree/eeff2ab1fc409f796c6ae8f3665077bc5c0bcf73

This OSS provides Gemini CLI functionality via MCP.

To achieve this, it simply starts Gemini CLI as a process and integrates with it.
https://github.com/choplin/mcp-gemini-cli/blob/eeff2ab1fc409f796c6ae8f3665077bc5c0bcf73/index.ts#L38

Related issues

Roo Code Task Links (Optional)

No response

Request checklist

  • I've searched existing Issues and Discussions for duplicates
  • This describes a specific problem with clear impact and context

Interested in implementing this?

  • Yes, I'd like to help implement this feature

Implementation requirements

  • I understand this needs approval before implementation begins

How should this be solved? (REQUIRED if contributing, optional otherwise)

No response

How will we know it works? (Acceptance Criteria - REQUIRED if contributing, optional otherwise)

No response

Technical considerations (REQUIRED if contributing, optional otherwise)

No response

Trade-offs and risks (REQUIRED if contributing, optional otherwise)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Issue - Needs InfoMissing details or unclear. Waiting on author to provide more context.enhancementNew feature or requestproposal

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions