REST、GraphQL、WebSocket、SSE、Socket.IO、MQTTのリクエストを送信できる、Web・デスクトップ・CLI対応のオープンソースAPI開発エコシステム。
- スター
- 1,990
- フォーク
- 59
- 未解決の Issue
- 0
- 最終コミット
- 昨日
これは何?
Restermは、ターミナルで動作するコードファーストのAPIクライアントです。リクエスト、ワークフロー、ローカルモックの定義はプレーンな.httpまたは.restファイルに記述するため、内容を読みやすく、差分を確認しやすく、バージョン管理下に置けます。ターミナルUIからリクエストを送信でき、resterm runコマンドを使えば、同じファイルをCIで実行してテキスト、JSON、JUnit形式で出力できます。
リクエストの送信に加えて、@captureや@assertによる値の取得とアサーション、ポーリングとリトライ、ワークフローの連結、ロジックやテストを記述できるRestermScript言語を備えています。複数の環境で同じリクエストを比較したり、リクエストの所要時間をトレースしたり、パーセンタイルでレイテンシをプロファイリングしたりできます。認証ではBearerトークン、PKCEを含むOAuth 2.0フロー、ローカルCLIから取得したトークンに対応しています。
SSH踏み台の背後やKubernetesクラスター内にあるサービスに対しては、Restermがリクエスト送信前にトンネルまたはポートフォワードを確立します。同じファイルからローカルモックサーバーを起動したり、プロキシ経由の通信をリクエストやモックとして記録したりすることもできます。Homebrew、インストールスクリプト、ビルド済みバイナリ、go installからインストールできます。
主な機能
- 01HTTP、GraphQL、リフレクション対応のgRPC、WebSocket、SSEのリクエストに対応
- 02@captureと@assertによる値の取得とアサーションに加え、@pollと@retryにも対応
- 03条件分岐やループのステップを含む、ワークフローの連結
- 04OAuth 2.0フロー、クライアント証明書、環境ごとのCookie jarに対応
- 05.httpファイルから生成するローカルモックサーバーと、通信を記録するプロキシ
- 06JSONまたはJUnit形式で出力できる、CI向けのresterm run
ユースケース
- APIリクエストのコレクションをコードと同じgitリポジトリで管理する
- CIパイプラインでAPIのスモークテストやコントラクトチェックを実行する
- SSH踏み台やKubernetesのポートフォワード経由で内部APIに接続する
- フロントエンドやバックエンドの開発中に、上流サービスをローカルでモックする
クイックスタート
- 1
Homebrewでインストール(macOSおよびLinux)
brew install resterm - 2
プロジェクトフォルダーを作成し、サンプルリクエストを初期化
mkdir my-api && cd my-api resterm init - 3
ターミナルUIを起動
resterm
使う前に知っておきたいこと
- Linuxバイナリにはglibc 2.32以降が必要です。
- RestermにはAI機能やMCPサーバーが組み込まれていません。
トピック
よくある質問
- resterm とは?
- HTTP、GraphQL、gRPC、WebSocket、SSEのリクエストを、gitで管理できるプレーンな.httpファイルに保存するターミナルAPIクライアント。 Restermは、ターミナルで動作するコードファーストのAPIクライアントです。リクエスト、ワークフロー、ローカルモックの定義はプレーンな.httpまたは.restファイルに記述するため、内容を読みやすく、差分を確認しやすく、バージョン管理下に置けます。ターミナルUIからリクエストを送信でき、resterm runコマンドを使えば、同じファイルをCIで実行してテキスト、JSON、JUnit形式で出力できます。
- resterm は無料で使えますか?ライセンスは?
- resterm は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- resterm は今もメンテナンスされていますか?
- 活発にメンテナンス中。resterm の最終コミットは 2026年10月18日 です。
- resterm は何に使えますか?
- APIリクエストのコレクションをコードと同じgitリポジトリで管理する CIパイプラインでAPIのスモークテストやコントラクトチェックを実行する SSH踏み台やKubernetesのポートフォワード経由で内部APIに接続する フロントエンドやバックエンドの開発中に、上流サービスをローカルでモックする
- resterm のインストール方法は?
- Homebrewでインストール(macOSおよびLinux): brew install resterm プロジェクトフォルダーを作成し、サンプルリクエストを初期化: mkdir my-api && cd my-api resterm init ターミナルUIを起動: resterm
- resterm はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/unkn0wn-root/resterm
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Wails 3とVue 3で構築された、HTTP、gRPC、GraphQL、WebSocket対応のローカルファーストなデスクトップAPIクライアント。
コレクションをローカルのプレーンテキストファイルで管理する、PostmanやInsomniaに代わるオープンソースのAPIクライアント。
lazygitに着想を得た、複数のSQLデータベースに接続してクエリを実行できるキーボード操作主体のターミナルUI。
~/.ssh/configに定義されたSSHホストの閲覧、接続、管理を行うターミナルTUI。