skipAutoPermissionPromptでauto mode案内の初回表示を止める設定
skipAutoPermissionPromptはauto modeの一度きりの案内通知を消す設定です。効く範囲はユーザー設定・管理設定に限られ、組み込みの既定起動による通知には効きません。
skipAutoPermissionPromptは、Claude Codeがautoモードに初めて入ったときに一度だけ出す案内通知を省略する設定キーです。Boolean型で、trueにすると通知を省きます(falseは未設定と同じ扱いです)。ユーザー設定か管理設定にしか書けません。
skipAutoPermissionPromptとは — 何を消して何を消さないか
skipAutoPermissionPromptが消すのは、自分の設定やモードセレクターを使ってautoモードに自分から入ったときに出る、一度きりの案内通知だけです。組み込みの既定値がセッションを最初からautoモードで起動したときの通知には、このキーは効きません。
Claude Codeはこの通知を一度出すと、表示済みだったことを記録します。skipAutoPermissionPromptが意味を持つのは、まだその通知が出ていない環境に限られます。
{
"skipAutoPermissionPrompt": true
}falseに設定するのは未設定と同じ扱いです。他のどの設定ファイルもtrueにしていなければ、通知は一度出ます。
autoモードの起動経路によって通知の種類が決まる
ターミナルで新しいセッションを始めるとき、開始モードは次の順で最初に当てはまったものが採用されます。
開始モードが決まる順序
- 1
フラグで指定する
--permission-modeフラグ、または--dangerously-skip-permissionsです。「自分で入る」例として挙げられているのは、設定とモードセレクターです。 - 2
設定ファイルの defaultMode
permissions.defaultModeです。~/.claude/settings.jsonのautoは有効ですが、.claude/settings.jsonと.claude/settings.local.jsonに書いたautoは効きません。その場合は次の組み込みの既定値に進みます。 - 3
組み込みの既定値
フラグも設定も無いときの最終手段です。ここが
autoを選んだセッションだけ、別の「組み込みの既定起動」の通知が出ます。
どの経路で入ったかによって、出る通知が分かれます。
auto modeの案内通知は2種類ある
自分で入った
~/.claude/settings.jsonのdefaultModeでautoを指定した場合や、モードセレクターで切り替えた場合に一度だけ出ます。
組み込みの既定起動
設定もフラグも無く、組み込みの既定値がautoでセッションを始めたときに出ます。権限モードのドキュメントへのリンクが付きます。
フラグ・設定ファイル・組み込みの既定値のいずれがautoを選んでも、そのセッションでauto mode自体を使えなければ、Claude CodeはManualモードで起動します。autoで始まらないので、autoに入ったときの通知は出ません。defaultMode: "auto"を書いたのに通知を一度も見ていないときは、まず書いた場所を疑います。.claude/settings.jsonに書いていれば無効です。
フラグに渡せる値をv2.1.289のhelpで見る
1番目の経路に使う--permission-modeが受け付ける値は、claude --helpにそのまま出ています。
claude --version
claude --help | grep -A3 -e "--permission-mode"v2.1.289での出力です。
2.1.289 (Claude Code)
--permission-mode <mode> Permission mode to use for the session
(choices: "acceptEdits", "auto",
"bypassPermissions", "manual",
"dontAsk", "plan")選択肢は6つです。defaultではなくmanualと表示される点は、設定ファイルの値(default)と表記が違うところです。claude auto-modeというサブコマンドもあり、configで分類器の実効設定を、resetでユーザー設定のautoModeを既定に戻せます。ただし通知の出方を変えるものではありません。
v2.1.283以降で「組み込みの既定起動」に出会う人が増えた
組み込みの既定値がauto modeを選ぶ範囲
v2.1.283より前
組み込みの既定値がautoを選ぶのはPro・Max・Teamプランの、フィーチャーフラグを取得するセッションだけでした。それ以外はManualモードから始まっていました。
v2.1.283以降
インタラクティブなターミナルセッションとVS Code拡張で、組み込みの既定値がautoになります。
これまでauto modeの通知を見たことがなかった開発者が、バージョンアップだけで初めて「組み込みの既定起動」の通知に出会う場面が増えました。この通知は管理設定のskipAutoPermissionPromptでも消せません。~/.claude/settings.jsonでpermissions.defaultModeにautoを明示すれば「自分で入った」側の通知に切り替わり、skipAutoPermissionPromptで省けるようになります。
claude -pとAgent SDKは扱いが別です。フィーチャーフラグを取得するセッションではdefaultから始まります。取得しないセッション(サードパーティープロバイダーやテレメトリー無効など)では、v2.1.285以降がauto、それより前はdefaultです。組織のポリシーがautoの既定値を与えない場合も、defaultから始まります。
組み込みの既定起動の通知は、面によって出方が違います。ターミナルではセッション冒頭に一度だけ出ます。VS Code拡張では新規会話画面のカードとして出て、閉じるまで残ります。
やり方 — どこに書けば効くか
設定できる場所はユーザー設定または管理設定に限られます。プロジェクトの.claude/settings.jsonやチーム共有の設定ファイルには書けません。リポジトリ側から全員の通知を一律で消すことはできず、各自の~/.claude/settings.jsonに書くか、組織の管理設定に置きます。
設定ファイルの効く範囲は、Claude Code全体で4段階に分かれています。
| ファイル | 効く範囲 | このキーを書けるか |
|---|---|---|
~/.claude/settings.json(User) | 効く範囲自分が動かすすべてのプロジェクト | このキーを書けるか書ける |
.claude/settings.json(Shared project) | 効く範囲そのフォルダで作業する全員 | このキーを書けるか書いても無視される |
.claude/settings.local.json(Project local) | 効く範囲自分・このプロジェクトだけ | このキーを書けるか書いても無視される |
managed-settings.jsonなど(Managed) | 効く範囲組織が配布した全端末・全プロジェクト | このキーを書けるか書ける |
プロジェクト単位で「このリポジトリを開いたときだけ通知を消す」使い方はできない設計です。
管理設定に置けば、auto modeの案内をすでに周知済みの開発者に対して通知を出さずに済みます。個人の~/.claude/settings.jsonに書けば、複数の端末やクラウドセッションを行き来する開発者が、端末ごとに同じ通知を見る手間を省けます。管理設定はmanaged-settings.jsonのほか、MDMポリシーやclaude.aiコンソールのserver-managed設定でも配布できます。--settingsで渡すユーザー側の値より優先順位は高くなります。
skipDangerousModePermissionPromptとの違い
名前も見た目も似た設定にskipDangerousModePermissionPromptがあります。対象はまったく別です。
| 設定キー | 対象 | Scope | 設定できる値 |
|---|---|---|---|
skipAutoPermissionPrompt | 対象自分でauto modeに入ったときの案内通知(1回のみ) | ScopeUser or managed | 設定できる値true / 未設定 |
skipDangerousModePermissionPrompt | 対象bypassPermissionsモードに入る前の確認ダイアログ | ScopeUser, local, or managed | 設定できる値true / 未設定 |
disableAutoMode | 対象autoモードという選択肢自体の有無 | ScopeAny file | 設定できる値文字列"disable" |
skipDangerousModePermissionPromptは、--dangerously-skip-permissionsまたはdefaultMode: "bypassPermissions"でbypassPermissionsモードに入る直前の確認ダイアログを省略します。Claude Codeはユーザーがこのダイアログを一度承認すると、ユーザー設定にこの値をtrueで自動的に書き込みます。auto modeの案内通知とは、発生タイミングも対象モードも別物です。名前の類似だけで混同すると、意図と逆の設定を消してしまいます。
disableAutoModeは通知ではなく、autoモードをShift+Tabの巡回サイクルから取り除く別レイヤーの設定です。autoモードを使わせたくない組織はdisableAutoModeを、使わせるが通知だけ省きたい組織はskipAutoPermissionPromptを選びます。Claude CodeのdisableAutoMode設定では、このdisableAutoMode単体の挙動と落とし穴をまとめています。
状況別にどれを使うかは次のとおりです。
| やりたいこと | 使う設定 |
|---|---|
| 通知の内容を全員に一度は見せたい | 使う設定何も設定しない(既定のまま) |
| 社内研修などで周知済みなので案内を省きたい | 使う設定skipAutoPermissionPromptを管理設定またはユーザー設定にtrue |
autoモード自体を組織から使わせたくない | 使う設定disableAutoModeを管理設定に"disable" |
bypassPermissionsモードの確認だけ省きたい | 使う設定skipDangerousModePermissionPromptをユーザー・ローカル・管理設定にtrue |
設定が読み込まれているか確認する
skipAutoPermissionPromptを書いたのに通知が出続ける場合、まず設定ファイルが読み込まれているかを見ます。Claude Code内で/statusを実行すると、Setting sources行にそのセッションが読み込んだ設定ファイルが一覧されます。
/status管理設定が効いている場合は、どの経路(managed-settings.jsonファイル・MDMポリシー・server-managed設定など)で届いたかが括弧書きで表示されます。~/.claude/settings.jsonに書いた値が反映されないときは、この行を見て、管理設定側がより強い優先順位で別の値を上書きしていないかを調べます。管理設定は、ファイルベースなら起動時とファイル変更時に更新されます。server-managed設定は起動時と毎時のポーリングで更新されるため、反映までタイムラグが出ることがあります。
組み込みの既定起動で出る通知の条件
ここまでは自分でautoモードに入ったときの通知でした。ここからはskipAutoPermissionPromptでは消せない側、組み込みの既定起動による通知が出る条件です。次の条件がすべてそろったときだけ出ます。
- Claude Code v2.1.228以降(macOS・Linux・WSL)またはv2.1.233以降(ネイティブWindows)を使っている
- そのセッションが組み込みの既定値によって
autoモードで起動している - そのアカウント・端末でこの種類の通知がまだ一度も表示されていない
インストール直後やアップグレード直後の最初のセッションは例外です。フィーチャーフラグが届く前に開始モードが決まることがあり、2回目以降と違うモードで始まる場合があります。次のセッションから通常どおりになります。
Pro・Max・Teamプランと、フィーチャーフラグを取得しないセッションでは、別の確認も出ます。~/.claude/settings.jsonにauto以外のdefaultModeがあり、他のどの設定ファイルもdefaultModeを指定していないときです。Claude CodeはターミナルでもVS Code拡張でも、autoモードに変更するかを一度だけ尋ねます。断れば設定はそのまま残ります。この切り替え確認はskipAutoPermissionPromptとは別物です。bypassPermissionsの確認も別の仕組みです。
auto mode自体が使えるかにも条件があります。プランの制限はありません。モデルはAnthropic APIやClaude Platform on AWSでOpus 4.6以降・Sonnet 4.6以降・Fableモデルに限られます。Amazon Bedrock・Google CloudのAgent Platform・Microsoft Foundry・サインイン済みのClaude apps gatewayでは、Sonnet 5・Opus 4.7以降・Fableモデルだけが対象です。組織が管理設定でpermissions.disableAutoModeを"disable"にしていれば、auto modeの選択肢がなくなります。autoに入ること自体がないため、どちらの通知も出ません。