-
Notifications
You must be signed in to change notification settings - Fork 10.6k
feat(admin): defer gemini mcp/extension commands until after auth to apply admin settings correctly #16892
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
Hi @skeshive, thank you so much for your contribution to Gemini CLI! We really appreciate the time and effort you've put into this. We're making some updates to our contribution process to improve how we track and review changes. Please take a moment to review our recent discussion post: Improving Our Contribution Process & Introducing New Guidelines. Key Update: Starting January 26, 2026, the Gemini CLI project will require all pull requests to be associated with an existing issue. Any pull requests not linked to an issue by that date will be automatically closed. Thank you for your understanding and for being a part of our community! |
Summary of ChangesHello @skeshive, 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 a robust system for deferring the execution of certain CLI commands until after the application has successfully authenticated and loaded all administrative settings. This ensures that commands interacting with features like MCP or extensions adhere to organizational policies and are prevented from running if they have been disabled by an administrator, thereby enhancing security and control over the CLI's functionality. Highlights
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. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
|
Size Change: +1.89 kB (+0.01%) Total Size: 23.1 MB
ℹ️ View Unchanged
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request introduces a mechanism to defer the execution of certain CLI commands until after user authentication and fetching of admin settings. This is a good approach to ensure that commands for features disabled by an admin (like MCP or extensions) are not executed. The implementation looks solid, with a new _deferredCommand property on CliArgs and a runDeferredCommand function that performs the check before execution. The suggestion to also handle the 'skills' command type in runDeferredCommand is valid and ensures all admin-configurable features are covered by this new mechanism, as it does not contradict any existing rules regarding skill validation or trusted content.
|
@chrstnb Which gemini extension* commands should we disable when an admin disables extensions? Generally, the principle I've been following is if the command could be loading or running any 3P code, we should disable it |
Summary
Details
Related Issues
How to Validate
Pre-Merge Checklist