Resterm: API requests as plain text you can diff, sent from a terminal TUI
An open Go terminal API client: .http plain-text requests you can diff and review, five protocols, scripted tests, a CI runner. Apache-2.0.
Project facts
GitHub Ecosystem- License
- Apache-2.0
- Language
- Go
- Stars
- 2,010
- Data checked
- 2026-11-07
Snapshot figures reflect the check date and may change over time.
Postman-style API clients fail on the collection format: requests live in private JSON, impossible to diff, review, or migrate. Resterm, open-sourced by unkn0wn-root (Apache-2.0, written in Go, 2,010 stars as of November 7, 2026), brings requests back to plain text with unusual completeness — scripted tests, mocks, a recorder and a headless CI runner all read the same files: write them as .http/.rest files — diffable, Git-friendly, reviewable in PRs — then send from a keyboard-driven TUI and read responses inline. HTTP, GraphQL, gRPC, WebSocket and SSE are all in one client; local-first, no account, no telemetry.
Core features
- Requests as files: the
.http/.restplain-text format, writable in any editor, free to version control — environment variables, secret references and response captures all live in the same file. - Five protocols, one client: HTTP, GraphQL, gRPC, WebSocket and SSE all send and receive from the same TUI.
- Scripted tests and workflows: assertions, multi-request chains, mocks and request recording — one line from manual debugging to regression.
- CI runner: the companion resterm-runner headless CLI takes the same
.httpfiles into pipelines for API regression. - Local-first: no account, no telemetry; instruction completion while writing, responses shown right after sending.
Typical use cases
- API debugging and review: request files commit alongside code, so interface changes get reviewed in PRs.
- Regression testing:
.httpfiles as test cases, resterm-runner runs assertions in CI. - Offline and restricted environments: no account dependency; full features behind a firewall.
Quick start
Grab a binary from GitHub Releases or build via the repo Makefile; create a requests.http with your first request and hit enter in the TUI. CI usage lives in the resterm-runner subproject. Files migrate from Bruno or the VS Code REST Client extension with essentially no rewrites, and the same request file serves local debugging and pipeline regression — one source of truth instead of two. For agents that need to call external APIs, plain-text request definitions are also the format an agent can read and write most safely; our BISHENG coverage looks at the platform layer such agents might run on.
Summary
Resterm fits teams whose creed is “requests belong in Git” and terminal-first users; teams wanting graphical collaboration or auto-generated docs will stay on Postman/Insomnia. Facts and limits: Apache-2.0, Go, open since September 2025; gRPC and GraphQL depth is documented per section. It shares the .http ecosystem with VS Code’s REST Client extension but moves execution into a standalone TUI — a natural home for Vim/Neovim users.