同意・Privacy policy
何をLLMへ送り、何を保存し、どう削除できるかを記した文面です。製品内の同意ダイアログ(Privacy policyを表示して同意を受け付ける画面)に同じ内容を表示します。表記は marketing/asset/consent-analytics.md と marketing/research/data-handling.md の写しです。
同意文面
取得タイミング: 初回送信ボタン(Send・質問ボタン)押下時に同意ダイアログを表示する。同意後に保留した操作を続ける。設定の「同意を撤回する」で撤回でき、次回送信時に再表示する。
同意ダイアログの表示内容(製品内実装と一致)
- 送る物: 入力文またはボタン名にカード文脈(カード本文2000字まで・追加情報2000字まで・穴埋め情報は最大5件・各120字まで)を組み込んだ質問文とモデル名・EffortをWorker(POST /api/ask/chat)に送る。WorkerはOpenRouter単線で使う(一次・予備の二段構成は廃止。出典 docs/adr/0015-openrouter-single.md)。保存済みThread・thinkingは送らない。
- 送らない物・残さない物: 送信経路上でWorkerは質問文を保存しない。LLMのAPIキーはWorker側のみ保持。ノートタイプ内に置かない。上流LLM事業者側のログ扱いは各提供者の定めに従う。
- 端末に残る物: 同意フラグ・設定・Refresh・モデルID・Effort辞書の5件のみを端末内(localStorage)に残す。Access tokenはメモリ上のみ。Anki Desktopはコンパニオンadd-onなしで再起動すると端末内保存が消え、add-onありではRefreshが残る。
- クラウドに残る物: 保存操作を選んだ場合のみ、文脈込み質問文と回答がThreadとして残る(Thread本体・一覧は削除するまで保持、設定は10年実質保持)。認証コード15分・Access 1h・Refresh 30dで失効。匿名利用はIPとUAのハッシュによる週回数計数(次週月曜JSTまで)のみで、生IPは残さない。
- 消し方: 保存したMessageはカード上の削除ボタンで1件ずつ即時物理削除する。設定の削除・アカウント削除・トークン無効化の導線は現状製品内にない。方針は2026-10-01のhuman gateで確定した(依頼から7日以内に削除)で、実装はissue #25で行う。
- 同意と撤回: 「同意して送信」で同意し、押した操作を続ける。設定から撤回可。
文面の未確定部: 製品内ポリシーの[事業者名][連絡先][施行日]は 特商表 と一致させます。[事業者名]は屋号 Karimuto、[連絡先]は karimuto.dev@gmail.com、[所在地]は市区町村まで、[施行日]は2026-10-04で、すべて確定済み。実名と下2桁は公開しません。
利用目的
- カード文脈付きLLM質問応答の提供(Why? / What? / Significance? / Origin? / ELI5+モデル選択)
- Thread(カード1枚に紐づく保存済みMessageの集まり)の保存・再表示。titleは持たない。thinkingは保存しない。保存済みMessageはLLMに送らない
- 無料枠の上限管理(匿名はanonId+IP+UA二重鍵で週20 credits、JST月曜0:00リセット)
- ログイン者のプラン・上限管理(Google OAuth→Bearer JWT access 1h/refresh 30d)
保管
- 保存先はCloudのみ永続化。1枚のカードにつき1つのThreadを
KV
ask:thread:{cardId}に1件だけ保存し(所有者はThread本文のownerIdで照合)、 一覧はask:thread:index:{userId}(Thread一覧は最大50)。 Anki DesktopのlocalStorageはoff-the-recordのため再起動で消える前提。AnkiDroidは実機確認で成立扱い - トークンはlocalStorageに保存し、全APIリクエストに
Authorization: Bearer <jwt>で付与 - LLM送信先はOpenRouter経由のAllowlistのモデルのみ(KV
ask:models:allowlist:v1、HOST管理)
削除方針
- ユーザーの削除要求があれば対象Thread・Messageを削除する。依頼から7日以内に削除する。導線は設定画面の削除ボタン・連絡先のメール・設定の同意を撤回する操作(いずれもissue #25で実装する)
- 匿名利用分の保存・設定の移行はしない(都度ログインがDesktopの正規動作)
- ログ・集計に使う場合は個人を特定しない形にする(詳細はprivacy本文で確定する)
計測設定
- LP計測: 外部アクセス解析(GA4等)は使わない。使うのは Cloudflare Web Analytics のみで、個人を識別せず cookie も使いません。Cloudflare Pages の設定で有効化すると、配信時に Cloudflare がスクリプトを注入します(出典: ADR-0025)。
- 製品内計測: 上限管理のための週回数計数(anonId+IP+UAハッシュ・生IP残さない)・プラン/残量管理のみ。ログ・集計に使う場合は個人を特定しない形にする。
- 同意記録: 同意フラグのみ端末内(localStorage
umeboshi-ask:consent:v1)に残す。サーバ側の同意台帳は持たない。
判定: 同意文面・計測設定は data-handling.md に従っています。削除導線とSLAは2026-10-01のhuman gateで確定(実装はissue #25)。事業者情報も屋号・所在地・連絡先・施行日で確定済みです。