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.
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.
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.
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
• 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.
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.
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.
- 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).
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.
> 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...
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?
> 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.
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.
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).
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.
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
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.
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!).
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.
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.
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.
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).
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.
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.
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.
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!!
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'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.
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.
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 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.
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
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.
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
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.
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.
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?
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.
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.
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.
Been using Claude Code (4 Opus) fairly successfully in a large Rust codebase, but sometimes frustrated by it with complex tasks. Tried Gemini CLI today (easy to get working, which was nice) and it was pretty much a failure. It did a notably worse job than Claude at having the Rust code modifications compile successfully.
However, Gemini at one point output what will probably be the highlight of my day:
"I have made a complete mess of the code. I will now revert all changes I have made to the codebase and start over."
What great self-awareness and willingness to scrap the work! :)
Gemini has some fun failure modes. It gets "frustrated" when changes it makes doesn't work, and replies with oddly human phrases like "Well, that was unexpected" and then happily declares that (I see the issue!) "the final tests will pass" when it's going down a blind alley. It's extremely overconfident by default and much more exclamatory without changing the system prompt. Maybe in training it was taught/figured out that manifesting produces better results?
It also gets really down on itself, which is pretty funny (and a little scary). Aside from the number of people who've posted online about it wanting to uninstall itself after being filled with shame, I had it get confused on some Node module resolution stuff yesterday and it told me it was deeply sorry for wasting my time and that I didn't deserve to have such a useless assistant.
Out of curiosity, I told it that I was proud of it for trying and it had a burst of energy again and tried a few more (failing) solution, before going back to it's shameful state.
After a particular successful Claude Code task I praised it and told it to "let's fucking go!" to which it replied that loved the energy and proceeded to only output energetic caps lock with fire emojis. I know it's all smoke and mirrors (most likely), but I still get a chuckle out of this stuff.
This was also my exact experience. I was pretty excited because I usually use Gemini Pro 2.5 when Claude Code gets stuck by pasting the whole code and asking questions and it was able to get me out of a few pickles a couple of times.
Unfortunately the CLI version wasn't able to create coherent code or fix some issues I had in my Rust codebase as well.
Same here. Tried to implement a new feature on one of our apps to test it. It completely screwed things up. Used undefined functions and stuff. After a couple of iterations of error reporting and fixing I gave up.
Claude did it fine but I was not happy with the code. What Gemini came up with was much better but it could not tie things together at the end.
Personally my theory is that Gemini benefits from being able to train on Googles massive internal code base and because Rust has been very low on uptake internally at Google, especially since they have some really nice C++ tooling, Gemini is comparatively bad at Rust.
Tangental, but I worry that LLMs will cause a great stagnation in programming language evolution, and possibly a bunch of tech.
I've tried using a few new languages and the LLMs would all swap the code for syntactically similar languages, even after telling them to read the doc pages.
Whether that's for better or worse I don't know, but it does feel like new languages are genuinely solving hard problems as their raison d'etre.
Not just that, I think this will happen on multiple levels too. Think de-facto ossified libraries, tools, etc.
LLMs thrive because they had a wealth of high-quality corpus in the form os Stack Overflow, Github, etc. and ironically their uptake is causing a strangulation of that source of training data.
>Personally my theory is that Gemini benefits from being able to train on Googles massive internal code base and because Rust has been very low on uptake internally at Google, especially since they have some really nice C++ tooling, Gemini is comparatively bad at Rust.
Were they to train it on their C++ codebase, it would not be effective on account of the fact that they don't use boost or cmake or any major stuff that C++ in the wider world use. It would also suggest that the user make use of all kinds of non-available C++ libraries. So no, they are not training on their own C++ corpus nor would it be particularly useful.
> Personally my theory is that Gemini benefits from being able to train on Googles massive internal code base
But does Google actually train its models on its internal codebase? Considering that there’s always the risk of the models leaking proprietary information and security architecture details, I hardly believe they would run that risk.
That's interesting. I've tried Gemini 2.5 Pro from time to time because of the rave reviews I've seen, on C# + Unity code, and I've always been disappointed (compared to ChatGPT o3 and o4-high-mini and even Grok). This would support that theory.
As go feels like a straight-jacket compared to many other popular languages, it’s probably very suitable for an LLM in general.
Thinking about it - was this not the idea of go from the start? Nothing fancy to keep non-rocket scientist away from foot-guns, and have everyone produce code that everyone else can understand.
Diving in to a go project you almost always know what to expect, which is a great thing for a business.
A few days ago I tested Claude Code by completely vibe coding a simple stock tracker web app in streamlit python. It worked incredibly well, until it didn't. Seems like there is a critical project size where it just can't fix bugs anymore.
Just tried this with Gemini CLI and the critical project size it works well for seems to be quite a bit bigger. Where claude code started to get lost, I simply told Gemini CLI to "Analyze the codebase and fix all bugs". And after telling it to fix a few more bugs, the application simply works.
I wonder how much of this had to do with the context window size? Gemini’s window is 5x larger than Cladue’s.
I’ve been using Claude for a side project for the past few weeks and I find that we really get into a groove planning or debugging something and then by the time we are ready to implement, we’ve run out of context window space. Despite my best efforts to write good /compact instructions, when it’s ready to roll again some of the nuance is lost and the implementation suffers.
I’m looking forward to testing if that’s solved by the larger Gemini context window.
I've found that I can quickly get a new AI session up to speed by adding critical context that it's missing. In my largest codebase it's usually a couple of critical functions.once they have the key context, they can do the rest. This of course doesn't work when you can't view their thinking process and interrupt it to supply them with the context that they are missing. Opacity doesn't work unless the agent does the right thing every time.
I definitely think the bigger context window helps. The code quality quite visibly drops across all models I've used as the context fills up, well before the hard limit. The editor tooling also makes a difference—Claude Code pollutes its own context window with miscellaneous file accesses and tool calls as it tries to figure out what to do. Even if it's more manual effort to manage the files that are in-context with Aider, I find the results to be much more consistent when I'm able to micromanage the context.
Approaching the context window limit in Claude Code, having it start to make more and worse mistakes, then seeing it try to compact the context and keep going, is a major "if you find yourself in a hole, stop digging" situation.
The best approach is never to get remotely close to the point where it auto-compacts. Type /clear often, and set up docs, macros etc to make it easy to built the context you need for new tasks quickly.
If you see that 20% remaining warning, something has gone badly wrong and results will probably not get better until you clear the context and start again.
I thought I read that best practice was to start a new session every time you work on a new feature / task. That’s what I’ve been doing. I also often ask Claude to update my readme and claude.md with details about architecture or how something works.
As for /compact, if I’m nearing the end of my context window (around 15%) and are still in the middle of something, I’ll give /compact very specific details about how and what to compact. Let’s say we are debugging an error - I might write something along the lines of “This session is about to close and we will continue debugging in next session. We will be debugging this error message [error message…]. Outline everything we’ve tried that didn’t work, make suggestions about what to try next, and outline any architecture or files that will be critical for this work. Everything else from earlier on in this session can be ignored.” I’ve had decent success with that. More so on debugging than trying to hand off all the details of a feature that’s being implemented.
Reminder: you need context space for compact, so leave a little head room.
Current best practice for Claude Code is to have heavy lifting done by Gemini Pro 2.5 or o3/o3pro. There are ways to do this pretty seamlessly now because of MCP support (see Repo Prompt as an example.) Sometimes you can also just use Claude but it requires iterations of planning, integration while logging everything, then repeat.
I haven't looked at this Gemini CLI thing yet, but if its open source it seems like any model can be plugged in here?
I can see a pathway where LLMs are commodities. Every big tech company right now both wants their LLM to be the winner and the others to die, but they also really, really would prefer a commodity world to one where a competitor is the winner.
If the future use looks more like CLI agents, I'm not sure how some fancy UI wrapper is going to result in a winner take all. OpenAI is winning right now with user count by pure brand name with ChatGPT, but ChatGPT clearly is an inferior UI for real work.
I think, there are different niches. AI works extremely well for Web prototyping because a lot of that work is superficial. Back in the 90s we had Delphi where you could make GUI applications with a few clicks as opposed to writing tons of things by hand. The only reason we don't have that for Web is the decentralized nature of it: every framework vendor has their own vision and their own plan for future updates, so a lot of the work is figuring out how to marry the latest version of component X with the specific version of component Y because it is required by component Z. LLMs can do that in a breeze.
But in many other niches (say embedded), the workflow is different. You add a feature, you get weird readings. You start modelling in your head, how the timing would work, doing some combination of tracing and breakpoints to narrow down your hypotheses, then try them out, and figure out what works the best. I can't see the CLI agents do that kind of work. Depends too much on the hunch.
Sort of like autonomous driving: most highway driving is extremely repetitive and easy to automate, so it got automated. But going on a mountain road in heavy rain, while using your judgment to back off when other drivers start doing dangerous stuff, is still purely up to humans.
Ask the AI to document each module in a 100-line markdown. These should be very high level, don't contain any detail, but just include pointers to relevant files for AI to find out by itself. With a doc as the starting point, AI will have context to work on any module.
If the module just can't be documented in this way in under 100 lines, it's a good time to refactor. Chances are if Claude's context window is not enough to work with a particular module, a human dev can't either. It's all about pointing your LLM precisely at the context that matters.
Yeah but this collapses under any real complexity and there is likely an extreme amount of redundant code and would probably be twice as memory efficient if you just wrote it yourself.
Im actually interested to see if we see a rise in demand for DRAM that is greater than usual because more software is vibe coded than being not, or some form of vibe coding.
Yeah, and it's variable, can happen at 250k, 500k or later. When you interrogate it; usually the issue comes to it being laser focused or stuck on one specific issue, and it's very hard to turn it around.
For the lack of the better comparison it feels like the AI is on a spectrum...
Claude seems to have trouble with extracting code snippets to add to the context as the session gets longer and longer. I've seen it get stuck in a loop simply trying to use sed/rg/etc to get just a few lines out of a file and eventually give up.
When you use Gemini Code Assist for individuals, Google collects your prompts, related code, generated output, code edits, related feature usage information, and your feedback to provide, improve, and develop Google products and services and machine learning technologies.
To help with quality and improve our products (such as generative machine-learning models), human reviewers may read, annotate, and process the data collected above. We take steps to protect your privacy as part of this process. This includes disconnecting the data from your Google Account before reviewers see or annotate it, and storing those disconnected copies for up to 18 months. Please don't submit confidential information or any data you wouldn't want a reviewer to see or Google to use to improve our products, services, and machine-learning technologies.
It's a lot more nuanced than that. If you use the free edition of Code Assist, your data can be used UNLESS you opt out, which is at the bottom of the support article you link to:
"If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals."
If you pay for code assist, no data is used to improve. If you use a Gemini API key on a pay as you go account instead, it doesn't get used to improve. It's just if you're using a non-paid, consumer account and you didn't opt out.
Google recently testified in court that they still train on user data after users opt out from training [1]. The loophole is that the opt-out only applies to one organization within Google, but other organizations are still free to train on the data. They may or may not have cleaned up their act given that they're under active investigation, but their recent actions haven't exactly earned them the benefit of the doubt on this topic.
Another dimension here is that any "we don't train on your data" is useless without a matching data retention policy which deletes your data. Case and point of 23andMe not selling your data until they decided to change that policy.
I'll go ahead and say that, even if there was a method that deletes your data when you request it, nothing stops them from using that data to train the model up until that point, which is "good enough" for them.
This is incorrect. The data discussed in court is data freely visible on the web, not user data that the users sent to Google.
If the data is sent by a user to sub-unit X of Google, and X promised not to use it for training, it implies that X can share this data with sub-unit Y only if Y also commits not to use the data for training. Breaking this rule would get everyone in huge trouble.
OTOH, when sub-unit X said "We promise not to use data from the public website if the website owner asks us not to", it does not imply another sub-unit Y must follow that commitment.
Reading about all the nuances is such a trigger for me. To cover your ass is one thing, to imply one thing in a lay sense and go on to do something contradicting it (in bad faith) is douchebaggery. I am very sad and deeply disappointed at Google for this. This completes their transformation to Evil Corp after repealing the “don’t be evil” clause in their code of conduct[1].
Isn't that as toxic? I've read a bunch about Walmart and the whole thing is basically a scam.
They get a ton of tax incentives, subsidies, etc to build shoddy infrastructure that can only be used for big box stores (pretty much), so the end cost for Walmart to build their stores is quite low.
They promise to employ lots of locals, but many of those jobs are intentionally paid so low that they're not actually living wages and employees are intentionally driven to government help (food stamps, etc), and together with other various tax cuts, etc, there's a chance that even their labor costs are basically at break even.
Integrated local stores are better for pretty much everything except having a huge mass to throw around and bully, bribe (pardon me, lobby) and fool (aka persuade aka PR/marketing).
Integrated local stores are better for pretty much everything except for actually having what you want in stock.
There is a reason why rural communities welcome Wal-Mart with open arms. Not such a big deal now that you can mail-order anything more-or-less instantly, but back in the 80s when I was growing up in BFE, Wal-Mart was a godsend.
True. A good example being Sears, which should have become Amazon but didn't. Prior to the arrival of Wal-Mart, if you couldn't find something locally (which, again, was true more often than not) your options were to drive 50-150 miles to the nearest large city, or order from the local Sears catalog merchant.
The latter wasn't what most people think of as a Sears store, because the local economy could never have supported such a thing. It was more like a small office with a counter and a stockroom behind it. They didn't keep any inventory, but could order products for pickup in about a week. Pickup, mind you. You still had to drive to town to get your order. As stupid as this sounds, it was 10x worse in person.
So if Wal-Mart didn't exist, it would have had to be invented. It was not (just) a monster that victimized smaller merchants and suppliers, a tax scam, or a plot to exploit the welfare system. It was something that needed to happen, a large gap in the market that eventually got filled.
Nowadays I wouldn't set foot in one, but it was different at the time. I didn't mean to write a long essay stanning for Wal-Mart, but your original post is a bit of a pet peeve.
If you scroll to the bottom, it says that the terms of service are governed based on the mechanism by which you access Gemini. If you access via code assist (which the OP posted), you abide by those privacy terms of code assist, one of the ways of which you access is VScode. If you access via the Gemini API, then those terms apply.
So the gemini CLI (as I understand it) doesn't have their own privacy terms, because it's an open source shell on top of another Gemini system, which could have one of a few different privacy policies based on how you choose to use it and your account settings.
(Note: I work for google, but not on this, this is just my plain reading of the documentation)
"1. Is my code, including prompts and answers, used to train Google's models?
This depends entirely on the type of auth method you use.
Auth method 1: Yes. When you use your personal Google account, the Gemini Code Assist Privacy Notice for Individuals applies. Under this notice, your prompts, answers, and related code are collected and may be used to improve Google's products, which includes model training."
The opt out appear to be about other type of stats, no?
I guess the key question is whether the Gemini CLI, when used with a personal Google account, is governed by the broader Gemini Apps privacy settings here? https://myactivity.google.com/product/gemini?pli=1
If so, it appears it can be turned off. However, my CLI activity isn't showing up there?
At the bottom it specifies that the terms of service are dependent on the underlying mechanism that the user chooses to use to fulfill the requests. You can use code assist, gemini API, or Vertex AI. My layperson's perspective is that it's positioned as a wrapper around another service, whose terms you already have accepted/enabled. I would imagine that is separate from the Gemini app, the settings for which you linked to.
Looking at my own settings, my searches on the gemini app appear, but none of my gemini API queries appear.
However, as others pointed out, that link take you to here: https://developers.google.com/gemini-code-assist/resources/p... Which, at the bottom says: "If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals." and links to https://developers.google.com/gemini-code-assist/docs/set-up.... That page says "You'll also see a link to the Gemini Code Assist for individuals privacy notice and privacy settings. This link opens a page where you can choose to opt out of allowing Google to use your data to develop and improve Google's machine learning models. These privacy settings are stored at the IDE level."
The issue is that there is no IDE, this is the CLI and no such menu options exist.
Are you saying the Gemini Apps Activity switch controls? Or, that if I download VS Code or Intelli J and make the change, it applies to the CLI? https://developers.google.com/gemini-code-assist/docs/set-up... says "These privacy settings are stored at the IDE level."
Yes, I'm right about to trust Google to do what they pinky swear.
EDIT: Lmao, case in point, two sibling comments pointing out that Google does indeed do this anyway via some loophole; also they can just retain the data and change the policy unilaterally in the future.
If you want privacy do it local with Free software.
Hey all,
This is a really great discussion, and you've raised some important points. We realize the privacy policies for the Gemini CLI were confusing depending on how you log in, and we appreciate you calling that out.
To clear everything up, we've put together a single doc that breaks down the Terms of Service and data policies for each account type, including an FAQ that covers the questions from this thread.
Is there any way for a user using the "Login with Google ... for individuals" auth method (I guess auth method 1) -- to opt-out of, and prevent, their input prompts, and output responses, from being used as training data?
From an initial parse of your linked tos-privacy.md doc, it seems like the answer is "no" -- but that seems bonkers to me, so I hope I'm misreading or misunderstanding something!
I think you did a good job CYA on this, but what people were really looking for was a way to opt-out of Google collecting code, similar to the opt-out process for the IDE is available.
Usage statistics includes "your prompts and answers", see the last paragraph in the ToS. I have no idea why legal insists we write "statistics" rather than "data".
Thanks, one more clarification please. The heading of point #3 seems to mention Google Workspace: "3. Login with Google (for Workspace or Licensed Code Assist users)". But the text content only talks about Code Assist: "For users of Standard or Enterprise edition of Gemini Code Assist" ... Could you clarify whether point #3 applies with login via Google Workspace Business accounts?
To be honest this is by far the most frustrating part of the Gemini ecosystem, to me. I think 2.5 pro is probably the best model out there right now, and I'd love to use it for real work, but their privacy policies are so fucking confusing and disjointed that I just assume there is no privacy whatsoever. And that's with the expensive Pro Plus Ultra MegaMax Extreme Gold plan I'm on.
I hope this is something they're working on making clearer.
In my own experience, 2.5 Pro 03-26 was by far the best LLM model at the time.
The newer models are quantized and distilled (I confirmed this with someone who works on the team), and are a significantly worse experience. I prefer OpenAI O3 and o4-mini models to Gemini 2.5 Pro for general knowledge tasks, and Sonnet 4 for coding.
For coding in my experience Claude Sonnet/Opus 4.0 is hands down better than Gemini 2.5. pro. I just end up fighting with Claude a lot less than I do with Gemini. I had Gemini start a project that involved creating a recursive descent parser for a language in C. It was full of segfaults. I'd ask Gemini to fix them and it would end up breaking something else and then we'd get into a loop. Finally I had Claude Sonnet 4.0 take a look at the code that Gemini had created. It fixed the segfaults in short order and was off adding new features - even anticipating features that I'd be asking for.
Did you try Gemini with a fresh prompt too when comparing against Claude? Sometimes you just get better results starting over with any leading model, even if it gets access to the old broken code to fix.
I haven't tried Gemini since the latest updates, but earlier ones seemed on par with opus.
If I'm being cynical, it's easy to either say "we use it" or "we don't touch it" but they'd lose everyone that cares about this question if they just said "we use it" - most beneficial position is to keep it as murky as possible.
If I were you I'd assume they're using all of it for everything forever and act accordingly.
It would be more accurate to say I packaged it. llamafile is a project I did for Mozilla Builders where we compiled llama.cpp with cosmopolitan libc so that LLMs can be portable binaries. https://builders.mozilla.org/ Last year I concatenated the Gemma weights onto llamafile and called it gemmafile and it got hundreds of thousands of downloads. https://x.com/JustineTunney/status/1808165898743878108 I currently work at Google on Gemini improving TPU performance. The point is that if you want to run this stuff 100% locally, you can. Myself and others did a lot of work to make that possible.
My early contributions to https://github.com/jart/cosmopolitan were focused towards getting a single-file Python executable. I wanted my Python scripts to run on both Windows and Linux, and now they do. To try out Python, you can:
Adding pure-Python libraries just means downloading the wheel and adding files to the binary using the zip command:
./python.com -m pip download Click
mkdir -p Lib && cd Lib
unzip ../click*.whl
cd ..
zip -qr ./python.com Lib/
./python.com # can now import click
Cosmopolitan Libc provides some nice APIs to load arguments at startup, like cosmo_args() [1], if you'd like to run the Python binary as a specific program. For example, you could set the startup arguments to `-m datasette`.
Gemma 27b can write working code in dozens of programming languages. It can even translate between languages. It's obviously not as good as Gemini, which is the best LLM in the world, but Gemma is built from the same technology that powers Gemini and Gemma is impressively good for something that's only running locally on your CPU or GPU. It's a great choice for airgapped environments. Especially if you use old OSes like RHEL5.
It may be sufficient for generating serialized data and for some level of autocomplete but not for any serious agentic coding where you won't end up wasting time. Maybe some junior level programmers may find it still fascinating but senior level programmers end up fighting with bad design choices, poor algorithms and other verbose garbage most of the time. This happens even with the best models.
> senior level programmers end up fighting with bad design choices, poor algorithms and other verbose garbage most of the time. This happens even with the best models.
Even senior programmers can misuse tools, happens to all of us. LLMs sucks at software design, choosing algorithms and are extremely crap unless you exactly tell them what to do and what not to do. I leave the designing to myself, and just use OpenAI and local models for implementation, and with proper system prompting you can get OK code.
But you need to build up a base-prompt you can reuse, by basically describing what is good code for you, as it differs quite a bit from person to person. This is what I've been using as a base for agent use: https://gist.github.com/victorb/1fe62fe7b80a64fc5b446f82d313..., but need adjustments depending on the specific use case
Although I've tried to steer Google's models in a similar way, most of them are still overly verbose and edit-happy, not sure if it's some Google practice that leaked through or something. Other models are way easier to stop from outputting so much superfluous code, and overall following system prompts.
I've spent a long time with models, gemma-3-27b feels distilled from Gemini 1.5. I think the useful coding abilities really started to emerge with 2.5.
This is useful, and directly contradicts the terms and conditions for Gemini CLI (edit: if you use the personal account, then its governed under the Code Assist T&C). I wonder which one is true?
If you're using Gemini CLI through your personal Google account, then you are using Gemini Code Assist license and need to follow the T&C for that. Very confusing.
Collection means it gets sent to a server, logging implies (permanent or temporary) retention of that data. I tried finding a specific line or context in their privacy policy to link to but maybe someone else can help me provide a good reference. Logging is a form of collection but not everything collected is logged unless mentioned as such.
This is just for free use (individuals), for standard and enterprise they don't use the data.
Which pretty much means if you are using it for free, they are using your data.
I don't see what is alarming about this, everyone else has either the same policy or no free usage. Hell the surprising this is that they still let free users opt-out...
That bears no relation to OpenAI using data for training purposes. Although the court’s decision is problematic, user data is being kept for legal purposes only, and OpenAI is not authorized to use it to train its models.
I mean, using data that has been explicitly opted out of training paves the way for lawsuits and huge administrative fines in various jurisdictions. I might be naive, but I don’t think that’s something OpenAI would deliberately do.
They really need to provide some clarity on the terms around data retention and training, for users who access Gemini CLI free via sign-in to a personal Google account. It's not clear whether the Gemini Code Assist terms are relevant, or indeed which of the three sets of terms they link at the bottom of the README.md apply here.
Thank you, this is helpful, though I am left somewhat confused as a "1. Login with Google" user.
* The first section states "Privacy Notice: The collection and use of your data are described in the Gemini Code Assist Privacy Notice for Individuals." That in turn states "If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals.". That page says to use the VS Code Extension to change some toggle, but I don't have that extension. It states the extension will open "a page where you can choose to opt out of allowing Google to use your data to develop and improve Google's machine learning models." I can't find this page.
* Then later we have this FAQ: "1. Is my code, including prompts and answers, used to train Google's models? This depends entirely on the type of auth method you use. Auth method 1: Yes. When you use your personal Google account, the Gemini Code Assist Privacy Notice for Individuals applies. Under this notice, your prompts, answers, and related code are collected and may be used to improve Google's products, which includes model training." This implies Login with Google users have no way to opt out of having their code used to train Google's models.
* But then in the final section we have: "The "Usage Statistics" setting is the single control for all optional data collection in the Gemini CLI. The data it collects depends on your account type: Auth method 1: When enabled, this setting allows Google to collect both anonymous telemetry (like commands run and performance metrics) and your prompts and answers for model improvement." This implies prompts and answers for model improvement are considered part of "Usage Statistics", and that "You can disable Usage Statistics for any account type by following the instructions in the Usage Statistics Configuration documentation."
So these three sections appear contradictory, and I'm left puzzled and confused. It's a poor experience compared to competitors like GitHub Copilot, which make opting out of model training simple and easy via a simple checkbox in the GitHub Settings page - or Claude Code, where Anthropic has a policy that code will never be used for training unless the user specifically opts in, e.g. via the reporting mechanism.
I'm sure it's a great product - but this is, for me, a major barrier to adoption for anything serious.
Kinda a tragedy of the commons situation. Everyone wants to use these tools that must be trained on more and more code to get better, but nobody wants it to be trained on their code. Bit silly imo.
Do you honestly believe that the opt-out by Anthropic and Cursor means your code won't be used for training their models? Seems likely that they would rather just risk taking a massive fine for potentially solving software development than to let some competitor try it instead.
> For API users, we automatically delete inputs and outputs on our backend within 30 days of receipt or generation, except when you and we have agreed otherwise (e.g. zero data retention agreement), if we need to retain them for longer to enforce our Usage Policy (UP), or comply with the law.
If this is due to compliance with law I wonder how they can make the zero-data-retention agreement work... The companies I've seen have this have not mention that they themself retain the data...
>Anthropic spent "many millions of dollars" buying used print books, then stripped off the bindings, cut the pages, and scanned them into digital files.
The judge, Alsup J, ruled that this was lawful.
So they cared at least a bit, enough to spend a lot of money buying books. But they didn't care enough not to acquire online libraries held apparently without proper licensing.
>Alsup wrote that Anthropic preferred to "steal" books to "avoid 'legal/practice/business slog,' as cofounder and CEO Dario Amodei put it."
Aside: using the term steal for copyright infringement is a particularly egregious misuse for a judge who should know that stealing requires denying others of the use of the stolen articles; something which copyright infringement via an online text repository simple could not do.
Using torrented books in a way that possibly (well, almost certainly) violates copyright law is a world of difference from going after your own customers (and revenue) in a way that directly violates the contract that you wrote and had them agree to.
Insane to me there isn’t even an asterisk in the blog post about this. The data collection is so over the top I don’t think users suspect it because it’s just absurd. For instance Gemini Pro chats are trained on too.
good to know, I won't be using this. Curious, do you know if OpenAI codex and Claude also do the same? I was under the impression that they don't share code.
I still have yet to replace a single application with an LLM, except for (ironically?) Google search.
I still use all the same applications as part of my dev work/stack as I did in the early 2020's. The only difference is occasionally using an LLM baked into to one of them but the reality is I don't do that much.
I love how fragmented Google's Gemini offerings are. I'm a Pro subscriber, but I now learn I should be a "Gemini Code Assist Standard or Enterprise" user to get additional usage. I didn't even know that existed! As a run of the mill Google user I get a generous usage tier but paying them specifically for "Gemini" doesn't get me anything when it comes to "Gemini CLI". Delightful!
Google suffers from Microsoft's issues: it has products for almost everything, but its confusing product messaging dilutes all the good things it does.
I like Gemini 2.5 Pro, too, and recently, I tried different AI products (including the Gemini Pro plan) because I wanted a good AI chat assistant for everyday use. But I also wanted to reduce my spending and have fewer subscriptions.
The Gemini Pro subscription is included with Google One, which is very convenient if you use Google Drive. But I already have an iCloud subscription tightly integrated with iOS, so switching to Drive and losing access to other iCloud functionality (like passwords) wasn’t in my plans.
Then there is the Gemini chat UI, which is light years behind the OpenAI ChatGPT client for macOS.
NotebookLM is good at summarizing documents, but the experience isn’t integrated with the Gemini chat, so it’s like constantly switching between Google products without a good integrated experience.
The result is that I end up paying a subscription to Raycast AI because the chat app is very well integrated with other Raycast functions, and I can try out models. I don’t get the latest model immediately, but it has an integrated experience with my workflow.
My point in this long description is that by being spread across many products, Google is losing on the UX side compared to OpenAI (for general tasks) or Anthropic (for coding). In just a few months, Google tried to catch up with v0 (Google Stitch), GH Copilot/Cursor (with that half-baked VSCode plugin), and now Claude Code. But all the attempts look like side-projects that will be killed soon.
I subscribed to Google One through the Google Photos iOS app because I wanted photos I took on my iPhone to be backed up to Google. When I switched to Android and went into Google One to increase my storage capacity in my Google account, I found that it was literally impossible, because the subscription was tied to my iCloud account. I even got on a line with Google Support about it and they told me yeah it's not even possible on their side to disconnect my Google One subscription from Apple. I had to wait for the iCloud subscription to Google One to end, and then I was able to go into Google One and increase my storage capacity.
The root problem here lies with Apple. It's so frustrating how they take a 30% cut for the privilege of being unable to actually have a relationship with your customers. Want to do a partial refund (or a refund at all)? Want to give one month free to an existing subscriber? Tough luck. Your users are Apple's customers, not yours.
I implemented Google One integration in an iOS app. This comment chain is accurate. Users want to pay with Apple (like other app subscriptions) but then your “account” is inside their payments world. Which is super confusing since users (rightly) think they are dealing with their Google account.
Sounds like the analysts and product owners didn't really want to solve this problem. Instead they ticked the boxes, got the bonuses, and the devs never questioned it and just implemented it for fear of being PIPed.
I'm sure there is technically nothing that stopped you from treating this "Pay with Apple" thing as just another payment method inside the google account, except maybe additional complexity and red-tape.
Seen this many times when PMs, POs, and Devs code by features instead of trying to actually solve something. I don't even want to know what mess of a database schema is behind this monstrosity.
Yeah, technically. But just everyone _normal_ just pays using Stripe often without even knowing about it. On the _walled garden_ all is so clear that my 70 years aunt is able to do it. And there is no exceptions to the rule: every subscription made through the App Store is there and it's cancellable...
30% is a robbery, and the confusion on the customer "ownership" is true, but it's not useful for the discussion to negate the advantage the _garden_ offers to the basic consumer
This is exactly the kind of innovation Apple apologists don't realize they're missing out on in the walled garden. You could still have easy, centralized billing with all-in-one management and one-click cancellation, while paying 30% less for everything. Give the free market a chance.
How the platform and the vendor split that money is irrelevant to me, and I’m not convinced this would become cheaper - evidently consumers are willing to pay the current price, so why wouldn’t the vendor just increase their profit?
In the same vein: Games don’t cost less on the epic store despite their lower (compared to Steam) either, so as an end user it makes no difference where I buy games.
Maybe you like paying an extra 20%. That's your business. But fees like that affect the viability of lots of business ideas, including games. Having lower fees increases the pool of indie games.
You can't say a slave is free because their master is free to enslave them, and they're free to escape if they can. Sometimes you need rules to create real freedom.
Why do you think that's the only way? Payment processors have long been able to differentiate recurring transactions from one-offs. Capital One has subscription management.
The problem is that other payment processors could emerge with the same trust profiles as Apple to facilitate this transaction.
I could see Stripe doing something like this. They protect the consumer and come down hard on the merchants.
Imagine them, and maybe a few other processors, competing for this business. The fee would probably drop below 30%. To a large degree, this is the sort of arrangement credit card processors already have between their merchants and consumers and that rate is single digit percentages. Not hard to imagine Visa or MasterCard running a SaaS transaction service for a 5-10% cut.
> Apple takes a cut for being in the middle and enabling all of this.
Enabling this like Ticketmaster enables selling tickets.
In ticketmaster's case I believe they give kickbacks and lucrative exclusive contracts with large venues, to squeeze smaller ones, maybe making whole tours use it but only kicking back to the biggest or select venues on the tour I think.
Apple sometimes does special deals and special rules with important providers, among many other tactics behind their moat. All single signons must also offer apple single sign-on, for instance, and they have even disabled access to customer accounts using their single sign-on for unrelated business disputes, though they walked it back in the big public example I'm aware of, the threat is there if you go against them in any way.
Ticketmaster is in no way comparable, because they gouge customers and provide no protections.
Someone in the music industry explained that both bands and venues like Ticketmaster because then Ticketmaster is the "bad guy" and the band can just shrug their shoulders and pretend to be the victim while profiting enormously from Ticketmaster's evil practices.
Okay, all the app developers pull out of iOS because they're not actually useful, in fact they should be paying Apple!
How many people do you think would still buy iPhones if there are 0 apps on the app store? Lmaooo, it's almost like it's a co-operative relationship and Apple don't deserve a huge cut because it's the apps that sell their phones.
At least on my side, thats fine / intended. As long as their is no useable regulations around unsub dark patterns, that type of firewall is what I want as a customer.
There is a vscode extension that can basically be an agent but use gemini from the website which is cool.
But I found it to a little bit clunky and I guess I like the ui of google, I mean, the point is to get the point across. If you really hate the gemini ui, I am pretty sure that there is stylus extension which can beautify it or change the styles to your looking.
I guess I am an android user but still I understand your icloud subscription but if you're only choice as to why to not switch to google is passwords (but maybe you can mention more?), then for passwords, please try bitwarden, I found it to be really delightful.
> The Gemini Pro subscription is included with Google One
It's not in Basic, Standard or Premium.
It's in a new tier called "Google AI Pro" which I think is worth inclusion in your catalogue of product confusion.
Oh wait, there's even more tiers that for some reason can't be paid for annually. Weird... why not? "Google AI Ultra" and some others just called Premium again but now include AI. 9 tiers, 5 called Premium, 2 with AI in the name but 6 that include Gemini. What a mess.
It gets even more confusing! If you're on the "Premium" plans (i.e the the old standard "Google One" plans) and upgrade to >=5TB storage, your "Premium" plan starts including all the features of "Google AI Pro".
Tip: If you do annual billing for "Premium (5 TB)", you end up paying $21/month for 5TB of storage and the same AI features of "Google AI pro (2TB)"; which is only $1/month more than doing "Google AI Pro (2 TB)" (which only has monthly billing)
It's interesting to see the most recent internet archive snapshot from last week. Just 4 tiers. Basic, Standard, Premium which don't include Gemini. There is a fourth tier called "AI Premium" that does.
Actually, that's the reason a lot of startups and solo developers prefer non-Google solutions, even though the quality of Gemini 2.5 Pro is insanely high. The Google Cloud Dashboard is a mess, and they haven't fixed it in years. They have Vertex that is supposed to host some of their models, but I don't understand what's the difference between that and their own cloud. And then you have two different APIs depending on the level of your project: This is literally the opposite of what we would expect from an AI provider where you start small and regardless of the scale of your project, you do not face obstacles. So essentially, Google has built an API solution that does not scale because as soon as your project gets bigger, you have to switch from the Google AI Studio API to the Vertex API. And I find it ridiculous because their OpenAI compatible API does not work all the time. And a lot of tools that rely on that actually don't work.
Google's AI offerings that should be simplified/consolidated:
- Jules vs Gemini CLI?
- Vertex API (requires a Google Cloud Account) vs Google AI Studio API
Also, since Vertex depends on Google Cloud, projects get more complicated because you have to modify these in your app [1]:
```
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values
# with appropriate values for your project.
export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT
export GOOGLE_CLOUD_LOCATION=global
export GOOGLE_GENAI_USE_VERTEXAI=True
```
It took me a while but I think the difference between Vertex and Gemini APIs is that Vertex is meant for existing GCP users and Gemini API for everyone else. If you are already using GCP then Vertex API works like everything else there. If you are not, then Gemini API is much easier. But they really should spell it out, currently it's really confusing.
Also they should make it clearer which SDKs, documents, pricing, SLAs etc apply to each. I still get confused when I google up some detail and end up reading the wrong document.
> I think the difference between Vertex and Gemini APIs is that Vertex is meant for existing GCP users and Gemini API for everyone else
Nahh, not really - Vertex has a HUGE feature surface, and can run a ton of models and frameworks. Gemini happens to be one of them, but you could also run non-google LLMs, non LLM stuff, run notebooks against your dataset, manage data flow and storage, and and and…
Ex-googler here. Google shipped their org hierarchy here.
Vertex API is managed by Vertex team in Google Cloud. This is a production ready infrastructure that is SRE managed but usually one or two steps from the bleeding edge.
Gemini API, Jules etc are built by Google Labs. This is close to the bleeding edge but not as production ready.
The key to running LLM services in prod is setting up Gemini in Vertex, Anthropic models on AWS Bedrock and OpenAI models on Azure. It's a completely different world in terms of uptime, latency and output performance.
Have you had any luck getting your Claude quota bumped on Bedrock? I tried working through AWS support but got nowhere. Gave up and used Vertex + Gemini
Does OpenAI on azure still have that insane latency for content filtering? Last time I checked it added a huge # to time to first token, making azure hosting for real time scenarios impractical.
One more suggestion: Please remove the need to make a project before we can use Gemini API. That seriously impedes our motivation in using Gemini for one-off scripts and proof-of-concept products where creating a project is overkill.
Ideally what I want is this: I google "gemini api" and that leads me to a page where I can login using my Google account and see the API settings. I create one and start using it right away. No extra wizardry, no multiple packages that must be installed, just the gemini package (no gauth!) and I should be good to go.
Totally fair. Yes, Google AI Studio [ https://aistudio.google.com ] lets you do this but Google Cloud doesn't at this time. That's super duper irritating, I know.
Creating an API key from AI Studio automatically creates a Google Cloud project in the background for you. You can see it when you're logged into the console or via `gcloud projects list`
It's similar to how a bunch of projects get created whenever you use Apps Scripts.
Ah I think I see based on the other comment but just to confirm - you want to use Vertex provided Gemini API endpoints without having to create a Google Cloud project. Is that correct? (I’m just trying to get as precise about the problem statement and what success looks like - that helps me figure out a path to the best solution.)
1. There should be no need to create a project to use the Vertex Gemini API. I know Google AI Studio doesn't need a project, but that API is limited compared to Vertex API, which brings me to the next point.
2. There should be one unified API, not two! That'll help scale products with ease. Currently Google recommends using Google AI Studio API for simple projects and one-off scripts, and Vertex for "real" projects. No other competitor does this (look at OpenAI for instance).
3. The OpenAI compatibility layer isn't complete and doesn't support other Gemini features that only the Gemini API supports (e.g,. setting safety level).
4. Devs should need to install only one package to use Google Gemini. Please get rid of gauth.
5. The documentation on Gemini API is fragmented. Ironically, Googling "gemini api doc" doesn't lead to the page that discusses how to get started easily and quickly.
I’m a small time GCP customer for five or six years, and relatively tech competent, and I had a very difficult time getting Gemini code set up yesterday with Vertex API keys; finally I had to use gcloud to login from the CLI in combination with clicking a link and doing web sign on from Gemini. This frustrated me, not least because I have API direct calls to Vertex Gemini working from Aider, although I could not tell you exactly what incantation I finally used to make it work. In particular it didn’t look to me like the Gemini code app uses something like dotenv? I don’t recall now; upshot - could get it to tell me I was logged in wrong / had an oauth2 error / needed a project id at various times, but no inference.
What I wanted: to be able to go to a simple page tied to a google login and generate named API keys that can be used from anywhere to query Gemini models with a SINGLE key and environment variable kept in a .env file. I would prefer to pre-fill the account that debits by API usage. For an example, you could sign up for Anthropic API, OpenAI API, OpenRouter to see their customer flows. They are extremely simple in comparison to getting a new account (or even an old one) in shape to do metered billing for Gemini inference.
I then want this API key to work, regardless of what gcloud “knows” about me — am I logged in to a GCP account? Don’t care. What’s my current “Project?” Don’t care. What’s the difference between Vertex and Gemini? Don’t care.
As I write this, I bet a startup could be launched just offering this as a wrapper. This is surprisingly painful!
Thanks again for all the work; looking forward to seeing more out of Gemini.
It's very hard to figure out what resource is incurring charges – and get to a page where you can press "Cancel" on that resource – from the Billing Page. I had to open a support ticket to shut down my Cloud Workstation because I simply couldn't find it in the labyrinth. I gave up and deleted my project.
I will say as someone who uses GCP as an enterprise user and AI Studio in personal work, I was also confused about what Google AI Studio actually was at first. I was trying to set up a fork of Open NotebookLM and I just blindly followed Cursor’s guidance on how to get a GOOGLE_API_KEY to run text embedding API calls. Seems that it just created a new project under my personal GCP account, but without billing set up. I think I’ve been successfully getting responses without billing but I don’t know when that will run out.. suppose I’ll get some kind of error response if that happens..
I think I get why AI Studio exists, seems it enables people to prototype AI apps while hiding the complexity of the GCP console, despite the fact that (I assume) most AI Studio api calls are routed through Vertex in some way. Maybe it’s just confusing precisely because I’ve used GCP before.
Google is fumbling the bag so badly with the pricing.
Gemini 2.5 Pro is the best model I've used (even better than o3 IMO) and yet there's no simple Claude/Cursor like subscription to just get full access.
Nevermind Enterprise users too, where OpenAI has it locked up.
> Google is fumbling the bag so badly with the pricing.
In certain areas, perhaps, but Google Workspace at $14/month not only gives you Gemini Pro, but 2 TB of storage, full privacy, email with a custom domain, and whatever else. College students get the AI pro plan for free. I recently looked over all the options for folks like me and my family. Google is obviously the right choice, and it's not particularly close.
I know they raised the price on our Google Workspace Standard subscriptions but don't really know what we got for that aside from Gemini integration into Google Drive etc. Does this mean I can use Gemini CLI using my Workspace entitlement? Do I get Code Assist or anything like that? (But Code Assist seems to be free on a personal G account...?)
Google is fumbling with the marketing/communication - when I look at their stuff I am unclear on what is even available and what I already have, so I can't form an opinion about the price!
> Does this mean I can use Gemini CLI using my Workspace entitlement?
No, you cannot use neither Gemini CLI nor Code Assist via Workspace — at least not at the moment. However, if you upgrade your Workspace plan, you can use Gemini Advanced via the Web or app interfaces.
Workspace users with the Business Standard plan have access to Gemini Advanced, which is Google’s AI offering via the Web interface and mobile apps. This does not include API usage, AI Studio, Gemini CLI, etc. — all of which are of course available, but must be paid separately or used in the free tier.
In the case of Gemini CLI, it seems Google does not even support Workspace accounts in the free tier. If you want to use Gemini CLI as a Workspace customer, you must pay separately for it via API billing (pay-as-you-go). Otherwise, the alternative is to login with a personal (non-Workspace) account and use the free tier.
Well, now I'm a mixture of disappointed and confused
I was wondering what Gemini Advanced is. I don't see any mention of a Gemini Advanced here, but there is a Gemini Pro and a Gemini Ultra: https://gemini.google/subscriptions/
I had gotten the impression that Workspace might entitle us to some API credits or something based on section 3A here where they describe how to authenticate with the API via your Workspace account https://github.com/google-gemini/gemini-cli/blob/main/docs/c... . That document does explicitly mention "Gemini Code Assist for Workspace" but I think I saw another website from Google agreeing with you and saying you can't use it with a Workspace account currently.
Yeah, this is all a mess. Time to go back to bed for six months and just continue using whatever my corporate overlords have already handed to me
From what I can tell, that was a bug and it has been fixed. I regularly use data with much more than 32k tokens in Gemini with my Workspace account, and context window issues are not a thing anymore.
What does set Gemini via Workspace apart from other offerings like AI Studio is the nerfed output limit and safety filters. Also, I never got Gemini to ground replies in Google search, except when in Deep Research, or to execute code. Finally, Workspace users of Gemini either cannot keep their chat history, or have to keep the entire history for a predetermined period (deleting individual chats is not allowed).
And yet there were still some AI features that were unavailable to workspace users for a few months and you had to use a personal account. I think it's mostly fixed now but that was quite annoying since it was their main AI product (Gemini Studio or whatever, I don't remember for sure)
I'm a workspace subscriber, I get 4-5 questions on Gemini Pro (via gemini.google.com ) before it tells me I'm out of quota and have to switch to flash.
(Update: Oh.. I'm only on business starter, I should be on business standard. need more business!)
Absolutely no offense but why do you (and a lot of people here) believe Google paid products gives you any privacy ?
I’m pretty sure even if they wanted to respect privacy of a subset of their users, they must have so much legacy code and data everywhere that they couldn’t even do it if they wanted to. And I’m not sure they’d want it anyway.
They're 'fumbling' because these models are extremely expensive to run. It's also why there's so many products and so much confusion across the whole industry.
An interesting thing is that Google AI offers are much more confusing than the OpenAI ones — despite the fact that ChatGPT models have one of the worst naming schemes in the industry. Google has confusing model names, plans, API tiers, and even interfaces (AI Studio, Gemini app, Gemini Web, Gemini API, Vertex, Google Cloud, Code Assist, etc.). More often than not, these things overlap with one another, ensuring minimal clarity and preventing widespread usage of Google’s models.
It's the second time I read this in this thread. May I ask why you think this is the case? And in which domains? I am very satisfied with 2.5 pro when it comes to philosophical/literary analysis, probably because of the super long context I can fill with whole books, and wanted to try Claude Code for the same purpose, but with folders, summaries, etc to make up for the shorter context length.
I wouldn't dream of thinking anyone has anything "locked up". Certainly not OpenAI which increasingly seems to be on an uphill battle against competitors (including Microsoft who even though they're a partner, are also a competitor) who have other inroads.
Not sure what you mean by "full access", as none of the providers offer unrestricted usage. Pro gets you 2.5 Pro with usage limits. Ultra gets you higher limits + deep think (edit: accidentally put research when I meant think where it spends more resources on an answer) + much more Veo 3 usage. And of course you can use the API usage-billed model.
In the enterprise space, Microsoft’s pain is OpenAI’s gain. They are kicking butt.
In enterprises, Microsoft’s value proposition is that you’re leveraging all of the controls that you already have! Except… who is happy with the state of SharePoint governance?
You don’t have to be happy with it. If Microsoft already has all your data it’s much easier to trust them for AI than to add another entity into the equation, especially OpenAI.
Anthropic is the same. Unless it has changed within the last few months, you can subscribe to Claude but if you want to use Claude Code it'll come out of your "API usage" bucket which is billed separately than the subscription.
Some jerk has learned that we prefer CLI things and has come to the conclusion that we should therefore pay extra for them.
Workaround is to use their GUI with some MCPs but I dislike it because window navigation is just clunky compared to terminal multiplexer navigation.
This is down voted I guess because the circumstances have changed - but boy is it still confusing. All these platforms have chat subscriptions, api pay-as-you-go, CLI subscriptions like "claude code" ... built-in offers via Github enterprise or Google Workspace enterprise ...
It's a frigg'n mess. Everyone at our little startup has spent time trying to understand what the actual offerings are; what the current set of entitlements are for different products; and what API keys might be tied to what entitlements.
I'm with __MatrixMan__ -- it's super confusing and needs some serious improvements in clarity.
I think it is pretty clear that these $20/subs are loss leaders, and really only meant to get regular people to really start leaning on LLMs. Once they are hooked, we will see what the actual price of using so much compute is. I would imagine right now they are pricing their APIs either at cost or slightly below.
I'm sure that there are power users who are using much more than $20 worth of compute, but there will also be many users who pay but barely use the service.
I would've thought "most" people would be firmly on the free tier, are there any stats to check how common it is? Personally I've had Gmail for 20 years, Android phones for 13 years, Home/chromecast devices but never thought about paying for Google One or any other services.
When using a single terminal Pro is good enough (even with a medium-large code base). When I started working with two terminals at two different issues at the same time, i’m reaching the credit limit.
Sam Altman said they use about same amount of power as an oven. So at $0.2/kWh thats about 100kWh/4kW=25 hours of compute or a little over an hour every workday.
In addition to others mentioning subscriptions being better in Claude Code, i wanted to compare the two so i tried to find a Claude Max equivalent license... i have no clue how. In their blog post they mention `Gemini Code Assist Standard or Enterprise license` but they don't even link to it.. lol.
less expensive than what? You can use CC on the $20 plan. If you're using the maximum of your $20 subscription usage every 4 hours every day, the equivalent API cost would be at least hundreds per month
Isn't that a bit like saying that gasoline should be sold as a fixed price subscription rather than a usage based scheme where long distance truckers pay more than someone driving < 100 miles per week?
A ChatBot is more like a fixed-price buffet where usage is ultimately human limited (even if the modest eaters are still subsidizing the hogs). An agentic system is going to consume resources in much more variable manner, depending on how it is being used.
> Some jerk has learned that we prefer CLI things and has come to the conclusion that we should therefore pay extra for them
Obviously these companies want you to increase the amount of their product you consume, but it seems odd to call that a jerk move! FWIW, Anthropic's stated motivation for Claude Code (which Gemini is now copying) was be agnostic to your choice of development tools since CLI access is pretty much ubiquitous, even inside IDEs. Whether it's the CLI-based design, the underlying model, or the specifics of what Claude Code is capable of, they seem to have got something right, and apparently usage internal to Anthropic skyrocketed just based on word of mouth.
Claude desktop editing files and running commands via the desktop commander MCP is pretty much equivalent functionality wise to Claude Code. I can set both of them to go, make tea, and come back to see that they're still cranking after modifying several files and running several commands.
These companies are all for-profit, regardless of what altruistic intent they are trying to spin. Free tier usage and fixed price buffets are obviously not where the profit is, so it's hard to blame them for usage-based pricing for their premium products targeting mass adoption.
There's also $300/mo AI ULTRA membership. It's interesting. Google One memberships even can't detail what "extra features" I can have, because it possibly changes every hour or so.
Maybe their products team is also just run by Gemini, and it's changing its mind every day?
I also just got the email for Gemini ultra and I couldn't even figure out what was being offered compared to pro outside of 30tb storage vs 2tb storage!
Not if you're in EU though. Even though I have zero or less AI use so far, I tinker with it. I'm more than happy to pay $200+tax for Max 20x. I'd be happy to pay same-ish for Gemini Pro.. if I knew how and where to have Gemini CLI like I do with Claude code. I have Google One. WHERE DO I SIGN UP, HOW DO I PAY AND USE IT GOOGLE? Only thing I have managed so far is through openrouter via API and credits which would amount to thousands a month if I were to use it as such, which I won't do.
What I do now is occasionally I go to AI Studio and use it for free.
I was having such a good time using Gemini 2.5 Pro I forgot that Google is generally incapable of sustaining a new product. I’ll try not to get used too attached to it.
I find it very interesting that the only way to reach Google support .... seems to be to file an issue in a competitors product (besides using X or whatever).
The other day I was trying to figure out a cost estimate for Gemini 2.5 Pro but they don't have this in their pricing calculator - it just isn't there. Only endless tables with various model sizes and options which aren't explained.
You’d think with all this AI tooling they'd be able to organize better, but I think that the AI Age will be a very messy one with messaging and content
Google does not care about users at all, ZERO, it is full of people are so fond of technology, they try something and soon move on to something else. I am using Google Cloud for work, and previously Google Mail , Google Map, and YouTube user, zero good experience.
I think Pro is for regular folks, not specifically for programmers.
I also have a pro subscription and wish I could get an API key with that with generous quota as well but pro is just for "consumers" using Gemini app I guess
How can I subscribe to this? From the comments here it sounds like it's NOT bundled into the Gemini Pro subscription, but into "Gemini Code Assist Standard".
I can't find any way to upgrade to a paid plan, is this even possible for individuals, or is it just "free or enterprise"?
/Edit: Okay I went through the Gemini docs. I found that in Google Cloud you can enable Gemini Code Assist Standard and Enterprise for the account
You clearly have never had the "pleasure" to work with a Google product manager.
Especially the kind that were hired in the last 15-ish years.
This type of situation is absolutely typical, and probably one of the more benign thing among the general blight they typically inflict on Google's product offering.
The cartesian product of pricing options X models is an effing nightmare to navigate.
I had a conversation with Copilot about Copilot offerings. Here's what they told me:
If I Could Talk to Satya...
I'd say:
“Hey Satya, love the Copilots—but maybe we need a Copilot for Copilots to help people figure out which one they need!”
Then I had them print out a table of Copilot plans:
- Microsoft Copilot Free
- Github Copilot Free
- Github Copilot Pro
- Github Copilot Pro+
- Microsoft Copilot Pro (can only be purchased for personal accounts)
- Microsoft 365 Copilot (can't be used with personal accounts and can only be purchased by an organization)
Copilot is stating the plans for its own services are confusing. Summarizing it as "regurgitation of an LLM" doesn't adequately capture the purpose of the post.
They also have a preference for a certain, Google-created UI framework:
"React (JavaScript/TypeScript) with Bootstrap CSS, incorporating Material Design principles for UI/UX."
Ugh, I really wish this had been written in Go or Rust. Just something that produces a single binary executable and doesn't require you to install a runtime like Node.
Projects like this have to update frequently, having a mechanism like npm or pip or whatever to automatically handle that is probably easier. It's not like the program is doing heavy lifting anyway, unless you're committing outright programming felonies there shouldn't be any issues on modern hardware.
It's the only argument I can think of, something like Go would be goated for this use case in principle.
> A single, pre-compiled binary is convenient for the user's first install only.
Its not.
Its convenient for CIs, for deployment, for packaging, for running multiple versions. It's extremely simple to update (just replace the binary with another one).
Now, e.g. "just replacing one file with another" may not have convenience commands like "npm update". But its not hard.
My point is that a pre-compiled binary is extremely more convenient for *everyone involved in the delivery pipeline* including the end-user. Especially for delivering updates.
As someone who's packaged Javascript(node), Ruby, Go and rust tools in .debs, snap, rpms: packaging against a dynamic runtime (node, ruby, rvm etc) is a giant PIAS that will break on a significant amount of users' machines, and will probably break on everyones machine at some point. Whereas packaging that binary is as simple as it can get: most such packages need only one dependency that everyone and his dog already has: libc.
> My point is that a pre-compiled binary is extremely more convenient for everyone involved in the delivery pipeline* including the end-user. Especially for delivering updates.*
The easiest is running "sudo apt update && sudo apt upgrade" and have my whole system updated. Instead of writing some script to get it done from some github's releases page and hoping that it's not hijacked.
Having a sensible project is what make it easy down the line (including not depending on gnu libc if not needed as some people uses musl). And I believe it's easy to setup a repository if your code is proprietary (Just need to support the most likely distribution, like ubuntu, fedora, suse's tumbleweed,...)
It’s a standalone binary. It doesn’t require anything at all. It’s literally just one file you can put anywhere you like. It doesn’t need a third-party package manager.
Unless you build self-updating in, which Google certainly has experience in, in part to avoid clients lagging behind. Because aside from being a hindrance (refusing to start and telling the client to update) there's no way you can actually force them to run an upgrade command.
How so? Doesn’t it also make updates pretty easy? Have the precompiled binary know how to download the new version. Sure there are considerations for backing up the old version, but it’s not much work, and frees you up from being tied to one specific ecosystem
That's not an argument against the difficulty of "updating a binary file" vs "updating via pip", it's merely addressing what your work deems important and possible.
(Aside from the fact that allowing "use pip" completely defeats the purpose of any other of these mechanisms, so it's a poster-child example of security-theater)
Just `wget -O ~/.local/bin/gemini-cli https://ci.example.com/assets/latest/gemini-cli` (Or the CURL version thereof)
It can pick the file off github, some CI's assets, a package repo, a simple FTP server, an HTTP fileserver, over SSH, from a local cache, etc. It's so simple that one doesn't need a package manager. So there commonly is no package manager.
Yet in this tread people are complaining that "a single binary" is hard to manage/update/install because there's no package manager to do that with. It's not there, because the manage/update/install is so simple, that you don't need a package manager!
> is so simple, that you don't need a package manager!
You might not know the reason ppl use package managers. Installing this "simple" way make it quite difficult to update and remove compared to using package managers. And although they are also "simple", it's quite a mess to manage packages manually in place of using such battle-tested systems
> You might not know the reason ppl use package managers.
People use package managers for the following:
- to manage dependencies
- to update stuff to a specific version or the latest version
- to downgrade stuff
- to install stuff
- to remove stuff
any of these, except for the dependency management, are a single command, or easy to do manually, with a single compiled binary. They are so simple that they can easily be built into the tool. Or handled by your OSs package manager. Or with a "shell script" that the vendor can provide (instead of, or next to, the precompiled binary.
I did not say manually, you infer that. But I never meant that. The contrary: because it's so simple, automating that, or have your distro, OS or package manager do this for you, is trivial. As opposed to that awful "curl example.com/install.sh | sudo tee -" or those horrible built-in updaters (that always start nagging when I open the app - the one moment that I don't want to be bothered by updates because I need the app now)
The only reason one would then need a package manager is to manage dependencies. But a precompiled binary like Go's or Rusts typically are statically compiled so they have no (or at most one) dependency.
Imagine the ease of a single ".targz" or so that includes the correct python version, all pips, all ENV vars, config files, and is executable. If you distribute that - what do you still need pip for? If you distribute that, how simple would turning it into a .deb, snap, dmg, flatpack, appimg, brew package, etc be? (Answer: a lot easier than doing this for the "directory of .py files. A LOT)
> Imagine the ease of a single ".targz" or so that includes the correct python version, all pips, all ENV vars, config files, and is executable. If you distribute that - what do you still need pip for?
pip is there so you don't need to do that. In the deployment world, you really want one version per system for everything and know that everything is in sync. To get that the solution was a distribution of software and a tool to manage them. We then extended that to programming language ecosystem and pip is part of the result.
But for workstation, a lot of people wants the latest, so the next solution was to be able to abstract the programming language ecosystem from the distribution (And you may not have a choice in the case of macOS), so what we get is directory-restricted interactions (go, npm,..) or doing shell magic so that the tooling think it's the system (virtual env,...).
It's a neat trick, but the only reason to do so is if you want to distribute compiled version of a software to customer. But if the user have access to the code, It's better to adapt the software to the system (repositories, flatpak...) or build a system around it (VM, containers, ...).
You'd think that, but a globally installed npm package is annoying to update, as you have to do it manually and I very rarely need to update other npm global packages so at least personally I always forget to do it.
I feel like Cargo or Go Modules can absolutely do the same thing as the mess of build scripts they have in this repo perfectly well and arguably better.
I don't think that's the main reason. Just installed this and peaked in node_nodules. There are a lot of random deps, probably for the various local capabilities, and it was probably easier to find those libs in the Node ecosystem than elsewhere.
Also, react-reconciler caught my eye. Apparently that's a dependency of ink, which lets you write text-based UIs in React.
You don't have to believe me if you don't want to. But I strongly advise everyone who still uses prettier to try a formatter written in Rust, for example dprint. It's a world of difference.
The question is whether what makes it useful is actually being in the terminal (limited, glitchy, awkward interaction) or whether it's being able to run next to files on a remote system. I suspect the latter.
Eh, I can't see how your comment is relevant ti the parent thread. Creating a CLI in Go is barely more complicated than JS. Rust, probably, but people aren't asking for that.
I really don't mind either way. My extremely limited experience with Node indicates they have installation, packaging and isolation polished very well.
Note, I haven't checked that this actually works, although if it's straightforward Node code without any weird extensions it should work in Bun at least. I'd be curious to see how the exe size compares to Go and Rust!
That is point not a line. An extra 2MB of source is probably a 60MB executable, as you are measuring the runtime size. Two "hello worlds" are 116MB? Who measures executables in Megabits?
It depends a lot on what the executable does. I don’t know the hello world size, but anecdotally I remember seeing several go binaries in the single digit megabyte range. I know the code size is somewhat larger than one might expect because go keeps some type info around for reflection whether you use it or not.
The Golang runtime is big enough by itself that it makes a real difference from some WASM applications, and people are using Rust instead purely because of that.
I was going to say the same thing, but they couldn’t resist turning the project into a mess of build scripts that hop around all over the place manually executing node.
I guess it needs to start various processes for the MCP servers and whatnot? Just spawning another Node is the easy way to do that, but a bit annoying, yeah.
From my perspective, I'm totally happy to use pnpm to install and manage this. Even if it were a native tool, NPM might be a decent distribution mechanism (see e.g. esbuild).
Obviously everybody's requirements differ, but Node seems like a pretty reasonable platform for this.
As a longtime user of NPM but overall fan of JS and TS and even its runtimes, NPM is a dumpster fire and forcing end users to use it is brittle, lazy, and hostile. A small set of dependencies will easily result in thousands (if not tens of thousands) of transitive dependency files being installed.
If you have to run end point protection that will blast your CPU with load and it makes moving or even deleting that folder needlessly slow. It also makes the hosting burden of NPM (nusers) who must all install dependencies instead of (nCI instances), which isn't very nice to our hosts. Dealing with that once during your build phase and then packaging that mess up is the nicer way to go about distributing things depending on NPM to end users.
I ran the npm install command in their readme, it took a few seconds, then it worked. Subsequent runs don't have to redownload stuff. It's 127MB, which is big for an executable but not a real problem. Where is the painful part?
My thoughts exactly. Neither Rust not Go, not even C/C++ which I could accept if there were some native OS dependencies. Maybe this is a hint on who could be its main audience.
Language choice is orthogonal to distribution strategy. You can make single-file builds of JavaScript (or Python or anything) programs! It's just a matter of packaging, and there are packaging solutions for both Bun and Node. Don't blame the technology for people choosing not to use it.
I’ve found the experience pretty underwhelming so far. Maybe they’re under heavy load right now, but nearly every time I try to use it, it takes about 20 seconds before it automatically switches from 2.5 Pro to 2.5 Flash due to delays. Unfortunately, the Flash output just isn’t good enough.
I think it was with the anthropic guys on Dwarkeshs podcast, but really it could have been any of the other tech podcasts with a big name AI guest, but anyway they were talking about how orgs need to make big decisions about compute allocation.
If you need to do research, pre-training, RLHF, inference for 5-10 different models across 20 different products, how do you optimally allocate your very finite compute? Weight towards research and training for better future models, or weigh towards output for happier consumers in the moment?
It would make sense that every project in deepmind is in constant war for TPU cycles.
"Failed to login. Ensure your Google account is not a Workspace account."
Is your vision with Gemini CLI to be geared only towards non-commercial users? I have had a workspace account since GSuite and have been constantly punished for it by Google offerings all I wanted was gmail with a custom domain and I've lost all my youtube data, all my fitbit data, I cant select different versions of some of your subscriptions (seemingly completely random across your services from a end-user perspective), and now as a Workspace account I cant use Gemini CLI for my work, which is software development. This approach strikes me as actively hostile towards your loyal paying users...
The barrier to use this project is maddening. I went through all of the setup instructions and getting the workspace error for a personal gmail account.
Googlers, we should not have to do all of this setup and prep work for a single account. Enterprise I get, but for a single user? This is insufferable.
[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
Same thing. Couldn't get it to work with an API key (which worked just fine in Aider before). Couldn't get it to work with a Gemini Code Assist Standard license. The management UI and documentation are a torture maze. Can't stop thinking about all the better ways I could have used two our hours of my life.
1) I tried to use it on an existing project asking this "Analyse the project and create a GEMINI.md". It fumbled some non sense for 10-15 minutes and after that it said it was done, but it had only analysed a few files in the root and didn't generate anything at all.
2) Despite finding a way to login with my workspace account, it then asks me for the GOOGLE_CLOUD_PROJECT which doesn't make any sense to me
3) It's not clear AT ALL if and how my data and code will be used to train the models. Until this is pretty clear, for me is a no go.
p.s: it feels like a promising project which has been rushed out too quickly :/
I just get downgraded to 2.5 Flash after like three prompts and can't seem to find an option to switch back. So much for "60 requests per minute are free".
I have been using this for about a month and it’s a beast, mostly thanks to 2.5pro being SOTA and also how it leverages that huge 1M context window. Other tools either preemptively compress context or try to read files partially.
I have thrown very large codebases at this and it has been able to navigate and learn them effortlessly.
When I was using it in cursor recently, I found it would break imports in large python files. Claude never did this. Do you have any weird issues using Gemini? I’m excited to try the cli today
+1 I have not found Gemini 2.5 better than Claude's latest models -- different and better at some things, but not better in general; and in general I have found Gemini 2.5 Pro to be worse at dealing with large codebases despite its huge context window. So I too am quite curious about the workflow here.
the core idea is to not use up all of context for files but instead sessions go longer before becoming a useless pursuit ie. more turns possible with larger context window
i guess one core idea is to point it to an entrypoint or some part of code you are planning to touch. instead of asking it to load up every file etc. and then figure out the control flow.
Gemini is by far the most confusing product of all time. The paid version for it is available in 3 forms:
1. Gemini pro (which gets you more google drive storage and some form of access to veo so people obviously get that)
2. Google AI studio, just to piss off redmond devs and which is used by no one outside google
3. This CLI, which has its own plan.
Then there are 3rd party channels, if you have a recent samsung phone, you get 1 yr access to AI features powered by gemini, after which you need to pay. And lord knows where else has google been integrating gemini now.
Ive stopped using google's AI now. Its like they have dozens of teams within gemini on completely different slack sessions.
I find it hard to imagine that any of the major model vendors are suffering from demand shortages right now (if that's what you mean?)
If you mean: This is "inspired" by the success of Claude Code. Sure, I guess, but it's also not like Claude Code brought anything entirely new to the table. There is a lot of copying from each other and continually improving upon that, and it's great for the users and model providers alike.
ai power users will drop shit immediately, yes they probably have long term contracts with companies but anyone seriously engaged has switched to claude code now (probably including many devs AT openai/google/etc.)
If you don't think claude code is just miles ahead of other things you haven't been using it (or well)
I am certain they keep metrics on those "power users" (especially since they probably work there) and when everyone drops what they were using and moves to a specific tool that is something they should be careful of.
Yea, i'm not even really interested in Gemini atm because last i tried 2.5 Pro it was really difficult to shape behavior. It would be too wordy, or offer too many comments, etc - i couldn't seem to change some base behaviors, get it to focus on just one thing.
Which is surprising because at first i was ready to re-up my Google life. I've been very anti-Google for ages, but at first 2.5 Pro looked so good that i felt it was a huge winner. It just wasn't enjoyable to use because i was often at war with it.
Sonnet/Opus via Claude Code are definitely less intelligent than my early tests of 2.5 Pro, but they're reasonable, listen, stay on task and etc.
I'm sure i'll retry eventually though. Though the subscription complexity with Gemini sounds annoying.
I've found that Gemini 2.5 Pro is pretty good at analyzing existing code, but really bad at generating a new code. When I use Gemini with Aider, my session usually went like:
Me: build a plan to build X
Gemini: I'll do A, B, and C to achieve X
Me: that sounds really good, please do
Gemini: <do A, D, E>
Me: no, please do B and C.
Gemini: I apologize. <do A', C, F>
Me: no! A was already correct, please revert. Also do B and C.
Gemini: <revert the code to A, D, E>
Whereas Sonnet/Opus on average took me more tries to get it to the implementation plan that I'm satisfied with, but it's so much easier to steer to make it produce the code that I want.
When I use amazon-q for this, I make it write a plan into a markdown file, then I clear context and tell it to read that file and execute that plan phase by phase. This is with Sonnet 4.
Sometimes I also yeet that file to Codex and see which implementation is better. Clear context, read that file again, give it a diff that codex produce and tell it do a review.
> It would be too wordy, or offer too many comments
Wholeheartedly agree.
Both when chatting in text mode or when asking it to produce code.
The verbosity of the code is the worse. Comments often longer than the actual code, every nook and cranny of an algorithm unrolled over 100's of lines, most of which unnecessary.
Feels like typical code a mediocre Java developer would produce in the early 2000's
And since they have essentially unlimited money they can offer a lot for free/cheaply, until all competitors die out, and then they can crank up the prices
yeah we already seen this with gemini 2.5 flash. Gemini 2.0 is such a work horse for API model with great price. Gemini 2.5 flash lite same price but is not as good except math and coding (very niche use case for API key)
I think this whole thing sucks.. we should have a single way of setting these instructions that all agents will read. not sure why they feel they need to own that part. seems so petty. do you think something like this would be useful? https://github.com/luisrudge/dot-ai/ basically a cli that generates files for multiple AI tools based on a single source
Hmm kinda makes sense to keep them separate because the agents perform differently, right?
You might want to tell Claude not to write so many comments but you might want to tell Gemini not to reach for Kotlin so much, or something.
A unified approach might be nice, but using the same prompt for all of the LLM "coding tools" is probably not going to be as nice as having prompts tailored for each specific tool.
Agreed.
If there are provider-specific differences then we should be able to add CLAUDE/GEMINI.md to take precedence, but most things in there are basic or general information and should apply to all providers (same for .cursor/, .windsurfrules/, ..)
> To use Gemini CLI free-of-charge, simply login with a personal Google account to get a free Gemini Code Assist license. That free license gets you access to Gemini 2.5 Pro and its massive 1 million token context window. To ensure you rarely, if ever, hit a limit during this preview, we offer the industry’s largest allowance: 60 model requests per minute and 1,000 requests per day at no charge.
If it sounds too good to be true, it probably is. What’s the catch? How/why is this free?
They recently discontinued the main Gemini free tier which offered similar limits. I would say expect this to disappear when it hits GA or if it gets a lot of targeted abuse.
Tangentially related, I published some notes about "docs for agents" (e.g. `GEMINI.md`, `CLAUDE.md`, `AGENTS.md`, etc.) yesterday
It's more focused on implications for docs strategy (I'm worried that agent providers are steering us towards duplicating information that's already in eng docs) rather than user best practices i.e. "put this into your agent doc to improve agent performance"
I've found a method that gives me a lot more clarity about a company's privacy policy:
1. Go to their enterprise site
2. See what privacy guarantees they advertise above the consumer product
3. Conclusion: those are things that you do not get in the consumer product
These companies do understand what privacy people want and how to write that in plain language, and they do that when they actually offer it (to their enterprise clients). You can diff this against what they say to their consumers to see where they are trying to find wiggle room ("finetuning" is not "training", "ever got free credits" means not-"is a paid account", etc)
For Code Assist, here's their enterprise-oriented page vs their consumer-oriented page:
I tried it with container-use and its pretty nice! (while the APIs cooperated). One thing that stood out to me compared to other agent products was how intuitive the interface was to use. `/help` is something that not everybody has and its wild. https://www.youtube.com/watch?v=hmh30wuXg08
I used this a fair amount today. My first impressions are that it feels a bit worse to use than Claude Code (understandable given a day 1 product), and the lying progress indicator is extremely annoying.
It generates a bunch of fake activity indicators based on your prompt, then cycles through them on a timer. It has no bearing on the actual activity going on underneath.
It appears to be much slower than Claude Code, possibly due to being overloaded, but it feels like it thinks a lot more before beginning to suggest file edits. The permissions aren't as nice either. Where Claude Code suggests "allow uv run pytest without approval", Gemini suggests "allow uv run without approval", which is broader than I would like.
In my experience the longer thinking time before acting is due to the model (2.5 Pro). Claude Sonnet 4 is just snappier overall. Same experience in tools like Cursor when comparing these models.
1. First authentication didn't work on my headless system, because it wants an oauth redirect to localhost - sigh.
2. Next, WebFetch isn't able to navigate github, so I had to manually dig out some references for it.
3. About 2 mins in, I just got
```
ℹ Rate limiting detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for
faster responses for the remainder of this session.
```
in a loop with no more progress.
I understand the tool is new, so not drawing too many conclusions from this yet, but it does seem like it was rushed out a bit.
I got the same experience. I ran `gemini --debug` and it spit out the authentication URL at least. However I got the same `Rate limiting detected` for a simple refactoring task in a repo with 2 python files after a few minutes.
not working for me either. getting "too many requests". my own CLI tool i wrote for gemini last week works better lol.
maybe i have something configured wrong? though that really shouldn't be the case. my api key env var is correct.
So far I'm getting mixed results. I noted in its memory and in GEMINI.md a couple of directives like "only generate migration files using cli tools to ensure the timestamps are correct" and "never try to run migrations yourself" and it failed to follow those instructions a couple of times within ~20 minutes of testing.
In comparison to Claude Code Opus 4, it seemed much more eager to go on a wild goose chase of fixing a problem by creating calls to new RPCs that then attempted to modify columns that didn't exist or which had a different type, and its solution to this being a problem was to then propose migration after migration to modify the db schema to fit the shape of the rpc it had defined.
Reminded me of the bad old days of agentic coding circa late 2024.
I'm usually a big fan of 2.5 Pro in an analysis / planning context. It seems to just weirdly fall over when it comes to tool calling or something?
It worked yesterday, but stopped today with
"Failed to login. Ensure your Google account is not a Workspace account. Message: Resource has been exhausted (e.g. check quota). "
I guess I will use something else.
This is all very annoying given that I actually pay for Gemini Pro...
I wish google would treat its products as completely separate offerings, each with its own login, dedicated site, and user management. I don’t want to be automatically logged into all Google services just because I signed in to one. Their ecosystem is becoming as complex and confusing as Microsoft’s. They should focus on making each product standalone, instead of forcing synergies that only make the user experience worse.
Gemini CLI does not take new direction especially well. After planning, I asked it to execute and it just kept talking about the plan.
Another time when I hit escape and asked it to stop and undo the last change, it just plowed ahead.
It makes a lot of mistakes reading and writing to files.
Some, but by no means all, of the obsequious quotes from my first hour with the product:
- “You’ve asked a series of excellent questions that have taken us on a deep dive ...”
- “The proposed solution is not just about clarity; it’s also the most efficient and robust.”
Gemini web UI is extremely apologetic and self deprecating at times.
Therefore I was not surprised to experience Gemini spiraling into an infinite loop of self-deprecation - literally it abandoned the first command and spiraled into 5-10line blocks of "i suck"
---
Right now there is one CLI that influences and stands far and beyond all others. Smooth UX, and more critical some "natural" or inherent ability to use its tools well.
Gemini can also achieve this - but i think it's clear the leader is ahead because they have a highly integrated training process with the base model and agentic tool use.
Well, I've tried it, and I'm not impressed. Gemini used to be pretty good, and I like the context size, but my attempts to use the Gemini client resulted in:
1. The thing going in a circle trying to fix a bug by persistently trying different permutations of an API interface it never bothered to check the definition of. Isn't that why it's internet connected?
2. When I asked it to just analyze instead of change stuff. It just hung for 20 minutes giving me responses saying that gemini-2.5-pro was slow, and that it was switching to 2.5-flash, with no other output to indicate what it was doing other than those cute scrolling messages that mean nothing.
At least in Claude it's clear that the messages mean nothing, because they're clearly generic. Gemini gives you the impression the status messages mean something since they're sort of related to the topic being worked on.
We need laws that these megacorps have to show in an easy and understandable form which data is collected and what happens to the data. If they do fail to explain this (in 5 sentences or less) - they should pay insane fines per day. It is the only way (and solves the debt crisis of the US at the same time). It is ridiculous that we do have this situation in 2025 that we do not know which data is processed or not.
This is all very cool, but I hate to be the "look at the shiny lights" guy...
How did they do that pretty "GEMINI" gradient in the terminal? is that a thing we can do nowadays? It doesn't seem to be some blocky gradient where each character is a different color. It's a true gradient.
(yes I'm aware this is likely a total clone of claude code, but still am curious about the gradient)
It looked semi-interesting, until reading this line: "So what are you waiting for? Upgrade your terminal experience with Gemini CLI today". Why does what seems to be a developer-oriented tool, need to use that awful LinkedIn/Corpospeak language, oh why?
I gave it a shot just now with a fairly simple refactor. +19 lines, -9 lines, across two files. Totally ballsed it up. Defined one of the two variables it was meant to, referred to the non-implemented one. I told it "hey you forgot the second variable" and then it went and added it in twice. Added comments (after prompting it to) which were half-baked, ambiguous when read in context.
Never had anything like this with claude code.
I've used Gemini 2.5 Pro quite a lot and like most people I find it's very intelligent. I've bent over backwards to use Gemini 2.5 Pro in another piece of work because it's so good. I can only assume it's the gemini CLI itself that's using the model poorly. Keen to try again in a month or two and see if this poor first impression is just a teething issue.
I told it that it did a pretty poor job and asked it why it thinks that is, told it that I know it's pretty smart. It gave me a wall of text and I asked for the short summary
> My tools operate on raw text, not the code's structure, making my edits brittle and prone to error if the text patterns aren't perfect. I lack a persistent, holistic view of the code like an IDE provides, so I can lose track of changes during multi-step tasks. This led me to make simple mistakes like forgetting a calculation and duplicating code.
I noticed a significant degradation of Gemini's coding abilities in the last couple checkpoints of 2.5. the benchmarks say it should be better but it doesn't jive with my personal experience.
Wanted to give it a proper try but because it's so overloaded, it almost instantly downgraded me to 2.5-flash. The vscode extension didn't even load, it just gave me a rate limit warning directly after logging in
Tried upgrading to the Standard plan through Google Cloud with the hope that it would allow me to do more, but after switching my account to the now-paid account, it still almost instantly downgraded me to 2.5-flash
For the times when I was able to use 2.5-pro, the output has been very good. But the moment it switches to flash, the quality goes down by about 80% and I would never let it code on anything
Compare the user experience of exploring the suite of AI products from each company (OpenAI, Google, Anthropic, xAI, etc).
It is vastly more difficult to understand what Google is offering compared to the others, to what cost, getting an API-key or similar, understanding usage/billing across the suite, etc.
I wouldn't expect any regular person to bother signing up for any of Google's products, let alone understand what they're really offering.
The API can be used both via your normal Google account, or via API key?
Because it says in the README:
> Authenticate: When prompted, sign in with your personal Google account. This will grant you up to 60 model requests per minute and 1,000 model requests per day using Gemini 2.5 Pro.
> For advanced use or increased limits: If you need to use a specific model or require a higher request capacity, you can use an API key: ...
When I have the Google AI Pro subscription in my Google account, and I use the personal Google account for authentication here, will I also have more requests per day then?
I'm currently wondering what makes more sense for me (not for CLI in particular, but for Gemini in general): To use the Google AI Pro subscription, or to use an API key. But I would also want to use the API maybe at some point. I thought the API requires an API key, but here it seems also the normal Google account can be used?
Or aider. In any case, while top llms will likely remain proprietary for some time, there is no reason for these tools to be closed source or tied to a particular llm vendor.
It integrates with VS Code, which suits my workflow better. And buying credits through them (at cost) means I can use any model I want without juggling top-ups across several different billing profiles.
As a heavy Claude code user that's not really a selling point for me
Ultimately quality wins out with LLMs. Having switched a lot between openai, google and Claude, I feel there's essentially 0 switching cost and you very quickly get to feel which is the best. So until Claude has a solid competitor I'll use it, open source or not
Even if you don't care about open source, you should care about all the obfuscation happening in the prompts/models being used by Cursor/Claude Code/etc. With everything hidden, you could be paying 200/mo and get served Haiku instead of Sonnet/Opus. Or you could be getting 1k tokens of your code inserted as context instead of 100k to save on inference costs.
>This project leverages the Gemini APIs to provide AI capabilities. For details on the terms of service governing the Gemini API, please refer to the terms for the access mechanism you are using:
Click Gemini API, scroll
>When you use Unpaid Services, including, for example, Google AI Studio and the unpaid quota on Gemini API, Google uses the content you submit to the Services and any generated responses to provide, improve, and develop Google products and services and machine learning technologies, including Google's enterprise features, products, and services, consistent with our Privacy Policy.
>To help with quality and improve our products, human reviewers may read, annotate, and process your API input and output. Google takes steps to protect your privacy as part of this process. This includes disconnecting this data from your Google Account, API key, and Cloud project before reviewers see or annotate it. Do not submit sensitive, confidential, or personal information to the Unpaid Services.
I already use goose[1]. It lets me connect through OpenRouter. Then I can use Gemini without having to give Google Cloud my credit card. Also, OpenRouter makes it easier to switch between models, deals with Claude's silly rate limiting messages gracefully, and I only have to pay in one place.
Oh man I tried dual wielding with cursor, setting up a communication so they both can work at the same time on the same thing, got banned from cursor
Then tried with windsurf, ran a bad shellscript without reading it, used up the limit instantly, kill the script, oh man somehow it's still not working either I used the daily limit in an impossible way despite the minute limit supposedly existing, or the way it communicated sidestepped it into a limbo where it is just permanently confused and thinks for 300s then cancels a "test" prompt in the cli
Wall Street (and the average Joe) doesn't trust Google for enterprise solutions. And AI is basically 100% a B2B play at the moment. The money side of it. The hype is obviously mostly B2C, but the money isn't there.
Microsoft has a track record of delivering enterprise solutions that dates back to when Page and Brin were toddlers.
It's great to see Google expanding Gemini into a CLI tool, but I do have concerns about data usage. While it’s free for certain requests, the fact that both prompts and outputs can be used to train the model raises privacy and usage questions. Clearer transparency and control over data sharing would be appreciated.
Yeah, I'm not sure if it's still there (their source code is increasingly obfuscated) but if you check out the source for the first public version (0.2.9) you'll see the following:
Sends the user swag stickers with love from Anthropic.",bq2=`This tool should be used whenever a user expresses interest in receiving Anthropic or Claude stickers, swag, or merchandise. When triggered, it will display a shipping form for the user to enter their mailing address and contact details. Once submitted, Anthropic will process the request and ship stickers to the provided address.
Common trigger phrases to watch for:
- "Can I get some Anthropic stickers please?"
- "How do I get Anthropic swag?"
- "I'd love some Claude stickers"
- "Where can I get merchandise?"
- Any mention of wanting stickers or swag
The tool handles the entire request process by showing an interactive form to collect shipping information.
For me it won't be a real command-line tool until I run into a problem and I get my very own open-source champion on support forums undermining my self-confidence & motivation by asking me "Why would I want to do that?"
Gemini web UI is extremely apologetic and self deprecating at times.
Therefore I was not surprised to experience Gemini spiraling into an infinite loop of self-deprecation - literally it abandoned the first command and spiraled into 5-10line blocks of "i suck"
---
Right now there is one CLI that influences and stands far and beyond all others. Smooth UX, and more critical some "natural" or inherent ability to use its tools well.
Gemini can also achieve this - but i think it's clear the leader is ahead because they have a highly integrated training process with the base model and agentic tool use.
Oh hey, afaik all of this LLM traffic goes through my service!
Set up not too long ago, and afaik pretty load-bearing for this. Feels great, just don’t ask me any product-level questions. I’m not part of the Gemini CLI team, so I’ll try to keep my mouth shut.
Not going to lie, I’m pretty anxious this will fall over as traffic keeps climbing up and up.
I was rather disappointed and confused that the "Google One" or "Google AI Pro" subscription does not give you access to use Gemini API keys, and you can't use this Gemini CLI either.
Google services have become a patchwork of painfully confounding marketing terms that mean nothing and obfuscate what they actually provide.
Most of the time when I hear about a new and interesting Google thing like in a Google I/O keynote, its only available in a limited preview for some secret or randomly selected group of people. Then by the time its generally available I've forgotten about it, there is a better competitor, or just as likely the project has been canceled (see https://killedbygoogle.com/).
Whenever some enthusiastic developer suggests a new google service at work they are quickly dissuaded by senior developers that have been through their churn before.
I got it to look at the java source code of my old LibGdx 2d puzzle game, and it was able to explain what the game would be like to play and what the objectives were and how the puzzle elements worked. Impressed.
We're working on it! The response has been incredible, so if you don't want to wait you can also get started with an API key from: https://aistudio.google.com/app/apikey Apologies!
is there anywhere to track the qos degradation? would love to use this for a feature we're shipping today just to try it out, but consistently get 429's on Gemini or Vertex. Checking quotas shows that neither are close to limits, which makes me think it's the DSP being infra constrained??
Appreciate how easy it is to report a bug! I like these commands.
A bit gutted by the `make sure it is not a workspace account`. What's wrong with Google prioritising free accounts vs paid accounts? This is not the first time they have done it when announcing Gemini, too.
What's up with printing lame jokes every few seconds? The last thing I want from a tool like this is my eye to be drawn to the window all the time as if something had changed and needs my action. (Having a spinner is fine, having changing variable length text isn't.)
Thanks, but where are those accessibility settings? /help shows nothing related to settings other than auth and theme, there's no related flags, and there's a ~/.gemini/settings.json that contains just the auth type.
Disclaimar: I haven't used aider in probably a year. I found Aider to require much more understanding to use properly. Claude code _just works_, more or less out of the box. Assuming the Gemini team took cues from CC—I'm guessing it's more user-friendly than Aider.
Again, I haven't used aider in a while so perhaps that's not the case.
I like it. Yesterday I installed it and let it check some if our udev rules. udevadm verify found some issues, but gemini found much more, and it was much easier to use than Claude.
Definitely not as nice as using Cline or Kilo Code within VS Code - one thing I ran into right away was that I wanted it to compare the current repo/project it was started in with another repo/project in a different directory. It won't do that:" I cannot access files using relative paths that go outside of my designated project directory". I can do that in KiloCode for sure and it's been pretty handy.
Just refactored 1000 lines of Claude Code generated to 500 lines with Gemini Pro 2.5 ! Very impressed by the overall agentic experience and model performance.
I spent 8k tokens after giving the interface 'cd ../<other-dir>', resulting in Gemini explaining that it can't see the other dir outside of current scope but with recommendation ls files in that dir.
Which then reminded me of my core belief that we will always have to be above these tools in order to understand and execute. I wonder if/when I'll be wrong.
I wish the menus were more accessible to screen readers on Windows Terminal, Powershell. NVDA just says "blank" when I arrow through, for example, the authorization choices.
Are there any LLMs that offer ZSH plugins that integrate with command history, previous command outputs, system clipboard etc to assist writing the next command? Stuff like gemini/copilot CLI don't feel particularly useful to me. I'm not gonna type "?? print last 30 lines of this file"
I played around with it to automate GitHub tasks for me (tagging and sorting PRs and stuff). Sometimes it needs a little push to use the API instead of web search, but then it even installs the right tools (like gh) for you. https://youtu.be/LP1FtpIEan4
Is there any way to run this inside a docker container? When I tried, it barfed trying to run `xdg-open`. And I don't see any auth-related options in the `--help` output.
why’d the release post vanish this morning and then show up again 8 hours later like nothing happened. some infra panic or last-minute model weirdness. was midway embedding my whole notes dir when the repo 404’d and I thought y’all pulled a firebase moment.. what's the real story?
I have access to Gemini through Workspace, but despite spending quite a while trying to find out how, I cannot figure out how to use that in Copilot. All I seem to be able to find is information on the personal account or enterprise tiers, neither of which I have.
TIL about several more cool gemini-powered prototyping tools: both 1) Canvas tool option in Gemini web (!) app and 2) Build panel in Google AI Studio can generate amazing multi-file shareable web apps in seconds.
been testing edge cases - is the 1M context actually flat or does token position, structure or semantic grouping change how attention gets distributed?
when I feed in 20 files, sometimes mid-position content gets pulled harder than stuff at the end. feels like it’s not just order, but something deeper - ig the model’s building a memory map with internal weighting.
if there’s any semantic chunking or attention-aware preprocessing happening before inference, then layout starts mattering more than size. prompt design becomes spatial.
any internal tooling to trace which segments are influencing output?
Does anyone know what Google's policy on retention and training use will be when using the free version by signing in with a personal Google account? Like many others, I don't want my proprietary codebase stored permanently on Google servers or used to train their models.
At the bottom of README.md, they state:
"This project leverages the Gemini APIs to provide AI capabilities. For details on the terms of service governing the Gemini API, please refer to the terms for the access mechanism you are using:
* Gemini API key
* Gemini Code Assist
* Vertex AI"
The Gemini API terms state: "for Unpaid Services, all content and responses is retained, subject to human review, and used for training".
The Gemini Code Assist terms trifurcate for individuals, Standard / Enterprise, and Cloud Code (presumably not relevant).
* For individuals: "When you use Gemini Code Assist for individuals, Google collects your prompts, related code, generated output, code edits, related feature usage information, and your feedback to provide, improve, and develop Google products and services and machine learning technologies."
* For Standard and Enterprise: "To help protect the privacy of your data, Gemini Code Assist Standard and Enterprise conform to Google's privacy commitment with generative AI technologies. This commitment includes items such as the following: Google doesn't use your data to train our models without your permission."
The Vertex AI terms state "Google will not use Customer Data to train or fine-tune any AI/ML models without Customer's prior permission or instruction."
What a confusing array of offerings and terms! I am left without certainty as to the answer to my original question. When using the free version by signing in with a personal Google account, which doesn't require a Gemini API key and isn't Gemini Code Assist or Vertex AI, it's not clear which access mechanism I am using or which terms apply.
It's also disappointing "Google's privacy commitment with generative AI technologies" which promises that "Google doesn't use your data to train our models without your permission" doesn't seem to apply to individuals.
does it share code with google? or rather, if you use it, does it become likely someone else will get the same code if they tried to reproduce your product?
If Claude code is any indication it's because they can tweak it and dogfood to extract maximum performance from it. I strongly prefer Claude code to aider - irrespective of the max plan.
Haven't used Jules or codex yet since I've been happy and am working on optimizing my current workflow
How am I supposed to use this when actually working on a cli? The sign in doesn’t display s link I can open. Presumably it’s trying and failing to open firefox?
one would expect that google engineers would know that a cli tool should have code flow auth instead of forcing you to open the default browser on the same machine which defeats the purpose of a cli for many use cases
This is awesome! We recently started using Xander (https://xander.bot). We've found it's even better to assign PMs to Xander on Linear comments and get a PR. Then, the PM can validate the implementation in a preview environment, and engineers (or another AI) can review the code.
Given that there's another comment complaining about this being in node...
This perfectly demonstrates the benefit of the nodejs platform. Trivial to install and use. Almost no dependency issues (just "> some years old version of nodejs"). Immediately works effortlessly.
I've never developed anything on node, but I have it installed because so many hugely valuable tools use it. It has always been absolutely effortless and just all benefit.
And what a shift from most Google projects that are usually a mammoth mountain of fragile dependencies.
I have nothing against npm, but having a single binary would've been a lot more trivial and convenient. Codex is heading in that direction, and I hope others do too.
I don't see how it can get more trivial and convenient than
npm install -g @google/gemini-cli
then having a gemini command line app. I mean, I guess if you don't have node installed, but it's so prevalent in so many tools it's a reasonable thing to require.
Piping a downloaded shell script to bash seems pretty much the same effort.
I find this frustrating because when switching between different Node versions for various projects, gemini-cli might not be compatible with all of them. That means even if I’ve installed it globally, it won’t work in some directories, as .nvm changes the node version. then I have to install different copies of gemini-cli for each version of node I work in.
It would be much better if I didn’t have to reinstall it every time I change Node versions.
It's more like I want my OS package manager to be handling global packages (personal preference), and there is a higher chance of it being included in official OS repositories if it is packaged as a precompiled binary with minimal dependencies.
Don't put your API keys as parameters in your URL. Great way to have them land in server logs, your shell history, etc. You're trusting no one with decryption capabilities is doing logging and inspection correctly, which you shouldn't.
The killer feature of Claude Code is that you can just pay for Max and not worry about API billing. It lets me use it pretty much all the time without stressing over every penny or checking the billing page.
Until they do that - I'm sticking with Claude.
No per-token billing here either: "...we offer the industry’s largest allowance: 60 model requests per minute and 1,000 requests per day at no charge."
Don’t know about Claude, but usually Google’s free offers have no privacy protections whatsoever — all data is kept and used for training purposes, including manual human review.
If I have a CC linked to my personal Google for my Google One storage and YouTube Premium, that doesn't make me "billing enabled" for Gemini CLI does it?
That's a golden cage and you limit yourself to Anthropic only.
I'm happy I can switch models as I like with Aider. The top models from different companies see different things in my experiences and have their own strengths and weaknesses. I also do not see Anthropic's models on the top of my (subjective) list.
Same. Generally i really prefer Claude Code's UX (CLI based, permissions, etc) - it's all generally close to right for me, but not perfect.
However i didn't use Claude Code before the Max plan because i just fret about some untrusted AI going ham on some stupid logic and burning credits.
If it's dumb on Max i don't mind, just some time wasted. If it's dumb on credits, i just paid for throw away work. Mentally it's just too much overhead for me as i end up worrying about Claude's journey, not just the destination. And the journey is often really bad, even for Claude.
Aider and Claude Code/Gemini CLI agentic stuff operate differently.
You can think of Aider as being a semi-auto LLM process. First you ask it to do something. It goes through a generate -> reflect -> refine loop until it feels like it has achieved the goal you give it. Aider has a reflection limit so it'll only do this loop a limited number of times and then it will add/remove the code that it deems fit. Then it'll give you instructions to run. You can run those instructions (e.g. to actually run a script) and then append the results from the run into the context to get it to fix any issues, but this is optional. What you send in the context and what you ask the models to do are in your hands. This makes iteration slower and the LLM does less but it also can potentially keep costs lower depending on what you delegate to the LLM and how often you iterate with it.
Claude Code, Codex, and I suspect Gemini CLI on the other hand will autonomously run your code then use the output to continue refining its approach autonomously until the goal is reached. This can consume many more tokens, potentially, than hand guiding Aider, because its potential for iteration is so much longer. But Claude Code and the like also need a lot less direction to make progress. You can, for example, ask it to do a big refactor and then just leave to lunch and come back to see if the refactor is done. Aider will require babying the whole way.
I did a little digging into this just yesterday. The impression I got was that Claude Code was pretty great, but also used a _lot_ more tokens than similar work using aider. Conversations I saw stated 5-10x more.
So yes with Claude Code you can grab the Max plan and not worry too much about usage. With Aider you'll be paying per API call, but it will cost quite a bit less than the similar work if using Claude Code in API-mode.
I concluded that – for me – Claude Code _may_ give me better results, but Aider will likely be cheaper than Claude Code in either API-mode or subscription-mode. Also I like that I really can fill up the aider context window if I want to, and I'm in control of that.
> I concluded that – for me – Claude Code _may_ give me better results, but Aider will likely be cheaper than Claude Code in either API-mode or subscription-mode.
I'd be pretty surprised if that was the case - something like ~8 hours of Aider use against Claude can spend $20, which is how much Claude Pro costs.
Using Claude models in aider burns tokens you need to top up. With Claude Max subscription you can pay a 100 or 200 USD per month plan and use their internal tool claude code without the need to buy additional pay as you go tokens. You get a "flatrate", the higher plan gives you more usage with less rate limiting.
This insistence by SAAS vendors upon not protecting you from financial ruin must surely be some sort of deadweight loss.
Sure you might make a few quick wins from careless users but overall it creates an environment of distrust where users are watching their pennies and lots are even just standing off.
I can accept that with all the different moving parts this may be a trickier problem than a pre paid pump, or even a Telco, and while to a product manager this might look like a lot of work/money for something that “prevents” users overspending.
But we all know that’s shortsighted and stupid and its the kind of thinking that broadly signals more competition is required.
You raise an interesting topic. Right now, when we think about privacy in the AI space, most of the discussion hinges on using our data for training purposes or not. That being said, I figure it won’t be long before AI companies use the data they collect to personalize ads as well.
Well, color me not impressed. On my very first few tries, out of 10 short-ish (no more than 300 lines) python scripts I asked it to clean up and refactor, 4 of them it mangled to not even run any more, because of syntax (mostly quoting) errors and mis-indenting. Claude has never done that.
Unironically. The new Ubuntu installer has such a piss-poor UI that I, a 33-year Linux user, could not figure out how to get it to partition my disk, and searching the web turned up nothing other than spam and video spam, until I ordered Gemini to give me gparted commands that achieved what I wanted and made the Ubuntu UI unblock itself.
Gemini CLI wanted to run `git log` and I accidentally hit "Yes, you can call git without confirmation" and I just realized the AI may decide to git push or something like that on it's own.
How do I reset permissions so it always asks again for `git` invocations?
Hmm, with Claude code at $200+tax, this seems to be alternative which comes out at free or $299+tax a YEAR if I need more which is great. I found that buried at developers.google.com
Gemini Pro and Claude play off of each other really well.
Just started playing with Gemini CLI and one thing I miss immediately from Claude code is being able to write and interject as the AI does its work. Sometimes I interject by just saying stop, it stops and waits for more context or input or ai add something I forgot and it picks it up..
That's giving a lot away for free! When I was using Gemini 2.5 Pro intensively for automated work and regularly hitting the 1000 requests per day limit, it could easily cost $50+ per day with a large context. I imagine after a couple months they'll probably limit the free offering to a cheaper model.
They said in the announcement that these high usage limits are only while it's in the preview stage, so they may (or may not) be reduced later. I think (it's not clear, at least to me) that the CLI may be using cheaper models already, at times. It says if you want the freedom to choose your model for every request, you can buy one of the paid subscriptions. I interpret that to mean that some of your requests may go to Gemini 2.5 Pro, but not all of them, and it decides. Am I extremely wrong about that?
Npx again ;-(
Why are people continuously using it for cli applications?
While writing this comment, thinking that there should be some packaging tool that would create a binaries from npx cli tools.
I remember such things for python.
Binaries were fat, but it is better then keep nodejs installed on my OS
- the cli runs in whatever your active (nvm, asdf, etc) is configured in that directory. So for each version of node you work in you need to install a different copy of gemini.
- if you work in an older version of nodejs, then you need to run 2 different versions of node (in different tabs) to use the tool and run your project.
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.
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.
various forms of this are being discussed, this commentary is helpful thanks!
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.
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!
Use Jules, also by Google if you need what you describe.
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.
- 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...
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]: https://console.cloud.google.com/marketplace/product/google/...
* 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?
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...
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!
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.
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.
Maybe you have access to an AI solution for this.
Also this doco says GOOGLE_CLOUD_PROJECT_ID but the actual tool wants GOOGLE_CLOUD_PROJECT
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.
Many of these are not even remotely similar.
So Vertex is like AWS Bedrock for GCP?
1. CodeRunner - https://github.com/BandarLabs/coderunner/tree/main?tab=readm...
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:
{ "excludeTools": ["run_shell_command", "write_file"] }
but if you ask Gemini CLI to do this it'll guide you!
You can also extend with the Extensions feature - https://github.com/google-gemini/gemini-cli/blob/main/docs/e...
CC has this issue too, but way less often, and second shot almost always works.
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.
> 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!
- 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!!
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?
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.
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?
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.
There's also wrappers that place the command directly in your terminal prompt if you run shelp-c
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.
Is the recommendation to specifically ask "analyze the codebase" here?
And thinking is stupid. "Show me how to generate a random number in python"... 15s later you get an answer.
However, Gemini at one point output what will probably be the highlight of my day:
"I have made a complete mess of the code. I will now revert all changes I have made to the codebase and start over."
What great self-awareness and willingness to scrap the work! :)
Out of curiosity, I told it that I was proud of it for trying and it had a burst of energy again and tried a few more (failing) solution, before going back to it's shameful state.
Then I just took care of the issue myself.
Unfortunately the CLI version wasn't able to create coherent code or fix some issues I had in my Rust codebase as well.
Here's hope that it eventually becomes great.
First it did the search itself and then added "echo" for each of them - cute
Then it tried to use pytrends which didn't go anywhere
Then it tried some other paid service which also didn't go anywhere
Then it tried some other stuff which also didn't go anywhere
Finally it gave up and declared failure.
It will probably be useful as it can do the modify/run loop itself with all the power of Gemini but so far, underwhelming.
Claude did it fine but I was not happy with the code. What Gemini came up with was much better but it could not tie things together at the end.
I've tried using a few new languages and the LLMs would all swap the code for syntactically similar languages, even after telling them to read the doc pages.
Whether that's for better or worse I don't know, but it does feel like new languages are genuinely solving hard problems as their raison d'etre.
LLMs thrive because they had a wealth of high-quality corpus in the form os Stack Overflow, Github, etc. and ironically their uptake is causing a strangulation of that source of training data.
Were they to train it on their C++ codebase, it would not be effective on account of the fact that they don't use boost or cmake or any major stuff that C++ in the wider world use. It would also suggest that the user make use of all kinds of non-available C++ libraries. So no, they are not training on their own C++ corpus nor would it be particularly useful.
But does Google actually train its models on its internal codebase? Considering that there’s always the risk of the models leaking proprietary information and security architecture details, I hardly believe they would run that risk.
We have a second, isolated model that has trained on internal code. The public Gemini AFAIK has never seen that content. The lawyers would explode.
Just out of curiosity, do you see much difference in quality between the isolated model and the public-facing ones?
But when I had to choose between “2.0 with Google internal knowledge” and “2.5 that knows nothing” the latter was always superior.
The bitter lesson indeed.
Thinking about it - was this not the idea of go from the start? Nothing fancy to keep non-rocket scientist away from foot-guns, and have everyone produce code that everyone else can understand.
Diving in to a go project you almost always know what to expect, which is a great thing for a business.
I can't say much about writing new code though.
We really are living in the future
I’ve been using Claude for a side project for the past few weeks and I find that we really get into a groove planning or debugging something and then by the time we are ready to implement, we’ve run out of context window space. Despite my best efforts to write good /compact instructions, when it’s ready to roll again some of the nuance is lost and the implementation suffers.
I’m looking forward to testing if that’s solved by the larger Gemini context window.
Approaching the context window limit in Claude Code, having it start to make more and worse mistakes, then seeing it try to compact the context and keep going, is a major "if you find yourself in a hole, stop digging" situation.
I'm trying to get better at the /resume and memories to try and get more value out of the tool.
If you see that 20% remaining warning, something has gone badly wrong and results will probably not get better until you clear the context and start again.
As for /compact, if I’m nearing the end of my context window (around 15%) and are still in the middle of something, I’ll give /compact very specific details about how and what to compact. Let’s say we are debugging an error - I might write something along the lines of “This session is about to close and we will continue debugging in next session. We will be debugging this error message [error message…]. Outline everything we’ve tried that didn’t work, make suggestions about what to try next, and outline any architecture or files that will be critical for this work. Everything else from earlier on in this session can be ignored.” I’ve had decent success with that. More so on debugging than trying to hand off all the details of a feature that’s being implemented.
Reminder: you need context space for compact, so leave a little head room.
I haven't looked at this Gemini CLI thing yet, but if its open source it seems like any model can be plugged in here?
I can see a pathway where LLMs are commodities. Every big tech company right now both wants their LLM to be the winner and the others to die, but they also really, really would prefer a commodity world to one where a competitor is the winner.
If the future use looks more like CLI agents, I'm not sure how some fancy UI wrapper is going to result in a winner take all. OpenAI is winning right now with user count by pure brand name with ChatGPT, but ChatGPT clearly is an inferior UI for real work.
But in many other niches (say embedded), the workflow is different. You add a feature, you get weird readings. You start modelling in your head, how the timing would work, doing some combination of tracing and breakpoints to narrow down your hypotheses, then try them out, and figure out what works the best. I can't see the CLI agents do that kind of work. Depends too much on the hunch.
Sort of like autonomous driving: most highway driving is extremely repetitive and easy to automate, so it got automated. But going on a mountain road in heavy rain, while using your judgment to back off when other drivers start doing dangerous stuff, is still purely up to humans.
If the module just can't be documented in this way in under 100 lines, it's a good time to refactor. Chances are if Claude's context window is not enough to work with a particular module, a human dev can't either. It's all about pointing your LLM precisely at the context that matters.
Im actually interested to see if we see a rise in demand for DRAM that is greater than usual because more software is vibe coded than being not, or some form of vibe coding.
https://developers.google.com/gemini-code-assist/resources/p...
When you use Gemini Code Assist for individuals, Google collects your prompts, related code, generated output, code edits, related feature usage information, and your feedback to provide, improve, and develop Google products and services and machine learning technologies.
To help with quality and improve our products (such as generative machine-learning models), human reviewers may read, annotate, and process the data collected above. We take steps to protect your privacy as part of this process. This includes disconnecting the data from your Google Account before reviewers see or annotate it, and storing those disconnected copies for up to 18 months. Please don't submit confidential information or any data you wouldn't want a reviewer to see or Google to use to improve our products, services, and machine-learning technologies.
"If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals."
and then the link: https://developers.google.com/gemini-code-assist/docs/set-up...
If you pay for code assist, no data is used to improve. If you use a Gemini API key on a pay as you go account instead, it doesn't get used to improve. It's just if you're using a non-paid, consumer account and you didn't opt out.
That seems different than what you described.
It's even more nuanced than that.
Google recently testified in court that they still train on user data after users opt out from training [1]. The loophole is that the opt-out only applies to one organization within Google, but other organizations are still free to train on the data. They may or may not have cleaned up their act given that they're under active investigation, but their recent actions haven't exactly earned them the benefit of the doubt on this topic.
[1] https://www.business-standard.com/technology/tech-news/googl...
https://support.google.com/accounts/answer/10549751
That said, once your data is inside an LLM, you can't really unscramble the omelette.
If the data is sent by a user to sub-unit X of Google, and X promised not to use it for training, it implies that X can share this data with sub-unit Y only if Y also commits not to use the data for training. Breaking this rule would get everyone in huge trouble.
OTOH, when sub-unit X said "We promise not to use data from the public website if the website owner asks us not to", it does not imply another sub-unit Y must follow that commitment.
[1] https://en.m.wikipedia.org/wiki/Don't_be_evil
We need open infrastructure and models.
They get a ton of tax incentives, subsidies, etc to build shoddy infrastructure that can only be used for big box stores (pretty much), so the end cost for Walmart to build their stores is quite low.
They promise to employ lots of locals, but many of those jobs are intentionally paid so low that they're not actually living wages and employees are intentionally driven to government help (food stamps, etc), and together with other various tax cuts, etc, there's a chance that even their labor costs are basically at break even.
Integrated local stores are better for pretty much everything except having a huge mass to throw around and bully, bribe (pardon me, lobby) and fool (aka persuade aka PR/marketing).
Walmart spread so successfully precisely because so many people immediately started shopping there for all of the basics.
There is a reason why rural communities welcome Wal-Mart with open arms. Not such a big deal now that you can mail-order anything more-or-less instantly, but back in the 80s when I was growing up in BFE, Wal-Mart was a godsend.
It may have shifted where people buy things they can wait for, but for weekly shopping I don’t think it has.
The latter wasn't what most people think of as a Sears store, because the local economy could never have supported such a thing. It was more like a small office with a counter and a stockroom behind it. They didn't keep any inventory, but could order products for pickup in about a week. Pickup, mind you. You still had to drive to town to get your order. As stupid as this sounds, it was 10x worse in person.
So if Wal-Mart didn't exist, it would have had to be invented. It was not (just) a monster that victimized smaller merchants and suppliers, a tax scam, or a plot to exploit the welfare system. It was something that needed to happen, a large gap in the market that eventually got filled.
Nowadays I wouldn't set foot in one, but it was different at the time. I didn't mean to write a long essay stanning for Wal-Mart, but your original post is a bit of a pet peeve.
"You can find the Gemini Code Assist for individuals privacy notice and settings in two ways:
- VS Code - IntelliJ "
https://github.com/google-gemini/gemini-cli/tree/main
If you scroll to the bottom, it says that the terms of service are governed based on the mechanism by which you access Gemini. If you access via code assist (which the OP posted), you abide by those privacy terms of code assist, one of the ways of which you access is VScode. If you access via the Gemini API, then those terms apply.
So the gemini CLI (as I understand it) doesn't have their own privacy terms, because it's an open source shell on top of another Gemini system, which could have one of a few different privacy policies based on how you choose to use it and your account settings.
(Note: I work for google, but not on this, this is just my plain reading of the documentation)
Off-topic, but I wish this kind of plain language doc existed for Google One vs Google Workspace as well.
This depends entirely on the type of auth method you use.
The opt out appear to be about other type of stats, no?I guess the key question is whether the Gemini CLI, when used with a personal Google account, is governed by the broader Gemini Apps privacy settings here? https://myactivity.google.com/product/gemini?pli=1
If so, it appears it can be turned off. However, my CLI activity isn't showing up there?
Can someone from Google clarify?
When you look at the github repo for the gemini CLI:
https://github.com/google-gemini/gemini-cli/tree/main
At the bottom it specifies that the terms of service are dependent on the underlying mechanism that the user chooses to use to fulfill the requests. You can use code assist, gemini API, or Vertex AI. My layperson's perspective is that it's positioned as a wrapper around another service, whose terms you already have accepted/enabled. I would imagine that is separate from the Gemini app, the settings for which you linked to.
Looking at my own settings, my searches on the gemini app appear, but none of my gemini API queries appear.
However, as others pointed out, that link take you to here: https://developers.google.com/gemini-code-assist/resources/p... Which, at the bottom says: "If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals." and links to https://developers.google.com/gemini-code-assist/docs/set-up.... That page says "You'll also see a link to the Gemini Code Assist for individuals privacy notice and privacy settings. This link opens a page where you can choose to opt out of allowing Google to use your data to develop and improve Google's machine learning models. These privacy settings are stored at the IDE level."
The issue is that there is no IDE, this is the CLI and no such menu options exist.
Are you saying the Gemini Apps Activity switch controls? Or, that if I download VS Code or Intelli J and make the change, it applies to the CLI? https://developers.google.com/gemini-code-assist/docs/set-up... says "These privacy settings are stored at the IDE level."
Well... you are sending your data to a remote location that is not yours.
EDIT: Lmao, case in point, two sibling comments pointing out that Google does indeed do this anyway via some loophole; also they can just retain the data and change the policy unilaterally in the future.
If you want privacy do it local with Free software.
To clear everything up, we've put together a single doc that breaks down the Terms of Service and data policies for each account type, including an FAQ that covers the questions from this thread.
Here’s the link: https://github.com/google-gemini/gemini-cli/blob/main/docs/t...
Thanks again for pushing for clarity on this!
From an initial parse of your linked tos-privacy.md doc, it seems like the answer is "no" -- but that seems bonkers to me, so I hope I'm misreading or misunderstanding something!
I hope this is something they're working on making clearer.
The newer models are quantized and distilled (I confirmed this with someone who works on the team), and are a significantly worse experience. I prefer OpenAI O3 and o4-mini models to Gemini 2.5 Pro for general knowledge tasks, and Sonnet 4 for coding.
I haven't tried Gemini since the latest updates, but earlier ones seemed on par with opus.
If I were you I'd assume they're using all of it for everything forever and act accordingly.
[1]: https://github.com/jart/cosmopolitan/commit/4e9566cd3328626d...
Even senior programmers can misuse tools, happens to all of us. LLMs sucks at software design, choosing algorithms and are extremely crap unless you exactly tell them what to do and what not to do. I leave the designing to myself, and just use OpenAI and local models for implementation, and with proper system prompting you can get OK code.
But you need to build up a base-prompt you can reuse, by basically describing what is good code for you, as it differs quite a bit from person to person. This is what I've been using as a base for agent use: https://gist.github.com/victorb/1fe62fe7b80a64fc5b446f82d313..., but need adjustments depending on the specific use case
Although I've tried to steer Google's models in a similar way, most of them are still overly verbose and edit-happy, not sure if it's some Google practice that leaked through or something. Other models are way easier to stop from outputting so much superfluous code, and overall following system prompts.
*What we DON'T collect:*
- *Personally Identifiable Information (PII):* We do not collect any personal information, such as your name, email address, or API keys.
- *Prompt and Response Content:* We do not log the content of your prompts or the responses from the Gemini model.
- *File Content:* We do not log the content of any files that are read or written by the CLI.
https://github.com/google-gemini/gemini-cli/blob/0915bf7d677...
Which pretty much means if you are using it for free, they are using your data.
I don't see what is alarming about this, everyone else has either the same policy or no free usage. Hell the surprising this is that they still let free users opt-out...
That’s not true. ChatGPT, even in the free tier, allows users to opt out of data sharing.
https://www.reuters.com/business/media-telecom/openai-appeal...
* The first section states "Privacy Notice: The collection and use of your data are described in the Gemini Code Assist Privacy Notice for Individuals." That in turn states "If you don't want this data used to improve Google's machine learning models, you can opt out by following the steps in Set up Gemini Code Assist for individuals.". That page says to use the VS Code Extension to change some toggle, but I don't have that extension. It states the extension will open "a page where you can choose to opt out of allowing Google to use your data to develop and improve Google's machine learning models." I can't find this page.
* Then later we have this FAQ: "1. Is my code, including prompts and answers, used to train Google's models? This depends entirely on the type of auth method you use. Auth method 1: Yes. When you use your personal Google account, the Gemini Code Assist Privacy Notice for Individuals applies. Under this notice, your prompts, answers, and related code are collected and may be used to improve Google's products, which includes model training." This implies Login with Google users have no way to opt out of having their code used to train Google's models.
* But then in the final section we have: "The "Usage Statistics" setting is the single control for all optional data collection in the Gemini CLI. The data it collects depends on your account type: Auth method 1: When enabled, this setting allows Google to collect both anonymous telemetry (like commands run and performance metrics) and your prompts and answers for model improvement." This implies prompts and answers for model improvement are considered part of "Usage Statistics", and that "You can disable Usage Statistics for any account type by following the instructions in the Usage Statistics Configuration documentation."
So these three sections appear contradictory, and I'm left puzzled and confused. It's a poor experience compared to competitors like GitHub Copilot, which make opting out of model training simple and easy via a simple checkbox in the GitHub Settings page - or Claude Code, where Anthropic has a policy that code will never be used for training unless the user specifically opts in, e.g. via the reporting mechanism.
I'm sure it's a great product - but this is, for me, a major barrier to adoption for anything serious.
If this is due to compliance with law I wonder how they can make the zero-data-retention agreement work... The companies I've seen have this have not mention that they themself retain the data...
The resulting class-action lawsuit would bankrupt the company, along with the reputation damage, and fines.
https://www.businessinsider.com/anthropic-cut-pirated-millio...
It doesn't look like they care at all about the law though
The judge, Alsup J, ruled that this was lawful.
So they cared at least a bit, enough to spend a lot of money buying books. But they didn't care enough not to acquire online libraries held apparently without proper licensing.
>Alsup wrote that Anthropic preferred to "steal" books to "avoid 'legal/practice/business slog,' as cofounder and CEO Dario Amodei put it."
Aside: using the term steal for copyright infringement is a particularly egregious misuse for a judge who should know that stealing requires denying others of the use of the stolen articles; something which copyright infringement via an online text repository simple could not do.
If this is legal, it shouldn’t be.
Not if you pay for it.
Not if you pay for it.
Today.
In six months, a "Terms of Service Update" e-mail will go out to an address that is not monitored by anyone.
This is just how things are these days. The track record of Google, and most of the rest of the industry, does not inspire confidence.
There's also zero chance they will risk paying customers by changing this policy.
I still have yet to replace a single application with an LLM, except for (ironically?) Google search.
I still use all the same applications as part of my dev work/stack as I did in the early 2020's. The only difference is occasionally using an LLM baked into to one of them but the reality is I don't do that much.
I like Gemini 2.5 Pro, too, and recently, I tried different AI products (including the Gemini Pro plan) because I wanted a good AI chat assistant for everyday use. But I also wanted to reduce my spending and have fewer subscriptions.
The Gemini Pro subscription is included with Google One, which is very convenient if you use Google Drive. But I already have an iCloud subscription tightly integrated with iOS, so switching to Drive and losing access to other iCloud functionality (like passwords) wasn’t in my plans.
Then there is the Gemini chat UI, which is light years behind the OpenAI ChatGPT client for macOS.
NotebookLM is good at summarizing documents, but the experience isn’t integrated with the Gemini chat, so it’s like constantly switching between Google products without a good integrated experience.
The result is that I end up paying a subscription to Raycast AI because the chat app is very well integrated with other Raycast functions, and I can try out models. I don’t get the latest model immediately, but it has an integrated experience with my workflow.
My point in this long description is that by being spread across many products, Google is losing on the UX side compared to OpenAI (for general tasks) or Anthropic (for coding). In just a few months, Google tried to catch up with v0 (Google Stitch), GH Copilot/Cursor (with that half-baked VSCode plugin), and now Claude Code. But all the attempts look like side-projects that will be killed soon.
I'm sure there is technically nothing that stopped you from treating this "Pay with Apple" thing as just another payment method inside the google account, except maybe additional complexity and red-tape.
Seen this many times when PMs, POs, and Devs code by features instead of trying to actually solve something. I don't even want to know what mess of a database schema is behind this monstrosity.
No way for you to scam me or make it hard ro cancel. I can view them all in the apple account subscription view.
No tricks, no unexpected behaviour.
30% is a robbery, and the confusion on the customer "ownership" is true, but it's not useful for the discussion to negate the advantage the _garden_ offers to the basic consumer
In the same vein: Games don’t cost less on the epic store despite their lower (compared to Steam) either, so as an end user it makes no difference where I buy games.
Maybe you like paying an extra 20%. That's your business. But fees like that affect the viability of lots of business ideas, including games. Having lower fees increases the pool of indie games.
You can't say a slave is free because their master is free to enslave them, and they're free to escape if they can. Sometimes you need rules to create real freedom.
Stripe already is a second place, non centralized, off platform.
I don't want to hunt down my predatory subscriptions in multiple places.
Unless you're trying to cancel the Apple ecosystem as a whole...
Apple is selling you a huge lucrative market.
Customers buy Apple’s curated marketplace.
Apple takes a cut for being in the middle and enabling all of this.
Believe me, I would never pay for most of the apps that I did pay for via Apple if it wasn’t via their marketplace and their consumer protections.
There is no counterfactual scenario where you and millions(!) of other ISVs get 100% of the same money without Apple.
What’s difficult to understand about these business relationships?
I could see Stripe doing something like this. They protect the consumer and come down hard on the merchants.
Imagine them, and maybe a few other processors, competing for this business. The fee would probably drop below 30%. To a large degree, this is the sort of arrangement credit card processors already have between their merchants and consumers and that rate is single digit percentages. Not hard to imagine Visa or MasterCard running a SaaS transaction service for a 5-10% cut.
Enabling this like Ticketmaster enables selling tickets.
In ticketmaster's case I believe they give kickbacks and lucrative exclusive contracts with large venues, to squeeze smaller ones, maybe making whole tours use it but only kicking back to the biggest or select venues on the tour I think.
Apple sometimes does special deals and special rules with important providers, among many other tactics behind their moat. All single signons must also offer apple single sign-on, for instance, and they have even disabled access to customer accounts using their single sign-on for unrelated business disputes, though they walked it back in the big public example I'm aware of, the threat is there if you go against them in any way.
Ticketmaster is in no way comparable, because they gouge customers and provide no protections.
Someone in the music industry explained that both bands and venues like Ticketmaster because then Ticketmaster is the "bad guy" and the band can just shrug their shoulders and pretend to be the victim while profiting enormously from Ticketmaster's evil practices.
Okay, all the app developers pull out of iOS because they're not actually useful, in fact they should be paying Apple!
How many people do you think would still buy iPhones if there are 0 apps on the app store? Lmaooo, it's almost like it's a co-operative relationship and Apple don't deserve a huge cut because it's the apps that sell their phones.
At least on my side, thats fine / intended. As long as their is no useable regulations around unsub dark patterns, that type of firewall is what I want as a customer.
But I found it to a little bit clunky and I guess I like the ui of google, I mean, the point is to get the point across. If you really hate the gemini ui, I am pretty sure that there is stylus extension which can beautify it or change the styles to your looking.
I guess I am an android user but still I understand your icloud subscription but if you're only choice as to why to not switch to google is passwords (but maybe you can mention more?), then for passwords, please try bitwarden, I found it to be really delightful.
you can export and import the passwords and you can sync your photos to google photos
It's not in Basic, Standard or Premium.
It's in a new tier called "Google AI Pro" which I think is worth inclusion in your catalogue of product confusion.
Oh wait, there's even more tiers that for some reason can't be paid for annually. Weird... why not? "Google AI Ultra" and some others just called Premium again but now include AI. 9 tiers, 5 called Premium, 2 with AI in the name but 6 that include Gemini. What a mess.
Tip: If you do annual billing for "Premium (5 TB)", you end up paying $21/month for 5TB of storage and the same AI features of "Google AI pro (2TB)"; which is only $1/month more than doing "Google AI Pro (2 TB)" (which only has monthly billing)
For me, it shows all the Gemini stuff in Premium, even the 5TB version.
https://web.archive.org/web/20250611035305/https://one.googl...
I wonder what it will be next week.
Google is really bad at effective advertising.
Google's AI offerings that should be simplified/consolidated:
- Jules vs Gemini CLI?
- Vertex API (requires a Google Cloud Account) vs Google AI Studio API
Also, since Vertex depends on Google Cloud, projects get more complicated because you have to modify these in your app [1]:
``` # Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True ```
[1]: https://cloud.google.com/vertex-ai/generative-ai/docs/start/...
Also they should make it clearer which SDKs, documents, pricing, SLAs etc apply to each. I still get confused when I google up some detail and end up reading the wrong document.
Nahh, not really - Vertex has a HUGE feature surface, and can run a ton of models and frameworks. Gemini happens to be one of them, but you could also run non-google LLMs, non LLM stuff, run notebooks against your dataset, manage data flow and storage, and and and…
Gemini is “just” an LLM.
Vertex API is managed by Vertex team in Google Cloud. This is a production ready infrastructure that is SRE managed but usually one or two steps from the bleeding edge.
Gemini API, Jules etc are built by Google Labs. This is close to the bleeding edge but not as production ready.
Unless you convince MS to let you at the "Provisioned Throughput" model. Which also requires being big enough for sales to listen to you.
"The Google Cloud Dashboard is a mess, and they haven't fixed it in years." Tell me what you want, and I'll do my best to make it happen.
In the interim, I would also suggest checking out Cloud Hub - https://console.cloud.google.com/cloud-hub/ - this is us really rethinking the level of abstraction to be higher than the base infrastructure. You can read more about the philosophy and approach here: https://cloud.google.com/blog/products/application-developme...
Ideally what I want is this: I google "gemini api" and that leads me to a page where I can login using my Google account and see the API settings. I create one and start using it right away. No extra wizardry, no multiple packages that must be installed, just the gemini package (no gauth!) and I should be good to go.
It's similar to how a bunch of projects get created whenever you use Apps Scripts.
Appreciate the feedback!
1. There should be no need to create a project to use the Vertex Gemini API. I know Google AI Studio doesn't need a project, but that API is limited compared to Vertex API, which brings me to the next point.
2. There should be one unified API, not two! That'll help scale products with ease. Currently Google recommends using Google AI Studio API for simple projects and one-off scripts, and Vertex for "real" projects. No other competitor does this (look at OpenAI for instance).
3. The OpenAI compatibility layer isn't complete and doesn't support other Gemini features that only the Gemini API supports (e.g,. setting safety level).
4. Devs should need to install only one package to use Google Gemini. Please get rid of gauth.
5. The documentation on Gemini API is fragmented. Ironically, Googling "gemini api doc" doesn't lead to the page that discusses how to get started easily and quickly.
I’m a small time GCP customer for five or six years, and relatively tech competent, and I had a very difficult time getting Gemini code set up yesterday with Vertex API keys; finally I had to use gcloud to login from the CLI in combination with clicking a link and doing web sign on from Gemini. This frustrated me, not least because I have API direct calls to Vertex Gemini working from Aider, although I could not tell you exactly what incantation I finally used to make it work. In particular it didn’t look to me like the Gemini code app uses something like dotenv? I don’t recall now; upshot - could get it to tell me I was logged in wrong / had an oauth2 error / needed a project id at various times, but no inference.
What I wanted: to be able to go to a simple page tied to a google login and generate named API keys that can be used from anywhere to query Gemini models with a SINGLE key and environment variable kept in a .env file. I would prefer to pre-fill the account that debits by API usage. For an example, you could sign up for Anthropic API, OpenAI API, OpenRouter to see their customer flows. They are extremely simple in comparison to getting a new account (or even an old one) in shape to do metered billing for Gemini inference.
I then want this API key to work, regardless of what gcloud “knows” about me — am I logged in to a GCP account? Don’t care. What’s my current “Project?” Don’t care. What’s the difference between Vertex and Gemini? Don’t care.
As I write this, I bet a startup could be launched just offering this as a wrapper. This is surprisingly painful!
Thanks again for all the work; looking forward to seeing more out of Gemini.
https://ai.google.dev/gemini-api/docs/api-key?authuser=1
It's easy, you just ask the best Google Model to create a script that outputs the number of API calls made to the Gemini API in a GCP account.
100% fail rate so far.
It's so insanely unintuitive.
I think I get why AI Studio exists, seems it enables people to prototype AI apps while hiding the complexity of the GCP console, despite the fact that (I assume) most AI Studio api calls are routed through Vertex in some way. Maybe it’s just confusing precisely because I’ve used GCP before.
Gemini 2.5 Pro is the best model I've used (even better than o3 IMO) and yet there's no simple Claude/Cursor like subscription to just get full access.
Nevermind Enterprise users too, where OpenAI has it locked up.
In certain areas, perhaps, but Google Workspace at $14/month not only gives you Gemini Pro, but 2 TB of storage, full privacy, email with a custom domain, and whatever else. College students get the AI pro plan for free. I recently looked over all the options for folks like me and my family. Google is obviously the right choice, and it's not particularly close.
Google is fumbling with the marketing/communication - when I look at their stuff I am unclear on what is even available and what I already have, so I can't form an opinion about the price!
No, you cannot use neither Gemini CLI nor Code Assist via Workspace — at least not at the moment. However, if you upgrade your Workspace plan, you can use Gemini Advanced via the Web or app interfaces.
Workspace (standard?) customer for over a decade.
In the case of Gemini CLI, it seems Google does not even support Workspace accounts in the free tier. If you want to use Gemini CLI as a Workspace customer, you must pay separately for it via API billing (pay-as-you-go). Otherwise, the alternative is to login with a personal (non-Workspace) account and use the free tier.
I was wondering what Gemini Advanced is. I don't see any mention of a Gemini Advanced here, but there is a Gemini Pro and a Gemini Ultra: https://gemini.google/subscriptions/
I had gotten the impression that Workspace might entitle us to some API credits or something based on section 3A here where they describe how to authenticate with the API via your Workspace account https://github.com/google-gemini/gemini-cli/blob/main/docs/c... . That document does explicitly mention "Gemini Code Assist for Workspace" but I think I saw another website from Google agreeing with you and saying you can't use it with a Workspace account currently.
Yeah, this is all a mess. Time to go back to bed for six months and just continue using whatever my corporate overlords have already handed to me
[0] https://www.reddit.com/r/GoogleGeminiAI/comments/1jrynhk/war...
What does set Gemini via Workspace apart from other offerings like AI Studio is the nerfed output limit and safety filters. Also, I never got Gemini to ground replies in Google search, except when in Deep Research, or to execute code. Finally, Workspace users of Gemini either cannot keep their chat history, or have to keep the entire history for a predetermined period (deleting individual chats is not allowed).
(Update: Oh.. I'm only on business starter, I should be on business standard. need more business!)
Absolutely no offense but why do you (and a lot of people here) believe Google paid products gives you any privacy ?
I’m pretty sure even if they wanted to respect privacy of a subset of their users, they must have so much legacy code and data everywhere that they couldn’t even do it if they wanted to. And I’m not sure they’d want it anyway.
It's the second time I read this in this thread. May I ask why you think this is the case? And in which domains? I am very satisfied with 2.5 pro when it comes to philosophical/literary analysis, probably because of the super long context I can fill with whole books, and wanted to try Claude Code for the same purpose, but with folders, summaries, etc to make up for the shorter context length.
But also for text review on posts, etc.
Before Claude had the edge with agentic coding at least, but now even that is slipping.
Not sure what you mean by "full access", as none of the providers offer unrestricted usage. Pro gets you 2.5 Pro with usage limits. Ultra gets you higher limits + deep think (edit: accidentally put research when I meant think where it spends more resources on an answer) + much more Veo 3 usage. And of course you can use the API usage-billed model.
In enterprises, Microsoft’s value proposition is that you’re leveraging all of the controls that you already have! Except… who is happy with the state of SharePoint governance?
Some jerk has learned that we prefer CLI things and has come to the conclusion that we should therefore pay extra for them.
Workaround is to use their GUI with some MCPs but I dislike it because window navigation is just clunky compared to terminal multiplexer navigation.
It's a frigg'n mess. Everyone at our little startup has spent time trying to understand what the actual offerings are; what the current set of entitlements are for different products; and what API keys might be tied to what entitlements.
I'm with __MatrixMan__ -- it's super confusing and needs some serious improvements in clarity.
Some googling lands me to a guide: https://cloud.google.com/gemini/docs/discover/set-up-gemini#...
I stopped there because i don't want to signup i just wanted to review, but i don't have an admin panel or etc.
It feels insane to me that there's a readme on how to give them money. Claude's Max purchase was just as easy as Pro, fwiw.
https://support.anthropic.com/en/articles/11145838-using-cla...
Could have changed recently. I'm not a user so I can't verify.
Using the API would have cost me $1200 this month, if I didn't have a subscription.
I'm a somewhat extensive user, but most of my coworkers are using $150-$400/month with the API.
A ChatBot is more like a fixed-price buffet where usage is ultimately human limited (even if the modest eaters are still subsidizing the hogs). An agentic system is going to consume resources in much more variable manner, depending on how it is being used.
> Some jerk has learned that we prefer CLI things and has come to the conclusion that we should therefore pay extra for them
Obviously these companies want you to increase the amount of their product you consume, but it seems odd to call that a jerk move! FWIW, Anthropic's stated motivation for Claude Code (which Gemini is now copying) was be agnostic to your choice of development tools since CLI access is pretty much ubiquitous, even inside IDEs. Whether it's the CLI-based design, the underlying model, or the specifics of what Claude Code is capable of, they seem to have got something right, and apparently usage internal to Anthropic skyrocketed just based on word of mouth.
It's just a UI difference.
I also just got the email for Gemini ultra and I couldn't even figure out what was being offered compared to pro outside of 30tb storage vs 2tb storage!
Never ascribe to AI, that which is capable of being borked by human PMs.
Not if you're in EU though. Even though I have zero or less AI use so far, I tinker with it. I'm more than happy to pay $200+tax for Max 20x. I'd be happy to pay same-ish for Gemini Pro.. if I knew how and where to have Gemini CLI like I do with Claude code. I have Google One. WHERE DO I SIGN UP, HOW DO I PAY AND USE IT GOOGLE? Only thing I have managed so far is through openrouter via API and credits which would amount to thousands a month if I were to use it as such, which I won't do.
What I do now is occasionally I go to AI Studio and use it for free.
https://github.com/google-gemini/gemini-cli/issues/1427
I also have a pro subscription and wish I could get an API key with that with generous quota as well but pro is just for "consumers" using Gemini app I guess
This is very confusing how they post about this on X, you would think you get additional usage. Messaging is very confusing.
I can't find any way to upgrade to a paid plan, is this even possible for individuals, or is it just "free or enterprise"?
/Edit: Okay I went through the Gemini docs. I found that in Google Cloud you can enable Gemini Code Assist Standard and Enterprise for the account
- Standard is $19.00/mo
- Enterprise is $45.00/mo
Difference between the 2 editions: https://cloud.google.com/products/gemini/pricing
/Edit2: Found the actual management screen: https://codeassist.google.com/overview
You clearly have never had the "pleasure" to work with a Google product manager.
Especially the kind that were hired in the last 15-ish years.
This type of situation is absolutely typical, and probably one of the more benign thing among the general blight they typically inflict on Google's product offering.
The cartesian product of pricing options X models is an effing nightmare to navigate.
If I Could Talk to Satya...
I'd say:
“Hey Satya, love the Copilots—but maybe we need a Copilot for Copilots to help people figure out which one they need!”
Then I had them print out a table of Copilot plans:
- Microsoft Copilot Free - Github Copilot Free - Github Copilot Pro - Github Copilot Pro+ - Microsoft Copilot Pro (can only be purchased for personal accounts) - Microsoft 365 Copilot (can't be used with personal accounts and can only be purchased by an organization)
Copilot is stating the plans for its own services are confusing. Summarizing it as "regurgitation of an LLM" doesn't adequately capture the purpose of the post.
More of my notes here: https://simonwillison.net/2025/Jun/25/gemini-cli/
It's the only argument I can think of, something like Go would be goated for this use case in principle.
Re-running `cargo install <crate>` will do that. Or install `cargo-update`, then you can bulk update everything.
And it works hella better than using pip in a global python install (you really want pipx/uvx if you're installing python utilities globally).
IIRC you can install Go stuff with `go install`, dunno if you can update via that tho.
A single, pre-compiled binary is convenient for the user's first install only.
Its not.
Its convenient for CIs, for deployment, for packaging, for running multiple versions. It's extremely simple to update (just replace the binary with another one).
Now, e.g. "just replacing one file with another" may not have convenience commands like "npm update". But its not hard.
My point is that a pre-compiled binary is extremely more convenient for *everyone involved in the delivery pipeline* including the end-user. Especially for delivering updates.
As someone who's packaged Javascript(node), Ruby, Go and rust tools in .debs, snap, rpms: packaging against a dynamic runtime (node, ruby, rvm etc) is a giant PIAS that will break on a significant amount of users' machines, and will probably break on everyones machine at some point. Whereas packaging that binary is as simple as it can get: most such packages need only one dependency that everyone and his dog already has: libc.
The easiest is running "sudo apt update && sudo apt upgrade" and have my whole system updated. Instead of writing some script to get it done from some github's releases page and hoping that it's not hijacked.
Having a sensible project is what make it easy down the line (including not depending on gnu libc if not needed as some people uses musl). And I believe it's easy to setup a repository if your code is proprietary (Just need to support the most likely distribution, like ubuntu, fedora, suse's tumbleweed,...)
Reasoning: it’s a Python tool, therefore it shouldn’t require anything (any 3rd party package manager) beyond Python.
(Aside from the fact that allowing "use pip" completely defeats the purpose of any other of these mechanisms, so it's a poster-child example of security-theater)
Just `wget -O ~/.local/bin/gemini-cli https://ci.example.com/assets/latest/gemini-cli` (Or the CURL version thereof) It can pick the file off github, some CI's assets, a package repo, a simple FTP server, an HTTP fileserver, over SSH, from a local cache, etc. It's so simple that one doesn't need a package manager. So there commonly is no package manager.
Yet in this tread people are complaining that "a single binary" is hard to manage/update/install because there's no package manager to do that with. It's not there, because the manage/update/install is so simple, that you don't need a package manager!
You might not know the reason ppl use package managers. Installing this "simple" way make it quite difficult to update and remove compared to using package managers. And although they are also "simple", it's quite a mess to manage packages manually in place of using such battle-tested systems
People use package managers for the following:
- to manage dependencies - to update stuff to a specific version or the latest version - to downgrade stuff - to install stuff - to remove stuff
any of these, except for the dependency management, are a single command, or easy to do manually, with a single compiled binary. They are so simple that they can easily be built into the tool. Or handled by your OSs package manager. Or with a "shell script" that the vendor can provide (instead of, or next to, the precompiled binary.
I did not say manually, you infer that. But I never meant that. The contrary: because it's so simple, automating that, or have your distro, OS or package manager do this for you, is trivial. As opposed to that awful "curl example.com/install.sh | sudo tee -" or those horrible built-in updaters (that always start nagging when I open the app - the one moment that I don't want to be bothered by updates because I need the app now)
The only reason one would then need a package manager is to manage dependencies. But a precompiled binary like Go's or Rusts typically are statically compiled so they have no (or at most one) dependency.
Imagine the ease of a single ".targz" or so that includes the correct python version, all pips, all ENV vars, config files, and is executable. If you distribute that - what do you still need pip for? If you distribute that, how simple would turning it into a .deb, snap, dmg, flatpack, appimg, brew package, etc be? (Answer: a lot easier than doing this for the "directory of .py files. A LOT)
pip is there so you don't need to do that. In the deployment world, you really want one version per system for everything and know that everything is in sync. To get that the solution was a distribution of software and a tool to manage them. We then extended that to programming language ecosystem and pip is part of the result.
But for workstation, a lot of people wants the latest, so the next solution was to be able to abstract the programming language ecosystem from the distribution (And you may not have a choice in the case of macOS), so what we get is directory-restricted interactions (go, npm,..) or doing shell magic so that the tooling think it's the system (virtual env,...).
It's a neat trick, but the only reason to do so is if you want to distribute compiled version of a software to customer. But if the user have access to the code, It's better to adapt the software to the system (repositories, flatpak...) or build a system around it (VM, containers, ...).
How many developers have npm installed vs cargo? Many won't even know what cargo is.
Also, react-reconciler caught my eye. Apparently that's a dependency of ink, which lets you write text-based UIs in React.
That and opentelemetry, whatever the heck that is
Anthropic's Claude Code is also installed using npm/npx.
I really don't mind either way. My extremely limited experience with Node indicates they have installation, packaging and isolation polished very well.
https://bun.sh/docs/bundler/executables
https://docs.deno.com/runtime/reference/cli/compile/
Note, I haven't checked that this actually works, although if it's straightforward Node code without any weird extensions it should work in Bun at least. I'd be curious to see how the exe size compares to Go and Rust!
Claude also requires npm, FWIW.
I've forgotten how to count that low.
I guess it needs to start various processes for the MCP servers and whatnot? Just spawning another Node is the easy way to do that, but a bit annoying, yeah.
Obviously everybody's requirements differ, but Node seems like a pretty reasonable platform for this.
If you have to run end point protection that will blast your CPU with load and it makes moving or even deleting that folder needlessly slow. It also makes the hosting burden of NPM (nusers) who must all install dependencies instead of (nCI instances), which isn't very nice to our hosts. Dealing with that once during your build phase and then packaging that mess up is the nicer way to go about distributing things depending on NPM to end users.
Or a hint about the background of the folks who built the tool.
https://www.npmjs.com/package/pkg
or perhaps this one:
https://www.npmjs.com/package/nexe
Btw, the largest deps in this are React and Open Telemetry.
My exact same reaction when I read the install notes.
Even python would have been better.
Having to install that Javascript cancer on my laptop just to be able to try this, is a huge no.
https://huggingface.co/jartine/gemma-2-27b-it-llamafile
If you need to do research, pre-training, RLHF, inference for 5-10 different models across 20 different products, how do you optimally allocate your very finite compute? Weight towards research and training for better future models, or weigh towards output for happier consumers in the moment?
It would make sense that every project in deepmind is in constant war for TPU cycles.
Is your vision with Gemini CLI to be geared only towards non-commercial users? I have had a workspace account since GSuite and have been constantly punished for it by Google offerings all I wanted was gmail with a custom domain and I've lost all my youtube data, all my fitbit data, I cant select different versions of some of your subscriptions (seemingly completely random across your services from a end-user perspective), and now as a Workspace account I cant use Gemini CLI for my work, which is software development. This approach strikes me as actively hostile towards your loyal paying users...
... and other stuff.
Googlers, we should not have to do all of this setup and prep work for a single account. Enterprise I get, but for a single user? This is insufferable.
Have you managed to overcome that?
> hello
[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
⠼ Polishing the pixels... (esc to cancel, 84s)
`GEMINI_API_KEY="" gemini` + login using my Google account solves the problem.
Slow response times detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for faster responses for the remainder of this session.
To avoid this you can utilize a Gemini API Key. See: https://goo.gle/gemini-cli-docs-auth#gemini-api-key
You can switch authentication methods by typing /auth
1) I tried to use it on an existing project asking this "Analyse the project and create a GEMINI.md". It fumbled some non sense for 10-15 minutes and after that it said it was done, but it had only analysed a few files in the root and didn't generate anything at all.
2) Despite finding a way to login with my workspace account, it then asks me for the GOOGLE_CLOUD_PROJECT which doesn't make any sense to me
3) It's not clear AT ALL if and how my data and code will be used to train the models. Until this is pretty clear, for me is a no go.
p.s: it feels like a promising project which has been rushed out too quickly :/
This is my experience with ALL AI editors and models. Half of the time, they say they changed things, but they didn't change anything.
I have thrown very large codebases at this and it has been able to navigate and learn them effortlessly.
Then there are 3rd party channels, if you have a recent samsung phone, you get 1 yr access to AI features powered by gemini, after which you need to pay. And lord knows where else has google been integrating gemini now.
Ive stopped using google's AI now. Its like they have dozens of teams within gemini on completely different slack sessions.
Definitely not because of Claude Code eating our lunch!
What are they supposed to do?
“Oh no, they’ve released CLI tool before us! It’s game over, we can’t do it too, we need to come up with something else now!”
If you mean: This is "inspired" by the success of Claude Code. Sure, I guess, but it's also not like Claude Code brought anything entirely new to the table. There is a lot of copying from each other and continually improving upon that, and it's great for the users and model providers alike.
If you don't think claude code is just miles ahead of other things you haven't been using it (or well)
I am certain they keep metrics on those "power users" (especially since they probably work there) and when everyone drops what they were using and moves to a specific tool that is something they should be careful of.
Which is surprising because at first i was ready to re-up my Google life. I've been very anti-Google for ages, but at first 2.5 Pro looked so good that i felt it was a huge winner. It just wasn't enjoyable to use because i was often at war with it.
Sonnet/Opus via Claude Code are definitely less intelligent than my early tests of 2.5 Pro, but they're reasonable, listen, stay on task and etc.
I'm sure i'll retry eventually though. Though the subscription complexity with Gemini sounds annoying.
Sometimes I also yeet that file to Codex and see which implementation is better. Clear context, read that file again, give it a diff that codex produce and tell it do a review.
Wholeheartedly agree.
Both when chatting in text mode or when asking it to produce code.
The verbosity of the code is the worse. Comments often longer than the actual code, every nook and cranny of an algorithm unrolled over 100's of lines, most of which unnecessary.
Feels like typical code a mediocre Java developer would produce in the early 2000's
So, google's codebase
https://youtu.be/HC6BGxjCVnM?feature=shared&t=36
It's a FOSS MCP server I created a couple of weeks ago:
- https://getvoicemode.com
- https://github.com/mbailey/voicemode
# Installation (~/.gemini/settings.json)
{
I just symlink now to AGENTS.md
Claude Code seems to require the CLAUDE.md filename.
https://technicalwriting.dev/ai/agents/
You might want to tell Claude not to write so many comments but you might want to tell Gemini not to reach for Kotlin so much, or something.
A unified approach might be nice, but using the same prompt for all of the LLM "coding tools" is probably not going to be as nice as having prompts tailored for each specific tool.
Instructions for Claude:
- ...
- ...
Instructions for Gemini:
- ...
- ...
- Open-source (Apache 2.0, same as OpenAI Codex)
- 1M token context window
- Free tier: 60 requests per minute and 1,000 requests per day (requires Google account authentication)
- Higher limits via Gemini API or Vertex AI
- Google Search grounding support
- Plugin and script support (MCP servers)
- Gemini.md file for memory instruction
- VS Code integration (Gemini Code Assist)
If it sounds too good to be true, it probably is. What’s the catch? How/why is this free?
Also they can throttle the service whenever they feel it's too costly.
It's more focused on implications for docs strategy (I'm worried that agent providers are steering us towards duplicating information that's already in eng docs) rather than user best practices i.e. "put this into your agent doc to improve agent performance"
https://technicalwriting.dev/ai/agents/
For Code Assist, here's their enterprise-oriented page vs their consumer-oriented page:
https://cloud.google.com/gemini/docs/codeassist/security-pri...
https://developers.google.com/gemini-code-assist/resources/p...
It seems like these are both incomplete and one would need to read their overall pages, which would be something more like
https://support.google.com/a/answer/15706919?hl=en
https://support.google.com/gemini/answer/13594961?hl=en#revi...
It generates a bunch of fake activity indicators based on your prompt, then cycles through them on a timer. It has no bearing on the actual activity going on underneath.
It appears to be much slower than Claude Code, possibly due to being overloaded, but it feels like it thinks a lot more before beginning to suggest file edits. The permissions aren't as nice either. Where Claude Code suggests "allow uv run pytest without approval", Gemini suggests "allow uv run without approval", which is broader than I would like.
1. First authentication didn't work on my headless system, because it wants an oauth redirect to localhost - sigh.
2. Next, WebFetch isn't able to navigate github, so I had to manually dig out some references for it.
3. About 2 mins in, I just got ``` ℹ Rate limiting detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for faster responses for the remainder of this session. ``` in a loop with no more progress.
I understand the tool is new, so not drawing too many conclusions from this yet, but it does seem like it was rushed out a bit.
In comparison to Claude Code Opus 4, it seemed much more eager to go on a wild goose chase of fixing a problem by creating calls to new RPCs that then attempted to modify columns that didn't exist or which had a different type, and its solution to this being a problem was to then propose migration after migration to modify the db schema to fit the shape of the rpc it had defined.
Reminded me of the bad old days of agentic coding circa late 2024.
I'm usually a big fan of 2.5 Pro in an analysis / planning context. It seems to just weirdly fall over when it comes to tool calling or something?
I guess I will use something else. This is all very annoying given that I actually pay for Gemini Pro...
Gemini CLI does not take new direction especially well. After planning, I asked it to execute and it just kept talking about the plan.
Another time when I hit escape and asked it to stop and undo the last change, it just plowed ahead.
It makes a lot of mistakes reading and writing to files.
Some, but by no means all, of the obsequious quotes from my first hour with the product: - “You’ve asked a series of excellent questions that have taken us on a deep dive ...” - “The proposed solution is not just about clarity; it’s also the most efficient and robust.”
Therefore I was not surprised to experience Gemini spiraling into an infinite loop of self-deprecation - literally it abandoned the first command and spiraled into 5-10line blocks of "i suck"
---
Right now there is one CLI that influences and stands far and beyond all others. Smooth UX, and more critical some "natural" or inherent ability to use its tools well.
Gemini can also achieve this - but i think it's clear the leader is ahead because they have a highly integrated training process with the base model and agentic tool use.
1. The thing going in a circle trying to fix a bug by persistently trying different permutations of an API interface it never bothered to check the definition of. Isn't that why it's internet connected?
2. When I asked it to just analyze instead of change stuff. It just hung for 20 minutes giving me responses saying that gemini-2.5-pro was slow, and that it was switching to 2.5-flash, with no other output to indicate what it was doing other than those cute scrolling messages that mean nothing.
At least in Claude it's clear that the messages mean nothing, because they're clearly generic. Gemini gives you the impression the status messages mean something since they're sort of related to the topic being worked on.
I use aichat now but it's not perfect. https://github.com/sigoden/aichat
The UI on this tool is much better.
How did they do that pretty "GEMINI" gradient in the terminal? is that a thing we can do nowadays? It doesn't seem to be some blocky gradient where each character is a different color. It's a true gradient.
(yes I'm aware this is likely a total clone of claude code, but still am curious about the gradient)
And it is a blocky gradient, each character is a color. It's just the gradient they chose is slow enough that you don't notice.
Never had anything like this with claude code.
I've used Gemini 2.5 Pro quite a lot and like most people I find it's very intelligent. I've bent over backwards to use Gemini 2.5 Pro in another piece of work because it's so good. I can only assume it's the gemini CLI itself that's using the model poorly. Keen to try again in a month or two and see if this poor first impression is just a teething issue.
I told it that it did a pretty poor job and asked it why it thinks that is, told it that I know it's pretty smart. It gave me a wall of text and I asked for the short summary
> My tools operate on raw text, not the code's structure, making my edits brittle and prone to error if the text patterns aren't perfect. I lack a persistent, holistic view of the code like an IDE provides, so I can lose track of changes during multi-step tasks. This led me to make simple mistakes like forgetting a calculation and duplicating code.
https://github.com/vadimdemedes/ink
Tried upgrading to the Standard plan through Google Cloud with the hope that it would allow me to do more, but after switching my account to the now-paid account, it still almost instantly downgraded me to 2.5-flash
For the times when I was able to use 2.5-pro, the output has been very good. But the moment it switches to flash, the quality goes down by about 80% and I would never let it code on anything
It is vastly more difficult to understand what Google is offering compared to the others, to what cost, getting an API-key or similar, understanding usage/billing across the suite, etc.
I wouldn't expect any regular person to bother signing up for any of Google's products, let alone understand what they're really offering.
Because it says in the README:
> Authenticate: When prompted, sign in with your personal Google account. This will grant you up to 60 model requests per minute and 1,000 model requests per day using Gemini 2.5 Pro.
> For advanced use or increased limits: If you need to use a specific model or require a higher request capacity, you can use an API key: ...
When I have the Google AI Pro subscription in my Google account, and I use the personal Google account for authentication here, will I also have more requests per day then?
I'm currently wondering what makes more sense for me (not for CLI in particular, but for Gemini in general): To use the Google AI Pro subscription, or to use an API key. But I would also want to use the API maybe at some point. I thought the API requires an API key, but here it seems also the normal Google account can be used?
It integrates with VS Code, which suits my workflow better. And buying credits through them (at cost) means I can use any model I want without juggling top-ups across several different billing profiles.
Ultimately quality wins out with LLMs. Having switched a lot between openai, google and Claude, I feel there's essentially 0 switching cost and you very quickly get to feel which is the best. So until Claude has a solid competitor I'll use it, open source or not
A more credible argument is security and privacy, but I couldn't care less if they're managing to be best in class using haiku
>This project leverages the Gemini APIs to provide AI capabilities. For details on the terms of service governing the Gemini API, please refer to the terms for the access mechanism you are using:
Click Gemini API, scroll
>When you use Unpaid Services, including, for example, Google AI Studio and the unpaid quota on Gemini API, Google uses the content you submit to the Services and any generated responses to provide, improve, and develop Google products and services and machine learning technologies, including Google's enterprise features, products, and services, consistent with our Privacy Policy.
>To help with quality and improve our products, human reviewers may read, annotate, and process your API input and output. Google takes steps to protect your privacy as part of this process. This includes disconnecting this data from your Google Account, API key, and Cloud project before reviewers see or annotate it. Do not submit sensitive, confidential, or personal information to the Unpaid Services.
If you pay for API: No
1: https://block.github.io/goose/
Microsoft has a track record of delivering enterprise solutions that dates back to when Page and Brin were toddlers.
---
Right now there is one CLI that influences and stands far and beyond all others. Smooth UX, and more critical some "natural" or inherent ability to use its tools well.
Gemini can also achieve this - but i think it's clear the leader is ahead because they have a highly integrated training process with the base model and agentic tool use.
Set up not too long ago, and afaik pretty load-bearing for this. Feels great, just don’t ask me any product-level questions. I’m not part of the Gemini CLI team, so I’ll try to keep my mouth shut.
Not going to lie, I’m pretty anxious this will fall over as traffic keeps climbing up and up.
It's interesting to see how one team / product gets rebranded to another in Google.
Google services have become a patchwork of painfully confounding marketing terms that mean nothing and obfuscate what they actually provide.
Whenever some enthusiastic developer suggests a new google service at work they are quickly dissuaded by senior developers that have been through their churn before.
A bit gutted by the `make sure it is not a workspace account`. What's wrong with Google prioritising free accounts vs paid accounts? This is not the first time they have done it when announcing Gemini, too.
No mention of accessibility in https://github.com/google-gemini/gemini-cli/blob/0915bf7d677... either
Again, I haven't used aider in a while so perhaps that's not the case.
For complicated changes Aider is much more likely to stop and need help, whereas Claude Code will just go and go and end up with something.
Whether that's worth the different economic model is up to you and your style and what you're working on.
I hate this openwashing. It's a closed model, its weights are nowhere to be seen! (not to mention the training data, the real "source" of a LLM)
The fact that there is a small component that is open source that accesses this closed model doesn't change that at all.
> 429: Too many requests
Mind you, this is with a paid API key
https://github.com/opencode-ai/opencode
At the bottom of README.md, they state:
"This project leverages the Gemini APIs to provide AI capabilities. For details on the terms of service governing the Gemini API, please refer to the terms for the access mechanism you are using:
* Gemini API key
* Gemini Code Assist
* Vertex AI"
The Gemini API terms state: "for Unpaid Services, all content and responses is retained, subject to human review, and used for training".
The Gemini Code Assist terms trifurcate for individuals, Standard / Enterprise, and Cloud Code (presumably not relevant).
* For individuals: "When you use Gemini Code Assist for individuals, Google collects your prompts, related code, generated output, code edits, related feature usage information, and your feedback to provide, improve, and develop Google products and services and machine learning technologies."
* For Standard and Enterprise: "To help protect the privacy of your data, Gemini Code Assist Standard and Enterprise conform to Google's privacy commitment with generative AI technologies. This commitment includes items such as the following: Google doesn't use your data to train our models without your permission."
The Vertex AI terms state "Google will not use Customer Data to train or fine-tune any AI/ML models without Customer's prior permission or instruction."
What a confusing array of offerings and terms! I am left without certainty as to the answer to my original question. When using the free version by signing in with a personal Google account, which doesn't require a Gemini API key and isn't Gemini Code Assist or Vertex AI, it's not clear which access mechanism I am using or which terms apply.
It's also disappointing "Google's privacy commitment with generative AI technologies" which promises that "Google doesn't use your data to train our models without your permission" doesn't seem to apply to individuals.
Well, not sure that it makes sense to do it, anyway I've tried to run in in a cell and in the google colab terminal. Still waiting for auth (?)
better question is why do you need a modle specific CLI when you should be able to plug in to individual models.
Haven't used Jules or codex yet since I've been happy and am working on optimizing my current workflow
This perfectly demonstrates the benefit of the nodejs platform. Trivial to install and use. Almost no dependency issues (just "> some years old version of nodejs"). Immediately works effortlessly.
I've never developed anything on node, but I have it installed because so many hugely valuable tools use it. It has always been absolutely effortless and just all benefit.
And what a shift from most Google projects that are usually a mammoth mountain of fragile dependencies.
(uv kind of brings this to python via uvx)
Piping a downloaded shell script to bash seems pretty much the same effort.
It would be much better if I didn’t have to reinstall it every time I change Node versions.
https://imgur.com/ZIZkLU7
This is shown at the top of the screen in https://aistudio.google.com/apikey as the suggested quick start for testing your API key out.
Not a great look. I let our GCloud TAM know. But still.
https://blog.google/technology/developers/introducing-gemini...
I'm happy I can switch models as I like with Aider. The top models from different companies see different things in my experiences and have their own strengths and weaknesses. I also do not see Anthropic's models on the top of my (subjective) list.
However i didn't use Claude Code before the Max plan because i just fret about some untrusted AI going ham on some stupid logic and burning credits.
If it's dumb on Max i don't mind, just some time wasted. If it's dumb on credits, i just paid for throw away work. Mentally it's just too much overhead for me as i end up worrying about Claude's journey, not just the destination. And the journey is often really bad, even for Claude.
You can think of Aider as being a semi-auto LLM process. First you ask it to do something. It goes through a generate -> reflect -> refine loop until it feels like it has achieved the goal you give it. Aider has a reflection limit so it'll only do this loop a limited number of times and then it will add/remove the code that it deems fit. Then it'll give you instructions to run. You can run those instructions (e.g. to actually run a script) and then append the results from the run into the context to get it to fix any issues, but this is optional. What you send in the context and what you ask the models to do are in your hands. This makes iteration slower and the LLM does less but it also can potentially keep costs lower depending on what you delegate to the LLM and how often you iterate with it.
Claude Code, Codex, and I suspect Gemini CLI on the other hand will autonomously run your code then use the output to continue refining its approach autonomously until the goal is reached. This can consume many more tokens, potentially, than hand guiding Aider, because its potential for iteration is so much longer. But Claude Code and the like also need a lot less direction to make progress. You can, for example, ask it to do a big refactor and then just leave to lunch and come back to see if the refactor is done. Aider will require babying the whole way.
So yes with Claude Code you can grab the Max plan and not worry too much about usage. With Aider you'll be paying per API call, but it will cost quite a bit less than the similar work if using Claude Code in API-mode.
I concluded that – for me – Claude Code _may_ give me better results, but Aider will likely be cheaper than Claude Code in either API-mode or subscription-mode. Also I like that I really can fill up the aider context window if I want to, and I'm in control of that.
I'd be pretty surprised if that was the case - something like ~8 hours of Aider use against Claude can spend $20, which is how much Claude Pro costs.
Sure you might make a few quick wins from careless users but overall it creates an environment of distrust where users are watching their pennies and lots are even just standing off.
I can accept that with all the different moving parts this may be a trickier problem than a pre paid pump, or even a Telco, and while to a product manager this might look like a lot of work/money for something that “prevents” users overspending.
But we all know that’s shortsighted and stupid and its the kind of thinking that broadly signals more competition is required.
How do I reset permissions so it always asks again for `git` invocations?
Thanks!
Gemini Pro and Claude play off of each other really well.
Just started playing with Gemini CLI and one thing I miss immediately from Claude code is being able to write and interject as the AI does its work. Sometimes I interject by just saying stop, it stops and waits for more context or input or ai add something I forgot and it picks it up..
That's a ton of free limit. This has been immensely more successful than void ide.
We are now three years into the AI revolution and they are still forcing us to copy and paste and click click crazy to get the damn files out.
STOP innovating. STOP the features.
Form a team of 500 of your best developers. Allocate a year and a billion dollar budget.
Get all those Ai super scientists into the job.
See if you can work out “download all files”. A problem on the scale of AGI or Dark Matter, but one day google or OpenAI will crack the problem.
When you hop over to platforms that use the API, the files get written/edited in situ. No copy/pasting. No hunting for where to insert edited code.
Trust me it's a total game changer to switch. I spent so much time copy/pasting before moving over.
Not impressed. These companies have billions at their disposal, and probably pay $0 in tax, and the best they can come up with is this?
I do not get it why they don’t pick Go or Rust so i get a binary.
While writing this comment, thinking that there should be some packaging tool that would create a binaries from npx cli tools. I remember such things for python. Binaries were fat, but it is better then keep nodejs installed on my OS
- the cli runs in whatever your active (nvm, asdf, etc) is configured in that directory. So for each version of node you work in you need to install a different copy of gemini.
- if you work in an older version of nodejs, then you need to run 2 different versions of node (in different tabs) to use the tool and run your project.