複数PCで地味にハマった「アカウント連携型」拡張機能のセッション問題
背景
さいきん、コマンドの実行や、インストールの実行やブラウザの実行など、PC を直接操作してくれる機能が使ってみたくて、Claude Code を使い始めました。
普段、仕事でリモートデスクトップを使って5台くらいのWindows機を行き来してまして、そのうちの何台かにも「Claude Code のデスクトップ版」をインストールしました。
デスクトップ版はアカウント登録とログインが必須で、ブラウザを自動で使わせるにはさらにchrome の拡張機能も必要なので、インストールして有効化しました。
ログインと拡張にはGoogle アカウントを使いました。
さて、しばらくしてブラウザ経由の作業をAI に指示しようとしたら、「複数のブラウザが接続されています。どれを使いますか」と聞かれるようになりました。

接続中のブラウザはどう見えるか
実際にブラウザのを使うときは、ネットワーク内の拡張が有効なブラウザを見ているのかClaude のアカウントを通して、拡張が有効になっていて、かつ起動中のブラウザを見てます。
chrome 拡張は、拡張を有効化したアカウントでログインしているすべてのブラウザで有効になるわけで、、、開いているブラウザはすべて使えるブラウザの候補になってしまっているようです。
ブラウザが起動しているを「複数のブラウザが接続されています」と出たときの画面を見ると、接続中のブラウザが4つ、ランダムな英数字のID(デバイスID)で並んでいるだけでした。名前もPC名もついてないので、どれが今使いたいPCのブラウザなのか、パッと見ただけではわかりません。
ゆえに、リモート先で開いているブラウザすべてが対象になってしまっているみたいです。
デバイスIDは固定なのか気になって調べてみたところ、同じブラウザ・同じ拡張機能のインストールであれば基本的に変わらないようでした。つまり一度どのIDがどのPCなのか把握してしまえば、名前がついているのとほぼ同じ状態になります。IPアドレスなどで指定できる仕組みがあれば印象も変わりそうですが、今のところそこまでの機能は見当たりませんでした。
何かのタイミングで生成されているようで、ID にタグ付けしてもまた違うID で聞いてきます。orz
結局、一つずつ順番に呼び出して「これは違う」「じゃあ次」と試しながら、自分が今使っているPCのブラウザを探すしかありませんでした。
現実的な対処法

今のところの落としどころは、運用でカバーすることだと思っています。具体的には、デバイスIDにあらかじめ名前をつけて把握しておくか、使い終わったらこまめに拡張機能の接続を切っておくか、のどちらかです。個人的には、デスクトップ版アプリが動いているPC上のブラウザに固定でバインドできたら一番スマートだと思うのですが、今のところそういう機能は見当たりませんでした。
そもそも複数PCのどこからでもClaudeの能力を使えること自体は、地味にありがたい話です。デスクトップ版をPC単位で使うのをやめるつもりは全然ないので、これは「問題」というよりは、「固定できたらもっとスマートで便利なのになあ」くらいの、ちょっとした願望として書き残しておきます。
アカウントをClaude 用に作成してそっちでClaude の拡張を有効にすると、特定しやすいと思います。
普段使いのアカウントではClaude 拡張を有効にしないようにすることで、選択肢を絞れます。
ブラウザの種類を変えて、そっちだけ拡張するという方法も考えられます。
とにかく、Claude の出口を限定することが大事。
ただ逆に、複数台のPC 上のClaude から1つのブラウザを見に行ったら、複数のClaude でブラウザを取り合う(ロックが発生するという意味ではなくて、スクショとかの操作がぶつかるという意。)という事態も発生するので、「出口を1つに絞る」と「同時に並行で使う」はトレードオフです。
ロックファイルの運用みたいな、順番に処理を行うような仕組みを構築する必要がありますね。
(Claude に相談すれば、作れそう。)
勝手にログインはできないという縛り自体はまっとうで良いと思うのですが、出先の携帯にそんな通知もらってもどうにもできんがなというときがあります。
そんな時は携帯のリモートアプリで頑張るか、帰ってから指定しています。
さて、IDを固定できたぜ!やったぜ!みたいなメモにしたかったのですが、結局雑談感半端ない感じになってしましましたが、もっといい解決策とか、機能がアップデートされたら更新するってことで、以上です。
追記:プロフィールに目印を置いてブラウザを見分けるアイディア(2026/9/27)
課題
拡張の一覧からは見分けられない
接続中のブラウザの一覧に出るのは、「Browser 1」のような名前、デバイスID、OSくらい。Chromeにログインしているアカウントやプロフィール名は、拡張からは見えない。
複数PCから同時に使うと、ぶつかる可能性がある
複数のPCのClaudeが同じプロフィールを同時に使うと、画面やログイン状態を共有しているので、操作がぶつかる可能性がある。並行で使うなら、用途ごとに専用プロフィールを分けるほうが安全そう。
localStorageに目印を置く

Chromeは、プロフィールごとにサイトの保存領域(localStorage)が分かれている。そこで、自分のサイトにプロフィールごとの目印を保存しておく。
localStorage.setItem('claude-browser-id', 'PC3-Claude専用')- 各プロフィールで自分のサイトを開き、F12のコンソールで実行する
- 拡張のデバイスIDが変わっても、目印はプロフィール側に残る
- 「Cookieと他のサイトデータの削除」をすると消えるので、そのときは入れ直す
自動で選ぶところまではできない
Claudeに目印を読ませれば、どのブラウザにつながっているかは判別できる。ただ、複数のブラウザが接続されているときは、どれを使うかはユーザーが選ぶ決まりになっていて、Claudeが一つずつ切り替えて自動で選ぶことはできない。できるのは、選んだあとに目印を読んで「これで合っているか」を確認するところまで。
選択から確認まで自動でやってくれるならなかなか良いのだけど、選ぶのは手動のままなので、今のところはアイディア止まり。
ロックファイルで順番待ちにする

同じプロフィールをどうしても複数のPCから使いたい場合は、NASの共有フォルダなど、全PCから見える場所にロックファイルを置いて順番待ちにする手がある。
- ブラウザを使う前に、ロックファイルを作る。すでにあれば、消えるまで待つ
- ロックファイルには、どのPCがいつ取ったかを書いておく
- 作業が終わったら消す
- セッションが途中で落ちるとロックが残るので、「一定時間たったら無効」という期限を決めておく
この手順をスキルや CLAUDE.md に書いておけば、すぐに試せる。ただ、守るかどうかはAI任せなので強制力はない。
もっと確実にするなら、次のような方法がある。
- フックで止める:ブラウザのツールを呼ぶ直前にロックを確認して、取れなければ止める。ただし効くのは1操作ごとなので、一連の作業の途中で割り込まれるのは防ぎにくい
- ブラウザ係を立てる:間にブラウザ操作専用のサーバーを1つ置いて、各セッションはそこに依頼する。サーバーが依頼を順番に処理するので確実に順番待ちになるが、作るのも運用するのも大変

