Appreciate all the takes so far, the team is reading this thread for feedback. Feel free to pile on with bugs or feature requests we'll all be reading.
Appreciate all the takes so far, the team is reading this thread for feedback. Feel free to pile on with bugs or feature requests we'll all be reading.
currently it seems these are the CLI tools available. Is it possible to extend or actually disable some of these tools (for various reasons)?
> Available Gemini CLI tools:
- ReadFolder
- ReadFile
- SearchText
- FindFiles
- Edit
- WriteFile
- WebFetch
- ReadManyFiles
- Shell
- Save Memory
- GoogleSearch
At the very least, we need better documentation on how to get that environment variable, as we are not on GCP and this is not immediately obvious how to do so. At the worst, it means that your users paying for gemini don't have access to this where your general google users do.
1. CodeRunner - https://github.com/BandarLabs/coderunner/tree/main?tab=readm...
[^1]: https://console.cloud.google.com/marketplace/product/google/...
Workspace users [edit: cperry was wrong] can get the free tier as well, just choose "More" and "Google for Work" in the login flow.
It has been a struggle to get a simple flow that works for all users, happy to hear suggestions!
You can also extend with the Extensions feature - https://github.com/google-gemini/gemini-cli/blob/main/docs/e...
Just a heads-up: your docs about authentication on Github say to place a GOOGLE_CLOUD_PROJECT_ID as an environment variable. However, what the Gemini CLI is actually looking for, from what I can tell, is a GOOGLE_CLOUD_PROJECT environment variable with the name of a project (rather than its ID). You might want to fix that discrepancy between code and docs, because it might confuse other users as well.
I don’t know what constraints made you all require a project ID or name to use the Gemini CLI with Workspace accounts. However, it would be far easier if this requirement were eliminated.
noted on documentation, there's a PR in flight on this. also found some confusion around gmail users who are part of the developer program hitting issues.
Also this doco says GOOGLE_CLOUD_PROJECT_ID but the actual tool wants GOOGLE_CLOUD_PROJECT
Well, I've just set up Gemini CLI with a Workspace account project in the free tier, and it works apparently for free. Can you explain whether billing for that has simply not been configured yet, or where exactly billing details can be found?
For reference, I've been using this panel to keep track of my usage in the free tier of the Gemini API, and it has not been counting Gemini CLI usage thus far: https://console.cloud.google.com/apis/api/generativelanguage...
Unfortunately all of that is pretty confusing, so I'll hold off using Gemini CLI until everything has been clarified.
like to just get a short response - for simple things like "what's a nm and grep command to find this symbol in these 3 folders". I use gemini alot for this type of thing already
Or would that have to be a custom prompt I write?
All different products doing the sameish thing. I don’t know where to send users to do anything. They are all licensed differently. Bonkers town.
other people use simon willison's `llm` tool https://github.com/simonw/llm
Both allow you to switch between models, send short prompts from a CLI, optionally attach some context. I prefer mods because it's an easier install and I never need to worry about Python envs and other insanity.
Edit: I should mention that I'm accessing this through Gemini Code Assist, so this may be something out of your wheelhouse.
I don't think that's capacity, you should see error codes.
> You exceeded your current quota, please check your plan and billing details. For more information on this error, head to: https://ai.google.dev/gemini-api/docs/rate-limits.
Discouraging
I'm a Gemini Pro subscriber and I would love to be able to use my web-based chat resource limits with, or in addition to, what is offered here. I have plenty of scripts that are essentially "Weave together a complex prompt I can send to Gemini Flash to instantly get the answer I'm looking for and xclip it to my clipboard", and this would finally let me close the last step in that scripts.
Love what I'm seeing so far!
Is the recommendation to specifically ask "analyze the codebase" here?
- On a new chat I have to re-approve things like executing "go mod tidy", "git", write files... I need to create a new chat for each feature, (maybe an option to clear the current chat on VsCode would work)
- I have found some problems with adding some new endpoint on an example Go REST server I was trying it on, it just deleted existing endpoints on the file. Same with tests, it deleted existing tests when asking to add a test. For comparison I didn't find these problems when evaluating Amp (uses Claude 4)
Overall it works well and hope you continue with polishing it, good job!!
There's also wrappers that place the command directly in your terminal prompt if you run shelp-c
And thinking is stupid. "Show me how to generate a random number in python"... 15s later you get an answer.
[API Error: {"error":{"message":"{\n \"error\": {\n \"code\": 429,\n \"message\": \"Resource has been exhausted (e.g. check quota).\",\n
\"status\": \"RESOURCE_EXHAUSTED\"\n }\n}\n","code":429,"status":"Too Many Requests"}}]
Please wait and try again later. To increase your limits, request a quota increase through AI Studio, or switch to another /auth method
However, in the Google cloud console I don't see any of the quotas going above their default limits.Many of these are not even remotely similar.
CC has this issue too, but way less often, and second shot almost always works.
* First google forced me to start paying for my email domain.
* Then they increased the cost to force me to pay for AI features
* Now, I can't actually use the AI features without spending even more money, I could use them if I just had a gmail address and didn't pay google.
Well done Google, you've finally pursaded me to get around to transfering my custom email domain off google. Anyone have any preferences?
- Here [1] it says "Project settings override user settings." How does gemini determine if we're in a project? Does it look for a `.gemini` folder in the current working directory as well as every parent directory up to the root? Would Gemini be able to read the contents of a subfolder of the CWD if the subfolder contains a different `.gemini` folder?
- I don't see documentation for the `selectedAuthType` field in the documentation for settings.json. Mine says `oauth-personal`. I could've sworn I signed in with my Google Workspace account. Does `oauth-personal` apply to Workspace accounts?
And a feature request: it would be nice to add a restriction in the settings.json file forcing anybody who uses gemini in that project to sign in to a Workspace account in a specific org (or use a specific project, I guess).
[1]: https://github.com/google-gemini/gemini-cli/blob/main/docs/c...
High ROI feature requests:
• Pattern-based permissions - Bash(git:) to allow git but not rm, Write(logs/.txt) for path scoping
• CLI permission flags - --allowedTools "Read,Bash(npm test)" --deniedTools "Write" for session overrides
• Allow/deny precedence rules - explicit deny should override general allow (security principle)
• Config file hierarchy - system → user → project precedence for policy enforcement
Medium ROI improvements:
• Command argument filtering - whitelist git commit but not git --exec-path=/bin/sh
• Multiple config formats - support both simple arrays and structured permission objects
• Runtime permission diagnostics - gemini permissions list to debug what's actually enabled
• Environment variable injection - top-level env config for OTEL endpoints, API keys, etc.
The permission engine is really the key piece - once you can express "allow X but not Y within X", it unlocks most advanced use cases. Keep up the great work!
So Vertex is like AWS Bedrock for GCP?
Even with 1M context, for large projects, it makes sense to define boundaries These will typically be present in some form, but they are not available precisely to the coding agent. Imagine there was a simple YAML format where I could specify modules and where they can be found in the source tree, and the APIs of other modules it interacts with. Then it would be trivial to turn this into a context that would very often fit into 1M tokens. When an agent decides something needs to be done in the context of a specific module, it could then create a new context window containing exactly that module, effetively turning a large codebase into a small codebase, for which Gemini is extraordinarily effective.
I wonder if it is a concious decision not to include this (I imagine it opens a lot of possibilities of going crazy, but it also seems to be the source of a great amount of Claud Code's power). I would very much like to play with this if it appears in gemini-cli
Next step would be the possibility to define custom prompts, toolsets and contexts for specific re-occuring tasks, and these appearing as tools to the main agent. Example for such a thing: create_new_page. The prompt could describe the steps one needs to create the page. Then the main agent could simply delegate this as a well-defined task, without cluttering its own context with the operational details.
Edit: I tried it. The setup was a breeze. I fed the CLI two git commit IDs and some light prompting on what to look for. It gave a reasonable response. I'll try on a real PR shortly.
https://github.com/google-gemini/gemini-cli/blob/main/docs/c...
But it is still worth a try and may be possible with some prompting and duct tape.
Use Jules, also by Google if you need what you describe.
I think with better prompting on my end, as I have good experience with Gemini, this will be awesome. You probably could tweak a lot on your end as well, don't let it get stuck in cycles.
Do you mean that they stopped offering the legacy free tier and you had to upgrade to a paid plan? If that's the case, they reverted their decision and it was possible to go back to the free tier. I don't know if it is still possible, as this was 3 years ago, but here's a thread outlining how to do it. https://www.reddit.com/r/gsuitelegacymigration/comments/urky...