権限モード・サンドボックス・巻き戻し

《 Claude完全ガイド 目次へ 》

10秒でいうと

どこまで自動で任せるかと、失敗をどう戻すかの話です。
巻き戻しは便利ですが、bashで消したファイルは戻せません。Gitの代わりにはなりません。

第3章のNo.21で「範囲を先に区切る」と書きました。Claude Codeでは、それが具体的な設定になります。

6つの権限モード

公式ドキュメントに載っているものです。Shift+Tab で切り替えられます。

モード 挙動
default(手動) ツールの初回使用ごとに確認する
acceptEdits ファイル編集と mkdir mv などを自動で受け入れる
plan 読むだけ。ソースを書き換えない
auto 自動承認するが、背後で安全性の確認が入る
dontAsk 事前に許可したもの以外は自動で拒否する
bypassPermissions 確認を飛ばす

日常はプランモードと手動の往復で足ります。調べるときと計画するときは plan、実装に入るときに手動へ。これがNo.37の型そのものです。

bypassPermissions については、公式が強い警告を出しています。.git や .claude のような保護されたパスへの書き込みまで確認を飛ばします。コンテナや仮想マシンのような、壊れても困らない環境でのみ使ってください。

dontAsk は逆向きで面白い設定です。許可したものだけが動き、あとは全部拒否される。自動で長く回したいが範囲は絞りたい、というときに向きます。

許可と拒否のルール

モードとは別に、何を許して何を拒むかを書けます。設定ファイルに入れてGitで共有できるので、チーム全員に同じ制約をかけられます。

パスの指定はgitignoreと同じ書き方です。たとえば Read(*.env) を拒否リストに入れると、認証情報の入ったファイルを読ませないようにできます。

ただし公式は制約も明記しています。Read と Edit の拒否ルールは、Claudeのファイルツールと、Claude Codeが認識するbashコマンド(cat head など)にしか効きません。PythonやNodeのスクリプトがファイルを開く場合は素通りします。

OSのレベルで止めたいならサンドボックスを有効にしてください。こちらはすべてのプロセスに効きます。

巻き戻し

失敗したときの戻し方です。プロンプトを送るたびに、その直前の状態が自動で記録されます。

/rewind か、入力欄が空の状態で Esc を2回押すとメニューが開きます。選べるのは4つ。

  • コードと会話を戻す
  • 会話だけ戻す(コードは現在のまま)
  • コードだけ戻す(会話は残す)
  • ここから要約する(文脈を空ける)

最後のものが地味に効きます。長いデバッグの途中経過を圧縮して、最初の指示は残すということができます(No.44)。

巻き戻しはGitの代わりにならない

戻せる範囲が違う
図1:戻せる範囲が違う

ここが知らないと事故になるところです。公式が明記している制限を挙げます。

bashコマンドの変更は追跡されません。Claudeが rm file.txt や mv old.txt new.txt を実行した場合、巻き戻しでは戻せません。記録されるのは、Claudeのファイル編集ツールを通した変更だけです。

サブエージェントの編集は、通常は戻りません。背景で動いたサブエージェントの変更は、/rewind の対象外です。Gitで戻すことになります。

外で加えた変更は追跡されません。自分でエディタから直したもの、別のセッションが直したものは対象外です。

シンボリックリンクは戻りません。スキップされて、警告が出ます。

保存期間は既定で30日です。

つまり、巻き戻しはセッション中の素早いやり直しのための道具であって、履歴の保存はGitの仕事です。公式も「バージョン管理の代わりにはならない」と書いています。

作業を始める前にコミットしておく。これがいちばん確実な保険です。

やってみよう:巻き戻しの限界を確かめる(5分)

捨ててよいリポジトリで試してください。

プロンプト
test1.txt というファイルを作って、中に「A」と書いてください。

次に、bash経由で消させます。

bashコマンドで test1.txt を削除してください。

そのあと /rewind を開き、コードを戻してみてください。

期待される結果:ファイルは戻りません。編集ツールで作ったファイルでも、bashで消したものは追跡されていないためです。

うまくいかないとき:戻ったなら、削除がbashではなくファイルツール経由だった可能性があります。それも収穫で、どちらの経路を通ったかで結果が変わると分かります。

つまずきポイント

巻き戻せるから安心だと思う。戻せない経路があります。Gitでコミットしてから始めてください。

面倒なので bypassPermissions にする。公式が警告している設定です。面倒さの解決は、範囲を絞ることのほうです(No.21)。

プランモードを使わない。いちばんもったいない。読むだけの状態で調べさせるのは、安全で速い。

まとめ

  • 日常はプランモードと手動の往復で足りる
  • 拒否ルールは便利だが、スクリプト経由の読み書きには効かない。OSレベルで止めるならサンドボックス
  • bashで消したファイル、サブエージェントの編集は巻き戻せない
  • 作業前にコミット。巻き戻しはGitの代わりにならない

次に読む

スキルを作る

→ ガイドの目次に戻る

※本記事の情報は 2026年8月時点のものです。

タイトルとURLをコピーしました