complexity-mitigator について
complexity-mitigatorは、理解しにくい既存コードを分析する読み取り専用スキルです。ドメイン上必要な要素と付随的な複雑さを分け、仕様リスクを明らかにして、実装せずに引き継ぎを返します。
主な機能
- 01責務、状態、作用、判断へのコード分解
- 02要素を必須・付随・混合・仕様リスクに分類
- 03重複、配置違い、不要な要素の特定
- 04再構成ルールと最小限の検証シグナルの提示
- 05必要に応じた関連スキルへの引き継ぎ
活用シーン
- 01深いネストや不明瞭なコードの事前分析
- 02隠れた状態や順序依存があるコードのレビュー
- 03必要なポリシーと付随的な複雑さの切り分け
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tkersey/ dotfiles --skill complexity-mitigatorインストール後、Claude Code で/complexity-mitigatorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlexamples/compact-local-refactor.mdrouting-notes.mdspec-risk-boundary.mdreferences/reduction-certificate.md詳細
複雑さの軽減
意図
本質的なドメインの意味を保ちながら、既存コードの理解コストを下げます。このスキルは読み取り専用のルーティングレールおよび分析の事前確認であり、成果物の提供を担うものではありません。
FACTORING -> WINNOWING
- コードを責務、状態、副作用、判断、境界に分解します。
- 本質的なドメイン要因を保持します。
- リファクタリングの前に、仕様リスク要因を明らかにします。
- 付随的な要因は削除、統合、改名、局所化、または委譲します。
- 意味上の区別の繰り返しや、因果関係に基づくレビューの圧力は、
$review-foldと$actuatingに振り分けます。
有効化
理解しにくい既存コード、深いネスト、複雑に絡み合ったブール値、解析・検証・判断・副作用の混在、ファイル間の移動、隠れた状態、順序依存、分かりにくい名前、理解不足によるレビューの停滞に使用します。
代わりに、次の担当へ引き継ぎます。
- 広範なフレームワークまたはレイヤーの負荷 →
$reduce; - 未分類のレビュー証拠 →
$review-fold; - 分類済みのオーナー境界に関する圧力 →
$actuating; - 不正な状態または不変条件のオーナーシップ →
$invariant-ace; - 本質的な構造の形の欠如 →
$universalist; - 実装 →
$actuatingまたは担当ワークフロー。
ワークフロー
- 対象範囲を選びます。エントリーポイント、入力、出力、状態、副作用、境界を確認します。
- 対象を責務、判断、状態、副作用、外部への義務、証明対象に分解します。
- 各要因を
essential、incidental、mixed、spec-riskのいずれかに分類します。 - 重複、支配、包含、形骸化、単なる受け渡し、または配置違いの要因を特定します。
- 本質的な要因と、未解決の仕様リスクを保持します。
- 次の順に整理します。委譲、平坦化、改名、局所化、統合。その後、一貫した設計判断またはライフサイクルを、必要十分なより簡潔な契約の背後に隠せる場合に抽出します。単一用途のカプセル化に第2の呼び出し元は不要ですが、複数のケースにまたがる再利用可能な一般化には、共通性を示す証拠が必要です。
- 再構成のルールと、最小限の証明シグナルを示します。
- 引き継ぎを返します。実装は行いません。
Actuating との連携
Actuating 内では、チェックイン済みの複雑さレビューの観点が、このレーンの対象範囲と返却形式を担います。焦点は、不要な正しさの仕組みと意味上のオーナーシップの重複であり、単独で行う理解の事前確認全体ではありません。独立して管理される正しさ、受け入れられた義務、証拠を返し、競合するオーナーと、派生したガードおよび独立したオラクルを区別します。根拠がありながらブロッキング要因ではない改善機会は、確立された違反とは分けて扱います。修正を選択したり、関連レビューを開始したり、2つ目の事前確認、証拠表、または修正案の一覧を出力したりしないでください。Review Fold が裁定を行い、Actuating が構築の判断を担います。このセクションは、Actuating 内に限り、単独利用時のワークフロー、ルーティング、出力より優先されます。単独利用時の動作に変更はありません。
出力
Complexity preflight:
- whole:
- dominant cost:
- factorization:
- retain:
- remove/collapse/delegate:
- unresolved specification risk:
- recomposition:
- proof:
- handoff:
ガードレール
- ファイルを編集したり、コミットしたりしないでください。
- アーキテクチャ、レビュー評価、変更、完了判定を選択しないでください。
- 行数の削減を理解コストの低下と混同しないでください。
- 本質的なポリシーや、未解決の外部義務を削除しないでください。
- 仮の再利用を想定して抽出したり、一貫した形が見える前に抽出したりしないでください。呼び出し元が何を知らずに済み、何をせずに済むようになるかを明確にしてください。同じ義務をそのまま引き受けるだけの受け渡し用ヘルパーや設定ファサードは、明確さを高める削減にはなりません。
- 動作が不明確な場合は、例のマトリクス、契約テスト、フィクスチャのセット、状態表など、実行可能な学習手段を求めてください。