Files
buzz/desktop
Wintermute 724fed49d9 fix(desktop): seed nest Claude settings with buzz CLI allowlist
Since #4609 the ACP harness rejects every session/request_permission
(fail closed) and desktop managed sessions run in dontAsk mode with no
in-app approval prompt. Claude Code raises a permission request for any
Bash pattern not pre-authorized in its settings, so managed Claude
agents lost all access to the bundled `buzz` CLI — they could not read
channels or send replies (#5262, #5260).

Claude Code evaluates permissions.allow rules before the permission
mode, so a project-level allow rule survives dontAsk. Seed
`<nest>/.claude/settings.json` with `Bash(buzz)` and `Bash(buzz:*)` at
nest creation: managed sessions start with the nest root as cwd and the
ACP adapter passes settingSources ["user", "project", "local"], so the
rules apply to every managed Claude agent without touching the user's
own ~/.claude/settings.json.

The merge is conservative: existing settings are preserved, only
missing rules are appended, unparseable or unexpectedly-shaped files
are left untouched, and the write is atomic (temp file + persist,
matching refresh_skill_md_if_stale). Idempotent across launches.

This deliberately does not reopen the blanket auto-approval that #4609
removed: only the platform's own CLI is pre-authorized, agent-side,
which #4609 explicitly scopes as outside the harness guarantee. The
broader fix (harness permission policy with desktop approval cards) is
in flight as #5106; this unblocks agents until it lands.

Known limitation: allow rules match single commands only — `buzz feed
get` runs, but `buzz ... | head` or `buzz ...; echo $?` still raises a
request and is rejected under dontAsk.

Fixes #5262.

Co-authored-by: Thomas Petersen <thomasp@squareup.com>
Signed-off-by: Thomas Petersen <thomasp@squareup.com>
2026-08-08 01:25:38 +02:00
..
2026-08-03 21:51:17 -04:00
…

Buzz

Desktop chat shell with:

  • Tauri + React + TypeScript + Vite
  • Tailwind CSS
  • shadcn/ui-ready shared components
  • Biome (lint/format/check)
  • Feature-driven frontend structure

Scripts

  • pnpm dev - run the web frontend
  • pnpm tauri dev - run the desktop app
  • pnpm build - typecheck and build frontend
  • pnpm typecheck - TypeScript checks
  • pnpm lint - Biome lint
  • pnpm format - Biome format (write)
  • pnpm check - Biome check

Structure

  • src/shared - reusable app-wide code (ui, lib, styles)
  • src/features - feature modules (vertical slices)
  • src/app - top-level app composition