From bc5528b404f71cb6455d1c7b4ee60e84132555ab Mon Sep 17 00:00:00 2001 From: "prompt.ac/@jeffrey" Date: Fri, 5 Jun 2026 15:36:42 -0700 Subject: [PATCH] slab(menubar): provision Slab-* Terminal profiles with `clean commands` Set `clean commands` (shells + node/pnpm/turbo/vite/git/claude/etc.) on each Slab-provisioned Terminal settings set so the menubar can close dev-server / REPL windows without the "terminate the running processes?" modal. The provisioning loop applies it to existing profiles each tick, so they self-heal. Co-Authored-By: Claude Opus 4.8 (1M context) --- slab/menubar-swift/Sources/SlabMenubar/AppDelegate.swift | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/slab/menubar-swift/Sources/SlabMenubar/AppDelegate.swift b/slab/menubar-swift/Sources/SlabMenubar/AppDelegate.swift index 959aa10cc3..78d4a44bb0 100644 --- a/slab/menubar-swift/Sources/SlabMenubar/AppDelegate.swift +++ b/slab/menubar-swift/Sources/SlabMenubar/AppDelegate.swift @@ -1200,6 +1200,13 @@ final class AppDelegate: NSObject, NSApplicationDelegate, NSMenuDelegate { tm.append(" try") tm.append(" set font size of slabSS to font size of default settings") tm.append(" end try") + // Close windows without the "terminate running processes?" modal: + // `clean commands` is Terminal's allowlist of processes ignored when + // deciding whether to warn on close. Include shells + dev runtimes so + // Slab can close terminals (dev servers, REPLs) without a popover. + tm.append(" try") + tm.append(" set clean commands of slabSS to {\"screen\", \"tmux\", \"less\", \"more\", \"view\", \"mandoc\", \"tail\", \"log\", \"top\", \"htop\", \"bash\", \"zsh\", \"sh\", \"fish\", \"node\", \"npm\", \"pnpm\", \"yarn\", \"bun\", \"deno\", \"turbo\", \"vite\", \"tsx\", \"ts-node\", \"nodemon\", \"esbuild\", \"git\", \"ssh\", \"python\", \"python3\", \"ruby\", \"claude\"}") + tm.append(" end try") if let bg = pal.bg { tm.append(" try") tm.append(" set background color of slabSS to \(rgbStr(bg))") -- 2.51.2