Add Codex CLI plugin manifest#24766
Conversation
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request introduces the foundational configuration required to integrate the Gemini CLI as a Codex plugin. By adding the plugin manifest and MCP server definitions, the project gains the necessary metadata and command wiring to function within the Codex ecosystem. Highlights
Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request introduces configuration files to integrate the Gemini CLI with the Codex and Model Context Protocol (MCP) ecosystems. Feedback highlights a critical path resolution error for the MCP configuration, a naming inconsistency with the project's scoped package name, and a significant protocol incompatibility where the interactive CLI entry point would interfere with MCP's JSON-RPC communication on stdout.
Note: Security Review has been skipped due to the limited scope of the PR.
| "mcp", | ||
| "codex" | ||
| ], | ||
| "mcpServers": "./.mcp.json" |
There was a problem hiding this comment.
The relative path to the MCP configuration file is incorrect. Since plugin.json is located in the .codex-plugin/ subdirectory and .mcp.json is in the repository root, the path should be ../.mcp.json to correctly resolve the file.
| "mcpServers": "./.mcp.json" | |
| "mcpServers": "../.mcp.json" |
| @@ -0,0 +1,16 @@ | |||
| { | |||
| "name": "gemini-cli", | |||
There was a problem hiding this comment.
The plugin name "gemini-cli" does not match the scoped package name defined in package.json ("@google/gemini-cli"). To avoid naming collisions in the Codex/MCP ecosystem and maintain consistency with the project's identity, it is recommended to use the full scoped name.
| "name": "gemini-cli", | |
| "name": "@google/gemini-cli", |
| "command": "node", | ||
| "args": [ | ||
| "bundle/gemini.js" | ||
| ] |
There was a problem hiding this comment.
The command node bundle/gemini.js points to the main interactive CLI entry point. This entry point initializes a terminal UI (using the Ink/React framework) which outputs ANSI escape sequences and interactive prompts to stdout. This is incompatible with the Model Context Protocol (MCP), which requires stdout to be reserved exclusively for JSON-RPC messages. Using this entry point will cause protocol errors in MCP clients. Please point this to a dedicated non-interactive server entry point or ensure the CLI supports a flag (e.g., --mcp) that enables a pure MCP server mode.
This adds a small metadata pass so the repo is easier to wire into Codex without touching runtime code.
I targeted this repo because it already exposes:
It adds
.codex-plugin/plugin.json, a starter.mcp.json, and the scanner workflow.Permissions: read-only. No secrets. No publish. No runtime changes.
If you want different command wiring or metadata values, I can adjust the branch.