Add Auto permission mode
Build App (Preview) / compute-version (pull_request) Successful in 5s
Secret Scan / scan (push) Successful in 5s
Build App (Preview) / test (pull_request) Successful in 4m38s
Secret Scan / scan (pull_request) Successful in 4s
Build App (Preview) / create-release (pull_request) Successful in 1s
Build App (Preview) / build-macos (pull_request) Successful in 2m47s
Build Container / build-container (pull_request) Successful in 10m19s
Build App (Preview) / build-windows (pull_request) Successful in 5m57s
Build App (Preview) / build-linux (pull_request) Canceled after 14s
Build App (Preview) / prune-previews (pull_request) Canceled after 0s
Build App (Preview) / compute-version (pull_request) Successful in 5s
Secret Scan / scan (push) Successful in 5s
Build App (Preview) / test (pull_request) Successful in 4m38s
Secret Scan / scan (pull_request) Successful in 4s
Build App (Preview) / create-release (pull_request) Successful in 1s
Build App (Preview) / build-macos (pull_request) Successful in 2m47s
Build Container / build-container (pull_request) Successful in 10m19s
Build App (Preview) / build-windows (pull_request) Successful in 5m57s
Build App (Preview) / build-linux (pull_request) Canceled after 14s
Build App (Preview) / prune-previews (pull_request) Canceled after 0s
Claude Code now ships `--permission-mode auto`, where a safety classifier approves routine actions and blocks risky ones without prompting. Expose it as a fifth mode between Accept Edits and Bypass: terminals, resumed sessions, the tab badge, and the scheduler's task runner all map it to the flag. Headless scheduled runs don't stall in Auto (blocked actions are denied, not prompted), so the task editor shows a softer note instead of the stall warning. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -159,12 +159,18 @@ describe("TaskEditorModal", () => {
|
||||
});
|
||||
|
||||
it("warns that a headless run cannot answer a permission prompt", async () => {
|
||||
// Bypass is the only mode where an unattended run is safe from stalling.
|
||||
// Bypass (and Auto, below) are the modes where an unattended run cannot stall.
|
||||
await renderEditor(null, { ...baseProject, permission_mode: "bypass" });
|
||||
expect(screen.getByText(/headless/i)).toBeInTheDocument();
|
||||
expect(screen.queryByText(/cannot answer a permission prompt/i)).toBeNull();
|
||||
});
|
||||
|
||||
it("tells Auto mode that blocked actions are denied, not prompted", async () => {
|
||||
await renderEditor(null, { ...baseProject, permission_mode: "auto" });
|
||||
expect(screen.queryByText(/cannot answer a permission prompt/i)).toBeNull();
|
||||
expect(screen.getByText(/blocks are denied/i)).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it("spells out the stall risk in any non-Bypass mode", async () => {
|
||||
await renderEditor(null, { ...baseProject, permission_mode: "default" });
|
||||
expect(screen.getByText(/cannot answer a permission prompt/i)).toBeInTheDocument();
|
||||
|
||||
Reference in New Issue
Block a user