iTerm2 feature request: disable all AI-related features
gitlab.com
gitlab.com
It isn't always on or anything. It's actually kind of hard to find and use.
Is there maybe something I'm missing? Or is this a general backlash against AI?
edit: several rephrases of the middle sentence
The only two AI interfaces I see are the "Engage Artificial Intelligence" menu item where you ask it how to form a command, and then a second interface in the Toolbelt called Codecierge where it tries to complete a task you tell it to do.
Both of which are completely optional and require an OpenAI key. If you do use them you're sending your request to OpenAI but as far as I can tell it doesn't get any of your command history or anything like that.
It's a threat. Disrespectful to users.
Maybe it does, maybe it doesn't! If it doesn't maybe it will someday! When just the right person gets hired into exec.
Let's not blame iTerm2, which is a highly useful, amazing piece of software that many of us have relied on on every day for years and have never paid anything to use.
If you really are so worried about the AI feature being part of iTerm2 then go fork it and strip the AI functionality yourself: https://github.com/gnachman/iTerm2
I prefer Apple’s built-in Terminal but even I’m wincing at this new “feature” being included in iTerm2.
Honestly iTerm has always been loaded with features that of dubious usefulness. They all tend to be useful to someone though. This is just another one on the list.
I think the biggest failure here was the way it was communicated. Extremely ambiguous about WHAT it actually does and any privacy concerns.
I just can’t recall any other product or tech that has so many executive types and techbros frothing so intensely at the mouth and desperate to shoehorn it into everything like this.
Whether that implies it’s ok to have a toggle or not is frequently not up to technologists it’s up to compliance folk who may have no interest or incentive to look deeper.
And not for nothing it’s a weird coupling. I can’t think of a single reason I’d integrate with an ai agent in this way over a more unixy approach.
The AI Agent part is a bit weird, but the "Engage AI" feature is pretty nice. Just hit "cmd+y" and type something you want to do like "Clone without blobs", or "get the last two fields from a CSV", and it shows you the command which you can then run with "shift+enter"
Do these locations have no devices running Windows, OSX, or iOS?
If companies are that worried about rogue employee access to forbidden AI APIs, the network layer seems like a more appropriate place for those blocks.
While they're allowed to do whatever they want, and I'm happy for the years of wonderfully useful software they've provided, 3rd party AI features are radioactive for some organizations and the suddenness of this is jarring to impacted folks.
Yes, it's overkill, but legal's stance is that anything that can possibly talk to a third party AI service is forbidden regardless of the other technical solutions in place preventing information leakage.
FWIW, anything that has telemetry to third parties (crash reports, usage stats) are also forbidden, with extremely limited exceptions that legal has approved.
Technical means, we monitor for every outbound connection attempt and DNS request and can trace it back fairly easily to a particular application. We've certainly caught software that was reporting back when it's stated otherwise in the privacy policy or website.
Legal does feel better when there's an entity they can seek damages from in the event that a piece of software turned out to be malicious. They're less inclined to give free software the same benefit of the doubt.
So then your company just needs to block AI at the network level then?
Within a few keystrokes you could already very easily communicate with third party AI services via terminal prior to 3.5 (curl... etc)
This is a very weird over-reaction considering what iTerm2 and shells in general are already capable of.
And iTerm2 itself has allowed for custom python scripts to be loaded for a long time [https://iterm2.com/python-api/] easily modifying the behavior (and also allowing outbound connections wherever...)
If you work in a sensitive environment and outbound connections to OpenAI are already blocked on the network level (or even better iTerm is only able to communicate to whitelisted hosts, then problem solved... there really is no issue here for people to be so worked up about).
Sounds like legal really needs to understand these tools better.
Do you mean your company has people who can’t use Terminal.app at all — the iTerm2 ban means they can’t do their job?
Or do you mean the switch to Terminal.app affects productivity in some negative way? Curious what that means and how that gets measured.
I’ve used both and I don’t understand how one terminal emulator makes someone more or less productive — whatever that means — in any significant way. They do the same thing with mere superficial differences. Not liking how something looks or missing a convenience feature doesn’t necessarily mean less productive.
And I'm not even like other commenters who have strict security needs around their work where things that can access the network need to be vetted before being approved for use.
I think some of it is backlash against AI though; you're probably right about that.
Wonder if these people ever gave the author any credit for the countless other features he wrote for them that they've enjoyed for years, or if they only come here to complain. I suspect most of them haven't.
Really an amazing amount of entitlement on display.
There's a reason many of us use iTerm2.app over Terminal.app...
But Terminal.app is always right there if you prefer your terminal without any features. This really isn't something to be so upset about.
AI
==
- Add AI-powered natural language command generation. Enter a prompt in the composer and select Edit > Engage Artificial Intelligence. You will need to provide an OpenAI API key since GPT costs money to use.
- A new AI feature in the Toolbelt, "Codecierge", lets you set a goal and then walks you step-by-step to completing it by watching the terminal contents. It requires you to supply an OpenAI API key.
[0] https://iterm2.com/downloads/stable/iTerm2-3_5_0.changelog
Basically there's no "AI feature" enabled by default then, right? What are all these people talking about in the issue then? I am so confused.
Which begs the question: what happens when any key (even an invalid one) gets added to iTerm for any reason (e.g. dark pattern, settings export/import, buggy update, accident, forgetting to remove an old key, a sentinel message saying: "do not use AI in this department", etc...).
Besides that there's other issues,
- What happens if the training data is poisoned to compromise developers machines with a `curl ... | sh`?
- What about developers who can no longer use the tool due to policies/regulations that rule out products with LLM features, or a feature that has the potential to send data to a third party?
- What happens if the LLM hallucinates an env variable's value/existence and what should be a simple `rm -rf $BUILD/` turns into `rm -rf /` when $BUILD is not defined?
I'm sure there's more concerns too.
...uh why on earth would it be doing this?
Do you have any evidence this behavior is happening?
OpenAI integration is disabled by default, you have to actively enable it before it will send anything to OpenAI's servers.
Could you please point me to the code (or provide any other proof that this is happening)? This seems either insane or like a huge bug, so I have a hard time taking anyone's word for it.
iTerm2 and AI Hype Overload
> having AI in my terminal is a deal-breaker.
Okay.
> I’ll be liable for breaching my NDA if that gets sent to some network service.
Right...
> government regulatory requirements prohibit the use of software with so-called "AI" features for certain tasks
Sure...
> Hate to be that guy, but it is not configured by default, not disabled. It should be disableable feature even if OpenAI key is entered, for example.
Uh huh...
> Similar working position to Tom N & Matt B above, I'm working in an organisation where any knowledge of our products must not be allowed to leak within or outside the company.
Right Stephen, sure, how did we not think of that...
> I rolled back the update on my end, but my pihole shows some openai queries from my Mac. It's hard to say whether it was iTerm o not as I use chat gpt on the browser.
Hmmm...
I don't really know the specifics of the feature, I don't use iTerm2. It sounds like you can opt-in (I'm going to avoid using the word enable or configure) to a feature that uses OpenAI's API to auto-complete terminal commands.
It's a macOS application, these users visit the wider Internet, they are already receiving personalized Apple and Google networked experiences, they are already sending a lot of telemetry. Let's suppose OpenAI, like Apple and Google, makes a good-faith effort to protect your data and keeps its promises about not using API driven calls for training in a way that could leak private information to other OpenAI users. Don't litigate this, there's nothing to serve in the interest of curiosity here.
Is there an objective, secular, non-vibes basis for being this pissed off about a new feature?
Why do people draw the line at some kinds of telemetry, but not others?