Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Hi - I work on this. Uptake is a steep curve right now, spare a thought for the TPUs today.

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.



Thank you for your work on this. I spent the afternoon yesterday trying to convert an algorithm written in ruby (which I do not know) to vanilla JavaScript. It was a comedy of failing nonsense as I tried to get gpt-4.1 to help, and it just led me down pointless rabbit holes. I installed Gemini CLI out of curiosity, pointed it at the Ruby project, and it did the conversion from a single request, total time from "think I'll try this" to it working was 5 minutes. Impressed.


FWIW the fair comparison for Gemini 2.5 Pro would be o4-mini. That being said I’ve also found that Gemini is way better at getting it right on the first or second try and responding to corrections.


I did something very similar last week with Claude Code, which also had good results. Good to know Gemini CLI is on the same level of power.


<3 love to hear it!


There is one feature in Claude Code which is often overlooked and I haven't seen it in any of the other agentic tools: There is a tool called "sub-agent", which creates a fresh context windows in which the model can independently work on a clearly defined sub-task. This effectively turns Claude Code from a single-agent model to a hierarchical multi-agent model (I am not sure if the hierarchy goes to depths >2).

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.


conscious decision not to include it mostly to cut a release we could ship to land yesterday ;)

various forms of this are being discussed, this commentary is helpful thanks!


Injecting ENV variables into the template would be super useful.


Would Gemini non-interactive mode be a stop gap if they don't have sub-agent equivalent yet?

https://github.com/google-gemini/gemini-cli/blob/main/docs/c...


Possibly. One could think about hooking this in as a tool or simple shell command. But then there is no management when multiple tools modify the codebase simultaneously.

But it is still worth a try and may be possible with some prompting and duct tape.


"sub-agent" sounds incredible! All tools should implement that.


Thanks for building this! The tool shows a lot of promise. Coming from Claude Code, the core functionality feels solid - just needs some permission refinements to match enterprise use cases. This is based upon quickly skimming the current code.

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!


On the one hand, yes this has obviously high immediate value; on the other hand, I can't help but feel like you are giving access to multiple tools that can be used for arbitrary code execution anyway (i.e. running tests, installing dependencies, or running any linter that has a plugin system...), so blacklisting `git --exec-path=/bin/sh` for example is... Misguided? You would have a better time containing the agent in an environment without internet access?


It’s not misguided. The goal isn’t prefect security, the goal is mitigating risk and collaborating with cross functional security, compliance, platform, operations, etc… teams.

Use Jules, also by Google if you need what you describe.


Aka security theater to please corporate security teams that are having trouble keeping up with the new world.


feedback is a gift - thank you!!


One thing I'd really like to see in coding agents is this: As an architect, I want to formally define module boundaries in my software, in order to have AI agents adhere to and profit from my modular architecture.

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.


So, as a member of an organization who pays for google workspace with gemini, I get the message `GOOGLE_CLOUD_PROJECT environment variable not found. Add that to your .env and try again, no reload needed!`

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.


I believe Workspace users have to pay a separate subscription to use the Gemini CLI, the so-called “Gemini for Google Cloud”, which starts at an additional 19 dollars per month [^1]. If that’s really the case, it’s very disappointing to me. I expected access to Gemini CLI to be included in the normal Workspace subscription.

[^1]: https://console.cloud.google.com/marketplace/product/google/...


So to be clear (this isn't your fault of course, this is a Google problem), as someone with my own domain for my email:

* 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?


> First google forced me to start paying for my email domain.

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...


They did it fairly quietly, for a very limited time, I guess to shut up people shouting about it on Twitter.

When I heard about it (about 6 weeks after that post), I applied to go back to free, but was told I was too late.


ZohoMail offers upto 5 free emails for a custom domain. It's what I use fwiw.


I use and like Fastmail.


[edit] all lies - I got my wires crossed, free tier for Workspace isn't yet supported. sorry. you need to set the project and pay. this is WIP.

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!


I can imagine. Y'all didn't start simple like some of your competitors; 'intrapraneurial' efforts in existing contexts like yours come with well-documented struggles. Good work!


Thanks for your clarification. I've been able to set up Gemini CLI with my Workspace account.

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.


sorry, I was wrong about free tier - I've edited above. this is WIP.

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.


> free tier for Workspace isn't yet supported. sorry. you need to set the project and pay.

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.


> 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.

Maybe you have access to an AI solution for this.


How about a binary - either you subscribe to Gemini or you don't. Rate limits or gates for higher tier models/capabilities, that you can upgrade to unlock. Think Small/Medium/Large. Anything more complicated than this is immensely annoying to both consumers and enterprise customers. For power users/nonconformists, include a pay as you go option using credits or cost per action that has access to all capabilities out of the box.


Just get a pop-up or something in place to make it dead simple, because workspace users are probably the core users of the product.


Having played with the gemini-cli here for 30 minutes, so I have no idea but best guess: I believe that if you auth with a Workspace account it routes all the requests through the GCP Vertex API, which is why it needs a GOOGLE_CLOUD_PROJECT env set, and that also means usage-based billing. I don't think it will leverage any subscriptions the workspace account might have (are there still gemini subscriptions for workspace? I have no idea. I thought they just raised everyone's bill and bundled it in by default. What's Gemini Code Assist Standard or Enterprise? I have no idea).


It probably is more powerful though. I know the $30 copilot M365 from microsoft is way better than what they offer to consumers for free. I don't have a google account so I didn't check that.



While I get my organization's IT department involved, I do wonder why this is built in a way that requires more work for people already paying google money than a free user.


@ebiester, my wife's maiden name is E. Biester. I did a serious double take. Got you on X :)


I'd echo that having to get the IT section involved to create a google cloud project is not great UX when I have access to NotebookLM Pro and Gemini for Workplace already.

Also this doco says GOOGLE_CLOUD_PROJECT_ID but the actual tool wants GOOGLE_CLOUD_PROJECT


PR in flight to update docs (if not already in)


workspace accounts always seems like an unsupported mess at google, which is a very strange strategy


Google Gemini Google Gemini Ultra AI Studio Vertex AI Notebook LLM Jules

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.


Is it really that confusing? Gemini is the equivalent of ChatGPT; AI Studio is for advanced users that want to control e.g. temperature; Vertex AI is the GCP integrated API; Notebook LLM is basically personal RAG; and Jules is a developer agent.

Many of these are not even remotely similar.


Vertex AI also has an AI studio. All of these products also have rag like abilities. You can add documents to Gemini and ask it questions. When would an end user switch to notebooks to do this?

And not that there isn’t a level of knowledge you can gain to answer these questions, it’s just not clear.


I guess I don’t get why this wouldn’t be Jules CLI (or Jules wouldn’t be Gemini <something meaning cloud-ish not CLI-ish>).

So Vertex is like AWS Bedrock for GCP?


This feels a lot less "autonomous" to me than Jules, and therefore more like Gemini/ChatGPT, but I agree Jules CLI would have been a cromulent name.


Hi - I integrated Apple Container on M1 to run[1] the code generated by Gemini CLI. It works great!

1. CodeRunner - https://github.com/BandarLabs/coderunner/tree/main?tab=readm...


<3 amazing


Hi, Thanks for this work.

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


I had to ask Gemini CLI to remind myself ;) but you can add this into settings.json:

{ "excludeTools": ["run_shell_command", "write_file"] }

but if you ask Gemini CLI to do this it'll guide you!


I also work on the product. You can extend the tools with MCP. https://github.com/google-gemini/gemini-cli/blob/main/docs/t...


Feedback: A command to add MCP servers like claude code offers would be handy.


100% - It's on our list!


>gemini -p "Say hello"

  Says hello, and just returns right away.
The gemini doc for -p says "Prompt. Appended to input on stdin (if any)." So it doesn't follow the doc.

gemini "Say hello"

  Fails as it doesn't take any arguments.
For comparison, claude lets you pass the prompt as a positional argument, but it does append it to the prompt and then gives you a running session. That's what I'd want for my use-case.


I tried to get Gemini CLI to update itself using the MCP settings for Claude. It went off the rails. I then fed it the link you provided and it correctly updates it's settings file. You might mention the settings.json file in the README.


I also work on the product :-)

You can also extend with the Extensions feature - https://github.com/google-gemini/gemini-cli/blob/main/docs/e...


Pretty close to what I discovered is essential in https://github.com/aperoc/toolkami, 7 tools will cover majority of the use cases.


Thanks so much for this! I’d really appreciate a more consumer oriented subscription offering, similar to Claude Max, that combines Gemini CLI (with IP compliance) and the Gemini app (extra points for API access too!).


this seems to be the number one topic in this thread


working on it


Requests for documentation clarification:

- 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...


Right now authentication doesn't work if you're working on a remote machine and try to authenticate with Google, FYI. You need an alternate auth flow that gives the user a link and lets them paste a key in (this is how Claude Code does it).


correct, sorry, known issue


I have been evaluating other tools like Amp (from Sourcegraph) and when trying Gemini Cli on VsCode I found some things to improve:

- 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!!


thank you kind stranger!


Using the Gemini CLI the first thing I tried to do was "Create GEMINI.md files to customize your interactions with Gemini." The command ran for about a minute before receiving a too many requests error.

> 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


Super weird! I've been using it the last week, and never hit the quota limit for free users. We're having some capacity issues right now, but that should not affect the quota. Would love it if you can try tomorrow or so again!


It's happening to me with API Key usage. I assume there are no Terms of Use protections on our data unless we access Gemini CLI in a paid manner?

     [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.


Yeah this exact thing is happening to me also. Minutes of runtime and only errors. I guess I’ll try again later? I have billing up and I’m Tier 1. Wouldn’t expect to hit limits like this on the first prompt.


Same here. I wish API users got priority over free Google account users...Guess I will wait until ~5pm when people go home for the day to try it.



Feature request! :)

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!


working on it!


The thing that had me close it and go back to Claude Code immediately was how often Gemini CLI failed to make file changes. This doesn’t instill confidence at all, with it retrying edits multiple times - who knows what it ends up editing, then.

CC has this issue too, but way less often, and second shot almost always works.


Pointed it at a project directory and asked it to find and fix an intentionally placed bug without referencing any filenames. It seemed to struggle finding any file or constructing a context about the project unless specifically asked. FWIW, Claude Code tries to build an 'understanding' of the codebase when given the same prompt. For example, it struggled when I asked to "fix the modal logic" but nothing was specifically called a modal.

Is the recommendation to specifically ask "analyze the codebase" here?


Could Gemini CLI be used for PR reviews? For example, would you expect that asking Gemini to compare two git commit hashes and analyze the code changes for potential bugs/conciseness/adhesion to the idiomatic project style, etc. to work well?

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.


I'm just a hobbyist, but I keep getting the error "The code change produced by Gemini cannot be automatically applied. You can manually apply the change or ask Gemini to try again". I assume this is because the service is being slammed?

Edit: I should mention that I'm accessing this through Gemini Code Assist, so this may be something out of your wheelhouse.


odd, haven't seen that one - you might file an issue https://github.com/google-gemini/gemini-cli/issues

I don't think that's capacity, you should see error codes.


This is happening to me as well, and it seems to be editing a slightly wrong file path which is presumably why the issue is occurring.


Double spaces in paths seem to screw it up - as well as high-bit characters - like a username. Uppercase seems to be finicky as well.


Is LiteLLM integration on the roadmap? I get that part of the motivation to build this is to funnel usage to Google models, but it would be nice to be able to go through OpenRouter and/or use local models too. Open source is nice, but open model configuration would be nicer :)


Hello, thanks for the work for finally having an analog to Claude Code.

A natural question to ask is, if in the near future, can Google One "Google AI Pro" subscribers have higher limits than what is offered for free users?


i have a Google AI Pro subscription - what kind of credits/usage/allowance do i get towards gemini cli ?


not connected yet


Overall it looks and feels good. I gave it a problem, like, what was it... to update website pages to use single layout, it wasn't trivial but it wasn't that hard. It burned through 7M tokens and like 20-25mins didn't accomplished it. I stopped it because I didn't want to waste more resources.

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.


Hi. It is unclear from the README whether the free limits apply also when there's an API key found in the environment - not explicitly set for this tool - and there is no login requirement.


if you explicitly select the sign in with google you'll get the free tier - it won't use your API key.


Is there a reason all workspace accounts need a project ID? We pay for gemini pro for our workspace accounts but we don't use GCP or have a project ID otherwise.


the short answer is b/c one of our dependencies requires it and hasn't resolved it.


The reason is that billing is separate, via the paid tier of the API. Just a few minutes ago, I was able to test Gemini CLI using a Workspace account after setting up a project in the free tier of the API. However, that seems to have been a bug on their end, because I now get 403 errors (Forbidden) with that configuration. The remaining options are either to set up billing for the API or use a non-Workspace Google account.


Please, for the love of God, stop your models always answering with essays or littering code with tutorial style comments. Almost every task devolves into "now get rid of the comments". It seems impossible to prevent this.

And thinking is stupid. "Show me how to generate a random number in python"... 15s later you get an answer.


Take some time to understand how the technology works, and how you can configure it yourself when it comes to thinking budget. None of these problems sound familiar to me as a frequent user of LLMs.


Take some time to compare the output of Gemini vs other models instead of patronising people.


I basically only use Gemini, sorry.


They have to do that, it's how they think. If they were trained not to do that they'd produce lower quality code.


So why don't Claude and Open AI models do this?


O3 does, no? 2.5 Pro is a thinking model. Try flash if you want faster responses


No. We're not talking a few useful comments, but verbosity where typically the number of comments exceeds the actual code written. It must think we're all stupid or it's documenting a tutorial. Telling it not to has no effect.


Maybe you hit a specific use case where the LLM part turns into its roots?

I had a somehos similar problem with Claude 3.7, where I had a class named "Workflow" and it got nuts, producing code/comments I didn't ask for, all related to some "workflow" that it tried to replicate and not my code, it was strange.


How often did you use gemini-cli to build on gemini-cli?


We started using Gemini CLI to build itself after about week two. If I had to guess, I'd say better than 80% of the code was written with Gemini CLI. Honestly, once we started using the CLI, we started experimenting a lot more and building waaaaay faster.


100% of the time


Two weeks back I made a simple wrapper CLI app for GEMINI https://geni.dev.

I strongly believe in AI cli apps for devs, congrats.


Is there a way to instantly, quickly prompt it in the terminal, without loading the full UI? Just to get a short response without filling the terminal page.

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?


I use `mods` for this https://github.com/charmbracelet/mods

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.


Didn't know about mods, looks awesome.


-p is your friend


And if prompt is too long for -p due to shell arg limits, pipe into stdio instead


If you uv install llm Then grab my shelllm scripts github.com/irthomasthomas/shelllm and source them in your terminal then you can use premade prompt functions like shelp "what's a nm and grep command to find this symbol in these 3 folders" -m gemini-pro

There's also wrappers that place the command directly in your terminal prompt if you run shelp-c


The link you have posted 404’s and I could seem to find a command like that in your repos. Can you be more specific?


Sorry, the function is in here and it's called shelp https://github.com/irthomasthomas/shelllm.sh/blob/main/shell...


gemini --prompt "Hello"


Does it have LSP (language server) support? How should I think of this as different from Aider?


it would be cool to work with my google ai pro sub


working on it


Hi cperry - do you have an idea of when Gemini 2.5 live API will make GA? I saw a new GA label was created last week.


Congrats on your success. May you all be promoted and may your microkitchens be stocked.


thank you kind stranger! may gemini only return you perfection on the first response.


Why does this CLI don't support google's A2A?


Thank you for supporting Windows natively.


one piece of feedback. Please do neovim on top of vim or have a way to customize the editor beyond your list.


someone has already sent out a PR for this! https://github.com/google-gemini/gemini-cli/pull/1448


bless them


F for the TPUs.


Hey the interface on YouTube loads super slowly for me. The change appeared a few months ago. I'm not talking about the video streams, but the ajax loading of the UI. Whether it's opening a new youtube tab or navigating between videos within youtube, it takes forever. Chrome/Safari -> same deal, 30 seconds delays is what I observe. My macbook pro is 10 years old, the problem doesn't appear on more recent hardware, but still youtube shouldn't be the slowest website to load on my machine. I can load spotify.com just fine in about 5 seconds.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: