mcpField
C
contract-review

contract-review

github.com/borgheiドキュメント1.0k78 回インストール1 週間前に更新
リポジトリ

contract-review について

法務・事業チーム向けに、組織の方針に沿って契約文書を確認するスキルです。条項のリスクを分類し、理由と代替案を添えた優先順位付きの修正案を作成しますが、法律専門家の助言に代わるものではありません。

主な機能

  1. 01条項と欠落条項の検出
  2. 02GREEN/YELLOW/REDのリスク分類
  3. 03優先順位付き修正案の作成
  4. 04理由と代替案の提示

活用シーン

  1. 01弁護士の確認前に商業契約を一次選別
  2. 02リスク条項の交渉方針を準備

インストール

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

$npx skills add https://github.com/borghei/claude-skills --skill contract-review

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

同梱ファイル

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

references/
clause_analysis_guide.md
negotiation_playbook.md
scripts/
contract_analyzer.py
redline_generator.py

詳細

⚠️ 実験的 — このスキルは、教育および情報提供のみを目的として提供されています。法的助言を構成するものではありません。使用に関するすべての責任はユーザーが負います。出力に基づいて行動する前に、資格を有する法律専門家にご相談ください。

契約レビュー

契約書を組織のプレイブックと照らして分析し、条項のリスクをGREEN/YELLOW/REDの重大度で分類したうえで、優先順位付きの修正案と代替案を作成する自動契約レビュー ツールです。


目次


まず確認すること

契約をレビューする前に、以下の情報を確認してください。不明または曖昧な項目がある場合は、推測せずに質問してください。

  • どちらの側を代理するか — 顧客/買主か、ベンダー/提供者かによって、有利な条項が逆になり、すべての修正案の方向性も逆になります
  • 契約の種類 — SaaS、サービス、ベンダー/供給、ライセンスのいずれかによって、標準条項の基準や、欠落時に指摘する条項が決まります
  • リスク許容度/プレイブックでの立場 — 組織が取引中止の理由と見なすものによって、REDとYELLOWの境界、および必須項目と望ましい項目の区分が決まります
  • 交渉力/契約価値 — 修正案のうち、交渉決裂につながるもの(Tier 1)と、譲歩可能なもの(Tier 3)の調整に役立ちます

停止ルール:出力を最も大きく左右する2~3項目だけを質問してください。ユーザーが「とにかく作成して」と言った場合は作業を進め、レビューの冒頭に前提を列挙してください。

ツール

契約アナライザー

契約書のテキストファイルを分析し、条項の種類、標準条項の欠落、リスク指標を特定します。

# Analyze a contract file
python scripts/contract_analyzer.py contract.txt

# JSON output for pipeline integration
python scripts/contract_analyzer.py agreement.md --json

# Save analysis to file
python scripts/contract_analyzer.py contract.txt --output analysis.json --json

検出項目:

  • 条項の種類:責任制限、補償、知的財産、データ保護、契約期間および解除、準拠法、表明保証、不可抗力、秘密保持、支払条件
  • 基準チェックリストに照らした標準条項の欠落
  • リスク指標:上限のない責任、永続的な契約期間、一方的な補償、オプトアウトなしの自動更新、広範な知的財産権の譲渡、無制限の監査権

リスク分類:

レベル意味対応
RED取引中止につながるリスク署名前に必ず交渉する
YELLOW重大な懸念事項交渉すべきだが、リスク軽減策があれば受け入れ可能
GREEN標準的または有利現状のままで受け入れ可能

修正案ジェネレーター

契約分析のJSONを受け取り、優先度の段階を付けた書式付きの修正案を生成します。

# Generate redlines from analysis
python scripts/contract_analyzer.py contract.txt --json --output analysis.json
python scripts/redline_generator.py analysis.json

# JSON output
python scripts/redline_generator.py analysis.json --json

# Save redlines to file
python scripts/redline_generator.py analysis.json --output redlines.md

出力内容:

  • 優先度の段階(必須/望ましい/あればよい)
  • 推奨する修正文言
  • 各変更の理由
  • 相手方が拒否した場合の代替案
  • 交渉時の注意事項

優先度の段階:

段階ラベル説明
1必須取引中止につながる事項。拒否された場合は交渉から撤退
2望ましい強く希望する事項。強く求めるが交渉の余地あり
3あればよい譲歩の候補。Tier 1~2の成果と引き換えに提示

リファレンスガイド

条項分析ガイド

references/clause_analysis_guide.md

8種類以上の条項を詳しく解説するリファレンスです。

  • 責任制限(上限の種類、適用除外、間接損害)
  • 補償(相互性、範囲、手続き)
  • 知的財産(所有権、ライセンス、職務著作、フィードバック)
  • データ保護(DPA、再委託先、侵害通知、移転)
  • 契約期間および解除(自動更新、是正期間、移行)
  • 準拠法(管轄、仲裁、陪審裁判の放棄)
  • 表明保証
  • 不可抗力
交渉プレイブック

references/negotiation_playbook.md

交渉の優先順位を定めるフレームワーク。内容は以下のとおりです。

  • ティア 1:契約を締結しない条件と交渉から撤退する基準
  • ティア 2:取引戦略を伴う強い希望事項
  • ティア 3:戦略的な譲歩の候補
  • レッドライン形式のテンプレート
  • 交渉でよくある落とし穴

ワークフロー

標準的な契約レビュー
  1. 取り込み -- 契約書を .txt または .md ファイルとして保存します
  2. 分析 -- contract_analyzer.py を --json フラグ付きで実行します
  3. 検出結果を確認 -- まず RED 項目、次に YELLOW 項目を確認します
  4. レッドラインを作成 -- 分析結果に対して redline_generator.py を実行します
  5. 優先順位を付ける -- Must-Have のレッドラインを優先し、Should-Have の代替案を準備します
  6. 法律顧問に送付 -- 最終レビュー用に分析結果とレッドラインを添付します
迅速なリスクトリアージ
  1. contract_analyzer.py をテキストモードで実行し、簡易スキャンします
  2. RED の検出結果がある場合:直ちに法律顧問にエスカレーションします
  3. YELLOW のみの場合:48 時間以内にレビューを予定します
  4. すべて GREEN の場合:標準的な承認ワークフローに進みます

トラブルシューティング

問題原因解決策
Error: File not found契約書のファイルパスが正しくないか、ファイルが存在しませんファイルパスを確認します。相対パスで失敗する場合は、絶対パスを使用します
条項が検出されない契約書の書式が一般的でないか、標準的でない条項見出しが使われています契約書がプレーンテキストであることを確認します。分析前に PDF の不要なデータを取り除きます
すべての条項が GREEN と判定される契約書が実際に有利な内容であるか、テキスト抽出で重要な箇所が取得されませんでした重要な条項(責任、補償、知的財産)が入力ファイルに含まれていることを手動で確認します
レッドラインジェネレーターの出力が空になる分析 JSON に YELLOW または RED の検出結果がありません分析 JSON が有効であることを確認します。契約書を更新した場合は、アナライザーを再実行します
上限のない責任について誤検知される責任に関する節で、文書内の別の箇所に上限が定められていることに言及しています責任制限の節全体を確認します。このツールは各条項の範囲内で上限に関するキーワードをスキャンします
条項が存在しないという誤検知がある条項は存在しますが、標準的でない見出し(例:「責任上限」ではなく「損害賠償額の上限」)が使われていますアナライザーは複数の見出しの表記に対応しています。組織独自の用語を使う場合は、カスタムエイリアスを追加してください

成功基準

  • 契約レビュー時間を 50%短縮: 条項の特定とリスク分類を自動化し、手作業での確認をなくします。
  • 重大度 RED の条項の見落としゼロ: 上限のない責任、一方的な補償、広範な知的財産の譲渡を、人によるレビューの前にすべて検出します。
  • 2 分以内にレッドラインを作成: 分析 JSON から優先順位を付けたレッドライン文書を作成します。
  • レビュー担当者間でリスク分類を統一: GREEN/YELLOW/RED のフレームワークにより、主観的な評価をなくします。
  • すべての契約を構造化された出力でレビュー: 交渉開始前に、すべての契約について条項一覧とリスクレポートを作成します。
  • Must-Have 項目で 80%を超える交渉成功率: 代替案を準備したティア 1 のレッドラインにより、交渉の成果を向上させます。

対象範囲と制限事項

対象:

  • キーワードとパターンマッチングを用いた、契約条項の静的なテキスト分析
  • 10 種類以上の標準的な商業契約カテゴリにわたる条項の種類の特定
  • リスク指標の検出:上限のない責任、永続的な契約期間、一方的な義務、自動更新の罠
  • 標準的な商業契約の基準に照らした条項の欠落検出
  • 代替案を含む、優先順位を付けたレッドラインの作成

対象外:

  • 法的助言 -- このツールはレビューを支援するものであり、資格を持つ法律顧問に代わるものではありません
  • 管轄区域固有のコンプライアンス -- 規制コンプライアンス(GDPR、SOC 2 など)には ra-qm-team のスキルを使用してください
  • 契約の締結や電子署名のワークフロー -- 対象外です
  • 複数文書間の相互参照(例:SOW と MSA の照合)-- 文書ごとに個別に分析してください
  • 英語以外の契約書 -- パターンマッチングは英語のみを対象としています

アンチパターン

アンチパターン失敗する理由より良い方法
GREEN の指摘のみで、人によるレビューなしに契約を締結する自動分析では、文脈に依存するリスク、曖昧な表現、ビジネス固有の懸念を検出できませんすべて GREEN の契約でも、締結前に必ず有資格の弁護士によるレビューを受けてください
すべての RED の指摘を同等に扱う構造上、取引を成立させられないものもあれば、単語を一つ変更するだけで解決できるものもありますレッドライン生成ツールを使って、RED の指摘ごとに必要な作業量と代替案を評価してください
レッドラインの代替案を検討しない希望する条件しか用意せずに交渉に臨むと、戦略的な譲歩の余地がありません必ず必須条件の代替案を用意し、譲歩可能な希望条件を特定してください
適切に抽出されていないテキストを分析するPDF からテキストへの変換時に生じた乱れによって、条項の検出パターンが機能しなくなります分析の前にテキストファイルを整理し、ヘッダー、フッター、ページ番号、書式の乱れを取り除いてください

ツールリファレンス

contract_analyzer.py

目的: 契約書のテキストファイルを分析して条項の種類を特定し、標準条項の欠落を検出するとともに、リスク指標を GREEN/YELLOW/RED の深刻度で分類します。

使用方法:

python scripts/contract_analyzer.py <contract_file> [--json] [--output FILE]

フラグ:

フラグ短縮形デフォルト説明
contract_file(位置引数)契約書のテキストファイル(.txt または .md)へのパス
--jsonオフJSON 形式で出力します
--output-o(標準出力)出力をファイルに書き込みます

出力例(JSON):

{
  "file": "vendor_agreement.txt",
  "clauses_found": [
    {
      "type": "limitation_of_liability",
      "severity": "RED",
      "text_snippet": "...liability shall not be limited...",
      "risk_flags": ["uncapped_liability"],
      "notes": "No liability cap found; uncapped exposure"
    }
  ],
  "missing_clauses": ["force_majeure", "data_protection"],
  "risk_summary": {"RED": 2, "YELLOW": 3, "GREEN": 5},
  "overall_risk": "RED"
}

redline_generator.py

目的: 契約書の分析結果を含む JSON を受け取り、優先度、根拠、代替案を含む書式付きのレッドライン案を生成します。

使用方法:

python scripts/redline_generator.py <analysis_json> [--json] [--output FILE]

フラグ:

フラグ短縮形デフォルト説明
analysis_json(位置引数)契約書分析 JSON ファイルへのパス
--jsonオフJSON 形式で出力します
--output-o(標準出力)出力をファイルに書き込みます

出力例:

REDLINE SUGGESTIONS
===================

[MUST-HAVE] Limitation of Liability — Uncapped Liability
  Severity: RED
  Preferred: "Aggregate liability shall not exceed 12 months of fees paid."
  Rationale: Uncapped liability creates unlimited financial exposure.
  Fallback: "Aggregate liability shall not exceed 24 months of fees paid."

[SHOULD-HAVE] Indemnification — Unilateral Indemnification
  Severity: YELLOW
  Preferred: "Each party shall indemnify the other for breaches of this Agreement."
  Rationale: Mutual indemnification balances risk between parties.
  Fallback: "Indemnification obligations shall be subject to the liability cap."

コメント