CLIコマンドリファレンス
Rigorのすべてのコマンドは単一のrigor実行ファイルのサブコマンドです:
rigor <command> [options] [arguments]rigor helpはコマンド一覧を表示し、rigor versionはインストール済みバージョンを表示します。不明なコマンドや不正なオプションの場合、64で終了します——これは慣例的な「使用法エラー」コードです。
コマンド check · init · annotate · type-of · type-scan · explain · diff · sig-gen · lsp · baseline · triage · coverage · mcp · plugins · plugin · playground · skill · lsp対mcp · 終了コード
rigor check
Section titled “rigor check”Rubyソースを型エラーについて解析し、診断を報告します。 日常使いとCIで実行するコマンドです。
rigor check [paths...]pathsはファイルまたはディレクトリです。省略した場合、Rigorは設定ファイルのpaths:リストを解析します。
| オプション | 説明 |
|---|---|
--config=PATH | 自動探索の代わりに特定の設定ファイルを使用する。 |
| `—format=text | json` |
--explain | フェイルソフトフォールバックイベントをinfo診断として表示する。 |
--no-cache | この実行では永続キャッシュをスキップする。 |
--clear-cache | 実行前にキャッシュディレクトリを削除する。 |
--cache-stats | 終了時にオンディスクキャッシュのインベントリを表示する。 |
--[no-]stats | 実行サマリー(ファイル数、クラス数、メモリ、経過時間)をstderrに表示する。デフォルトはオン。 |
--workers=N | N個の並列ワーカープロセスに解析を分散する(現在はfork方式のプール、ADR-15)。デフォルトは0(逐次処理)。 |
--baseline=PATH | 設定を上書きしてベースライン(baseline)ファイルを読み込む。 |
--no-baseline | 設定されたベースラインを無視する。 |
--baseline-strict | ベースラインのドリフトで実行を失敗させる——CIゲートとして使用。 |
--treat-all-as-inline-rbs | rigor-rbs-inlineをrequire_magic_comment: falseで強制ロードし、解析されるすべてのファイルを# rbs_inline: enabledコメントなしでインラインRBSとして扱う(ADR-32)。 |
--tmp-file=PATH --instead-of=PATH | エディタモード: --tmp-fileのバッファを使ってPATHを解析する。両方必須。 |
エラー重要度の診断がない場合は0で終了、診断がある場合は1で終了、使用法エラーの場合は64で終了します。
rigor init
Section titled “rigor init”スターター設定ファイルを書き出します。
rigor init [--path=PATH] [--force]デフォルトでは.rigor.dist.ymlを書き出します。--pathで別のターゲットを指定し、--forceで既存ファイルを上書きします。--forceなしでファイルが存在する場合は1で終了します。
rigor annotate
Section titled “rigor annotate”ファイルを再表示し、各行に評価する式の型を末尾の#=> dump_type:コメントとしてタグ付けします。推論型の検査を参照してください。
rigor annotate [--[no-]color] [--config=PATH] FILEFILEは必須です。カラーはttyの場合に自動検出され、NO_COLORを尊重します。--color / --no-colorで上書きできます。パースエラーやファイル不在の場合は1で終了します。
rigor type-of
Section titled “rigor type-of”1つのソース位置の推論型を表示します。
rigor type-of FILE:LINE:COLrigor type-of FILE LINE COL位置は単一のfile:line:colトリプルまたは3つの引数として受け付けます。--format=jsonはマシン可読な形式を出力し、--traceはフェイルソフトフォールバックを記録します。checkと同様にエディタモードの--tmp-file / --instead-ofペアも受け付けます。
rigor type-scan
Section titled “rigor type-scan”パス全体のtype_of推論カバレッジを報告します——診断器自体の診断で、クラスの推論が不良な理由を調査するときに役立ちます。
rigor type-scan PATH...--limit=Nは表示例の上限を設定し(デフォルト10)、--show-recognizedは完全にカバーされたクラスを含め、--threshold=RATIOは未認識ノードの割合がRATIOを超えた場合にコマンドをゼロ以外で終了させます。
rigor explain
Section titled “rigor explain”診断ルールのカタログエントリーを表示します。引数なしで呼び出すとすべてのルールを一覧表示します。
rigor explain [rule]ruleはルールID(call.undefined-method)、レガシーエイリアス、またはファミリーワイルドカード(call、flow、def、assert、dump)です。--format=jsonが利用可能です。不明なルールの場合は64で終了します。
rigor diff
Section titled “rigor diff”現在の診断を保存済みベースラインJSONと比較し、新しいものだけを報告します。
rigor diff <baseline.json> [paths...]--current=PATHは新規チェックを実行する代わりに保存済み診断JSONと比較します。新しい診断が現れた場合は1で終了します。
rigor sig-gen
Section titled “rigor sig-gen”Rubyソースから推論したRBSシグネチャを出力します。分類モデルと--paramsポリシーについてはハンドブック第11章を参照してください。
rigor sig-gen [paths]| オプション | 説明 |
|---|---|
--print | RBSをstdoutに書き出す。デフォルト。 |
--diff | 既存RBSに対するunified diffを書き出す。 |
--write | RBSをsig/<path>.rbsファイルに書き出す。 |
--overwrite | より厳密な戻り値の更新でユーザー作成のRBSを置き換えることを許可する。 |
--include-private | privateおよびprotectedメソッドも出力する。 |
| `—params=untyped | observed |
--observe=PATH | コールサイト観察のためにPATHをスキャンする。繰り返し可能。 |
--new-files / --new-methods / --tighter-returns | その分類のみ出力する。 |
| `—format=text | json` |
rigor lsp
Section titled “rigor lsp”stdioで言語サーバーを実行します。エディタ統合を参照してください。
rigor lsp [--transport=stdio] [--log=PATH] [--config=PATH]stdioはv1で唯一のトランスポートです。--log=PATHはワイヤーログをstderrの代わりにファイルに書き出します。
rigor baseline
Section titled “rigor baseline”診断ベースラインを管理します。ファイル形式とワークフローについてはベースラインを参照してください。
rigor baseline <generate|regenerate|dump|drift|prune> [options]| サブコマンド | 目的 |
|---|---|
generate | 現在の診断から新しいベースラインを書き出す。--forceなしで上書きを拒否する。 |
regenerate | 無条件にベースラインを書き直す——品質改善後に使用する。 |
dump | ベースラインの内容を表示する。--ruleと--fileでフィルタリング可能。 |
drift | 各バケットのドリフトを監査する。`—only=within |
prune | 診断に一致しなくなったバケットを削除する。--dry-runでプレビュー。 |
generateとregenerateは--output=PATHと--match-mode=rule|messageを受け付けます。
rigor triage
Section titled “rigor triage”生のリストをダンプする代わりに、診断ストリームを要約します——ルール分布、ファイルごとのホットスポット、ヒューリスティックな「なぜ」のヒント。ベースラインを参照してください。
rigor triage [paths]--top=Nはホットスポット数を設定し(デフォルト10)、--hints-onlyと--no-hintsは表示するセクションを選択します。triageは参考情報であり、常に0で終了します——ビルドをゲートすることはありません。
rigor coverage
Section titled “rigor coverage”型精度カバレッジ — 精密な型に解決する呼び出しサイトとDynamicへフォールバックする呼び出しサイトの比率 — を報告します。「Rigorが実際にどれだけ推論しているか」の品質ゲートです。
rigor coverage [paths]--format=text|jsonが出力形式を選び、--config=PATHが設定探索をオーバーライドします。--threshold=RATIOは精度比率がRATIO(0.0〜1.0)を下回ると1で終了し、CIゲートになります。
rigor mcp
Section titled “rigor mcp”RigorのMCP(Model Context Protocol)サーバーをstdio上で実行し、AIコーディングアシスタントがRigorツールを直接呼び出せるようにします。MCPサーバーを参照してください。
rigor mcp [--transport=stdio] [--config=PATH]stdioが唯一のトランスポートです。サーバーは純Ruby製のJSON-RPC 2.0実装で、7つの読み取り専用ツール(rigor_check、rigor_type_of、rigor_triage、rigor_annotate、rigor_sig_gen、rigor_explain、rigor_coverage)を公開します。
rigor lsp対rigor mcp
Section titled “rigor lsp対rigor mcp”lspはエディタへLanguage Server Protocolを話し;mcpはAIアシスタントへModel Context Protocolを話します。両方ともstdio上で動き、同じ解析エンジンをラップします。
rigor plugins
Section titled “rigor plugins”.rigor.ymlに設定された各プラグインの有効化状態 — ロード済み、ロードエラー(理由付き)、各プラグインの宣言した拡張サーフェス(surface) — を報告します。プラグインを参照してください。
rigor plugins [--format=text|json] [--strict] [--capabilities] [--config=PATH]--strictなしでは常に0で終了し、--strictでは1つでもプラグインのロードに失敗すると1で終了します(CIゲート)。
--capabilitiesは拡張プロトコルカタログ(ADR-37)に切り替えます。これは、ロードされた各プラグインが何を提供するか——そのnode_ruleがマッチするASTノード型、そのdynamic_returnがゲートするレシーバークラス、そのtype_specifierがナローイングするメソッド、そしてそれがproduces/consumesするファクト——を集約した、焦点を絞った機械可読なマップです。ツール連携のために--format=jsonと組み合わせます(AIエージェントはプラグインのソースを1行も読まずに、すべてのプラグインの振る舞いを列挙できます)。同じ狭いサーフェスはデフォルトのフルレポートにも現れます。単数形のrigor pluginと混同しないこと。
rigor plugin
Section titled “rigor plugin”ツールチェーンにバンドルされたプラグインのオンディスクのソースをブラウズし、自前のプラグインを著作する際に本物の動作するプラグインを作業例として読めるようにします。
rigor plugin <list|path|print|root> [name]| サブコマンド | 目的 |
|---|---|
list | バンドルされた各プラグイン・例の名前 + 絶対ディレクトリパスの表(サブコマンドなしのデフォルト)。 |
path <name> | プラグインのディレクトリへの1行の絶対パス。 |
print <name> | ヘッダー(dir / lib / sig / READMEパス)に続けてプラグインの主ソース本体をインライン展開。 |
root | rigortype gemルートとその主要サブディレクトリ。 |
パスはgemの場所から実行時に解決されます(コンテナ / クロスファイルシステム構成では文書化された注意点)。
rigor playground
Section titled “rigor playground”ブラウザプレイグラウンド(リアルタイム診断付きのCodeMirrorエディタ)を起動します。別のrigor-playground gemが必要で、未インストールならインストールヒントを出力して64で終了します。
rigor playgroundrigor skill
Section titled “rigor skill”rigortype gemの内部に出荷されたバンドル済みAgent Skillsを一覧・出力し、Rigorと並んでインストールされたAIコーディングエージェントが、プロジェクト側のソースチェックアウトなしにそれらを発見・追従できるようにします。スキルを参照してください。
rigor skill <list|print|path> [name]| サブコマンド | 目的 |
|---|---|
list | バンドルされた各スキルの名前 + 絶対パスの表;サブコマンドなしのデフォルト。 |
print <name> | SKILL.md本体をstdoutへ出力。スキルのreferences/ディレクトリを指すヘッダー付き。 |
path <name> | 1行の絶対SKILL.mdパスを出力。ファイル読み取りツールへの入力に適する。 |
| コード | 意味 |
|---|---|
0 | 成功 — エラー重要度の診断なし。 |
1 | 診断あり、またはコマンド固有のエラー(パースエラー、ファイル不在、diffでの新規診断)。 |
64 | 使用法エラー — 不明なコマンド、不正なフラグ、不正な引数。 |
rigor triageは例外で、参考情報であり常に0で終了します。
© 2026 TypedDuck. Licensed under CC BY-SA 4.0.