From 12e61d5b18645c7252a2f206b409ef5913a21d9d Mon Sep 17 00:00:00 2001 From: christinatong01 Date: Mon, 23 Mar 2026 17:28:19 -0700 Subject: [PATCH] fix: add view image to plan mode allow list --- src/permissions/mode.ts | 3 +++ src/tests/permissions-mode.test.ts | 20 ++++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/src/permissions/mode.ts b/src/permissions/mode.ts index 2e9e5aa..7093b45 100644 --- a/src/permissions/mode.ts +++ b/src/permissions/mode.ts @@ -300,6 +300,9 @@ class PermissionModeManager { "Grep", "NotebookRead", "TodoWrite", + // Media tools (read-only) + "ViewImage", + "view_image", // Plan mode tools (must allow exit!) "ExitPlanMode", "exit_plan_mode", diff --git a/src/tests/permissions-mode.test.ts b/src/tests/permissions-mode.test.ts index b31dbc0..3aad164 100644 --- a/src/tests/permissions-mode.test.ts +++ b/src/tests/permissions-mode.test.ts @@ -233,6 +233,26 @@ test("plan mode - allows Read", () => { expect(result.matchedRule).toBe("plan mode"); }); +test("plan mode - allows ViewImage", () => { + permissionMode.setMode("plan"); + + const permissions: PermissionRules = { + allow: [], + deny: [], + ask: [], + }; + + const result = checkPermission( + "ViewImage", + { path: "/Users/test/image.png" }, + permissions, + "/Users/test/project", + ); + + expect(result.decision).toBe("allow"); + expect(result.matchedRule).toBe("plan mode"); +}); + test("plan mode - allows TaskOutput", () => { permissionMode.setMode("plan");