rule-research について
rule-research は、検出ルールの実装前に契約を定義する開発スキルです。根拠や境界ケースを調査し、rule-writing が推測せず実装できる仕様をまとめます。
主な機能
- 01ルールの動作と実行時の理由を定義
- 02関連ルール、テスト、ユーティリティを調査
- 03有効なパターンと検出対象を区別
- 04検出分析の範囲を指定
- 05実装可能なルール契約を作成
活用シーン
- 01新しい lint ルールの実装前の仕様化
- 02検出に関わる境界ケースの整理
- 03rule-writing 用の契約の準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ millionco/ react-doctor --skill rule-researchインストール後、Claude Code で/rule-researchを入力して読み込まれたか確認します。
詳細
ルールを調査する
rule-writing が推測なしで実装できるルールの仕様を作成します。
動作を定義する
正確性に影響する質問だけを解決します。
- どのコードパターンを報告するべきですか?
- どのような実行時の動作が有害ですか?
- どのような類似コードは報告対象にしないべきですか?
- 検出に構文、スコープ、パスの分析が必要ですか?
- インポート、動的、型駆動、またはインタープロシージャルなケースのうち、対象外とするものは何ですか?
ユーザーが実装を依頼した場合は、仕様を簡潔にまとめて続行します。
根拠を集める
-
ルールを1文で定義します:
This rule catches <pattern> that causes <problem>. -
実行時に問題となる理由を説明します。
-
近接するルール、テスト、ユーティリティ、生成されたレジストリを調べます。
-
新しい検出器やヘルパーを提案する前に、
trufflerを使用します。bunx @rayhanadev/truffler "<symbol-or-behavior>" \ packages/oxlint-plugin-react-doctor/src/plugin \ --kind function,interface,type,constant --limit 20 -
公式ドキュメント、実装上の注記、関連するリンターの動作、オープンソースの例を集めます。
-
有力な陽性例、関連パターン、有効な例外、未対応のケースを分けます。
-
構文のみ、スコープを考慮、パスを考慮のいずれかの検出方法を選びます。
仕様が変わる可能性のある、範囲を限定したオープンソースのサンプルを調べる場合は、rde-eval を使用します。最終的なプルリクエストとの整合性確認は rule-validate に任せます。
仕様を書く
次を返します。
Rule definition:
<pattern and specific problem>
Runtime reason:
<short explanation>
Detector precision:
<syntax-only, scope-aware, or path-aware>
Evidence:
- <source and implication>
Strong positives:
- <reportable examples>
False-positive traps:
- <valid examples>
In scope:
- <supported cases>
Out of scope:
- <explicit boundaries>
Test seeds:
- <invalid and valid fixtures>
Open questions:
- <correctness blockers only>
誤検出は正確性の不具合として扱います。診断範囲は、実証された動作と同等か、それより狭くします。関連する別のアイデアは、個別のルールに分けます。
コメント
Markdown 対応