一覧に戻る

ブログ

ゼロクラウドアーキテクチャ:Tactic Remote はいかにしてコードをあなたのマシンに留めるか

Tactic Remote はゼロクラウドアーキテクチャで動作し、すべてのコード実行、セッションデータ、ファイルアクセスが開発者の Mac 上に留まります。iPhone と Mac の間は直接暗号化接続で結ばれ、当社のインフラストラクチャを完全にバイパスします。

公開日 タグ: security / architecture / privacy / trust-model
ブログ

このカテゴリのプロダクト/開発アップデートを確認できます。

カテゴリを見る

毎週のように、AI ツールがソースコードをクラウドサービスにアップロードした、同意なく独自データでトレーニングを行った、あるいは設定ミスの API を通じて開発環境の認証情報が漏洩した、といった新たな事例が報じられています。コードベースに触れるツールに対して開発者が懐疑的になるのは当然のことです。

Tactic Remote は最初から単純な原則に基づいて設計されました。あなたのコードはマシンから決して出ない、ということです。本記事では、その仕組み、信頼境界の所在、そして当社が見られるもの・見られないものを正確に説明します。

「ゼロクラウド」の意味

Tactic Remote にはクラウドバックエンドがありません。開発データを中継、保存、処理するサーバーを当社は運用していません。iPhone と Mac の間の接続は直接です。

ローカルネットワークモードでは、「直接」とは文字通りの意味です。iPhone はローカル Wi-Fi ネットワークを介して Mac と通信します。トラフィックはネットワークの外に出ず、DNS 解決も外部サーバーにアクセスしません。接続は同じサブネット上の2台のデバイス間で行われます。

Cloudflare Tunnel モードでは、ローカルネットワークの外にいる場合、トラフィックは Cloudflare のエッジネットワークを経由して Mac に到達します。Cloudflare はトランスポート層を提供しますが、アプリケーション層のペイロードは iPhone と Mac companion アプリの間でエンドツーエンドで暗号化されています。Cloudflare が見るのは暗号化されたバイト列です。当社は何も見ません。

「ゼロクラウド」が具体的にカバーする範囲:

  • ソースコード — 当社に送信されることはありません。Claude Code が読み取るファイル内容は Mac 上に留まります。iPhone アプリの承認ビューでファイルの差分が表示される際も、Mac から iPhone へ直接転送されます。
  • セッション記録 — あなたと Claude Code の会話は Mac 上に留まります。iPhone はターミナル出力のストリームを表示用に受信しますが、このストリームは当社が制御する仲介者なしに Mac から iPhone へ直接送られます。
  • Shell コマンド出力 — Mac 上に留まります。表示用に iPhone へストリーミングされますが、他の場所には保存されません。
  • 承認決定 — iPhone から Mac へ送信されます。何を承認・拒否したかの記録は当社にはありません。
  • プッシュ通知ペイロード — これが当社が Apple のインフラストラクチャとやり取りする唯一の領域です。詳細は以下で説明します。

iPhone と Mac 間の認証

iPhone を Mac companion とペアリングする際、デバイスは以下の2つの方法のいずれかで共有シークレットを確立します:

QR コードペアリング。 Mac companion がワンタイムペアリングトークンと Mac のローカルネットワークアドレスを含む QR コードを生成します。iPhone アプリでスキャンします。デバイスは初回接続時に暗号鍵を交換し、以降の接続ではこれらの鍵を使用して認証します。ペアリングトークンは使い捨てで、60 秒後に有効期限が切れます。

手動コード入力。 QR スキャンが実用的でない場合、Mac companion は 6 桁のコードを表示します。iPhone で入力します。このコードは QR トークンと同じ目的、つまり鍵交換のブートストラップとして機能します。

ペアリング後の認証は自動的に行われます。iPhone は接続のたびに保存された鍵を提示し、Mac companion は承認済みデバイスリストと照合して検証します。パスワード不要、ローテーション不要のトークン、OAuth フロー不要です。

ペアリングデータは Mac では macOS Keychain に、iPhone では iOS Keychain に保存されます。いずれも Apple の Secure Enclave が提供するハードウェア暗号化ストレージです。

信頼境界

すべてのセキュリティモデルには信頼境界があります。外部の何かを信頼しなければならない境界線です。当社の信頼境界を明確にします:

Anthropic の Claude Code を信頼する

Tactic Remote は Claude Code のコントロールレイヤーです。Claude Code 自体は Anthropic の API と通信してレスポンスを生成します。あなたのプロンプトと Claude のレスポンスは Anthropic のサーバーを経由します。これは Claude Code の使用に固有のものであり、Tactic Remote が追加するものでも、除去できるものでもありません。Anthropic のデータ取り扱いポリシーがこのトラフィックに適用されます。

Apple のプッシュ通知を信頼する

Mac companion が承認リクエストを届けるために iPhone を起動させる必要がある場合、Apple Push Notification service (APNs) を通じてプッシュ通知を送信します。通知ペイロードには最小限のアラート — セッション名とアクションの種類(例:「Claude がシェルコマンドを実行しようとしています」)のみが含まれます。実際のコマンド、ファイル内容、ソースコードは一切含まれません。

通知ペイロードは可能な限り最小限になるよう設計しました。詳細な承認情報は、通知を開いた際に iPhone アプリが Mac から直接取得します。Apple は Tactic Remote からの通知を受信したことを確認できますが、Claude Code が何をしているかは見えません。

Cloudflare を信頼する(Tunnel モードのみ)

リモートアクセスに Cloudflare Tunnel を使用する場合、トラフィックは Cloudflare のネットワークを経由します。Cloudflare 統合に関する記事で説明したとおり、トランスポート層は Cloudflare のものですが、アプリケーションペイロードは Cloudflare が持たない鍵で暗号化されています。

ローカルネットワークを信頼する(ローカルモードのみ)

ローカルネットワークモードでは、接続のセキュリティは Wi-Fi ネットワークのセキュリティに依存します。信頼できる自宅やオフィスのネットワークでは問題ありません。公衆 Wi-Fi ネットワークでは、ローカルモードのトラフィックが理論上傍受される可能性があります。ネットワークの種類に関係なく WebSocket 接続には TLS を使用していますが、信頼できないネットワーク経由で接続する場合は Cloudflare Tunnel モードをお勧めします。

当社が見られるもの・見られないもの

データアクセスに関する透明性は妥協できないものと考えています。以下は正確な説明です:

データ当社が見られるか説明
ソースコードいいえMac から出ることはない
セッション記録いいえMac から iPhone のみ
実行されたコマンドいいえMac から iPhone のみ
承認決定いいえiPhone から Mac のみ
読み書きされたファイルいいえMac ローカルのみ
通知配信ステータスはいApple が配信ステータスを報告
アプリクラッシュレポートはい(オプトイン)標準的な iOS クラッシュレポート
利用分析はい(オプトイン)セッション数、継続時間のみ — コンテンツなし

オプトインの分析(有効にした場合)には、集約された利用指標のみが含まれます:開始されたセッション数、平均セッション時間、接続モードの分布。コンテンツ、ファイルパス、コマンドテキストは含まれません。分析は iPhone アプリの設定で完全に無効化できます。

ネットワークアーキテクチャ

以下は、典型的な Tactic Remote セッション中にネットワークレベルで何が起きるかを説明しています:

ローカルネットワークモード

iPhone  <——— TLS/WebSocket ———>  Mac Companion (port 5225)
                                        |
                                   tmux session
                                        |
                                   Claude Code  <———>  Anthropic API

ルーターは2台のデバイス間のローカルトラフィックを確認します。ISP は Tactic Remote に関連するものを何も見ません。唯一の外部トラフィックは Claude Code と Anthropic API の通信であり、これは Tactic Remote の有無に関係なく発生します。

Cloudflare Tunnel モード

iPhone  <—— TLS ——>  Cloudflare Edge  <—— TLS ——>  cloudflared  <——>  Mac Companion
                                                                            |
                                                                       tmux session
                                                                            |
                                                                       Claude Code  <———>  Anthropic API

Cloudflare が見るのは暗号化されたアプリケーショントラフィックです。Mac 上の cloudflared デーモンが Cloudflare トンネルを終端し、トラフィックを localhost の Mac companion に転送します。Cloudflare のエッジネットワーク以外の外部関係者がトラフィックを扱うことはなく、Cloudflare はアプリケーション層の暗号化を復号できません。

脅威モデル

以下の攻撃シナリオと、アーキテクチャがそれらにどう対処するかを検討しました:

Wi-Fi ネットワークの侵害。 WebSocket 接続の TLS によりパッシブな盗聴を防止します。TLS インターセプト(MITM)攻撃を行うアクティブな攻撃者は、iPhone アプリの証明書ピンニングを突破する必要があり、これは非常に複雑な攻撃です。

iPhone の盗難。 Tactic Remote アプリを開くには生体認証(Face ID または Touch ID)が必要です。ペアリング鍵は Secure Enclave に保存されており、脱獄されたデバイスからも抽出できません。盗まれた iPhone では、所有者の生体情報なしにアクションを承認したりセッションデータを閲覧したりすることはできません。

Mac の侵害。 攻撃者が Mac にアクセスできれば、Claude Code がアクセスできるすべてにアクセスできます。これは Tactic Remote の有無にかかわらず同じです。Tactic Remote は侵害された Mac の攻撃対象領域を拡大しません。

不正な Mac companion アップデート。 Mac companion は当社ウェブサイトから署名済みバイナリとして配布されます。macOS Gatekeeper が実行前にコード署名を検証します。サイレントアップデートをプッシュする機能はなく、ユーザーが手動でアップデートをダウンロード・インストールする必要があります。

なぜこれが重要なのか

AI 支援開発ツールのトレンドは、サンドボックス環境で実行されリポジトリ統合を通じてコードにアクセスする、クラウドホスト型エージェントに向かっています。このモデルは一部のチームには有効ですが、ツールベンダーにソースコード、認証情報、開発ワークフローを信頼して預ける必要があります。

Tactic Remote は逆のアプローチを取ります。あなたの Mac が実行環境です。コードはあなたのディスク上に留まります。認証情報はあなたの Keychain に留まります。関与する唯一の AI サービスは、Claude Code と Anthropic API の既存の関係であり、Claude Code をインストールした際にすでに同意済みのものです。

このアーキテクチャにはコストがあります。電源を入れたままの Mac が必要です。ネットワーク接続を自分で管理する必要があります。任意のブラウザから動作するクラウドダッシュボードの利便性は得られません。

このトレードオフは価値があると考えています。プロプライエタリソフトウェアの開発、機密データの取り扱い、規制産業での業務に携わる開発者にとって、「コードがマシンから出ることはなかった」と言えることは機能ではなく、要件です。

セキュリティ強化の推奨事項と詳細な設定ガイダンスについては、セキュリティとネットワーク強化のドキュメントをご覧ください。

Tactic Remote を試す

スマートフォンからコーディングエージェントを操作

Mac、Windows、Linux 上の Claude Code や Codex などに接続。iPhone や iPad で進捗を確認し、次の指示を送れます。