Skip to content

原文(日本語に翻訳)

claude agents でバックグラウンドセッションを再開した後、Windows上でキーボード入力が無効になる問題を修正しました。

原文(英語)

Fixed dead keyboard input on Windows after re-opening a background session from claude agents

概要

Windows環境でClaude Codeの claude agents コマンドを使用してバックグラウンドセッションを再開した際、キーボード入力が一切受け付けられなくなるという深刻な問題がありました。この問題はセッションを切り替えた後に発生し、ユーザーはClaude Codeを再起動せざるを得ない状況でした。この修正により、バックグラウンドセッションの再開後もキーボード入力が正常に機能するようになります。

基本的な使い方

修正後は、Windowsでもバックグラウンドセッションをシームレスに再開して作業を継続できます。

cmd
# バックグラウンドセッションの一覧を確認
claude agents

# 特定のセッションを再開(修正後は再開後もキーボードが正常動作)
claude agents --resume <session-id>

実践例

バックグラウンドエージェントセッションの管理

cmd
# 新しいエージェントセッションをバックグラウンドで開始
claude --background "大規模なコードレビューを実行してください"

# 別の作業を続けた後、セッション一覧を確認
claude agents
# 出力例:
# ID: abc123  状態: 実行中  タスク: 大規模なコードレビューを実行してください
# ID: def456  状態: 完了    タスク: ユニットテストの生成

# バックグラウンドセッションに接続
claude agents --resume abc123
# 修正前: キーボードが使えない状態になる
# 修正後: 通常通りキーボード入力が可能

Windows Terminal でのセッション切り替え

cmd
# Windows Terminalで複数のタブを使用してセッション管理

# タブ1: メインの開発作業
claude
> コードを書く作業...

# タブ2: バックグラウンドエージェントの管理
claude agents
# セッションを確認して接続
claude agents --resume abc123
# 修正後: タブ切り替え後もキーボードが正常に動作

PowerShellでの使用例

powershell
# PowerShellでのセッション管理
$sessionId = "abc123"

# バックグラウンドセッションを再開
claude agents --resume $sessionId

# 修正後: セッション再開後に通常通りコマンドを入力できる
# 例: /status でセッション状態を確認
# 例: /usage でトークン使用量を確認

注意点

  • この修正はWindows環境固有の問題に対処しています。macOS/Linuxでは発生しない問題でした。
  • Windows Terminal、PowerShell、コマンドプロンプトいずれの環境でも修正が適用されます。
  • バックグラウンドセッションの機能はv2.1.0以降で利用可能です。
  • 万が一キーボードが無効になった場合は、Ctrl+C でセッションを終了して再接続することで回避できます(修正後は不要ですが参考として)。

関連情報