Ultraman · · 6 min read

Ultraman: case study

A desktop app to test APIs with visible step pipelines that run the same in the window, the terminal, CI and AI agents.

Ultraman is a desktop tool for testing APIs with pipelines of visible steps: you chain requests, extract values from the responses, check the results, and run it all from a window, from the terminal or from an AI agent. It's built for developers and QA teams who today test by hand in Postman and then rewrite the same thing as scripts for CI.

Version 0.3.0 shipped on November 1, 2026, a week after the first commit: 262 commits, about 18,000 lines of code (TypeScript, React and Rust) and 801 tests. It runs on Windows, macOS and Linux and updates itself.

The problem

Testing a real API is almost never a single request: it's log in, keep the token, create something, read it back and check that the result is what you expected. Classic tools handle the individual request well, but the full flow ends up spread across collections, scripts and global variables nobody sees.

Ultraman starts from three ideas:

What it does

Architecture and stack

Everything goes through serve, a local Node server that only listens on 127.0.0.1. The window, the terminal and the agents are all clients of the same engine, so they see the same runs and the same history.

Technical highlights

A secrets vault designed against local malware

The goal was that a malicious app scanning the disk for keys finds nothing useful. Before designing it, I compared how Postman, Insomnia, Yaak, Bruno and Hoppscotch solve it.

Signed updates, end to end

Distribution with no dependencies

The installer brings its own Node 24, verified against nodejs.org's checksums, so there's nothing else to install. A single command installs the app and the CLI, and there's a CLI-only mode for CI.

One engine per project

If the window is open, ultraman run doesn't run on its own: it hands the pipeline to the window's server. That way the terminal and the window share the engine and the history, and whatever you launch from the terminal shows up in the window while it runs.

Consent for AI agents

The MCP server can't approve itself: approving requires the session token and the window's origin, so an agent can't skip the person with a curl. Every agent request is logged.

Quality

My role

A personal project end to end: idea, product design, visual identity, architecture, development, security, distribution and the landing page. I built it with Claude Code as a pair programmer. I defined the product, made the design and security decisions and reviewed every change before merging it.

Some decisions I made along the way:

Links

← Back to the portfolio · hello@abrahamkazerian.dev