ryco-cli 0.1.13 → 0.1.14
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/dist/{AcpNativeLogging-Ba9Nn9Re.mjs → AcpNativeLogging-D3fe64a6.mjs} +1 -1
- package/dist/{AcpNativeLogging-Be1KGJfF.cjs → AcpNativeLogging-vLtnq5f1.cjs} +1 -1
- package/dist/{AzureDevOpsSourceControlProvider-CVj-F-pW.cjs → AzureDevOpsSourceControlProvider-BtezW57t.cjs} +2 -2
- package/dist/{AzureDevOpsSourceControlProvider-CGlK6M0b.mjs → AzureDevOpsSourceControlProvider-WNUDtsur.mjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-CEZEd4PX.cjs → BitbucketSourceControlProvider-BWzNM0jW.cjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-BV6iRDi7.mjs → BitbucketSourceControlProvider-tbbUFKz3.mjs} +2 -2
- package/dist/{ClaudeDriver-lBU7EyUX.cjs → ClaudeDriver-BTvdJvam.cjs} +170 -7
- package/dist/{ClaudeDriver-rooMNrJz.mjs → ClaudeDriver-CG5ngU5z.mjs} +171 -8
- package/dist/{CodexDriver-DBz2rPXb.mjs → CodexDriver-49o7TA-C.mjs} +4 -4
- package/dist/{CodexDriver-CZCIJSLV.cjs → CodexDriver-CFxwJNXx.cjs} +3 -3
- package/dist/{CodexTextGeneration-BeG7ymPC.mjs → CodexTextGeneration-C0t4xcPO.mjs} +2 -2
- package/dist/{CodexTextGeneration-BvIcyD1P.cjs → CodexTextGeneration-CedcXf9a.cjs} +1 -1
- package/dist/{CopilotDriver-CX5zhEdZ.cjs → CopilotDriver-B8J_ovCX.cjs} +20 -16
- package/dist/{CopilotDriver-D36vbGbn.mjs → CopilotDriver-Cu1B1skB.mjs} +21 -17
- package/dist/{CursorDriver-DWuuOSkJ.mjs → CursorDriver-P_A8uQki.mjs} +4 -4
- package/dist/{CursorDriver-CPBVeesr.cjs → CursorDriver-zlKHPy1_.cjs} +3 -3
- package/dist/{ForgejoSourceControlProvider-CeN7Snfr.mjs → ForgejoSourceControlProvider-DLhJZtq9.mjs} +2 -2
- package/dist/{ForgejoSourceControlProvider-CzmmcAZO.cjs → ForgejoSourceControlProvider-szJ-dvsD.cjs} +2 -2
- package/dist/{GitHubSourceControlProvider-DfFR9O2o.cjs → GitHubSourceControlProvider-3ofb6HsF.cjs} +2 -2
- package/dist/{GitHubSourceControlProvider-Dmz1LJct.mjs → GitHubSourceControlProvider-D5MQQPCJ.mjs} +2 -2
- package/dist/{GitLabSourceControlProvider-C21lwphV.mjs → GitLabSourceControlProvider-DLkxeob5.mjs} +2 -2
- package/dist/{GitLabSourceControlProvider-DGoelNmL.cjs → GitLabSourceControlProvider-DkupZH5G.cjs} +2 -2
- package/dist/{GrokDriver-CIXj_4ry.cjs → GrokDriver-CTUNclwp.cjs} +3 -3
- package/dist/{GrokDriver-qKX1a63G.mjs → GrokDriver-D8KoMY76.mjs} +4 -4
- package/dist/{OpenCodeDriver-CbdswhqU.mjs → OpenCodeDriver-B7htxutj.mjs} +92 -27
- package/dist/{OpenCodeDriver-DDEuwtXl.cjs → OpenCodeDriver-pXM8bSct.cjs} +91 -26
- package/dist/{SourceControlProviderDiscoveryCatalog-DJWDCoup.cjs → SourceControlProviderDiscoveryCatalog-Bj_sZfmB.cjs} +1 -1
- package/dist/{SourceControlProviderDiscoveryCatalog-4_4yahsa.mjs → SourceControlProviderDiscoveryCatalog-C6Fn7rZE.mjs} +1 -1
- package/dist/bin.cjs +1113 -312
- package/dist/bin.mjs +1115 -315
- package/dist/client/assets/{AccountSettings-Be5_48k0.js → AccountSettings-CinnQaX-.js} +1 -1
- package/dist/client/assets/{AiFocusSettings-DIpQXLW2.js → AiFocusSettings-UbXOywZg.js} +1 -1
- package/dist/client/assets/{AnimatedHeight-BIsV_Z3J.js → AnimatedHeight-DCad8EQ2.js} +1 -1
- package/dist/client/assets/AppearanceSettings-CTh8Z8nz.js +1 -0
- package/dist/client/assets/{BranchToolbar.logic-D7slG_zJ.js → BranchToolbar.logic-37EnknDD.js} +1 -1
- package/dist/client/assets/ChatRightPanel-DUwLYKbp.js +27 -0
- package/dist/client/assets/{ChatThreadRouteView-CocRstME.js → ChatThreadRouteView-C43W0PEz.js} +1 -1
- package/dist/client/assets/CommandPaletteDialog-IHOe0hOG.js +1 -0
- package/dist/client/assets/{CompositeItem-F3NGn6aG.js → CompositeItem-ClLCuzeJ.js} +1 -1
- package/dist/client/assets/{CompositeRoot-CmJGfRtc.js → CompositeRoot-Bdsr9eHn.js} +1 -1
- package/dist/client/assets/{ConnectionsSettings-CXabxSaH.js → ConnectionsSettings-tmBjGOPj.js} +2 -2
- package/dist/client/assets/{DiagnosticsSettings-CZ3vY43G.js → DiagnosticsSettings-CbCEgaau.js} +1 -1
- package/dist/client/assets/{DialogHandle-C4uSr9wX.js → DialogHandle-CitVLvYq.js} +1 -1
- package/dist/client/assets/{DialogPopup-Dck8r8Hn.js → DialogPopup-CfaEr9jv.js} +1 -1
- package/dist/client/assets/DialogRoot-CyEOjgGH.js +1 -0
- package/dist/client/assets/{DialogTitle-CCedPAjV.js → DialogTitle-BUkU0qXf.js} +1 -1
- package/dist/client/assets/{DialogTrigger-CYJ7_YcV.js → DialogTrigger-CEjWue7M.js} +1 -1
- package/dist/client/assets/{DialogViewport-D-CrTM-P.js → DialogViewport-Cyc_ye5w.js} +1 -1
- package/dist/client/assets/{DraftChatThreadRouteView-D8Bt3Qnq.js → DraftChatThreadRouteView-BSA67nKa.js} +1 -1
- package/dist/client/assets/{ExternalIdentityWeb.logic-D64j70NH.js → ExternalIdentityWeb.logic-BqdBjAua.js} +1 -1
- package/dist/client/assets/GlassSurface-B3cq28tB.js +1 -0
- package/dist/client/assets/{HostedConnectionControls-DxAXv0Hd.js → HostedConnectionControls-S2Wr9fiZ.js} +1 -1
- package/dist/client/assets/HostedHubRoot-DK9zP4tJ.js +1 -0
- package/dist/client/assets/{HostedNativeAuthorizationRoute-CTQe7Vjt.js → HostedNativeAuthorizationRoute-CKnLbCOH.js} +1 -1
- package/dist/client/assets/{HostedRelayTrustNotice-BldMySVi.js → HostedRelayTrustNotice-CbF_SOpf.js} +1 -1
- package/dist/client/assets/{Icons-CT3nd2MA.js → Icons-DZpTOLIb.js} +1 -1
- package/dist/client/assets/{IntegrationsSettingsPanel-D6f3KoqM.js → IntegrationsSettingsPanel-BdBEGIyL.js} +1 -1
- package/dist/client/assets/KeybindingsSettings-Bye1H9Sx.js +7 -0
- package/dist/client/assets/{McpServersSettings-B7YqVvV4.js → McpServersSettings-D0U0g2q7.js} +1 -1
- package/dist/client/assets/{MobileSheet-CkeG6_SP.js → MobileSheet-BPvuTPR6.js} +1 -1
- package/dist/client/assets/{NewWorktreeDialog-CKr2ioue.js → NewWorktreeDialog-C_xJCZWF.js} +1 -1
- package/dist/client/assets/{NoActiveThreadState-BD-eNmfn.js → NoActiveThreadState-Cfn_Wwnf.js} +1 -1
- package/dist/client/assets/{NodeSecuritySettings-FWM_SeDi.js → NodeSecuritySettings-DUQNZJqJ.js} +1 -1
- package/dist/client/assets/{OpinionatedPluginsSettings-BtZQF4Ze.js → OpinionatedPluginsSettings-D44efcv7.js} +1 -1
- package/dist/client/assets/{PhoneGetAppInterstitial-CooQgpSw.js → PhoneGetAppInterstitial-CzduFI4-.js} +1 -1
- package/dist/client/assets/{PhoneGetAppInterstitialBackdrop-B8vfJdZd.js → PhoneGetAppInterstitialBackdrop-CJ44QRCp.js} +1 -1
- package/dist/client/assets/PhoneHome-BLEJm5TG.js +1 -0
- package/dist/client/assets/PhoneSettingsSurface-CqetLTIm.js +1 -0
- package/dist/client/assets/{ProjectFavicon-qZGdjYCM.js → ProjectFavicon-DrBXI2cH.js} +1 -1
- package/dist/client/assets/{ProviderModelPicker-D0w23uWo.js → ProviderModelPicker-CyID3P1C.js} +1 -1
- package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-BkoRegCn.js → ProviderUpdateLaunchNotification.logic-C6VoLD-w.js} +1 -1
- package/dist/client/assets/ProvidersSettingsPanel-BHmpXUIM.js +1 -0
- package/dist/client/assets/{RedactedSensitiveText-CxtaUiKH.js → RedactedSensitiveText-CZwFEoNn.js} +1 -1
- package/dist/client/assets/RootAppShell-BVXRShhe.js +6 -0
- package/dist/client/assets/{RycoLetterMark-Bk0kvGJ_.js → RycoLetterMark-C-fvI9UB.js} +1 -1
- package/dist/client/assets/SettingsDialog-CnETTu23.js +1 -0
- package/dist/client/assets/{SettingsPanels-Dr4f2y9l.js → SettingsPanels-C3HDrmQq.js} +3 -3
- package/dist/client/assets/{SettingsPanels.editor-B2x4U4rW.js → SettingsPanels.editor-DI8Z5rsl.js} +1 -1
- package/dist/client/assets/SourceControlSettings-BG4tsvql.js +1 -0
- package/dist/client/assets/{StatisticsPage-Bjouapmf.js → StatisticsPage-dy_aYqvS.js} +1 -1
- package/dist/client/assets/{StatisticsPanel-D_khPph6.js → StatisticsPanel-CeRJBu65.js} +1 -1
- package/dist/client/assets/{StatisticsSettingsLink-Cx43bOeo.js → StatisticsSettingsLink-ChlwCDG0.js} +1 -1
- package/dist/client/assets/ThreadStatusIndicators-D-ioX09X.js +0 -0
- package/dist/client/assets/{ThreadTerminalDrawer-DDHEuRGB.js → ThreadTerminalDrawer-BvGaRxBP.js} +1 -1
- package/dist/client/assets/{ThreadWorkspacePanel-QF3KwbGm.js → ThreadWorkspacePanel-BAWm7mGl.js} +2 -2
- package/dist/client/assets/{ToolbarRootContext-BgqqXVly.js → ToolbarRootContext-k-_m5nCN.js} +1 -1
- package/dist/client/assets/{WorkItemsTab-AOVwVvb7.js → WorkItemsTab-Q2V2EuvK.js} +12 -12
- package/dist/client/assets/{alert-LqMhbdE9.js → alert-BymbRVPf.js} +1 -1
- package/dist/client/assets/{alert-dialog-DxoA6ky8.js → alert-dialog-Gym8_p4Q.js} +1 -1
- package/dist/client/assets/appearancePreferences-BhNRCg6W.js +1 -0
- package/dist/client/assets/authorization-BwQZHweJ.js +1 -0
- package/dist/client/assets/{badge-CXw6fWrB.js → badge-BQI7J3Sg.js} +1 -1
- package/dist/client/assets/{branding-BDfN6Spd.js → branding-DqHDcyzW.js} +1 -1
- package/dist/client/assets/{button-BAbJxRzt.js → button-Wf_1nfeu.js} +1 -1
- package/dist/client/assets/{capabilities-3zgirmmI.js → capabilities-BrllgEYz.js} +1 -1
- package/dist/client/assets/{chatThreadActions-DQ8aOQ1g.js → chatThreadActions-BGkJmj6T.js} +1 -1
- package/dist/client/assets/{collapsible-dxy6kc2k.js → collapsible-GOpRckDq.js} +1 -1
- package/dist/client/assets/{command-CGNKG_Oe.js → command-Dx5YM54H.js} +1 -1
- package/dist/client/assets/composerDraftStore-DC2r8dcu.js +11 -0
- package/dist/client/assets/{data-list-CYKBxN62.js → data-list-BSiCZBKn.js} +1 -1
- package/dist/client/assets/{desktopUpdateAtoms-CyfPW2jg.js → desktopUpdateAtoms-DkmoIGr0.js} +1 -1
- package/dist/client/assets/{desktopWorkspace-DHUZEpfy.js → desktopWorkspace-Ddm531g5.js} +1 -1
- package/dist/client/assets/{device-B_qvyvtW.js → device-B0aqBYM1.js} +1 -1
- package/dist/client/assets/{dialog-DQsYchqu.js → dialog-CUxw5AxI.js} +1 -1
- package/dist/client/assets/{draft-input-CkzOk8BY.js → draft-input-CpfrGQ1h.js} +1 -1
- package/dist/client/assets/editorPreferences-SOMXdQpi.js +1 -0
- package/dist/client/assets/{empty-DwzqNgCP.js → empty-D420OZA9.js} +1 -1
- package/dist/client/assets/{env-B4arEvJg.js → env-Bf33qXdb.js} +1 -1
- package/dist/client/assets/{getPseudoElementBounds-X62ElHN8.js → getPseudoElementBounds-nDGTWECG.js} +1 -1
- package/dist/client/assets/{group-D9ER9giz.js → group-Cq4Llttm.js} +1 -1
- package/dist/client/assets/{index-CQmEMMQH.js → index-BL8_ra0g.js} +2 -2
- package/dist/client/assets/{input-CHEwW3oH.js → input-Dl4N9ZfE.js} +1 -1
- package/dist/client/assets/{kbd-DCGQZk18.js → kbd-CqoZVQfv.js} +1 -1
- package/dist/client/assets/{keybindings-CWJ7E9ZI.js → keybindings-DQzcPjMv.js} +1 -1
- package/dist/client/assets/{label-CVFHsLFO.js → label-x5DgpBI_.js} +1 -1
- package/dist/client/assets/{lib-qiiNMGgU.js → lib-BXIqHSZx.js} +1 -1
- package/dist/client/assets/{liquidGlass-CPsvmaF0.js → liquidGlass-yFkZrRk5.js} +1 -1
- package/dist/client/assets/{logging-M8H3z7rQ.js → logging-CZlHfeu2.js} +1 -1
- package/dist/client/assets/main-B7T7on1T.css +2 -0
- package/dist/client/assets/main-J4YlUJad.js +9 -0
- package/dist/client/assets/{menu-Dvxh8sD5.js → menu-BuDpxm_Q.js} +1 -1
- package/dist/client/assets/{popover-CuH9Yrj3.js → popover-DuprDUaB.js} +1 -1
- package/dist/client/assets/primary-CJx2nSkc.js +2 -0
- package/dist/client/assets/projectPaths-DrelgodZ.js +1 -0
- package/dist/client/assets/{providerDriverMeta-I0TSo-QI.js → providerDriverMeta-D27Koh7Q.js} +1 -1
- package/dist/client/assets/{providerIconUtils-X0Z3EK-Q.js → providerIconUtils-CtOHwjWL.js} +1 -1
- package/dist/client/assets/providerInstances-BPwEwwpF.js +1 -0
- package/dist/client/assets/providerModels-BPwEwwpF.js +1 -0
- package/dist/client/assets/{qr-code-Bddq6K7S.js → qr-code-BVfzPOP3.js} +1 -1
- package/dist/client/assets/{radio-group-CBZFr4C8.js → radio-group-rgmJqPI7.js} +1 -1
- package/dist/client/assets/{resolveAriaLabelledBy-CD_ugzhJ.js → resolveAriaLabelledBy-l4SuqStl.js} +1 -1
- package/dist/client/assets/{rightPanelRouteSearch-DB5gQGHK.js → rightPanelRouteSearch-DmpObL1z.js} +1 -1
- package/dist/client/assets/runtime-DYzjhL5M.js +1 -0
- package/dist/client/assets/{scroll-area-Drsa8bNB.js → scroll-area-DMs8l4bb.js} +1 -1
- package/dist/client/assets/{scrollEdges-B-cqxY4l.js → scrollEdges-DWTOweRb.js} +1 -1
- package/dist/client/assets/{select-BYbVr-yg.js → select-Djwp8HDm.js} +1 -1
- package/dist/client/assets/{separator-CdS5bi4Z.js → separator-rjtf5Q3V.js} +1 -1
- package/dist/client/assets/{session-logic-GZix7S2I.js → session-logic-DLEAZb3K.js} +2 -2
- package/dist/client/assets/{settingsDialogStore-ygYoScKe.js → settingsDialogStore-Dbykwvfs.js} +1 -1
- package/dist/client/assets/{settingsLayout-D8glO7f1.js → settingsLayout-C7bl9Xi4.js} +1 -1
- package/dist/client/assets/{sheet-BO78gIKZ.js → sheet-CQIQYfOM.js} +1 -1
- package/dist/client/assets/{sidebar-Dm6l2GA6.js → sidebar-BdDOvXe8.js} +1 -1
- package/dist/client/assets/sidebarProjectFolders-D_Me0oJ8.js +4 -0
- package/dist/client/assets/{sidebarStatusText-D0HT0fek.js → sidebarStatusText-BF6odB03.js} +1 -1
- package/dist/client/assets/{skeleton-CvQSeJbw.js → skeleton-Mgh4Gx9x.js} +1 -1
- package/dist/client/assets/{spinner-ClF0jOcX.js → spinner-CzzUdFeE.js} +1 -1
- package/dist/client/assets/{src-Vf4LVnMX.js → src-Ca7Gag3m.js} +1 -1
- package/dist/client/assets/storeSelectors-D7HbqO4E.js +1 -0
- package/dist/client/assets/{switch-BTGo9Yip.js → switch-CntUxI1A.js} +1 -1
- package/dist/client/assets/{terminal-links-CZ3c9AbA.js → terminal-links-CUFISn8U.js} +1 -1
- package/dist/client/assets/{textarea-RFPODxWW.js → textarea-C8QxddDb.js} +1 -1
- package/dist/client/assets/threadPinning-BIV4KXZU.js +1 -0
- package/dist/client/assets/{threadPriorityRefreshRuntime-Ct5pnIbX.js → threadPriorityRefreshRuntime-B-pVYK_y.js} +1 -1
- package/dist/client/assets/{toast-CcSCAm4B.js → toast-Cw7bXJzg.js} +1 -1
- package/dist/client/assets/{toggle-I6h33Cu5.js → toggle-Bi9uP4Hb.js} +1 -1
- package/dist/client/assets/{toggle-group-mLIkiJtU.js → toggle-group-LcgyMgj5.js} +1 -1
- package/dist/client/assets/{tooltip-C8sAONBj.js → tooltip-t3Nrleyq.js} +1 -1
- package/dist/client/assets/types-D7HbqO4E.js +1 -0
- package/dist/client/assets/{uiStateStore-B6pjzSjj.js → uiStateStore-BW2WnK4k.js} +1 -1
- package/dist/client/assets/useAtlassian-a-MaAd0k.js +0 -0
- package/dist/client/assets/{useButton-D__1LqCF.js → useButton-DUuWgIMw.js} +1 -1
- package/dist/client/assets/{useCompositeListItem-Cmr_nuuG.js → useCompositeListItem-CL5mJqCb.js} +1 -1
- package/dist/client/assets/{useDebouncedValue-DHjoudTq.js → useDebouncedValue-jDDWNjgt.js} +1 -1
- package/dist/client/assets/{useFloatingRootContext-D5EZmrCa.js → useFloatingRootContext-C4I8IxtL.js} +1 -1
- package/dist/client/assets/{useHandleNewThread-DX2FtXcP.js → useHandleNewThread-820pBJCC.js} +1 -1
- package/dist/client/assets/{useLabelableId-DnQJ7amm.js → useLabelableId-KX33mhBC.js} +1 -1
- package/dist/client/assets/{useLocation-CDeYzWW6.js → useLocation-B4QlXdMt.js} +1 -1
- package/dist/client/assets/{useOpenInteractionType-CjtpACKR.js → useOpenInteractionType-DjM9MBY7.js} +1 -1
- package/dist/client/assets/{usePhoneThreadActions-BEa3VzGG.js → usePhoneThreadActions-DxxWMYgC.js} +1 -1
- package/dist/client/assets/{usePopupViewport-BuhsNdVy.js → usePopupViewport-CAMlnyaP.js} +1 -1
- package/dist/client/assets/{useScrollLock-D3tMGsRk.js → useScrollLock-CAPfesBT.js} +1 -1
- package/dist/client/assets/{useStatistics-CtunoTE-.js → useStatistics-CWasDzsV.js} +2 -2
- package/dist/client/assets/{useSwipeDismiss-CbgDJvw1.js → useSwipeDismiss-BZsYSBgq.js} +1 -1
- package/dist/client/assets/{useTheme-DiC-5xCb.js → useTheme-By1kfyiU.js} +1 -1
- package/dist/client/assets/{useThreadActions-fN-Al13y.js → useThreadActions-MOjDrEnS.js} +1 -1
- package/dist/client/assets/{useTriggerFocusGuards-CrugmkhX.js → useTriggerFocusGuards-D5z439rn.js} +1 -1
- package/dist/client/assets/{useValueChanged-MQtIzPIU.js → useValueChanged-D0CHQQwP.js} +1 -1
- package/dist/client/assets/{utils-BofFIn5Y.js → utils-B76_2Yk7.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/{collectUint8StreamText-Bb52hlpd.cjs → collectUint8StreamText-B9B7bGv9.cjs} +46 -10
- package/dist/{collectUint8StreamText-EDg4F0TU.mjs → collectUint8StreamText-RzKEq2NY.mjs} +35 -11
- package/dist/{makeManagedServerProvider-itynW7xv.cjs → makeManagedServerProvider-BF1eBatf.cjs} +1 -1
- package/dist/{makeManagedServerProvider-Cf8bNWwc.mjs → makeManagedServerProvider-BuG2fLP8.mjs} +1 -1
- package/package.json +1 -1
- package/dist/client/assets/AppearanceSettings-CYbSApl4.js +0 -1
- package/dist/client/assets/ChatRightPanel-BIS1DPGa.js +0 -27
- package/dist/client/assets/CommandPaletteDialog-C5xAo65V.js +0 -1
- package/dist/client/assets/DialogRoot-BpIvUdm7.js +0 -1
- package/dist/client/assets/GlassSurface-C3IIWMu9.js +0 -1
- package/dist/client/assets/HostedHubRoot-Cc8GYcK6.js +0 -1
- package/dist/client/assets/KeybindingsSettings-D2bNQPI-.js +0 -7
- package/dist/client/assets/PhoneHome-BtPE7bQn.js +0 -1
- package/dist/client/assets/PhoneSettingsSurface-tcFCccEL.js +0 -1
- package/dist/client/assets/ProvidersSettingsPanel-B3aBKY--.js +0 -1
- package/dist/client/assets/RootAppShell-C-0ChFVJ.js +0 -6
- package/dist/client/assets/SettingsDialog-Bbuoh793.js +0 -1
- package/dist/client/assets/SourceControlSettings-CkiYR4lR.js +0 -1
- package/dist/client/assets/ThreadStatusIndicators-ZImeLExQ.js +0 -0
- package/dist/client/assets/appearancePreferences-COvj0WMT.js +0 -1
- package/dist/client/assets/authorization-mIJKV2yp.js +0 -1
- package/dist/client/assets/composerDraftStore-CdJJZe42.js +0 -11
- package/dist/client/assets/editorPreferences-DHIJntKF.js +0 -1
- package/dist/client/assets/main-BKS5Nf2_.js +0 -9
- package/dist/client/assets/main-DaYHZt-J.css +0 -2
- package/dist/client/assets/panel-right-BodNpkM9.js +0 -1
- package/dist/client/assets/primary-BzLEg2w1.js +0 -2
- package/dist/client/assets/projectPaths-BAd6NFcE.js +0 -1
- package/dist/client/assets/providerInstances-BJcfB_9E.js +0 -1
- package/dist/client/assets/providerModels-BJcfB_9E.js +0 -1
- package/dist/client/assets/runtime-CXut_g4p.js +0 -1
- package/dist/client/assets/sidebarProjectFolders-cnmz3B_-.js +0 -4
- package/dist/client/assets/storeSelectors-DYekgeHu.js +0 -1
- package/dist/client/assets/types-DYekgeHu.js +0 -1
- package/dist/client/assets/useAppearancePreference-BlLlxQl7.js +0 -1
- package/dist/client/assets/useAtlassian-9-hy2f8z.js +0 -0
package/dist/{GitLabSourceControlProvider-DGoelNmL.cjs → GitLabSourceControlProvider-DkupZH5G.cjs}
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
4
|
-
const require_SourceControlProviderDiscoveryCatalog = require("./SourceControlProviderDiscoveryCatalog-
|
|
3
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-B9B7bGv9.cjs");
|
|
4
|
+
const require_SourceControlProviderDiscoveryCatalog = require("./SourceControlProviderDiscoveryCatalog-Bj_sZfmB.cjs");
|
|
5
5
|
const require_bin = require("./bin.cjs");
|
|
6
6
|
let effect = require("effect");
|
|
7
7
|
//#region src/sourceControl/GitLabSourceControlProvider.ts
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
const require_rolldown_runtime = require("./rolldown-runtime-LGfotAqq.cjs");
|
|
4
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
4
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-B9B7bGv9.cjs");
|
|
5
5
|
const require_Metrics = require("./Metrics-DIjMQ5pa.cjs");
|
|
6
6
|
const require_bin = require("./bin.cjs");
|
|
7
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
7
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-BF1eBatf.cjs");
|
|
8
8
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
9
|
-
const require_AcpNativeLogging = require("./AcpNativeLogging-
|
|
9
|
+
const require_AcpNativeLogging = require("./AcpNativeLogging-vLtnq5f1.cjs");
|
|
10
10
|
let effect_Effect = require("effect/Effect");
|
|
11
11
|
effect_Effect = require_rolldown_runtime.__toESM(effect_Effect, 1);
|
|
12
12
|
let effect_Layer = require("effect/Layer");
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Ba as ProviderDriverKind, Bo as EventId, Jo as RuntimeRequestId, Mo as ApprovalRequestId, Pn as TextGenerationError, Va as ProviderInstanceId, es as TurnId, ir as GrokSettings } from "./collectUint8StreamText-RzKEq2NY.mjs";
|
|
4
4
|
import { nt as sanitizeFeatureBranchName, st as ServerConfig, tt as sanitizeBranchFragment } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import { $ as spawnAndCollect, C as buildCommitMessagePrompt, D as buildThreadPriorityPrompt, Dn as enrichProviderSnapshotWithVersionAdvisory, E as buildPrContentPrompt, Fn as ServerSettingsService,
|
|
6
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
5
|
+
import { $ as spawnAndCollect, Bn as createModelCapabilities, C as buildCommitMessagePrompt, D as buildThreadPriorityPrompt, Dn as enrichProviderSnapshotWithVersionAdvisory, E as buildPrContentPrompt, Fn as ServerSettingsService, K as buildServerProvider, Ln as resolveAttachmentPath, M as sanitizePrTitle, N as sanitizeThreadTitle, Nn as resolveProviderMaintenanceCapabilitiesEffect, O as buildThreadTitlePrompt, On as makeManualOnlyProviderMaintenanceCapabilities, Q as providerModelsFromSettings, S as buildBranchNamePrompt, T as buildIssueContentTitlePrompt, Y as isCommandMissingCause, Z as parseGenericCliVersion, _ as ProviderEventLoggers, at as createProcessDeviceToolBinding, dt as ProviderDriverError, j as sanitizeCommitSubject, jn as makeStaticProviderMaintenanceResolver, k as extractJsonObject, lt as ProviderAdapterSessionNotFoundError, ot as ProviderAdapterProcessError, qn as normalizeModelSlug, st as ProviderAdapterRequestError, ut as ProviderAdapterValidationError, v as makeEventNdjsonLogger, w as buildIssueContentPolishPrompt, x as validateRankInboxThreadsResult, z as mergeProviderInstanceEnvironment } from "./bin.mjs";
|
|
6
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-BuG2fLP8.mjs";
|
|
7
7
|
import { t as defaultProviderContinuationIdentity } from "./ProviderDriver-kCV60GKk.mjs";
|
|
8
|
-
import { a as makeAcpRequestOpenedEvent, c as makeAcpToolCallEvent, d as AcpSessionRuntime, f as parsePermissionRequest, i as makeAcpPlanUpdatedEvent, n as makeAcpAssistantItemEvent, o as makeAcpRequestResolvedEvent, p as AcpTransportError, r as makeAcpContentDeltaEvent, s as makeAcpTokenUsageEvent, t as makeAcpNativeLoggers, u as mapAcpToAdapterError } from "./AcpNativeLogging-
|
|
8
|
+
import { a as makeAcpRequestOpenedEvent, c as makeAcpToolCallEvent, d as AcpSessionRuntime, f as parsePermissionRequest, i as makeAcpPlanUpdatedEvent, n as makeAcpAssistantItemEvent, o as makeAcpRequestResolvedEvent, p as AcpTransportError, r as makeAcpContentDeltaEvent, s as makeAcpTokenUsageEvent, t as makeAcpNativeLoggers, u as mapAcpToAdapterError } from "./AcpNativeLogging-D3fe64a6.mjs";
|
|
9
9
|
import * as Effect from "effect/Effect";
|
|
10
10
|
import * as Layer from "effect/Layer";
|
|
11
11
|
import * as Schema from "effect/Schema";
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Ba as ProviderDriverKind, Bo as EventId, Jo as RuntimeRequestId, Ko as ProviderItemId, Pn as TextGenerationError, Va as ProviderInstanceId, Xo as RuntimeSubagentId, ar as OpenCodeSettings, bi as PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES, es as TurnId, qo as RuntimeItemId } from "./collectUint8StreamText-RzKEq2NY.mjs";
|
|
4
4
|
import { nt as sanitizeFeatureBranchName, st as ServerConfig, tt as sanitizeBranchFragment } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import { C as buildCommitMessagePrompt, D as buildThreadPriorityPrompt, Dn as enrichProviderSnapshotWithVersionAdvisory, E as buildPrContentPrompt, Fn as ServerSettingsService, In as
|
|
5
|
+
import { Bn as createModelCapabilities, C as buildCommitMessagePrompt, D as buildThreadPriorityPrompt, Dn as enrichProviderSnapshotWithVersionAdvisory, E as buildPrContentPrompt, Fn as ServerSettingsService, Hn as getModelSelectionStringOptionValue, In as readPersistedAttachment, K as buildServerProvider, M as sanitizePrTitle, Mn as normalizeCommandPath, N as sanitizeThreadTitle, Nn as resolveProviderMaintenanceCapabilitiesEffect, O as buildThreadTitlePrompt, Pn as compareCliVersions, Q as providerModelsFromSettings, S as buildBranchNamePrompt, T as buildIssueContentTitlePrompt, X as nonEmptyTrimmed, Z as parseGenericCliVersion, _ as ProviderEventLoggers, at as createProcessDeviceToolBinding, c as OpenCodeRuntimeError, ct as ProviderAdapterSessionClosedError, d as openCodeRuntimeErrorDetail, dt as ProviderDriverError, f as parseOpenCodeModelSlug, g as toOpenCodeQuestionAnswers, h as toOpenCodePermissionReply, j as sanitizeCommitSubject, k as extractJsonObject, kn as makePackageManagedProviderMaintenanceResolver, l as buildOpenCodePermissionRules, lt as ProviderAdapterSessionNotFoundError, m as toOpenCodeFileParts, ot as ProviderAdapterProcessError, p as runOpenCodeSdk, s as OpenCodeRuntime, st as ProviderAdapterRequestError, t as makeServerQueueMetrics, tt as agentControlHostContext, u as openCodeQuestionId, ut as ProviderAdapterValidationError, v as makeEventNdjsonLogger, w as buildIssueContentPolishPrompt, x as validateRankInboxThreadsResult, z as mergeProviderInstanceEnvironment } from "./bin.mjs";
|
|
6
6
|
import { t as formatSourceControlContextsForAgent } from "./sourceControlContextFormatter-DEwpnVAH.mjs";
|
|
7
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
7
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-BuG2fLP8.mjs";
|
|
8
8
|
import { t as defaultProviderContinuationIdentity } from "./ProviderDriver-kCV60GKk.mjs";
|
|
9
9
|
import { Cause, Data, Effect, Exit, Fiber, Queue, Ref, Schema, Scope, Stream } from "effect";
|
|
10
10
|
import { HttpClient } from "effect/unstable/http";
|
|
@@ -112,12 +112,32 @@ const makeOpenCodeTextGeneration = Effect.fn("makeOpenCodeTextGeneration")(funct
|
|
|
112
112
|
operation: input.operation,
|
|
113
113
|
detail: "OpenCode model selection must use the 'provider/model' format."
|
|
114
114
|
});
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
115
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
116
|
+
if (declaredAttachmentBytes > 52428800) return yield* new TextGenerationError({
|
|
117
|
+
operation: input.operation,
|
|
118
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
119
|
+
});
|
|
120
|
+
const attachmentUrlById = /* @__PURE__ */ new Map();
|
|
121
|
+
let attachmentTotalBytes = 0;
|
|
122
|
+
for (const attachment of input.attachments ?? []) {
|
|
123
|
+
const persisted = readPersistedAttachment({
|
|
118
124
|
attachmentsDir: serverConfig.attachmentsDir,
|
|
119
125
|
attachment
|
|
120
|
-
})
|
|
126
|
+
});
|
|
127
|
+
if (!persisted.ok) return yield* new TextGenerationError({
|
|
128
|
+
operation: input.operation,
|
|
129
|
+
detail: persisted.reason
|
|
130
|
+
});
|
|
131
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
132
|
+
if (attachmentTotalBytes > 52428800) return yield* new TextGenerationError({
|
|
133
|
+
operation: input.operation,
|
|
134
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
135
|
+
});
|
|
136
|
+
attachmentUrlById.set(attachment.id, `data:${attachment.mimeType};base64,${persisted.bytes.toString("base64")}`);
|
|
137
|
+
}
|
|
138
|
+
const fileParts = toOpenCodeFileParts({
|
|
139
|
+
attachments: input.attachments,
|
|
140
|
+
resolveAttachmentUrl: (attachment) => attachmentUrlById.get(attachment.id) ?? null
|
|
121
141
|
});
|
|
122
142
|
const runAgainstServer = (server) => Effect.gen(function* () {
|
|
123
143
|
const client = yield* openCodeRuntime.createOpenCodeSdkClient({
|
|
@@ -540,7 +560,7 @@ function updateProviderSession(context, patch, options) {
|
|
|
540
560
|
}
|
|
541
561
|
const stopOpenCodeContext = Effect.fn("stopOpenCodeContext")(function* (context) {
|
|
542
562
|
if (yield* Ref.getAndSet(context.stopped, true)) return false;
|
|
543
|
-
yield* runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID
|
|
563
|
+
yield* Effect.forEach([context.openCodeSessionId, ...context.childSessionIds], (sessionID) => runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(Effect.ignore({ log: true })), { discard: true });
|
|
544
564
|
yield* Scope.close(context.sessionScope, Exit.void);
|
|
545
565
|
return true;
|
|
546
566
|
});
|
|
@@ -627,6 +647,13 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
627
647
|
}
|
|
628
648
|
});
|
|
629
649
|
});
|
|
650
|
+
const emitStoppedOpenCodeChildren = Effect.fn("emitStoppedOpenCodeChildren")(function* (context, raw) {
|
|
651
|
+
for (const subagent of context.subagentBySessionId.values()) yield* emitOpenCodeSubagentCompleted(context, {
|
|
652
|
+
subagent,
|
|
653
|
+
status: subagentCompletionStatus("stopped"),
|
|
654
|
+
raw
|
|
655
|
+
});
|
|
656
|
+
});
|
|
630
657
|
const bindOpenCodeSubtaskPart = Effect.fn("bindOpenCodeSubtaskPart")(function* (context, part, raw) {
|
|
631
658
|
const partKey = scopedOpenCodeId(part.sessionID, part.id);
|
|
632
659
|
const existing = context.subagentBySubtaskPartId.get(partKey);
|
|
@@ -720,7 +747,7 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
720
747
|
}
|
|
721
748
|
}).pipe(Effect.ignore);
|
|
722
749
|
sessions.delete(context.session.threadId);
|
|
723
|
-
yield* runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID
|
|
750
|
+
yield* Effect.forEach([context.openCodeSessionId, ...context.childSessionIds], (sessionID) => runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(Effect.ignore({ log: true })), { discard: true });
|
|
724
751
|
yield* Scope.close(context.sessionScope, Exit.void);
|
|
725
752
|
});
|
|
726
753
|
/** Emit content.delta and item.completed events for an assistant text part. */
|
|
@@ -1276,12 +1303,35 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1276
1303
|
});
|
|
1277
1304
|
const formatted = formatSourceControlContextsForAgent(input.sourceControlContexts ?? []);
|
|
1278
1305
|
let text = formatted ? formatted + "\n\n" + (input.input?.trim() ?? "") : input.input?.trim();
|
|
1279
|
-
const
|
|
1280
|
-
|
|
1281
|
-
|
|
1306
|
+
const attachmentUrlById = /* @__PURE__ */ new Map();
|
|
1307
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
1308
|
+
if (declaredAttachmentBytes > 52428800) return yield* new ProviderAdapterRequestError({
|
|
1309
|
+
provider: PROVIDER$1,
|
|
1310
|
+
method: "session.prompt",
|
|
1311
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
1312
|
+
});
|
|
1313
|
+
let attachmentTotalBytes = 0;
|
|
1314
|
+
for (const attachment of input.attachments ?? []) {
|
|
1315
|
+
const persisted = readPersistedAttachment({
|
|
1282
1316
|
attachmentsDir: serverConfig.attachmentsDir,
|
|
1283
1317
|
attachment
|
|
1284
|
-
})
|
|
1318
|
+
});
|
|
1319
|
+
if (!persisted.ok) return yield* new ProviderAdapterRequestError({
|
|
1320
|
+
provider: PROVIDER$1,
|
|
1321
|
+
method: "session.prompt",
|
|
1322
|
+
detail: persisted.reason
|
|
1323
|
+
});
|
|
1324
|
+
attachmentUrlById.set(attachment.id, `data:${attachment.mimeType};base64,${persisted.bytes.toString("base64")}`);
|
|
1325
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
1326
|
+
if (attachmentTotalBytes > 52428800) return yield* new ProviderAdapterRequestError({
|
|
1327
|
+
provider: PROVIDER$1,
|
|
1328
|
+
method: "session.prompt",
|
|
1329
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
1330
|
+
});
|
|
1331
|
+
}
|
|
1332
|
+
const fileParts = toOpenCodeFileParts({
|
|
1333
|
+
attachments: input.attachments,
|
|
1334
|
+
resolveAttachmentUrl: (attachment) => attachmentUrlById.get(attachment.id) ?? null
|
|
1285
1335
|
});
|
|
1286
1336
|
if ((!text || text.length === 0) && fileParts.length === 0) return yield* new ProviderAdapterValidationError({
|
|
1287
1337
|
provider: PROVIDER$1,
|
|
@@ -1347,7 +1397,13 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1347
1397
|
});
|
|
1348
1398
|
const interruptTurn = Effect.fn("interruptTurn")(function* (threadId, turnId) {
|
|
1349
1399
|
const context = ensureSessionContext(sessions, threadId);
|
|
1350
|
-
yield* runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID: context.openCodeSessionId })).pipe(Effect.mapError(toRequestError));
|
|
1400
|
+
const rootAbortExit = yield* runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID: context.openCodeSessionId })).pipe(Effect.mapError(toRequestError), Effect.exit);
|
|
1401
|
+
yield* Effect.forEach(context.childSessionIds, (sessionID) => runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(Effect.ignore({ log: true })), { discard: true });
|
|
1402
|
+
yield* emitStoppedOpenCodeChildren(context, {
|
|
1403
|
+
method: "session.abort",
|
|
1404
|
+
reason: "turn-interrupted"
|
|
1405
|
+
});
|
|
1406
|
+
if (Exit.isFailure(rootAbortExit)) return yield* Effect.failCause(rootAbortExit.cause);
|
|
1351
1407
|
if (turnId ?? context.activeTurnId) yield* emitForContext(context, {
|
|
1352
1408
|
...yield* buildEventBase({
|
|
1353
1409
|
threadId,
|
|
@@ -1359,14 +1415,16 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1359
1415
|
});
|
|
1360
1416
|
const respondToRequest = Effect.fn("respondToRequest")(function* (threadId, requestId, decision) {
|
|
1361
1417
|
const context = ensureSessionContext(sessions, threadId);
|
|
1362
|
-
|
|
1418
|
+
const request = context.pendingPermissions.get(requestId);
|
|
1419
|
+
if (!request) return yield* new ProviderAdapterRequestError({
|
|
1363
1420
|
provider: PROVIDER$1,
|
|
1364
|
-
method: "permission.
|
|
1421
|
+
method: "permission.respond",
|
|
1365
1422
|
detail: `Unknown pending permission request: ${requestId}`
|
|
1366
1423
|
});
|
|
1367
|
-
yield* runOpenCodeSdk("permission.
|
|
1368
|
-
|
|
1369
|
-
|
|
1424
|
+
yield* runOpenCodeSdk("permission.respond", () => context.client.permission.respond({
|
|
1425
|
+
sessionID: request.sessionID,
|
|
1426
|
+
permissionID: requestId,
|
|
1427
|
+
response: toOpenCodePermissionReply(decision)
|
|
1370
1428
|
})).pipe(Effect.mapError(toRequestError));
|
|
1371
1429
|
});
|
|
1372
1430
|
const respondToUserInput = Effect.fn("respondToUserInput")(function* (threadId, requestId, answers) {
|
|
@@ -1389,6 +1447,10 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1389
1447
|
threadId
|
|
1390
1448
|
});
|
|
1391
1449
|
if (!(yield* stopOpenCodeContext(context))) return;
|
|
1450
|
+
yield* emitStoppedOpenCodeChildren(context, {
|
|
1451
|
+
method: "session.abort",
|
|
1452
|
+
reason: "session-stopped"
|
|
1453
|
+
});
|
|
1392
1454
|
yield* emitForContext(context, {
|
|
1393
1455
|
...yield* buildEventBase({ threadId }),
|
|
1394
1456
|
type: "session.exited",
|
|
@@ -1518,7 +1580,7 @@ function inferDefaultAgent(agents) {
|
|
|
1518
1580
|
}
|
|
1519
1581
|
const DEFAULT_OPENCODE_MODEL_CAPABILITIES = createModelCapabilities({ optionDescriptors: [] });
|
|
1520
1582
|
function openCodeCapabilitiesForModel(input) {
|
|
1521
|
-
const variantValues = Object.
|
|
1583
|
+
const variantValues = Object.entries(input.model.variants ?? {}).filter(([, configuration]) => configuration.disabled !== true).map(([variant]) => variant).toSorted((left, right) => left.localeCompare(right));
|
|
1522
1584
|
const defaultVariant = inferDefaultVariant(input.providerID, variantValues);
|
|
1523
1585
|
const variantOptions = variantValues.map((value) => defaultVariant === value ? {
|
|
1524
1586
|
id: value,
|
|
@@ -1528,7 +1590,7 @@ function openCodeCapabilitiesForModel(input) {
|
|
|
1528
1590
|
id: value,
|
|
1529
1591
|
label: titleCaseSlug(value)
|
|
1530
1592
|
});
|
|
1531
|
-
const primaryAgents = input.agents.filter((agent) => !agent.hidden && (agent.mode === "primary" || agent.mode === "all"));
|
|
1593
|
+
const primaryAgents = [...new Map(input.agents.filter((agent) => !agent.hidden && (agent.mode === "primary" || agent.mode === "all")).map((agent) => [agent.name, agent])).values()].toSorted((left, right) => left.name.localeCompare(right.name));
|
|
1532
1594
|
const defaultAgent = inferDefaultAgent(primaryAgents);
|
|
1533
1595
|
const agentOptions = primaryAgents.map((agent) => defaultAgent === agent.name ? {
|
|
1534
1596
|
id: agent.name,
|
|
@@ -1554,16 +1616,19 @@ function openCodeCapabilitiesForModel(input) {
|
|
|
1554
1616
|
}
|
|
1555
1617
|
function flattenOpenCodeModels(input) {
|
|
1556
1618
|
const connected = new Set(input.providerList.connected);
|
|
1557
|
-
const models =
|
|
1619
|
+
const models = /* @__PURE__ */ new Map();
|
|
1558
1620
|
for (const provider of input.providerList.all) {
|
|
1559
1621
|
if (!connected.has(provider.id)) continue;
|
|
1560
1622
|
for (const model of Object.values(provider.models)) {
|
|
1623
|
+
const modelId = nonEmptyTrimmed(model.id);
|
|
1561
1624
|
const name = nonEmptyTrimmed(model.name);
|
|
1562
|
-
if (!name) continue;
|
|
1625
|
+
if (!modelId || !name) continue;
|
|
1563
1626
|
const subProvider = nonEmptyTrimmed(provider.name);
|
|
1564
1627
|
const shortName = subProvider ? deriveShortNameByStrippingPrefix(name, subProvider) : void 0;
|
|
1565
|
-
|
|
1566
|
-
|
|
1628
|
+
const slug = `${provider.id}/${modelId}`;
|
|
1629
|
+
if (models.has(slug)) continue;
|
|
1630
|
+
models.set(slug, {
|
|
1631
|
+
slug,
|
|
1567
1632
|
name,
|
|
1568
1633
|
...subProvider ? { subProvider } : {},
|
|
1569
1634
|
...shortName ? { shortName } : {},
|
|
@@ -1576,7 +1641,7 @@ function flattenOpenCodeModels(input) {
|
|
|
1576
1641
|
});
|
|
1577
1642
|
}
|
|
1578
1643
|
}
|
|
1579
|
-
return models.toSorted((left, right) => left.name.localeCompare(right.name));
|
|
1644
|
+
return [...models.values()].toSorted((left, right) => left.name.localeCompare(right.name) || left.slug.localeCompare(right.slug));
|
|
1580
1645
|
}
|
|
1581
1646
|
/**
|
|
1582
1647
|
* Strip a leading provider prefix from `name` so the chat-box trigger doesn't
|
|
@@ -1709,7 +1774,7 @@ const checkOpenCodeProviderStatus = Effect.fn("checkOpenCodeProviderStatus")(fun
|
|
|
1709
1774
|
})));
|
|
1710
1775
|
if (inventoryExit._tag === "Failure") return fallback(Cause.squash(inventoryExit.cause), version);
|
|
1711
1776
|
const models = providerModelsFromSettings(flattenOpenCodeModels(inventoryExit.value), PROVIDER, customModels, DEFAULT_OPENCODE_MODEL_CAPABILITIES);
|
|
1712
|
-
const connectedCount = inventoryExit.value.providerList.connected.
|
|
1777
|
+
const connectedCount = new Set(inventoryExit.value.providerList.connected).size;
|
|
1713
1778
|
return buildServerProvider({
|
|
1714
1779
|
presentation: OPENCODE_PRESENTATION,
|
|
1715
1780
|
enabled: true,
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
const require_rolldown_runtime = require("./rolldown-runtime-LGfotAqq.cjs");
|
|
4
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
4
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-B9B7bGv9.cjs");
|
|
5
5
|
const require_Metrics = require("./Metrics-DIjMQ5pa.cjs");
|
|
6
6
|
const require_bin = require("./bin.cjs");
|
|
7
7
|
const require_sourceControlContextFormatter = require("./sourceControlContextFormatter-BDZqn-4T.cjs");
|
|
8
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
8
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-BF1eBatf.cjs");
|
|
9
9
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
10
10
|
let effect = require("effect");
|
|
11
11
|
let effect_unstable_http = require("effect/unstable/http");
|
|
@@ -114,12 +114,32 @@ const makeOpenCodeTextGeneration = effect.Effect.fn("makeOpenCodeTextGeneration"
|
|
|
114
114
|
operation: input.operation,
|
|
115
115
|
detail: "OpenCode model selection must use the 'provider/model' format."
|
|
116
116
|
});
|
|
117
|
-
const
|
|
118
|
-
|
|
119
|
-
|
|
117
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
118
|
+
if (declaredAttachmentBytes > 52428800) return yield* new require_collectUint8StreamText.TextGenerationError({
|
|
119
|
+
operation: input.operation,
|
|
120
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
121
|
+
});
|
|
122
|
+
const attachmentUrlById = /* @__PURE__ */ new Map();
|
|
123
|
+
let attachmentTotalBytes = 0;
|
|
124
|
+
for (const attachment of input.attachments ?? []) {
|
|
125
|
+
const persisted = require_bin.readPersistedAttachment({
|
|
120
126
|
attachmentsDir: serverConfig.attachmentsDir,
|
|
121
127
|
attachment
|
|
122
|
-
})
|
|
128
|
+
});
|
|
129
|
+
if (!persisted.ok) return yield* new require_collectUint8StreamText.TextGenerationError({
|
|
130
|
+
operation: input.operation,
|
|
131
|
+
detail: persisted.reason
|
|
132
|
+
});
|
|
133
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
134
|
+
if (attachmentTotalBytes > 52428800) return yield* new require_collectUint8StreamText.TextGenerationError({
|
|
135
|
+
operation: input.operation,
|
|
136
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
137
|
+
});
|
|
138
|
+
attachmentUrlById.set(attachment.id, `data:${attachment.mimeType};base64,${persisted.bytes.toString("base64")}`);
|
|
139
|
+
}
|
|
140
|
+
const fileParts = require_bin.toOpenCodeFileParts({
|
|
141
|
+
attachments: input.attachments,
|
|
142
|
+
resolveAttachmentUrl: (attachment) => attachmentUrlById.get(attachment.id) ?? null
|
|
123
143
|
});
|
|
124
144
|
const runAgainstServer = (server) => effect.Effect.gen(function* () {
|
|
125
145
|
const client = yield* openCodeRuntime.createOpenCodeSdkClient({
|
|
@@ -542,7 +562,7 @@ function updateProviderSession(context, patch, options) {
|
|
|
542
562
|
}
|
|
543
563
|
const stopOpenCodeContext = effect.Effect.fn("stopOpenCodeContext")(function* (context) {
|
|
544
564
|
if (yield* effect.Ref.getAndSet(context.stopped, true)) return false;
|
|
545
|
-
yield* require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID
|
|
565
|
+
yield* effect.Effect.forEach([context.openCodeSessionId, ...context.childSessionIds], (sessionID) => require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(effect.Effect.ignore({ log: true })), { discard: true });
|
|
546
566
|
yield* effect.Scope.close(context.sessionScope, effect.Exit.void);
|
|
547
567
|
return true;
|
|
548
568
|
});
|
|
@@ -629,6 +649,13 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
629
649
|
}
|
|
630
650
|
});
|
|
631
651
|
});
|
|
652
|
+
const emitStoppedOpenCodeChildren = effect.Effect.fn("emitStoppedOpenCodeChildren")(function* (context, raw) {
|
|
653
|
+
for (const subagent of context.subagentBySessionId.values()) yield* emitOpenCodeSubagentCompleted(context, {
|
|
654
|
+
subagent,
|
|
655
|
+
status: subagentCompletionStatus("stopped"),
|
|
656
|
+
raw
|
|
657
|
+
});
|
|
658
|
+
});
|
|
632
659
|
const bindOpenCodeSubtaskPart = effect.Effect.fn("bindOpenCodeSubtaskPart")(function* (context, part, raw) {
|
|
633
660
|
const partKey = scopedOpenCodeId(part.sessionID, part.id);
|
|
634
661
|
const existing = context.subagentBySubtaskPartId.get(partKey);
|
|
@@ -722,7 +749,7 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
722
749
|
}
|
|
723
750
|
}).pipe(effect.Effect.ignore);
|
|
724
751
|
sessions.delete(context.session.threadId);
|
|
725
|
-
yield* require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID
|
|
752
|
+
yield* effect.Effect.forEach([context.openCodeSessionId, ...context.childSessionIds], (sessionID) => require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(effect.Effect.ignore({ log: true })), { discard: true });
|
|
726
753
|
yield* effect.Scope.close(context.sessionScope, effect.Exit.void);
|
|
727
754
|
});
|
|
728
755
|
/** Emit content.delta and item.completed events for an assistant text part. */
|
|
@@ -1278,12 +1305,35 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1278
1305
|
});
|
|
1279
1306
|
const formatted = require_sourceControlContextFormatter.formatSourceControlContextsForAgent(input.sourceControlContexts ?? []);
|
|
1280
1307
|
let text = formatted ? formatted + "\n\n" + (input.input?.trim() ?? "") : input.input?.trim();
|
|
1281
|
-
const
|
|
1282
|
-
|
|
1283
|
-
|
|
1308
|
+
const attachmentUrlById = /* @__PURE__ */ new Map();
|
|
1309
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
1310
|
+
if (declaredAttachmentBytes > 52428800) return yield* new require_bin.ProviderAdapterRequestError({
|
|
1311
|
+
provider: PROVIDER$1,
|
|
1312
|
+
method: "session.prompt",
|
|
1313
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
1314
|
+
});
|
|
1315
|
+
let attachmentTotalBytes = 0;
|
|
1316
|
+
for (const attachment of input.attachments ?? []) {
|
|
1317
|
+
const persisted = require_bin.readPersistedAttachment({
|
|
1284
1318
|
attachmentsDir: serverConfig.attachmentsDir,
|
|
1285
1319
|
attachment
|
|
1286
|
-
})
|
|
1320
|
+
});
|
|
1321
|
+
if (!persisted.ok) return yield* new require_bin.ProviderAdapterRequestError({
|
|
1322
|
+
provider: PROVIDER$1,
|
|
1323
|
+
method: "session.prompt",
|
|
1324
|
+
detail: persisted.reason
|
|
1325
|
+
});
|
|
1326
|
+
attachmentUrlById.set(attachment.id, `data:${attachment.mimeType};base64,${persisted.bytes.toString("base64")}`);
|
|
1327
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
1328
|
+
if (attachmentTotalBytes > 52428800) return yield* new require_bin.ProviderAdapterRequestError({
|
|
1329
|
+
provider: PROVIDER$1,
|
|
1330
|
+
method: "session.prompt",
|
|
1331
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
1332
|
+
});
|
|
1333
|
+
}
|
|
1334
|
+
const fileParts = require_bin.toOpenCodeFileParts({
|
|
1335
|
+
attachments: input.attachments,
|
|
1336
|
+
resolveAttachmentUrl: (attachment) => attachmentUrlById.get(attachment.id) ?? null
|
|
1287
1337
|
});
|
|
1288
1338
|
if ((!text || text.length === 0) && fileParts.length === 0) return yield* new require_bin.ProviderAdapterValidationError({
|
|
1289
1339
|
provider: PROVIDER$1,
|
|
@@ -1349,7 +1399,13 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1349
1399
|
});
|
|
1350
1400
|
const interruptTurn = effect.Effect.fn("interruptTurn")(function* (threadId, turnId) {
|
|
1351
1401
|
const context = ensureSessionContext(sessions, threadId);
|
|
1352
|
-
yield* require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID: context.openCodeSessionId })).pipe(effect.Effect.mapError(toRequestError));
|
|
1402
|
+
const rootAbortExit = yield* require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID: context.openCodeSessionId })).pipe(effect.Effect.mapError(toRequestError), effect.Effect.exit);
|
|
1403
|
+
yield* effect.Effect.forEach(context.childSessionIds, (sessionID) => require_bin.runOpenCodeSdk("session.abort", () => context.client.session.abort({ sessionID })).pipe(effect.Effect.ignore({ log: true })), { discard: true });
|
|
1404
|
+
yield* emitStoppedOpenCodeChildren(context, {
|
|
1405
|
+
method: "session.abort",
|
|
1406
|
+
reason: "turn-interrupted"
|
|
1407
|
+
});
|
|
1408
|
+
if (effect.Exit.isFailure(rootAbortExit)) return yield* effect.Effect.failCause(rootAbortExit.cause);
|
|
1353
1409
|
if (turnId ?? context.activeTurnId) yield* emitForContext(context, {
|
|
1354
1410
|
...yield* buildEventBase({
|
|
1355
1411
|
threadId,
|
|
@@ -1361,14 +1417,16 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1361
1417
|
});
|
|
1362
1418
|
const respondToRequest = effect.Effect.fn("respondToRequest")(function* (threadId, requestId, decision) {
|
|
1363
1419
|
const context = ensureSessionContext(sessions, threadId);
|
|
1364
|
-
|
|
1420
|
+
const request = context.pendingPermissions.get(requestId);
|
|
1421
|
+
if (!request) return yield* new require_bin.ProviderAdapterRequestError({
|
|
1365
1422
|
provider: PROVIDER$1,
|
|
1366
|
-
method: "permission.
|
|
1423
|
+
method: "permission.respond",
|
|
1367
1424
|
detail: `Unknown pending permission request: ${requestId}`
|
|
1368
1425
|
});
|
|
1369
|
-
yield* require_bin.runOpenCodeSdk("permission.
|
|
1370
|
-
|
|
1371
|
-
|
|
1426
|
+
yield* require_bin.runOpenCodeSdk("permission.respond", () => context.client.permission.respond({
|
|
1427
|
+
sessionID: request.sessionID,
|
|
1428
|
+
permissionID: requestId,
|
|
1429
|
+
response: require_bin.toOpenCodePermissionReply(decision)
|
|
1372
1430
|
})).pipe(effect.Effect.mapError(toRequestError));
|
|
1373
1431
|
});
|
|
1374
1432
|
const respondToUserInput = effect.Effect.fn("respondToUserInput")(function* (threadId, requestId, answers) {
|
|
@@ -1391,6 +1449,10 @@ function makeOpenCodeAdapter(openCodeSettings, options) {
|
|
|
1391
1449
|
threadId
|
|
1392
1450
|
});
|
|
1393
1451
|
if (!(yield* stopOpenCodeContext(context))) return;
|
|
1452
|
+
yield* emitStoppedOpenCodeChildren(context, {
|
|
1453
|
+
method: "session.abort",
|
|
1454
|
+
reason: "session-stopped"
|
|
1455
|
+
});
|
|
1394
1456
|
yield* emitForContext(context, {
|
|
1395
1457
|
...yield* buildEventBase({ threadId }),
|
|
1396
1458
|
type: "session.exited",
|
|
@@ -1520,7 +1582,7 @@ function inferDefaultAgent(agents) {
|
|
|
1520
1582
|
}
|
|
1521
1583
|
const DEFAULT_OPENCODE_MODEL_CAPABILITIES = require_bin.createModelCapabilities({ optionDescriptors: [] });
|
|
1522
1584
|
function openCodeCapabilitiesForModel(input) {
|
|
1523
|
-
const variantValues = Object.
|
|
1585
|
+
const variantValues = Object.entries(input.model.variants ?? {}).filter(([, configuration]) => configuration.disabled !== true).map(([variant]) => variant).toSorted((left, right) => left.localeCompare(right));
|
|
1524
1586
|
const defaultVariant = inferDefaultVariant(input.providerID, variantValues);
|
|
1525
1587
|
const variantOptions = variantValues.map((value) => defaultVariant === value ? {
|
|
1526
1588
|
id: value,
|
|
@@ -1530,7 +1592,7 @@ function openCodeCapabilitiesForModel(input) {
|
|
|
1530
1592
|
id: value,
|
|
1531
1593
|
label: titleCaseSlug(value)
|
|
1532
1594
|
});
|
|
1533
|
-
const primaryAgents = input.agents.filter((agent) => !agent.hidden && (agent.mode === "primary" || agent.mode === "all"));
|
|
1595
|
+
const primaryAgents = [...new Map(input.agents.filter((agent) => !agent.hidden && (agent.mode === "primary" || agent.mode === "all")).map((agent) => [agent.name, agent])).values()].toSorted((left, right) => left.name.localeCompare(right.name));
|
|
1534
1596
|
const defaultAgent = inferDefaultAgent(primaryAgents);
|
|
1535
1597
|
const agentOptions = primaryAgents.map((agent) => defaultAgent === agent.name ? {
|
|
1536
1598
|
id: agent.name,
|
|
@@ -1556,16 +1618,19 @@ function openCodeCapabilitiesForModel(input) {
|
|
|
1556
1618
|
}
|
|
1557
1619
|
function flattenOpenCodeModels(input) {
|
|
1558
1620
|
const connected = new Set(input.providerList.connected);
|
|
1559
|
-
const models =
|
|
1621
|
+
const models = /* @__PURE__ */ new Map();
|
|
1560
1622
|
for (const provider of input.providerList.all) {
|
|
1561
1623
|
if (!connected.has(provider.id)) continue;
|
|
1562
1624
|
for (const model of Object.values(provider.models)) {
|
|
1625
|
+
const modelId = require_bin.nonEmptyTrimmed(model.id);
|
|
1563
1626
|
const name = require_bin.nonEmptyTrimmed(model.name);
|
|
1564
|
-
if (!name) continue;
|
|
1627
|
+
if (!modelId || !name) continue;
|
|
1565
1628
|
const subProvider = require_bin.nonEmptyTrimmed(provider.name);
|
|
1566
1629
|
const shortName = subProvider ? deriveShortNameByStrippingPrefix(name, subProvider) : void 0;
|
|
1567
|
-
|
|
1568
|
-
|
|
1630
|
+
const slug = `${provider.id}/${modelId}`;
|
|
1631
|
+
if (models.has(slug)) continue;
|
|
1632
|
+
models.set(slug, {
|
|
1633
|
+
slug,
|
|
1569
1634
|
name,
|
|
1570
1635
|
...subProvider ? { subProvider } : {},
|
|
1571
1636
|
...shortName ? { shortName } : {},
|
|
@@ -1578,7 +1643,7 @@ function flattenOpenCodeModels(input) {
|
|
|
1578
1643
|
});
|
|
1579
1644
|
}
|
|
1580
1645
|
}
|
|
1581
|
-
return models.toSorted((left, right) => left.name.localeCompare(right.name));
|
|
1646
|
+
return [...models.values()].toSorted((left, right) => left.name.localeCompare(right.name) || left.slug.localeCompare(right.slug));
|
|
1582
1647
|
}
|
|
1583
1648
|
/**
|
|
1584
1649
|
* Strip a leading provider prefix from `name` so the chat-box trigger doesn't
|
|
@@ -1711,7 +1776,7 @@ const checkOpenCodeProviderStatus = effect.Effect.fn("checkOpenCodeProviderStatu
|
|
|
1711
1776
|
})));
|
|
1712
1777
|
if (inventoryExit._tag === "Failure") return fallback(effect.Cause.squash(inventoryExit.cause), version);
|
|
1713
1778
|
const models = require_bin.providerModelsFromSettings(flattenOpenCodeModels(inventoryExit.value), PROVIDER, customModels, DEFAULT_OPENCODE_MODEL_CAPABILITIES);
|
|
1714
|
-
const connectedCount = inventoryExit.value.providerList.connected.
|
|
1779
|
+
const connectedCount = new Set(inventoryExit.value.providerList.connected).size;
|
|
1715
1780
|
return require_bin.buildServerProvider({
|
|
1716
1781
|
presentation: OPENCODE_PRESENTATION,
|
|
1717
1782
|
enabled: true,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
3
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-B9B7bGv9.cjs");
|
|
4
4
|
let effect = require("effect");
|
|
5
5
|
let effect_unstable_process = require("effect/unstable/process");
|
|
6
6
|
//#region src/vcs/VcsProcess.ts
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Aa as VcsProcessTimeoutError, Da as VcsOutputDecodeError, Oa as VcsProcessExitError, ka as VcsProcessSpawnError, t as collectUint8StreamText } from "./collectUint8StreamText-RzKEq2NY.mjs";
|
|
4
4
|
import { Context, Duration, Effect, Layer, Option, Schema, Sink, Stream } from "effect";
|
|
5
5
|
import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
|
|
6
6
|
//#region src/vcs/VcsProcess.ts
|