Add a quick palette command to open the data directory - #4256
Merged
andrewkchan merged 2 commits intoSep 24, 2026
Merged
andrewkchan merged 2 commits into
andrewkchan merged 2 commits into
Conversation
Add a desktop-only "Open data directory" quick palette command that reveals the bb data directory (BB_DATA_DIR, else ~/.bb) in the system file manager. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
andrewkchan
force-pushed
the
bb/add-command-to-open-quick-palette-item-thr_tq7d3t35tg
branch
from
September 24, 2026 05:41
6440010 to
3ead5f9
Compare
This was referenced Sep 24, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Human comments
This adds a new
Open data directorycommand to the quick palette, it will be useful for debugging user issues.What was wrong
The bb data directory (
BB_DATA_DIR, else~/.bb) holds logs, the SQLite databases, plugins, and secrets, but nothing in the app reveals it. Users had to know the path and open it from a terminal or file manager themselves;bb statusprintsData dir: …, but the desktop app offered no way to act on it.What changed
Adds a desktop-only
dataDirectory.openapp command, surfaced in the quick palette as Open data directory under "Window and layout", which reveals the data directory in the system file manager (Finder, Explorer, or the Linux desktop handler).packages/domain/src/app-keybindings.ts— newdataDirectory.openapp command id.apps/server/src/services/system/app-keybindings.ts— unassigneddesktopOnlydefault binding (mainSurface, not while a modal is open), so it is assignable in Settings → Keybindings.apps/app/src/lib/app-command-metadata.ts— palette metadata.packages/desktop-contract/src/info.ts— optionalopenDataDirectory?()onBbDesktopApi, with preload and IPC plumbing inapps/desktop/src/preload.tsandapps/desktop/src/desktop-window-command-ipc.ts.apps/desktop/src/main.ts— main-process handler resolves the data directory the same way the log viewer does and callsshell.openPath, logging a failure instead of rejecting into the renderer.apps/app/src/hooks/useDataDirectoryCommand.ts— registers the handler only when the desktop bridge exposesopenDataDirectory; wired up inAppLayout.docs/configuration.md— keybindings table row.On the web the command is hidden rather than a no-op: availability requires both a registered handler (absent without the desktop bridge) and a client-applicable binding (
desktopOnly). Desktop builds predating the new IPC method also hide it, since the optional contract member is absent there.No
HOST_DAEMON_PROTOCOL_VERSIONbump: this touches only the desktop shell's preload IPC, not the server/daemon wire. No new CLI command —bb statusalready reports the data directory path, and opening an OS file manager is a desktop-shell capability.How you verified
pnpm exec turbo run typecheck --filter=@bb/app --filter=@bb/desktop --filter=@bb/server --filter=@bb/domain --filter=@bb/desktop-contractpasses.apps/desktop/test/preload-browser-api.test.ts; serversrc/services/system.pnpm exec turbo run lint --filter=@bb/app --filter=@bb/desktop— no new findings.🤖 Generated with Claude Code