ryco-cli 0.1.6 → 0.1.8
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/{AzureDevOpsSourceControlProvider-CC2_COxP.mjs → AzureDevOpsSourceControlProvider-B5vb4DOU.mjs} +2 -2
- package/dist/{AzureDevOpsSourceControlProvider-6holYS_D.cjs → AzureDevOpsSourceControlProvider-CYZmJqSM.cjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-CYR_BD1d.mjs → BitbucketSourceControlProvider-CcAb4IgH.mjs} +2 -2
- package/dist/{BitbucketSourceControlProvider-a0IsNFyG.cjs → BitbucketSourceControlProvider-D_7i4YQz.cjs} +2 -2
- package/dist/{ClaudeDriver-D3nsxwH9.mjs → ClaudeDriver-CoPBpdrp.mjs} +198 -8
- package/dist/{ClaudeDriver-C6tQNEWO.cjs → ClaudeDriver-ScqmbPKW.cjs} +197 -7
- package/dist/{CodexDriver-ms_YgFD7.cjs → CodexDriver-CtCCc3CC.cjs} +36 -8
- package/dist/{CodexDriver-BILrJG8o.mjs → CodexDriver-DH7vqku4.mjs} +37 -9
- package/dist/{CodexTextGeneration-BIKHl7E3.mjs → CodexTextGeneration-CJV1jPda.mjs} +3 -3
- package/dist/{CodexTextGeneration-CHEgoANm.cjs → CodexTextGeneration-Db2hn8Qz.cjs} +2 -2
- package/dist/{CopilotDriver-CmD3Ffyl.mjs → CopilotDriver-CFCF68Te.mjs} +7 -6
- package/dist/{CopilotDriver-B0--ZwIK.cjs → CopilotDriver-DLN2KEoc.cjs} +6 -5
- package/dist/{CursorDriver-DTVPXZ-R.cjs → CursorDriver-BlvQbOEZ.cjs} +201 -15
- package/dist/{CursorDriver-CbeaIbdb.mjs → CursorDriver-Dej81rwD.mjs} +202 -16
- package/dist/{ForgejoSourceControlProvider-DX6d9gvz.mjs → ForgejoSourceControlProvider-3cFD7SqY.mjs} +2 -2
- package/dist/{ForgejoSourceControlProvider-DwAog76b.cjs → ForgejoSourceControlProvider-DYFUGvBk.cjs} +2 -2
- package/dist/{GitHubSourceControlProvider-9lJFzjsu.cjs → GitHubSourceControlProvider-B1Tp0TbY.cjs} +27 -4
- package/dist/{GitHubSourceControlProvider-C-LGwho3.mjs → GitHubSourceControlProvider-Kf4rrBTF.mjs} +27 -4
- package/dist/{GitLabSourceControlProvider-CvKA74lg.cjs → GitLabSourceControlProvider-D3vvKrB4.cjs} +2 -2
- package/dist/{GitLabSourceControlProvider-CkeT2aEx.mjs → GitLabSourceControlProvider-Ygppeftk.mjs} +2 -2
- package/dist/{NodeSqliteClient-B5aDHbNc.cjs → NodeSqliteClient-D1O-MR8w.cjs} +4 -1
- package/dist/{NodeSqliteClient-A1TEgwj_.mjs → NodeSqliteClient-DdTjpAko.mjs} +4 -1
- package/dist/{OpenCodeDriver-ClWtCk0j.mjs → OpenCodeDriver-BGa9Tkot.mjs} +326 -39
- package/dist/{OpenCodeDriver-CXUsnl5o.cjs → OpenCodeDriver-mbR9mF54.cjs} +325 -38
- package/dist/{SourceControlProviderDiscoveryCatalog-_rg0mc1o.cjs → SourceControlProviderDiscoveryCatalog-CTb100Uk.cjs} +1 -64
- package/dist/{SourceControlProviderDiscoveryCatalog-yMDer_Yh.mjs → SourceControlProviderDiscoveryCatalog-Zk11tJoL.mjs} +3 -48
- package/dist/bin.cjs +1481 -704
- package/dist/bin.mjs +1435 -659
- package/dist/client/assets/{AnimatedHeight-DgItDSis.js → AnimatedHeight-CPQ2q38I.js} +1 -1
- package/dist/client/assets/AppearanceSettings-B0FYiIxL.js +1 -0
- package/dist/client/assets/{BranchToolbar.logic-C_xHEt9C.js → BranchToolbar.logic-C1yjFjxJ.js} +1 -1
- package/dist/client/assets/ChatRightPanel-CJDSKMU2.js +188 -0
- package/dist/client/assets/ChatThreadRouteView-BaKwKGbC.js +1 -0
- package/dist/client/assets/CommandPaletteDialog-BHG_MdZk.js +1 -0
- package/dist/client/assets/CompositeRoot-Bs0hfelE.js +1 -0
- package/dist/client/assets/ConnectionsSettings-DvZNgO60.js +1 -0
- package/dist/client/assets/{DiagnosticsSettings-B340S_mq.js → DiagnosticsSettings-0v_hh1Qh.js} +1 -1
- package/dist/client/assets/{DialogHandle-BJY7cHCV.js → DialogHandle-CwEAVRF_.js} +1 -1
- package/dist/client/assets/{DialogRoot-Ej1FVk-_.js → DialogRoot-CYuaaDI3.js} +1 -1
- package/dist/client/assets/DialogTitle-Cak6zT3u.js +1 -0
- package/dist/client/assets/DialogTrigger-BD0KYYT-.js +1 -0
- package/dist/client/assets/{DialogViewport-DvjAl76K.js → DialogViewport-9sGf4JUp.js} +1 -1
- package/dist/client/assets/{DraftChatThreadRouteView-pOkyeKPS.js → DraftChatThreadRouteView-nvKLHlii.js} +1 -1
- package/dist/client/assets/{JetBrainsIcons-DTTF47I0.js → JetBrainsIcons-CflvH7gO.js} +1 -1
- package/dist/client/assets/KeybindingsSettings-DhLKhgYn.js +7 -0
- package/dist/client/assets/McpServersSettings-COs_dng1.js +6 -0
- package/dist/client/assets/{NoActiveThreadState-DVHwrkCp.js → NoActiveThreadState-cxMCW-cQ.js} +1 -1
- package/dist/client/assets/OpinionatedPluginsSettings-ag_OgOGj.js +1 -0
- package/dist/client/assets/{ProjectFavicon-TDP7HRfn.js → ProjectFavicon-D97Hy4xo.js} +1 -1
- package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-6TpFsmiI.js → ProviderUpdateLaunchNotification.logic-RMYvRSEk.js} +1 -1
- package/dist/client/assets/ProvidersSettingsPanel-DcdVMRVC.js +1 -0
- package/dist/client/assets/{RedactedSensitiveText-BfoVjPsE.js → RedactedSensitiveText-CQY4pFAq.js} +1 -1
- package/dist/client/assets/RootAppShell-BRjETnaT.js +12 -0
- package/dist/client/assets/SettingsDialog-DRi5jsmq.js +2 -0
- package/dist/client/assets/SourceControlSettings-CdUulS4O.js +1 -0
- package/dist/client/assets/StatisticsPanel-NLU3ecLt.js +64 -0
- package/dist/client/assets/{ThreadStatusIndicators-B0leIJGD.js → ThreadStatusIndicators-CebYbeXP.js} +1 -1
- package/dist/client/assets/{ThreadTerminalDrawer-COq2Fk17.js → ThreadTerminalDrawer-DlI0gGer.js} +17 -17
- package/dist/client/assets/ThreadWorkspacePanel-CEIVrCZ0.js +166 -0
- package/dist/client/assets/{alert-dialog-lMfKpG2t.js → alert-dialog-wh07u3JU.js} +1 -1
- package/dist/client/assets/chart-column-Cg34FxwD.js +1 -0
- package/dist/client/assets/{chatThreadActions-PPyTj_x0.js → chatThreadActions-UitETN_n.js} +1 -1
- package/dist/client/assets/chevron-up-C3DS3evc.js +1 -0
- package/dist/client/assets/{clamp-JiD4IZ0Z.js → clamp-DPbdAzEu.js} +1 -1
- package/dist/client/assets/{clipboard-copy-CYBLSG2q.js → clipboard-copy-ClVNnHW5.js} +1 -1
- package/dist/client/assets/clock-Cr66Pt4W.js +1 -0
- package/dist/client/assets/{commandPaletteStore-uVfCD7zE.js → commandPaletteStore-DzUBFRor.js} +1 -1
- package/dist/client/assets/composerDraftStore-BfLPHwHL.js +21 -0
- package/dist/client/assets/{desktopUpdateAtoms-X6uM5SoD.js → desktopUpdateAtoms-BiqPT2_z.js} +1 -1
- package/dist/client/assets/{download-DLBlpp4h.js → download-DJ1juHK4.js} +1 -1
- package/dist/client/assets/{draft-input-dLlVMl5P.js → draft-input-B1txZFC7.js} +1 -1
- package/dist/client/assets/editorPreferences-Bbmh6Bm1.js +1 -0
- package/dist/client/assets/{empty-DlLY-Hhj.js → empty-CUEYr1p8.js} +1 -1
- package/dist/client/assets/{group-zDBPF7rR.js → group-BouZ2n9F.js} +1 -1
- package/dist/client/assets/{index-Dq8sT2lF.js → index-DiHgOLH_.js} +2 -2
- package/dist/client/assets/{input-B9-RWT56.js → input-Do_m9U-4.js} +1 -1
- package/dist/client/assets/kbd-DJilTfYF.js +1 -0
- package/dist/client/assets/{keybindings-Dx4Nc1vY.js → keybindings-CRkz0yvp.js} +1 -1
- package/dist/client/assets/{keyboard-DDTWQkr0.js → keyboard-D3WgbAUQ.js} +1 -1
- package/dist/client/assets/{keyedQuery-Ds4OGhX2.js → keyedQuery-PQcOnB2O.js} +0 -0
- package/dist/client/assets/{main-DxfpmoKJ.js → main-C-491vdD.js} +2 -2
- package/dist/client/assets/main-fW5L_SdM.css +2 -0
- package/dist/client/assets/{palette-BQcz-ZYV.js → palette-BRoYo327.js} +1 -1
- package/dist/client/assets/{play-QloDGe4R.js → play-BZbHk_vw.js} +1 -1
- package/dist/client/assets/plus-D0S72hZS.js +1 -0
- package/dist/client/assets/projectAtoms-KYCIIuVn.js +1 -0
- package/dist/client/assets/providerDriverMeta-BX4CLldz.js +1 -0
- package/dist/client/assets/providerIconUtils-DTRc3qno.js +47 -0
- package/dist/client/assets/radio-group-De3hRQoY.js +1 -0
- package/dist/client/assets/{refresh-cw-DkBMGllm.js → refresh-cw-D_1NT-T2.js} +1 -1
- package/dist/client/assets/{resolveAriaLabelledBy-DDfIbj05.js → resolveAriaLabelledBy-RblUm3b1.js} +1 -1
- package/dist/client/assets/rightPanelRouteSearch-DLllyqRr.js +1 -0
- package/dist/client/assets/{scale-BActunFu.js → scale-s57Ro96s.js} +1 -1
- package/dist/client/assets/{scroll-area-D-YOUG02.js → scroll-area-B0_k8-iT.js} +1 -1
- package/dist/client/assets/{separator-TInKeIDo.js → separator-AyXRgdnJ.js} +1 -1
- package/dist/client/assets/{server-BtEG3NAw.js → server-Z-m1OqE5.js} +1 -1
- package/dist/client/assets/{session-logic-DNf1aXq_.js → session-logic-B87Htlw4.js} +2 -2
- package/dist/client/assets/settingsDialogStore-CxUfUnd9.js +1 -0
- package/dist/client/assets/{settingsLayout-D22Mm0u3.js → settingsLayout-BtKS3Z8f.js} +1 -1
- package/dist/client/assets/sidebar-B0WxOej2.js +1 -0
- package/dist/client/assets/sidebarStatusText-C_EsHj20.js +1 -0
- package/dist/client/assets/{skeleton-DWaac_qp.js → skeleton-COt2Az5i.js} +1 -1
- package/dist/client/assets/{storeSelectors-Cx1IYPA4.js → storeSelectors-BuB4Kzj6.js} +1 -1
- package/dist/client/assets/threadSelectionStore-BS6X6HHt.js +1 -0
- package/dist/client/assets/toast-CaV8TQi_.js +1 -0
- package/dist/client/assets/toggle-DE4ApNIU.js +1 -0
- package/dist/client/assets/{toggle-group-CnLjaHSL.js → toggle-group-BuzAkAEk.js} +1 -1
- package/dist/client/assets/{tokenModePresentation-BSYdIvBm.js → tokenModePresentation-BCL2aeat.js} +1 -1
- package/dist/client/assets/{trash-2-BI5xcbsm.js → trash-2-ZZ1feCT6.js} +1 -1
- package/dist/client/assets/{triangle-alert-DJef_Uvh.js → triangle-alert-CL3zqnKL.js} +1 -1
- package/dist/client/assets/{undo-2-DeZ2cMGS.js → undo-2-Cu9H3R3q.js} +1 -1
- package/dist/client/assets/{useHandleNewThread-XB82O6SA.js → useHandleNewThread-Gke-ZFBr.js} +1 -1
- package/dist/client/assets/useLabelableId-DfuxWqrk.js +1 -0
- package/dist/client/assets/{useNavigate-B2tgshhW.js → useNavigate-DQEHh6ky.js} +1 -1
- package/dist/client/assets/useTheme-HcKmBfpF.js +1 -0
- package/dist/client/assets/{vscode-icons-DM9qFoEr.js → vscode-icons-DGDiHkqG.js} +1 -1
- package/dist/client/assets/{wrench-je4QOyG-.js → wrench-C_OATMLq.js} +1 -1
- package/dist/client/assets/x-BG9zZGeD.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/{collectUint8StreamText-TCG6xW_P.cjs → collectUint8StreamText-B-GW3u_2.cjs} +367 -15
- package/dist/{collectUint8StreamText-C2z5Y8tF.mjs → collectUint8StreamText-COE2_gie.mjs} +345 -17
- package/dist/{makeManagedServerProvider-BXO8QvzC.mjs → makeManagedServerProvider-D1_iEWGi.mjs} +1 -1
- package/dist/{makeManagedServerProvider-DPFw9gV_.cjs → makeManagedServerProvider-DTsQ87HL.cjs} +1 -1
- package/package.json +4 -2
- package/dist/client/assets/AppearanceSettings-BlsMFBvJ.js +0 -1
- package/dist/client/assets/ChatRightPanel-CThudBb1.js +0 -188
- package/dist/client/assets/ChatThreadRouteView-CV6ETYG5.js +0 -1
- package/dist/client/assets/CommandPaletteDialog-C_H7R8S5.js +0 -1
- package/dist/client/assets/CompositeRoot-DjnzUIwC.js +0 -1
- package/dist/client/assets/ConnectionsSettings-hArR4Oe3.js +0 -1
- package/dist/client/assets/DialogTitle-H1yIMmA9.js +0 -1
- package/dist/client/assets/DialogTrigger-BHMq_K2G.js +0 -1
- package/dist/client/assets/KeybindingsSettings-CW3RRi-7.js +0 -7
- package/dist/client/assets/McpServersSettings-dQ3BzOWY.js +0 -6
- package/dist/client/assets/OpinionatedPluginsSettings-Cjj23Fs4.js +0 -1
- package/dist/client/assets/ProvidersSettingsPanel-D15EeWAq.js +0 -1
- package/dist/client/assets/RootAppShell-CWBPSA2w.js +0 -12
- package/dist/client/assets/SettingsDialog-oJCE5foT.js +0 -2
- package/dist/client/assets/SourceControlSettings-CPnlMxNm.js +0 -1
- package/dist/client/assets/ThreadWorkspacePanel-qF9y6QT9.js +0 -166
- package/dist/client/assets/composerDraftStore-D12lUSfh.js +0 -21
- package/dist/client/assets/editorPreferences-BLeEBSD_.js +0 -1
- package/dist/client/assets/folder-open-DMjz0lpx.js +0 -1
- package/dist/client/assets/kbd-aeSsjiPI.js +0 -1
- package/dist/client/assets/main-C57RhHZ_.css +0 -2
- package/dist/client/assets/plus-4Oy56d-3.js +0 -1
- package/dist/client/assets/projectAtoms-DUEBb7Zz.js +0 -1
- package/dist/client/assets/providerDriverMeta-Dwi6Zqgd.js +0 -1
- package/dist/client/assets/providerIconUtils-uhWb4bdg.js +0 -47
- package/dist/client/assets/radio-group-DHyQlLeX.js +0 -1
- package/dist/client/assets/rightPanelRouteSearch-DfuWVvXN.js +0 -1
- package/dist/client/assets/settingsDialogStore-BINi7pdD.js +0 -1
- package/dist/client/assets/sidebar-DHwNQmWp.js +0 -1
- package/dist/client/assets/threadSelectionStore-C0ig4405.js +0 -1
- package/dist/client/assets/toast-DE7a4wkW.js +0 -1
- package/dist/client/assets/toggle-BIW4AyPY.js +0 -1
- package/dist/client/assets/useLabelableId-DBAgv9qQ.js +0 -1
- package/dist/client/assets/useTheme-Dv42Z8uy.js +0 -1
- package/dist/client/assets/x-fI9snvD3.js +0 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
3
|
const require_chunk = require("./chunk-jM1PLTSZ.cjs");
|
|
4
|
-
const require_collectUint8StreamText = require("./collectUint8StreamText-
|
|
4
|
+
const require_collectUint8StreamText = require("./collectUint8StreamText-B-GW3u_2.cjs");
|
|
5
5
|
const require_Metrics = require("./Metrics-CIW1QH7M.cjs");
|
|
6
6
|
const require_bin = require("./bin.cjs");
|
|
7
|
-
const require_makeManagedServerProvider = require("./makeManagedServerProvider-
|
|
7
|
+
const require_makeManagedServerProvider = require("./makeManagedServerProvider-DTsQ87HL.cjs");
|
|
8
8
|
const require_ProviderDriver = require("./ProviderDriver--rNeAi3B.cjs");
|
|
9
9
|
let effect_Effect = require("effect/Effect");
|
|
10
10
|
effect_Effect = require_chunk.__toESM(effect_Effect, 1);
|
|
@@ -3939,8 +3939,22 @@ function extractTextContentFromToolCallContent(content) {
|
|
|
3939
3939
|
function normalizeToolKind(kind) {
|
|
3940
3940
|
return typeof kind === "string" && kind.trim().length > 0 ? kind.trim() : void 0;
|
|
3941
3941
|
}
|
|
3942
|
-
function
|
|
3943
|
-
|
|
3942
|
+
function containsSubagentKeyword(value) {
|
|
3943
|
+
return value !== void 0 && /\b(sub[-\s]?agent|subtask|delegate|delegation)\b/i.test(value);
|
|
3944
|
+
}
|
|
3945
|
+
function hasExplicitSubagentType(data) {
|
|
3946
|
+
const subagentType = (isRecord$1(data?.rawInput) ? data.rawInput : void 0)?.subagent_type;
|
|
3947
|
+
return typeof subagentType === "string" && subagentType.trim().length > 0;
|
|
3948
|
+
}
|
|
3949
|
+
function isAcpSubagentToolCall(input) {
|
|
3950
|
+
if (containsSubagentKeyword(input.kind) || containsSubagentKeyword(input.title) || containsSubagentKeyword(input.command) || containsSubagentKeyword(input.detail)) return true;
|
|
3951
|
+
if (hasExplicitSubagentType(input.data)) return true;
|
|
3952
|
+
const rawInput = isRecord$1(input.data?.rawInput) ? input.data.rawInput : void 0;
|
|
3953
|
+
return containsSubagentKeyword(typeof rawInput?.tool === "string" ? rawInput.tool : void 0) || containsSubagentKeyword(typeof rawInput?.name === "string" ? rawInput.name : void 0);
|
|
3954
|
+
}
|
|
3955
|
+
function canonicalItemTypeFromAcpTool(input) {
|
|
3956
|
+
if (isAcpSubagentToolCall(input)) return "collab_agent_tool_call";
|
|
3957
|
+
switch (input.kind) {
|
|
3944
3958
|
case "execute": return "command_execution";
|
|
3945
3959
|
case "edit":
|
|
3946
3960
|
case "delete":
|
|
@@ -3950,6 +3964,46 @@ function canonicalItemTypeFromAcpToolKind$1(kind) {
|
|
|
3950
3964
|
default: return "dynamic_tool_call";
|
|
3951
3965
|
}
|
|
3952
3966
|
}
|
|
3967
|
+
function acpSubagentStatusFromToolStatus(status) {
|
|
3968
|
+
switch (status) {
|
|
3969
|
+
case "pending": return "starting";
|
|
3970
|
+
case "inProgress": return "running";
|
|
3971
|
+
case "completed": return "completed";
|
|
3972
|
+
case "failed": return "failed";
|
|
3973
|
+
default: return;
|
|
3974
|
+
}
|
|
3975
|
+
}
|
|
3976
|
+
function rawInputStringField(data, field) {
|
|
3977
|
+
const rawInput = isRecord$1(data?.rawInput) ? data.rawInput : void 0;
|
|
3978
|
+
if (!rawInput) return;
|
|
3979
|
+
const value = rawInput[field];
|
|
3980
|
+
return typeof value === "string" && value.trim().length > 0 ? value.trim() : void 0;
|
|
3981
|
+
}
|
|
3982
|
+
function makeAcpSubagentSummaryState(input) {
|
|
3983
|
+
if (!isAcpSubagentToolCall(input)) return;
|
|
3984
|
+
const label = input.title ?? rawInputStringField(input.data, "name") ?? "ACP subagent";
|
|
3985
|
+
const detail = input.detail ?? rawInputStringField(input.data, "description") ?? rawInputStringField(input.data, "prompt") ?? input.command;
|
|
3986
|
+
const metadata = Object.fromEntries([
|
|
3987
|
+
["source", "acp.tool_call"],
|
|
3988
|
+
["kind", input.kind],
|
|
3989
|
+
["command", input.command]
|
|
3990
|
+
].filter(([, value]) => value !== void 0));
|
|
3991
|
+
const status = acpSubagentStatusFromToolStatus(input.status);
|
|
3992
|
+
return {
|
|
3993
|
+
subagent: {
|
|
3994
|
+
subagentId: require_collectUint8StreamText.RuntimeSubagentId.make(input.toolCallId),
|
|
3995
|
+
origin: "inferred",
|
|
3996
|
+
capability: "summary",
|
|
3997
|
+
label,
|
|
3998
|
+
...detail ? { description: detail } : {},
|
|
3999
|
+
parentProviderItemId: require_collectUint8StreamText.ProviderItemId.make(input.toolCallId),
|
|
4000
|
+
metadata
|
|
4001
|
+
},
|
|
4002
|
+
...status ? { status } : {},
|
|
4003
|
+
summary: label,
|
|
4004
|
+
...detail ? { detail } : {}
|
|
4005
|
+
};
|
|
4006
|
+
}
|
|
3953
4007
|
function makeToolCallState(input, options) {
|
|
3954
4008
|
const toolCallId = input.toolCallId.trim();
|
|
3955
4009
|
if (!toolCallId) return;
|
|
@@ -3967,13 +4021,28 @@ function makeToolCallState(input, options) {
|
|
|
3967
4021
|
if (input.locations !== void 0) data.locations = input.locations;
|
|
3968
4022
|
const fallbackDetail = command ?? normalizedTitle ?? textContent;
|
|
3969
4023
|
const presentation = title !== void 0 || kind !== void 0 || command !== void 0 || normalizedTitle !== void 0 || textContent !== void 0 ? deriveToolActivityPresentation({
|
|
3970
|
-
itemType:
|
|
4024
|
+
itemType: canonicalItemTypeFromAcpTool({
|
|
4025
|
+
kind,
|
|
4026
|
+
title,
|
|
4027
|
+
command,
|
|
4028
|
+
detail: fallbackDetail,
|
|
4029
|
+
data
|
|
4030
|
+
}),
|
|
3971
4031
|
title,
|
|
3972
4032
|
detail: fallbackDetail,
|
|
3973
4033
|
data,
|
|
3974
4034
|
fallbackSummary: title ?? "Tool"
|
|
3975
4035
|
}) : void 0;
|
|
3976
4036
|
const status = normalizeToolCallStatus(input.status, options?.fallbackStatus);
|
|
4037
|
+
const subagent = makeAcpSubagentSummaryState({
|
|
4038
|
+
toolCallId,
|
|
4039
|
+
...kind ? { kind } : {},
|
|
4040
|
+
...presentation?.summary ? { title: presentation.summary } : {},
|
|
4041
|
+
...status ? { status } : {},
|
|
4042
|
+
...command ? { command } : {},
|
|
4043
|
+
...presentation?.detail ? { detail: presentation.detail } : {},
|
|
4044
|
+
data
|
|
4045
|
+
});
|
|
3977
4046
|
return {
|
|
3978
4047
|
toolCallId,
|
|
3979
4048
|
...kind ? { kind } : {},
|
|
@@ -3981,6 +4050,7 @@ function makeToolCallState(input, options) {
|
|
|
3981
4050
|
...status ? { status } : {},
|
|
3982
4051
|
...command ? { command } : {},
|
|
3983
4052
|
...presentation?.detail ? { detail: presentation.detail } : {},
|
|
4053
|
+
...subagent ? { subagent } : {},
|
|
3984
4054
|
data
|
|
3985
4055
|
};
|
|
3986
4056
|
}
|
|
@@ -4002,6 +4072,19 @@ function mergeToolCallState(previous, next) {
|
|
|
4002
4072
|
const status = next.status ?? previous?.status;
|
|
4003
4073
|
const command = next.command ?? previous?.command;
|
|
4004
4074
|
const detail = next.detail ?? previous?.detail;
|
|
4075
|
+
const data = {
|
|
4076
|
+
...previous?.data,
|
|
4077
|
+
...next.data
|
|
4078
|
+
};
|
|
4079
|
+
const subagent = makeAcpSubagentSummaryState({
|
|
4080
|
+
toolCallId: next.toolCallId,
|
|
4081
|
+
...kind ? { kind } : {},
|
|
4082
|
+
...title ? { title } : {},
|
|
4083
|
+
...status ? { status } : {},
|
|
4084
|
+
...command ? { command } : {},
|
|
4085
|
+
...detail ? { detail } : {},
|
|
4086
|
+
data
|
|
4087
|
+
});
|
|
4005
4088
|
return {
|
|
4006
4089
|
toolCallId: next.toolCallId,
|
|
4007
4090
|
...kind ? { kind } : {},
|
|
@@ -4009,10 +4092,8 @@ function mergeToolCallState(previous, next) {
|
|
|
4009
4092
|
...status ? { status } : {},
|
|
4010
4093
|
...command ? { command } : {},
|
|
4011
4094
|
...detail ? { detail } : {},
|
|
4012
|
-
|
|
4013
|
-
|
|
4014
|
-
...next.data
|
|
4015
|
-
}
|
|
4095
|
+
...subagent ? { subagent } : {},
|
|
4096
|
+
data
|
|
4016
4097
|
};
|
|
4017
4098
|
}
|
|
4018
4099
|
function parsePermissionRequest(params) {
|
|
@@ -4083,6 +4164,17 @@ function parseSessionUpdateEvent(params) {
|
|
|
4083
4164
|
rawPayload: params
|
|
4084
4165
|
});
|
|
4085
4166
|
break;
|
|
4167
|
+
case "usage_update":
|
|
4168
|
+
if (upd.used > 0) events.push({
|
|
4169
|
+
_tag: "UsageUpdated",
|
|
4170
|
+
usage: {
|
|
4171
|
+
usedTokens: upd.used,
|
|
4172
|
+
lastUsedTokens: upd.used,
|
|
4173
|
+
...upd.size > 0 ? { maxTokens: upd.size } : {}
|
|
4174
|
+
},
|
|
4175
|
+
rawPayload: params
|
|
4176
|
+
});
|
|
4177
|
+
break;
|
|
4086
4178
|
default: break;
|
|
4087
4179
|
}
|
|
4088
4180
|
return {
|
|
@@ -4501,7 +4593,8 @@ const PROVIDER$1 = require_collectUint8StreamText.ProviderDriverKind.make("curso
|
|
|
4501
4593
|
const CURSOR_PRESENTATION = {
|
|
4502
4594
|
displayName: "Cursor",
|
|
4503
4595
|
badgeLabel: "Early Access",
|
|
4504
|
-
showInteractionModeToggle: true
|
|
4596
|
+
showInteractionModeToggle: true,
|
|
4597
|
+
supportsAskMode: true
|
|
4505
4598
|
};
|
|
4506
4599
|
const EMPTY_CAPABILITIES = require_bin.createModelCapabilities({ optionDescriptors: [] });
|
|
4507
4600
|
const CURSOR_ACP_MODEL_DISCOVERY_TIMEOUT_MS = 15e3;
|
|
@@ -5105,7 +5198,7 @@ const enrichCursorSnapshot = (input) => {
|
|
|
5105
5198
|
const { settings, snapshot, publishSnapshot } = input;
|
|
5106
5199
|
const stampIdentity = input.stampIdentity ?? ((value) => value);
|
|
5107
5200
|
if (!settings.enabled || snapshot.auth.status === "unauthenticated") return effect.Effect.void;
|
|
5108
|
-
return require_bin.enrichProviderSnapshotWithVersionAdvisory(snapshot, input.maintenanceCapabilities).pipe(effect.Effect.provideService(effect_unstable_http.HttpClient.HttpClient, input.httpClient), effect.Effect.flatMap((enrichedSnapshot) => publishSnapshot(stampIdentity(enrichedSnapshot)).pipe(effect.Effect.asVoid)), effect.Effect.catchCause((cause) => effect.Effect.logWarning("Cursor version advisory enrichment failed", { cause: effect.Cause.pretty(cause) }).pipe(effect.Effect.asVoid)));
|
|
5201
|
+
return require_bin.enrichProviderSnapshotWithVersionAdvisory(snapshot, input.maintenanceCapabilities).pipe(effect.Effect.provideService(effect_unstable_http.HttpClient.HttpClient, input.httpClient), effect.Effect.provideService(require_bin.ServerSettingsService, input.serverSettings), effect.Effect.flatMap((enrichedSnapshot) => publishSnapshot(stampIdentity(enrichedSnapshot)).pipe(effect.Effect.asVoid)), effect.Effect.catchCause((cause) => effect.Effect.logWarning("Cursor version advisory enrichment failed", { cause: effect.Cause.pretty(cause) }).pipe(effect.Effect.asVoid)));
|
|
5109
5202
|
};
|
|
5110
5203
|
//#endregion
|
|
5111
5204
|
//#region src/provider/acp/CursorAcpSupport.ts
|
|
@@ -5347,8 +5440,9 @@ function canonicalRequestTypeFromAcpKind(kind) {
|
|
|
5347
5440
|
default: return "unknown";
|
|
5348
5441
|
}
|
|
5349
5442
|
}
|
|
5350
|
-
function
|
|
5351
|
-
|
|
5443
|
+
function canonicalItemTypeFromAcpToolCall(toolCall) {
|
|
5444
|
+
if (isAcpSubagentToolCall(toolCall)) return "collab_agent_tool_call";
|
|
5445
|
+
switch (toolCall.kind) {
|
|
5352
5446
|
case "execute": return "command_execution";
|
|
5353
5447
|
case "edit":
|
|
5354
5448
|
case "delete":
|
|
@@ -5426,7 +5520,7 @@ function makeAcpToolCallEvent(input) {
|
|
|
5426
5520
|
turnId: input.turnId,
|
|
5427
5521
|
itemId: require_collectUint8StreamText.RuntimeItemId.make(input.toolCall.toolCallId),
|
|
5428
5522
|
payload: {
|
|
5429
|
-
itemType:
|
|
5523
|
+
itemType: canonicalItemTypeFromAcpToolCall(input.toolCall),
|
|
5430
5524
|
...runtimeStatus ? { status: runtimeStatus } : {},
|
|
5431
5525
|
...input.toolCall.title ? { title: input.toolCall.title } : {},
|
|
5432
5526
|
...input.toolCall.detail ? { detail: input.toolCall.detail } : {},
|
|
@@ -5472,6 +5566,21 @@ function makeAcpContentDeltaEvent(input) {
|
|
|
5472
5566
|
}
|
|
5473
5567
|
};
|
|
5474
5568
|
}
|
|
5569
|
+
function makeAcpTokenUsageEvent(input) {
|
|
5570
|
+
return {
|
|
5571
|
+
type: "thread.token-usage.updated",
|
|
5572
|
+
...input.stamp,
|
|
5573
|
+
provider: input.provider,
|
|
5574
|
+
threadId: input.threadId,
|
|
5575
|
+
turnId: input.turnId,
|
|
5576
|
+
payload: { usage: input.usage },
|
|
5577
|
+
raw: {
|
|
5578
|
+
source: "acp.jsonrpc",
|
|
5579
|
+
method: "session/update",
|
|
5580
|
+
payload: input.rawPayload
|
|
5581
|
+
}
|
|
5582
|
+
};
|
|
5583
|
+
}
|
|
5475
5584
|
//#endregion
|
|
5476
5585
|
//#region src/provider/acp/AcpNativeLogging.ts
|
|
5477
5586
|
function writeNativeAcpLog(input) {
|
|
@@ -5586,6 +5695,7 @@ function resolveRequestedModeId(input) {
|
|
|
5586
5695
|
const modeState = input.modeState;
|
|
5587
5696
|
if (!modeState) return;
|
|
5588
5697
|
if (input.interactionMode === "plan") return findModeByAliases(modeState.availableModes, ACP_PLAN_MODE_ALIASES)?.id;
|
|
5698
|
+
if (input.interactionMode === "ask") return findModeByAliases(modeState.availableModes, ACP_APPROVAL_MODE_ALIASES)?.id;
|
|
5589
5699
|
if (input.runtimeMode === "approval-required") return findModeByAliases(modeState.availableModes, ACP_APPROVAL_MODE_ALIASES)?.id ?? findModeByAliases(modeState.availableModes, ACP_IMPLEMENT_MODE_ALIASES)?.id ?? modeState.availableModes.find((mode) => !isPlanMode(mode))?.id ?? modeState.currentModeId;
|
|
5590
5700
|
return findModeByAliases(modeState.availableModes, ACP_IMPLEMENT_MODE_ALIASES)?.id ?? findModeByAliases(modeState.availableModes, ACP_APPROVAL_MODE_ALIASES)?.id ?? modeState.availableModes.find((mode) => !isPlanMode(mode))?.id ?? modeState.currentModeId;
|
|
5591
5701
|
}
|
|
@@ -5636,6 +5746,66 @@ function makeCursorAdapter(cursorSettings, options) {
|
|
|
5636
5746
|
createdAt: nowIso
|
|
5637
5747
|
});
|
|
5638
5748
|
const offerRuntimeEvent = (event) => effect.PubSub.publish(runtimeEventPubSub, event).pipe(effect.Effect.asVoid);
|
|
5749
|
+
const offerAcpSubagentRuntimeEvents = effect.Effect.fn("offerAcpSubagentRuntimeEvents")(function* (ctx, subagentState, rawPayload) {
|
|
5750
|
+
if (!subagentState) return;
|
|
5751
|
+
const subagentId = String(subagentState.subagent.subagentId);
|
|
5752
|
+
if (!ctx.startedSubagentIds.has(subagentId)) {
|
|
5753
|
+
ctx.startedSubagentIds.add(subagentId);
|
|
5754
|
+
yield* offerRuntimeEvent({
|
|
5755
|
+
type: "subagent.started",
|
|
5756
|
+
...yield* makeEventStamp(),
|
|
5757
|
+
provider: PROVIDER,
|
|
5758
|
+
threadId: ctx.threadId,
|
|
5759
|
+
...ctx.activeTurnId ? { turnId: ctx.activeTurnId } : {},
|
|
5760
|
+
payload: { subagent: subagentState.subagent },
|
|
5761
|
+
raw: {
|
|
5762
|
+
source: "acp.jsonrpc",
|
|
5763
|
+
method: "session/update",
|
|
5764
|
+
payload: rawPayload
|
|
5765
|
+
}
|
|
5766
|
+
});
|
|
5767
|
+
}
|
|
5768
|
+
if (subagentState.status === "completed" || subagentState.status === "failed" || subagentState.status === "stopped") {
|
|
5769
|
+
if (ctx.completedSubagentIds.has(subagentId)) return;
|
|
5770
|
+
ctx.completedSubagentIds.add(subagentId);
|
|
5771
|
+
yield* offerRuntimeEvent({
|
|
5772
|
+
type: "subagent.completed",
|
|
5773
|
+
...yield* makeEventStamp(),
|
|
5774
|
+
provider: PROVIDER,
|
|
5775
|
+
threadId: ctx.threadId,
|
|
5776
|
+
...ctx.activeTurnId ? { turnId: ctx.activeTurnId } : {},
|
|
5777
|
+
payload: {
|
|
5778
|
+
subagent: subagentState.subagent,
|
|
5779
|
+
status: subagentState.status,
|
|
5780
|
+
...subagentState.summary ? { summary: subagentState.summary } : {}
|
|
5781
|
+
},
|
|
5782
|
+
raw: {
|
|
5783
|
+
source: "acp.jsonrpc",
|
|
5784
|
+
method: "session/update",
|
|
5785
|
+
payload: rawPayload
|
|
5786
|
+
}
|
|
5787
|
+
});
|
|
5788
|
+
return;
|
|
5789
|
+
}
|
|
5790
|
+
yield* offerRuntimeEvent({
|
|
5791
|
+
type: "subagent.updated",
|
|
5792
|
+
...yield* makeEventStamp(),
|
|
5793
|
+
provider: PROVIDER,
|
|
5794
|
+
threadId: ctx.threadId,
|
|
5795
|
+
...ctx.activeTurnId ? { turnId: ctx.activeTurnId } : {},
|
|
5796
|
+
payload: {
|
|
5797
|
+
subagent: subagentState.subagent,
|
|
5798
|
+
...subagentState.status ? { status: subagentState.status } : {},
|
|
5799
|
+
...subagentState.summary ? { summary: subagentState.summary } : {},
|
|
5800
|
+
...subagentState.detail ? { detail: subagentState.detail } : {}
|
|
5801
|
+
},
|
|
5802
|
+
raw: {
|
|
5803
|
+
source: "acp.jsonrpc",
|
|
5804
|
+
method: "session/update",
|
|
5805
|
+
payload: rawPayload
|
|
5806
|
+
}
|
|
5807
|
+
});
|
|
5808
|
+
});
|
|
5639
5809
|
const getThreadSemaphore = (threadId) => effect.SynchronizedRef.modifyEffect(threadLocksRef, (current) => {
|
|
5640
5810
|
const existing = effect.Option.fromNullishOr(current.get(threadId));
|
|
5641
5811
|
return effect.Option.match(existing, {
|
|
@@ -5884,6 +6054,8 @@ function makeCursorAdapter(cursorSettings, options) {
|
|
|
5884
6054
|
pendingApprovals,
|
|
5885
6055
|
pendingUserInputs,
|
|
5886
6056
|
turns: [],
|
|
6057
|
+
startedSubagentIds: /* @__PURE__ */ new Set(),
|
|
6058
|
+
completedSubagentIds: /* @__PURE__ */ new Set(),
|
|
5887
6059
|
lastPlanFingerprint: void 0,
|
|
5888
6060
|
activeTurnId: void 0,
|
|
5889
6061
|
stopped: false
|
|
@@ -5925,6 +6097,7 @@ function makeCursorAdapter(cursorSettings, options) {
|
|
|
5925
6097
|
toolCall: event.toolCall,
|
|
5926
6098
|
rawPayload: event.rawPayload
|
|
5927
6099
|
}));
|
|
6100
|
+
yield* offerAcpSubagentRuntimeEvents(ctx, event.toolCall.subagent, event.rawPayload);
|
|
5928
6101
|
return;
|
|
5929
6102
|
case "ContentDelta":
|
|
5930
6103
|
yield* logNative(ctx.threadId, "session/update", event.rawPayload, "acp.jsonrpc");
|
|
@@ -5938,6 +6111,17 @@ function makeCursorAdapter(cursorSettings, options) {
|
|
|
5938
6111
|
rawPayload: event.rawPayload
|
|
5939
6112
|
}));
|
|
5940
6113
|
return;
|
|
6114
|
+
case "UsageUpdated":
|
|
6115
|
+
yield* logNative(ctx.threadId, "session/update", event.rawPayload, "acp.jsonrpc");
|
|
6116
|
+
yield* offerRuntimeEvent(makeAcpTokenUsageEvent({
|
|
6117
|
+
stamp: yield* makeEventStamp(),
|
|
6118
|
+
provider: PROVIDER,
|
|
6119
|
+
threadId: ctx.threadId,
|
|
6120
|
+
turnId: ctx.activeTurnId,
|
|
6121
|
+
usage: event.usage,
|
|
6122
|
+
rawPayload: event.rawPayload
|
|
6123
|
+
}));
|
|
6124
|
+
return;
|
|
5941
6125
|
}
|
|
5942
6126
|
}))).pipe(effect.Effect.forkChild);
|
|
5943
6127
|
ctx.notificationFiber = nf;
|
|
@@ -6179,6 +6363,7 @@ const CursorDriver = {
|
|
|
6179
6363
|
const fileSystem = yield* effect.FileSystem.FileSystem;
|
|
6180
6364
|
const path = yield* effect.Path.Path;
|
|
6181
6365
|
const httpClient = yield* effect_unstable_http.HttpClient.HttpClient;
|
|
6366
|
+
const serverSettings = yield* require_bin.ServerSettingsService;
|
|
6182
6367
|
const eventLoggers = yield* require_bin.ProviderEventLoggers;
|
|
6183
6368
|
const processEnv = require_bin.mergeProviderInstanceEnvironment(environment);
|
|
6184
6369
|
const continuationIdentity = require_ProviderDriver.defaultProviderContinuationIdentity({
|
|
@@ -6226,7 +6411,8 @@ const CursorDriver = {
|
|
|
6226
6411
|
maintenanceCapabilities,
|
|
6227
6412
|
publishSnapshot,
|
|
6228
6413
|
stampIdentity,
|
|
6229
|
-
httpClient
|
|
6414
|
+
httpClient,
|
|
6415
|
+
serverSettings
|
|
6230
6416
|
}),
|
|
6231
6417
|
refreshInterval: null
|
|
6232
6418
|
}).pipe(effect.Effect.mapError((cause) => new require_bin.ProviderDriverError({
|