Warp Terminal

/ 21 November 2023

A few years ago I switched from the then-default Bash shell on macOS to Fish, and never looked back. At about the same time I learned of bat (instead of cat) and exa (instead of ls). All these dramatically changed and improved my command-line experience, and even formed the basis of changes of practice that we at Tenseg have since been using on all our live servers, now that the past few years we’ve been in near-total control of them. But these tools are used inside the command line, I still used Apple’s Terminal app to access the command line (well, that and the integrated terminal in VS Code).

A few months ago I learned of an alternative terminal app that promiased to be modernized: Warp. I’ve had it on my Mac for a while, but only about 2 weeks ago I decided to switch to using it in place of the Terminal app full-time, at least temporarily, but within a week decided that I probably won’t look back unless I find a devastating failure in its current incarnation.

There is a LOT to love about it. Some of the highlights, besides just feeling fresher than Terminal, include the entire way it breaks commands down into “blocks”, and all the insane coolness that enables, as well as IDE-style text editing (click where you want to type, autocomplete, etc.). There is some AI (because, of course there is this year…) but I really haven’t used that much, though I’ve used the much smarter auto-completes daily, which almost feels like AI compared to the Terminal app.

As a brief aside: You may wonder why I don’t use the AI features in Warp more. It isn’t because I’m anti-AI (I use CodeWhisperer in VS Code all the time), it is because I use Raycast for my primary AI needs, and when Warp has limits to AI chat and Raycast doesn’t, you can guess which is better for me.

There are ways to save commonly used “workflows”, and even share these amongst teams, speeding up collaboration. Plus much more. Warp feels kinda like the “next big improvement” to my command line life, and that is why I’m wanting to write about it here to encourage others to try it too. The mundane is not the only option folks!

There are growing pains, as there would be with any relatively young app, the most painful currently is that Fish isn’t fully supported for remote shells (so turn off the Warp SSH Wrapper setting in Features if that is important, although to supplement that being off I found a way to still make Fish be Warpified on remote shells that also doesn’t interfere with non-Warp terminals). It does also take some getting used to. I mean, by default it takes over the prompt, though you can switch to yours I switched back and kinda like the smarts it does, especially as it puts the prompt a line above your input (my prompt otherwise tried to be concise, so kinda anti-Warp). You may also have shortcuts across your system, like a Service in Finder that point at Terminal, and whose keyboard shortcut you may need to move to the Service Warp provides. Not all apps know Warp exists yet, so may not even offer it as an external Terminal.

Honestly, Warp kinda makes the integrated terminal in VS Code feel old… This is especially awkward because Warp itself feels almost like a VS Code-ification of Terminal. Maybe someday they’ll make an extension to integrate Warp there… But, if you’re still using Apple’s Terminal app for your (non-integrated) shell needs, and maybe want to try something different, give Warp a try. It’s felt refreshing this two weeks for me.