I didn’t realize how much developer time our CLI was wasting until I watched someone actually use it

One thing I’ve started paying more attention to recently is how much context switching quietly kills developer productivity.

A few months ago one of our devex engineers was debugging a webhook issue for a merchant and spent almost the entire session bouncing between the terminal and the dashboard. Terminal for one step, browser for another, back to terminal, back to browser again.

Nothing was technically broken, but the workflow felt exhausting.

That made me realize our CLI had been designed mostly for scripts, not for humans actually trying to build things.

A lot of dev tools still work this way. You run a command, it returns output, then everything disappears and you start over. Which is fine for automation, but pretty clunky once you’re spending hours inside the tool.

So we started rethinking the whole thing less like “a list of commands” and more like an actual working environment.

The biggest thing we changed was keeping state around instead of treating every interaction as isolated. Once we did that, a lot of smaller frustrations started disappearing naturally.

Webhook testing became much easier too. Earlier, reproducing edge cases usually meant opening dashboards, triggering events manually, waiting on network calls, trying again, and repeating the loop. We moved more of that locally and it immediately made debugging less painful.

Security was another thing we had ignored for too long. Our earlier setup stored credentials in a way that was honestly acceptable only because nobody had revisited it properly. Watching more founders use the CLI made it obvious we needed to treat local credential handling much more seriously.

One thing that surprised me while rebuilding it was how much responsiveness matters even in terminal tools. Tiny delays, sluggish updates, laggy rendering, they sound minor individually but compound really quickly when someone spends hours inside the environment.

The bigger realization for me though was that developers rarely complain about this stuff directly. They just work around it and slowly lose time.

It’s easy to think “the CLI exists, so the problem is solved.” Watching someone actually integrate payments with it was the thing that made the gaps obvious.

Curious if other teams building dev tools have had similar moments where the real pain only became obvious after watching someone use the product in real time.

submitted by /u/aagarwal1012
[link] [comments]