Redocly CLIは優れたツールです。OpenAPIファイルのリンティング、複数ファイルで構成された仕様書を一つにバンドルすること、またはターミナルからRedocドキュメントをビルドするために使用したことがあるなら、すでにご存知でしょう。では、なぜRedocly CLIの代替を探す必要があるのでしょうか?
通常、それはツールの「形」に行き着きます。Redocly CLIは、リンティング、バンドル、分割、結合、ドキュメントのビルドといった、コードファーストに特化した専門ツールです。これは一部のチームにとってはまさに適切ですが、他のチームにとっては十分ではありません。もしAPIの設計、モック、テストも行う一つのツールを求めているのであれば、CLIはそのようなツールになろうとはしていませんし、そうあるべきでもありません。
この記事は、ホスト型Redoclyドキュメント製品ではなく、オープンソースの`@redocly/cli`パッケージである**Redocly CLI**についてです。ホスト型ドキュメントプラットフォームやRedoc自体を比較している場合は、代わりにAPIドキュメントのためのRedocly代替ツールのまとめをご覧ください。この記事は、`redocly lint`や`redocly bundle`と入力し、自分のワークフローに他に何が合うかを知りたい人向けです。
Redocly CLIが実際に優れている点
Redocly CLIはオープンソースであり、ターミナルネイティブです。一度インストールすると、そのタスクをクリーンに実行するコマンドの厳選されたセットが手に入ります。Redocly CLIドキュメントでそれらすべてがカバーされていますが、ここでは要点をまとめます。

リンティングはRedocly CLIの最大の強みです。 `redocly lint`は、OpenAPI、AsyncAPI、Arazzo、またはOpen-RPCの記述を検証し、その上にスタイルガイドルールを実行します。すべて`redocly.yaml`ファイルを通じて設定します。組み込みのルールセット(`minimal`、`recommended`、`recommended-strict`、または`spec`)を選択するか、独自のカスタムルールを作成できます。多くのチーム間でCIで一貫したAPI設計を強制したい場合、この設定駆動型のガバナンスは非常に強力です。
npm install -g @redocly/cli@latest
redocly lint openapi.yaml
バンドル、分割、結合は仕様書の基盤を処理します。 `redocly bundle`は`$ref`ポインタをたどり、統合された単一ファイルを生成します。`redocly split`はその逆で、単一の記述を複数ファイルのレイアウトに展開します。`redocly join`(実験的)は複数のOpenAPIファイルを一つにマージします。
redocly bundle openapi.yaml --output dist/openapi.json
ドキュメントは`build-docs`から生成されます。 これはスタンドアロンのRedoc HTMLページを生成し、`preview-docs`はライブのローカルプレビューを提供します。
redocly build-docs openapi.yaml -o docs.html
したがって、「スタイルガイドに照らして検証し、仕様書をバンドルし、Redocドキュメントをターミナルからすべて出荷する」というニーズであれば、Redocly CLIは強力なデフォルトです。多くのチームが使い続けるべきでしょう。他のツールを探す理由は、品質ではなく「範囲」に関するものです。
人々が代替ツールを探す理由
- リンティングとドキュメントだけでなく、オールインワンのプラットフォームが欲しい。 Redocly CLIはAPIテストを実行せず、モックサーバーもホストしません。設計、モック、テストランナーも必要なら、その周りにツールチェーンを組み立てることになります。
- CLIだけでなくGUIも欲しい。 Redoclyは設計上コードファーストです。チームに視覚的に作業することを好む人がいる場合、ターミナルのみのガバナンスはなかなか受け入れられません。
- CI用の組み込みテストランナーが欲しい。 リンティングは仕様書の問題を検出します。実行中のAPIが正しく動作するかどうかは教えてくれません。それは別のツールです。
- 5つのツールを繋ぎ合わせたくない。 リンティングにSpectral、バンドルとドキュメントにRedocly、テストにPostmanまたはNewman、モックに別のツール。これは機能しますが、維持管理するべき動く部品が多すぎます。
これらのそれぞれが異なる代替ツールを指しています。それらを対応させてみましょう。
本当に求めているもの別ショートリスト
APIライフサイクル全体をカバーする一つのプラットフォームが欲しいならApidog
Apidogは、設計、モック、テスト、ドキュメント作成を一つの場所で行えるオールインワンのAPIプラットフォームです。インポート、エクスポート、CIテスト実行のためのCLIを備えています。リンター、バンドラー、テストランナー、モックサーバーを繋ぎ合わせるよりも、ライフサイクル全体をカバーする単一のツールが欲しい場合に最適な選択肢です。

正直なところを言いますと、Apidogには、Redoclyの`lint`のような設定可能なコードファーストのスタイルガイドリンターとカスタムルールセットはありません。 `apidog lint`コマンドはなく、CLIを通じてSpectralまたはRedoclyスタイルのカスタムルールを作成する方法もありません。Apidogは仕様書をインポートする際に構造を検証しますが、厳格でカスタマイズ可能な設計ガバナンスが唯一の懸念事項である場合、Apidog単独では`redocly lint`の代わりにはなりません。その作業にはSpectralと組み合わせて使用してください。これについては後ほど説明します。
Redocly CLIにはなく、Apidogが提供するのは、ビジュアルデザイナー、組み込みのモックサーバー、ビジュアルテストビルダー、そしてCIテストランナーです。CLIはターミナルで処理すべき部分を扱います。
# Install and authenticate (token from the app: avatar > Account Settings > API Access Token)
npm install -g apidog-cli@latest
apidog login --with-token <YOUR_TOKEN>
# Import a spec into a project (validates + resolves multi-file $refs)
apidog import --project 123456 --format openapi --file ./openapi.json
# Export a single consolidated file, and pick your OpenAPI version
apidog export --project 123456 --format openapi --output ./openapi.json --oas-version 3.1
# Run a test scenario in CI with multiple report formats
apidog run --project 123456 -t <testScenarioId> -e <environmentId> -r "cli,html,json,junit"
`apidog import`はインポート時の検証を行い、`apidog export`はエクスポート時のバンドルを行います(単一ファイルを出力し、OASバージョンをアップグレードできます)。完全なコマンドリストはApidog CLIドキュメントにあり、弊社のApidog CLI完全ガイドではすべてのフラグについて詳しく説明しています。最適: 設計、モック、テスト、ドキュメントを一つの場所で完結させたいチーム。
Redoclyに求めていたのがリンターだけならSpectral
`redocly lint`だけしか使わないのであれば、プラットフォームを切り替える必要はありません。StoplightのSpectralは、Redoclyのリンティングと最も直接的に重なるオープンソースのルールベースリンターです。YAMLでルールを記述し、任意のOpenAPIまたはAsyncAPIドキュメントに対して実行し、CIに組み込むことができます。

SpectralとRedoclyのリンターは非常に似ています。どちらも設定駆動型で、ルールセットが付属し、カスタムルールの作成が可能です。どちらを選択するかは、多くの場合、エコシステムへの適合性や、チームがすでに知っているルールセット形式によって決まります。Spectral OpenAPIリンティングに関する詳細な解説ではルール作成について、より広範なAPIリンティングガイドではリンティングの全体像を比較しています。最適: 純粋でカスタマイズ可能な仕様書リンティングが真のニーズであるチーム。
ドキュメントを主に求めていたならScalarまたはBump.sh
Redocly CLIで重要視していた部分が`build-docs`だったのであれば、代替ツールはプラットフォームではなく、ドキュメント作成ツールです。ScalarとBump.shはどちらも、OpenAPIの記述をホスト型の閲覧可能なリファレンスドキュメントに変換します。それぞれ独自のルック&フィールと機能セットを持っています。これらはリンティングやテストではなく、ドキュメント体験に焦点を当てています。最適: 見栄えが良く、保守しやすいAPIリファレンスドキュメントが主な目標であるチーム。
もはや選択肢とは言えないswagger-cli
古いガイドではまだswagger-cliが言及されているのを見かけるかもしれませんが、はっきりさせておく価値があります: swagger-cliは非推奨です。 swagger-cliのGitHubリポジトリには、もはやメンテナンスされておらず、Redocly CLIが後継としてユーザーに推奨されていると記載されています。
swagger-cliには`swagger-cli validate`と`swagger-cli bundle`という2つのコマンドしかありませんでした。スタイルルールでのリンティング、ドキュメントの生成、テストの実行、モック機能は一切ありませんでした。もし現在使用しているなら、そこから移行すべきであり、今から使用すべきではありません。swagger-cliの使用方法に関するガイドではその機能がカバーされており、Redoclyはswagger-cliからの移行ガイドを公開しており、正確なフラグマッピングも含まれています。完全を期すために、そのマッピングを以下に示します。
比較表
Redocly CLIが処理するタスクに対する各オプションの比較です。「カスタムルールリンティング」とは、設定可能でコードファーストのスタイルガイドリンターとカスタムルールセットを意味します。
| ツール | カスタムルールリンティング | バンドル | ドキュメント | モック | テスト | GUI | オープンソース | 最適な用途 |
|---|---|---|---|---|---|---|---|---|
| Redocly CLI | はい | はい | はい (Redoc) | いいえ | いいえ | いいえ | はい | コードファーストなリンティング、バンドル、ドキュメントガバナンスをターミナルから |
| Apidog | いいえ | エクスポート経由 | はい | はい | はい (CIランナー) | はい | いいえ (フリーミアム) | 設計、モック、テスト、ドキュメントを一つのプラットフォームで |
| Spectral | はい | いいえ | いいえ | いいえ | いいえ | いいえ | はい | 純粋でカスタマイズ可能なOpenAPI/AsyncAPIリンティング |
| Scalar / Bump.sh | いいえ | いいえ | はい | いいえ | いいえ | はい | さまざま | ホスト型APIリファレンスドキュメント |
| swagger-cli | いいえ | はい | いいえ | いいえ | いいえ | いいえ | はい (非推奨) | 新しい機能はなく、メンテナンスされていない |
表についての注意点: Apidogの「エクスポート経由」とは、`apidog export`が統合された単一ファイルを出力することを意味し、これは`redocly bundle`を実行する実用的な理由をカバーしますが、そのまま`bundle`コマンドと置き換えられるものではありません。また、Apidogはフリーミアムでありオープンソースではありませんが、Redocly CLIとSpectralは両方ともオープンソースです。これらのトレードオフを理解した上で判断してください。
swagger-cliからRedocly CLIへのバンドルフラグマッピング
非推奨のswagger-cliを使用しており、Redoclyがバンドルの移行先である場合、フラグはきれいにマッピングされます。
| swagger-cli | Redocly CLI | 意味 |
|---|---|---|
-o, --outfile <file> |
--output (または -o) |
標準出力ではなくファイルに書き込む |
-t, --type <json|yaml> |
--ext <json|yaml|yml> |
出力ファイルの種類 |
-r, --dereference |
-d, --dereferenced |
すべての $refs を完全にインライン化する |
したがって、`swagger-cli bundle -o output.json`は`redocly bundle --output output.json`となります。
明確な推奨事項
唯一の勝者というものはありません。なぜなら、適切な答えはRedocly CLIのどの機能を置き換えようとしているかに依存するからです。
ガバナンスがまさに必要とするものと合致するなら、**Redocly CLIを使い続けてください。** 軽量でオープンソース、設定駆動型のリンター、バンドラー、Redocドキュメントビルダーをターミナルから純粋に実行するというのは、本当に優れたセットアップです。フィットするツールを捨てる理由はここにはありません。
ツールチェーンの組み立てにうんざりしていて、設計、モック、テスト、ドキュメントをターミナル向けの部分にCLIを備えた単一のプラットフォームで実現したい場合は、**Apidogを選択してください。** 各ステージで個別のツールを維持管理するのをやめ、GUIを求めるチームメンバーのためにGUIも手に入ります。ただし、カスタムルールリンティングも必要なら、Spectralと組み合わせる必要があることを明確に理解しておいてください。CI/CDガイドにおけるApidog CLIでは、テストランナーがパイプラインにどのように組み込まれるかを示し、Apidog CLIとNewmanの比較では、多くのチームがすでに使用しているランナーとの比較を行っています。Apidogをダウンロードして、クレジットカードなしで無料で試すことができます。
リンティングがすべてである場合は、**Spectralを選択してください。** 1つのコマンドを置き換えるためにプラットフォームを切り替える必要はありません。
正直なところ:RedoclyはコードファーストのCLIスペシャリストであり、Apidogはオールインワンのビジュアルプラットフォームです。これらは異なるパラダイムであり、単なるドロップインの交換ではありません。ご自身のニーズに合わせて選択してください。
よくある質問
ApidogはRedocly CLIのドロップイン代替品ですか? いいえ、そうではありません。そのことを率直に伝えるのが一番です。Apidogはライフサイクル(設計、モック、テスト、ドキュメント)のより多くの部分をカバーしますが、`redocly lint`のようなカスタムルールセットリンターは持っていません。厳格で設定可能な仕様書ガバナンスが主なタスクであれば、Redoclyのリンターを使い続けるか、Spectralを使用してください。Apidogは、いくつかのツールではなく、APIライフサイクル全体をカバーする一つのツールを求めている場合に有利です。
Apidog CLIには`lint`コマンドがありますか? いいえ。Apidogは`apidog import`で仕様書をインポートする際に構造を検証しますが、`apidog lint`はなく、CLIを通じてSpectralやRedoclyスタイルのカスタムルールを作成する方法もありません。そのためには、ApidogとSpectralを組み合わせて使用してください。
Redocly CLIなしでOpenAPIファイルをバンドルできますか? はい。`apidog export --project--format openapi --output ./openapi.json`は統合された単一ファイルを出力し、`--oas-version`で特定のOpenAPIバージョンをターゲットにできます。これは文字通りの`bundle`コマンドではありませんが、同じ実用的なニーズをカバーします。バンドルのみが必要で他に何もいらない場合は、`redocly bundle`は依然として優れた、特化した選択肢です。
2026年にswagger-cliを使うべきですか? いいえ。swagger-cliは非推奨でメンテナンスされておらず、そのリポジトリ自体がRedocly CLIを後継として指しています。swagger-cliは検証とバンドルしか行いませんでした。その作業にはRedocly CLIを使用するか、ライフサイクルの残りの部分も必要ならApidogのようなプラットフォームに移行してください。
これとRedoclyドキュメントプラットフォームの比較との違いは何ですか? この記事は、オープンソースの`@redocly/cli`ツール(リンティング、バンドル、分割、結合、ドキュメントビルド)についてです。ホスト型Redoclyドキュメント製品や、ドキュメントレンダラーとしてのRedocを比較している場合は、代わりにAPIドキュメントのためのRedocly代替ツールをご覧ください。この2つは、たまたま同じ名前を共有する異なる製品を扱っています。仕様書自体については、OpenAPI Specificationが信頼できる情報源であり、現在のインストール詳細はnpmのRedocly CLIで確認できます。
