Warp is the future of terminals
James Perkins

James Perkins @perkinsjr

About: Unkey CEO | Youtuber

Location:
Raleigh NC
Joined:
Jan 10, 2019

Warp is the future of terminals

Publish Date: Apr 16 '22
164 45

I spend a lot of time working with tooling, whether it's for my job, content creation, or just development tools in general. Warp is a brand new terminal experience, so let's talk about it.

What is Warp?

Warp is a terminal that allows you to do a whole lot right from your keyboard. It gives you the ability to look through your history, create workflows and has intellisense. This is currently for Mac only but they are building one for Windows and one for Linux as well! So all the other users out there can have a great experience.

Command Palette

Command Palette

The command palette allows you to search through all the different commands you can use within the Warp terminal. For example create new tab is command + T or command + ] is a new pane. The command pane is completely searchable so you can type in what you are looking for hit Enter.

Command History

History Search

Command History is one of the best features of Warp, not because it's powerful or revolutionary feature, but because I and every developer has press the up arrow dozens of times to find that one command.

You get two options when you press control + r you can scroll through all of the history items or you can just type in the beginning of the command. Here is an example of me typing the word yarn into my history search:

History example

As you can see I can now just select what I need from the list, speeding up the time spent remembering what did I type?

Workflows

Workflows are the powerhouse to this terminal application, workflows allow you to run commands similar to aliases. Each workflow gets a searchable title and description which make easy to find what you are looking for. The workflow pane can be opened by typing shift + control + r.

When you choose a workflow, you will prompted to fill in any arguments you might need to make the command work which you can navigate using shift + tab :

Command Example

Custom workflows

Custom workflows are your alias on steroids, they are created using .yml files and can be either user specific or project specific.

For user specific ones you add them to ~/.warp/workflows and for project ones {{path_to_project}}/.warp/workflows. The format is the same regardless, here is my code_profile one:

name: Change code profiles
description: Change code profile for visual studio code
author: James Perkins
author_url: https://github.com/perkinsjr
tags: ['macos', 'shell', 'vscode']
shells:
    - zsh
    - bash
command: code --user-data-dir {{user_data_dir}} --extensions-dir {{extension_dir}}
arguments:
    - name: user_data_dir
      description: Directory of user-data
    - name: extension_dir
      description: Directory for extensions
Enter fullscreen mode Exit fullscreen mode

My custom workflow takes two arguments which and when used will open my code_profiles have stored for visual studio code and it looks like this in the application.

My work flow

This is just scratching the surface of the feature set that Warp offers and how it can be used. I recommend giving it a shot and seeing what you think.

Comments 45 total

  • JWP
    JWPApr 17, 2022

    Sounds similar to Powershell

  • Abhinav Kulshreshtha
    Abhinav KulshreshthaApr 17, 2022

    Great to see another attempt for building a modern terminal. I don't have mac os, so I don't think I can use it but I know people will see this and work on improving their experience on whatever terminal they use. I have a zsh and bash extension for command history, that I can't live without. Although I don't know what benefit will command pallet serve.

    Around 2012-2015, There used to be a terminal project called Final Term, which had most of these features. I think the developer closed the project after graduation and getting a job. Its good that warp have secured funding so it can have a sustainable future.

    • James Perkins
      James PerkinsApr 17, 2022

      They are creating a windows and Linux version in the near future.

      I actually remember Final term I think

  • Fyodor
    FyodorApr 17, 2022

    Like fig.io/ but better?

    • James Perkins
      James PerkinsApr 17, 2022

      Similar idea, I actually left fig for this

  • James Perkins
    James PerkinsApr 17, 2022

    It works but you lose a lot of features but they are working at first class support
    github.com/warpdotdev/Warp/discuss...

  • Nikhil
    NikhilApr 17, 2022

    Currently using Wezterm. I will give this a go when it is available on Linux/FreeBSD. Always curious about new Terminals! Thanks for the headsup. :)

    • James Perkins
      James PerkinsApr 17, 2022

      Wezterm is a solid choice! Hopefully their roadmap moves quickly through the offering on all platforms.

      • Nikhil
        NikhilApr 18, 2022

        I am hopeful. Let's see! :)

  • jonosellier
    jonosellierApr 17, 2022

    This is a really cool project but I'm confused about the business model. VCs don't just give money to a nifty project, they obviously need some sort of ROI so I'm curious as to what the business model here is. Is there some pricing model for businesses that want to adopt it? From where I stand, it seems like the the (VC-specific) value in this terminal is the data it collects. I understand that this project has to make money somehow but I am curious about what sort of data is collected from it.

    I hope that this doesn't come across as attacking the project as I see no issue with sharing my usage of a terminal once it's properly anonymized.

    • James Perkins
      James PerkinsApr 17, 2022

      The money comes from the pricing model for the business usage.

      They are going for if we make it soo good for individuals that they will want to integrate it into their business.

      You can read about the data collection and business / pricing model and plan here:

      warp.dev/faq#whats-your-business-m...

      • jonosellier
        jonosellierApr 17, 2022

        Thank you so much for your transparency (and being active with your business on Sunday too!)

        • James Perkins
          James PerkinsApr 17, 2022

          Not my business but my blog post! I want to make sure people get all they info they need, to make a decision.They can hire me to spread the word if they want 😂

    • Damian Żygadło
      Damian ŻygadłoApr 22, 2022

      probably they are selling the data from the telemetry, but who knows.

      • James Perkins
        James PerkinsApr 22, 2022

        They are using it to drive what to improve for GA and then telemetry is optional.

  • Yahyaoui Ahmed
    Yahyaoui AhmedApr 17, 2022

    hello i just try to use discussion for the first time

  • Rob OLeary
    Rob OLearyApr 17, 2022

    This seems like a burgeoning space atm!

    There is fig.io which has similar features and is Mac only too. The driving force seems to improve DX (Developer Experiences), bring more IDE-esque experience to the terminal.

    The linux crowd are approaching it differently e.g. nushell. The focus is more on improving data processing. Support data formats such as json and xml as first class citizens, offer better error reporting, and parallelism.

    Personally, I am more excited by the latter. Improved DX might make the terminal more approachable for newcomers, and easier to use in the long-run for others. There are decent solutions for autocompletion and history searching in other shells.

    The fish shell had the objective of making shells more user friendly and it still receives quite a bit of flak! It could be kind of a cautionary tale for warp, I guess?

    Zsh seems to be having a second wind. I think Oh my Zosh solved the user friendliness of Z Shell for many folks. And with Mac making its default shell, its got a wider audience.

    I mostly use Zsh (bash sometimes), and I would be slow to switch.

    I wish you success with the project.

  • Shiva Sharan
    Shiva SharanApr 17, 2022

    Love this terminal. Have been using it as a default the last few days. Definitely modern functional. Looking forward to the updates that will include power level 10k

    • James Perkins
      James PerkinsApr 17, 2022

      Awesome! Glad you are enjoying it... looking forward to see what they are going to do in the future.

  • Peter Franken
    Peter FrankenApr 17, 2022

    A closed source terminal emulator by a for-profit entity running on a yet to be proven business model. That's a pretty darned hard sell in today's "zero trust" world where new actively exploited CVEs are being discovered every other week, and where the GDPR auditors are always looming.

    However well it might work, convenient it may be, or nice it might look , the security risks are too great and financial liabilities too expensive.

    • James Perkins
      James PerkinsApr 17, 2022

      While I agree with some sentiment here, this has been discussed openly:

      github.com/warpdotdev/Warp/discuss...

      Seems they are planning on open sourcing some if not all of the terminal.

      • Peter Franken
        Peter FrankenApr 17, 2022

        That would be the baseline for personal use.

        Before I would ever even think about adopting this tool commercially, especially considering the massive leverage a it has over such a critical piece of business infrastructure, I'd require them to offer some very serious, verifiable, and continuous guarantees about their security setup (the current "your privacy is important to us" doesn't really cut it) and legally binding guarantees to cover for the remaining liabilities.

        At that point I'm afraid the SLA would be so expensive it wouldn't be worth the investment.

        It's brutal, I know, but a nice looking terminal app just isn't worth risking my customers' and my own arses over 😅

        • Ben Sinclair
          Ben SinclairApr 18, 2022

          I totally agree. I just don't see the draw of any software that's not free, especially when it offers so little over established free software.

          I'm going to come out with a whole lot of things that sound negative, but I don't mean, "I hate this, stop what you're doing", I mean, "I don't understand this, carry on and make something awesome".

          It seems like the only thing that Warp gives you beyond other terminals so far is workflows, which look quite nifty tbh, but - and it's a big but - I don't think they'd be difficult to implement as a script in any old shell, even something 20+ years old that's supported by curses. I can think of a few people from my work who'd probably like the feature

          Phrases like "planning on open sourcing some of the..." turn me off. Why would parts of it be hidden? Why is this a thought for the future and not how it's built from the start?

          I'm also dubious of new software that's built for MacOS where the authors say they're working on versions for other OS. The reason that people choose to build for Mac first is often that they can charge more for the product and people will pay it, and as such the other platforms' versions fail to materialise or are always a step behind if they do.

          I'm not sure that things like command history and workflows are a good fit for a terminal emulator. I think they're a fit for the shell, because the shell's the thing that is interpreting them. You can use a terminal emulator to run something other than a shell, and in that case, what's it going to do? Will the shortcut keys confuse things?

          • James Perkins
            James PerkinsApr 18, 2022

            A lot of these questions are definitely for the warp team, which I’m not a part of.

            The software is free to use and nothing restricts you and your whole team from using it. Their business model is go for mass adoption, then hope to offer business and companies X or Y where a free tier would have a restricted version (as far as I can tell)

    • Aleksandar Kostadinov
      Aleksandar KostadinovApr 20, 2022

      yeah, I think many people use github.com/nvbn/thefuck for similar purposes but open source

      • Peter Franken
        Peter FrankenApr 20, 2022

        Another interesting project I came across the other day that you can compile yourself and doesn't require an account to use is github.com/nushell/nushell

        It's a great time to be a shell-dweller with so many great tools and concepts in active development!

        Edit: The compilation and account comment might come across a bit snarky but that was not my intent!

  • lamka02sk
    lamka02skApr 18, 2022

    No thanks, subscriptions are a recipe for a disaster.

    • James Perkins
      James PerkinsApr 18, 2022

      There is no subscription for personal and general use.

  • Andrey Frolov
    Andrey FrolovApr 19, 2022

    Great job

  • Heiko Kanzler 🇪🇺
    Heiko Kanzler 🇪🇺Apr 20, 2022

    While I like the idea of warp, it absolute drives me nuts that I have to create an account and that my terminal is sending hundreds of tracking events to the developer. That's all but not trustworthy :-(

    You can't even opt-out (except blocking outgoing traffic)

    docs.warp.dev/getting-started/priv...

    • James Perkins
      James PerkinsApr 20, 2022

      I understand the need for telemetry and in GA it’s opt out.

      I can also understand needing the data to understand usage. But also the privacy concerns

  • JoeSchr
    JoeSchrApr 20, 2022

    Tbh this (no OSS, sending everything, weird business model, osx first) sounds awful.

    And it can to nothing than can't be done by other shells, no need for a terminal emulator to even do that...🤷

    This is snarky, but I think only an osx user can fall for that kind of BS 🤦‍♂️

    It definitely is not the future of terminal. Because we all can use this features for years now. That's not only hyperbole, it's just wrong.

    Just use fish, fzf and tmux and be done with it. It also works on every other system if you remotelogin via ssh

    • James Perkins
      James PerkinsApr 20, 2022

      It lowers the barrier of entry to terminal.

      No one said this isn’t something any other terminal / plug-in could do.

      Snarky is an understatement, never realized your choice of OS denotes things like deciding on software you want to use is good or bad, but your opinion is valid either way.

      • JoeSchr
        JoeSchrApr 22, 2022

        choice if OS denotes yadayada...

        It kind of does. eg. if you are used to work with your hands bound behind your back by using an inferior OS, your might also find inferior software to be "the future of XY"

        • James Perkins
          James PerkinsApr 22, 2022

          Next you will tell me only OS to use is the one you use and no other compare. As well as your keyboard, mouse, monitor, dev tools.

          As a dev for almost 14 years and has written code on Linux boxes, windows boxes, MacOS.

          At this point just toss me a keyboard and I’ll write you whatever you need. I don’t think any of them are inferior of each other. All of them are good or bad, in some scenarios... sure a linux box has advantages, in web dev they all are on level playings fields pretty much.

          I personally believe that lower barrier of entry is the future of terminals, it’s why fig.io and warp exist in the space. People finally realize the pain point and we can solve it.

          Sure I’d prefer the whole thing to be open sourced so I can look at the code and decide for myself but for now I’m willing to enjoy the experience and decide for myself if the risk reward ratio is worth it.

          • JoeSchr
            JoeSchrApr 22, 2022

            I'm actually still amazed that you see this as a painpoint where we need a new terminal EMULATOR, when there are tons of tools and shells which have this functionality already and at the same time try to imply I should look outside the box.

            Dude, you simply didn't know how to use your shell and wrote an hyperbole article about the future, which in fact other people are living for years now. I just pointed it out. To yourself a favour and Google (or YouTube) fish, fzf, tmux, nvim, etc

            I have been developing longer and on more systems than you, but I don't see why that should matter. I just didn't want to drink your kool.aid

            • James Perkins
              James PerkinsApr 22, 2022

              You should stop assuming.

              I use a shell every day at my job, which again you assume I have no knowledge of. I don't need to google any of them, because again, I have used them in the past.

              This article is a let's look at article, no where in it am I telling you to completely remove your working workflows, nor telling you that fish, zsh vanilla or any other is useless compare to an emulator.

              The title is fairly clickbaity, which I have no problem with.

  • ellioseven
    elliosevenApr 23, 2022

    Why am I forced to authenticate with GitHub just to use a terminal?

    • James Perkins
      James PerkinsApr 23, 2022

      This is a requirement during the beta but won't be in GA... I believe they use it for two reasons... One to collect telemetry data and two being able to share blocks with another user for collaboration.

  • Alper Cugun-Gscheidel
    Alper Cugun-GscheidelMay 14, 2022

    It looks cool but I have a reasonably comfortable fish shell and the switching cost here is just too high.

    Maybe if I'm really bored some day.

  • Bret emm
    Bret emmJun 22, 2023

    Do you still use warp?
    Is this still a beta or official?
    Thanks

Add comment