Skip to content

原文(日本語に翻訳)

ボイスモード中の --debug で無害なWebSocket警告がエラーとしてログに記録されていた問題を修正しました。

原文(英語)

Fixed harmless WebSocket warning being logged as an error in --debug during voice mode

概要

ボイスモードを使用中に --debug フラグを付けてClaude Codeを実行すると、無害なWebSocket警告がエラーレベルでログに記録されてしまう問題が修正されました。この誤ったエラーログはデバッグの妨げとなっており、実際には問題のない警告を深刻なエラーと誤認させる原因でした。修正後は適切な警告レベルでログが記録されます。

基本的な使い方

--debug フラグと共にボイスモードを使用する場合、ログの信頼性が向上します。

bash
# デバッグモードでClaude Codeを起動
claude --debug

# ボイスモードを有効にして使用
# 修正前: WebSocket警告がERRORレベルでログに記録される
# [ERROR] WebSocket connection closed unexpectedly  ← 実際は警告レベル

# 修正後: 適切なWARNレベルでログに記録される
# [WARN] WebSocket connection closed unexpectedly  ← 正しいレベル

実践例

デバッグログの確認

bash
# デバッグ出力をファイルに保存して確認
claude --debug 2>&1 | tee claude-debug.log

# 修正前: ERROR として記録されるWebSocket警告がノイズになる
grep "ERROR" claude-debug.log
# → WebSocket関連の誤ったエラーが大量に表示される

# 修正後: 実際のエラーのみが表示される
grep "ERROR" claude-debug.log
# → 本当の問題のみが表示される(WebSocket警告は WARN レベル)

ボイスモードでのデバッグ

bash
# ボイスモードの問題をデバッグする場合
claude --debug 2>&1 | grep -E "ERROR|WARN|voice"

# 修正後: WebSocket関連の誤ったERRORが除かれ、
# 実際の問題を特定しやすくなる

ログレベルフィルタリング

bash
# エラーのみに絞ってデバッグログを確認
claude --debug 2>&1 | grep "ERROR"

# 修正前: WebSocket警告がERRORとして混入していた
# 修正後: 実際のエラーのみが表示される

注意点

  • この修正はデバッグ体験の改善であり、ボイスモードの機能には影響しません。
  • WebSocket接続の切断は正常なライフサイクルの一部であり、ほとんどの場合は自動的に再接続されます。
  • 実際のWebSocketエラー(接続失敗など)は引き続きERRORレベルでログに記録されます。
  • --debug フラグは開発やトラブルシューティング時のみ使用することを推奨します。本番環境での常時使用はパフォーマンスに影響する可能性があります。

関連情報