Remix.run Logo
iTerm2 Web Browser(iterm2.com)
133 points by danielfalbo a day ago | 111 comments
Doches a day ago | parent | next [-]

> This feature exists because: - Many iTerm2 features translate well to web browsing - It provides a unified terminal and browser experience - A former colleague suggested this idea in 2014 and I haven't been able to stop thinking about it. - I am maybe having a midlife crisis and this is cheaper than a sports car.

I can't put my finger on why, but this might be the most refreshing thing I've seen in a README in years.

nickdothutton a day ago | parent | next [-]

I’m convinced that a term/browser can somehow help in the fight against ensh*ttification and general spoiling of the internet experience for certain classes of user.

Edited for typo.

sceptic123 a day ago | parent [-]

except:

> AI Integration

Anonbrit a day ago | parent [-]

It's off-by-default AI integration though, which is far less of an issue. If AI is useful for you then you can turn it on, for the rest of us we don't even notice by default unless you go into the config menus

karmakaze a day ago | parent [-]

I also read in a different post that it has settings to limit what the AI can do.

aa-jv a day ago | parent | prev [-]

As much as I despise the feature (security), I absolutely respect the motivation to do it. I think this is why its so refreshing - one of those itches being scratched which, sure - why not? - but then again, omfg, just no.

catoc a day ago | parent | next [-]

What is the additional security hazard you see?

aa-jv a day ago | parent [-]

Yet Another Browser Attack Surface. iTerm has already had a few mishaps in the security department .. adding another layer of stack to it just increases the risk.

catoc a day ago | parent [-]

From what I understand it’s just a WKWebView. I’m trying to understand why the embedding of a WKWebView poses additional risk because it’s embedded in iTerm? (aside from the suggested general earlier security mishaps).

drivingmenuts a day ago | parent | prev [-]

It is probably a useful feature to be able to have documentation visible while you’re working in the terminal. But it does violate the concept that a program should do one thing well and nothing else, so I don’t know how I feel about it

dgl a day ago | parent | prev | next [-]

> A former colleague suggested this idea in 2014 and I haven't been able to stop thinking about it. - I am maybe having a midlife crisis and this is cheaper than a sports car.

I love the honesty.

frou_dh a day ago | parent | prev | next [-]

This is just one feature of the v3.6 release:

https://iterm2.com/downloads/stable/iTerm2-3_6_1.changelog

It's quite a treat going through iTerm changelogs and finding new gems. For example, this sounds nice:

> [Timestamps] can be configured to be relative to a particular line by right-clicking and selecting "Set Baseline for Relative Timestamps"

The following is interesting too, because it seems to work on an individual cell basis and not just one overall background colour:

> [in editors and other TUIs] Detect when there is a non-default background color and extend it into the margins. In Minimal [theme], it is also extended into window chrome.

hn_throw2025 a day ago | parent | prev | next [-]

Amazing terminal, it has served me so well over the years. I wouldn’t consider anything else. If you lean in to the advanced features, there’s nothing to touch it. Can’t believe it’s free, but I am very grateful for the fact.

Thanks, George!

colinb a day ago | parent | next [-]

It is free, but it's also easy to throw money at George, as you've probably already done. The About menu has links for Patreon and Github Sponsors. I've only ever used the former. Given how much of my time is spent in the terminal, and how good it is, it seems like some money well spent to me.

sawyna a day ago | parent | prev [-]

Can you enlighten me with some advanced features that you use? I would love to start using them. I have always used iTerm, but never really used advanced stuff.

hn_throw2025 a day ago | parent [-]

Sure, here are some to look at :

https://iterm2.com/features.html

I'll just mention some that I have used and found good.

The drop-down visor like Yakuake is great.

Instant Replay is handy for ephemeral text that gets wiped from the terminal, like TUI apps and scaffolding tools. You can imagine that there's always something like Asciinema recording into a buffer, so you can stop and rewind to catch any output you missed.

The notifications are useful.. I can start a long running task, get on with other things, and get a MacOS notification when that terminal rang a bell.

Global search is good, and searches across tabs. I also set a large scrollback buffer, so I can do a reverse incremental search for strings. You can also use the Triggers facility to highlight any string matches (or regex) whenever they occur in the terminal output. This is great when you are tailing a log and want to know immediately when an expression is output, alerting you that a condition has occurred.

Jumping up and down through the command entry points in a session is useful, if there's a lot of output to cut through (I think vscode terminal also does this).

I've also used the toolbelt side-window when I want to repeat verbose commands on a host where I don't want to set up aliases. There is much more you can do with the toolbelt, including automatically capturing text that matches regex patterns.

There's a lot I haven't mentioned, but those are some features I can recall finding useful.

otikik a day ago | parent | prev | next [-]

I love iTerm2 and if the author wants to experiment, I'm fine with it having some ... "extravagant" features. I will definitely not use it at all but as long as it doesn't stand in my way, he can have some fun, after all he's helping me for free.

semi-extrinsic a day ago | parent | prev | next [-]

When the window management and UI/UX of your OS is so bad the terminal emulator devs decide they can do a better job themselves...

nixpulvis a day ago | parent [-]

Problems we wouldn't have if more people used i3/sway.

pjerem a day ago | parent [-]

Which you can't use on macOS.

Use Linux i guess ? I would if I could but my employer let me chose between a shitty Windows 11 PC or a M4 Pro Macbook.

articulatepang a day ago | parent | next [-]

I use https://github.com/nikitabobko/AeroSpace and it works great! After 15 years of using ratpoison, xmonad and i3 on Linux machines at work, I finally have a palatable macOS personal laptop.

milch a day ago | parent | prev [-]

There is aerospace on macOS, which works very well IME. Some missing features but active development and the author is happy to accept PRs as long as they fit within the project scope

adamddev1 a day ago | parent | prev | next [-]

More than this feature I'm super happy to have RTL text support. There are still a few little rough edges but I haven't found anything else on MacOS that can handle it and finally I can use NeoVim with RTL/bidi support! George is fantastic and his passion shines through this project.

wewewedxfgdf a day ago | parent | prev | next [-]

If you're a Mac user and not using iTerm2 then run don't walk to download it.

jillesvangurp a day ago | parent | next [-]

It's one of the first things I install on a new mac. Along with Firefox. So the browser is a bit redundant for me.

I actually only use a fraction of the features but the ones I do use seem to be lacking in the few linux terminals I've used.

Things I like:

- easy to switch between tabs (command + arrow), use this all the time

- easy to copy paste (command+c, command+v, same as in the rest of the OS).

- easy to scroll (just passes through scroll events to things like less and bat)

- looks alright with the right font setup

- right click split horizontally/vertically; easy and I do this all the time. And no need to remember the key combos for that.

- it remembers the directory of each tab when I restart it. Simple feature but so nice.

There are a lot of smaller features that you won't notice until they aren't there.

The keybindings are of course a nice side effect of not having to use ctrl for everything, which conflicts with a lot of stuff in terminals (e.g. ctrl+c aborts stuff). There is the "windows" key of course for the last few decades but somehow using that as a modifier never caught on in the Linux world. So keybindings are a bit more awkward. So you have to remember to press ctrl+shift+c, depending on what window you are looking at. Which is something I get wrong every few times I do it.

Anyway, iterm2 is the best terminal across all operating systems I'm aware off. I have a linux laptop as well and I haven't really found anything I liked so far. And I tried essentially all the popular ones.

IMHO the main issue in this space is people geeking out on configuration languages but then forgetting to add a nice usable preference screen in their ultimate iterm2 killer (which seems to set the bar for a lot of these things). I'm sure it's great if you take a sabbatical and make a deep study of the freaking manual to program your settings correctly. But that just makes for a really high barrier of entry. Iterm2 in comparison is very easy to configure but even if you don't do that, it just generally does a lot of things right out of the box that don't need micromanaging.

Anyway, nice upgrade and just generally nice to see this oss product stay fresh and relevant over the years.

skydhash a day ago | parent | next [-]

> There is the "windows" key of course for the last few decades but somehow using that as a modifier never caught on in the Linux world.

In the window manager side of linux, Super ("Mod4") is often used for the windows manager level keybindings.

As for the configuration thing, those things are usually checked in into the dotfiles. So you've done it once four years ago, and you never think about it again. iterm2 is nice, but I'm not sure about the ergonomics advantage for a power user.

asimovDev a day ago | parent | prev | next [-]

Anyone here uses command mode tmux in iTerm (tmux integration) ? I used it a couple of times and thought it's pretty neat. I rarely need to use tmux though, so no idea how well it works with more advanced workflows and needs

sceptic123 a day ago | parent | prev [-]

The only one of the things on your list that Terminal.app doesn't do is the split tabs, although tab switching there is using the more traditional cmd+shift+[]

walthamstow a day ago | parent | prev | next [-]

I'd modify to say "if you're using Terminal.app". Kitty and Alacritty etc exist and people do like them.

BeFlatXIII a day ago | parent | prev | next [-]

I moved to kitty a while back. IIRC, it was because iTerm2 would take up lots of RAM on my old 8GB MacBook Air. But never any hard feelings to iTerm2, perhaps I ought to switch back on my 64GB new machine.

feketegy a day ago | parent | prev [-]

I would use any other emulator than iTerm2. They are much more capable and more performant even if they are not as feature rich as iTerm2.

Perz1val a day ago | parent | prev | next [-]

First I thought "WTF why". Then "WTF it's actually quite nice, why do I like this"

ukoki a day ago | parent [-]

First I thought "WTF why" and I'm still thinking "WTF why"

rekoil a day ago | parent [-]

First I thought "WTF why?", and then it appeared in my terminal and then I thought "what the hell, I thought I turned this stuff off!?!"

mechanicum a day ago | parent | prev | next [-]

A small practical example of how you might use this: https://imgur.com/mTS0vHO

Helix on the left and a Clojure repl at top-right in terminal panes. Portal data viewer in a browser pane at bottom-right.

fny a day ago | parent [-]

But why wouldn't you just use any old window tiling manager?

yunwal a day ago | parent | next [-]

Having 2 separate windows requires an extra mouseclick for any interaction on most OSes. For example, try to highlight text on a non-focused window.

Obviously a tiny extra effort, and not sure it justifies this feature, but it can add up for some things.

Wowfunhappy a day ago | parent [-]

Fwiw macOS does not require an extra mouse click for this, outside of limited circumstances (likely very limited these days) such as X11 apps.

Wowfunhappy 21 hours ago | parent [-]

Actually wait... yes it does need an extra click for text selection! Scrolling works without focusing the window though.

Anonbrit a day ago | parent | prev [-]

Because all the editor keyboard shortcuts and such work in the browser tab

actionfromafar a day ago | parent | prev | next [-]

View files on remote hosts via SSH Integration using URLs like: iterm2-ssh://example.com/home/user/file.jpg

That's oddly compelling.

lostmsu a day ago | parent [-]

Sounds like an attack vector

kyleee 14 hours ago | parent [-]

Double edged sword. Compelling and an attack vector

openmarkand a day ago | parent | prev | next [-]

First, we got 3D accelerated terminals, then AI assisted terminals, now web browser enabled terminals.

Tomorrow we have operating system in the terminal.

mafro a day ago | parent | next [-]

There are only two essential apps on my Mac. iTerm2, and a browser

carlhjerpe a day ago | parent [-]

When I quit my job and had to get my own laptop I bought a Chromebook. If your usecase is Terminal + Browser they're really very good.

I don't like that I'm supporting the Browser monopoly, but the battery life is supreme++(ARM versions at least), the Linux integration is great, I can run Android apps too(rarely though).

PWA's are integrated really well into ChromeOS so you won't be running one Electron instance per webapp. (My PWA's are Kagi Assistant, WhatsApp, SchildiChat(Element), Discord)

ekianjo a day ago | parent | prev | next [-]

> Tomorrow we have operating system in the terminal.

That's called emacs

BeFlatXIII a day ago | parent | prev [-]

> Tomorrow we have operating system in the terminal.

That's called eMacs.

hakunin a day ago | parent | prev | next [-]

This is surprisingly on point for any (esp. backend/fullstack) web devs who have terminal and editor (2 separate windows) maximized side by side in MacOS, where it only natively supports 2 maximized windows at a time. I used to have terminal + editor in one space, and terminal + browser in another. And sometimes I would add another space with editor+browser, in case I was doing something more front-end oriented. Now I can have everything in one space on MacOS.

whirlwin a day ago | parent | prev | next [-]

Would be nice if the browser tabs had a terminal pane inside. Usually I'm reading something in the browser that I want to immediately run via the terminal.

mechanicum a day ago | parent [-]

You can have that. Cmd-Opt-Shift-V or H to split with a different profile, or use the move/swap options in the context menu to put any panes in the same tab after creation.

lfx a day ago | parent | prev | next [-]

This is amazing! First use-case was to open youtube to listen for some music with adblocker enabled! Works very well, however... now there is one more hidden place for music to play that might be hard to find. But this on user, not dev!

Really appreciate of the feature!

egorfine a day ago | parent | prev | next [-]

> Note for Enterprise Users: Administrators can block the browser plugin by restricting bundle ID com.googlecode.iterm2.iTermBrowserPlugin.

I am genuinely curious what the corporate thread models look like that allow running a terminal but not rendering anything in a browser.

mugsie a day ago | parent | next [-]

it would generally be for environments where the browser is locked down as well, or has a special extension installed for "security". In a lot of those cases the shell is recorded and send to a central tool, but the webview would not be logged

egorfine a day ago | parent [-]

> the shell is recorded and send to a central tool

Challenge accepted. And it's not a huge challenge. I'd say not even a mild one.

mugsie a day ago | parent | next [-]

yup, its really not that hard to break, but to break without the tool noticing is harder.

they usually work in kernel extensions or use https://developer.apple.com/documentation/endpointsecurity - which gives them pretty good coverage of all the processes running, and arguments etc

boomlinde a day ago | parent | prev [-]

What challenge?

ziml77 a day ago | parent [-]

Yeah I'm really not sure why people take doing things that their employers don't want them doing as a challenge. Like how about the challenge instead be working within the restrictions? Or communicating with their boss what they need to get their job done?

They have no clue what legal requirements are imposed on the company that led to those restrictions. They could easily land themselves or the entire business in hot water by not complying. It doesn't matter how easy the controls are to bypass. Like, it's easy to pick or cut a LOTO lock, but that doesn't mean it's fine to do that.

egorfine 6 hours ago | parent [-]

That's a reasonable take but then keep in mind we're talking about iTerm. How is the browser different from, say, `curl https://example.com | lynx`? Or `~/.bin/playwright/chrome`?

So while corporate restrictions sometime (but only sometime!) make sense, the configuration where a terminal is allowed while a browser is not - don't.

kermatt a day ago | parent | prev [-]

Based on experiences with my current corporate security group, everything is a threat.

egorfine a day ago | parent [-]

But somehow iTerm is not.

a96 a day ago | parent [-]

Or anything from Microsoft.

rsync a day ago | parent | prev | next [-]

I want my terminal to be as simple, and dumb, as possible.

It should ignore unexpected inputs and formats. It should not know what a web page or an image file is.

It should have no idea what it is displaying nor what is happening on the remote end ... I don't want it to know I am more'ing or less'ing or paging, etc. Just show the output.

I feel so strongly about this that I am sometimes tempted to collapse output to ascii-256. I resist this temptation because I sometimes cut and paste foreign URLs ... which my terminal has no idea is a URL.

xnickb a day ago | parent [-]

I see your point and I think it is a valid opinion, I just wanted to point out that if you are cosplaying as rsync, you are doing it right :-)

danielfalbo a day ago | parent | prev | next [-]

Couple it with https://homerow.app and you also get vi-like bindings

iberator a day ago | parent | prev | next [-]

Sadly there is no screenshot of the web browser

danielfalbo a day ago | parent [-]

There you go https://imgur.com/a/Ly2mEyj

iberator a day ago | parent [-]

amazing. thank you

oliviergg a day ago | parent | prev | next [-]

thank you iterm2 team to continue to try things !

I give it a try this morning. I can't decide if I'm confortable with it or no.

Having multiple webpage combined with your front and back process traces is nice.

You can move to each panel with the same shortcuts like a sort of simplified linux tile manager within a terminal on mac.

It's also a good idea to interact less with the weird liquid glass redesign.

imgyuri a day ago | parent | prev | next [-]

does anyone know how the new window shows the original terminal instead of the browser? do i need to switch the profile each time?

Perz1val a day ago | parent [-]

I didn't switch any profile, I just clicked a link in terminal and it opened as a tab in the same window. I then dragged this tab to be split view with the original terminal

neurostimulant a day ago | parent | prev | next [-]

I use my computer mainly for terminal and web browser. Now I only need terminal :)

raffael_de a day ago | parent | prev | next [-]

How is this different from using lynx or w3m?

freetonik a day ago | parent [-]

This is a full browser rendering using WKWebView, not a terminal text-based browser like lynx.

jsight a day ago | parent | prev | next [-]

I'd be tempted to connect to zellij with this.

VVilhelmsen a day ago | parent | prev | next [-]

Am I the only one who can't get this to work? I followed the instructions, but "Profile Type" does not appear in my settings.

(Yes, I put the browser into my Application folder first & restarted everything)

danielfalbo a day ago | parent [-]

Did you also update iTerm2 after putting the browser add-on in your Application folder?

https://iterm2.com/downloads.html

You can uninstall it and re-install the latest version from here to be double sure

VVilhelmsen a day ago | parent [-]

Ah , thank you! Uninstalling , update and re-installing fixed it.

oulipo2 a day ago | parent | prev | next [-]

Would it make it possible to have light "CLI-like" interfaces which span a browser in the same tab and give a proper UI?

Could be interesting to replace htop or other monitoring tools with graphs

johnisgood a day ago | parent | prev | next [-]

Might be an unpopular opinion but... why? And I see there are AI integrations still? I thought that was reverted.

hn_throw2025 a day ago | parent [-]

If you have no use for the features, then the MacOS terminal will do fine.

https://iterm2.com/features.html

If you spend a significant time in the terminal, those are very nice.

adammarples a day ago | parent | prev | next [-]

Set Profile Type to Web Browser

Can't see this option so no idea if this works or not

danielfalbo a day ago | parent [-]

You have to install the add-on first https://iterm2.com/browser-plugin.html

a day ago | parent [-]
[deleted]
qmr a day ago | parent | prev | next [-]

[flagged]

ilaksh a day ago | parent | prev | next [-]

[flagged]

oefrha a day ago | parent | next [-]

On Linux you get to have the “fun” decision of which UI toolkit to use, and pretty sure neither WebkitGTK nor QTWebengine support passkeys or ad blocking extensions anyway, and I doubt more obscure toolkits somehow have more featureful webviews. This might be one of the worst examples of why you should buy Linux. It’s a case of having good building blocks on macOS that are easy to implement but have some restrictions, vs having shitty building blocks (if at all) on Linux.

t-sauer a day ago | parent | prev | next [-]

A non-Apple solution (without these restrictions) could also be implemented on MacOS. I don't see why this makes using Linux computers more compelling. WKWebView is simply a convenient solution I guess but it could have also be implemented through CEF for example.

As I see it, if I was using a Linux computer I wouldn't have access to a terminal with such a feature at all.

egorfine a day ago | parent | prev | next [-]

Because browsers built in terminals in Linux do support adblocking extensions?

5d41402abc4b a day ago | parent [-]

Because of the restrictions apple place on the computer that i purchased.

t-sauer a day ago | parent | next [-]

It's not a restriction of the computer. It's a restriction of the API they provide. You can simply use another solution and don't have that restriction.

egorfine a day ago | parent | prev [-]

Yeah. Fully agree.

I am this close to throwing away my MacBook and migrating back to sane Linux. For the last 20 years.

keyle a day ago | parent [-]

When you find "sane Linux" could you do a write up for me? Ta!

egorfine a day ago | parent [-]

Not Ubuntu anymore, sadly. I have tried Debian after like 15 years pause and I loved it so much more. Note: we're talking server-side Linux here. Desktop wise I would stay on Ubuntu.

keyle a day ago | parent [-]

Debian has been my attempt to desktop linux (in the olden days, Slackware!), but for the server I've always preferred OpenBSD.

factorialboy a day ago | parent | prev | next [-]

Yes, and I am more convinced that the market for non-iOS and non-Android mobile devices will grow.

Not sure if its going to be GrapheneOS, or Linux — But we can witness the growing trend of privacy-focus — especially after AI being introduced on the OS layer — grabbing recurring screenshots, uploading to clouds, and essentially destroying E2E encryption.

walthamstow a day ago | parent | next [-]

It'll grow, but its share of the market probably won't. People don't care. Anyone who cares enough to do something is a minority of a minority.

sschueller a day ago | parent | prev | next [-]

It is becoming very expensive and difficult as the moats these companies have been able to build are enormous.

One upside I see is that phone hardware slowed in innovation and most changes are now software. This allows a new comer to build a phone over 2 years and have specs that are still good enough. This was a huge issue back a few years ago when a "kickstarter" was created and two years later the phone was unusable because of the poor hardware specs.

a96 a day ago | parent | prev | next [-]

I'm dreaming of that as well. But non-Android will always be against the chipset manufacturers not giving any documentation or software to anyone except NDA'd companies that follow their reference implementation exactly.

Google is also busily planning to kill sideloading and changes to the OS one step at a time.

Also, Graphene is Android. Just a nice distribution of, for pixels.

leakycap a day ago | parent | prev | next [-]

The market you describe only exists if there's a wide swath of people who are informed enough about their data privacy that they care enough to act.

Look around. This isn't going to happen, unfortunately.

johnisgood a day ago | parent | prev [-]

I think you are too hopeful. I doubt the majority cares, will know about it, or even believe it. They will not care until it bites them in the ass and they know why it was.

pjmlp a day ago | parent | prev | next [-]

Still waiting for it at the common computer stores, unless you mean something with ChromeOS/WebOS/Android as Linux distributions.

esskay a day ago | parent | prev | next [-]

I mean, the developer chose to use Apples limiting browser, that was a choice not a requirement.

pasc1878 a day ago | parent [-]

Did he have a choice? Is there an non Apple API that could be used here?

frou_dh a day ago | parent | next [-]

Yes - Chromium Embedded Framework (CEF) as used by some popular applications e.g. Spotify and Steam.

Personally I am completely uninterested in using this feature, but I really like iTerm2 overall.

esskay a day ago | parent | prev [-]

Of course he did, you arent forced to use anything Apple provides you on macos (or even ios these days).

keyle a day ago | parent | prev | next [-]

haaaaaave you looked at Firefox/Chrome recently?

PS: I agree.

a day ago | parent | prev | next [-]
[deleted]
semiinfinitely a day ago | parent | prev [-]

what is a linux computer

momocowcow a day ago | parent | prev | next [-]

[flagged]

noodletheworld a day ago | parent | prev [-]

Mmm… no.

Iterm2 used to be one if my first installs, but these days I find myself in the old grumpy programmer bucket.

Things that should connect to the internet:

- my browser

- applications

- anything I explicitly launch

Things that should not connect to the internet:

- my shell

- my “save as” dialog

- my start menu

:(

> Click hamburger menu → Ask AI to create a new AI chat with the reader-mode content of the current page attached

Yeah yeah cool.

I guess were back into the days of more web browsers with arc and whatever.

I suppose I should just smile and nod; if chrome introduced a terminal would I batt an eyelid?

Still, I dont like it.

I dont want ls to query some external api.

I dont want grep to search the internet.

These these are domain bounded for a reason; Im not a fan of iterms kitchen sync future.

…but I suppose, nice technical work on it, it works quite well. I hope it makes people who are into it happy.