mcpField
L
ln-641-pattern-fitness-auditor

ln-641-pattern-fitness-auditor

github.com/levnikolaevichテスト・品質58471 回インストール2 日前に更新
リポジトリ

ln-641-pattern-fitness-auditor について

コードベース監査向けに、1回の実行で指定されたアーキテクチャパターンを1つ分析するスキルです。ベストプラクティスとプロジェクト要件に照らして実装を確認し、適合性、網羅性、品質、実装のスコアを算出します。

主な機能

  1. 01指定パターンの実装箇所を検索
  2. 02ベストプラクティスに基づく確認
  3. 034種類の診断スコアの算出
  4. 04ギャップ、問題、工数の記録
  5. 05構造化された分析レポートの作成

活用シーン

  1. 01ジョブ処理パターンの実装評価
  2. 02パターンとプロジェクト要件の適合確認
  3. 03不足要素の特定と改善計画

インストール

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

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-641-pattern-fitness-auditor

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

同梱ファイル

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

references/
audit_scoring.md
audit_summary_contract.md
audit_worker_core_contract.md
mcp_integration_patterns.md
mcp_tool_preferences.md
pattern_library.md
scoring_rules.md
two_layer_detection.md
references/templates/
audit_worker_report_template.md

詳細

パス: ファイルパス(references/、../ln-*)は、このスキルディレクトリからの相対パスです。

パターン適合性監査

種類: L3 ワーカー

ベストプラクティスとプロジェクトのニーズに照らして、単一のアーキテクチャパターンを分析する L3 ワーカーです。

目的と対象範囲

  • 呼び出しごとにパターンを 1 つ分析します(パターン名、場所、ベストプラクティスを受け取ります)
  • コードベース内のすべての実装を検出します(Glob/Grep)
  • 実装が存在し、動作することを検証します
  • 4 つのスコアを算出します:準拠性、完全性、品質、実装
  • 重大度と工数の見積もりを添えて、ギャップと問題を特定します
  • 構造化された分析結果を返します
  • KEEP_PATTERN、SIMPLIFY_PATTERN、COMPLETE_PATTERN、または REPLACE_PATTERN を出力します

対象範囲外:

  • 循環的複雑度のしきい値(>10、>20)
  • メソッド/クラスの長さのしきい値(>50、>100、>500 行)
  • 品質スコアでは、汎用的なコードメトリクスではなく、パターン固有の品質(パターン内の SOLID、パターンレベルのコードスメル)に重点を置きます

入力

- pattern: string          # Pattern name (e.g., "Job Processing")
- locations: string[]      # Known file paths/directories
- bestPractices: object    # Best practices from MCP Ref/Context7/WebSearch
- output_dir: string       # e.g., ".hex-skills/runtime-artifacts/runs/{run_id}/audit-report"

注: 管理された実行によってパターンの根拠が提供されている場合は、同じパターンを最初から再検出するのではなく、その根拠を使用してください。

ワークフロー

必須の読み込み: references/mcp_tool_preferences.md を読み込みます。

検出ポリシー:2 層検出(候補スキャン、その後にコンテキスト検証)を使用します。検証方法が曖昧な場合にのみ、references/two_layer_detection.md を読み込みます。 ツールポリシー:ホストの AGENTS.md が対象範囲外となる独立したサブエージェントとして実行されることがあるため、ファイルの読み取り、検索、編集では、まず hex-line MCP を使用します。MCP の動作が不明確な場合にのみ、references/mcp_integration_patterns.md を読み込みます。

実装の検出によって確信度が大きく向上する場合は、まず hex-graph を使用します。利用可能な場合、ローカルコードの読み取りにはまず hex-line を使用します。MCP が利用できない場合、未対応の場合、またはインデックス化されていない場合は、組み込みの Read/Grep/Glob/Bash を使って続行し、レポートにフォールバックしたことを記載します。

フェーズ 1:実装の検出

必須の読み込み: references/pattern_library.md を読み込みます。各パターンの検出キーワードについては、「Pattern Detection (Grep)」テーブルを使用します。

IF pattern.source == "adaptive":
  # Pattern evidence was already provided by the caller
  files = pattern.evidence.files
  SKIP detection keyword search (already done in Phase 1b)
ELSE:
  # Baseline pattern -- use library detection keywords
  files = Glob(locations)
  additional = Grep("{pattern_keywords}", "**/*.{ts,js,py,rb,cs,java}")
  files = deduplicate(files + additional)
フェーズ 2:コードの読み取りと分析
FOR EACH file IN files (limit: 10 key files):
  Read(file)
  Extract: components, patterns, error handling, logging, tests
フェーズ 3:4 つのスコアを算出

必須の読み込み: references/scoring_rules.md を読み込み、各基準の Detection 列に従います。

スコアscoring_rules.md 内の参照元最大値
準拠性「Compliance Score」セクション — 業界標準、命名規則、規約、アンチパターン100
完全性「Completeness Score」セクション — 必須コンポーネントの表(パターンごと)、エラー処理、テスト100
品質「Quality Score」セクション — メソッドの長さ、複雑度、コードスメル、SOLID100
実装「Implementation Score」セクション — コンパイル、本番環境での使用、統合、モニタリング100

各基準の採点プロセス:

  1. scoring_rules.md に記載された Detection の Grep/Glob を実行します
  2. 一致が見つかった場合 -> 基準ごとの点数を加算します
  3. アンチパターン/コードスメルが検出された場合 -> 減点テーブルに従って減点します
  4. 根拠を記録します:各スコアの正当性を示すファイルパスと行番号
フェーズ 4:問題とギャップの特定
FOR EACH bestPractice NOT implemented:
  issues.append({
    severity: "HIGH" | "MEDIUM" | "LOW",
    category: "compliance" | "completeness" | "quality" | "implementation",
    issue: description,
    suggestion: how to fix,
    effort: "S" | "M" | "L"
  })

# Layer 2 context check (MANDATORY):
# Deviation documented in code comment or ADR? -> downgrade to LOW
# Pattern intentionally simplified for project scale? -> skip


gaps = {
  missingComponents: required components not found in code,
  inconsistencies: conflicting or incomplete implementations
}
フェーズ 5:スコアの算出

必須の読み込み: references/audit_worker_core_contract.md と references/audit_scoring.md を読み込みます。

診断用サブスコア(各 0~100)は個別に算出し、診断目的に限り AUDIT-META に記載します:

  • 準拠性、完全性、品質、実装
フェーズ 6:レポートの作成

必須の読み込み: references/templates/audit_worker_report_template.md を読み込みます。

references/audit_summary_contract.md に従って JSON サマリーを作成します。管理モードでは、呼び出し元から runId と summaryArtifactPath の両方が渡されます。スタンドアロンモードでは、共有コントラクトに従って、ワーカーが実行ごとの成果物パスを生成します。

# Build pattern name slug: "Job Processing" -> "job-processing"
slug = pattern.name.lower().replace(" ", "-")

# Build markdown report in memory with:
# - AUDIT-META (extended: score [penalty-based] + diagnostic score_compliance/completeness/quality/implementation)
# - Checks table (compliance_check, completeness_check, quality_check, implementation_check)
# - Findings table (issues sorted by severity)
# - DATA-EXTENDED: {pattern, codeReferences, gaps, recommendations}

Write to {output_dir}/ln-641--{slug}.md (atomic single Write call)
フェーズ 7:サマリーの返却
Report written: .hex-skills/runtime-artifacts/runs/{run_id}/audit-report/ln-641--job-processing.md
Score: 7.9/10 (C:72 K:85 Q:68 I:90) | Issues: 3 (H:1 M:2 L:0)

重要なルール

すでに読み込まれている references/audit_worker_core_contract.md を適用してください。

  • パターンは1つのみ: 入力で指定されたパターンのみを分析します
  • スコア付け前に読む: 実際のコードを読まずにスコアを付けてはいけません
  • 検出に基づくスコア付け: 推測ではなく、scoring_rules.md の Grep/Glob パターンを使用します
  • 工数の見積もり: 各問題に必ず S/M/L を提示します
  • コードへの参照: 指摘事項には必ずファイルパスを含めます
  • 独自の観点: 1つのパターンのアーキテクチャ適合性のみを監査します。一般的なコード品質、依存関係の構成、パッケージの健全性、ランタイム運用は監査しません
  • アクション必須: すべての指摘事項で KEEP_PATTERN、SIMPLIFY_PATTERN、COMPLETE_PATTERN、REPLACE_PATTERN のいずれかを使用します

完了の定義

すでに読み込まれている references/audit_worker_core_contract.md を適用してください。

  • pattern_library.md のキーワードまたは適応的なエビデンスを使い、Glob/Grep で見つかったすべての実装を確認する
  • 主要なファイルを読み、分析する
  • scoring_rules.md の検出パターンを使って4つのスコアを算出する
  • 重大度、カテゴリ、提案、工数を含む問題を特定する
  • ギャップ(欠落しているコンポーネント、不整合)を記録する
  • 推奨事項を提示する
  • レポートを {output_dir}/ln-641--{slug}.md に書き込む(単一の Write 呼び出しでアトミックに実行)
  • 契約に従って概要を記述する

参照ファイル

  • スコアリングルール:references/scoring_rules.md
  • パターンライブラリ:references/pattern_library.md

バージョン: 2.0.0 最終更新日: 2026-02-08

コメント