💣

Cline(Roo Code)がターミナルの出力を読めなかったときのワークアラウンド

2025/03/02に公開

Roo Codeがターミナルの出力を読めない問題解決がバージョンアップで解決したようなので、不要になったのですが、何かで必要になりそうなTipsなので、参考情報として残しておきます。やはり環境によっては読めないケースがありそうです。

本記事は、macOSでRoo Codeを使ったときを対象にしています。Clineや他のCline派生の拡張およびmacOS以外のOSでは確認できていませんのでご了承ください。

Clineがターミナルの出力を読めるか確認

VS Codeエディタのターミナルの出力をClineが読めるかチェックします。Clineは、VS Codeエディタのターミナルでコマンドを実行して、その結果を確認してフィードバックしてくれます。このように人間を介さない自律的な動きができることは、地味なようですが使用してみると非常に良い開発体験を生むことを実感できます。こういった機能がないツールを使う場合は、今の時点では、自分でAIの出力したコマンドや実行結果をコピペすることになります。時間がたてばそれらのツールでも同様の機能が実装されるか、淘汰されていくことになるので、ツールを乗り換えるか待つかしましょう。

重要な機能なので、最初に動作を確認していきます。動作を確認するには、以下のようなプロンプトをClineに入力するだけです。

あなたがターミナルの出力を読めるかチェックしたいので、echoで出力して読めるか教えて下さい

例えば以下のようにコマンドの実行依頼が出てきますので、Run Commandボタンを押します。

うまくClineが出力を読めると以下のように表示されます。

ターミナルの出力確認のワークアラウンド

環境によっては出力をうまく出力が読めない場合があります。使用するシェルや、設定によって変わってくるようです。

リダイレクトを使う

リダイレクトを使って、ファイルをいったん書き出してから読む方法です。プロンプトで以下のように指示すればOKです。毎回指示するのは大変なので.clinerulesに書いておくのがよいでしょう(テンプレートリポジトリの.clinerulesには書いてあります)。

### 標準出力が見えない環境(例:Docker環境)の場合
以下の手順で出力を確認してください:

1. 標準出力と標準エラー出力を別々のファイルに保存:
   ```bash
   コマンド > stdout.txt 2> stderr.txt
   ```

2. それぞれのファイルを確認:
   ```bash
   <read_file>
   <path>stdout.txt</path>
   </read_file>

   <read_file>
   <path>stderr.txt</path>
   </read_file>
   ```

これにより、出力が見えないときは以下のようにリダイレクトを提案してくれます。

実行すると、リダイレクトで出力が見えたことが分かります。

リダイレクトすると余計なAPI料金と時間がかかることになるので、可能なら出力を読めるようにしておくとよいのですが、環境によっては難しいかもしれません。

zshの設定変更

[[ "$TERM_PROGRAM" == "vscode" ]] && . "$(code --locate-shell-integration-path zsh)").zshrcに追記(参考

上記でもだめな場合は、.zshrcに以下のように記載してプロンプトをイジってないか確認しましょう。プロンプトを変更してしまうとうまく読めないようです。

export PROMPT="xxx"

上記に関しては、以下の記事に助けられました。
https://zenn.dev/razokulover/articles/768337f838a110

シェルの変更

使用するシェルを以下記事のようにMac標準のzshからfishに変更することで出力を読めるようになります。ただ、上記のzshの設定変更で直るならわざわざfishに変更する必要はないと思います。

https://zenn.dev/karaage0703/articles/275bf8f906cc66

Devcontainerの使用

Devcontainerでコンテナ環境でも、ターミナル出力を読むことができました。

まとめ

簡単なワークアラウンドのまとめです。

参考リンク

https://zenn.dev/razokulover/articles/e0e3ae3cbab03d

関連記事

https://zenn.dev/mkj/articles/cf8536923d9cd7

変更履歴

  • 2025/03/05 zshの設定変更に関して追記

Discussion