ryco-cli 0.1.13 → 0.1.15
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-Be1KGJfF.cjs → AcpNativeLogging-OhEq3XNp.cjs} +1 -1
- package/dist/{AcpNativeLogging-Ba9Nn9Re.mjs → AcpNativeLogging-qZgtIa5K.mjs} +2 -2
- package/dist/{AzureDevOpsSourceControlProvider-CGlK6M0b.mjs → AzureDevOpsSourceControlProvider-B0YsaJyI.mjs} +3 -3
- package/dist/{AzureDevOpsSourceControlProvider-CVj-F-pW.cjs → AzureDevOpsSourceControlProvider-Dyu8KQ_S.cjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-CEZEd4PX.cjs → BitbucketSourceControlProvider-3VHGKSl1.cjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-BV6iRDi7.mjs → BitbucketSourceControlProvider-B8IPx2Ad.mjs} +3 -3
- package/dist/{ClaudeDriver-lBU7EyUX.cjs → ClaudeDriver-CBCy0_WX.cjs} +176 -11
- package/dist/{ClaudeDriver-rooMNrJz.mjs → ClaudeDriver-DsW8yDj9.mjs} +177 -12
- package/dist/{CodexDriver-CZCIJSLV.cjs → CodexDriver-3TZPgrGk.cjs} +3 -3
- package/dist/{CodexDriver-DBz2rPXb.mjs → CodexDriver-DLwPz5sk.mjs} +4 -4
- package/dist/{CodexTextGeneration-BeG7ymPC.mjs → CodexTextGeneration-D1vV8grr.mjs} +2 -2
- package/dist/{CodexTextGeneration-BvIcyD1P.cjs → CodexTextGeneration-DLHSW4Mz.cjs} +1 -1
- package/dist/{CopilotDriver-CX5zhEdZ.cjs → CopilotDriver-C7a8IhyK.cjs} +20 -16
- package/dist/{CopilotDriver-D36vbGbn.mjs → CopilotDriver-DXvGBv-s.mjs} +21 -17
- package/dist/{CursorDriver-DWuuOSkJ.mjs → CursorDriver-CeB_vMKJ.mjs} +4 -4
- package/dist/{CursorDriver-CPBVeesr.cjs → CursorDriver-uNsDetA3.cjs} +3 -3
- package/dist/{ForgejoSourceControlProvider-CzmmcAZO.cjs → ForgejoSourceControlProvider-CJLksvL_.cjs} +2 -2
- package/dist/{ForgejoSourceControlProvider-CeN7Snfr.mjs → ForgejoSourceControlProvider-Ds0rU_PN.mjs} +3 -3
- package/dist/{GitHubSourceControlProvider-Dmz1LJct.mjs → GitHubSourceControlProvider-C7CJAslU.mjs} +3 -3
- package/dist/{GitHubSourceControlProvider-DfFR9O2o.cjs → GitHubSourceControlProvider-CrYNFu8S.cjs} +2 -2
- package/dist/{GitLabSourceControlProvider-DGoelNmL.cjs → GitLabSourceControlProvider-jbX5M34A.cjs} +2 -2
- package/dist/{GitLabSourceControlProvider-C21lwphV.mjs → GitLabSourceControlProvider-u-Y-e8PV.mjs} +3 -3
- package/dist/{GrokDriver-CIXj_4ry.cjs → GrokDriver-BJ00ZiYg.cjs} +3 -3
- package/dist/{GrokDriver-qKX1a63G.mjs → GrokDriver-CFgjwnvE.mjs} +4 -4
- package/dist/{OpenCodeDriver-DDEuwtXl.cjs → OpenCodeDriver-BTxd2Q3Q.cjs} +487 -207
- package/dist/{OpenCodeDriver-CbdswhqU.mjs → OpenCodeDriver-DNApoGdu.mjs} +487 -207
- package/dist/{SourceControlProviderDiscoveryCatalog-DJWDCoup.cjs → SourceControlProviderDiscoveryCatalog-CPO3a9_U.cjs} +1 -1
- package/dist/{SourceControlProviderDiscoveryCatalog-4_4yahsa.mjs → SourceControlProviderDiscoveryCatalog-hXWNwRMn.mjs} +1 -1
- package/dist/bin.cjs +1324 -340
- package/dist/bin.mjs +1324 -343
- package/dist/client/assets/{AccountSettings-Be5_48k0.js → AccountSettings-Cey-16wq.js} +1 -1
- package/dist/client/assets/{AiFocusSettings-DIpQXLW2.js → AiFocusSettings-CaHQXDaQ.js} +1 -1
- package/dist/client/assets/{AnimatedHeight-BIsV_Z3J.js → AnimatedHeight-BC-qaTJY.js} +1 -1
- package/dist/client/assets/AppearanceSettings-B6UaU-_a.js +1 -0
- package/dist/client/assets/{BranchToolbar.logic-D7slG_zJ.js → BranchToolbar.logic-DILAA3Cz.js} +1 -1
- package/dist/client/assets/ChatRightPanel-D-AL07IU.js +27 -0
- package/dist/client/assets/{ChatThreadRouteView-CocRstME.js → ChatThreadRouteView-tEo-zoCf.js} +1 -1
- package/dist/client/assets/CommandPaletteDialog-s7yf5Y2S.js +1 -0
- package/dist/client/assets/{CompositeItem-F3NGn6aG.js → CompositeItem-97y1QiiT.js} +1 -1
- package/dist/client/assets/{CompositeRoot-CmJGfRtc.js → CompositeRoot-C7Mz4Y_2.js} +1 -1
- package/dist/client/assets/{ConnectionsSettings-CXabxSaH.js → ConnectionsSettings-B0-Hkwof.js} +2 -2
- package/dist/client/assets/{DiagnosticsSettings-CZ3vY43G.js → DiagnosticsSettings-DX5LH9Bt.js} +1 -1
- package/dist/client/assets/{DialogHandle-C4uSr9wX.js → DialogHandle-Cl9dQBJp.js} +1 -1
- package/dist/client/assets/{DialogPopup-Dck8r8Hn.js → DialogPopup-a1M74u16.js} +1 -1
- package/dist/client/assets/DialogRoot-C_DO1gtO.js +1 -0
- package/dist/client/assets/{DialogTitle-CCedPAjV.js → DialogTitle-Bk-w3xLJ.js} +1 -1
- package/dist/client/assets/{DialogTrigger-CYJ7_YcV.js → DialogTrigger-D9nkMFu2.js} +1 -1
- package/dist/client/assets/{DialogViewport-D-CrTM-P.js → DialogViewport-tgJz2Lwn.js} +1 -1
- package/dist/client/assets/{DraftChatThreadRouteView-D8Bt3Qnq.js → DraftChatThreadRouteView-BU2IGTR6.js} +1 -1
- package/dist/client/assets/{ExternalIdentityWeb.logic-D64j70NH.js → ExternalIdentityWeb.logic-Bn1HigS9.js} +1 -1
- package/dist/client/assets/GlassSurface-CDok2tTN.js +1 -0
- package/dist/client/assets/{HostedConnectionControls-DxAXv0Hd.js → HostedConnectionControls-Cux_sRCM.js} +1 -1
- package/dist/client/assets/HostedHubRoot-CyySCdJV.js +1 -0
- package/dist/client/assets/{HostedNativeAuthorizationRoute-CTQe7Vjt.js → HostedNativeAuthorizationRoute-490iDXmk.js} +1 -1
- package/dist/client/assets/{HostedRelayTrustNotice-BldMySVi.js → HostedRelayTrustNotice-CcDOAwgS.js} +1 -1
- package/dist/client/assets/{Icons-CT3nd2MA.js → Icons-BEtED8P8.js} +1 -1
- package/dist/client/assets/{IntegrationsSettingsPanel-D6f3KoqM.js → IntegrationsSettingsPanel-BFTAvxtn.js} +1 -1
- package/dist/client/assets/KeybindingsSettings-VYgbhiZF.js +7 -0
- package/dist/client/assets/{McpServersSettings-B7YqVvV4.js → McpServersSettings-DSDCjoTn.js} +1 -1
- package/dist/client/assets/{MobileSheet-CkeG6_SP.js → MobileSheet-BDvnUC5W.js} +1 -1
- package/dist/client/assets/{NewWorktreeDialog-CKr2ioue.js → NewWorktreeDialog-C65Aifeb.js} +1 -1
- package/dist/client/assets/{NoActiveThreadState-BD-eNmfn.js → NoActiveThreadState-DehHNgAp.js} +1 -1
- package/dist/client/assets/{NodeSecuritySettings-FWM_SeDi.js → NodeSecuritySettings-DW9GJ-kU.js} +1 -1
- package/dist/client/assets/{OpinionatedPluginsSettings-BtZQF4Ze.js → OpinionatedPluginsSettings-DbxPOokL.js} +1 -1
- package/dist/client/assets/{PhoneGetAppInterstitial-CooQgpSw.js → PhoneGetAppInterstitial-CbyVrtDn.js} +1 -1
- package/dist/client/assets/{PhoneGetAppInterstitialBackdrop-B8vfJdZd.js → PhoneGetAppInterstitialBackdrop-BA4R225F.js} +1 -1
- package/dist/client/assets/PhoneHome-c0j_TBEC.js +1 -0
- package/dist/client/assets/PhoneSettingsSurface-5LFRIx_5.js +1 -0
- package/dist/client/assets/{ProjectFavicon-qZGdjYCM.js → ProjectFavicon-CeVJCQCy.js} +1 -1
- package/dist/client/assets/{ProviderModelPicker-D0w23uWo.js → ProviderModelPicker-MFRYAv_3.js} +1 -1
- package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-BkoRegCn.js → ProviderUpdateLaunchNotification.logic-CywRitn3.js} +1 -1
- package/dist/client/assets/ProvidersSettingsPanel-FYBEqSr_.js +1 -0
- package/dist/client/assets/{RedactedSensitiveText-CxtaUiKH.js → RedactedSensitiveText-BuWSWty8.js} +1 -1
- package/dist/client/assets/RootAppShell-5HrP6N8H.js +6 -0
- package/dist/client/assets/{RycoLetterMark-Bk0kvGJ_.js → RycoLetterMark-CZYntY8t.js} +1 -1
- package/dist/client/assets/SettingsDialog-CpwoqGS8.js +1 -0
- package/dist/client/assets/{SettingsPanels-Dr4f2y9l.js → SettingsPanels-COWRB29-.js} +3 -3
- package/dist/client/assets/{SettingsPanels.editor-B2x4U4rW.js → SettingsPanels.editor-lbLEbllb.js} +1 -1
- package/dist/client/assets/SourceControlSettings-DvBNelcO.js +1 -0
- package/dist/client/assets/{StatisticsPage-Bjouapmf.js → StatisticsPage-DxAKqvVX.js} +1 -1
- package/dist/client/assets/{StatisticsPanel-D_khPph6.js → StatisticsPanel-C0xGLlMA.js} +1 -1
- package/dist/client/assets/{StatisticsSettingsLink-Cx43bOeo.js → StatisticsSettingsLink-B7SZerf3.js} +1 -1
- package/dist/client/assets/ThreadStatusIndicators-CIOM98q2.js +0 -0
- package/dist/client/assets/{ThreadTerminalDrawer-DDHEuRGB.js → ThreadTerminalDrawer-DRelLlEP.js} +1 -1
- package/dist/client/assets/{ThreadWorkspacePanel-QF3KwbGm.js → ThreadWorkspacePanel-CktVSliZ.js} +3 -3
- package/dist/client/assets/{ToolbarRootContext-BgqqXVly.js → ToolbarRootContext-B1g8IP6k.js} +1 -1
- package/dist/client/assets/{WorkItemsTab-AOVwVvb7.js → WorkItemsTab-CahU_t_S.js} +12 -12
- package/dist/client/assets/{alert-LqMhbdE9.js → alert-DomE7dAt.js} +1 -1
- package/dist/client/assets/{alert-dialog-DxoA6ky8.js → alert-dialog-9Jyh0e8u.js} +1 -1
- package/dist/client/assets/appearancePreferences-BhNRCg6W.js +1 -0
- package/dist/client/assets/authorization-D8lJzXTE.js +1 -0
- package/dist/client/assets/{badge-CXw6fWrB.js → badge-w43sx8eF.js} +1 -1
- package/dist/client/assets/{branding-BDfN6Spd.js → branding-B7DcCXjn.js} +1 -1
- package/dist/client/assets/{button-BAbJxRzt.js → button-DG8WqjNn.js} +1 -1
- package/dist/client/assets/{capabilities-3zgirmmI.js → capabilities-B1FHGoov.js} +1 -1
- package/dist/client/assets/{chatThreadActions-DQ8aOQ1g.js → chatThreadActions-BZvyhfKr.js} +1 -1
- package/dist/client/assets/{collapsible-dxy6kc2k.js → collapsible-EhAEe5S9.js} +1 -1
- package/dist/client/assets/{command-CGNKG_Oe.js → command-Cyn6yIEa.js} +1 -1
- package/dist/client/assets/composerDraftStore-TYv9j3vY.js +11 -0
- package/dist/client/assets/{data-list-CYKBxN62.js → data-list-DTdqWMGN.js} +1 -1
- package/dist/client/assets/{desktopUpdateAtoms-CyfPW2jg.js → desktopUpdateAtoms-CPlZiFRm.js} +1 -1
- package/dist/client/assets/{desktopWorkspace-DHUZEpfy.js → desktopWorkspace-DEZ30LlY.js} +1 -1
- package/dist/client/assets/device-CHdXzvhB.js +168 -0
- package/dist/client/assets/{dialog-DQsYchqu.js → dialog-BNmFD6Nh.js} +1 -1
- package/dist/client/assets/{draft-input-CkzOk8BY.js → draft-input-dP7F8odz.js} +1 -1
- package/dist/client/assets/editorPreferences-B4GvqMiF.js +1 -0
- package/dist/client/assets/{empty-DwzqNgCP.js → empty-Ccxhyvdf.js} +1 -1
- package/dist/client/assets/{env-B4arEvJg.js → env-Bcq9YR3B.js} +1 -1
- package/dist/client/assets/{getPseudoElementBounds-X62ElHN8.js → getPseudoElementBounds-CO5HJT7x.js} +1 -1
- package/dist/client/assets/{group-D9ER9giz.js → group-CzdKmc45.js} +1 -1
- package/dist/client/assets/{index-CQmEMMQH.js → index-Gre6bNC8.js} +2 -2
- package/dist/client/assets/{input-CHEwW3oH.js → input-BZz4eLRl.js} +1 -1
- package/dist/client/assets/{kbd-DCGQZk18.js → kbd-DbvN3zTb.js} +1 -1
- package/dist/client/assets/{keybindings-CWJ7E9ZI.js → keybindings-BPE3eEAM.js} +1 -1
- package/dist/client/assets/{label-CVFHsLFO.js → label-DZf4lbNF.js} +1 -1
- package/dist/client/assets/{lib-qiiNMGgU.js → lib-DgOYoged.js} +1 -1
- package/dist/client/assets/{liquidGlass-CPsvmaF0.js → liquidGlass-yFkZrRk5.js} +1 -1
- package/dist/client/assets/{logging-M8H3z7rQ.js → logging-81iP6Hps.js} +1 -1
- package/dist/client/assets/main-DlGNPwsH.css +2 -0
- package/dist/client/assets/main-Dz0zookE.js +9 -0
- package/dist/client/assets/{menu-Dvxh8sD5.js → menu-B6UEFcn0.js} +1 -1
- package/dist/client/assets/{popover-CuH9Yrj3.js → popover-BuYzXGwl.js} +1 -1
- package/dist/client/assets/primary-CiDY2oUi.js +2 -0
- package/dist/client/assets/projectPaths-D6fHIU1b.js +1 -0
- package/dist/client/assets/{providerDriverMeta-I0TSo-QI.js → providerDriverMeta-sBwZhQoN.js} +1 -1
- package/dist/client/assets/{providerIconUtils-X0Z3EK-Q.js → providerIconUtils-DiDJeNtT.js} +1 -1
- package/dist/client/assets/providerInstances-vd2eZtHx.js +1 -0
- package/dist/client/assets/providerModels-vd2eZtHx.js +1 -0
- package/dist/client/assets/{qr-code-Bddq6K7S.js → qr-code-Ie92aZvE.js} +1 -1
- package/dist/client/assets/{radio-group-CBZFr4C8.js → radio-group-BuuTEtdC.js} +1 -1
- package/dist/client/assets/{resolveAriaLabelledBy-CD_ugzhJ.js → resolveAriaLabelledBy-0FA0k4xp.js} +1 -1
- package/dist/client/assets/{rightPanelRouteSearch-DB5gQGHK.js → rightPanelRouteSearch-BS8CkNS6.js} +1 -1
- package/dist/client/assets/runtime-CPM0EUhb.js +1 -0
- package/dist/client/assets/{scroll-area-Drsa8bNB.js → scroll-area-C0yF015F.js} +1 -1
- package/dist/client/assets/{scrollEdges-B-cqxY4l.js → scrollEdges-DI5Y3mtR.js} +1 -1
- package/dist/client/assets/{select-BYbVr-yg.js → select-CZukJlTn.js} +1 -1
- package/dist/client/assets/{separator-CdS5bi4Z.js → separator-D4ckGtPe.js} +1 -1
- package/dist/client/assets/session-logic-BalPN1Sc.js +4 -0
- package/dist/client/assets/{settingsDialogStore-ygYoScKe.js → settingsDialogStore-LxRFC5hh.js} +1 -1
- package/dist/client/assets/{settingsLayout-D8glO7f1.js → settingsLayout-CHJT5wtl.js} +1 -1
- package/dist/client/assets/{sheet-BO78gIKZ.js → sheet-BNfImQ-7.js} +1 -1
- package/dist/client/assets/{sidebar-Dm6l2GA6.js → sidebar-CFGg5Tkr.js} +1 -1
- package/dist/client/assets/sidebarProjectFolders-bhNsO9Z_.js +4 -0
- package/dist/client/assets/{sidebarStatusText-D0HT0fek.js → sidebarStatusText-C8QBhZhZ.js} +1 -1
- package/dist/client/assets/{skeleton-CvQSeJbw.js → skeleton-DOgQaVXv.js} +1 -1
- package/dist/client/assets/{spinner-ClF0jOcX.js → spinner-ClQu8SdC.js} +1 -1
- package/dist/client/assets/{src-Vf4LVnMX.js → src-DmPIm3ie.js} +1 -1
- package/dist/client/assets/storeSelectors-Cf2WDMfx.js +1 -0
- package/dist/client/assets/{switch-BTGo9Yip.js → switch-BZjA7VT9.js} +1 -1
- package/dist/client/assets/{terminal-links-CZ3c9AbA.js → terminal-links-CzJomeox.js} +1 -1
- package/dist/client/assets/{textarea-RFPODxWW.js → textarea-DHdmRD1r.js} +1 -1
- package/dist/client/assets/threadPinning-BLqwZebi.js +1 -0
- package/dist/client/assets/{threadPriorityRefreshRuntime-Ct5pnIbX.js → threadPriorityRefreshRuntime-BoNAlBXK.js} +1 -1
- package/dist/client/assets/{toast-CcSCAm4B.js → toast-C-0Ft2jD.js} +1 -1
- package/dist/client/assets/{toggle-I6h33Cu5.js → toggle-DsnOFDbJ.js} +1 -1
- package/dist/client/assets/{toggle-group-mLIkiJtU.js → toggle-group-Chxh9G6t.js} +1 -1
- package/dist/client/assets/{tooltip-C8sAONBj.js → tooltip-C_-9XEfA.js} +1 -1
- package/dist/client/assets/types-Cf2WDMfx.js +1 -0
- package/dist/client/assets/{uiStateStore-B6pjzSjj.js → uiStateStore-DzUrk2GS.js} +1 -1
- package/dist/client/assets/useAtlassian-CoHKzu-e.js +0 -0
- package/dist/client/assets/{useButton-D__1LqCF.js → useButton-BmvYhoMC.js} +1 -1
- package/dist/client/assets/{useCompositeListItem-Cmr_nuuG.js → useCompositeListItem-D0PvH4nv.js} +1 -1
- package/dist/client/assets/{useDebouncedValue-DHjoudTq.js → useDebouncedValue-s0BC8Yyp.js} +1 -1
- package/dist/client/assets/{useFloatingRootContext-D5EZmrCa.js → useFloatingRootContext-CLCaQEJk.js} +1 -1
- package/dist/client/assets/{useHandleNewThread-DX2FtXcP.js → useHandleNewThread-Bw460iXT.js} +1 -1
- package/dist/client/assets/{useLabelableId-DnQJ7amm.js → useLabelableId-CB_9OReR.js} +1 -1
- package/dist/client/assets/{useLocation-CDeYzWW6.js → useLocation-DGJMt6gP.js} +1 -1
- package/dist/client/assets/{useOpenInteractionType-CjtpACKR.js → useOpenInteractionType-BSSI2GzS.js} +1 -1
- package/dist/client/assets/{usePhoneThreadActions-BEa3VzGG.js → usePhoneThreadActions-BIDUSWSI.js} +1 -1
- package/dist/client/assets/{usePopupViewport-BuhsNdVy.js → usePopupViewport-8F-J1h5f.js} +1 -1
- package/dist/client/assets/{useScrollLock-D3tMGsRk.js → useScrollLock-CBz-5_MX.js} +1 -1
- package/dist/client/assets/{useStatistics-CtunoTE-.js → useStatistics-B91973jb.js} +2 -2
- package/dist/client/assets/{useSwipeDismiss-CbgDJvw1.js → useSwipeDismiss-D22_vuiH.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-BCH01d6u.js} +1 -1
- package/dist/client/assets/{useTriggerFocusGuards-CrugmkhX.js → useTriggerFocusGuards-f7afwACm.js} +1 -1
- package/dist/client/assets/{useValueChanged-MQtIzPIU.js → useValueChanged-EkWF0C3k.js} +1 -1
- package/dist/client/assets/{utils-BofFIn5Y.js → utils-CV2fJJxC.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/{collectUint8StreamText-Bb52hlpd.cjs → collectUint8StreamText-Dsbmrw73.cjs} +48 -10
- package/dist/{collectUint8StreamText-EDg4F0TU.mjs → collectUint8StreamText-oFvWyN3_.mjs} +37 -11
- package/dist/{makeManagedServerProvider-itynW7xv.cjs → makeManagedServerProvider-CANTNAsz.cjs} +9 -2
- package/dist/{makeManagedServerProvider-Cf8bNWwc.mjs → makeManagedServerProvider-PLtJj7EV.mjs} +10 -3
- 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/device-B_qvyvtW.js +0 -168
- 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/session-logic-GZix7S2I.js +0 -4
- 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
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { $n as ClaudeSettings,
|
|
3
|
+
import { $n as ClaudeSettings, Ba as ProviderDriverKind, Bo as EventId, Jo as RuntimeRequestId, Ko as ProviderItemId, Mo as ApprovalRequestId, Pn as TextGenerationError, Qo as ThreadId, Va as ProviderInstanceId, Xo as RuntimeSubagentId, Zo as RuntimeTaskId, es as TurnId, qo as RuntimeItemId } from "./collectUint8StreamText-oFvWyN3_.mjs";
|
|
4
4
|
import { nt as sanitizeFeatureBranchName, st as ServerConfig, tt as sanitizeBranchFragment } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import { $ as
|
|
5
|
+
import { $ as parseGenericCliVersion, A as buildThreadTitlePrompt, B as resolveClaudeHomePath, C as validateRankInboxThreadsResult, D as buildIssueContentTitlePrompt, E as buildIssueContentPolishPrompt, F as sanitizeThreadTitle, Fn as resolveProviderMaintenanceCapabilitiesEffect, G as DEFAULT_TIMEOUT_MS, Hn as createModelCapabilities, I as toJsonSchemaObject, In as compareCliVersions, J as buildServerProvider, K as buildBooleanOptionDescriptor, Kn as getProviderOptionCurrentValue, L as makeClaudeCapabilitiesCacheKey, Ln as ServerSettingsService, M as normalizeCliError, N as sanitizeCommitSubject, O as buildPrContentPrompt, P as sanitizePrTitle, Pn as normalizeCommandPath, R as makeClaudeContinuationGroupKey, S as checkRtkAvailability, T as buildCommitMessagePrompt, Un as getModelSelectionBooleanOptionValue, V as mergeProviderInstanceEnvironment, Vn as applyClaudePromptEffortPrefix, Wn as getModelSelectionStringOptionValue, X as detailFromResult, Xn as resolvePromptInjectedEffort, Z as isCommandMissingCause, at as installAgentControlNativeHttp, b as makeEventNdjsonLogger, ct as ProviderAdapterProcessError, dt as ProviderAdapterSessionNotFoundError, et as providerModelsFromSettings, ft as ProviderAdapterValidationError, i as classifyTaskAgentKind, jn as makePackageManagedProviderMaintenanceResolver, k as buildThreadPriorityPrompt, kn as enrichProviderSnapshotWithVersionAdvisory, lt as ProviderAdapterRequestError, n as AgentControlSessionRegistry, nt as AGENT_CONTROL_INTERNAL_SERVER_NAME, ot as redactAgentControlSecrets, pt as ProviderDriverError, q as buildSelectOptionDescriptor, qn as getProviderOptionDescriptors, rt as agentControlHostContext, st as createProcessDeviceToolBinding, t as makeServerQueueMetrics, tt as spawnAndCollect, ut as ProviderAdapterSessionClosedError, w as buildBranchNamePrompt, x as buildTokenReductionInstructions, y as ProviderEventLoggers, z as makeClaudeEnvironment, zn as resolveAttachmentPath } from "./bin.mjs";
|
|
6
6
|
import { t as formatSourceControlContextsForAgent } from "./sourceControlContextFormatter-DEwpnVAH.mjs";
|
|
7
7
|
import { n as formatProjectCustomSystemPrompt } from "./ProjectCustomSystemPrompt-CS1nulhL.mjs";
|
|
8
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
8
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-PLtJj7EV.mjs";
|
|
9
9
|
import { t as defaultProviderContinuationIdentity } from "./ProviderDriver-kCV60GKk.mjs";
|
|
10
10
|
import { Cache, Cause, DateTime, Deferred, Duration, Effect, Exit, Fiber, FileSystem, Option, Path, Queue, Ref, Result, Schema, Stream } from "effect";
|
|
11
11
|
import { HttpClient } from "effect/unstable/http";
|
|
@@ -879,6 +879,87 @@ function parseCliArgs(args, options) {
|
|
|
879
879
|
};
|
|
880
880
|
}
|
|
881
881
|
//#endregion
|
|
882
|
+
//#region src/provider/contextCompactionPolicy.ts
|
|
883
|
+
const CONTEXT_COMPACTION_TRIGGER_RATIO = .8;
|
|
884
|
+
function initialContextCompactionPolicyState(generation) {
|
|
885
|
+
return {
|
|
886
|
+
generation,
|
|
887
|
+
phase: "idle",
|
|
888
|
+
armed: true
|
|
889
|
+
};
|
|
890
|
+
}
|
|
891
|
+
/**
|
|
892
|
+
* Decides whether a context snapshot should arm automatic compaction.
|
|
893
|
+
*
|
|
894
|
+
* The lower rearm watermark prevents a repeated high-water snapshot from
|
|
895
|
+
* creating another request after a completed or interrupted compaction. A
|
|
896
|
+
* generation mismatch is always ignored so a late observation from a replaced
|
|
897
|
+
* provider session cannot mutate the active one.
|
|
898
|
+
*/
|
|
899
|
+
function observeContextCompaction(state, input) {
|
|
900
|
+
if (input.generation !== state.generation || state.phase === "disabled") return {
|
|
901
|
+
state,
|
|
902
|
+
trigger: false
|
|
903
|
+
};
|
|
904
|
+
const { usedTokens, maxTokens } = input.usage;
|
|
905
|
+
if (maxTokens === void 0 || !Number.isFinite(maxTokens) || maxTokens <= 0 || !Number.isFinite(usedTokens) || usedTokens < 0) return {
|
|
906
|
+
state,
|
|
907
|
+
trigger: false
|
|
908
|
+
};
|
|
909
|
+
const ratio = usedTokens / maxTokens;
|
|
910
|
+
if (state.phase !== "idle") return {
|
|
911
|
+
state,
|
|
912
|
+
trigger: false
|
|
913
|
+
};
|
|
914
|
+
if (!state.armed) return ratio <= .65 ? {
|
|
915
|
+
state: {
|
|
916
|
+
...state,
|
|
917
|
+
armed: true
|
|
918
|
+
},
|
|
919
|
+
trigger: false
|
|
920
|
+
} : {
|
|
921
|
+
state,
|
|
922
|
+
trigger: false
|
|
923
|
+
};
|
|
924
|
+
if (ratio < .8) return {
|
|
925
|
+
state,
|
|
926
|
+
trigger: false
|
|
927
|
+
};
|
|
928
|
+
return {
|
|
929
|
+
state: {
|
|
930
|
+
...state,
|
|
931
|
+
phase: "requested",
|
|
932
|
+
armed: false
|
|
933
|
+
},
|
|
934
|
+
trigger: true,
|
|
935
|
+
windowTokens: Math.max(1, Math.floor(maxTokens * CONTEXT_COMPACTION_TRIGGER_RATIO))
|
|
936
|
+
};
|
|
937
|
+
}
|
|
938
|
+
function markContextCompactionStarted(state, generation) {
|
|
939
|
+
if (generation !== state.generation || state.phase === "disabled") return state;
|
|
940
|
+
return {
|
|
941
|
+
...state,
|
|
942
|
+
phase: "compacting",
|
|
943
|
+
armed: false
|
|
944
|
+
};
|
|
945
|
+
}
|
|
946
|
+
function settleContextCompaction(state, generation) {
|
|
947
|
+
if (generation !== state.generation || state.phase === "disabled") return state;
|
|
948
|
+
return {
|
|
949
|
+
...state,
|
|
950
|
+
phase: "idle",
|
|
951
|
+
armed: false
|
|
952
|
+
};
|
|
953
|
+
}
|
|
954
|
+
function disableContextCompaction(state, generation) {
|
|
955
|
+
if (generation !== state.generation) return state;
|
|
956
|
+
return {
|
|
957
|
+
...state,
|
|
958
|
+
phase: "disabled",
|
|
959
|
+
armed: false
|
|
960
|
+
};
|
|
961
|
+
}
|
|
962
|
+
//#endregion
|
|
882
963
|
//#region src/provider/Layers/ClaudeAdapter.ts
|
|
883
964
|
/**
|
|
884
965
|
* ClaudeAdapterLive - Scoped live implementation for the Claude Agent provider adapter.
|
|
@@ -889,6 +970,25 @@ function parseCliArgs(args, options) {
|
|
|
889
970
|
* @module ClaudeAdapterLive
|
|
890
971
|
*/
|
|
891
972
|
const PROVIDER = ProviderDriverKind.make("claudeAgent");
|
|
973
|
+
const CLAUDE_SUBAGENT_ATTRIBUTION_CACHE_CAP = 256;
|
|
974
|
+
function rememberClaudeSubagentLaunchInput(context, toolUseId, input) {
|
|
975
|
+
if (!context.subagentLaunchInputByToolUseId.has(toolUseId) && context.subagentLaunchInputByToolUseId.size >= CLAUDE_SUBAGENT_ATTRIBUTION_CACHE_CAP) {
|
|
976
|
+
const oldestToolUseId = context.subagentLaunchInputByToolUseId.keys().next().value;
|
|
977
|
+
if (oldestToolUseId !== void 0) context.subagentLaunchInputByToolUseId.delete(oldestToolUseId);
|
|
978
|
+
}
|
|
979
|
+
context.subagentLaunchInputByToolUseId.set(toolUseId, input);
|
|
980
|
+
}
|
|
981
|
+
function rememberClaudeSubagentModel(context, toolUseId, model) {
|
|
982
|
+
if (!context.subagentModelByToolUseId.has(toolUseId) && context.subagentModelByToolUseId.size >= CLAUDE_SUBAGENT_ATTRIBUTION_CACHE_CAP) {
|
|
983
|
+
const oldestToolUseId = context.subagentModelByToolUseId.keys().next().value;
|
|
984
|
+
if (oldestToolUseId !== void 0) context.subagentModelByToolUseId.delete(oldestToolUseId);
|
|
985
|
+
}
|
|
986
|
+
context.subagentModelByToolUseId.set(toolUseId, model);
|
|
987
|
+
}
|
|
988
|
+
function claudeSubagentLaunchModel(input) {
|
|
989
|
+
const model = trimmedClaudeString(input?.model);
|
|
990
|
+
return model?.toLowerCase() === "inherit" ? void 0 : model;
|
|
991
|
+
}
|
|
892
992
|
function isUuid(value) {
|
|
893
993
|
return /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(value);
|
|
894
994
|
}
|
|
@@ -981,6 +1081,12 @@ function normalizeClaudeTokenUsage(value, contextWindow) {
|
|
|
981
1081
|
...typeof usage.duration_ms === "number" && Number.isFinite(usage.duration_ms) ? { durationMs: usage.duration_ms } : {}
|
|
982
1082
|
};
|
|
983
1083
|
}
|
|
1084
|
+
function withAutomaticCompactionCapability(usage, supported) {
|
|
1085
|
+
return supported ? {
|
|
1086
|
+
...usage,
|
|
1087
|
+
compactsAutomatically: true
|
|
1088
|
+
} : usage;
|
|
1089
|
+
}
|
|
984
1090
|
function asCanonicalTurnId(value) {
|
|
985
1091
|
return value;
|
|
986
1092
|
}
|
|
@@ -1192,7 +1298,7 @@ function claudeTaskMetadata(message) {
|
|
|
1192
1298
|
].filter(([, value]) => value !== void 0));
|
|
1193
1299
|
return Object.keys(metadata).length > 0 ? metadata : void 0;
|
|
1194
1300
|
}
|
|
1195
|
-
function makeClaudeTaskSubagentRef(existing, message) {
|
|
1301
|
+
function makeClaudeTaskSubagentRef(existing, message, linkage) {
|
|
1196
1302
|
const taskType = claudeTaskField(message, "task_type");
|
|
1197
1303
|
const lastToolName = claudeTaskField(message, "last_tool_name");
|
|
1198
1304
|
const description = claudeTaskField(message, "description") ?? existing?.description;
|
|
@@ -1207,6 +1313,8 @@ function makeClaudeTaskSubagentRef(existing, message) {
|
|
|
1207
1313
|
capability: "summary",
|
|
1208
1314
|
label,
|
|
1209
1315
|
...description && { description },
|
|
1316
|
+
...linkage?.model ?? existing?.model ? { model: linkage?.model ?? existing?.model } : {},
|
|
1317
|
+
...linkage?.effort ?? existing?.effort ? { effort: linkage?.effort ?? existing?.effort } : {},
|
|
1210
1318
|
providerTaskId: RuntimeTaskId.make(message.task_id),
|
|
1211
1319
|
...Object.keys(metadata).length > 0 && { metadata }
|
|
1212
1320
|
};
|
|
@@ -1502,6 +1610,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
1502
1610
|
options: input.options
|
|
1503
1611
|
}));
|
|
1504
1612
|
const sessions = /* @__PURE__ */ new Map();
|
|
1613
|
+
let nextSessionGeneration = 0;
|
|
1505
1614
|
const runtimeEventQueue = yield* Queue.bounded(2048);
|
|
1506
1615
|
const runtimeEventQueueMetrics = yield* makeServerQueueMetrics({
|
|
1507
1616
|
queue: "provider.adapter.runtimeEvents",
|
|
@@ -1847,6 +1956,40 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
1847
1956
|
}
|
|
1848
1957
|
});
|
|
1849
1958
|
});
|
|
1959
|
+
const emitCompactionUnavailableWarning = Effect.fn("emitCompactionUnavailableWarning")(function* (context) {
|
|
1960
|
+
if (context.compactionUnavailableWarningEmitted) return;
|
|
1961
|
+
context.compactionUnavailableWarningEmitted = true;
|
|
1962
|
+
yield* emitRuntimeWarning(context, "Automatic context compaction is unavailable for this session. Start a new session if the context window fills.");
|
|
1963
|
+
});
|
|
1964
|
+
const maybeEnableAutomaticCompaction = Effect.fn("maybeEnableAutomaticCompaction")(function* (context, usage) {
|
|
1965
|
+
if (context.stopped || sessions.get(context.session.threadId) !== context) return;
|
|
1966
|
+
const decision = observeContextCompaction(context.compactionPolicy, {
|
|
1967
|
+
generation: context.generation,
|
|
1968
|
+
usage
|
|
1969
|
+
});
|
|
1970
|
+
context.compactionPolicy = decision.state;
|
|
1971
|
+
const windowTokens = decision.windowTokens;
|
|
1972
|
+
if (!decision.trigger || windowTokens === void 0) return;
|
|
1973
|
+
const applyFlagSettings = context.query.applyFlagSettings;
|
|
1974
|
+
if (!context.supportsAutomaticCompaction || !applyFlagSettings) {
|
|
1975
|
+
context.compactionPolicy = disableContextCompaction(context.compactionPolicy, context.generation);
|
|
1976
|
+
yield* emitCompactionUnavailableWarning(context);
|
|
1977
|
+
return;
|
|
1978
|
+
}
|
|
1979
|
+
const generation = context.generation;
|
|
1980
|
+
const applied = yield* Effect.tryPromise({
|
|
1981
|
+
try: () => applyFlagSettings.call(context.query, {
|
|
1982
|
+
autoCompactEnabled: true,
|
|
1983
|
+
autoCompactWindow: windowTokens
|
|
1984
|
+
}),
|
|
1985
|
+
catch: () => void 0
|
|
1986
|
+
}).pipe(Effect.as(true), Effect.timeout("3 seconds"), Effect.catch(() => Effect.succeed(false)));
|
|
1987
|
+
if (context.stopped || context.generation !== generation || sessions.get(context.session.threadId) !== context) return;
|
|
1988
|
+
if (!applied) {
|
|
1989
|
+
context.compactionPolicy = disableContextCompaction(context.compactionPolicy, generation);
|
|
1990
|
+
yield* emitCompactionUnavailableWarning(context);
|
|
1991
|
+
}
|
|
1992
|
+
});
|
|
1850
1993
|
const completeTurn = Effect.fn("completeTurn")(function* (context, status, errorMessage, result) {
|
|
1851
1994
|
const resultContextWindow = maxClaudeContextWindowFromModelUsage(result?.modelUsage);
|
|
1852
1995
|
if (resultContextWindow !== void 0) context.lastKnownContextWindow = resultContextWindow;
|
|
@@ -1854,11 +1997,12 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
1854
1997
|
const accumulatedTotalProcessedTokens = accumulatedSnapshot?.totalProcessedTokens ?? accumulatedSnapshot?.usedTokens;
|
|
1855
1998
|
const lastGoodUsage = context.lastKnownTokenUsage;
|
|
1856
1999
|
const maxTokens = resultContextWindow ?? context.lastKnownContextWindow;
|
|
1857
|
-
const
|
|
2000
|
+
const rawUsageSnapshot = lastGoodUsage ? {
|
|
1858
2001
|
...lastGoodUsage,
|
|
1859
2002
|
...typeof maxTokens === "number" && Number.isFinite(maxTokens) && maxTokens > 0 ? { maxTokens } : {},
|
|
1860
2003
|
...typeof accumulatedTotalProcessedTokens === "number" && Number.isFinite(accumulatedTotalProcessedTokens) && accumulatedTotalProcessedTokens > lastGoodUsage.usedTokens ? { totalProcessedTokens: accumulatedTotalProcessedTokens } : {}
|
|
1861
2004
|
} : accumulatedSnapshot;
|
|
2005
|
+
const usageSnapshot = rawUsageSnapshot ? withAutomaticCompactionCapability(rawUsageSnapshot, context.supportsAutomaticCompaction) : void 0;
|
|
1862
2006
|
const turnState = context.turnState;
|
|
1863
2007
|
if (!turnState) {
|
|
1864
2008
|
if (usageSnapshot) {
|
|
@@ -1964,6 +2108,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
1964
2108
|
};
|
|
1965
2109
|
if (context.agentControl) yield* context.agentControl.retireTurn(turnState.turnId);
|
|
1966
2110
|
yield* updateResumeCursor(context);
|
|
2111
|
+
if (status === "completed" && usageSnapshot) yield* maybeEnableAutomaticCompaction(context, usageSnapshot);
|
|
1967
2112
|
});
|
|
1968
2113
|
const handleStreamEvent = Effect.fn("handleStreamEvent")(function* (context, message) {
|
|
1969
2114
|
if (message.type !== "stream_event") return;
|
|
@@ -2034,6 +2179,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2034
2179
|
};
|
|
2035
2180
|
const nextFingerprint = parsedInput && Object.keys(parsedInput).length > 0 ? toolInputFingerprint(parsedInput) : void 0;
|
|
2036
2181
|
context.inFlightTools.set(event.index, nextTool);
|
|
2182
|
+
if (nextTool.itemType === "collab_agent_tool_call" && parsedInput) rememberClaudeSubagentLaunchInput(context, nextTool.itemId, parsedInput);
|
|
2037
2183
|
if (!parsedInput || !nextFingerprint || tool.lastEmittedInputFingerprint === nextFingerprint) return;
|
|
2038
2184
|
nextTool = {
|
|
2039
2185
|
...nextTool,
|
|
@@ -2115,6 +2261,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2115
2261
|
...parentToolUseId ? { parentToolUseId } : {}
|
|
2116
2262
|
};
|
|
2117
2263
|
context.inFlightTools.set(index, tool);
|
|
2264
|
+
if (itemType === "collab_agent_tool_call") rememberClaudeSubagentLaunchInput(context, itemId, toolInput);
|
|
2118
2265
|
const stamp = yield* makeEventStamp();
|
|
2119
2266
|
yield* offerRuntimeEventForContext(context, {
|
|
2120
2267
|
type: "item.started",
|
|
@@ -2282,6 +2429,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2282
2429
|
const snapshotModel = trimmedClaudeString(message.message.model);
|
|
2283
2430
|
const owningAgent = owningTaskId ? context.taskAgents.get(owningTaskId) : void 0;
|
|
2284
2431
|
if (owningAgent && snapshotModel) owningAgent.model = snapshotModel;
|
|
2432
|
+
else if (snapshotModel) rememberClaudeSubagentModel(context, assistantParentToolUseId, snapshotModel);
|
|
2285
2433
|
context.lastAssistantUuid = message.uuid;
|
|
2286
2434
|
yield* updateResumeCursor(context);
|
|
2287
2435
|
return;
|
|
@@ -2504,6 +2652,11 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2504
2652
|
});
|
|
2505
2653
|
return;
|
|
2506
2654
|
case "status":
|
|
2655
|
+
if (message.status === "compacting") context.compactionPolicy = markContextCompactionStarted(context.compactionPolicy, context.generation);
|
|
2656
|
+
else if (message.compact_result === "failed") {
|
|
2657
|
+
context.compactionPolicy = disableContextCompaction(context.compactionPolicy, context.generation);
|
|
2658
|
+
yield* emitCompactionUnavailableWarning(context);
|
|
2659
|
+
} else if (message.compact_result === "success") context.compactionPolicy = settleContextCompaction(context.compactionPolicy, context.generation);
|
|
2507
2660
|
yield* offerRuntimeEventForContext(context, {
|
|
2508
2661
|
...base,
|
|
2509
2662
|
type: "session.state.changed",
|
|
@@ -2515,6 +2668,8 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2515
2668
|
});
|
|
2516
2669
|
return;
|
|
2517
2670
|
case "compact_boundary":
|
|
2671
|
+
context.compactionPolicy = settleContextCompaction(context.compactionPolicy, context.generation);
|
|
2672
|
+
context.lastKnownTokenUsage = void 0;
|
|
2518
2673
|
yield* offerRuntimeEventForContext(context, {
|
|
2519
2674
|
...base,
|
|
2520
2675
|
type: "thread.state.changed",
|
|
@@ -2564,8 +2719,10 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2564
2719
|
case "task_started": {
|
|
2565
2720
|
const launchingTool = message.tool_use_id ? Array.from(context.inFlightTools.values()).find((tool) => tool.itemId === message.tool_use_id) : void 0;
|
|
2566
2721
|
const owningAgentId = launchingTool?.agentId;
|
|
2567
|
-
const launchInput = launchingTool?.input;
|
|
2568
|
-
|
|
2722
|
+
const launchInput = launchingTool?.input ?? (message.tool_use_id ? context.subagentLaunchInputByToolUseId.get(message.tool_use_id) : void 0);
|
|
2723
|
+
if (message.tool_use_id) context.subagentLaunchInputByToolUseId.delete(message.tool_use_id);
|
|
2724
|
+
const model = (message.tool_use_id ? context.subagentModelByToolUseId.get(message.tool_use_id) : void 0) ?? claudeSubagentLaunchModel(launchInput);
|
|
2725
|
+
if (message.tool_use_id) context.subagentModelByToolUseId.delete(message.tool_use_id);
|
|
2569
2726
|
const rawLaunchEffort = launchInput?.effort;
|
|
2570
2727
|
const effort = trimmedClaudeString(rawLaunchEffort) ?? (typeof rawLaunchEffort === "number" && Number.isFinite(rawLaunchEffort) ? String(rawLaunchEffort) : context.currentEffort);
|
|
2571
2728
|
context.taskAgents.set(message.task_id, {
|
|
@@ -2602,7 +2759,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2602
2759
|
taskType: message.task_type,
|
|
2603
2760
|
agentId: owningAgentId
|
|
2604
2761
|
}) === "agent") {
|
|
2605
|
-
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message);
|
|
2762
|
+
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message, context.taskAgents.get(message.task_id));
|
|
2606
2763
|
context.subagentByTaskId.set(message.task_id, subagent);
|
|
2607
2764
|
yield* emitClaudeSubagentStarted(context, subagent, message);
|
|
2608
2765
|
}
|
|
@@ -2619,7 +2776,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2619
2776
|
eventId: usageStamp.eventId,
|
|
2620
2777
|
createdAt: usageStamp.createdAt,
|
|
2621
2778
|
type: "thread.token-usage.updated",
|
|
2622
|
-
payload: { usage: normalizedUsage }
|
|
2779
|
+
payload: { usage: withAutomaticCompactionCapability(normalizedUsage, context.supportsAutomaticCompaction) }
|
|
2623
2780
|
});
|
|
2624
2781
|
}
|
|
2625
2782
|
}
|
|
@@ -2645,7 +2802,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2645
2802
|
});
|
|
2646
2803
|
yield* emitWorkflowMemberProgress(context, message, workflowProgress);
|
|
2647
2804
|
if (isClaudeSubagentTaskMessage(message) || context.subagentByTaskId.has(message.task_id)) {
|
|
2648
|
-
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message);
|
|
2805
|
+
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message, context.taskAgents.get(message.task_id));
|
|
2649
2806
|
context.subagentByTaskId.set(message.task_id, subagent);
|
|
2650
2807
|
yield* emitClaudeSubagentUpdated(context, {
|
|
2651
2808
|
subagent,
|
|
@@ -2698,7 +2855,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2698
2855
|
eventId: usageStamp.eventId,
|
|
2699
2856
|
createdAt: usageStamp.createdAt,
|
|
2700
2857
|
type: "thread.token-usage.updated",
|
|
2701
|
-
payload: { usage: normalizedUsage }
|
|
2858
|
+
payload: { usage: withAutomaticCompactionCapability(normalizedUsage, context.supportsAutomaticCompaction) }
|
|
2702
2859
|
});
|
|
2703
2860
|
}
|
|
2704
2861
|
}
|
|
@@ -2717,7 +2874,7 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
2717
2874
|
}
|
|
2718
2875
|
});
|
|
2719
2876
|
if (isClaudeSubagentTaskMessage(message) || context.subagentByTaskId.has(message.task_id)) {
|
|
2720
|
-
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message);
|
|
2877
|
+
const subagent = makeClaudeTaskSubagentRef(context.subagentByTaskId.get(message.task_id), message, context.taskAgents.get(message.task_id));
|
|
2721
2878
|
context.subagentByTaskId.set(message.task_id, subagent);
|
|
2722
2879
|
yield* emitClaudeSubagentCompleted(context, {
|
|
2723
2880
|
subagent,
|
|
@@ -3312,7 +3469,10 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
3312
3469
|
createdAt: startedAt,
|
|
3313
3470
|
updatedAt: startedAt
|
|
3314
3471
|
};
|
|
3472
|
+
const generation = ++nextSessionGeneration;
|
|
3473
|
+
const supportsAutomaticCompaction = typeof queryRuntime.applyFlagSettings === "function";
|
|
3315
3474
|
const context = {
|
|
3475
|
+
generation,
|
|
3316
3476
|
session,
|
|
3317
3477
|
promptQueue,
|
|
3318
3478
|
query: queryRuntime,
|
|
@@ -3332,6 +3492,8 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
3332
3492
|
inFlightTools,
|
|
3333
3493
|
suppressedSubagentBlocks: /* @__PURE__ */ new Map(),
|
|
3334
3494
|
taskAgents: /* @__PURE__ */ new Map(),
|
|
3495
|
+
subagentLaunchInputByToolUseId: /* @__PURE__ */ new Map(),
|
|
3496
|
+
subagentModelByToolUseId: /* @__PURE__ */ new Map(),
|
|
3335
3497
|
workflowMemberFingerprints: /* @__PURE__ */ new Map(),
|
|
3336
3498
|
workflowPhasesByTaskId: /* @__PURE__ */ new Map(),
|
|
3337
3499
|
liveTaskIds: /* @__PURE__ */ new Set(),
|
|
@@ -3339,6 +3501,9 @@ const makeClaudeAdapter = Effect.fn("makeClaudeAdapter")(function* (claudeSettin
|
|
|
3339
3501
|
turnState: void 0,
|
|
3340
3502
|
lastKnownContextWindow: void 0,
|
|
3341
3503
|
lastKnownTokenUsage: void 0,
|
|
3504
|
+
compactionPolicy: initialContextCompactionPolicyState(generation),
|
|
3505
|
+
supportsAutomaticCompaction,
|
|
3506
|
+
compactionUnavailableWarningEmitted: false,
|
|
3342
3507
|
lastAssistantUuid: resumeState?.resumeSessionAt,
|
|
3343
3508
|
lastThreadStartedId: void 0,
|
|
3344
3509
|
subagentByTaskId: /* @__PURE__ */ new Map(),
|
|
@@ -1,13 +1,13 @@
|
|
|
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-Dsbmrw73.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
8
|
const require_ProjectCustomSystemPrompt = require("./ProjectCustomSystemPrompt-B8SUlNGa.cjs");
|
|
9
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
10
|
-
const require_CodexTextGeneration = require("./CodexTextGeneration-
|
|
9
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-CANTNAsz.cjs");
|
|
10
|
+
const require_CodexTextGeneration = require("./CodexTextGeneration-DLHSW4Mz.cjs");
|
|
11
11
|
let effect = require("effect");
|
|
12
12
|
let effect_unstable_http = require("effect/unstable/http");
|
|
13
13
|
let effect_unstable_process = require("effect/unstable/process");
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Ba as ProviderDriverKind, Bo as EventId, Jo as RuntimeRequestId, Ko as ProviderItemId, Mi as ProviderApprovalDecision, Mo as ApprovalRequestId, Si as PROVIDER_SEND_TURN_MAX_IMAGE_BYTES, Va as ProviderInstanceId, Zo as RuntimeTaskId, _a as ThreadGoal, er as CodexSettings, es as TurnId, qo as RuntimeItemId } from "./collectUint8StreamText-oFvWyN3_.mjs";
|
|
4
4
|
import { st as ServerConfig } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import { $t as
|
|
5
|
+
import { $t as V2ThreadNameUpdatedNotification, At as ServerRequest__FileChangeRequestApprovalParams, Bt as V2ErrorNotification, Ct as CodexAppServerSpawnError, Dt as ServerRequest__CommandExecutionRequestApprovalParams, Et as ServerRequest__ApplyPatchApprovalParams, Fn as resolveProviderMaintenanceCapabilitiesEffect, Ft as V2AccountUpdatedNotification, Gt as V2McpToolCallProgressNotification, H as buildCodexInitializeParams, Ht as V2ItemCompletedNotification, It as V2AgentMessageDeltaNotification, Jt as V2ReasoningSummaryTextDeltaNotification, Kt as V2ModelReroutedNotification, Ln as ServerSettingsService, Lt as V2CommandExecutionOutputDeltaNotification, Mt as ToolRequestUserInputParams, Nt as ToolRequestUserInputResponse, Ot as ServerRequest__DynamicToolCallParams, Pt as V2AccountRateLimitsUpdatedNotification, Qt as V2ThreadGoalUpdatedNotification, Rt as V2ConfigWarningNotification, S as checkRtkAvailability, St as CodexAppServerRequestError, Tt as SERVER_NOTIFICATION_METHODS, U as checkCodexProviderStatus, Un as getModelSelectionBooleanOptionValue, Ut as V2ItemStartedNotification, V as mergeProviderInstanceEnvironment, Vt as V2FileChangeOutputDeltaNotification, W as makePendingCodexProvider, Wn as getModelSelectionStringOptionValue, Wt as V2McpServerOauthLoginCompletedNotification, Xt as V2ServerRequestResolvedNotification, Yn as normalizeModelSlug, Yt as V2ReasoningTextDeltaNotification, Zt as V2ThreadGoalClearedNotification, _n as V2WindowsWorldWritableWarningNotification, _t as expandHomePath, an as V2ThreadStartedNotification, at as installAgentControlNativeHttp, b as makeEventNdjsonLogger, bt as CodexAppServerProcessExitedError, cn as V2TurnCompletedNotification, ct as ProviderAdapterProcessError, dn as V2TurnStartParams, dt as ProviderAdapterSessionNotFoundError, en as V2ThreadRealtimeClosedNotification, fn as V2TurnStartParams__CollaborationMode, ft as ProviderAdapterValidationError, gn as V2WindowsSandboxSetupCompletedNotification, gt as resolveCodexHomeLayout, hn as V2TurnSteerResponse, ht as materializeCodexShadowHome, in as V2ThreadRealtimeStartedNotification, jn as makePackageManagedProviderMaintenanceResolver, jt as ServerRequest__ToolRequestUserInputParams, kn as enrichProviderSnapshotWithVersionAdvisory, kt as ServerRequest__ExecCommandApprovalParams, ln as V2TurnDiffUpdatedNotification, lt as ProviderAdapterRequestError, mn as V2TurnSteerParams, mt as codexContinuationIdentity, n as AgentControlSessionRegistry, nn as V2ThreadRealtimeItemAddedNotification, on as V2ThreadStatusChangedNotification, pn as V2TurnStartResponse, pt as ProviderDriverError, qt as V2PlanDeltaNotification, rn as V2ThreadRealtimeOutputAudioDeltaNotification, sn as V2ThreadTokenUsageUpdatedNotification, st as createProcessDeviceToolBinding, t as makeServerQueueMetrics, tn as V2ThreadRealtimeErrorNotification, un as V2TurnPlanUpdatedNotification, ut as ProviderAdapterSessionClosedError, vt as CodexAppServerClient, wt as CodexAppServerTransportError, x as buildTokenReductionInstructions, xt as CodexAppServerProtocolParseError, y as ProviderEventLoggers, yt as layerChildProcess, zn as resolveAttachmentPath, zt as V2DeprecationNoticeNotification } from "./bin.mjs";
|
|
6
6
|
import { t as formatSourceControlContextsForAgent } from "./sourceControlContextFormatter-DEwpnVAH.mjs";
|
|
7
7
|
import { t as appendProjectCustomSystemPrompt } from "./ProjectCustomSystemPrompt-CS1nulhL.mjs";
|
|
8
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
9
|
-
import { t as makeCodexTextGeneration } from "./CodexTextGeneration-
|
|
8
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-PLtJj7EV.mjs";
|
|
9
|
+
import { t as makeCodexTextGeneration } from "./CodexTextGeneration-D1vV8grr.mjs";
|
|
10
10
|
import { Deferred, Effect, Exit, Fiber, FileSystem, Layer, Option, Queue, Redacted, Ref, Schema, Scope, Stream } from "effect";
|
|
11
11
|
import { HttpClient } from "effect/unstable/http";
|
|
12
12
|
import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import { Pn as TextGenerationError } from "./collectUint8StreamText-
|
|
3
|
+
import { Pn as TextGenerationError } from "./collectUint8StreamText-oFvWyN3_.mjs";
|
|
4
4
|
import { nt as sanitizeFeatureBranchName, st as ServerConfig, tt as sanitizeBranchFragment } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import { A as
|
|
5
|
+
import { A as buildThreadTitlePrompt, C as validateRankInboxThreadsResult, D as buildIssueContentTitlePrompt, E as buildIssueContentPolishPrompt, F as sanitizeThreadTitle, I as toJsonSchemaObject, M as normalizeCliError, N as sanitizeCommitSubject, O as buildPrContentPrompt, P as sanitizePrTitle, T as buildCommitMessagePrompt, Un as getModelSelectionBooleanOptionValue, Wn as getModelSelectionStringOptionValue, _t as expandHomePath, k as buildThreadPriorityPrompt, w as buildBranchNamePrompt, zn as resolveAttachmentPath } from "./bin.mjs";
|
|
6
6
|
import { Effect, FileSystem, Option, Path, Schema, Stream } from "effect";
|
|
7
7
|
import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
|
|
8
8
|
//#region src/textGeneration/CodexTextGeneration.ts
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
3
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-Dsbmrw73.cjs");
|
|
4
4
|
const require_Metrics = require("./Metrics-DIjMQ5pa.cjs");
|
|
5
5
|
const require_bin = require("./bin.cjs");
|
|
6
6
|
let effect = require("effect");
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
3
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-Dsbmrw73.cjs");
|
|
4
4
|
const require_Metrics = require("./Metrics-DIjMQ5pa.cjs");
|
|
5
5
|
const require_bin = require("./bin.cjs");
|
|
6
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
6
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-CANTNAsz.cjs");
|
|
7
7
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
8
|
-
const require_CodexTextGeneration = require("./CodexTextGeneration-
|
|
8
|
+
const require_CodexTextGeneration = require("./CodexTextGeneration-DLHSW4Mz.cjs");
|
|
9
9
|
let effect = require("effect");
|
|
10
10
|
let node_crypto = require("node:crypto");
|
|
11
11
|
require("effect/unstable/process");
|
|
12
|
-
let node_fs_promises = require("node:fs/promises");
|
|
13
12
|
let _github_copilot_sdk = require("@github/copilot-sdk");
|
|
14
13
|
//#region src/provider/Layers/CopilotAdapter.types.ts
|
|
15
14
|
const COPILOT_DRIVER_KIND = require_collectUint8StreamText.ProviderDriverKind.make("copilot");
|
|
@@ -668,27 +667,32 @@ const makeStartSession = (deps) => (input) => effect.Effect.gen(function* () {
|
|
|
668
667
|
}).pipe(effect.Effect.onError(() => effect.Effect.sync(() => deps.sessions.get(input.threadId)?.agentControl).pipe(effect.Effect.flatMap((connection) => connection ? connection.revoke("runtime-teardown") : effect.Effect.void))));
|
|
669
668
|
const makeSendTurn = (deps) => (input) => effect.Effect.gen(function* () {
|
|
670
669
|
const record = yield* deps.requireSession(input.threadId);
|
|
670
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
671
|
+
if (declaredAttachmentBytes > 52428800) return yield* new require_bin.ProviderAdapterRequestError({
|
|
672
|
+
provider: COPILOT_DRIVER_KIND,
|
|
673
|
+
method: "session.send",
|
|
674
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
675
|
+
});
|
|
676
|
+
let attachmentTotalBytes = 0;
|
|
671
677
|
const attachments = yield* effect.Effect.forEach(input.attachments ?? [], (attachment) => effect.Effect.gen(function* () {
|
|
672
|
-
const
|
|
678
|
+
const persisted = require_bin.readPersistedAttachment({
|
|
673
679
|
attachmentsDir: deps.serverConfig.attachmentsDir,
|
|
674
680
|
attachment
|
|
675
681
|
});
|
|
676
|
-
if (!
|
|
682
|
+
if (!persisted.ok) return yield* new require_bin.ProviderAdapterRequestError({
|
|
683
|
+
provider: COPILOT_DRIVER_KIND,
|
|
684
|
+
method: "session.send",
|
|
685
|
+
detail: persisted.reason
|
|
686
|
+
});
|
|
687
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
688
|
+
if (attachmentTotalBytes > 52428800) return yield* new require_bin.ProviderAdapterRequestError({
|
|
677
689
|
provider: COPILOT_DRIVER_KIND,
|
|
678
690
|
method: "session.send",
|
|
679
|
-
detail: `
|
|
691
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${require_collectUint8StreamText.PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
680
692
|
});
|
|
681
693
|
return {
|
|
682
694
|
type: "blob",
|
|
683
|
-
data:
|
|
684
|
-
try: () => (0, node_fs_promises.readFile)(filePath),
|
|
685
|
-
catch: (cause) => new require_bin.ProviderAdapterRequestError({
|
|
686
|
-
provider: COPILOT_DRIVER_KIND,
|
|
687
|
-
method: "session.send",
|
|
688
|
-
detail: `Failed to read attachment '${attachment.name}'.`,
|
|
689
|
-
cause
|
|
690
|
-
})
|
|
691
|
-
})).toString("base64"),
|
|
695
|
+
data: persisted.bytes.toString("base64"),
|
|
692
696
|
mimeType: attachmentMimeType(attachment),
|
|
693
697
|
displayName: attachment.name
|
|
694
698
|
};
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { Ba as ProviderDriverKind, Bo as EventId, Ia as DEFAULT_GIT_TEXT_GENERATION_MODEL_BY_PROVIDER, Jo as RuntimeRequestId, Ko as ProviderItemId, La as DEFAULT_GIT_TEXT_GENERATION_OPTIONS_BY_PROVIDER, Pn as TextGenerationError, Va as ProviderInstanceId, bi as PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES, er as CodexSettings, es as TurnId, qo as RuntimeItemId, tr as CopilotSettings } from "./collectUint8StreamText-oFvWyN3_.mjs";
|
|
4
4
|
import { st as ServerConfig } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import {
|
|
6
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
5
|
+
import { A as buildThreadTitlePrompt, An as makeManualOnlyProviderMaintenanceCapabilities, Bn as resolveCommandPath, C as validateRankInboxThreadsResult, F as sanitizeThreadTitle, Hn as createModelCapabilities, J as buildServerProvider, Jn as getProviderOptionStringSelectionValue, Rn as readPersistedAttachment, V as mergeProviderInstanceEnvironment, Wn as getModelSelectionStringOptionValue, Z as isCommandMissingCause, at as installAgentControlNativeHttp, b as makeEventNdjsonLogger, ct as ProviderAdapterProcessError, dt as ProviderAdapterSessionNotFoundError, et as providerModelsFromSettings, ft as ProviderAdapterValidationError, j as extractJsonObject, k as buildThreadPriorityPrompt, lt as ProviderAdapterRequestError, n as AgentControlSessionRegistry, nt as AGENT_CONTROL_INTERNAL_SERVER_NAME, ot as redactAgentControlSecrets, pt as ProviderDriverError, q as buildSelectOptionDescriptor, rt as agentControlHostContext, st as createProcessDeviceToolBinding, t as makeServerQueueMetrics, y as ProviderEventLoggers } from "./bin.mjs";
|
|
6
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-PLtJj7EV.mjs";
|
|
7
7
|
import { t as defaultProviderContinuationIdentity } from "./ProviderDriver-kCV60GKk.mjs";
|
|
8
|
-
import { t as makeCodexTextGeneration } from "./CodexTextGeneration-
|
|
8
|
+
import { t as makeCodexTextGeneration } from "./CodexTextGeneration-D1vV8grr.mjs";
|
|
9
9
|
import { Effect, Option, Queue, Result, Schema, Stream } from "effect";
|
|
10
10
|
import { randomUUID } from "node:crypto";
|
|
11
11
|
import "effect/unstable/process";
|
|
12
|
-
import { readFile } from "node:fs/promises";
|
|
13
12
|
import { CopilotClient, RuntimeConnection } from "@github/copilot-sdk";
|
|
14
13
|
//#region src/provider/Layers/CopilotAdapter.types.ts
|
|
15
14
|
const COPILOT_DRIVER_KIND = ProviderDriverKind.make("copilot");
|
|
@@ -668,27 +667,32 @@ const makeStartSession = (deps) => (input) => Effect.gen(function* () {
|
|
|
668
667
|
}).pipe(Effect.onError(() => Effect.sync(() => deps.sessions.get(input.threadId)?.agentControl).pipe(Effect.flatMap((connection) => connection ? connection.revoke("runtime-teardown") : Effect.void))));
|
|
669
668
|
const makeSendTurn = (deps) => (input) => Effect.gen(function* () {
|
|
670
669
|
const record = yield* deps.requireSession(input.threadId);
|
|
670
|
+
const declaredAttachmentBytes = (input.attachments ?? []).reduce((total, attachment) => total + attachment.sizeBytes, 0);
|
|
671
|
+
if (declaredAttachmentBytes > 52428800) return yield* new ProviderAdapterRequestError({
|
|
672
|
+
provider: COPILOT_DRIVER_KIND,
|
|
673
|
+
method: "session.send",
|
|
674
|
+
detail: `Attachments total ${declaredAttachmentBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
675
|
+
});
|
|
676
|
+
let attachmentTotalBytes = 0;
|
|
671
677
|
const attachments = yield* Effect.forEach(input.attachments ?? [], (attachment) => Effect.gen(function* () {
|
|
672
|
-
const
|
|
678
|
+
const persisted = readPersistedAttachment({
|
|
673
679
|
attachmentsDir: deps.serverConfig.attachmentsDir,
|
|
674
680
|
attachment
|
|
675
681
|
});
|
|
676
|
-
if (!
|
|
682
|
+
if (!persisted.ok) return yield* new ProviderAdapterRequestError({
|
|
683
|
+
provider: COPILOT_DRIVER_KIND,
|
|
684
|
+
method: "session.send",
|
|
685
|
+
detail: persisted.reason
|
|
686
|
+
});
|
|
687
|
+
attachmentTotalBytes += persisted.sizeBytes;
|
|
688
|
+
if (attachmentTotalBytes > 52428800) return yield* new ProviderAdapterRequestError({
|
|
677
689
|
provider: COPILOT_DRIVER_KIND,
|
|
678
690
|
method: "session.send",
|
|
679
|
-
detail: `
|
|
691
|
+
detail: `Attachments total ${attachmentTotalBytes} bytes; limit is ${PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES} bytes.`
|
|
680
692
|
});
|
|
681
693
|
return {
|
|
682
694
|
type: "blob",
|
|
683
|
-
data:
|
|
684
|
-
try: () => readFile(filePath),
|
|
685
|
-
catch: (cause) => new ProviderAdapterRequestError({
|
|
686
|
-
provider: COPILOT_DRIVER_KIND,
|
|
687
|
-
method: "session.send",
|
|
688
|
-
detail: `Failed to read attachment '${attachment.name}'.`,
|
|
689
|
-
cause
|
|
690
|
-
})
|
|
691
|
-
})).toString("base64"),
|
|
695
|
+
data: persisted.bytes.toString("base64"),
|
|
692
696
|
mimeType: attachmentMimeType(attachment),
|
|
693
697
|
displayName: attachment.name
|
|
694
698
|
};
|
|
@@ -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, nr as CursorSettings } from "./collectUint8StreamText-oFvWyN3_.mjs";
|
|
4
4
|
import { nt as sanitizeFeatureBranchName, st as ServerConfig, tt as sanitizeBranchFragment } from "./Metrics-BP9YjxZB.mjs";
|
|
5
|
-
import {
|
|
6
|
-
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-
|
|
5
|
+
import { A as buildThreadTitlePrompt, C as validateRankInboxThreadsResult, D as buildIssueContentTitlePrompt, E as buildIssueContentPolishPrompt, F as sanitizeThreadTitle, Fn as resolveProviderMaintenanceCapabilitiesEffect, Gn as getProviderOptionBooleanSelectionValue, Hn as createModelCapabilities, J as buildServerProvider, Jn as getProviderOptionStringSelectionValue, K as buildBooleanOptionDescriptor, Ln as ServerSettingsService, Mn as makeProviderMaintenanceCapabilities, N as sanitizeCommitSubject, Nn as makeStaticProviderMaintenanceResolver, O as buildPrContentPrompt, P as sanitizePrTitle, T as buildCommitMessagePrompt, V as mergeProviderInstanceEnvironment, Y as collectStreamAsString, Z as isCommandMissingCause, b as makeEventNdjsonLogger, ct as ProviderAdapterProcessError, dt as ProviderAdapterSessionNotFoundError, et as providerModelsFromSettings, ft as ProviderAdapterValidationError, it as installAgentControlAcp, j as extractJsonObject, k as buildThreadPriorityPrompt, kn as enrichProviderSnapshotWithVersionAdvisory, lt as ProviderAdapterRequestError, n as AgentControlSessionRegistry, pt as ProviderDriverError, q as buildSelectOptionDescriptor, rt as agentControlHostContext, st as createProcessDeviceToolBinding, w as buildBranchNamePrompt, y as ProviderEventLoggers, zn as resolveAttachmentPath } from "./bin.mjs";
|
|
6
|
+
import { n as requireRuntimeSessionId, r as stampRuntimeEvent, t as makeManagedServerProvider } from "./makeManagedServerProvider-PLtJj7EV.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, l as acpPermissionOutcome, m as SessionConfigOption, n as makeAcpAssistantItemEvent, o as makeAcpRequestResolvedEvent, 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, l as acpPermissionOutcome, m as SessionConfigOption, n as makeAcpAssistantItemEvent, o as makeAcpRequestResolvedEvent, r as makeAcpContentDeltaEvent, s as makeAcpTokenUsageEvent, t as makeAcpNativeLoggers, u as mapAcpToAdapterError } from "./AcpNativeLogging-qZgtIa5K.mjs";
|
|
9
9
|
import { Cause, DateTime, Deferred, Effect, Exit, Fiber, FileSystem, Layer, Option, Path, PubSub, Ref, Result, Schema, Scope, Semaphore, Stream, SynchronizedRef } from "effect";
|
|
10
10
|
import { HttpClient } from "effect/unstable/http";
|
|
11
11
|
import * as nodePath from "node:path";
|
|
@@ -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-Dsbmrw73.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-CANTNAsz.cjs");
|
|
8
8
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
9
|
-
const require_AcpNativeLogging = require("./AcpNativeLogging-
|
|
9
|
+
const require_AcpNativeLogging = require("./AcpNativeLogging-OhEq3XNp.cjs");
|
|
10
10
|
let effect = require("effect");
|
|
11
11
|
let effect_unstable_http = require("effect/unstable/http");
|
|
12
12
|
let node_path = require("node:path");
|