You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In a GitHub Actions workflow using agent mode (an issues trigger with a static prompt input, no @claude mention), passing --permission-mode bypassPermissions via the claude_args input has no effect. The resulting Claude Code session's system/init event reports "permissionMode": "default", and every Bash tool call not already covered by a matching allow-rule is auto-denied with Error: This command requires approval — with no human available to approve in a headless CI run.
Impact
Any automation workflow that relies on --permission-mode bypassPermissions in claude_args to let the agent run unattended (e.g. gh issue edit/gh issue comment for an issue-triage bot) silently fails: the job still exits with success (the SDK completes its turns and returns subtype: success), but every write action the agent attempted was denied, so nothing actually happens. There's no visible failure signal short of manually enabling show_full_output: true and inspecting the raw tool-result stream.
Evidence
Repo: johanzander/bess-manager (private-ish, but happy to share run links/logs on request).
From 2026-07-11 onward: every triage run shows permission_denials_count: 2-3 and zero labels/comments land on the issue, despite the job reporting success.
We initially suspected a claude-code-action@v1 floating-tag regression, since the compare between the CLI versions bundled around that date (v1.0.169→v1.0.171) shows a Claude Code CLI bump from 2.1.205→2.1.207. However, pinning back to v1.0.169 (CLI 2.1.205) does not fix it — the same run still shows "permissionMode": "default" at session init and denies gh issue view ... with This command requires approval, even though claude_args was --max-turns 12 --permission-mode bypassPermissions --model claude-haiku-4-5 (confirmed reaching the process via CLAUDE_ARGS env var in the action's own debug log).
We also confirmed this isn't about our repo's own .claude/settings.json allow-list: adding explicit Bash(gh issue view:*)-style allow rules (both space-wildcard and colon-wildcard syntax) made no difference — the very first read-only gh issue view call is denied before any repo-side allow-list should even matter, given --permission-mode bypassPermissions should bypass permission checks entirely.
Workflow snippet (agent mode — prompt supplied directly on an issues event):
--permission-mode bypassPermissions passed via claude_args should result in permissionMode: "bypassPermissions" in the session and should not require approval for any tool call, matching documented CLI behavior for that flag.
Actual behavior
Session reports permissionMode: "default" regardless of the requested mode, and every tool call outside a matching allow-rule is denied — with no error surfaced at the job level (subtype: success), making this fail silently.
Environment
anthropics/claude-code-action — reproduced on both floating @v1 (CLI 2.1.209) and pinned @v1.0.169 (CLI 2.1.205)
Mode: agent (auto-detected via a static prompt input on an issues: opened/edited/reopened event)
Summary
In a GitHub Actions workflow using
agentmode (anissuestrigger with a staticpromptinput, no@claudemention), passing--permission-mode bypassPermissionsvia theclaude_argsinput has no effect. The resulting Claude Code session'ssystem/initevent reports"permissionMode": "default", and every Bash tool call not already covered by a matching allow-rule is auto-denied withError: This command requires approval— with no human available to approve in a headless CI run.Impact
Any automation workflow that relies on
--permission-mode bypassPermissionsinclaude_argsto let the agent run unattended (e.g.gh issue edit/gh issue commentfor an issue-triage bot) silently fails: the job still exits withsuccess(the SDK completes its turns and returnssubtype: success), but every write action the agent attempted was denied, so nothing actually happens. There's no visible failure signal short of manually enablingshow_full_output: trueand inspecting the raw tool-result stream.Evidence
Repo:
johanzander/bess-manager(private-ish, but happy to share run links/logs on request).permission_denials_count: 0and correctly-applied issue labels/comments (e.g. run for issue refactor: update branch naming convention for Kubernetes compatibility #249, 2026-07-09).permission_denials_count: 2-3and zero labels/comments land on the issue, despite the job reportingsuccess.claude-code-action@v1floating-tag regression, since the compare between the CLI versions bundled around that date (v1.0.169→v1.0.171) shows a Claude Code CLI bump from 2.1.205→2.1.207. However, pinning back tov1.0.169(CLI 2.1.205) does not fix it — the same run still shows"permissionMode": "default"at session init and deniesgh issue view ...withThis command requires approval, even thoughclaude_argswas--max-turns 12 --permission-mode bypassPermissions --model claude-haiku-4-5(confirmed reaching the process viaCLAUDE_ARGSenv var in the action's own debug log)..claude/settings.jsonallow-list: adding explicitBash(gh issue view:*)-style allow rules (both space-wildcard and colon-wildcard syntax) made no difference — the very first read-onlygh issue viewcall is denied before any repo-side allow-list should even matter, given--permission-mode bypassPermissionsshould bypass permission checks entirely.Workflow snippet (agent mode —
promptsupplied directly on anissuesevent):Representative log excerpt (
show_full_output: true):Expected behavior
--permission-mode bypassPermissionspassed viaclaude_argsshould result inpermissionMode: "bypassPermissions"in the session and should not require approval for any tool call, matching documented CLI behavior for that flag.Actual behavior
Session reports
permissionMode: "default"regardless of the requested mode, and every tool call outside a matching allow-rule is denied — with no error surfaced at the job level (subtype: success), making this fail silently.Environment
anthropics/claude-code-action— reproduced on both floating@v1(CLI 2.1.209) and pinned@v1.0.169(CLI 2.1.205)agent(auto-detected via a staticpromptinput on anissues: opened/edited/reopenedevent)claude_code_oauth_tokenubuntu-latest(GitHub-hosted)