Claude Media
Claude CodeのVS CodeでShiftドラッグが効かない原因と回避策

Claude CodeのVS CodeでShiftドラッグが効かない原因と回避策

VS Code 1.140.0以降、エクスプローラーからClaude Code拡張のチャット欄へのShift+ドラッグが効かなくなっています。原因はElectron更新で、@メンションなどの代替手順を紹介します。

VS Code 1.140.0以降、エクスプローラーのファイルを Shift を押しながらClaude Code拡張のチャット欄へドラッグしても、添付されなくなっています。拡張側のバグではなく、VS Codeが同梱するElectronの更新で起きた不具合として、VS Code側のissueで追跡されています。

当面の代替は、@ でファイル名を打つ方法と、Option+K(Windows・Linuxは Alt+K)で開いているファイルを参照する方法です。

何が効かなくなったのか

Claude Code拡張には、ファイルをプロンプトボックスへ持ち込む方法として「Shift を押しながらドラッグする」手順があります。anthropics/claude-codeのissue #100023(2026年10月6日起票)は、この手順がVS Code 1.140.0(Universal)とClaude Code拡張2.1.291の組み合わせで動かなくなったという報告です。報告者はClaude Code 2.1.245のころは使えていたと書いています。

その後のコメントでは、拡張2.1.292と2.1.294、VS Code 1.141.0でも同じ症状が続いたと報告されています。更新しても直りません。

切り分けの手がかりになる報告が1つあります。同じmacOSで、FinderからのShift+ドラッグは今も効き、VS Code内蔵のエクスプローラーからだけが効かないという内容です。ドロップ時にWebview Developer Toolsのコンソールには何も出ず、ドロップのイベントがwebviewに届いていないとされています。

操作状況(報告ベース)
FinderやWindowsのエクスプローラーからShift+ドラッグ状況(報告ベース)動く
VS CodeのエクスプローラーからShift+ドラッグ状況(報告ベース)届かない
エディタのタブからShift+ドラッグ状況(報告ベース)届かない(issueの報告)
Shiftなしのドラッグ状況(報告ベース)もともとエディタのドロップ表示が出る動作
画像のクリップボード貼り付け状況(報告ベース)別経路で、この不具合の対象外

サイドバーに置いたチャットも、エディタのタブとして開いたチャットも対象です。Windowsでも再現するという報告が、VS Code側のissueにあります。macOS限定の問題ではありません。

原因はVS Code 1.140.0のElectron更新

VS Code側では、microsoft/vscode#339036が回帰(regression)として追跡しています。ラベルには webview と electron が付いています。VS Code側のコメントによる経緯は次のとおりです。

あゆみ

不具合が入るまでと報告の流れ

  1. 9月9日Electronの変更が閉じられる

    electron/electron#53750の「only relax the drag target check across WebContents」が閉じられました。Electron 43.7.0で初めて配布されています。

  2. 9月22日VS CodeがElectron 43.7.3に更新

    microsoft/vscode#336697が、Electronを43.6.0から43.7.3へ上げました。1.140.0のマイルストーンです。

  3. 9月30日VS Code 1.140.0が公開される

    起票されたissueの報告では、1.139.0に戻すと動き、1.140.0で壊れるという対比が確認されています。

  4. 10月6日Claude Code側にissueが立つ

    anthropics/claude-code#100023が起票されます。10月8日には、VS Code 1.141.0でも直っていないというコメントが付きました。

VS Code側の回帰分析によると、ElectronはこれまでWebContents間のドラッグ先チェックを事実上すべて許可していました。変更後は、同じ最上位WebContents内の別サイトへのドラッグを許可しません。VS Codeの拡張webviewは、Electronのゲスト <webview> ではなく、別サイトとして扱われる vscode-webview:// のiframeです。エクスプローラーからwebviewへのドラッグは、この制限に当たります。

ブラウザー側で拒否されるため、拡張のJavaScriptにはドロップのイベントが届きません。Shift を押しても戻らず、拡張のログも静かなままなのは、この仕組みのためとされています。拡張が検知して何かを表示する余地はないので、Claude Code側のバージョンを上げても直りません。

VS Code側で重複としてクローズされた #339278には、Shift なしのドラッグがwebviewに届かないのは想定どおりで、問題は「Shiftを押せばwebviewが再び受け取る」動作が壊れたことだ、という整理があります。

自分の環境がこの不具合かを切り分ける

症状の出方には幅があります。VS Code側のissueには、macOSの1.141.0で15回に1回ほどだけドロップが届き、通常は表示される「Drop to attach as context」の強調表示が一度も出ない、という報告があります。完全に動かないとは限らず、たまに成功しても修正されたわけではありません。Insiders版でも、1.139.0では動き、1.140.0で壊れるという同じ対比が報告されています。内蔵のチャットでは今も動くため、症状はwebviewに限られます。

切り分け

Shift+ドラッグが効かないときの切り分け

  1. QVS Codeのバージョンは1.140.0以降か
    答えがいいえ

    別の原因です。拡張の応答そのものを疑う場合はClaude CodeのVS Code拡張機能が応答しないときの切り分け手順の確認項目を先に見ます。

    答えがはい
  2. QFinderなど、VS Code外のファイルをShift+ドラッグすると添付されるか
    答えがいいえ

    VS Code外からも効かないなら、この不具合とは別です。プロンプトボックスにフォーカスがあるか、ドロップ先がチャット欄の入力部分かを確かめます。

    答えがはい
  3. QVS Codeのエクスプローラーから持ってきたときだけ添付されないか
    答えがいいえ

    ここまで一致しなければ、同じ症状でも別の要因があり得ます。

    答えがはい

今回の不具合に当てはまります

下の代替手順を使うか、VS Code側の修正を待ちます。

代替手順: @メンションでファイルを渡す

エクスプローラーを開いたまま作業しているなら、ドラッグの代わりに @ を使うのが最短です。ファイル名の一部を打てば候補が絞られ、フォルダは末尾にスラッシュを付けて指定します。公式ドキュメントに載っている書き方は次のとおりです。

Explain the logic in @auth (fuzzy matches auth.js, AuthService.ts, etc.)
What's in @src/components/ (include a trailing slash for folders)

ドラッグが元々「実ファイルを手で持ち込む」入口だったのに対し、@ は名前で探させる入口です。どちらもClaudeに渡るのはファイルの内容で、Claudeが読むという結果は変わりません。書式の詳細や、PDFのページ範囲指定はClaude Code VS Code拡張の@メンションでファイル・フォルダを参照するにあります。

エディタでファイルを開いているなら、もう1つ方法があります。コードを選択して Option+K(Windows・Linuxは Alt+K)を押すと、@app.ts#5-10 の形でファイルパスと行番号がプロンプトに入ります。issueのコメントには「Option+Cmd+K」という書き方もありますが、ショートカット表では Option+K です。このキーはエディタにフォーカスがあるときだけ動きます。反応しないときは、同じ記事のOption+Kの節が切り分けの助けになります。

  • 画像: クリップボードから貼り付ければ添付できます。ドラッグを使わない経路です
  • VS Code外のファイル: FinderなどからのShift+ドラッグが使えるという報告があります
  • 旧版への切り戻し: 報告者のうち複数が、VS Code 1.139.0に戻すと動いたと書いています。ただし他の変更も一緒に戻るため、急ぎでなければ修正を待つ選択肢もあります

修正の見込み

#339036のマイルストーンは「On Deck」(今後のマイルストーン候補として検討中の枠)です。Claude Code側のissueのコメントには1.142.0のマイルストーンに割り当てられたとありますが、VS Code側のissueの表示とは一致しません。修正版の時期は、VS Codeの更新履歴で確かめるのが確実です。

Claude Code拡張のissue #100023もopenのままです。原因がVS Code側にあるため、拡張側の更新を待つ必要はありません。VS Codeのバージョンが上がったら、エクスプローラーからのドラッグをもう一度試す、という確認で足ります。

同じ症状の報告は2025年10月にも出ており、anthropics/claude-code#9092はすでに閉じています。今回は原因が違う回帰です。

VS Codeの配布ファイルを書き換えてドラッグを通した、という報告もコメントにあります。ただし書き換えたファイルはVS Codeを更新するたびに元に戻るため、継続して使える回避策にはなりません。

同じ時期のVS Code拡張まわりの不具合は、仮想ワークスペースでlibcエラーになる原因やMCP elicitationが自動辞退される不具合にまとめています。

この記事を共有:XはてブLinkedIn