プライバシー
Calíopeは、オンにするまで何も記録せず、記録したものを送ることもありません。
場所: Calíope › 設定 › 一般 → プライバシーと診断
記録は最初はオフです。「設定」›「一般」›「プライバシーと診断」›「このデバイスに使用状況レポートを保存」でオンにするまで、何も記録されません。オフのあいだ、このファイルは大きくなりません。
Calíopeは診断ログをあなたのデバイスにだけ保存します。保存先のファイルは次のとおりです:
~/Library/Application Support/Caliope/telemetry.json
明示的に送らない限り、このファイルを受け取る人はいません。ログの上限は500件のイベントで、古いものは自動的に削除されます。
キーワード: プライバシー、テレメトリ、診断、ローカル、データ、JSON
Calíopeがローカルに保存するイベントの正確な一覧です。
診断ファイルには次の内容が含まれます:
デバイスの情報(起動時に1回記録):
- アプリのバージョン
- プラットフォーム(macOS / iPadOS / iOS / visionOS)
- オペレーティングシステムのバージョン
- デバイスのモデル(例:「MacBookPro18,1」)
接続のイベント:
- connection.opened:サーバへの接続に成功
- connection.ssh.opened:SSHトンネルを開くのに成功
- connection.error:接続の失敗(エラーのドメインとコード。ホストや資格情報は含みません)
- ssh.error:SSHトンネルの失敗(エラーの種類。ホストや資格情報は含みません)
記録されないもの:SQLクエリー、データベース名、ホスト、IPアドレス、ユーザ名、パスワード、スキーマのデータは、いっさい記録されません。
キーワード: データ、プライバシー、保存されるもの、イベント、ログ、テレメトリ
JSONを表示して、フィードバックといっしょに送る方法です。
場所: Calíope › 設定 › 一般 → プライバシーと診断
見るものがあるようにするには、まず「設定」›「一般」›「プライバシーと診断」で記録をオンにしておく必要があります。オフのままなら、レポートは空です。故障ではありません。
診断の内容全体は、「設定」›「一般」›「プライバシーと診断」で見られます。そこでは次のことができます:
- 「レポートを表示」:JSON全体を別のウインドウで開きます。
- 「共有」:システムの共有パネルを開き、メール、AirDrop、ほかのアプリで送ります。
- 「JSONをコピー」:手動で貼り付けられるように、内容をクリップボードにコピーします。
- 「消去」:記録されたすべてのイベントを削除します。
問題が起きたときや提案があるときは、メッセージといっしょにファイルをsupport@caliope.orgに送ってください。
→ プライバシーポリシーの全文
キーワード: 診断を送る、共有、メール、フィードバック、プライバシー、JSONをコピー
CalíopeがこのデバイスとiCloudに保存しているものを完全に削除し、それぞれの場所で何を削除したかを伝えます。
場所: Calíope › 設定 › 一般 → 自分のデータを削除
「設定」›「一般」の「自分のデータを削除」セクションは、Calíopeが何かを残す6つの場所すべてから、Calíopeが保存しているものを削除します。
削除されるもの
| 場所 | 内容 |
| このデバイス | 接続プロファイル、クエリーの履歴、エラーログ、AIアシスタントの履歴、実行履歴、システムメッセージ、テレメトリ、スキーマのキャッシュ、最近使ったSQLファイル、スニペット、監視の項目 |
| キーチェーン | 接続のパスワード、SSH鍵のパスフレーズ、クラウドのプロバイダのAPIキー |
| iCloud Drive | connections.json、エディタの状態、監視の設定、スニペット(snippets.json)、SQLアラートのルール(sql_alerts.json)、レポートの定義(reports.json)、スケジュールされたバックアップのフォルダ |
| iCloud上の設定 | キーバリューストア全体 |
| iCloudのレコード | CloudKitに保存されたクエリーの履歴、AIアシスタントの履歴、エラーログ、システムメッセージ、サーバ群の状態 |
| ウィジェット | ウィジェットが自分を描画するのに使うデータ |
すべてのデバイスに及びます。終わると、CalíopeはiCloudに通知を公開し、ほかのデバイスは次に開いたときに自分のコピーを削除します。この通知がなければ、まだ同期しているデバイスがすべてをもう一度アップロードし、削除が元に戻ってしまいます。
同期がオフでもiCloudのレコードは削除されます。スイッチが決めるのはこれからアップロードするかどうかで、すでにアップロードされたものがあるかどうかではありません。オンにしてアップロードし、あとでオフにしたなら、データはiCloudにあります。そして、まさにそれを削除する必要があるのです。
削除の前に復元ポイントが保存されます。これはローカルで、プロファイルと設定を含み、パスワードは含みません。そこには暗号化キーを入力する人がいないからです。「設定」›「一般」›「設定のバックアップ」にあります。パスワードも残したい場合は、事前に「キーチェーンのパスワード」のチェックボックスをオンにして、手動で書き出してください。
最後に、それぞれの場所で何が起きたかが表示され、削除した項目の数も示されます。削除できなかったものは、理由とともに赤で表示されます。iCloudのセッションやネットワークがないと、ここからCloudKitのレコードには届きません。それは削除されたのとは違います。オンラインに戻ったら、もう一度実行してください。すでに削除されたものが二度削除されることはありません。
残されるもの:自分でディスクに書き出したファイル(.sqlのバックアップ、設定のコピー、スクリーンショット)。アプリの外にあり、あなたのものだからです。
この操作は取り消せません。
→ プライバシーポリシーの全文
キーワード: データを削除、消去、プライバシー、キーチェーン、履歴、プロファイル、iCloud、CloudKit、GDPR、復元ポイント、レポート、すべてのデバイス
Calíopeが使う4つのiCloudの仕組みについて、それぞれがこのデバイスから何を持ち出し、誰が読み、どのスイッチで管理されるかを説明します。
場所: Calíope › 設定 › 一般 → iCloud
Calíopeの同期は*1つ*ではなく4つあり、それぞれが別のものを扱います。どれがどれかを知ると、スイッチがいくつもある理由がわかります。
1. iCloud Drive:大きなファイルです。接続プロファイル、SQLエディタのタブの内容、ヘルスモニタの設定、レポート、SQLスニペット、SQLアラートのルール。「設定」›「一般」›「iCloud」の「CalíopeをiCloudと同期」で管理します。
2. キーバリューストア:設定とカスタマイズです。フォントサイズ、アラートのしきい値、バーの並び順、パネルのレイアウト。スイッチは同じで、容量はごくわずかです。
3. CloudKit:5つのチャネルがあり、それぞれに専用のスイッチがあって、デフォルトではオフです。全体のスイッチと分けてあるのは、このデバイスから機密になりうるデータを持ち出すからで、その許可は引き継がれるのではなく、改めてたずねられます。
- クエリーの履歴:クエリーの文字どおりのテキストで、テーブル名や値も含みます。スイッチは、SQLログそのものの中にある「クエリーログをiCloudと同期」です。Calíopeを動かしているほかのデバイスが読みます。
- AIアシスタントの会話:質問と回答そのままです。スイッチは、アシスタントの履歴パネルにある「履歴をiCloudと同期」です。
- アプリのエラーログ:プロファイルの別名と、各失敗の技術的な詳細です。スイッチは「設定」›「一般」›「アプリのエラーログ」の「エラーログをiCloudと同期」です。Calíopeを動かしているほかのデバイス(iPhoneを含む)が読みます。
- システムメッセージ:プロファイルまたはサーバの別名、バックアップまたはレポートの名前、それを生成したマシン、アラートの数値(秒数、行数、割合)。ホスト、ポート、ユーザ、クエリーのテキストは決して含みません。スイッチは「設定」›「一般」›「システムメッセージ」の「メッセージをiCloudと同期」です。Apple WatchのCalíopeが読みます。
- サーバ群の状態:監視しているサーバごとに、別名、ホスト、ポート、エンジン、バージョン、そしてレプリカの遅延を含むメトリクス。トポロジで宣言したレプリケーショングループはこの経路を通らず、ヘルスモニタの設定といっしょにiCloud Driveで運ばれます。パスワードやクエリーの内容は決して含みません。スイッチは「設定」›「一般」›「Apple TV」の「サーバの状態をiCloudに公開」です。Apple TVのCalíopeが読みます。オフにすると、すでに公開されたものはiCloudから取り下げられます。
4. iCloudキーチェーン:3種類の秘密情報だけで、ほかには何もありません。接続のパスワード(SSHトンネルのものを含む)、AIプロバイダのAPIキー、受け入れたSSHサーバのフィンガープリントです。専用のスイッチは「設定」›「一般」›「iCloud」にあり、Appleがエンドツーエンドで暗号化します。
何をオンにしても、このデバイスから出ないもの:
- 診断ログ(telemetry.json)。
- 自動補完を支えるスキーマのキャッシュ。
- macOSが与えるファイルアクセスの許可(SSH鍵、バックアップの保存先フォルダ)。技術的には*ブックマーク*で、許可したマシンの上でしか有効ではありません。
- 終了したときに開いていたタブ。これは意図的にデバイスごとです。
キーワード: 同期、iCloud、同期されるもの、CloudKit、キーチェーン、プライバシー、キーバリュー、デバイス、スイッチ、同意、Calíope TV、Apple TV、テレビ、Apple Watch、コンパニオン、iPhone、サーバ群、システムメッセージ
ウィジェットが読むのはメトリクスのローカルファイルで、資格情報は決して読みません。
ウィジェットを描画するには、Calíopeとウィジェットがデータを共有する必要があります。共有はインターネット経由ではなく、システムの共有フォルダ(App Group)を通して行います。
そのフォルダにあるもの:
- 固定したサーバのメトリクス:アクティブな接続、1秒あたりのクエリー数、稼働時間、キャッシュのヒット率。
- 名前とホストだけの、プロファイルの最小限の一覧。ウィジェットを設定するときにサーバを選べるようにするためです。
- 「サーバ群のヘルス」ウィジェットでは、ヘルスモニタが監視している各サーバの名前と状態。
そこにないもの、そしてありえないもの:パスワード、APIキー、SSH鍵、クエリーの結果。資格情報はキーチェーンにあり、ウィジェットがそれを求めることはありません。
そのフォルダはiCloudと同期しません。これは意図的です。中身は派生したデータで、書き込まれた間隔の3倍が過ぎると(最短でも1分半)ウィジェットは古いものとして扱い、各デバイスが自分で作り直します。「自分のデータをすべて削除」で完全に消去されます。
キーワード: ウィジェット、App Group、共有、プライバシー、資格情報、メトリクス、共有フォルダ
接続、設定、履歴をファイルに保存し、必要なときにいつでもそこから戻せます。
場所: Calíope › 設定 › 一般
「設定」›「一般」›「設定のバックアップ」で、「書き出す…」を押すと、Calíopeが保持しているすべてを含むJSONファイルが作成されます:接続とグループ、エディタの状態、設定、クエリーの履歴、レポートの定義、SQLスニペット、SQLアラートのルール、監視の設定です。何を含めるかは自分で選べ、除外したものは理由とともにファイルの中に記録されます。たとえば最近使ったファイルの許可は、許可したマシンの上でしか機能しません。
パスワードは別扱いです:チェックボックスをオンにしたときだけ持ち出され、常に自分で入力するキーで暗号化されます。そのキーがなければ、Calíopeからでも取り戻す方法はありません。
読み込むときは、まず何が変わるかの概要が表示されます:追加される接続の数、更新される接続の数、そして(いちばん大事な)このデバイスにしかない接続の数です。「結合」モードではそれらは残り、「置き換え」では失われます。各ファイルは、ここにすでにあるものと結合されます:このデバイスにしかないレポート、スニペット、エディタのタブは残ります。何かを適用する前に、アプリは自分で復元ポイントを残します。このデバイスの接続を読めない場合や、iCloudからのダウンロードが終わっていない場合は、概要は数える代わりにそのことを伝え、復元は何も変えずに止まります。「置き換え」モードでも同じです。ダウンロードが終わっていないほかのファイルも同様で、上書きされず、復元がそのことを伝えます。
パスワードがなくても、ファイルにはサーバ名、ユーザ名、クエリーのテキストが含まれます:安全な場所に保管してください。
キーワード: バックアップ、書き出し、読み込み、復元、設定、移行、別のマシン、JSON
Calíopeは設定のコピーを毎日または毎週保存し、iCloudに保管できます。
場所: Calíope › 設定 › 一般
「設定」›「一般」›「設定のバックアップ」で、Calíopeに毎日または毎週コピーを作らせることができます。コピーはあなたのiCloudにあるので、マシンを失っても残り、どのデバイスからでも復元できます。
いくつ残すかは自分で決められ、その数を超えると古いものから削除されます(削除されるのは、このデバイスが作ったものだけです)。各コピーには作成したデバイスが記録されているので、Macでの整理がiPadのコピーに触れることはありません。デバイスが記録されていない古いバージョンのコピーは、決して整理されません。コピーにパスワードは決して含まれません。自動で作成され、暗号化キーを入力する人がそこにいないからです。
スケジュールはデバイスごとのもので、同期されません:複数のデバイスからコピーを取りたい場合は、それぞれでオンにします。そしてiCloudが使えない場合、コピーはこのマシンにだけ残り、アプリがそのことを伝えます。
キーワード: 自動バックアップ、スケジュール、毎日、毎週、iCloud、コピー、保持期間、復元
何かを壊しうる操作の前には毎回、Calíopeが自分でコピーを保存します。
場所: Calíope › 設定 › 一般
自分で求めるバックアップとは別に、Calíopeはデータを失いうる操作の直前に自動のコピーを残します:iCloudの同期のオン・オフ、すべてのデータの削除、バックアップの復元、そして各セッションで最初に保存した変更です。
これらの復元ポイントはこのマシンに保存され、iCloudには決して保存されません。これは意図的です:iCloudにあるものに何が起きても、そこから救うのが役目だからです。
最新の10個に加えて、種類ごとに最新の1個が残ります。そのため「iCloudをオンにする前」が、10個のいつものコピーに押し出されることはありません。「設定」›「一般」›「設定のバックアップ」で確認し、復元できます。
キーワード: 復元ポイント、取り消し、削除の前、自動、ローカル、回復、安全
ログに記録したクエリーは、選んだ期間が過ぎると、ディスクとiCloudの両方で自動的に削除されます。
場所: Calíope › 設定 › 一般
「設定」›「一般」›「ログ」で、Calíopeが記録したクエリーをどれだけの期間保持するかを選べます:30、90、180、365日、または無制限です。
クリーンアップは、クエリーが置かれている両方の場所に及びます:このマシンのファイルと、ログの同期をオンにしていればiCloudのコピーです。1日に1回、少しずつ実行されるので、非常に大きなログは、完全に整理されるまでに数日かかることがあります。
「無制限」は正当な選択です(完全な履歴が欲しい人もいます)が、その意味は知っておく価値があります:ファイルはインストールが続くかぎり大きくなり、iCloudのコピーはアカウントの容量を使います。
SQLエディタで見る履歴は別のものです:接続ごとの最新のクエリーで、このデバイスにだけ保存され、決して同期されません。
キーワード: 保持期間、ログ、履歴、削除、日数、クリーンアップ、iCloud、容量