@halcyonlabs/app 0.47.0-halcyon.21 → 0.47.0-halcyon.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/dist/assets/{AddMachineDialog-4BQFC118.js → AddMachineDialog-BlVfh9PM.js} +1 -1
- package/app/dist/assets/AddMachineDialog-BlVfh9PM.js.br +0 -0
- package/app/dist/assets/AddMachineDialog-BlVfh9PM.js.gz +0 -0
- package/app/dist/assets/{AppCommandShortcutHint-BlXOfa_n.js → AppCommandShortcutHint-C1mIupNX.js} +1 -1
- package/app/dist/assets/{AppFileExternalNavigationDispatcher-fGD_vTns.js → AppFileExternalNavigationDispatcher-zdrgMBvF.js} +1 -1
- package/app/dist/assets/AppFileExternalNavigationDispatcher-zdrgMBvF.js.br +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-zdrgMBvF.js.gz +0 -0
- package/app/dist/assets/{AppToasterView-DzbjTKdn.js → AppToasterView-C6IQDk4H.js} +1 -1
- package/app/dist/assets/{BbDiff-BkqgAZD9.js → BbDiff-CORXfK92.js} +1 -1
- package/app/dist/assets/BbDiff-CORXfK92.js.br +0 -0
- package/app/dist/assets/BbDiff-CORXfK92.js.gz +0 -0
- package/app/dist/assets/{BbDiffSplit-DTvWaW-n.js → BbDiffSplit-By8A1QN-.js} +2 -2
- package/app/dist/assets/BbDiffSplit-By8A1QN-.js.br +0 -0
- package/app/dist/assets/BbDiffSplit-By8A1QN-.js.gz +0 -0
- package/app/dist/assets/{BbSourceCode-Dqw4VrLu.js → BbSourceCode-C3we2GZp.js} +1 -1
- package/app/dist/assets/BbSourceCode-C3we2GZp.js.br +0 -0
- package/app/dist/assets/BbSourceCode-C3we2GZp.js.gz +0 -0
- package/app/dist/assets/{BrowserTabDeck-CuHEyZd6.js → BrowserTabDeck-BtVycavD.js} +1 -1
- package/app/dist/assets/BrowserTabDeck-BtVycavD.js.br +0 -0
- package/app/dist/assets/BrowserTabDeck-BtVycavD.js.gz +0 -0
- package/app/dist/assets/{CommandPaletteBody-DynxiDg6.js → CommandPaletteBody-JfQwJqGn.js} +1 -1
- package/app/dist/assets/CommandPaletteBody-JfQwJqGn.js.br +0 -0
- package/app/dist/assets/CommandPaletteBody-JfQwJqGn.js.gz +0 -0
- package/app/dist/assets/{DiffHost-3UTZIJNs.js → DiffHost-DEYVmsVa.js} +1 -1
- package/app/dist/assets/DiffHost-DEYVmsVa.js.br +0 -0
- package/app/dist/assets/DiffHost-DEYVmsVa.js.gz +0 -0
- package/app/dist/assets/{ExperimentalFileLinkMenu-C0RXVabs.js → ExperimentalFileLinkMenu-B-B8GXE8.js} +1 -1
- package/app/dist/assets/ExperimentalFileLinkMenu-B-B8GXE8.js.br +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-B-B8GXE8.js.gz +0 -0
- package/app/dist/assets/{FilePreview-BxgJ2jjI.js → FilePreview-BHoPmg-c.js} +1 -1
- package/app/dist/assets/FilePreview-BHoPmg-c.js.br +0 -0
- package/app/dist/assets/FilePreview-BHoPmg-c.js.gz +0 -0
- package/app/dist/assets/{GitDiffCardHeader-Ce736y-m.js → GitDiffCardHeader-6LP_7oWh.js} +1 -1
- package/app/dist/assets/GitDiffCardHeader-6LP_7oWh.js.br +0 -0
- package/app/dist/assets/GitDiffCardHeader-6LP_7oWh.js.gz +0 -0
- package/app/dist/assets/{InlineMessageEditorFrame-Dud8h1It.js → InlineMessageEditorFrame-DyVCSKBJ.js} +1 -1
- package/app/dist/assets/InlineMessageEditorFrame-DyVCSKBJ.js.br +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-DyVCSKBJ.js.gz +0 -0
- package/app/dist/assets/{MachineRenameDialog-C_ZV5gEB.js → MachineRenameDialog-HGiXO0UG.js} +1 -1
- package/app/dist/assets/MachineRenameDialog-HGiXO0UG.js.br +0 -0
- package/app/dist/assets/MachineRenameDialog-HGiXO0UG.js.gz +0 -0
- package/app/dist/assets/{MachineSettingsView-BWSIpenw.js → MachineSettingsView-C4q9cbRr.js} +1 -1
- package/app/dist/assets/MachineSettingsView-C4q9cbRr.js.br +0 -0
- package/app/dist/assets/MachineSettingsView-C4q9cbRr.js.gz +0 -0
- package/app/dist/assets/{MicrophonePreferences-CNEhQgAS.js → MicrophonePreferences-qaOpiph1.js} +1 -1
- package/app/dist/assets/MicrophonePreferences-qaOpiph1.js.br +0 -0
- package/app/dist/assets/MicrophonePreferences-qaOpiph1.js.gz +0 -0
- package/app/dist/assets/{ModelReasoningMenu-BeNCpeQf.js → ModelReasoningMenu-CVmIvyBC.js} +1 -1
- package/app/dist/assets/ModelReasoningMenu-CVmIvyBC.js.br +0 -0
- package/app/dist/assets/ModelReasoningMenu-CVmIvyBC.js.gz +0 -0
- package/app/dist/assets/{NewTabPage-CsPDV6iC.js → NewTabPage-BD3LFok4.js} +1 -1
- package/app/dist/assets/NewTabPage-BD3LFok4.js.br +0 -0
- package/app/dist/assets/NewTabPage-BD3LFok4.js.gz +0 -0
- package/app/dist/assets/{NewThreadComposer-BY0jUSbs.js → NewThreadComposer-C2ZKRVh2.js} +1 -1
- package/app/dist/assets/NewThreadComposer-C2ZKRVh2.js.br +0 -0
- package/app/dist/assets/NewThreadComposer-C2ZKRVh2.js.gz +0 -0
- package/app/dist/assets/{OnboardingFlow-BQdrTtHC.js → OnboardingFlow-D7-YF2ZM.js} +1 -1
- package/app/dist/assets/OnboardingFlow-D7-YF2ZM.js.br +0 -0
- package/app/dist/assets/OnboardingFlow-D7-YF2ZM.js.gz +0 -0
- package/app/dist/assets/{OptionPicker-sql35hd_.js → OptionPicker-DzY4ri8R.js} +1 -1
- package/app/dist/assets/OptionPicker-DzY4ri8R.js.br +0 -0
- package/app/dist/assets/OptionPicker-DzY4ri8R.js.gz +0 -0
- package/app/dist/assets/{PaletteShell-B9KeWKsT.js → PaletteShell-4enjLs-M.js} +1 -1
- package/app/dist/assets/PaletteShell-4enjLs-M.js.br +0 -0
- package/app/dist/assets/PaletteShell-4enjLs-M.js.gz +0 -0
- package/app/dist/assets/{PaneMaximizeButton-CGBzyikf.js → PaneMaximizeButton-40ZGXf3w.js} +1 -1
- package/app/dist/assets/PaneMaximizeButton-40ZGXf3w.js.br +0 -0
- package/app/dist/assets/PaneMaximizeButton-40ZGXf3w.js.gz +0 -0
- package/app/dist/assets/{PierreLineSelectionActions-BYL6I0xE.js → PierreLineSelectionActions-DrQj-N__.js} +1 -1
- package/app/dist/assets/PierreLineSelectionActions-DrQj-N__.js.br +0 -0
- package/app/dist/assets/PierreLineSelectionActions-DrQj-N__.js.gz +0 -0
- package/app/dist/assets/{PluginPanelRightPanelHost-Dj-wS_Ki.js → PluginPanelRightPanelHost-Ha0PrCa9.js} +1 -1
- package/app/dist/assets/PluginPanelRightPanelHost-Ha0PrCa9.js.br +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Ha0PrCa9.js.gz +0 -0
- package/app/dist/assets/{PluginThreadChat-Dh-No9s-.js → PluginThreadChat-D_tbXHEo.js} +1 -1
- package/app/dist/assets/PluginThreadChat-D_tbXHEo.js.br +0 -0
- package/app/dist/assets/PluginThreadChat-D_tbXHEo.js.gz +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-Ckp-m-c0.js +1 -0
- package/app/dist/assets/ProjectDetailSettingsView-Ckp-m-c0.js.br +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-Ckp-m-c0.js.gz +0 -0
- package/app/dist/assets/{ProjectMachineSetupDialog-BW4gUYj0.js → ProjectMachineSetupDialog-Bn43xkw-.js} +1 -1
- package/app/dist/assets/ProjectMachineSetupDialog-Bn43xkw-.js.br +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-Bn43xkw-.js.gz +0 -0
- package/app/dist/assets/{ProjectsSettingsSection-BI_xhcA2.js → ProjectsSettingsSection-DXHostGl.js} +1 -1
- package/app/dist/assets/ProjectsSettingsSection-DXHostGl.js.br +0 -0
- package/app/dist/assets/ProjectsSettingsSection-DXHostGl.js.gz +0 -0
- package/app/dist/assets/{QueuedMessagesList-BEyivVSE.js → QueuedMessagesList-C53i8_rz.js} +1 -1
- package/app/dist/assets/QueuedMessagesList-C53i8_rz.js.br +0 -0
- package/app/dist/assets/QueuedMessagesList-C53i8_rz.js.gz +0 -0
- package/app/dist/assets/{RemotePathBrowser-DVW5AwBs.js → RemotePathBrowser-CsCxZdUk.js} +1 -1
- package/app/dist/assets/RemotePathBrowser-CsCxZdUk.js.br +0 -0
- package/app/dist/assets/RemotePathBrowser-CsCxZdUk.js.gz +0 -0
- package/app/dist/assets/{RootComposeView-Cbnwq7j_.js → RootComposeView-CsV3Ut7E.js} +1 -1
- package/app/dist/assets/RootComposeView-CsV3Ut7E.js.br +0 -0
- package/app/dist/assets/RootComposeView-CsV3Ut7E.js.gz +0 -0
- package/app/dist/assets/{SecondaryPanelLayout-fG8BuYv-.js → SecondaryPanelLayout-BPTIpQ2F.js} +1 -1
- package/app/dist/assets/SecondaryPanelLayout-BPTIpQ2F.js.br +0 -0
- package/app/dist/assets/SecondaryPanelLayout-BPTIpQ2F.js.gz +0 -0
- package/app/dist/assets/{ServerMoveOverlayView-CPWZimVv.js → ServerMoveOverlayView-DxwZdF-Z.js} +1 -1
- package/app/dist/assets/ServerMoveOverlayView-DxwZdF-Z.js.br +0 -0
- package/app/dist/assets/ServerMoveOverlayView-DxwZdF-Z.js.gz +0 -0
- package/app/dist/assets/{SettingsSidebar-DxfoXXKW.js → SettingsSidebar-CYEXglCo.js} +1 -1
- package/app/dist/assets/SettingsSidebar-CYEXglCo.js.br +0 -0
- package/app/dist/assets/SettingsSidebar-CYEXglCo.js.gz +0 -0
- package/app/dist/assets/{SettingsView-D_DkKpuv.js → SettingsView-B3HpJfUo.js} +1 -1
- package/app/dist/assets/SettingsView-B3HpJfUo.js.br +0 -0
- package/app/dist/assets/SettingsView-B3HpJfUo.js.gz +0 -0
- package/app/dist/assets/{SidebarFooterCustomize-VQoenr5y.js → SidebarFooterCustomize-BGXeu0og.js} +1 -1
- package/app/dist/assets/SidebarFooterCustomize-BGXeu0og.js.br +0 -0
- package/app/dist/assets/SidebarFooterCustomize-BGXeu0og.js.gz +0 -0
- package/app/dist/assets/{SidebarVisibilityCustomize-DUKnlz9Y.js → SidebarVisibilityCustomize-Qy7hHO5j.js} +1 -1
- package/app/dist/assets/SidebarVisibilityCustomize-Qy7hHO5j.js.br +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-Qy7hHO5j.js.gz +0 -0
- package/app/dist/assets/{SourceCodeHost-BlXLvWv2.js → SourceCodeHost-CJpVOgCd.js} +2 -2
- package/app/dist/assets/SourceCodeHost-CJpVOgCd.js.br +0 -0
- package/app/dist/assets/SourceCodeHost-CJpVOgCd.js.gz +0 -0
- package/app/dist/assets/{SplitWorkspaceRoute-6w4G23kc.js → SplitWorkspaceRoute-CWPCkdjo.js} +2 -2
- package/app/dist/assets/SplitWorkspaceRoute-CWPCkdjo.js.br +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-CWPCkdjo.js.gz +0 -0
- package/app/dist/assets/{TerminalOutputBlock-BxBSWJr_.js → TerminalOutputBlock-BzxpJ5H3.js} +1 -1
- package/app/dist/assets/TerminalOutputBlock-BzxpJ5H3.js.br +0 -0
- package/app/dist/assets/TerminalOutputBlock-BzxpJ5H3.js.gz +0 -0
- package/app/dist/assets/{ThreadActionsMenu-ChpSKv80.js → ThreadActionsMenu-DfUIyx3e.js} +1 -1
- package/app/dist/assets/ThreadActionsMenu-DfUIyx3e.js.br +0 -0
- package/app/dist/assets/ThreadActionsMenu-DfUIyx3e.js.gz +0 -0
- package/app/dist/assets/{ThreadDetailView-CfH3uWo-.js → ThreadDetailView-BqzwklQd.js} +3 -3
- package/app/dist/assets/ThreadDetailView-BqzwklQd.js.br +0 -0
- package/app/dist/assets/ThreadDetailView-BqzwklQd.js.gz +0 -0
- package/app/dist/assets/{ThreadSearchPaletteMode-B72v3f5V.js → ThreadSearchPaletteMode-Dni8lJt2.js} +1 -1
- package/app/dist/assets/ThreadSearchPaletteMode-Dni8lJt2.js.br +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-Dni8lJt2.js.gz +0 -0
- package/app/dist/assets/{ThreadSecondaryPanel-4nIZy4h9.js → ThreadSecondaryPanel-Cfah9-yR.js} +1 -1
- package/app/dist/assets/ThreadSecondaryPanel-Cfah9-yR.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-Cfah9-yR.js.gz +0 -0
- package/app/dist/assets/{ThreadSecondaryPanelTabContent-8-e35_Me.js → ThreadSecondaryPanelTabContent-ByMkWr4B.js} +1 -1
- package/app/dist/assets/ThreadSecondaryPanelTabContent-ByMkWr4B.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanelTabContent-ByMkWr4B.js.gz +0 -0
- package/app/dist/assets/{ThreadStatusGlyph-C9tzRtlV.js → ThreadStatusGlyph-MjAgpNtv.js} +1 -1
- package/app/dist/assets/ThreadStatusGlyph-MjAgpNtv.js.br +0 -0
- package/app/dist/assets/ThreadStatusGlyph-MjAgpNtv.js.gz +0 -0
- package/app/dist/assets/{ThreadTerminalPanel-CqTk9L2y.js → ThreadTerminalPanel-2UtGqd1Z.js} +1 -1
- package/app/dist/assets/ThreadTerminalPanel-2UtGqd1Z.js.br +0 -0
- package/app/dist/assets/ThreadTerminalPanel-2UtGqd1Z.js.gz +0 -0
- package/app/dist/assets/{ThreadTerminalView-B6XNBrJ9.js → ThreadTerminalView-BqsCrU1_.js} +1 -1
- package/app/dist/assets/ThreadTerminalView-BqsCrU1_.js.br +0 -0
- package/app/dist/assets/ThreadTerminalView-BqsCrU1_.js.gz +0 -0
- package/app/dist/assets/{ThreadTimelineNavigationContext-DbZHHZfY.js → ThreadTimelineNavigationContext-B_vg4bPl.js} +2 -2
- package/app/dist/assets/ThreadTimelineNavigationContext-B_vg4bPl.js.br +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-B_vg4bPl.js.gz +0 -0
- package/app/dist/assets/{ThreadUnarchiveButton-CtjS9UkR.js → ThreadUnarchiveButton-CnlHu7Dv.js} +1 -1
- package/app/dist/assets/{TimelineDetailScroll-CpFZhWhU.js → TimelineDetailScroll-CIXDGLcx.js} +1 -1
- package/app/dist/assets/TimelineDetailScroll-CIXDGLcx.js.br +0 -0
- package/app/dist/assets/TimelineDetailScroll-CIXDGLcx.js.gz +0 -0
- package/app/dist/assets/{TimelineFileDiffBlock-JiOlR3O8.js → TimelineFileDiffBlock-Cy_6X6XY.js} +1 -1
- package/app/dist/assets/TimelineFileDiffBlock-Cy_6X6XY.js.br +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-Cy_6X6XY.js.gz +0 -0
- package/app/dist/assets/{TimelineSelectionMenu-DT4qwoFI.js → TimelineSelectionMenu-DzrSCC7e.js} +1 -1
- package/app/dist/assets/TimelineSelectionMenu-DzrSCC7e.js.br +0 -0
- package/app/dist/assets/TimelineSelectionMenu-DzrSCC7e.js.gz +0 -0
- package/app/dist/assets/{ToolsView-nAAic88Z.js → ToolsView-B8oDS6Ek.js} +1 -1
- package/app/dist/assets/ToolsView-B8oDS6Ek.js.br +0 -0
- package/app/dist/assets/ToolsView-B8oDS6Ek.js.gz +0 -0
- package/app/dist/assets/{ToolsViewSplits-Blo3GJMQ.js → ToolsViewSplits-JK-JmYIg.js} +2 -2
- package/app/dist/assets/ToolsViewSplits-JK-JmYIg.js.br +0 -0
- package/app/dist/assets/ToolsViewSplits-JK-JmYIg.js.gz +0 -0
- package/app/dist/assets/{WaveformVisualizer-BrH_nwc4.js → WaveformVisualizer-GDJ4mJRx.js} +1 -1
- package/app/dist/assets/WaveformVisualizer-GDJ4mJRx.js.br +0 -0
- package/app/dist/assets/WaveformVisualizer-GDJ4mJRx.js.gz +0 -0
- package/app/dist/assets/{absolute-file-path-W_eh4kPq.js → absolute-file-path-B-cUOroV.js} +1 -1
- package/app/dist/assets/{app-fixed-tab-navigation-DX9s-gCj.js → app-fixed-tab-navigation-BpDuGNDS.js} +1 -1
- package/app/dist/assets/app-fixed-tab-navigation-BpDuGNDS.js.br +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-BpDuGNDS.js.gz +0 -0
- package/app/dist/assets/{audio-input-device-preference-DsU6GGNE.js → audio-input-device-preference-BeKjzmnK.js} +1 -1
- package/app/dist/assets/audio-input-device-preference-BeKjzmnK.js.br +0 -0
- package/app/dist/assets/audio-input-device-preference-BeKjzmnK.js.gz +0 -0
- package/app/dist/assets/{bottom-anchored-scroll-body-C8n22V_o.js → bottom-anchored-scroll-body-DaHi9M7W.js} +1 -1
- package/app/dist/assets/bottom-anchored-scroll-body-DaHi9M7W.js.br +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-DaHi9M7W.js.gz +0 -0
- package/app/dist/assets/{browser-url-B0SjaYti.js → browser-url-BdtGkCbj.js} +1 -1
- package/app/dist/assets/browser-url-BdtGkCbj.js.br +0 -0
- package/app/dist/assets/browser-url-BdtGkCbj.js.gz +0 -0
- package/app/dist/assets/{checkbox-Ct38DhHB.js → checkbox-5zZ_V1_F.js} +1 -1
- package/app/dist/assets/checkbox-5zZ_V1_F.js.br +0 -0
- package/app/dist/assets/checkbox-5zZ_V1_F.js.gz +0 -0
- package/app/dist/assets/{code-loading-skeletons-C_099GEq.js → code-loading-skeletons-DzoCzgll.js} +1 -1
- package/app/dist/assets/code-loading-skeletons-DzoCzgll.js.br +0 -0
- package/app/dist/assets/code-loading-skeletons-DzoCzgll.js.gz +0 -0
- package/app/dist/assets/{code-rendering-OxBy5zPr.js → code-rendering-A15j47Uy.js} +1 -1
- package/app/dist/assets/{code-theme-registration-BokyXo30.js → code-theme-registration-q5iRcekZ.js} +1 -1
- package/app/dist/assets/{detail-card-Cj628JNK.js → detail-card-BvFcq0Ru.js} +1 -1
- package/app/dist/assets/detail-card-BvFcq0Ru.js.br +0 -0
- package/app/dist/assets/detail-card-BvFcq0Ru.js.gz +0 -0
- package/app/dist/assets/{diff-stats-tally-MtORWItG.js → diff-stats-tally-DA41wrwM.js} +1 -1
- package/app/dist/assets/diff-stats-tally-DA41wrwM.js.br +0 -0
- package/app/dist/assets/diff-stats-tally-DA41wrwM.js.gz +0 -0
- package/app/dist/assets/{environment-mutations-rP4eROm2.js → environment-mutations-Bl2PK8kR.js} +1 -1
- package/app/dist/assets/environment-mutations-Bl2PK8kR.js.br +0 -0
- package/app/dist/assets/environment-mutations-Bl2PK8kR.js.gz +0 -0
- package/app/dist/assets/{environment-workspace-display-O1JRHfbV.js → environment-workspace-display-DdMsNL4x.js} +3 -3
- package/app/dist/assets/environment-workspace-display-DdMsNL4x.js.br +0 -0
- package/app/dist/assets/environment-workspace-display-DdMsNL4x.js.gz +0 -0
- package/app/dist/assets/{event-code-block-DqUZCAii.js → event-code-block-DT4pyQ5R.js} +1 -1
- package/app/dist/assets/event-code-block-DT4pyQ5R.js.br +0 -0
- package/app/dist/assets/event-code-block-DT4pyQ5R.js.gz +0 -0
- package/app/dist/assets/{expandable-text-herJC70e.js → expandable-text-CtGFLpBX.js} +1 -1
- package/app/dist/assets/expandable-text-CtGFLpBX.js.br +0 -0
- package/app/dist/assets/expandable-text-CtGFLpBX.js.gz +0 -0
- package/app/dist/assets/{file-opener-preference-BEeek6dm.js → file-opener-preference-B5sOAhVM.js} +1 -1
- package/app/dist/assets/{file-path-link-Cni9Azi2.js → file-path-link-xsn9GiAq.js} +1 -1
- package/app/dist/assets/file-path-link-xsn9GiAq.js.br +0 -0
- package/app/dist/assets/file-path-link-xsn9GiAq.js.gz +0 -0
- package/app/dist/assets/{host-mutations-Ckc-eVys.js → host-mutations-Bf4idS3m.js} +1 -1
- package/app/dist/assets/host-mutations-Bf4idS3m.js.br +0 -0
- package/app/dist/assets/host-mutations-Bf4idS3m.js.gz +0 -0
- package/app/dist/assets/{icon-extended-DDFkslJU.js → icon-extended-C7x9E4W9.js} +1 -1
- package/app/dist/assets/icon-extended-C7x9E4W9.js.br +0 -0
- package/app/dist/assets/icon-extended-C7x9E4W9.js.gz +0 -0
- package/app/dist/assets/{image-lightbox-BW1bqQJM.js → image-lightbox-CzY6y14n.js} +1 -1
- package/app/dist/assets/image-lightbox-CzY6y14n.js.br +0 -0
- package/app/dist/assets/image-lightbox-CzY6y14n.js.gz +0 -0
- package/app/dist/assets/index-B-RDC4LU.js +395 -0
- package/app/dist/assets/index-B-RDC4LU.js.br +0 -0
- package/app/dist/assets/index-B-RDC4LU.js.gz +0 -0
- package/app/dist/assets/{inline-rename-editor-wjwfk7v2.js → inline-rename-editor-DUVacR_R.js} +1 -1
- package/app/dist/assets/inline-rename-editor-DUVacR_R.js.br +0 -0
- package/app/dist/assets/inline-rename-editor-DUVacR_R.js.gz +0 -0
- package/app/dist/assets/{launcherRow-rIW7Z6Xm.js → launcherRow-C9Htfook.js} +1 -1
- package/app/dist/assets/launcherRow-C9Htfook.js.br +0 -0
- package/app/dist/assets/launcherRow-C9Htfook.js.gz +0 -0
- package/app/dist/assets/{localhost-link-rewrite-description-Bovg3W--.js → localhost-link-rewrite-description-DfPXtfPs.js} +1 -1
- package/app/dist/assets/localhost-link-rewrite-description-DfPXtfPs.js.br +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-DfPXtfPs.js.gz +0 -0
- package/app/dist/assets/{machine-provider-queries-CRlWTEz7.js → machine-provider-queries-By9Ipha4.js} +1 -1
- package/app/dist/assets/machine-provider-queries-By9Ipha4.js.br +0 -0
- package/app/dist/assets/machine-provider-queries-By9Ipha4.js.gz +0 -0
- package/app/dist/assets/{machine-server-access-D3hixOIC.js → machine-server-access-6584jQ7-.js} +1 -1
- package/app/dist/assets/{markdown-file-image-routing-DAIVjxLg.js → markdown-file-image-routing-0_tf5d6g.js} +1 -1
- package/app/dist/assets/{markdown-html-B-Kyh3zI.js → markdown-html-JK4Gnuli.js} +1 -1
- package/app/dist/assets/markdown-html-JK4Gnuli.js.br +0 -0
- package/app/dist/assets/markdown-html-JK4Gnuli.js.gz +0 -0
- package/app/dist/assets/{markdown-local-file-link-C89PR8d5.js → markdown-local-file-link-DXjnoCIE.js} +1 -1
- package/app/dist/assets/markdown-local-file-link-DXjnoCIE.js.br +0 -0
- package/app/dist/assets/markdown-local-file-link-DXjnoCIE.js.gz +0 -0
- package/app/dist/assets/{markdown-preview-B7BmqIlu.js → markdown-preview-Bfwf40CC.js} +2 -2
- package/app/dist/assets/markdown-preview-Bfwf40CC.js.br +0 -0
- package/app/dist/assets/markdown-preview-Bfwf40CC.js.gz +0 -0
- package/app/dist/assets/{markdown-prompt-mentions-B0JRhgrI.js → markdown-prompt-mentions-BuHEkhJs.js} +1 -1
- package/app/dist/assets/markdown-prompt-mentions-BuHEkhJs.js.br +0 -0
- package/app/dist/assets/markdown-prompt-mentions-BuHEkhJs.js.gz +0 -0
- package/app/dist/assets/{model-load-error-message-B-HKqgUD.js → model-load-error-message-CnA6byT0.js} +1 -1
- package/app/dist/assets/model-load-error-message-CnA6byT0.js.br +0 -0
- package/app/dist/assets/model-load-error-message-CnA6byT0.js.gz +0 -0
- package/app/dist/assets/onboarding-telemetry-D6SXoh98.js +1 -0
- package/app/dist/assets/{open-in-editor-button-CQGreiCk.js → open-in-editor-button-jScMiuob.js} +1 -1
- package/app/dist/assets/open-in-editor-button-jScMiuob.js.br +0 -0
- package/app/dist/assets/open-in-editor-button-jScMiuob.js.gz +0 -0
- package/app/dist/assets/{page-shell-BHTOdeQn.js → page-shell-ClYdhKtX.js} +1 -1
- package/app/dist/assets/page-shell-ClYdhKtX.js.br +0 -0
- package/app/dist/assets/page-shell-ClYdhKtX.js.gz +0 -0
- package/app/dist/assets/{pierre-worker-pool-Bm9cLA-c.js → pierre-worker-pool-D1nZ9Lcz.js} +1 -1
- package/app/dist/assets/pierre-worker-pool-D1nZ9Lcz.js.br +0 -0
- package/app/dist/assets/pierre-worker-pool-D1nZ9Lcz.js.gz +0 -0
- package/app/dist/assets/{plugin-detail-navigation-CmSGTNyL.js → plugin-detail-navigation-BD4jDXuP.js} +1 -1
- package/app/dist/assets/plugin-detail-navigation-BD4jDXuP.js.br +0 -0
- package/app/dist/assets/plugin-detail-navigation-BD4jDXuP.js.gz +0 -0
- package/app/dist/assets/{plugin-frontend-BdQdYbWd.js → plugin-frontend-qfGFykt-.js} +3 -3
- package/app/dist/assets/plugin-frontend-qfGFykt-.js.br +0 -0
- package/app/dist/assets/plugin-frontend-qfGFykt-.js.gz +0 -0
- package/app/dist/assets/{plugin-ui-DyNDyPD9.js → plugin-ui-DfbeKd73.js} +1 -1
- package/app/dist/assets/plugin-ui-DfbeKd73.js.br +0 -0
- package/app/dist/assets/plugin-ui-DfbeKd73.js.gz +0 -0
- package/app/dist/assets/{project-default-execution-options-query-h6eTG6_Q.js → project-default-execution-options-query-DQKDDkRo.js} +1 -1
- package/app/dist/assets/{queued-editor-typeahead-layout-BKui5z7C.js → queued-editor-typeahead-layout-DKGYsvQ-.js} +1 -1
- package/app/dist/assets/queued-editor-typeahead-layout-DKGYsvQ-.js.br +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-DKGYsvQ-.js.gz +0 -0
- package/app/dist/assets/{queued-messages-layout-BuEilXwP.js → queued-messages-layout-ClZkWHAV.js} +1 -1
- package/app/dist/assets/queued-messages-layout-ClZkWHAV.js.br +0 -0
- package/app/dist/assets/queued-messages-layout-ClZkWHAV.js.gz +0 -0
- package/app/dist/assets/{resource-list-B6MkAu8v.js → resource-list-CC7zN47b.js} +1 -1
- package/app/dist/assets/resource-list-CC7zN47b.js.br +0 -0
- package/app/dist/assets/resource-list-CC7zN47b.js.gz +0 -0
- package/app/dist/assets/root-compose-create-preference-z0-Xe1ss.js +1 -0
- package/app/dist/assets/{save-file-DYAtq7A9.js → save-file-Cs9LWQ4E.js} +1 -1
- package/app/dist/assets/{settings-nav-DbICcozy.js → settings-nav-BKMVpc5b.js} +1 -1
- package/app/dist/assets/settings-nav-BKMVpc5b.js.br +0 -0
- package/app/dist/assets/settings-nav-BKMVpc5b.js.gz +0 -0
- package/app/dist/assets/{settings-sections-Cq0VX9E8.js → settings-sections-LqqPm8q3.js} +1 -1
- package/app/dist/assets/settings-sections-LqqPm8q3.js.br +0 -0
- package/app/dist/assets/settings-sections-LqqPm8q3.js.gz +0 -0
- package/app/dist/assets/{shortcut-pill-DldxrKgx.js → shortcut-pill-DOMeVrnR.js} +1 -1
- package/app/dist/assets/{sidebarTouchSensor-D7jKXrfM.js → sidebarTouchSensor-PP8-SQld.js} +1 -1
- package/app/dist/assets/sidebarTouchSensor-PP8-SQld.js.br +0 -0
- package/app/dist/assets/sidebarTouchSensor-PP8-SQld.js.gz +0 -0
- package/app/dist/assets/{switch-CzvlSesf.js → switch-B9nrFpZc.js} +1 -1
- package/app/dist/assets/switch-B9nrFpZc.js.br +0 -0
- package/app/dist/assets/switch-B9nrFpZc.js.gz +0 -0
- package/app/dist/assets/{textarea-9yaIMD7J.js → textarea-2fJEsqsi.js} +1 -1
- package/app/dist/assets/{thread-event-parser-BqVpKC6z.js → thread-event-parser-DedSEtmp.js} +1 -1
- package/app/dist/assets/thread-event-parser-DedSEtmp.js.br +0 -0
- package/app/dist/assets/thread-event-parser-DedSEtmp.js.gz +0 -0
- package/app/dist/assets/{thread-panel-queries-C3MI4mdc.js → thread-panel-queries-5N40syTx.js} +1 -1
- package/app/dist/assets/thread-panel-queries-5N40syTx.js.br +0 -0
- package/app/dist/assets/thread-panel-queries-5N40syTx.js.gz +0 -0
- package/app/dist/assets/{thread-runtime-mutations-Cr1H7KSz.js → thread-runtime-mutations-BY5xzme0.js} +1 -1
- package/app/dist/assets/thread-runtime-mutations-BY5xzme0.js.br +0 -0
- package/app/dist/assets/thread-runtime-mutations-BY5xzme0.js.gz +0 -0
- package/app/dist/assets/{thread-terminal-queries-B4JkOWS2.js → thread-terminal-queries-BF7AB7qh.js} +1 -1
- package/app/dist/assets/thread-terminal-queries-BF7AB7qh.js.br +0 -0
- package/app/dist/assets/thread-terminal-queries-BF7AB7qh.js.gz +0 -0
- package/app/dist/assets/{threadRecentItems-DI2mgj7S.js → threadRecentItems-CYYbbS1r.js} +1 -1
- package/app/dist/assets/threadRecentItems-CYYbbS1r.js.br +0 -0
- package/app/dist/assets/threadRecentItems-CYYbbS1r.js.gz +0 -0
- package/app/dist/assets/{threadWorkspaceOpenPath-BQgtUYL5.js → threadWorkspaceOpenPath-B5anoH2-.js} +1 -1
- package/app/dist/assets/threadWorkspaceOpenPath-B5anoH2-.js.br +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-B5anoH2-.js.gz +0 -0
- package/app/dist/assets/{title-bar-scroll-fade-CxbgbTcm.js → title-bar-scroll-fade-BfqL4WEJ.js} +1 -1
- package/app/dist/assets/title-bar-scroll-fade-BfqL4WEJ.js.br +0 -0
- package/app/dist/assets/title-bar-scroll-fade-BfqL4WEJ.js.gz +0 -0
- package/app/dist/assets/{truncate-start-CaCnKnh9.js → truncate-start-D-P3rLti.js} +1 -1
- package/app/dist/assets/{use-hover-popover-CyIdak3c.js → use-hover-popover-Bb8PuVyu.js} +1 -1
- package/app/dist/assets/use-hover-popover-Bb8PuVyu.js.br +0 -0
- package/app/dist/assets/use-hover-popover-Bb8PuVyu.js.gz +0 -0
- package/app/dist/assets/{useElementWidth-CL3Nb-eq.js → useElementWidth-vSwGqg9a.js} +1 -1
- package/app/dist/assets/useElementWidth-vSwGqg9a.js.br +0 -0
- package/app/dist/assets/useElementWidth-vSwGqg9a.js.gz +0 -0
- package/app/dist/assets/{useLocalOpenTargets-yzd9-Ceh.js → useLocalOpenTargets-DqjYzi0b.js} +1 -1
- package/app/dist/assets/useLocalOpenTargets-DqjYzi0b.js.br +0 -0
- package/app/dist/assets/useLocalOpenTargets-DqjYzi0b.js.gz +0 -0
- package/app/dist/assets/{usePanelResizeSnap-dys9IwEk.js → usePanelResizeSnap-Dvi7sa3e.js} +1 -1
- package/app/dist/assets/usePanelResizeSnap-Dvi7sa3e.js.br +0 -0
- package/app/dist/assets/usePanelResizeSnap-Dvi7sa3e.js.gz +0 -0
- package/app/dist/assets/{usePanelTerminals-BN8UCJFO.js → usePanelTerminals-B9MNSur4.js} +1 -1
- package/app/dist/assets/usePanelTerminals-B9MNSur4.js.br +0 -0
- package/app/dist/assets/usePanelTerminals-B9MNSur4.js.gz +0 -0
- package/app/dist/assets/{usePathSuggestions-DkeFAE7l.js → usePathSuggestions-zhZ-4fh8.js} +1 -1
- package/app/dist/assets/usePathSuggestions-zhZ-4fh8.js.br +0 -0
- package/app/dist/assets/usePathSuggestions-zhZ-4fh8.js.gz +0 -0
- package/app/dist/assets/{useResolvedLiveFileTarget-43fAKgDx.js → useResolvedLiveFileTarget-CZZwqw4L.js} +1 -1
- package/app/dist/assets/useResolvedLiveFileTarget-CZZwqw4L.js.br +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-CZZwqw4L.js.gz +0 -0
- package/app/dist/assets/{useThreadTerminalController-DcWLbe8W.js → useThreadTerminalController-CvXy-5HP.js} +1 -1
- package/app/dist/assets/useThreadTerminalController-CvXy-5HP.js.br +0 -0
- package/app/dist/assets/useThreadTerminalController-CvXy-5HP.js.gz +0 -0
- package/app/dist/assets/{workspace-change-summary-Bd3p-LXz.js → workspace-change-summary-CY01JLmJ.js} +1 -1
- package/app/dist/assets/workspace-change-summary-CY01JLmJ.js.br +0 -0
- package/app/dist/assets/workspace-change-summary-CY01JLmJ.js.gz +0 -0
- package/app/dist/assets/{workspace-checkout-display-DMp28yCr.js → workspace-checkout-display-C9B0QPLi.js} +4 -4
- package/app/dist/assets/workspace-checkout-display-C9B0QPLi.js.br +0 -0
- package/app/dist/assets/workspace-checkout-display-C9B0QPLi.js.gz +0 -0
- package/app/dist/index.html +17 -17
- package/app/dist/index.html.br +0 -0
- package/app/dist/index.html.gz +0 -0
- package/dist/index.d.ts +35 -6
- package/dist/index.js +9 -5
- package/host-daemon/dist/bb +2 -2
- package/host-daemon/dist/bb-chunks/{browser-DVIVPPSL.js → browser-3RYUCU4H.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-ATDR5E2C.js → chunk-CZ4K4Z4T.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-ZWBRH7R6.js → chunk-DCRUVPRR.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-7EOZF4HA.js → chunk-F7XCHQA3.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-JWA6VJYL.js → chunk-FYCUA6H6.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-5ZMA4MIX.js → chunk-FZ76WJJG.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-UXSJP3YM.js → chunk-GVXLVAX4.js} +1 -1
- package/host-daemon/dist/bb-chunks/chunk-HDUE2YKX.js +2199 -0
- package/host-daemon/dist/bb-chunks/{chunk-REEBSQ75.js → chunk-L5UJ4QUD.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-QE47NRKX.js → chunk-NZY63D4X.js} +1 -1
- package/host-daemon/dist/bb-chunks/{chunk-MLYXPSJC.js → chunk-UCNQXYXP.js} +1 -1
- package/host-daemon/dist/bb-chunks/chunk-WMCZMPZ4.js +2 -0
- package/host-daemon/dist/bb-chunks/{client-YJBBA4JS.js → client-NLWJKXJ2.js} +1 -1
- package/host-daemon/dist/bb-chunks/{commander-errors-P6LP2OHL.js → commander-errors-GDOJDU37.js} +1 -1
- package/host-daemon/dist/bb-chunks/{context-env-LJ5IITUO.js → context-env-VLEFLYWD.js} +1 -1
- package/host-daemon/dist/bb-chunks/{context-hints-MUUUMT2P.js → context-hints-FXEXGMFT.js} +1 -1
- package/host-daemon/dist/bb-chunks/{diagnostics-5EMHJNW7.js → diagnostics-ZKJGPJUH.js} +1 -1
- package/host-daemon/dist/bb-chunks/{environment-ZRSQFVHG.js → environment-CY5JUFSR.js} +1 -1
- package/host-daemon/dist/bb-chunks/{file-AEVJYJAY.js → file-KGZLZ36T.js} +1 -1
- package/host-daemon/dist/bb-chunks/{guide-GLY5UY4M.js → guide-MXAVSGKZ.js} +1 -1
- package/host-daemon/dist/bb-chunks/{machine-Z5QSPWEE.js → machine-Y7XFS7EJ.js} +1 -1
- package/host-daemon/dist/bb-chunks/{marketplace-4CGZ3NTM.js → marketplace-QLPRDZTC.js} +1 -1
- package/host-daemon/dist/bb-chunks/{plugin-VO7RP4JU.js → plugin-K276UYTK.js} +1 -1
- package/host-daemon/dist/bb-chunks/{plugin-cli-proxy-6Y6TTP7A.js → plugin-cli-proxy-QE7C6YLF.js} +1 -1
- package/host-daemon/dist/bb-chunks/project-QD44GO6S.js +2 -0
- package/host-daemon/dist/bb-chunks/{prompt-history-ZNIBNYER.js → prompt-history-YGK557NG.js} +1 -1
- package/host-daemon/dist/bb-chunks/{provider-TJ4DGKBX.js → provider-FAAY2EKV.js} +1 -1
- package/host-daemon/dist/bb-chunks/{server-YMSYCILC.js → server-Y7FRWA4U.js} +1 -1
- package/host-daemon/dist/bb-chunks/{settings-5CKNFTFZ.js → settings-76RZ35GN.js} +1 -1
- package/host-daemon/dist/bb-chunks/{skill-BMQPIFAD.js → skill-HMSLPSPW.js} +1 -1
- package/host-daemon/dist/bb-chunks/{status-2DJ3O6QU.js → status-GJFZ5YDD.js} +1 -1
- package/host-daemon/dist/bb-chunks/{terminal-NWC5PO4A.js → terminal-LSZHPIET.js} +1 -1
- package/host-daemon/dist/bb-chunks/{theme-OEOGYFXJ.js → theme-BMV5THCU.js} +1 -1
- package/host-daemon/dist/bb-chunks/{thread-AI6SXNXK.js → thread-UZ44ZBA2.js} +1 -1
- package/host-daemon/dist/bb-chunks/thread-event-parser-SIFYMDOV.js +2 -0
- package/host-daemon/dist/bb-chunks/{updates-DFLJJDO4.js → updates-IDCLXRIV.js} +1 -1
- package/host-daemon/dist/bb-chunks/{voice-ZSACREC3.js → voice-EXZARJ2J.js} +1 -1
- package/host-daemon/dist/daemon-bundle.mjs +102 -102
- package/package.json +1 -1
- package/server/dist/builtin-plugins/orbit/dist/assets/orbit/revision +1 -1
- package/server/dist/builtin-plugins/orbit/dist/server.js +52 -52
- package/server/dist/drizzle/0147_project_permission_escalation.sql +1 -0
- package/server/dist/drizzle/meta/0147_snapshot.json +5295 -0
- package/server/dist/drizzle/meta/_journal.json +7 -0
- package/server/dist/start-server.js +26 -7
- package/app/dist/assets/AddMachineDialog-4BQFC118.js.br +0 -0
- package/app/dist/assets/AddMachineDialog-4BQFC118.js.gz +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-fGD_vTns.js.br +0 -0
- package/app/dist/assets/AppFileExternalNavigationDispatcher-fGD_vTns.js.gz +0 -0
- package/app/dist/assets/BbDiff-BkqgAZD9.js.br +0 -0
- package/app/dist/assets/BbDiff-BkqgAZD9.js.gz +0 -0
- package/app/dist/assets/BbDiffSplit-DTvWaW-n.js.br +0 -0
- package/app/dist/assets/BbDiffSplit-DTvWaW-n.js.gz +0 -0
- package/app/dist/assets/BbSourceCode-Dqw4VrLu.js.br +0 -0
- package/app/dist/assets/BbSourceCode-Dqw4VrLu.js.gz +0 -0
- package/app/dist/assets/BrowserTabDeck-CuHEyZd6.js.br +0 -0
- package/app/dist/assets/BrowserTabDeck-CuHEyZd6.js.gz +0 -0
- package/app/dist/assets/CommandPaletteBody-DynxiDg6.js.br +0 -0
- package/app/dist/assets/CommandPaletteBody-DynxiDg6.js.gz +0 -0
- package/app/dist/assets/DiffHost-3UTZIJNs.js.br +0 -0
- package/app/dist/assets/DiffHost-3UTZIJNs.js.gz +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-C0RXVabs.js.br +0 -0
- package/app/dist/assets/ExperimentalFileLinkMenu-C0RXVabs.js.gz +0 -0
- package/app/dist/assets/FilePreview-BxgJ2jjI.js.br +0 -0
- package/app/dist/assets/FilePreview-BxgJ2jjI.js.gz +0 -0
- package/app/dist/assets/GitDiffCardHeader-Ce736y-m.js.br +0 -0
- package/app/dist/assets/GitDiffCardHeader-Ce736y-m.js.gz +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-Dud8h1It.js.br +0 -0
- package/app/dist/assets/InlineMessageEditorFrame-Dud8h1It.js.gz +0 -0
- package/app/dist/assets/MachineRenameDialog-C_ZV5gEB.js.br +0 -0
- package/app/dist/assets/MachineRenameDialog-C_ZV5gEB.js.gz +0 -0
- package/app/dist/assets/MachineSettingsView-BWSIpenw.js.br +0 -0
- package/app/dist/assets/MachineSettingsView-BWSIpenw.js.gz +0 -0
- package/app/dist/assets/MicrophonePreferences-CNEhQgAS.js.br +0 -0
- package/app/dist/assets/MicrophonePreferences-CNEhQgAS.js.gz +0 -0
- package/app/dist/assets/ModelReasoningMenu-BeNCpeQf.js.br +0 -0
- package/app/dist/assets/ModelReasoningMenu-BeNCpeQf.js.gz +0 -0
- package/app/dist/assets/NewTabPage-CsPDV6iC.js.br +0 -0
- package/app/dist/assets/NewTabPage-CsPDV6iC.js.gz +0 -0
- package/app/dist/assets/NewThreadComposer-BY0jUSbs.js.br +0 -0
- package/app/dist/assets/NewThreadComposer-BY0jUSbs.js.gz +0 -0
- package/app/dist/assets/OnboardingFlow-BQdrTtHC.js.br +0 -0
- package/app/dist/assets/OnboardingFlow-BQdrTtHC.js.gz +0 -0
- package/app/dist/assets/OptionPicker-sql35hd_.js.br +0 -0
- package/app/dist/assets/OptionPicker-sql35hd_.js.gz +0 -0
- package/app/dist/assets/PaletteShell-B9KeWKsT.js.br +0 -0
- package/app/dist/assets/PaletteShell-B9KeWKsT.js.gz +0 -0
- package/app/dist/assets/PaneMaximizeButton-CGBzyikf.js.br +0 -0
- package/app/dist/assets/PaneMaximizeButton-CGBzyikf.js.gz +0 -0
- package/app/dist/assets/PierreLineSelectionActions-BYL6I0xE.js.br +0 -0
- package/app/dist/assets/PierreLineSelectionActions-BYL6I0xE.js.gz +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Dj-wS_Ki.js.br +0 -0
- package/app/dist/assets/PluginPanelRightPanelHost-Dj-wS_Ki.js.gz +0 -0
- package/app/dist/assets/PluginThreadChat-Dh-No9s-.js.br +0 -0
- package/app/dist/assets/PluginThreadChat-Dh-No9s-.js.gz +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-BOV7URzQ.js +0 -1
- package/app/dist/assets/ProjectDetailSettingsView-BOV7URzQ.js.br +0 -0
- package/app/dist/assets/ProjectDetailSettingsView-BOV7URzQ.js.gz +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-BW4gUYj0.js.br +0 -0
- package/app/dist/assets/ProjectMachineSetupDialog-BW4gUYj0.js.gz +0 -0
- package/app/dist/assets/ProjectsSettingsSection-BI_xhcA2.js.br +0 -0
- package/app/dist/assets/ProjectsSettingsSection-BI_xhcA2.js.gz +0 -0
- package/app/dist/assets/QueuedMessagesList-BEyivVSE.js.br +0 -0
- package/app/dist/assets/QueuedMessagesList-BEyivVSE.js.gz +0 -0
- package/app/dist/assets/RemotePathBrowser-DVW5AwBs.js.br +0 -0
- package/app/dist/assets/RemotePathBrowser-DVW5AwBs.js.gz +0 -0
- package/app/dist/assets/RootComposeView-Cbnwq7j_.js.br +0 -0
- package/app/dist/assets/RootComposeView-Cbnwq7j_.js.gz +0 -0
- package/app/dist/assets/SecondaryPanelLayout-fG8BuYv-.js.br +0 -0
- package/app/dist/assets/SecondaryPanelLayout-fG8BuYv-.js.gz +0 -0
- package/app/dist/assets/ServerMoveOverlayView-CPWZimVv.js.br +0 -0
- package/app/dist/assets/ServerMoveOverlayView-CPWZimVv.js.gz +0 -0
- package/app/dist/assets/SettingsSidebar-DxfoXXKW.js.br +0 -0
- package/app/dist/assets/SettingsSidebar-DxfoXXKW.js.gz +0 -0
- package/app/dist/assets/SettingsView-D_DkKpuv.js.br +0 -0
- package/app/dist/assets/SettingsView-D_DkKpuv.js.gz +0 -0
- package/app/dist/assets/SidebarFooterCustomize-VQoenr5y.js.br +0 -0
- package/app/dist/assets/SidebarFooterCustomize-VQoenr5y.js.gz +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-DUKnlz9Y.js.br +0 -0
- package/app/dist/assets/SidebarVisibilityCustomize-DUKnlz9Y.js.gz +0 -0
- package/app/dist/assets/SourceCodeHost-BlXLvWv2.js.br +0 -0
- package/app/dist/assets/SourceCodeHost-BlXLvWv2.js.gz +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-6w4G23kc.js.br +0 -0
- package/app/dist/assets/SplitWorkspaceRoute-6w4G23kc.js.gz +0 -0
- package/app/dist/assets/TerminalOutputBlock-BxBSWJr_.js.br +0 -0
- package/app/dist/assets/TerminalOutputBlock-BxBSWJr_.js.gz +0 -0
- package/app/dist/assets/ThreadActionsMenu-ChpSKv80.js.br +0 -0
- package/app/dist/assets/ThreadActionsMenu-ChpSKv80.js.gz +0 -0
- package/app/dist/assets/ThreadDetailView-CfH3uWo-.js.br +0 -0
- package/app/dist/assets/ThreadDetailView-CfH3uWo-.js.gz +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-B72v3f5V.js.br +0 -0
- package/app/dist/assets/ThreadSearchPaletteMode-B72v3f5V.js.gz +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-4nIZy4h9.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanel-4nIZy4h9.js.gz +0 -0
- package/app/dist/assets/ThreadSecondaryPanelTabContent-8-e35_Me.js.br +0 -0
- package/app/dist/assets/ThreadSecondaryPanelTabContent-8-e35_Me.js.gz +0 -0
- package/app/dist/assets/ThreadStatusGlyph-C9tzRtlV.js.br +0 -0
- package/app/dist/assets/ThreadStatusGlyph-C9tzRtlV.js.gz +0 -0
- package/app/dist/assets/ThreadTerminalPanel-CqTk9L2y.js.br +0 -0
- package/app/dist/assets/ThreadTerminalPanel-CqTk9L2y.js.gz +0 -0
- package/app/dist/assets/ThreadTerminalView-B6XNBrJ9.js.br +0 -0
- package/app/dist/assets/ThreadTerminalView-B6XNBrJ9.js.gz +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-DbZHHZfY.js.br +0 -0
- package/app/dist/assets/ThreadTimelineNavigationContext-DbZHHZfY.js.gz +0 -0
- package/app/dist/assets/TimelineDetailScroll-CpFZhWhU.js.br +0 -0
- package/app/dist/assets/TimelineDetailScroll-CpFZhWhU.js.gz +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-JiOlR3O8.js.br +0 -0
- package/app/dist/assets/TimelineFileDiffBlock-JiOlR3O8.js.gz +0 -0
- package/app/dist/assets/TimelineSelectionMenu-DT4qwoFI.js.br +0 -0
- package/app/dist/assets/TimelineSelectionMenu-DT4qwoFI.js.gz +0 -0
- package/app/dist/assets/ToolsView-nAAic88Z.js.br +0 -0
- package/app/dist/assets/ToolsView-nAAic88Z.js.gz +0 -0
- package/app/dist/assets/ToolsViewSplits-Blo3GJMQ.js.br +0 -0
- package/app/dist/assets/ToolsViewSplits-Blo3GJMQ.js.gz +0 -0
- package/app/dist/assets/WaveformVisualizer-BrH_nwc4.js.br +0 -0
- package/app/dist/assets/WaveformVisualizer-BrH_nwc4.js.gz +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-DX9s-gCj.js.br +0 -0
- package/app/dist/assets/app-fixed-tab-navigation-DX9s-gCj.js.gz +0 -0
- package/app/dist/assets/audio-input-device-preference-DsU6GGNE.js.br +0 -0
- package/app/dist/assets/audio-input-device-preference-DsU6GGNE.js.gz +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-C8n22V_o.js.br +0 -0
- package/app/dist/assets/bottom-anchored-scroll-body-C8n22V_o.js.gz +0 -0
- package/app/dist/assets/browser-url-B0SjaYti.js.br +0 -0
- package/app/dist/assets/browser-url-B0SjaYti.js.gz +0 -0
- package/app/dist/assets/checkbox-Ct38DhHB.js.br +0 -0
- package/app/dist/assets/checkbox-Ct38DhHB.js.gz +0 -0
- package/app/dist/assets/code-loading-skeletons-C_099GEq.js.br +0 -5
- package/app/dist/assets/code-loading-skeletons-C_099GEq.js.gz +0 -0
- package/app/dist/assets/detail-card-Cj628JNK.js.br +0 -0
- package/app/dist/assets/detail-card-Cj628JNK.js.gz +0 -0
- package/app/dist/assets/diff-stats-tally-MtORWItG.js.br +0 -0
- package/app/dist/assets/diff-stats-tally-MtORWItG.js.gz +0 -0
- package/app/dist/assets/environment-mutations-rP4eROm2.js.br +0 -0
- package/app/dist/assets/environment-mutations-rP4eROm2.js.gz +0 -0
- package/app/dist/assets/environment-workspace-display-O1JRHfbV.js.br +0 -0
- package/app/dist/assets/environment-workspace-display-O1JRHfbV.js.gz +0 -0
- package/app/dist/assets/event-code-block-DqUZCAii.js.br +0 -0
- package/app/dist/assets/event-code-block-DqUZCAii.js.gz +0 -0
- package/app/dist/assets/expandable-text-herJC70e.js.br +0 -0
- package/app/dist/assets/expandable-text-herJC70e.js.gz +0 -0
- package/app/dist/assets/file-path-link-Cni9Azi2.js.br +0 -0
- package/app/dist/assets/file-path-link-Cni9Azi2.js.gz +0 -0
- package/app/dist/assets/host-mutations-Ckc-eVys.js.br +0 -0
- package/app/dist/assets/host-mutations-Ckc-eVys.js.gz +0 -0
- package/app/dist/assets/icon-extended-DDFkslJU.js.br +0 -0
- package/app/dist/assets/icon-extended-DDFkslJU.js.gz +0 -0
- package/app/dist/assets/image-lightbox-BW1bqQJM.js.br +0 -0
- package/app/dist/assets/image-lightbox-BW1bqQJM.js.gz +0 -0
- package/app/dist/assets/index-BBxUiLNy.js +0 -395
- package/app/dist/assets/index-BBxUiLNy.js.br +0 -0
- package/app/dist/assets/index-BBxUiLNy.js.gz +0 -0
- package/app/dist/assets/inline-rename-editor-wjwfk7v2.js.br +0 -0
- package/app/dist/assets/inline-rename-editor-wjwfk7v2.js.gz +0 -0
- package/app/dist/assets/launcherRow-rIW7Z6Xm.js.br +0 -0
- package/app/dist/assets/launcherRow-rIW7Z6Xm.js.gz +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-Bovg3W--.js.br +0 -0
- package/app/dist/assets/localhost-link-rewrite-description-Bovg3W--.js.gz +0 -0
- package/app/dist/assets/machine-provider-queries-CRlWTEz7.js.br +0 -0
- package/app/dist/assets/machine-provider-queries-CRlWTEz7.js.gz +0 -0
- package/app/dist/assets/markdown-html-B-Kyh3zI.js.br +0 -0
- package/app/dist/assets/markdown-html-B-Kyh3zI.js.gz +0 -0
- package/app/dist/assets/markdown-local-file-link-C89PR8d5.js.br +0 -0
- package/app/dist/assets/markdown-local-file-link-C89PR8d5.js.gz +0 -0
- package/app/dist/assets/markdown-preview-B7BmqIlu.js.br +0 -0
- package/app/dist/assets/markdown-preview-B7BmqIlu.js.gz +0 -0
- package/app/dist/assets/markdown-prompt-mentions-B0JRhgrI.js.br +0 -0
- package/app/dist/assets/markdown-prompt-mentions-B0JRhgrI.js.gz +0 -0
- package/app/dist/assets/model-load-error-message-B-HKqgUD.js.br +0 -0
- package/app/dist/assets/model-load-error-message-B-HKqgUD.js.gz +0 -0
- package/app/dist/assets/onboarding-telemetry-C21cbjI_.js +0 -1
- package/app/dist/assets/open-in-editor-button-CQGreiCk.js.br +0 -0
- package/app/dist/assets/open-in-editor-button-CQGreiCk.js.gz +0 -0
- package/app/dist/assets/page-shell-BHTOdeQn.js.br +0 -0
- package/app/dist/assets/page-shell-BHTOdeQn.js.gz +0 -0
- package/app/dist/assets/pierre-worker-pool-Bm9cLA-c.js.br +0 -0
- package/app/dist/assets/pierre-worker-pool-Bm9cLA-c.js.gz +0 -0
- package/app/dist/assets/plugin-detail-navigation-CmSGTNyL.js.br +0 -0
- package/app/dist/assets/plugin-detail-navigation-CmSGTNyL.js.gz +0 -0
- package/app/dist/assets/plugin-frontend-BdQdYbWd.js.br +0 -0
- package/app/dist/assets/plugin-frontend-BdQdYbWd.js.gz +0 -0
- package/app/dist/assets/plugin-ui-DyNDyPD9.js.br +0 -0
- package/app/dist/assets/plugin-ui-DyNDyPD9.js.gz +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-BKui5z7C.js.br +0 -0
- package/app/dist/assets/queued-editor-typeahead-layout-BKui5z7C.js.gz +0 -0
- package/app/dist/assets/queued-messages-layout-BuEilXwP.js.br +0 -0
- package/app/dist/assets/queued-messages-layout-BuEilXwP.js.gz +0 -0
- package/app/dist/assets/resource-list-B6MkAu8v.js.br +0 -0
- package/app/dist/assets/resource-list-B6MkAu8v.js.gz +0 -0
- package/app/dist/assets/root-compose-create-preference-DDv947dq.js +0 -1
- package/app/dist/assets/settings-nav-DbICcozy.js.br +0 -0
- package/app/dist/assets/settings-nav-DbICcozy.js.gz +0 -0
- package/app/dist/assets/settings-sections-Cq0VX9E8.js.br +0 -0
- package/app/dist/assets/settings-sections-Cq0VX9E8.js.gz +0 -0
- package/app/dist/assets/sidebarTouchSensor-D7jKXrfM.js.br +0 -0
- package/app/dist/assets/sidebarTouchSensor-D7jKXrfM.js.gz +0 -0
- package/app/dist/assets/switch-CzvlSesf.js.br +0 -0
- package/app/dist/assets/switch-CzvlSesf.js.gz +0 -0
- package/app/dist/assets/thread-event-parser-BqVpKC6z.js.br +0 -0
- package/app/dist/assets/thread-event-parser-BqVpKC6z.js.gz +0 -0
- package/app/dist/assets/thread-panel-queries-C3MI4mdc.js.br +0 -0
- package/app/dist/assets/thread-panel-queries-C3MI4mdc.js.gz +0 -0
- package/app/dist/assets/thread-runtime-mutations-Cr1H7KSz.js.br +0 -0
- package/app/dist/assets/thread-runtime-mutations-Cr1H7KSz.js.gz +0 -0
- package/app/dist/assets/thread-terminal-queries-B4JkOWS2.js.br +0 -0
- package/app/dist/assets/thread-terminal-queries-B4JkOWS2.js.gz +0 -0
- package/app/dist/assets/threadRecentItems-DI2mgj7S.js.br +0 -0
- package/app/dist/assets/threadRecentItems-DI2mgj7S.js.gz +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-BQgtUYL5.js.br +0 -0
- package/app/dist/assets/threadWorkspaceOpenPath-BQgtUYL5.js.gz +0 -0
- package/app/dist/assets/title-bar-scroll-fade-CxbgbTcm.js.br +0 -0
- package/app/dist/assets/title-bar-scroll-fade-CxbgbTcm.js.gz +0 -0
- package/app/dist/assets/use-hover-popover-CyIdak3c.js.br +0 -0
- package/app/dist/assets/use-hover-popover-CyIdak3c.js.gz +0 -0
- package/app/dist/assets/useElementWidth-CL3Nb-eq.js.br +0 -0
- package/app/dist/assets/useElementWidth-CL3Nb-eq.js.gz +0 -0
- package/app/dist/assets/useLocalOpenTargets-yzd9-Ceh.js.br +0 -0
- package/app/dist/assets/useLocalOpenTargets-yzd9-Ceh.js.gz +0 -0
- package/app/dist/assets/usePanelResizeSnap-dys9IwEk.js.br +0 -0
- package/app/dist/assets/usePanelResizeSnap-dys9IwEk.js.gz +0 -0
- package/app/dist/assets/usePanelTerminals-BN8UCJFO.js.br +0 -0
- package/app/dist/assets/usePanelTerminals-BN8UCJFO.js.gz +0 -0
- package/app/dist/assets/usePathSuggestions-DkeFAE7l.js.br +0 -0
- package/app/dist/assets/usePathSuggestions-DkeFAE7l.js.gz +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-43fAKgDx.js.br +0 -0
- package/app/dist/assets/useResolvedLiveFileTarget-43fAKgDx.js.gz +0 -0
- package/app/dist/assets/useThreadTerminalController-DcWLbe8W.js.br +0 -0
- package/app/dist/assets/useThreadTerminalController-DcWLbe8W.js.gz +0 -0
- package/app/dist/assets/workspace-change-summary-Bd3p-LXz.js.br +0 -0
- package/app/dist/assets/workspace-change-summary-Bd3p-LXz.js.gz +0 -0
- package/app/dist/assets/workspace-checkout-display-DMp28yCr.js.br +0 -0
- package/app/dist/assets/workspace-checkout-display-DMp28yCr.js.gz +0 -0
- package/host-daemon/dist/bb-chunks/chunk-CLMP7PJ2.js +0 -2
- package/host-daemon/dist/bb-chunks/chunk-SDZLOCRA.js +0 -2186
- package/host-daemon/dist/bb-chunks/project-J3U36Y4U.js +0 -2
- package/host-daemon/dist/bb-chunks/thread-event-parser-VC3WTCLZ.js +0 -2
|
@@ -1030,6 +1030,13 @@
|
|
|
1030
1030
|
"when": 1792453324528,
|
|
1031
1031
|
"tag": "0146_diff_viewed_files",
|
|
1032
1032
|
"breakpoints": true
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
"idx": 147,
|
|
1036
|
+
"version": "6",
|
|
1037
|
+
"when": 1792940193464,
|
|
1038
|
+
"tag": "0147_project_permission_escalation",
|
|
1039
|
+
"breakpoints": true
|
|
1033
1040
|
}
|
|
1034
1041
|
]
|
|
1035
1042
|
}
|
|
@@ -20077,6 +20077,7 @@ var init_project = __esm({
|
|
|
20077
20077
|
"../../packages/domain/src/project.ts"() {
|
|
20078
20078
|
"use strict";
|
|
20079
20079
|
init_zod();
|
|
20080
|
+
init_shared_types();
|
|
20080
20081
|
PERSONAL_PROJECT_ID = "proj_personal";
|
|
20081
20082
|
projectKindValues = ["standard", "personal"];
|
|
20082
20083
|
projectKindSchema = external_exports.enum(projectKindValues);
|
|
@@ -20085,6 +20086,7 @@ var init_project = __esm({
|
|
|
20085
20086
|
kind: projectKindSchema,
|
|
20086
20087
|
name: external_exports.string(),
|
|
20087
20088
|
gitRemoteUrl: external_exports.string().nullable(),
|
|
20089
|
+
permissionEscalation: permissionEscalationSchema,
|
|
20088
20090
|
createdAt: external_exports.number(),
|
|
20089
20091
|
updatedAt: external_exports.number()
|
|
20090
20092
|
});
|
|
@@ -22641,9 +22643,10 @@ var init_projects = __esm({
|
|
|
22641
22643
|
}).partial();
|
|
22642
22644
|
promptHistoryResponseSchema = external_exports.array(promptHistoryEntrySchema);
|
|
22643
22645
|
updateProjectRequestSchema = external_exports.object({
|
|
22644
|
-
name: external_exports.string().min(1)
|
|
22646
|
+
name: external_exports.string().min(1),
|
|
22647
|
+
permissionEscalation: permissionEscalationSchema
|
|
22645
22648
|
}).partial().refine(
|
|
22646
|
-
(value) => value.name !== void 0,
|
|
22649
|
+
(value) => value.name !== void 0 || value.permissionEscalation !== void 0,
|
|
22647
22650
|
"At least one field must be provided"
|
|
22648
22651
|
);
|
|
22649
22652
|
updateProjectSourceRequestSchema = external_exports.object({
|
|
@@ -37988,6 +37991,7 @@ var init_schema = __esm({
|
|
|
37988
37991
|
name: text("name").notNull(),
|
|
37989
37992
|
gitRemoteUrl: text("git_remote_url"),
|
|
37990
37993
|
sortKey: text("sort_key").notNull().default("V"),
|
|
37994
|
+
permissionEscalation: text("permission_escalation").$type().notNull().default("ask"),
|
|
37991
37995
|
deletedAt: integer2("deleted_at"),
|
|
37992
37996
|
createdAt: integer2("created_at").notNull(),
|
|
37993
37997
|
updatedAt: integer2("updated_at").notNull()
|
|
@@ -58415,7 +58419,7 @@ var init_templates_generated = __esm({
|
|
|
58415
58419
|
},
|
|
58416
58420
|
{
|
|
58417
58421
|
"id": "bbGuideProjects",
|
|
58418
|
-
"body": "Project commands\n\nA project maps to a code repository. All threads belong to a project.\n\n bb project list List ordinary projects\n --include-personal Also include the personal project\n bb project discover Find recently used git repos\n --machine <id-or-name> Machine to scan (default: local)\n --host <id-or-name> Alias for --machine\n bb project history <id> List prompt history\n bb project reorder <id> Reorder in the sidebar\n --after <id> Previous project, or omit for start\n --before <id> Next project, or omit for end\n bb project create --name \"...\" [options]\n --root <path> Project source path\n --machine <id-or-name> Bind the path to a connected machine\n --host <id-or-name> Alias for --machine\n\n An explicit machine/host selector accepts an exact ID or unambiguous name and\n binds --root to that machine. Omitting the selector preserves the existing\n local CLI machine fallback (normally the server machine).\n\n bb project show <id> Show project details\n Accepts proj_personal to inspect Personal.\n bb project update <id> Update a project\n --name <name> New name\n\n bb project delete <id> Delete project and all threads\n --yes Skip confirmation\n\nGlobal prompt history:\n\n bb prompt-history list [--cursor <cursor>] [--limit <number>]\n\n Lists accepted prompts across projects and threads newest first. Pass the\n returned cursor to continue from the next page.\n\nDiscovery:\n\n bb project branches <id> --host <id> List branches for a machine source\n bb project paths <id> Search workspace paths\n bb project files <id> List workspace files\n bb project content <id> <path> Read file content (binary is base64;\n --json reports contentEncoding)\n bb project commands <id> --provider <id>\n List commands and skills\n --machine <id-or-name> Target project source machine\n --host <id-or-name> Alias for --machine\n --environment <id> Target environment workspace\n\n The machine/host and environment selectors are mutually exclusive. An\n environment selects its owning machine and workspace; otherwise an explicit\n machine selects that machine's project source. Omitting both intentionally\n falls back to the server machine's project source.\n\n Personal file access (`paths`, `files`, `content`) requires an explicit\n --environment <id> belonging to Personal. Personal has no default project\n source; the selected environment must be ready.\n\n Path and file searches honor Git ignore rules, including local and global\n exclusions; tracked and non-ignored untracked files, including hidden files,\n remain searchable. Non-Git workspaces use filesystem listings. Use\n `bb file list|paths` for listings that include ignored files.\n\nAttachments:\n\n bb project attachment upload <id> Upload bytes from the CLI machine\n --client-file <path> Path read on this CLI machine\n --filename <name> Attachment filename override\n --mime-type <type> MIME override (otherwise inferred)\n bb project attachment download <id> <attachment-path>\n --client-file <path> Destination on this CLI machine\n\n Uploads use multipart bytes and return a server-managed attachment DTO. Pass\n its relative `path` to thread --file/--image input. Thread --file and --image\n upload absolute paths and file: URLs from the CLI machine automatically;\n relative values remain existing server attachment paths.\n image/* uploads are limited to 10MB; other files are limited to 25MB.\n image/heic and image/heif uploads are rejected because no renderer or\n provider can decode them; convert them to JPEG or PNG first. There is no\n command to list or remove project attachments.\n\nSources:\n\n Projects can have multiple machine-local path sources.\n\n bb project source add <projectId> Add a source\n --path <path> Local path\n --clone Clone the project's Git remote\n --remote-url <url> Git remote override for --clone\n --target-path <path> Destination override for --clone\n --machine <id-or-name> Target machine (--host is an alias)\n --default Set as default source\n\n Explicit project source selectors must name a connected machine. Omitting\n the selector preserves the same local CLI machine fallback as project create.\n\n bb project source update <projectId> <sourceId>\n --path <path>\n --default\n\n bb project source delete <projectId> <sourceId>\n\n A live project must retain at least one source; a project pending deletion\n may remove its last source.",
|
|
58422
|
+
"body": "Project commands\n\nA project maps to a code repository. All threads belong to a project.\n\n bb project list List ordinary projects\n --include-personal Also include the personal project\n bb project discover Find recently used git repos\n --machine <id-or-name> Machine to scan (default: local)\n --host <id-or-name> Alias for --machine\n bb project history <id> List prompt history\n bb project reorder <id> Reorder in the sidebar\n --after <id> Previous project, or omit for start\n --before <id> Next project, or omit for end\n bb project create --name \"...\" [options]\n --root <path> Project source path\n --machine <id-or-name> Bind the path to a connected machine\n --host <id-or-name> Alias for --machine\n\n An explicit machine/host selector accepts an exact ID or unambiguous name and\n binds --root to that machine. Omitting the selector preserves the existing\n local CLI machine fallback (normally the server machine).\n\n bb project show <id> Show project details\n Accepts proj_personal to inspect Personal.\n bb project update <id> Update a project\n --name <name> New name\n --permission-escalation <ask|deny> Whether the project's turns may ask\n for approval (default ask)\n\n Permission escalation: with ask, a turn a person sends in Accept Edits or\n Auto mode may ask for approval to leave the workspace sandbox, and turns not\n sent by a person (agents, automations, bb's own messages) are refused without\n asking. With deny,\n every turn in the project is refused without asking, whoever sent it: Codex\n runs with approval policy never and Claude Code denies its permission\n requests. Full access has no sandbox to escalate from. Changes apply from the\n next turn. `bb project show` prints it; `sdk.projects.update` sets it.\n\n bb project delete <id> Delete project and all threads\n --yes Skip confirmation\n\nGlobal prompt history:\n\n bb prompt-history list [--cursor <cursor>] [--limit <number>]\n\n Lists accepted prompts across projects and threads newest first. Pass the\n returned cursor to continue from the next page.\n\nDiscovery:\n\n bb project branches <id> --host <id> List branches for a machine source\n bb project paths <id> Search workspace paths\n bb project files <id> List workspace files\n bb project content <id> <path> Read file content (binary is base64;\n --json reports contentEncoding)\n bb project commands <id> --provider <id>\n List commands and skills\n --machine <id-or-name> Target project source machine\n --host <id-or-name> Alias for --machine\n --environment <id> Target environment workspace\n\n The machine/host and environment selectors are mutually exclusive. An\n environment selects its owning machine and workspace; otherwise an explicit\n machine selects that machine's project source. Omitting both intentionally\n falls back to the server machine's project source.\n\n Personal file access (`paths`, `files`, `content`) requires an explicit\n --environment <id> belonging to Personal. Personal has no default project\n source; the selected environment must be ready.\n\n Path and file searches honor Git ignore rules, including local and global\n exclusions; tracked and non-ignored untracked files, including hidden files,\n remain searchable. Non-Git workspaces use filesystem listings. Use\n `bb file list|paths` for listings that include ignored files.\n\nAttachments:\n\n bb project attachment upload <id> Upload bytes from the CLI machine\n --client-file <path> Path read on this CLI machine\n --filename <name> Attachment filename override\n --mime-type <type> MIME override (otherwise inferred)\n bb project attachment download <id> <attachment-path>\n --client-file <path> Destination on this CLI machine\n\n Uploads use multipart bytes and return a server-managed attachment DTO. Pass\n its relative `path` to thread --file/--image input. Thread --file and --image\n upload absolute paths and file: URLs from the CLI machine automatically;\n relative values remain existing server attachment paths.\n image/* uploads are limited to 10MB; other files are limited to 25MB.\n image/heic and image/heif uploads are rejected because no renderer or\n provider can decode them; convert them to JPEG or PNG first. There is no\n command to list or remove project attachments.\n\nSources:\n\n Projects can have multiple machine-local path sources.\n\n bb project source add <projectId> Add a source\n --path <path> Local path\n --clone Clone the project's Git remote\n --remote-url <url> Git remote override for --clone\n --target-path <path> Destination override for --clone\n --machine <id-or-name> Target machine (--host is an alias)\n --default Set as default source\n\n Explicit project source selectors must name a connected machine. Omitting\n the selector preserves the same local CLI machine fallback as project create.\n\n bb project source update <projectId> <sourceId>\n --path <path>\n --default\n\n bb project source delete <projectId> <sourceId>\n\n A live project must retain at least one source; a project pending deletion\n may remove its last source.",
|
|
58419
58423
|
"variables": {}
|
|
58420
58424
|
},
|
|
58421
58425
|
{
|
|
@@ -58445,7 +58449,7 @@ var init_templates_generated = __esm({
|
|
|
58445
58449
|
},
|
|
58446
58450
|
{
|
|
58447
58451
|
"id": "bbGuideThreads",
|
|
58448
|
-
"body": "Thread commands\n\nEvery command supports --json for machine-readable output. Read-only commands\ntake a thread ID or --self where supported; mutating lifecycle and messaging\ncommands require an explicit ID or --self.\n\nThread commands are split across four chapters:\n\n threads Spawning, handing off, forking, and editing sent messages\n thread-inspection Listing, sections, inspecting, waiting, opening in the app,\n and panel tabs\n thread-messaging Messages, plan mode, metadata and ownership, interactions,\n and queued messages\n thread-lifecycle Stop, compact, clear, retry, archive, and delete\n\nSpawning:\n\n bb thread spawn --project <id> --prompt \"...\" [options]\n bb thread spawn --project <id> --prompt-file <path> [options]\n\n --prompt <prompt> Initial prompt (one of --prompt or --prompt-file is required)\n --prompt-file <path> Read the prompt from a file; `-` reads stdin. Use this for\n multi-line or Markdown prompts: inside double quotes the shell\n runs `backticks` and $(...) before bb sees them\n --title <title> Thread title\n --project <id> Project (required; when omitted the error prints this thread's project ID to add)\n --parent-thread <id> Parent thread (may be in another project)\n --parent-self Parent to the current thread (BB_THREAD_ID)\n --lifecycle-owner-thread <id> Archive/delete with this owner\n --provider <id> Provider override\n --model <model> Model override\n --reasoning-level <level> Reasoning level id the model lists: low, medium, high, xhigh, max, or a provider-specific id\n --environment <id-or-path> Attach to an existing environment (ID or workspace path)\n --new-environment <kind> Create a fresh personal workspace or managed worktree\n --base-branch <branch> Exact Git ref for a new managed worktree\n (--new-environment worktree only; an\n --environment-provider takes its branch\n through --environment-inputs)\n --environment-provider <id> Run on an environment provider by id (list them with\n `bb environment providers`). The provider\n provisions where the thread runs; its steps show in the\n thread's workspace-setup block. Its `requires` names the\n facts it consumes: `host` takes --machine (the local\n machine by default); `gitCheckout` needs this project's\n checkout on that machine to be a Git repository with\n commits; `gitRemote` needs a project remote;\n `projectless` serves only threads with no project.\n --environment-inputs <json> JSON value for an --environment-provider that declares\n inputs; `bb environment providers --json` prints each\n provider's inputs as JSON Schema (null when it takes\n none). Omitted, it defaults to {} when the schema\n accepts an empty object and is otherwise required;\n refused when the provider declares no inputs\n --machine <id-or-name> Run on a machine (--host is an alias)\n --service-tier <tier> Service tier id the provider lists for the model, such as\n default or fast (see `bb provider models`)\n --option <option=value> Choose a value for an option the provider's model lists, applied\n before the first message; true or false for an on/off option\n (repeatable; see `bb provider models`)\n --permission-mode <mode> Permission mode: accept-edits, auto, or full\n --plan Send the prompt as the provider's /plan action (plan first, execute after approval)\n --section <id> Create the thread in a section\n --pinned Create the thread in Pinned (combines with --section;\n unpinning reveals it in that section)\n --visibility <visibility> visible or hidden; a child inherits its parent by default\n --parent-notifications <value> auto (default), stuck, or off; which outcomes wake the parent\n --send-at <when> Dispatch the first message at an ISO 8601 timestamp or a duration from now (30s, 10m, 2h, 7d)\n --file <path> CLI-local absolute path, file: URL, or uploaded file path\n --image <path> CLI-local absolute path, file: URL, or uploaded image path\n --origin-kind <kind> Create a fork thread\n --source-thread <id> Source thread for a fork\n --source-seq-end <seq> Fork after the source turn containing this event sequence\n\n Execution defaults resolve from explicit flags, live parent execution, and\n remembered project defaults. With no remembered model, bb uses the explicitly\n requested provider or Codex and resolves its provider-reported default model\n on the target machine (or the first catalog model when none is marked). The product reasoning and permission defaults are\n medium and auto.\n accept-edits uses workspace sandboxing with user-reviewed escalation. auto uses\n the same workspace sandbox with provider-native automatic review. full is the\n explicit sandbox and approval bypass. Plan mode is separate from permissions.\n Subagents inherit the parent's permission mode by default, adapted to the child provider's supported modes. Explicit requests and a thread's recorded mode take precedence; nesting a thread does not cap its permissions. The host permission ceiling still applies.\n Parenting is opt-in. Inside a thread, pass --parent-self to parent the new thread to the current thread.\n Hidden threads are for plugin/background workers. They remain addressable by\n ID while staying out of sidebar organization and unread/pending favicon\n attention. Thread lists exclude them unless\n --include-hidden is passed; direct-ID operations remain available.\n A new child thread inherits the visibility of its parent, so the subagents of\n a hidden thread stay hidden too. Pass --visibility to override the inherited\n value. A hidden child still reports its turns and blockers to its parent\n thread; only source-derived forks stay silent.\n --parent-notifications chooses which child outcomes wake the parent. auto\n reports every finished, failed, or interrupted turn and every blocker. stuck\n skips completed turns and keeps failures, interruptions, and blockers on an\n approval or question; the child sends its results with `bb thread tell`, so\n say so in its prompt. off reports nothing. Under stuck and off, unassigning\n the child does not notify the former parent either. `bb status` and\n `bb thread show` print the value for a child thread.\n A machine selector accepts an exact ID or an unambiguous name. It works with\n an unmanaged --environment path, --new-environment worktree, or the personal\n workspace. It cannot be combined with an existing environment ID because that\n environment already selects its machine. Without the flag, local/server\n machine resolution is unchanged.\n Omit --base-branch for bb's default. Explicit values are exact; use\n origin/<branch> for a remote ref.\n With no environment flag, a new thread gets a fresh worktree of the\n project's default branch (the project checkout when the project has no\n branch) on the primary host, or on the persistent machine that holds the\n project's source when the primary host has none. A child of a live thread\n in the same project gets a worktree on its parent's machine.\n Before selecting a provider, run `bb environment providers --project <id>\n --machine <id-or-name>` to see whether it is available, needs setup, or is\n unavailable and why. The first-party providers are Project checkout,\n Worktree, and Personal workspace.\n\nHandoff:\n The app's Handoff to new thread (in the follow-up model picker) starts a new\n thread that references the source. From the CLI, run bb thread spawn with\n --provider, --model, --environment and --prompt 'Continue from\n @thread:THREAD_ID ...'; SDK callers pass the same fields to threads.spawn.\n\nForking:\n\n bb thread fork <source-thread-id> [options]\n\n --prompt <prompt> Optional first prompt; omit for an idle fork\n --prompt-file <path> Read the first prompt from a file; `-` reads stdin\n --lifecycle-owner-thread <id> Archive/delete with this owner\n --source-seq-end <seq> Fork after the source turn containing this event sequence (tip by default)\n --environment <id-or-path> Existing environment ID or unmanaged workspace path\n --new-environment <kind> Create a fresh personal workspace or managed worktree\n --base-branch <branch> Exact Git ref for a new worktree; omit for the project default\n --title <title> Thread title (idle forks default to \"(1) <source title>\")\n --permission-mode <mode> Inherit source by default; accepts accept-edits, auto, full\n --visibility <visibility> visible (default) or hidden\n --agent-context-seed <text> Persist agent-only context without a first run\n --file <path> CLI-local absolute path, file: URL, or uploaded file path\n --image <path> CLI-local absolute path, file: URL, or uploaded image path\n\n Forks clone the source provider session on the same machine and inherit the\n source conversation in their timeline. --source-seq-end anchors the fork on\n the completed source turn that contains that sequence: the clone and the\n inherited timeline both end with that turn (an anchor on a user message\n branches before it, like editing it). Without it a fork clones the session\n tip and inherits every completed turn. Providers that can only clone a whole\n session accept an anchor only on the source's latest turn. A fork reuses the\n source environment by default. Use --new-environment personal for a fresh\n personal workspace or --new-environment worktree for a fresh worktree on the\n source machine; --environment can select another environment or unmanaged\n path on that machine. A different machine is rejected because the source\n provider session lives on its original machine. Omit --prompt to create an\n idle fork. A visible idle fork without --title is named after its source with\n a numbered prefix: \"foo\" becomes \"(1) foo\" and \"(1) foo\" becomes \"(2) foo\".\n Forks created with a first prompt get a title from that prompt.\n\nEditing a sent message:\n\n bb thread edit-message <id> --message \"Replacement text\"\n --message-file <path> Read the replacement from a file; `-` reads stdin\n --self Target the current thread (BB_THREAD_ID)\n --expected-request-sequence <seq> Select the message and reject a stale target\n\n Without --expected-request-sequence, the latest eligible message is edited.\n Codex, Claude Code, and Pi threads are supported, including failed and\n incomplete turns; grouped multi-message requests are not editable.\n `canEditMessages` on `bb thread show --json` reports whether the thread's\n provider and archive state allow edits. The\n original conversation remains unchanged until the provider prepares the\n replacement history. If the thread is running,\n submission stops the current turn and waits for it to settle. Provider-owned\n background commands, agents, and workflows are stopped before replacing the\n session, and retained task cards keep their terminal status. Durable runs\n managed by the Workflows plugin continue independently. It then\n replaces the selected turn and every later turn while retaining workspace\n changes. Unsent queued messages remain in the queue and dispatch after the\n replacement turn when their waits clear. An already-sending queued message\n must finish before the edit can start. Retries of turns replaced by the edit\n are removed from the queue. From an agent thread, the command\n carries `BB_THREAD_ID` so the replacement runs under agent permission policy.\n An edit is refused if removing its history would erase ownership evidence\n shared with another thread. Use bb thread clear <id> to start a new session\n while keeping the history and its ownership evidence.\n\nLifecycle ownership:\n spawn and fork accept --lifecycle-owner-thread <id> (SDK\n lifecycleOwnerThreadId, also returned in thread responses, null if\n independent). The owner must be live; projects, hosts and environments may\n differ. Ownership is immutable. Archiving the owner archives and stops its\n dependents; deleting it deletes them. Unarchive the owner before explicitly\n restoring a dependent. Stop does not cascade. Sidebar parents and ordinary\n forks keep their own policies.",
|
|
58452
|
+
"body": "Thread commands\n\nEvery command supports --json for machine-readable output. Read-only commands\ntake a thread ID or --self where supported; mutating lifecycle and messaging\ncommands require an explicit ID or --self.\n\nThread commands are split across four chapters:\n\n threads Spawning, handing off, forking, and editing sent messages\n thread-inspection Listing, sections, inspecting, waiting, opening in the app,\n and panel tabs\n thread-messaging Messages, plan mode, metadata and ownership, interactions,\n and queued messages\n thread-lifecycle Stop, compact, clear, retry, archive, and delete\n\nSpawning:\n\n bb thread spawn --project <id> --prompt \"...\" [options]\n bb thread spawn --project <id> --prompt-file <path> [options]\n\n --prompt <prompt> Initial prompt (one of --prompt or --prompt-file is required)\n --prompt-file <path> Read the prompt from a file; `-` reads stdin. Use this for\n multi-line or Markdown prompts: inside double quotes the shell\n runs `backticks` and $(...) before bb sees them\n --title <title> Thread title\n --project <id> Project (required; when omitted the error prints this thread's project ID to add)\n --parent-thread <id> Parent thread (may be in another project)\n --parent-self Parent to the current thread (BB_THREAD_ID)\n --lifecycle-owner-thread <id> Archive/delete with this owner\n --provider <id> Provider override\n --model <model> Model override\n --reasoning-level <level> Reasoning level id the model lists: low, medium, high, xhigh, max, or a provider-specific id\n --environment <id-or-path> Attach to an existing environment (ID or workspace path)\n --new-environment <kind> Create a fresh personal workspace or managed worktree\n --base-branch <branch> Exact Git ref for a new managed worktree\n (--new-environment worktree only; an\n --environment-provider takes its branch\n through --environment-inputs)\n --environment-provider <id> Run on an environment provider by id (list them with\n `bb environment providers`). The provider\n provisions where the thread runs; its steps show in the\n thread's workspace-setup block. Its `requires` names the\n facts it consumes: `host` takes --machine (the local\n machine by default); `gitCheckout` needs this project's\n checkout on that machine to be a Git repository with\n commits; `gitRemote` needs a project remote;\n `projectless` serves only threads with no project.\n --environment-inputs <json> JSON value for an --environment-provider that declares\n inputs; `bb environment providers --json` prints each\n provider's inputs as JSON Schema (null when it takes\n none). Omitted, it defaults to {} when the schema\n accepts an empty object and is otherwise required;\n refused when the provider declares no inputs\n --machine <id-or-name> Run on a machine (--host is an alias)\n --service-tier <tier> Service tier id the provider lists for the model, such as\n default or fast (see `bb provider models`)\n --option <option=value> Choose a value for an option the provider's model lists, applied\n before the first message; true or false for an on/off option\n (repeatable; see `bb provider models`)\n --permission-mode <mode> Permission mode: accept-edits, auto, or full\n --plan Send the prompt as the provider's /plan action (plan first, execute after approval)\n --section <id> Create the thread in a section\n --pinned Create the thread in Pinned (combines with --section;\n unpinning reveals it in that section)\n --visibility <visibility> visible or hidden; a child inherits its parent by default\n --parent-notifications <value> auto (default), stuck, or off; which outcomes wake the parent\n --send-at <when> Dispatch the first message at an ISO 8601 timestamp or a duration from now (30s, 10m, 2h, 7d)\n --file <path> CLI-local absolute path, file: URL, or uploaded file path\n --image <path> CLI-local absolute path, file: URL, or uploaded image path\n --origin-kind <kind> Create a fork thread\n --source-thread <id> Source thread for a fork\n --source-seq-end <seq> Fork after the source turn containing this event sequence\n\n Execution defaults resolve from explicit flags, live parent execution, and\n remembered project defaults. With no remembered model, bb uses the explicitly\n requested provider or Codex and resolves its provider-reported default model\n on the target machine (or the first catalog model when none is marked). The product reasoning and permission defaults are\n medium and auto.\n accept-edits uses workspace sandboxing with user-reviewed escalation. auto uses\n the same workspace sandbox with provider-native automatic review. full is the\n explicit sandbox and approval bypass. Plan mode is separate from permissions.\n A project set to `--permission-escalation deny` (`bb guide projects`) refuses\n every escalation in its threads without asking.\n Subagents inherit the parent's permission mode by default, adapted to the child provider's supported modes. Explicit requests and a thread's recorded mode take precedence; nesting a thread does not cap its permissions. The host permission ceiling still applies.\n Parenting is opt-in. Inside a thread, pass --parent-self to parent the new thread to the current thread.\n Hidden threads are for plugin/background workers. They remain addressable by\n ID while staying out of sidebar organization and unread/pending favicon\n attention. Thread lists exclude them unless\n --include-hidden is passed; direct-ID operations remain available.\n A new child thread inherits the visibility of its parent, so the subagents of\n a hidden thread stay hidden too. Pass --visibility to override the inherited\n value. A hidden child still reports its turns and blockers to its parent\n thread; only source-derived forks stay silent.\n --parent-notifications chooses which child outcomes wake the parent. auto\n reports every finished, failed, or interrupted turn and every blocker. stuck\n skips completed turns and keeps failures, interruptions, and blockers on an\n approval or question; the child sends its results with `bb thread tell`, so\n say so in its prompt. off reports nothing. Under stuck and off, unassigning\n the child does not notify the former parent either. `bb status` and\n `bb thread show` print the value for a child thread.\n A machine selector accepts an exact ID or an unambiguous name. It works with\n an unmanaged --environment path, --new-environment worktree, or the personal\n workspace. It cannot be combined with an existing environment ID because that\n environment already selects its machine. Without the flag, local/server\n machine resolution is unchanged.\n Omit --base-branch for bb's default. Explicit values are exact; use\n origin/<branch> for a remote ref.\n With no environment flag, a new thread gets a fresh worktree of the\n project's default branch (the project checkout when the project has no\n branch) on the primary host, or on the persistent machine that holds the\n project's source when the primary host has none. A child of a live thread\n in the same project gets a worktree on its parent's machine.\n Before selecting a provider, run `bb environment providers --project <id>\n --machine <id-or-name>` to see whether it is available, needs setup, or is\n unavailable and why. The first-party providers are Project checkout,\n Worktree, and Personal workspace.\n\nHandoff:\n The app's Handoff to new thread (in the follow-up model picker) starts a new\n thread that references the source. From the CLI, run bb thread spawn with\n --provider, --model, --environment and --prompt 'Continue from\n @thread:THREAD_ID ...'; SDK callers pass the same fields to threads.spawn.\n\nForking:\n\n bb thread fork <source-thread-id> [options]\n\n --prompt <prompt> Optional first prompt; omit for an idle fork\n --prompt-file <path> Read the first prompt from a file; `-` reads stdin\n --lifecycle-owner-thread <id> Archive/delete with this owner\n --source-seq-end <seq> Fork after the source turn containing this event sequence (tip by default)\n --environment <id-or-path> Existing environment ID or unmanaged workspace path\n --new-environment <kind> Create a fresh personal workspace or managed worktree\n --base-branch <branch> Exact Git ref for a new worktree; omit for the project default\n --title <title> Thread title (idle forks default to \"(1) <source title>\")\n --permission-mode <mode> Inherit source by default; accepts accept-edits, auto, full\n --visibility <visibility> visible (default) or hidden\n --agent-context-seed <text> Persist agent-only context without a first run\n --file <path> CLI-local absolute path, file: URL, or uploaded file path\n --image <path> CLI-local absolute path, file: URL, or uploaded image path\n\n Forks clone the source provider session on the same machine and inherit the\n source conversation in their timeline. --source-seq-end anchors the fork on\n the completed source turn that contains that sequence: the clone and the\n inherited timeline both end with that turn (an anchor on a user message\n branches before it, like editing it). Without it a fork clones the session\n tip and inherits every completed turn. Providers that can only clone a whole\n session accept an anchor only on the source's latest turn. A fork reuses the\n source environment by default. Use --new-environment personal for a fresh\n personal workspace or --new-environment worktree for a fresh worktree on the\n source machine; --environment can select another environment or unmanaged\n path on that machine. A different machine is rejected because the source\n provider session lives on its original machine. Omit --prompt to create an\n idle fork. A visible idle fork without --title is named after its source with\n a numbered prefix: \"foo\" becomes \"(1) foo\" and \"(1) foo\" becomes \"(2) foo\".\n Forks created with a first prompt get a title from that prompt.\n\nEditing a sent message:\n\n bb thread edit-message <id> --message \"Replacement text\"\n --message-file <path> Read the replacement from a file; `-` reads stdin\n --self Target the current thread (BB_THREAD_ID)\n --expected-request-sequence <seq> Select the message and reject a stale target\n\n Without --expected-request-sequence, the latest eligible message is edited.\n Codex, Claude Code, and Pi threads are supported, including failed and\n incomplete turns; grouped multi-message requests are not editable.\n `canEditMessages` on `bb thread show --json` reports whether the thread's\n provider and archive state allow edits. The\n original conversation remains unchanged until the provider prepares the\n replacement history. If the thread is running,\n submission stops the current turn and waits for it to settle. Provider-owned\n background commands, agents, and workflows are stopped before replacing the\n session, and retained task cards keep their terminal status. Durable runs\n managed by the Workflows plugin continue independently. It then\n replaces the selected turn and every later turn while retaining workspace\n changes. Unsent queued messages remain in the queue and dispatch after the\n replacement turn when their waits clear. An already-sending queued message\n must finish before the edit can start. Retries of turns replaced by the edit\n are removed from the queue. From an agent thread, the command\n carries `BB_THREAD_ID` so the replacement runs under agent permission policy.\n An edit is refused if removing its history would erase ownership evidence\n shared with another thread. Use bb thread clear <id> to start a new session\n while keeping the history and its ownership evidence.\n\nLifecycle ownership:\n spawn and fork accept --lifecycle-owner-thread <id> (SDK\n lifecycleOwnerThreadId, also returned in thread responses, null if\n independent). The owner must be live; projects, hosts and environments may\n differ. Ownership is immutable. Archiving the owner archives and stops its\n dependents; deleting it deletes them. Unarchive the owner before explicitly\n restoring a dependent. Stop does not cascade. Sidebar parents and ordinary\n forks keep their own policies.",
|
|
58449
58453
|
"variables": {}
|
|
58450
58454
|
},
|
|
58451
58455
|
{
|
|
@@ -83757,6 +83761,12 @@ function resolvePermissionEscalation(args) {
|
|
|
83757
83761
|
}
|
|
83758
83762
|
return "ask";
|
|
83759
83763
|
}
|
|
83764
|
+
function applyProjectPermissionEscalation(args) {
|
|
83765
|
+
if (args.projectPermissionEscalation === "deny") {
|
|
83766
|
+
return "deny";
|
|
83767
|
+
}
|
|
83768
|
+
return args.turnPermissionEscalation;
|
|
83769
|
+
}
|
|
83760
83770
|
async function resolveThreadRuntimeCommandConfig(deps, args) {
|
|
83761
83771
|
markTurnTraceSpan("runtimeConfig.started");
|
|
83762
83772
|
const workspacePath = requireWorkspacePath(args.environment);
|
|
@@ -83922,6 +83932,7 @@ async function resolveThreadRuntimeCommandConfig(deps, args) {
|
|
|
83922
83932
|
instructionMode: "append",
|
|
83923
83933
|
instructions,
|
|
83924
83934
|
projectId: args.thread.projectId,
|
|
83935
|
+
projectPermissionEscalation: project.permissionEscalation,
|
|
83925
83936
|
providerId: args.thread.providerId,
|
|
83926
83937
|
threadStoragePath,
|
|
83927
83938
|
workspacePath
|
|
@@ -84971,13 +84982,17 @@ function toRuntimeExecutionOptions(args) {
|
|
|
84971
84982
|
permissionEscalation: null
|
|
84972
84983
|
};
|
|
84973
84984
|
}
|
|
84985
|
+
const permissionEscalation = applyProjectPermissionEscalation({
|
|
84986
|
+
projectPermissionEscalation: args.projectPermissionEscalation,
|
|
84987
|
+
turnPermissionEscalation: args.permissionEscalation
|
|
84988
|
+
});
|
|
84974
84989
|
if (permissionMode === "auto") {
|
|
84975
84990
|
return {
|
|
84976
84991
|
...base,
|
|
84977
84992
|
permissionMode: "auto",
|
|
84978
84993
|
permissionScope: "workspace",
|
|
84979
84994
|
approvalReviewer: "automatic",
|
|
84980
|
-
permissionEscalation
|
|
84995
|
+
permissionEscalation
|
|
84981
84996
|
};
|
|
84982
84997
|
}
|
|
84983
84998
|
return {
|
|
@@ -84985,7 +85000,7 @@ function toRuntimeExecutionOptions(args) {
|
|
|
84985
85000
|
permissionMode: "accept-edits",
|
|
84986
85001
|
permissionScope: "workspace",
|
|
84987
85002
|
approvalReviewer: "user",
|
|
84988
|
-
permissionEscalation
|
|
85003
|
+
permissionEscalation
|
|
84989
85004
|
};
|
|
84990
85005
|
}
|
|
84991
85006
|
async function buildExecutionOptions(deps, request2, args) {
|
|
@@ -85024,6 +85039,7 @@ async function buildThreadStartCommand(deps, args) {
|
|
|
85024
85039
|
deps,
|
|
85025
85040
|
hostId: args.environment.hostId,
|
|
85026
85041
|
input: args.input,
|
|
85042
|
+
projectPermissionEscalation: runtimeContext.projectPermissionEscalation,
|
|
85027
85043
|
threadId: args.thread.id
|
|
85028
85044
|
}),
|
|
85029
85045
|
instructions: runtimeContext.instructions,
|
|
@@ -85051,6 +85067,7 @@ function buildPreparedTurnSubmitCommandPayload(args) {
|
|
|
85051
85067
|
...args,
|
|
85052
85068
|
input: args.input,
|
|
85053
85069
|
projectId: args.runtimeContext.projectId,
|
|
85070
|
+
projectPermissionEscalation: args.runtimeContext.projectPermissionEscalation,
|
|
85054
85071
|
providerId: args.runtimeContext.providerId
|
|
85055
85072
|
}),
|
|
85056
85073
|
target: args.target,
|
|
@@ -187241,6 +187258,7 @@ function toProjectResponseProjectFields(project) {
|
|
|
187241
187258
|
kind: project.kind,
|
|
187242
187259
|
name: project.name,
|
|
187243
187260
|
gitRemoteUrl: project.gitRemoteUrl,
|
|
187261
|
+
permissionEscalation: project.permissionEscalation,
|
|
187244
187262
|
createdAt: project.createdAt,
|
|
187245
187263
|
updatedAt: project.updatedAt
|
|
187246
187264
|
};
|
|
@@ -194921,7 +194939,8 @@ function createServerArea(args) {
|
|
|
194921
194939
|
init_src5();
|
|
194922
194940
|
function projectUpdateJson(args) {
|
|
194923
194941
|
return {
|
|
194924
|
-
name: args.name
|
|
194942
|
+
...args.name !== void 0 ? { name: args.name } : {},
|
|
194943
|
+
...args.permissionEscalation !== void 0 ? { permissionEscalation: args.permissionEscalation } : {}
|
|
194925
194944
|
};
|
|
194926
194945
|
}
|
|
194927
194946
|
function projectSourceAddJson(args) {
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ar as t,Or as n,Vr as r,mi as i,ni as a,zr as o}from"./boot-vendor-BBLG7GwQ.js";import{t as s}from"./permission-mode-options-BrNWKCMS.js";import{Dr as c,Fi as l,Gr as u,Hr as d,Ii as f,Ir as p,Kr as m,Lr as h,Po as g,Pr as _,Qm as v,Rr as y,Sa as b,Tc as x,Ui as S,Ur as C,Vi as w,a_ as T,di as E,em as D,nh as ee,nm as O,oh as k,zr as A}from"./index-BBxUiLNy.js";import{B as j,I as te,L as M,R as ne,b as re,z as N}from"./resource-list-B6MkAu8v.js";import{t as P}from"./page-shell-BHTOdeQn.js";import{t as ie}from"./project-default-execution-options-query-h6eTG6_Q.js";import{n as ae,r as F,s as oe}from"./ProjectsSettingsSection-BI_xhcA2.js";import"./icon-extended-DDFkslJU.js";import{n as se,r as ce,t as le}from"./ProjectMachineSetupDialog-BW4gUYj0.js";var I=e(i(),1),L=n(),R=e(a(),1);function ue(e){let t=(0,L.c)(8),{target:n,pending:r,onOpenChange:i,onDelete:a}=e,o=n!==null,s;t[0]!==a||t[1]!==r||t[2]!==n?(s=n?(0,R.jsx)(z,{target:n,pending:r,onDelete:a}):null,t[0]=a,t[1]=r,t[2]=n,t[3]=s):s=t[3];let c;return t[4]!==i||t[5]!==o||t[6]!==s?(c=(0,R.jsx)(h,{open:o,onOpenChange:i,children:s}),t[4]=i,t[5]=o,t[6]=s,t[7]=c):c=t[7],c}function z(e){let t=(0,L.c)(7),{target:n,pending:r,onDelete:i}=e,a=`Remove "${n.label}" from this project? This cannot be undone.`,o;t[0]!==i||t[1]!==n.id?(o=()=>i(n.id),t[0]=i,t[1]=n.id,t[2]=o):o=t[2];let s;return t[3]!==r||t[4]!==a||t[5]!==o?(s=(0,R.jsx)(y,{title:`Remove source?`,description:a,confirmLabel:`Remove source`,pending:r,onConfirm:o}),t[3]=r,t[4]=a,t[5]=o,t[6]=s):s=t[6],s}var de=`Where this project lives on each machine. A machine needs a checkout before it can run threads for this project.`,fe=`What new threads in this project start with. bb remembers the last options you used here.`;function pe(e){let n=(0,L.c)(41),{host:r,isPrimary:i,source:a,isPathInvalid:o,canEditPath:s,isOnlySource:l,pending:u,onSetUp:d,onChangePath:f,onRemove:p}=e,m=r.status===`connected`,h=!m&&`opacity-60`,g;n[0]===h?g=n[1]:(g=k(`size-4 shrink-0 text-muted-foreground`,h),n[0]=h,n[1]=g);let _;n[2]===g?_=n[3]:(_=(0,R.jsx)(v,{name:`Laptop`,className:g}),n[2]=g,n[3]=_);let y;n[4]===m?y=n[5]:(y=(0,R.jsx)(S,{connected:m}),n[4]=m,n[5]=y);let b;n[6]===r.id?b=n[7]:(b=D(r.id),n[6]=r.id,n[7]=b);let x;n[8]!==r.name||n[9]!==b?(x=(0,R.jsx)(t,{to:b,className:`min-w-0 truncate text-sm font-medium text-foreground hover:underline`,children:r.name}),n[8]=r.name,n[9]=b,n[10]=x):x=n[10];let C;n[11]===i?C=n[12]:(C=i?(0,R.jsx)(te,{children:`primary`}):null,n[11]=i,n[12]=C);let w;n[13]===o?w=n[14]:(w=o?(0,R.jsx)(c,{variant:`destructive`,children:`Path not found`}):null,n[13]=o,n[14]=w);let T;n[15]!==_||n[16]!==y||n[17]!==x||n[18]!==C||n[19]!==w?(T=(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1.5`,children:[_,y,x,C,w]}),n[15]=_,n[16]=y,n[17]=x,n[18]=C,n[19]=w,n[20]=T):T=n[20];let E;n[21]===a?E=n[22]:(E=a===null?(0,R.jsx)(`span`,{className:`font-sans italic`,children:`Not set up on this machine`}):a.path,n[21]=a,n[22]=E);let O;n[23]===E?O=n[24]:(O=(0,R.jsx)(`div`,{className:`min-w-0 truncate font-mono text-xs text-subtle-foreground/75`,children:E}),n[23]=E,n[24]=O);let A;n[25]!==O||n[26]!==T?(A=(0,R.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[T,O]}),n[25]=O,n[26]=T,n[27]=A):A=n[27];let j;n[28]!==s||n[29]!==m||n[30]!==r.name||n[31]!==l||n[32]!==f||n[33]!==p||n[34]!==d||n[35]!==u||n[36]!==a?(j=(0,R.jsx)(`div`,{className:`flex shrink-0 items-center gap-1`,children:a===null?(0,R.jsx)(ee,{type:`button`,variant:`outline`,size:`sm`,disabled:u||!m,onClick:d,children:m?`Set up`:`Offline`}):(0,R.jsx)(re,{label:`${r.name} checkout actions`,items:[{label:`Change folder`,icon:`Folder`,disabled:!s||u,disabledReason:s?void 0:`Folders on other machines are changed from that machine.`,onSelect:f},{label:`Remove checkout`,icon:`Trash2`,tone:`destructive`,disabled:l||u,disabledReason:l?`A project needs at least one checkout.`:void 0,onSelect:p}]})}),n[28]=s,n[29]=m,n[30]=r.name,n[31]=l,n[32]=f,n[33]=p,n[34]=d,n[35]=u,n[36]=a,n[37]=j):j=n[37];let M;return n[38]!==A||n[39]!==j?(M=(0,R.jsxs)(ne,{className:`items-start`,children:[A,j]}),n[38]=A,n[39]=j,n[40]=M):M=n[40],M}function B(e){let n=(0,L.c)(4),{children:r}=e,i;n[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=O(`projects`),n[0]=i):i=n[0];let a;n[1]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,R.jsxs)(t,{to:i,className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),n[1]=a):a=n[1];let o;return n[2]===r?o=n[3]:(o=(0,R.jsx)(P,{contentClassName:`pt-4 md:pt-5`,children:(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-3`,children:[a,r]})}),n[2]=r,n[3]=o),o}function me(){let{projectId:e}=r(),n=o(),i=x(),a=w(),c=g(),h=ie({projectId:e}),y=m(),S=C(),D=A(),L=u(),z=d(),[me,V]=(0,I.useState)(null),[he,H]=(0,I.useState)(null),[ge,U]=(0,I.useState)(null),[_e,W]=(0,I.useState)(null),ve=i.data?.projects,G=ve?.find(t=>t.id===e)??null,ye=G?.sources,K=(0,I.useMemo)(()=>ye??[],[ye]),be=G?.name??``,xe=(0,I.useMemo)(()=>f(a.data,`all`),[a.data]),Se=(0,I.useMemo)(()=>f(a.data,`persistent`),[a.data]),[q,Ce]=(0,I.useState)(!1),J=q?xe:Se,we=xe.length-Se.length,Te=c.data?.primaryHostId??null,Y=D.isPending||L.isPending,X=E({isPending:Y,submit:(0,I.useCallback)(({path:t,hostId:n,target:r,closeDialog:i})=>{if(e){if(r.kind===`add-source`)D.mutate({projectId:e,path:t,hostId:n},{onSuccess:i});else if(r.kind===`update`){let r=K.find(e=>e.hostId===n);if(!r)return;L.mutate({projectId:e,sourceId:r.id,path:t},{onSuccess:i})}}},[D,e,K,L])}),Z=X.hostId,Ee=ce(Z,(0,I.useMemo)(()=>Z?K.filter(e=>e.hostId===Z).map(e=>e.path):[],[Z,K])),De=(0,I.useCallback)(e=>{if(G){if(e.id===Z){X.openPicker({kind:`add-source`,projectId:G.id,projectName:G.name});return}W({projectId:G.id,projectName:G.name,gitRemoteUrl:G.gitRemoteUrl,hostId:e.id,hostName:e.name})}},[X,Z,G]);if(i.isError||a.isError)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load this project.`})});if(ve===void 0||a.data===void 0)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`})});if(G===null)return(0,R.jsx)(B,{children:(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`This project no longer exists.`})});let Oe=G.gitRemoteUrl===null?null:ae(G.gitRemoteUrl),ke=new Set(K.map(e=>e.hostId)),Q=J.filter(e=>ke.has(e.id)).length,$=h.data??null,Ae=$===null?null:s.find(e=>e.value===$.permissionMode)?.label??$.permissionMode,je=Date.now();return(0,R.jsxs)(P,{contentClassName:`pt-4 md:pt-5`,children:[(0,R.jsxs)(`div`,{className:`mx-auto w-full max-w-3xl space-y-6 pb-10`,children:[(0,R.jsxs)(`div`,{className:`space-y-3`,children:[(0,R.jsxs)(t,{to:O(`projects`),className:`inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronLeft`,className:`size-3.5`}),`Projects`]}),(0,R.jsxs)(`div`,{className:`flex min-w-0 items-start justify-between gap-3`,children:[(0,R.jsxs)(`div`,{className:`min-w-0`,children:[(0,R.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,R.jsx)(v,{name:`FolderGit`,className:`size-4 shrink-0 text-muted-foreground`}),(0,R.jsx)(`h1`,{className:`min-w-0 truncate text-sm font-semibold text-foreground`,children:G.name}),Q===0?(0,R.jsx)(te,{children:`needs setup`}):null]}),(0,R.jsxs)(`p`,{className:`mt-1 min-w-0 truncate text-xs text-subtle-foreground/75`,children:[Oe??`No git remote`,` · `,J.length>1?`${Q} of ${F(J.length,`machine`)}`:F(Q,`machine`),` · `,F(G.threads.length,`thread`)]})]}),(0,R.jsx)(re,{label:`${G.name} actions`,items:[{label:`Rename`,icon:`Edit`,onSelect:()=>{y.reset(),V({id:G.id,currentName:G.name})}}]})]})]}),(0,R.jsxs)(j,{title:`Checkouts`,description:de,children:[J.length===0?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No machines are paired yet.`}):(0,R.jsx)(N,{children:J.map(e=>{let t=T(K,e.id),n=e.id===Z;return(0,R.jsx)(pe,{host:e,isPrimary:J.length>1&&e.id===Te,source:t??null,isPathInvalid:t!==void 0&&n&&se(Ee,t.path),canEditPath:n,isOnlySource:K.length<=1,pending:Y||z.isPending,onSetUp:()=>De(e),onChangePath:()=>{t&&X.openPicker({kind:`update`,projectId:G.id,projectName:be,currentPath:t.path})},onRemove:()=>{t&&U({id:t.id,label:`${e.name} · ${t.path}`})}},e.id)})}),we>0?(0,R.jsxs)(`button`,{type:`button`,"aria-expanded":q,onClick:()=>Ce(e=>!e),className:`-ml-1 inline-flex items-center gap-1.5 self-start rounded-md px-1.5 py-0.5 text-xs text-muted-foreground transition-colors hover:bg-state-hover hover:text-foreground`,children:[(0,R.jsx)(v,{name:`ChevronDown`,className:k(`size-3.5 transition-transform`,q&&`rotate-180`),"aria-hidden":!0}),(0,R.jsx)(`span`,{children:q?`Show fewer machines`:`Show all machines`})]}):null]}),(0,R.jsx)(j,{title:`Thread defaults`,description:fe,children:h.isError?(0,R.jsx)(`p`,{className:`text-sm text-destructive`,role:`alert`,children:`Couldn't load thread defaults.`}):h.isPending?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`Loading…`}):$===null?(0,R.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`No threads have run here yet. The first thread's options become the defaults.`}):(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Provider`,children:(0,R.jsx)(`span`,{children:$.providerId})}),(0,R.jsx)(M,{label:`Model`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:$.model})}),(0,R.jsx)(M,{label:`Permission mode`,children:(0,R.jsx)(`span`,{children:Ae})}),(0,R.jsx)(M,{label:`Reasoning`,children:(0,R.jsx)(`span`,{children:$.reasoningLevel})})]})}),(0,R.jsx)(j,{title:`Project information`,children:(0,R.jsxs)(N,{children:[(0,R.jsx)(M,{label:`Git remote`,children:G.gitRemoteUrl===null?(0,R.jsx)(`span`,{children:`None detected`}):(0,R.jsx)(`span`,{className:`min-w-0 truncate font-mono text-xs`,children:G.gitRemoteUrl})}),(0,R.jsx)(M,{label:`Project ID`,children:(0,R.jsx)(`span`,{className:`font-mono text-xs`,children:G.id})}),(0,R.jsx)(M,{label:`Created`,children:(0,R.jsx)(`span`,{children:b({timestamp:G.createdAt,now:je})})})]})}),(0,R.jsx)(oe,{projectId:G.id}),(0,R.jsx)(j,{title:`Danger zone`,description:`Deleting ${G.name} removes the project and every thread in it, including archived ones. Checkouts stay on disk.`,children:(0,R.jsx)(N,{children:(0,R.jsx)(ne,{children:(0,R.jsx)(ee,{type:`button`,variant:`destructive`,size:`sm`,onClick:()=>{S.reset(),H({id:G.id,name:G.name})},children:`Delete project`})})})})]}),(0,R.jsx)(l,{target:X.projectPathDialog.target,pending:Y,platform:X.platform,hostId:X.hostId,hostName:X.hostName,onOpenChange:X.projectPathDialog.onOpenChange,onSubmit:X.submitProjectPath}),(0,R.jsx)(le,{target:_e,onOpenChange:e=>{e||W(null)},onComplete:()=>W(null)}),(0,R.jsx)(ue,{target:ge,pending:z.isPending,onOpenChange:e=>{e||U(null)},onDelete:e=>z.mutate({projectId:G.id,sourceId:e},{onSuccess:()=>U(null)})}),(0,R.jsx)(_,{target:me,pending:y.isPending,onOpenChange:e=>{!e&&!y.isPending&&V(null)},onRename:(e,t)=>y.mutate({id:e,name:t},{onSuccess:()=>V(null)})}),(0,R.jsx)(p,{target:he,pending:S.isPending,onOpenChange:e=>{!e&&!S.isPending&&H(null)},onDelete:e=>S.mutate(e,{onSuccess:()=>{H(null),n(O(`projects`),{replace:!0})}})})]})}export{me as ProjectDetailSettingsView};
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|