Permission for this action was denied by the Claude Code aut と出るときに見分けたいことこの症状は、少なくとも報告上は 2 つの別パターンがあります。ひとつは、auto mode の判定が本来通してよいツール呼び出しを止めるケース。もうひとつは、コンパクション後の文脈を「まだ有効なユーザー指示」とみなしてしまい、その後の呼び出しを拒むケースです。いずれも、ユーザー操作そのものが禁止されているというより、Claude Code 側の自動判定が原因になっています。
まず切り分けの軸は、拒否が「どの場面で」出たかです。長いセッションの途中で自動コンパクションが入った直後なら #77158 の報告に近いです。ここでは、auto-mode の safety classifier がコンパクション時の割り込み文を恒久的な指示として扱い、次の正当な tool call を拒否したとされています。報告本文では、--permission-mode auto の環境、claude-opus-4-8 と claude-fable-5 の両方で再現したと書かれています。
一方で、マルチエージェントのオーケストレーション中に、別の主体が行うべきカウンターサインやレビュー書き込みが拒否されるなら #82170 の系統です。こちらは、Postgres 側で「distinct actor と distinct (session, agent) stamp pair」が必要になるように作られていて、SECURITY DEFINER triggers で独立性を強制している、と報告されています。それでも auto-mode classifier が自己承認のように誤読して止めた、という筋立てです。
今回、筆者の側で確認できたのは設定ファイルの有無だけです。値までは見ていません。少なくとも次の場所には settings.json / settings.local.json がありませんでした。
[settings_structure]
~/.claude/settings.json: (存在しない)
/mnt/vda5/git/papoo/newsbot_openai/.claude/settings.json: (存在しない)
/mnt/vda5/git/papoo/newsbot_openai/.claude/settings.local.json: (存在しない)
なので、少なくともこの検証では「特定の settings ファイルに書かれた値が原因だった」とは言えません。現時点で言えるのは、報告されている拒否は auto permission mode の判定と結びついており、設定ファイルの存在確認だけでは説明できない、というところまでです。
見分けるときは、拒否の直前に何が起きていたかをそのまま見るのが近道です。自動コンパクション直後なら #77158 を疑う余地がありますし、別アクターのレビューやカウンターサインが kernel 側のルールで求められているのに止まるなら #82170 と一致します。どちらも、少なくとも提示された issue の範囲では未解決です。
OS : Linux 3.10.0-1160.76.1.el7.x86_64 (x86_64)
Python : 3.8.13
検証日時 : 2026-08-24T08:50:24+09:00