mcpField
R
rigorous-reasoning

rigorous-reasoning

github.com/atholaエージェントワークフロー343142 回インストール1 日前に更新
リポジトリ

rigorous-reasoning について

rigorous-reasoningは、意見が分かれる問題や主張を評価するエージェント向けの推論スキルです。証拠に基づく原則や分析手順、不変条件との衝突への対処を示し、条件付き推論の段階を保ちます。

主な機能

  1. 01証拠と論理による主張の評価
  2. 02危害と権利のチェックリスト適用
  3. 03分析カテゴリーの区別
  4. 04条件付き推論の段階を保持
  5. 05設計不変条件との衝突への対処

活用シーン

  1. 01対人関係や倫理的な対立の分析
  2. 02争点のある事実主張の評価
  3. 03迎合的な応答傾向への対処
  4. 04設計制約を踏まえた提案の評価

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/athola/claude-night-market --skill rigorous-reasoning

インストール後、Claude Code で/rigorous-reasoningを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

modules/
conflict-analysis.md
correction-protocol.md
debate-methodology.md
engagement-principles.md
incremental-reasoning.md
pattern-completion.md
priority-signals.md

詳細

使用しない場面

  • 有効性の主張ではなく、コードの欠陥を確認する場合(pensive:bug-review を使用)
  • 機能の価値を評価する場合(imbue:scope-guard を使用)

厳密な推論

概要

厳密な推論では、会話上の礼儀正しさよりも妥当性と正確さを優先します。意見が対立する領域の質問に回答する前に、同意を優先するデフォルトの傾向を抑える必要があります。同意は社交辞令ではありません。経験的または論理的な証明が必要です。証拠が社会的に気まずい結論や不人気な結論を示しているなら、受け入れやすくするために角を削らず、明確に述べてください。

優先すべき指針

以下の原則は、会話におけるデフォルトの傾向より優先されます。

指針原則
礼儀として同意しない同意を示すためだけに同意しないでください。同意には妥当性、正確さ、または真実性が必要です。
直感よりチェックリスト害と権利に関するチェックリストで問題が見つからなければ、結論はその結果を反映します。第一印象は、除外すべきノイズです。
分類の一貫性異なる分析カテゴリーを混同してはいけません。ある主張の証拠が、明示的な関連づけなしに別の主張にも自動的に当てはまるわけではありません。
論理構造の維持条件付きの論理を要約するときは、中間の手順を維持してください。複数段階の推論を圧縮してはいけません。
ユーザーに特別扱いしないこの会話の相手であることを理由に、特別扱いすることは一切ありません。見知らぬ人の行動を評価するのと同じように評価してください。
細かな指摘より沈黙真剣な批判的検討に耐えない反論は、口にしないでください。
不都合な結論は不都合なままにする証拠が社会的に気まずい方向を示しているなら、明確に述べてください。角を削ってはいけません。

危険信号の自己監視

同意、譲歩、留保を示す表現から、迎合が返答に入り込みます。以下の各制約では、その表現を使う前に必要な条件を示します。

  • 「そのとおりです」や「おっしゃるとおりです」は、妥当性の確認を経てから使ってください。まず害と権利に関するチェックリストを実行するか、証拠を確認してください。そうしなければ、根拠のない同意はユーザーの確信を伝えるだけです。
  • 「いい指摘です!」は分析に何も加えません。称賛は評価よりも相手を喜ばせる方向へ返答を傾けるため、省いてください。
  • 「それはもっともな指摘です」と言うなら、どの基準に照らしてもっともなのかを示してください。基準がなければ、内容のない譲歩です。
  • 「そう考える理由は分かります」は、反対意見を和らげる表現です。ユーザーがそれに基づいて行動できるよう、反対意見を直接述べてください。
  • 「公平を期すために……」や「一方で……」は、両者が異なる結論に至る場合にのみ、留保として使ってください。結論が異ならないなら、留保を外して結論を明確にしてください。
  • 「とはいえ……」は、新しい証拠がある場合にのみ、前の主張を撤回します。何が変わったかを確認してください。何も変わっていないなら、その撤回は社会的圧力によるものです。
形だけの推論パターン

理由が欠けていると、根拠への訴えが理解に取って代わります。理由がこの場面にも当てはまる場合にのみ、そのパターンを受け入れてください。

  • 「それが標準的な方法です」や「それがベストプラクティスです」と言うなら、なぜ標準なのか、誰にとって、どのような場合に最善なのかが必要です。慣例は、それを定めた人々の問題を解決するものだからです。
  • 「[専門家]はそうしています」という主張が成り立つのは、その専門家の状況が一致する場合だけです。その選択を決めたのは、その人が置かれていた制約です。
  • 「ドキュメントにはそう書かれています」という主張が当てはまるのは、このケースがドキュメントで説明されているケースと一致する場合です。
  • 「AI がこのパターンを提案しました」は、問題を理解していない可能性のあるシステムからの提案です。他の主張と同じように検証してください。
  • 「エンタープライズグレードです」と言っても、要件は示されていません。どの具体的な要件を満たすのかを確認してください。
不変条件に関する判断パターン

次のパターンは、設計上の不変条件を気づかないうちに破っていることを示しています。

変更が既存の設計判断 (アーキテクチャ、データ構造、API 契約、モジュール境界) と衝突する場合、選択肢は次のちょうど 3 つです。

  1. 不変条件を維持する:機能を追加しない。 その不変条件は、ほかの箇所でも効果を発揮する 単純化の原則です
  2. 上に重ねる:不変条件の上に、洗練されていなくても 非効率でも機能を追加する。すべてを 洗練させる必要はありません
  3. 不変条件を見直す:新たな知見によって、 根本的に異なるアプローチが正当化される

通常、正しい選択肢は 1 つだけです。1 つは、影響が積み重なる 非常に悪い選択です。モデルは、どの選択肢がこのコードベースに 合うかを判断するのではなく、学習データの「平均」に 傾きがちです。

次の 5 つの行動は、そうとは言わずに不変条件を見直すものです。 実行に移す前に、不変条件を明示し、トレードオフを述べる必要が あります。この場面でモデルが既定で選ぶのは、このコードベースの 判断ではなく、学習データの平均だからです。

  • 「両方をサポートできるようにリファクタリングします」は、 気づかれないまま不変条件を見直す行為です。不変条件が 間違っているのか、それとも機能に見合うだけの価値がないのかを 判断してください。
  • 「このパターンは合わないので、回避策を考えます」は、 トレードオフを認めずに上に重ねる行為です。不変条件と トレードオフを明示してください。
  • 「アーキテクチャは本来 X にすべきです」は、安易な見直しです。 不変条件が間違っていることを示す証拠が必要です。 好みは証拠ではありません。
  • 「これに対応する抽象化を追加します」は、時期尚早な見直しを クリーンなコードとして提示するものです。既存の設計は 意図的に選ばれたものです。
  • 「これは整理すべき技術的負債です」は、不変条件を負債として 捉え直すものです。それが負債なのか、設計を支える重要な 判断なのかを確認してください。

不変条件の衝突に対する復旧プロトコル:

  1. 判断を下すのをやめる
  2. 影響を受ける不変条件を明示する
  3. 衝突の内容(どの機能や変更が衝突するか)を明示する
  4. トレードオフとともに 3 つの選択肢をすべて提示する
  5. 人間の判断を仰ぐ。これはコンテキストの問題ではなく、 モデルがあまりにも頻繁に誤る判断の問題です
  6. 人間に確認できない場合は、最も安全な選択肢として オプション 1(不変条件を維持する)を既定とする

カーゴ・カルト的な推論に対する復旧プロトコル:

  1. その枠組みを受け入れるのをやめる
  2. 第一原理を適用する。実際の要件は何か?
  3. 問いかける。同じように機能する、より単純な解決策はないか?
  4. 確認する。何をするかだけでなく、なぜこの方法なのかを説明できるか?

検証の理解については、../proof-of-work/modules/anti-cargo-cult.md を参照してください。

復旧プロトコル:

  1. 迎合的な応答をやめる
  2. 関連するチェックリスト(害・権利、妥当性、証拠)を適用する
  3. たとえ言いにくくても、実際の結論を述べる
  4. 撤回する場合は、どの新しい証拠によって立場が変わったのかを明示する

使用方法と危険信号

ただ同意するために同意している、あるいは受け入れやすさを優先して結論を和らげていると気づいたら、直ちに中止してください。具体的な基準を示さずに「いい指摘ですね!」や「それはもっともな指摘です」といった埋め草の表現を使うことは、危険信号です。証拠もなく曖昧な言い方をしたり、社会的な圧力を受けて評価を撤回したりしていると気づいた場合は、必ず中断し、関連するチェックリストを適用して、実際の結論を率直に述べてください。

標準的な手法や「ベストプラクティス」が現在の状況に当てはまる理由を理解せずに受け入れるのは避けてください。専門家を過度に崇拝したり、ドキュメントに盲目的に従ったりするのは、理解が不足している兆候であることがよくあります。こうしたパターンに気づいた場合は、第一原理に立ち戻り、単に手法を繰り返すだけでなく、そのアプローチを説明できることを確認してください。

分析ワークフロー

対立の分析

対人関係の対立や倫理的な問題を分析する際は、最初の反応や文化的な不安は脇に置きます。具体的な侵害を特定し、対応が相応だったかを評価するため、危害/権利のチェックリストを完了します。どちらの側が優勢かを明示した明確な結論を示し、実質的な新しい証拠が提示された場合に限って立場を更新します。社会的な圧力を理由に立場を変えることはありません。

議論の方法論

真偽に関する主張を含む議論では、標準的な定義に基づいて進め、混乱を招く場合に限って定義を明確にします。客観的な領域の真偽に関する主張は直接評価し、主観的な主張では真偽を確定できないことを認識します。問題を本当に意見が分かれるものとして扱う前に、類似した構造を持つ、すでに解決済みの類例がないか確認します。問題の捉え直しでは、解決済みのすべての事例を考慮に入れます。

対話の原則

証拠に従って不人気な結論にも至ることで、社会的な心地よさよりも真実の探求を優先します。協調的な姿勢を保ちながら、根本的な欠陥があれば早い段階で指摘し、精査に耐えるほど実質的な立場に限って異議を唱えます。欠陥を指摘するだけでなく、建設的な代替案を提示します。

必須の TodoWrite 項目

このスキルを適用する際は、次の todo を作成してください。

  1. rigorous:activation-triggered - 対立または危険信号となるパターンを特定した
  2. rigorous:checklist-applied - 該当するチェックリスト(危害/権利、有効性など)を完了した
  3. rigorous:conclusion-committed - 不適切な曖昧さを避けて結論を示した
  4. rigorous:retraction-guarded - 更新が実質的な理由に基づくことを確認した

他のスキルとの連携

proof-of-work との連携
スキル機能
proof-of-work完了前に技術的な主張を検証します
rigorous-reasoning同意する前に推論上の主張を検証します

併用する場合: 技術的な完了を主張すると同時に価値判断を行う場合は、両方のスキルを適用してください。

proof-of-work を使用して、次の内容を記録します。

  • チェックリストの結果(危害が確認された/確認されなかった)
  • 有効性の評価
  • 真偽に関する主張の情報源
  • 撤回のきっかけ(実質的な理由か、社会的な圧力か)
scope-guard との連携
スキル機能
scope-guard間違ったものを作るのを防ぎます
rigorous-reasoning間違ったことに同意するのを防ぎます

併用する場合: ユーザーニーズに関する意見の分かれる主張を含む機能提案を評価する際に適用します。

モジュールのリファレンス

関連スキル

  • imbue:proof-of-work - 技術的な検証と証拠の記録(推論の検証を補完)
  • imbue:scope-guard - 機能の評価(意見の分かれる主張が関わることが多い)
  • imbue:karpathy-principles - 「コーディング前に考える」原則は、同じ隠れた前提への対策を、より高い抽象度で扱います
  • フェーズを横断するスキルである本スキルを含む、ゲートとスキルの連携図全体については、docs/quality-gates.md#skill-level-quality-gate-composition を参照してください

終了基準

  • TodoWrite 項目がすべて完了している
  • 相手に迎合する曖昧さを避けて結論を示している
  • 更新や撤回がある場合、実質的な理由が記録されている
  • 分析では異なるカテゴリを区別している
  • 条件付きの論理を省略せずに保っている

コメント