# 比較レポート：リポジトリ版 vs スキル版 (coding-policy-ai-auditor)

このドキュメントでは、オリジナルの [elvezjp/coding-policy-ai-auditor](https://github.com/elvezjp/coding-policy-ai-auditor) リポジトリ（Webアプリケーション）と、今回作成したスキル版の機能・設計の比較をまとめます。

## 概要比較

| 項目 | オリジナル版 (Repository) | スキル版 (Skill) |
| :--- | :--- | :--- |
| **形態** | フルスタックWebアプリケーション | AIエージェント用スキル (プロンプト＋ワークフロー) |
| **主な利用者** | 開発チーム、QAエンジニア | AIエージェント（Antigravity等）と協働する開発者 |
| **実行環境** | Docker, Python, Node.js, AWS Bedrock | AIエージェントが動作する環境（ローカル/クラウド） |
| **主な言語** | Python, TypeScript | 自然言語 (Markdown), プロンプト |

## 論理構造の移植

オリジナル版のコアロジックを以下のようにスキル版へ移植・抽象化しました。

### 1. 逐次評価 (Rule-by-Rule Evaluation)
- **オリジナル**: Pythonバックエンドが規約の各行をループで回し、1つずつLLM APIにリクエストを送る。
- **スキル版**: `SKILL.md` のワークフローとして定義。エージェントが規約を1つずつ読み取り、`audit_prompt.md` を適用して評価を繰り返す。

### 2. 判定型ルール (Judgment-based Rules)
- **オリジナル**: プロンプト内で「主観的な判断」を重視するように指示。
- **スキル版**: [judgement_criteria.md](./judgement_criteria.md) にて、どのようなルールが「判定型」に該当するかを明文化。

### 3. 要確認 (Requires Review) フラグ
- **オリジナル**: 出力に `[Requires Review]` または `[要確認]` を付与するロジック。
- **スキル版**: `audit_prompt.md` の Status カラムの選択肢として明記。LLMが迷った際のアウトレットとして機能。

### 4. 行番号付与
- **オリジナル**: `add-line-numbers` というPython/TypeScriptツールが同梱。
- **スキル版**: ワークフローの前提条件（Pre-requisite）として定義。エージェントに対して「行番号付きでコードを読み取る/処理する」ことを指示。

## メリット・デメリット

### スキル版のメリット
- **セットアップ不要**: Dockerや特定のサーバー環境を構築せずに、対話型UIからすぐに利用可能。
- **柔軟なカスタマイズ**: `audit_prompt.md` を編集するだけで、プロジェクト固有のニュアンスを即座に反映できる。
- **対話的な修正**: 指摘された内容に対して、その場でエージェントに修正コードを書かせることが容易。

### オリジナル版のメリット
- **自動化・バッチ処理**: 大量のファイルをバックグラウンドで一括処理するのに適している。
- **UI/UX**: 専用のWeb画面（Vite製）により、大規模なレポートの閲覧が快適。
- **静的解析連携**: CheckstyleやPMDなど、既存のツールと連携した統合的な監査が可能。

## 結論
今回作成した「スキル版」は、オリジナル版の**「LLMの推論能力を最大限に引き出すための思考プロセス（逐次評価と要確認フラグ）」**をエージェント向けに抽出したものです。日常的な開発の合間に行うクイックなコードレビューや、規約の試行錯誤に適しています。
