実装記録をWordPress連載へ—公開可能な情報へ匿名化する


実装記録をWordPress連載へ—公開可能な情報へ匿名化する

実装記録をそのままブログへ貼ると、ユーザー名、メールアドレス、パス、API ID、会議名などが混ざります。一方、全部を削ると読者が再現できません。そこで「秘密を伏せ、構造を残す」編集ルールを作りました。

置き換える情報

| 元の情報 | 公開用の表現 |
|—|—|
| 実ユーザー名 | `your-user` |
| メールアドレス | `alerts@example.com` |
| 絶対パス | `/path/to/project` または `~/Documents/HermesVault` |
| 事業所・DB・録音ID | `YOUR_*_ID` |
| APIキー・トークン | `YOUR_*_TOKEN` |
| 会議・取引の固有名 | 「社内会議」「サンプル支出」 |
| 実金額 | 小さな架空金額または金額なし |

IDの一部を残すマスキングは、他の情報と組み合わせると特定につながることがあります。再現に不要なら全文をダミーへ置き換えます。

設計判断は残す

公開価値があるのは秘密情報ではなく、次のような判断です。

  • なぜ読み取り専用から始めたか
  • なぜprepareとwriteを分けたか
  • どの失敗ケースをテストしたか
  • どこでタイムゾーン変換したか
  • なぜNotionとObsidianの役割を分けたか

具体的なパスやトークンを消しても、判断、入出力の型、確認項目があれば読者は自分の環境で再現できます。

スクリーンショットとログにも注意する

本文を匿名化しても、スクリーンショットのサイドバー、ブラウザタブ、通知、ターミナルプロンプトへ個人情報が残ります。画像は公開用のダミーデータで撮り直すか、元画像を非公開にして再現図を作ります。

ログはトークンだけでなく、ファイル名、メール件名、録音名、URLのクエリにも注意します。検索可能なテキストとして画像へ埋め込まれる場合もあります。

WordPress用メタデータをそろえる

各記事に、タイトル、slug、公開日、抜粋、カテゴリ、タグ、更新日、情報確認日をYAMLで持たせました。Obsidianの閲覧ビューから本文をコピーし、WordPressのタイトル・抜粋・カテゴリはプロパティから転記します。

公開前は機械検索と人の目を併用します。`@`、`/Users/`、`token`、`secret`、長い数字列などを検索した後、文脈を読んで確認します。

再現チェック

  • [ ] 名前・メール・パス・IDをダミー化した
  • [ ] トークンや認可コードを一部も残していない
  • [ ] 会議名・取引内容・金額を一般化した
  • [ ] スクリーンショットとログを確認した
  • [ ] 設計判断と失敗例は残した
  • [ ] 公開前に検索と目視を行った

次回は、同じ匿名化方針でHermes Agentの解説動画を作った工程を紹介します。

参考にした一次情報

  • [WordPress Block Editor](https://wordpress.org/documentation/article/wordpress-block-editor/)
  • [OWASP Logging Cheat Sheet—Data to exclude](https://cheatsheetseries.owasp.org/cheatsheets/Logging_Cheat_Sheet.html#data-to-exclude)
  • [個人情報保護委員会](https://www.ppc.go.jp/)

Back to top