Claude Codeのパーミッション承認をリモートで実行する方法(2026年4月)
TL;DR
- Claude Codeがリモートサーバーで動いているとき、パーミッション(許可)リクエストがローカルから承認できるようになる手順が公開された
- SSH(遠隔接続)経由でセッションをつなぎ直す方法と、専用の承認フローを使う方法が紹介されている
- サーバー上で止まったエージェントを手元のPCから再開できるため、離席中や非同期運用で実用的
変更内容の詳細
Claude Codeのパーミッション承認とは何か
Claude Code(AnthropicのCLIツール)は、ファイルの書き換えやシェルコマンドの実行など、影響の大きい操作を行う前にユーザーへ「この操作を許可しますか?」と確認を求める。これがパーミッションリクエストだ。
ローカル(手元のPC)で動かしている場合はターミナルに直接メッセージが表示されるので問題ない。しかし、リモートサーバーやクラウド上で長時間エージェントを走らせているケースでは、確認画面が出てもその場で見られないため、処理が途中で止まってしまう。
リモート承認の仕組み
dev.toの記事(Dan氏、2026年4月)で紹介されている方法は、大きく分けて次の流れになる。
1. tmux(ターミナル多重化ツール)を使ったセッション維持
リモートサーバー上でClaude Codeを起動するとき、tmux を使ってセッションを維持しておく。tmux はSSH接続が切れてもプロセスが継続するため、後から再接続して承認操作ができる。
# リモートサーバーで tmux セッションを作成して Claude Code を起動
tmux new-session -s claude-session
claude # Claude Code を起動
# 別のターミナル(ローカルPC)から再接続する場合
ssh user@remote-server
tmux attach-session -t claude-session
再接続後は、止まっているパーミッション確認画面がそのまま表示されるため、キーボードで承認・拒否の選択が可能になる。
2. --dangerously-skip-permissions フラグの利用(注意あり)
完全自動化が必要な場合、--dangerously-skip-permissions フラグをつけて起動することで承認ダイアログを省略できる。ただし、このオプションはすべての操作を無条件に許可する設定であり、意図しないファイル変更やコマンド実行のリスクがある。名前の通り「危険を承知で使う」ものだ。
# すべてのパーミッション確認をスキップ(信頼できる環境・用途限定)
claude --dangerously-skip-permissions
ソース内でも、このフラグは隔離されたコンテナや信頼できるプロジェクトに限って使うべきと注意されている。
3. claude --resume によるセッション再開
Claude Codeにはセッションを再開する機能がある。リモートで止まったセッションIDを確認し、ローカルから再接続して承認操作を行うパターンも紹介されている。
# 過去のセッション一覧を確認
claude --list-sessions
# セッションIDを指定して再開
claude --resume <セッションID>
既存ユーザーへの影響と対応
影響を受けるのはどんな使い方か
- SSH経由でリモートサーバーにClaude Codeを導入して長時間タスクを走らせているケース
- GitHub ActionsなどCIパイプラインの中でClaude Codeを動かすケース
- チームで共有サーバーを使い、誰かがエージェントを立ち上げたまま離席するケース
注意すべきポイント
--dangerously-skip-permissions を使う場合は、必ず以下の点を確認したい。
- 隔離環境での利用が前提:Dockerコンテナや使い捨てのCI環境など、本番データに直接触れない環境に限定すること
- ログの確認:自動承認されたすべての操作はログに残るはずだが(※公式ドキュメントでの確認を推奨)、定期的にレビューする運用を組み込む
- プロンプトインジェクション(質問への不正な割り込み)リスク:外部から取得したコードやテキストを処理させる場合、悪意ある指示が混入している可能性がある。承認をスキップしている環境では特に危険度が上がる
推奨する運用パターン
通常の長時間タスクには tmux + SSH 再接続を使い、完全自動化が必要な場合のみ --dangerously-skip-permissions を限定的に使うのが現実的な折り合いどころだと思われる。
試し方(コマンド・手順)
ステップ1:リモートサーバーに tmux と Claude Code をセットアップ
# Ubuntu/Debian系の場合
sudo apt-get install tmux
# Claude Code のインストール(npm が必要)
npm install -g @anthropic-ai/claude-code
ステップ2:tmux セッションを起動して Claude Code を実行
# リモートサーバーにSSH接続後
tmux new-session -s myproject
# Claude Code を起動(プロジェクトフォルダで)
cd /path/to/project
claude
ステップ3:ローカルPCから再接続して承認
# ローカルPCのターミナルから
ssh user@your-remote-server
# 既存セッションにアタッチ
tmux attach-session -t myproject
# 承認ダイアログが表示されていれば、キーボードで選択する
ステップ4:セッションからデタッチして作業を継続させる
承認後、ローカルを閉じてもエージェントの処理を続けさせたい場合は tmux のデタッチ操作を使う。
Ctrl + b, d # tmux のデタッチ(セッションは継続)