privacy-notice-generator について
privacy-notice-generatorは、EU・EEAの指定法域と対象者に応じたGDPRプライバシー通知の作成・確認を支援するスキルです。法域別のひな形を生成し、開示の不足を検出します。出力は情報提供であり、法的助言ではありません。
主な機能
- 01種類と法域に応じた通知ひな形の生成
- 02GDPR第13条・第14条の開示確認
- 03適合スコアと不足項目の報告
- 04法域別・対象者別のチェック
- 05Cookie、移転、AI関連セクションの追加
活用シーン
- 01ウェブサイトや従業員向け通知の作成
- 02通知におけるGDPR開示漏れの確認
- 03複数法域に合わせた通知の調整
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ borghei/ claude-skills --skill privacy-notice-generatorインストール後、Claude Code で/privacy-notice-generatorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/compliance_verification.mdjurisdiction_requirements.mdnotice_types_guide.mdscripts/notice_compliance_checker.pyprivacy_notice_scaffolder.py詳細
⚠️ EXPERIMENTAL — このスキルは、教育および情報提供のみを目的として提供されています。法的助言を構成するものではありません。利用に関するすべての責任はユーザーが負います。出力に基づいて行動する前に、資格を有する法律の専門家に相談してください。
プライバシー通知ジェネレーター
EU/EEA の各法域および対象者に対応した、GDPR 準拠のプライバシー通知の作成に役立つツールとガイダンスです。複数段階のコンプライアンス検証を備えています。
目次
まず確認すること
通知を生成する前に、以下の入力内容を確認してください。不明または曖昧な項目があれば、推測せずに質問してください。
- 通知の種類 — website、applicant、employee、b2b、b2c、または combined。表示するセクションや対象者固有の内容(例:employee の労使協議会/モニタリング、b2b の Art. 14 に基づく情報源の開示)を選択します。
- 法域 — DE/FR/AT/IT/ES/NL/BE/IE/UK。コンプライアンスチェッカーが評価する地域固有の要件(DE の Widerspruchsrecht/TDDDG、FR の CNIL、UK の ICO)が追加されます。
- 処理目的ごとの法的根拠 — Art. 13(1)(c) では、目的ごとに具体的な法的根拠が必要です。「適用法令」のような一般的な記載ではチェックに合格しません。
- 特別な機能:Cookie/AI/国際移転 — セクション 6、12、13、および AI Act Art. 50 の透明性に関する開示の有効/無効を切り替えます。
停止ルール:出力に最も大きく影響する2~3項目だけを質問してください。ユーザーが「そのまま作成して」と言った場合は、作成を進め、通知の冒頭に前提条件を記載してください。
ツール
プライバシー通知のひな形作成ツール
法域固有のプレースホルダーと法的参照をあらかじめ入力した、必要なすべてのセクションを含むプライバシー通知のひな形を生成します。
# Website privacy notice for German jurisdiction
python scripts/privacy_notice_scaffolder.py \
--notice-type website \
--jurisdiction DE \
--data-categories personal,contact,usage,cookies \
--legal-bases consent,contract,legitimate_interests \
--has-cookies \
--has-international-transfers
# Employee notice for French jurisdiction with AI processing
python scripts/privacy_notice_scaffolder.py \
--notice-type employee \
--jurisdiction FR \
--data-categories personal,employment,financial,health \
--legal-bases contract,legal_obligation,consent \
--has-ai
# B2C customer notice for UK with all features
python scripts/privacy_notice_scaffolder.py \
--notice-type b2c \
--jurisdiction UK \
--data-categories personal,contact,financial,usage,marketing \
--legal-bases consent,contract,legitimate_interests \
--has-cookies --has-ai --has-international-transfers \
--json
対応する通知の種類:
| 種類 | 対象者 | 主なセクション |
|---|---|---|
| website | ウェブサイト/アプリの訪問者 | Cookie、分析、トラッキング技術 |
| applicant | 求職者 | 採用データ、人材プール、保存期間 |
| employee | 従業員 | 労使協議会、IT モニタリング、BYOD、人事データ |
| b2b | ビジネスパートナー | Art. 14 の要件、情報源の開示 |
| b2c | B2C 顧客 | ソフトオプトイン、決済処理、ロイヤルティ |
| combined | 複数の対象者 | 対象者固有の注記を付した統合セクション |
対応する法域: DE、FR、AT、IT、ES、NL、BE、IE、UK
通知の13セクション構成:
- 管理者の身元と連絡先
- DPO の連絡先
- 収集するデータのカテゴリー
- 目的と法的根拠
- 受領者とそのカテゴリー
- 国際移転
- 保存期間
- データ主体の権利
- 同意を撤回する権利
- SA に苦情を申し立てる権利
- 自動化された意思決定
- Cookie とトラッキング(該当する場合)
- AI による処理(該当する場合)
通知コンプライアンスチェッカー
プライバシー通知のテキストを Art. 13/14 GDPR の要件に照らして検証し、不足または不完全な要素とコンプライアンススコアを出力します。
# Check a privacy notice file
python scripts/notice_compliance_checker.py privacy_notice.md
# Check with jurisdiction-specific requirements
python scripts/notice_compliance_checker.py privacy_notice.md --jurisdiction DE
# Check with notice type for type-specific validation
python scripts/notice_compliance_checker.py privacy_notice.md \
--jurisdiction DE --notice-type employee
# JSON output
python scripts/notice_compliance_checker.py privacy_notice.md \
--jurisdiction FR --notice-type website --json
チェック項目:
| カテゴリー | チェック対象の要素 |
|---|---|
| Art. 13 の必須項目 | 管理者の身元、DPO の連絡先、目的、法的根拠、受領者、移転、保存期間、8つすべての権利、自動化された意思決定、同意の撤回、SA への苦情申し立て |
| Art. 14 の追加項目 | データの情報源、取得したデータのカテゴリー(間接収集の場合) |
| 全般 | Art. 21 に基づく異議を申し立てる権利の明確な提示、平易な言葉、プレースホルダーの不使用、一貫した書式 |
| 法域固有 | DE:Widerspruchsrecht の明確な提示、TDDDG。FR:CNIL の勧告。UK:ICO のガイダンス |
出力:
- コンプライアンススコア(0~100)
- 不足している要素(必ず修正)
- 不完全な要素(改善を推奨)
- 法域固有の指摘事項
- 種類固有の指摘事項
リファレンスガイド
通知タイプガイド
references/notice_types_guide.md
6 種類の通知に関する詳細なガイダンス:
- ウェブサイト/アプリの通知におけるプラットフォームのサブタイプ
- 申請者固有のデータカテゴリーと保持期間
- 労使協議会およびモニタリング要件を含む従業員向け通知
- B2B における第 14 条の要件と情報源の開示
- B2C のソフトオプトインと支払い処理
- 複合通知の統合戦略
管轄区域ごとの要件
references/jurisdiction_requirements.md
9 つの管轄区域に固有の要件:
- SA の詳細と登録要件
- GDPR の基本要件を超える要件
- 標準的な文言の推奨事項
- 管轄区域ごとの保持期間に関するガイダンス
コンプライアンス検証
references/compliance_verification.md
5 層の検証システム:
- 管轄区域固有のチェック
- 第 13 条/第 14 条の必須開示事項
- 一般的なコンプライアンスチェック
- タイプ固有のチェック
- AI Act のコンプライアンス
- 生成後のチェックリスト
- ライティングスタイルガイド
ワークフロー
ワークフロー 1:SCOPE → INTAKE → DRAFT → VERIFY → DELIVER
Step 1: SCOPE — Determine notice parameters
→ Notice type (website/applicant/employee/b2b/b2c/combined)
→ Jurisdiction (DE/FR/AT/IT/ES/NL/BE/IE/UK)
→ Special features (cookies, AI, international transfers)
Step 2: INTAKE — Gather information
→ Controller identity and DPO
→ Data inventory (categories, sources)
→ Purposes and legal bases per category
→ Recipients and processors
→ Transfer destinations and mechanisms
→ Retention periods per category
→ Cookie/tracking inventory (if website)
→ AI processing details (if applicable)
Step 3: DRAFT — Generate notice skeleton
→ python scripts/privacy_notice_scaffolder.py [params]
→ Fill in placeholders with actual information from intake
→ Add jurisdiction-specific clauses
→ Apply writing style guide (you/your, short sentences, tables)
Step 4: VERIFY — Run compliance checker
→ python scripts/notice_compliance_checker.py notice.md --jurisdiction [J] --notice-type [T]
→ Address all missing elements
→ Address incomplete elements
→ Review jurisdiction-specific findings
Step 5: DELIVER — Finalize and publish
→ Legal review sign-off
→ Technical review (links, formatting, accessibility)
→ Translation QA (if multilingual)
→ Publication with version control
→ Set review trigger calendar
ワークフロー 2:通知の更新
Step 1: Identify trigger (new processing, regulation change, annual review)
Step 2: Run compliance checker on current notice
Step 3: Identify gaps and required updates
Step 4: Draft updated sections
Step 5: Re-verify with compliance checker
Step 6: Notify data subjects of material changes
Step 7: Update version date and change log
ワークフロー 3:複数の管轄区域に対応する通知
Step 1: Generate base notice for primary jurisdiction
→ python scripts/privacy_notice_scaffolder.py --jurisdiction [primary] ...
Step 2: Check jurisdiction requirements for additional territories
→ See references/jurisdiction_requirements.md
Step 3: Add jurisdiction-specific supplements
→ DE: TDDDG telecom disclosures, DSK guidance
→ FR: CNIL cookie requirements, LIL specifics
→ UK: ICO guidance, UK transfer mechanisms
Step 4: Verify each jurisdiction version
→ python scripts/notice_compliance_checker.py notice_de.md --jurisdiction DE
→ python scripts/notice_compliance_checker.py notice_fr.md --jurisdiction FR
Step 5: Publish with language/jurisdiction switcher
トラブルシューティング
| 問題 | 考えられる原因 | 解決方法 |
|---|---|---|
| 通知が完全なのにコンプライアンススコアが低い | 管轄区域固有の要件が不足している(例:DE の Widerspruchsrecht が目立つ形で記載されていない) | --jurisdiction フラグを指定してチェッカーを実行し、jurisdiction_requirements.md で地域固有の追加要件を確認します |
| スキャフォルダーがセクションを生成しすぎる | 複合通知タイプにすべての対象者向けセクションが含まれている | 複合タイプではなく具体的な通知タイプを使用するか、生成後に不要なセクションを削除します |
| 直接収集なのに第 14 条に関する指摘がある | チェッカーが B2B 通知タイプに対して第 14 条の要件を指摘している | 正しい動作です。B2B では間接収集がよく行われるため、情報源の開示を必ず含めてください |
| 最終通知にプレースホルダーテキストが残っている | テンプレートへの情報入力が完了していない | [PLACEHOLDER] と {{variable}} のマーカーを検索し、公開前にすべて置き換えてください |
| 従業員向け通知に Cookie セクションがない | 従業員向け通知タイプには、デフォルトで Cookie が含まれていない | 従業員向けシステムで Cookie/トラッキングを使用する場合は、--has-cookies フラグを追加します |
| AI セクションが生成されない | --has-ai フラグがない | --has-ai を指定してスキャフォルダーを再実行し、AI Act 第 50 条の透明性要件を確認します |
成功基準
- 第 13 条/第 14 条のコンプライアンススコア 100% — 必須開示事項がすべて含まれ、欠落項目がない
- 管轄区域固有の要件を満たしている — コンプライアンスチェッカーにより、現地の SA 要件への対応が確認されている
- タイプ固有の要件を満たしている — 通知に、対象者固有のすべてのデータ処理活動が記載されている
- プレースホルダーテキストが残っていない — テンプレート変数がすべて実際の情報に置き換えられている
- ライティングスタイルガイドに従っている — 「あなた/あなたの」を使った文体、短い文章、複雑な情報には表を使用、正確な法的引用
- 法務レビューが完了している — 資格を有するプライバシー法務担当者が最終通知を承認している
- 公開要件を満たしている — アクセシブルで、バージョンと日付が記載され、変更通知の仕組みがある
対象範囲と制限事項
対象範囲:
- 9つの法域における6種類の通知のプライバシー通知の骨子を生成
- GDPR第13条・第14条で必須とされる開示事項への準拠を確認
- 法域固有の要件を検証(DE、FR、AT、IT、ES、NL、BE、IE、UK)
- 通知の種類に応じたセクションを生成し、検証
- AI Act第50条の透明性開示セクション
- Cookieおよびトラッキング技術の開示セクション
- 文体と平易な表現に関するガイダンス
対象範囲外:
- 個別の法的根拠の選定に関する法的助言 — 資格を有するプライバシー専門家に相談してください
- 翻訳サービス — このツールが生成するテンプレートは英語です。専門家による翻訳が必要です
- Cookie同意の実装またはCMPの設定
- DPIAの生成(
dpia-assessmentスキルを参照) - プライバシー通知のホスティングまたは公開インフラストラクチャ
- GDPR以外のプライバシー通知形式(CCPAの収集時通知、LGPD通知)
- 特定の業界向けの通知(医療、金融サービス、児童向けサービス)
アンチパターン
| アンチパターン | 失敗する理由 | より良い方法 |
|---|---|---|
| 他社の内容をコピー&ペーストする | 取り扱うデータ、法域、法的根拠はそれぞれ異なるため、責任上の不備が生じるおそれがあります | 実際のパラメーターに基づいて骨子を生成し、組織固有の情報を記入します |
| すべての法域で同じ通知を使う | 法域固有の要件(DE TDDDG、FR CNIL、UK ICO)を見落とし、監督機関による執行を招きます | 各法域のスキャフォルダーを使用し、法域ごとの通知または補足資料を生成します |
| 一般的な法的根拠を使う(「適用法に基づいてデータを処理します」) | 第13条第1項(c)では、目的ごとに具体的な法的根拠を示す必要があります。一般的な記述では要件を満たしません | 処理目的ごとに具体的な第6条第1項の根拠を対応付け、目的・根拠の表に記録します |
| 作成後に見直さない | データ処理活動は変化し、規制も改正されるため、通知が不正確になります | 見直しの契機を設定し(compliance_verification.mdを参照)、コンプライアンスチェッカーを四半期ごとに実行します |
| 法律用語を多用する | 前文第58項は明確で平易な表現を求めています。複雑な法律用語は要件を満たしません | 文体ガイドに従い、「あなた」を主語にした表現、短い文、表、例を使用します |
ツールリファレンス
privacy_notice_scaffolder.py
通知の種類、法域、データ処理のパラメーターに基づいて、プライバシー通知の骨子を生成します。
| フラグ | 必須 | 説明 |
|---|---|---|
--notice-type <type> | はい | 通知の種類:website、applicant、employee、b2b、b2c、combined |
--jurisdiction <code> | はい | 法域:DE、FR、AT、IT、ES、NL、BE、IE、UK |
--data-categories <list> | はい | カンマ区切り:personal、contact、usage、cookies、financial、health、employment、marketing、biometric |
--legal-bases <list> | はい | カンマ区切り:consent、contract、legal_obligation、legitimate_interests、vital_interests、public_task |
--has-cookies | いいえ | Cookieおよびトラッキングのセクションを含めます |
--has-ai | いいえ | AIおよび自動処理のセクションを含めます |
--has-international-transfers | いいえ | 国際移転のセクションを含めます |
--json | いいえ | JSON形式で出力します |
notice_compliance_checker.py
第13条・第14条のGDPR要件に照らしてプライバシー通知を検証します。
| フラグ | 必須 | 説明 |
|---|---|---|
<notice_file> | はい | プライバシー通知ファイルのパス(Markdownまたはテキスト) |
--jurisdiction <code> | いいえ | 現地要件を適用する法域:DE、FR、AT、IT、ES、NL、BE、IE、UK |
--notice-type <type> | いいえ | 種類別チェックに使用する通知の種類:website、applicant、employee、b2b、b2c、combined |
--json | いいえ | JSON形式で出力します |