From d81c9a7d65fb9ac3f2278d3f7eaa79077aabf2da Mon Sep 17 00:00:00 2001 From: iris <2+iris@noreply.localhost> Date: Sat, 29 Aug 2026 05:57:59 -0400 Subject: [PATCH] Default a new session to bypassPermissions Auto already allows most of what a session does, so the prompts it did raise were mostly the interruption without the choice -- and on a phone each one is a round trip to a question card. Measured rather than assumed: a haiku session spawned this way ran a bare `echo` and a `sleep` loop with no prompt at all. The stricter modes stay one tap away in the same picker, which is where a session that warrants one picks it. Co-Authored-By: Claude Opus 5 --- .../src/main/kotlin/com/example/aiapp/SpawnScreen.kt | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/app/androidApp/src/main/kotlin/com/example/aiapp/SpawnScreen.kt b/app/androidApp/src/main/kotlin/com/example/aiapp/SpawnScreen.kt index f64f4e6..41016a0 100644 --- a/app/androidApp/src/main/kotlin/com/example/aiapp/SpawnScreen.kt +++ b/app/androidApp/src/main/kotlin/com/example/aiapp/SpawnScreen.kt @@ -67,11 +67,13 @@ fun SpawnScreen( var title by remember { mutableStateOf("") } var model by remember { mutableStateOf("") } var cwd by remember { mutableStateOf("") } - // "auto" rather than "manual": on a phone every ask is a round trip to - // a question card, and answering "allow Bash?" dozens of times per task - // is what this app exists to avoid. Manual stays one tap away for a - // session that warrants it. - var permissionMode by remember { mutableStateOf("auto") } + // "bypassPermissions" rather than "auto": on a phone every ask is a + // round trip to a question card, and answering "allow Bash?" dozens of + // times per task is what this app exists to avoid. Auto already allows + // most of what a session does, so what the prompts left were mostly the + // interruption without the choice. The stricter modes stay one tap away + // for a session that warrants one. + var permissionMode by remember { mutableStateOf("bypassPermissions") } var busy by remember { mutableStateOf(false) } // Only the spawn's own failure. The fetch's lives in `options`: this // one leaves a filled-in form worth keeping, and that one leaves