
resterm v0.51.2
Cliente de API para terminal con compatibilidad con HTTP/GraphQL/gRPC y soporte para túneles SSH, WebSockets, SSE, flujos de trabajo, profiling, OpenAPI, redirección de puertos de Kubernetes y API headless.
Resterm
Un banco de trabajo de API-como-código para la terminal.
resterm.app · docs
Resterm es un cliente de API centrado en código, construido en torno a archivos simples .http/.rest. Una petición son unas pocas líneas de texto que puedes leer, comparar con diff y mantener en git, y lo mismo ocurre con los flujos de trabajo y los mocks locales. Las envías desde la interfaz de terminal mientras trabajas, y resterm run ejecuta los mismos archivos en CI. Si tu API está detrás de un bastión SSH o dentro de un clúster de Kubernetes, Resterm abre el túnel o el port-forward por ti.
Características
- HTTP, GraphQL, gRPC (con reflexión y streaming), WebSocket y SSE
- archivos de entorno, entornos agrupados, archivos dotenv y variables del sistema operativo
- tokens bearer, OAuth 2.0 (client credentials, password y authorization code con PKCE), y tokens de CLIs que ya usas, como
gh auth token - certificados de cliente TLS, CAs raíz personalizadas, proxies, HTTP/2 y una cookie jar por entorno
- capturas y comprobaciones con
@capturey@assert, además de@polly@retry - flujos de trabajo que encadenan peticiones en pasos, con
@ify@for-each - RestermScript para lógica y bloques
@rts test - editor con movimientos de Vim, resaltado de sintaxis, autocompletado de directivas, cabeceras, rutas de archivos y diagnósticos en línea
@comparepara enviar una petición a varios entornos y comparar los resultados con diff- trazado de línea de tiempo con presupuestos por fase, y exportación a OpenTelemetry
@profilecon estadísticas de latencia, un histograma, P95 y P99- túneles SSH y port-forwards de Kubernetes que Resterm abre para la petición
- servidores mock locales a partir de tus archivos
.http, y un proxy de grabación que convierte el tráfico real en peticiones o mocks resterm runpara CI, con salida en texto, JSON o JUnit y códigos de salida que distinguen una comprobación fallida de un error de TLS o de túnel- API headless de Go para ejecutar los mismos archivos desde tu propio código Go
- importación desde curl y OpenAPI, y compartición de colecciones como bundles o archivos zip
- atajos de teclado y temas personalizados
- abrir un archivo en
$EDITOR, o un cuerpo de respuesta en tu aplicación predeterminada
Sin cuenta y sin telemetría.
[!NOTE] Resterm no tiene servidor MCP ni funciones de IA integradas. Si quieres que tu LLM entienda Resterm, apúntalo a la documentación Markdown en
docs/o a resterm.app/docs.
Capturas de pantalla
Traza y línea de tiempo
Haz clic para ver más de la interfaz
Flujos de trabajo
Profiler
Explain
RestermScript
Instalación
macOS y 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
Con Go 1.25 o superior:
go install github.com/unkn0wn-root/resterm/cmd/resterm@latest
Los binarios precompilados para macOS, Linux y Windows están en la página de releases. Los binarios de macOS necesitan macOS 13 Ventura o posterior, y los binarios de Linux necesitan glibc 2.32 o posterior.
Para actualizar una instalación de Homebrew, ejecuta brew upgrade resterm. Para los binarios de release o las instalaciones realizadas con los scripts, ejecuta resterm --update. Si instalaste con Go, vuelve a ejecutar el comando go install anterior. Más información en la guía de instalación.
Inicio rápido
mkdir my-api && cd my-api
resterm init
resterm
resterm init crea un archivo requests.http con algunas solicitudes de ejemplo y mocks locales para responderlas, así que no necesitas una API real para probarlo. Pulsa g Shift+M para iniciar el servidor mock, mueve el cursor a una solicitud y pulsa Ctrl+Enter para enviarla. Pulsa ? para ver la ayuda en cualquier momento.
Tampoco necesitas init. Ejecuta resterm, escribe una URL o pega un comando curl, y pulsa Ctrl+Enter.
El mismo archivo también se ejecuta sin la interfaz. Inicia los mocks en una terminal y ejecuta una solicitud en otra:
resterm mock requests.http # terminal 1
resterm run --request CreateUser requests.http # terminal 2
Archivos de solicitud
Resterm lee el formato estándar .http y añade directivas # @ encima para la configuración y la automatización:
# @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 }}"}
Un @setting antes de la primera solicitud se aplica a todo el archivo. ### inicia una nueva solicitud. Las directivas situadas encima de una solicitud pueden repetirla, omitirla o comprobar la respuesta.
Hay más ejemplos en _examples/, y cada directiva está listada en la referencia de archivos de solicitud.
Documentación
La documentación completa está en resterm.app/docs. Buenos puntos de partida son workflows, mock servers, recording, la CLI y RestermScript.
Dentro de la TUI, :help <topic> abre el manual integrado y :docs <topic> abre la misma página en el sitio web.