「Shell Integration Unavailable」によりVS Code 1.99でClineが動かない問題の解決法
株式会社ジェイテックジャパンの高丘です。日頃からVS CodeとClineというAIアシスタントを活用して開発をしています。
TL;DR (結論から)
VS Code 1.99以降でClineのターミナル統合が動かなくなった場合、~/.zshrc に以下の1行を追加することで解決できます:
[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)"
これによりシェル統合が手動でインストールされ、Clineがターミナルコマンドを正しく読み取れるようになります。
問題の発生
今日、作業中に突然"Shell Integration Unavailable"というメッセージが出て、Clineでターミナルのコマンドを読み取れなくなりました。

動作としては、Clineがコンソールが実行される前にコマンドの読み取りを終了してしまい、コンソールの結果を読んでいない状態でした。
原因の調査
問題解決のために以下の手順で調査しました:
- VS Codeのバージョンを1つ戻す試み → 解決せず
- Clineのバージョンを変更する試み → 解決せず
- ClineのDiscordコミュニティで調査 → 同じ問題を報告している人が複数いることを確認
- 開発者とのチャット → 直接の解決策は見つからず
- Clineのソースコード確認
コードレベルでの原因特定
Clineのソースコードを調査したところ、以下の実装を発見しました:
Clineはterminal.shellIntegration.executeCommandというVS Code拡張機能のAPIを使用していることがわかりました。
VS Codeの最新アップデート情報を確認したところ、バージョン1.99で以下の変更がありました:
GitHub Copilot Agentの動作のためにterminal.shellIntegration.executeCommandに修正が加えられており、これがClineの動作に影響していたのです。
解決策
一時的な解決策
VS Codeのバージョンを1.98.2に戻すことで問題が解消することを確認しました。
恒久的な解決策
最新のVS Codeを使いながらClineを動作させるために、VS Codeの公式ドキュメントを参照しました:
ここで紹介されている「シェル統合の手動インストール」を実行することで問題を解決できます。
手順は非常に簡単です:
-
~/.zshrcファイルを開きます - 以下の行を追加します:
[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)"
- VS Codeを再起動します
この設定により、VS Codeの統合ターミナルでzshを使用する際に、シェル統合機能が正しく動作するようになります。特に、ターミナルコマンド実行時の結果がClineに正しく取得される問題が解消されます。
まとめ
今回の問題を通じて、Clineのようなターミナル統合型AIアシスタントが開発ワークフローにとって重要なツールであることを実感しました。
解決策の要点:
- 最新のVS Code更新によりシェル統合の仕組みが変更された
- Clineのような拡張機能が影響を受けた
- シェル統合の手動設定で問題を解決できた
Discord上のサポートも親切でしたが、最終的には自分で調査して解決策を見つけることができました。同様の問題に直面している開発者にとって、この記事が役立つことを願っています。
Discussion