Voltar às atualizações
New releaseSep 29, 2026

resterm v1.10.2

Cliente de API de terminal para HTTP, GraphQL, gRPC, WebSocket e SSE. Arquivos .http simples que você pode comparar e versionar, com testes com script, fluxos de trabalho, mocks, gravador e um executor de CLI para CI.

Compartilhar

Resterm
Resterm

Um workbench de API-as-code para o terminal.
resterm.app · docs

Captura de tela da TUI base do Resterm

Resterm é um cliente de API code-first construído em torno de arquivos .http/.rest simples. Uma requisição é algumas linhas de texto que você pode ler, comparar com diff e manter no git, e o mesmo vale para workflows e mocks locais. Você as envia pela interface de terminal enquanto trabalha, e resterm run executa os mesmos arquivos na CI. Se sua API estiver atrás de um bastion SSH ou dentro de um cluster Kubernetes, o Resterm abre o túnel ou o port-forward para você.

Recursos

  • HTTP, GraphQL, gRPC (com reflection e streaming), WebSocket e SSE
  • arquivos de ambiente, ambientes agrupados, arquivos dotenv e variáveis do SO
  • bearer tokens, OAuth 2.0 (client credentials, password e authorization code com PKCE), e tokens de CLIs que você já usa, como gh auth token
  • certificados de cliente TLS, CAs raiz personalizadas, proxies, HTTP/2 e um cookie jar por ambiente
  • capturas e verificações com @capture e @assert, além de @poll e @retry
  • workflows que encadeiam requisições em etapas, com @if e @for-each
  • RestermScript para lógica e blocos @rts test
  • editor com movimentos do Vim, realce de sintaxe, autocompletar para diretivas, cabeçalhos, caminhos de arquivo e diagnósticos inline
  • @compare para enviar uma requisição a vários ambientes e comparar os resultados com diff
  • rastreamento de timeline com orçamentos por fase e exportação para OpenTelemetry
  • @profile com estatísticas de latência, histograma, P95 e P99
  • túneis SSH e port-forwards do Kubernetes que o Resterm abre para a requisição
  • servidores mock locais a partir dos seus arquivos .http, e um proxy de gravação que transforma tráfego real em requisições ou mocks
  • resterm run para CI, com saída em texto, JSON ou JUnit e códigos de saída que distinguem uma verificação com falha de um erro de TLS ou de túnel
  • API Go headless para executar os mesmos arquivos a partir do seu próprio código Go
  • importação de curl e OpenAPI, e compartilhamento de coleções como bundles ou arquivos zip
  • atalhos de teclado e temas personalizados
  • abrir um arquivo no $EDITOR, ou um corpo de resposta no seu aplicativo padrão

Sem conta e sem telemetria.

[!NOTE] O Resterm não tem servidor MCP nem recursos de IA integrados. Se você quer que seu LLM entenda o Resterm, aponte-o para a documentação em Markdown em docs/ ou para resterm.app/docs.

Capturas de tela

Trace e timeline

Captura de tela do Resterm com timeline

Clique para ver mais da interface

Workflows

Captura de tela do Resterm com Workflow

Profiler

Captura de tela do profiler do Resterm

Explain

Captura de tela da aba Explain do Resterm

RestermScript

Captura de tela do Resterm com RestermScript

Instalação

macOS e Linux:

brew install resterm
# or
curl -fsSL https://raw.githubusercontent.com/unkn0wn-root/resterm/main/install.sh | bash

Windows:

iwr -useb https://raw.githubusercontent.com/unkn0wn-root/resterm/main/install.ps1 | iex

Com Go 1.25 ou mais recente:

go install github.com/unkn0wn-root/resterm/cmd/resterm@latest

Binários pré-compilados para macOS, Linux e Windows estão na página de releases. Os binários para macOS requerem macOS 13 Ventura ou mais recente, e os binários para Linux requerem glibc 2.32 ou mais recente.

Para atualizar uma instalação via Homebrew, execute brew upgrade resterm. Para binários de release ou instalações feitas com os scripts, execute resterm --update. Se você instalou com Go, execute novamente o comando go install acima. Mais informações no guia de instalação.

Início rápido

mkdir my-api && cd my-api
resterm init
resterm

resterm init cria um arquivo requests.http com algumas requisições de exemplo e mocks locais para respondê-las, então você não precisa de uma API real para experimentar. Pressione g Shift+M para iniciar o servidor mock, mova o cursor para uma requisição e pressione Ctrl+Enter para enviá-la. Pressione ? para obter ajuda a qualquer momento.

Você também não precisa do init. Execute resterm, digite uma URL ou cole um comando curl e pressione Ctrl+Enter.

O mesmo arquivo também funciona sem a interface. Inicie os mocks em um terminal e execute uma requisição em outro:

resterm mock requests.http                       # terminal 1
resterm run --request CreateUser requests.http   # terminal 2

Arquivos de requisição

O Resterm lê o formato padrão .http e adiciona diretivas # @ por cima para configurações e automação:

# @setting base-url https://api.example.com/v1/

### Create users
// Send this request once for each name in the list.
# @for-each ["david", "tom"] as name
# @when env.meta.name == "dev"
# @assert response.statusCode == 201
POST users
Content-Type: application/json

{"name":"{{= name }}"}

Um @setting antes da primeira requisição aplica-se ao arquivo inteiro. ### inicia uma nova requisição. Diretivas acima de uma requisição podem repeti-la, ignorá-la ou verificar a resposta.

Há mais exemplos em _examples/, e cada diretiva está listada na referência de arquivos de requisição.

Documentação

A documentação completa está em resterm.app/docs. Bons pontos de partida são workflows, mock servers, recording, a CLI e RestermScript.

Dentro da TUI, :help <topic> abre o manual integrado e :docs <topic> abre a mesma página no site.

Para executar arquivos de requisição a partir do seu próprio código Go, consulte o pacote headless.

Patrocinador

Categorias