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.
Files changed (159) hide show
  1. package/dist/{AzureDevOpsSourceControlProvider-CC2_COxP.mjs → AzureDevOpsSourceControlProvider-B5vb4DOU.mjs} +2 -2
  2. package/dist/{AzureDevOpsSourceControlProvider-6holYS_D.cjs → AzureDevOpsSourceControlProvider-CYZmJqSM.cjs} +2 -2
  3. package/dist/{BitbucketSourceControlProvider-CYR_BD1d.mjs → BitbucketSourceControlProvider-CcAb4IgH.mjs} +2 -2
  4. package/dist/{BitbucketSourceControlProvider-a0IsNFyG.cjs → BitbucketSourceControlProvider-D_7i4YQz.cjs} +2 -2
  5. package/dist/{ClaudeDriver-D3nsxwH9.mjs → ClaudeDriver-CoPBpdrp.mjs} +198 -8
  6. package/dist/{ClaudeDriver-C6tQNEWO.cjs → ClaudeDriver-ScqmbPKW.cjs} +197 -7
  7. package/dist/{CodexDriver-ms_YgFD7.cjs → CodexDriver-CtCCc3CC.cjs} +36 -8
  8. package/dist/{CodexDriver-BILrJG8o.mjs → CodexDriver-DH7vqku4.mjs} +37 -9
  9. package/dist/{CodexTextGeneration-BIKHl7E3.mjs → CodexTextGeneration-CJV1jPda.mjs} +3 -3
  10. package/dist/{CodexTextGeneration-CHEgoANm.cjs → CodexTextGeneration-Db2hn8Qz.cjs} +2 -2
  11. package/dist/{CopilotDriver-CmD3Ffyl.mjs → CopilotDriver-CFCF68Te.mjs} +7 -6
  12. package/dist/{CopilotDriver-B0--ZwIK.cjs → CopilotDriver-DLN2KEoc.cjs} +6 -5
  13. package/dist/{CursorDriver-DTVPXZ-R.cjs → CursorDriver-BlvQbOEZ.cjs} +201 -15
  14. package/dist/{CursorDriver-CbeaIbdb.mjs → CursorDriver-Dej81rwD.mjs} +202 -16
  15. package/dist/{ForgejoSourceControlProvider-DX6d9gvz.mjs → ForgejoSourceControlProvider-3cFD7SqY.mjs} +2 -2
  16. package/dist/{ForgejoSourceControlProvider-DwAog76b.cjs → ForgejoSourceControlProvider-DYFUGvBk.cjs} +2 -2
  17. package/dist/{GitHubSourceControlProvider-9lJFzjsu.cjs → GitHubSourceControlProvider-B1Tp0TbY.cjs} +27 -4
  18. package/dist/{GitHubSourceControlProvider-C-LGwho3.mjs → GitHubSourceControlProvider-Kf4rrBTF.mjs} +27 -4
  19. package/dist/{GitLabSourceControlProvider-CvKA74lg.cjs → GitLabSourceControlProvider-D3vvKrB4.cjs} +2 -2
  20. package/dist/{GitLabSourceControlProvider-CkeT2aEx.mjs → GitLabSourceControlProvider-Ygppeftk.mjs} +2 -2
  21. package/dist/{NodeSqliteClient-B5aDHbNc.cjs → NodeSqliteClient-D1O-MR8w.cjs} +4 -1
  22. package/dist/{NodeSqliteClient-A1TEgwj_.mjs → NodeSqliteClient-DdTjpAko.mjs} +4 -1
  23. package/dist/{OpenCodeDriver-ClWtCk0j.mjs → OpenCodeDriver-BGa9Tkot.mjs} +326 -39
  24. package/dist/{OpenCodeDriver-CXUsnl5o.cjs → OpenCodeDriver-mbR9mF54.cjs} +325 -38
  25. package/dist/{SourceControlProviderDiscoveryCatalog-_rg0mc1o.cjs → SourceControlProviderDiscoveryCatalog-CTb100Uk.cjs} +1 -64
  26. package/dist/{SourceControlProviderDiscoveryCatalog-yMDer_Yh.mjs → SourceControlProviderDiscoveryCatalog-Zk11tJoL.mjs} +3 -48
  27. package/dist/bin.cjs +1481 -704
  28. package/dist/bin.mjs +1435 -659
  29. package/dist/client/assets/{AnimatedHeight-DgItDSis.js → AnimatedHeight-CPQ2q38I.js} +1 -1
  30. package/dist/client/assets/AppearanceSettings-B0FYiIxL.js +1 -0
  31. package/dist/client/assets/{BranchToolbar.logic-C_xHEt9C.js → BranchToolbar.logic-C1yjFjxJ.js} +1 -1
  32. package/dist/client/assets/ChatRightPanel-CJDSKMU2.js +188 -0
  33. package/dist/client/assets/ChatThreadRouteView-BaKwKGbC.js +1 -0
  34. package/dist/client/assets/CommandPaletteDialog-BHG_MdZk.js +1 -0
  35. package/dist/client/assets/CompositeRoot-Bs0hfelE.js +1 -0
  36. package/dist/client/assets/ConnectionsSettings-DvZNgO60.js +1 -0
  37. package/dist/client/assets/{DiagnosticsSettings-B340S_mq.js → DiagnosticsSettings-0v_hh1Qh.js} +1 -1
  38. package/dist/client/assets/{DialogHandle-BJY7cHCV.js → DialogHandle-CwEAVRF_.js} +1 -1
  39. package/dist/client/assets/{DialogRoot-Ej1FVk-_.js → DialogRoot-CYuaaDI3.js} +1 -1
  40. package/dist/client/assets/DialogTitle-Cak6zT3u.js +1 -0
  41. package/dist/client/assets/DialogTrigger-BD0KYYT-.js +1 -0
  42. package/dist/client/assets/{DialogViewport-DvjAl76K.js → DialogViewport-9sGf4JUp.js} +1 -1
  43. package/dist/client/assets/{DraftChatThreadRouteView-pOkyeKPS.js → DraftChatThreadRouteView-nvKLHlii.js} +1 -1
  44. package/dist/client/assets/{JetBrainsIcons-DTTF47I0.js → JetBrainsIcons-CflvH7gO.js} +1 -1
  45. package/dist/client/assets/KeybindingsSettings-DhLKhgYn.js +7 -0
  46. package/dist/client/assets/McpServersSettings-COs_dng1.js +6 -0
  47. package/dist/client/assets/{NoActiveThreadState-DVHwrkCp.js → NoActiveThreadState-cxMCW-cQ.js} +1 -1
  48. package/dist/client/assets/OpinionatedPluginsSettings-ag_OgOGj.js +1 -0
  49. package/dist/client/assets/{ProjectFavicon-TDP7HRfn.js → ProjectFavicon-D97Hy4xo.js} +1 -1
  50. package/dist/client/assets/{ProviderUpdateLaunchNotification.logic-6TpFsmiI.js → ProviderUpdateLaunchNotification.logic-RMYvRSEk.js} +1 -1
  51. package/dist/client/assets/ProvidersSettingsPanel-DcdVMRVC.js +1 -0
  52. package/dist/client/assets/{RedactedSensitiveText-BfoVjPsE.js → RedactedSensitiveText-CQY4pFAq.js} +1 -1
  53. package/dist/client/assets/RootAppShell-BRjETnaT.js +12 -0
  54. package/dist/client/assets/SettingsDialog-DRi5jsmq.js +2 -0
  55. package/dist/client/assets/SourceControlSettings-CdUulS4O.js +1 -0
  56. package/dist/client/assets/StatisticsPanel-NLU3ecLt.js +64 -0
  57. package/dist/client/assets/{ThreadStatusIndicators-B0leIJGD.js → ThreadStatusIndicators-CebYbeXP.js} +1 -1
  58. package/dist/client/assets/{ThreadTerminalDrawer-COq2Fk17.js → ThreadTerminalDrawer-DlI0gGer.js} +17 -17
  59. package/dist/client/assets/ThreadWorkspacePanel-CEIVrCZ0.js +166 -0
  60. package/dist/client/assets/{alert-dialog-lMfKpG2t.js → alert-dialog-wh07u3JU.js} +1 -1
  61. package/dist/client/assets/chart-column-Cg34FxwD.js +1 -0
  62. package/dist/client/assets/{chatThreadActions-PPyTj_x0.js → chatThreadActions-UitETN_n.js} +1 -1
  63. package/dist/client/assets/chevron-up-C3DS3evc.js +1 -0
  64. package/dist/client/assets/{clamp-JiD4IZ0Z.js → clamp-DPbdAzEu.js} +1 -1
  65. package/dist/client/assets/{clipboard-copy-CYBLSG2q.js → clipboard-copy-ClVNnHW5.js} +1 -1
  66. package/dist/client/assets/clock-Cr66Pt4W.js +1 -0
  67. package/dist/client/assets/{commandPaletteStore-uVfCD7zE.js → commandPaletteStore-DzUBFRor.js} +1 -1
  68. package/dist/client/assets/composerDraftStore-BfLPHwHL.js +21 -0
  69. package/dist/client/assets/{desktopUpdateAtoms-X6uM5SoD.js → desktopUpdateAtoms-BiqPT2_z.js} +1 -1
  70. package/dist/client/assets/{download-DLBlpp4h.js → download-DJ1juHK4.js} +1 -1
  71. package/dist/client/assets/{draft-input-dLlVMl5P.js → draft-input-B1txZFC7.js} +1 -1
  72. package/dist/client/assets/editorPreferences-Bbmh6Bm1.js +1 -0
  73. package/dist/client/assets/{empty-DlLY-Hhj.js → empty-CUEYr1p8.js} +1 -1
  74. package/dist/client/assets/{group-zDBPF7rR.js → group-BouZ2n9F.js} +1 -1
  75. package/dist/client/assets/{index-Dq8sT2lF.js → index-DiHgOLH_.js} +2 -2
  76. package/dist/client/assets/{input-B9-RWT56.js → input-Do_m9U-4.js} +1 -1
  77. package/dist/client/assets/kbd-DJilTfYF.js +1 -0
  78. package/dist/client/assets/{keybindings-Dx4Nc1vY.js → keybindings-CRkz0yvp.js} +1 -1
  79. package/dist/client/assets/{keyboard-DDTWQkr0.js → keyboard-D3WgbAUQ.js} +1 -1
  80. package/dist/client/assets/{keyedQuery-Ds4OGhX2.js → keyedQuery-PQcOnB2O.js} +0 -0
  81. package/dist/client/assets/{main-DxfpmoKJ.js → main-C-491vdD.js} +2 -2
  82. package/dist/client/assets/main-fW5L_SdM.css +2 -0
  83. package/dist/client/assets/{palette-BQcz-ZYV.js → palette-BRoYo327.js} +1 -1
  84. package/dist/client/assets/{play-QloDGe4R.js → play-BZbHk_vw.js} +1 -1
  85. package/dist/client/assets/plus-D0S72hZS.js +1 -0
  86. package/dist/client/assets/projectAtoms-KYCIIuVn.js +1 -0
  87. package/dist/client/assets/providerDriverMeta-BX4CLldz.js +1 -0
  88. package/dist/client/assets/providerIconUtils-DTRc3qno.js +47 -0
  89. package/dist/client/assets/radio-group-De3hRQoY.js +1 -0
  90. package/dist/client/assets/{refresh-cw-DkBMGllm.js → refresh-cw-D_1NT-T2.js} +1 -1
  91. package/dist/client/assets/{resolveAriaLabelledBy-DDfIbj05.js → resolveAriaLabelledBy-RblUm3b1.js} +1 -1
  92. package/dist/client/assets/rightPanelRouteSearch-DLllyqRr.js +1 -0
  93. package/dist/client/assets/{scale-BActunFu.js → scale-s57Ro96s.js} +1 -1
  94. package/dist/client/assets/{scroll-area-D-YOUG02.js → scroll-area-B0_k8-iT.js} +1 -1
  95. package/dist/client/assets/{separator-TInKeIDo.js → separator-AyXRgdnJ.js} +1 -1
  96. package/dist/client/assets/{server-BtEG3NAw.js → server-Z-m1OqE5.js} +1 -1
  97. package/dist/client/assets/{session-logic-DNf1aXq_.js → session-logic-B87Htlw4.js} +2 -2
  98. package/dist/client/assets/settingsDialogStore-CxUfUnd9.js +1 -0
  99. package/dist/client/assets/{settingsLayout-D22Mm0u3.js → settingsLayout-BtKS3Z8f.js} +1 -1
  100. package/dist/client/assets/sidebar-B0WxOej2.js +1 -0
  101. package/dist/client/assets/sidebarStatusText-C_EsHj20.js +1 -0
  102. package/dist/client/assets/{skeleton-DWaac_qp.js → skeleton-COt2Az5i.js} +1 -1
  103. package/dist/client/assets/{storeSelectors-Cx1IYPA4.js → storeSelectors-BuB4Kzj6.js} +1 -1
  104. package/dist/client/assets/threadSelectionStore-BS6X6HHt.js +1 -0
  105. package/dist/client/assets/toast-CaV8TQi_.js +1 -0
  106. package/dist/client/assets/toggle-DE4ApNIU.js +1 -0
  107. package/dist/client/assets/{toggle-group-CnLjaHSL.js → toggle-group-BuzAkAEk.js} +1 -1
  108. package/dist/client/assets/{tokenModePresentation-BSYdIvBm.js → tokenModePresentation-BCL2aeat.js} +1 -1
  109. package/dist/client/assets/{trash-2-BI5xcbsm.js → trash-2-ZZ1feCT6.js} +1 -1
  110. package/dist/client/assets/{triangle-alert-DJef_Uvh.js → triangle-alert-CL3zqnKL.js} +1 -1
  111. package/dist/client/assets/{undo-2-DeZ2cMGS.js → undo-2-Cu9H3R3q.js} +1 -1
  112. package/dist/client/assets/{useHandleNewThread-XB82O6SA.js → useHandleNewThread-Gke-ZFBr.js} +1 -1
  113. package/dist/client/assets/useLabelableId-DfuxWqrk.js +1 -0
  114. package/dist/client/assets/{useNavigate-B2tgshhW.js → useNavigate-DQEHh6ky.js} +1 -1
  115. package/dist/client/assets/useTheme-HcKmBfpF.js +1 -0
  116. package/dist/client/assets/{vscode-icons-DM9qFoEr.js → vscode-icons-DGDiHkqG.js} +1 -1
  117. package/dist/client/assets/{wrench-je4QOyG-.js → wrench-C_OATMLq.js} +1 -1
  118. package/dist/client/assets/x-BG9zZGeD.js +1 -0
  119. package/dist/client/index.html +1 -1
  120. package/dist/{collectUint8StreamText-TCG6xW_P.cjs → collectUint8StreamText-B-GW3u_2.cjs} +367 -15
  121. package/dist/{collectUint8StreamText-C2z5Y8tF.mjs → collectUint8StreamText-COE2_gie.mjs} +345 -17
  122. package/dist/{makeManagedServerProvider-BXO8QvzC.mjs → makeManagedServerProvider-D1_iEWGi.mjs} +1 -1
  123. package/dist/{makeManagedServerProvider-DPFw9gV_.cjs → makeManagedServerProvider-DTsQ87HL.cjs} +1 -1
  124. package/package.json +4 -2
  125. package/dist/client/assets/AppearanceSettings-BlsMFBvJ.js +0 -1
  126. package/dist/client/assets/ChatRightPanel-CThudBb1.js +0 -188
  127. package/dist/client/assets/ChatThreadRouteView-CV6ETYG5.js +0 -1
  128. package/dist/client/assets/CommandPaletteDialog-C_H7R8S5.js +0 -1
  129. package/dist/client/assets/CompositeRoot-DjnzUIwC.js +0 -1
  130. package/dist/client/assets/ConnectionsSettings-hArR4Oe3.js +0 -1
  131. package/dist/client/assets/DialogTitle-H1yIMmA9.js +0 -1
  132. package/dist/client/assets/DialogTrigger-BHMq_K2G.js +0 -1
  133. package/dist/client/assets/KeybindingsSettings-CW3RRi-7.js +0 -7
  134. package/dist/client/assets/McpServersSettings-dQ3BzOWY.js +0 -6
  135. package/dist/client/assets/OpinionatedPluginsSettings-Cjj23Fs4.js +0 -1
  136. package/dist/client/assets/ProvidersSettingsPanel-D15EeWAq.js +0 -1
  137. package/dist/client/assets/RootAppShell-CWBPSA2w.js +0 -12
  138. package/dist/client/assets/SettingsDialog-oJCE5foT.js +0 -2
  139. package/dist/client/assets/SourceControlSettings-CPnlMxNm.js +0 -1
  140. package/dist/client/assets/ThreadWorkspacePanel-qF9y6QT9.js +0 -166
  141. package/dist/client/assets/composerDraftStore-D12lUSfh.js +0 -21
  142. package/dist/client/assets/editorPreferences-BLeEBSD_.js +0 -1
  143. package/dist/client/assets/folder-open-DMjz0lpx.js +0 -1
  144. package/dist/client/assets/kbd-aeSsjiPI.js +0 -1
  145. package/dist/client/assets/main-C57RhHZ_.css +0 -2
  146. package/dist/client/assets/plus-4Oy56d-3.js +0 -1
  147. package/dist/client/assets/projectAtoms-DUEBb7Zz.js +0 -1
  148. package/dist/client/assets/providerDriverMeta-Dwi6Zqgd.js +0 -1
  149. package/dist/client/assets/providerIconUtils-uhWb4bdg.js +0 -47
  150. package/dist/client/assets/radio-group-DHyQlLeX.js +0 -1
  151. package/dist/client/assets/rightPanelRouteSearch-DfuWVvXN.js +0 -1
  152. package/dist/client/assets/settingsDialogStore-BINi7pdD.js +0 -1
  153. package/dist/client/assets/sidebar-DHwNQmWp.js +0 -1
  154. package/dist/client/assets/threadSelectionStore-C0ig4405.js +0 -1
  155. package/dist/client/assets/toast-DE7a4wkW.js +0 -1
  156. package/dist/client/assets/toggle-BIW4AyPY.js +0 -1
  157. package/dist/client/assets/useLabelableId-DBAgv9qQ.js +0 -1
  158. package/dist/client/assets/useTheme-Dv42Z8uy.js +0 -1
  159. package/dist/client/assets/x-fI9snvD3.js +0 -1
@@ -1 +1 @@
1
- import{Xr as e}from"./composerDraftStore-D12lUSfh.js";var t=e(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]);export{t};
1
+ import{Zr as e}from"./composerDraftStore-BfLPHwHL.js";var t=e(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]);export{t};
@@ -0,0 +1 @@
1
+ import{Zr as e}from"./composerDraftStore-BfLPHwHL.js";var t=e(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]);export{t};
@@ -90,7 +90,7 @@
90
90
  }
91
91
  </style>
92
92
  <title>Ryco (Alpha)</title>
93
- <script type="module" crossorigin src="/assets/index-Dq8sT2lF.js"></script>
93
+ <script type="module" crossorigin src="/assets/index-DiHgOLH_.js"></script>
94
94
  </head>
95
95
  <body>
96
96
  <div id="root">
@@ -37,6 +37,7 @@ makeEntityId("RuntimeSessionId");
37
37
  const RuntimeItemId = makeEntityId("RuntimeItemId");
38
38
  const RuntimeRequestId = makeEntityId("RuntimeRequestId");
39
39
  const RuntimeTaskId = makeEntityId("RuntimeTaskId");
40
+ const RuntimeSubagentId = makeEntityId("RuntimeSubagentId");
40
41
  const ApprovalRequestId = makeEntityId("ApprovalRequestId");
41
42
  const CheckpointRef = makeEntityId("CheckpointRef");
42
43
  //#endregion
@@ -865,6 +866,14 @@ const DEFAULT_GIT_TEXT_GENERATION_MODEL_BY_PROVIDER = {
865
866
  };
866
867
  const MODEL_SLUG_ALIASES_BY_PROVIDER = {
867
868
  [CODEX_DRIVER_KIND]: {
869
+ "5.6": "gpt-5.6-sol",
870
+ "gpt-5.6": "gpt-5.6-sol",
871
+ sol: "gpt-5.6-sol",
872
+ "5.6-sol": "gpt-5.6-sol",
873
+ terra: "gpt-5.6-terra",
874
+ "5.6-terra": "gpt-5.6-terra",
875
+ luna: "gpt-5.6-luna",
876
+ "5.6-luna": "gpt-5.6-luna",
868
877
  "gpt-5-codex": "gpt-5.4",
869
878
  "5.4": "gpt-5.4",
870
879
  "5.3": "gpt-5.3-codex",
@@ -873,6 +882,8 @@ const MODEL_SLUG_ALIASES_BY_PROVIDER = {
873
882
  "gpt-5.3-spark": "gpt-5.3-codex-spark"
874
883
  },
875
884
  [CLAUDE_DRIVER_KIND]: {
885
+ fable: "claude-fable-5",
886
+ "fable-5": "claude-fable-5",
876
887
  opus: "claude-opus-4-8",
877
888
  "opus-4.8": "claude-opus-4-8",
878
889
  "claude-opus-4.8": "claude-opus-4-8",
@@ -881,7 +892,9 @@ const MODEL_SLUG_ALIASES_BY_PROVIDER = {
881
892
  "opus-4.6": "claude-opus-4-6",
882
893
  "claude-opus-4.6": "claude-opus-4-6",
883
894
  "claude-opus-4-6-20251117": "claude-opus-4-6",
884
- sonnet: "claude-sonnet-4-6",
895
+ sonnet: "claude-sonnet-5",
896
+ "sonnet-5": "claude-sonnet-5",
897
+ "claude-sonnet-5": "claude-sonnet-5",
885
898
  "sonnet-4.6": "claude-sonnet-4-6",
886
899
  "claude-sonnet-4.6": "claude-sonnet-4-6",
887
900
  "claude-sonnet-4-6-20251117": "claude-sonnet-4-6",
@@ -1251,6 +1264,13 @@ const SourceControlWorkflowRunListInput = effect.Schema.Struct({
1251
1264
  cwd: TrimmedNonEmptyString,
1252
1265
  pullRequestNumber: effect.Schema.optional(PositiveInt),
1253
1266
  commitSha: effect.Schema.optional(TrimmedNonEmptyString),
1267
+ /**
1268
+ * Branch to scope runs to when there is no pull request (e.g. the default
1269
+ * branch). Ignored when `pullRequestNumber` or `commitSha` is provided.
1270
+ * Providers narrow the result to the branch's most recent commit so the
1271
+ * panel shows the latest push's checks — the branch analogue of a PR head.
1272
+ */
1273
+ branch: effect.Schema.optional(TrimmedNonEmptyString),
1254
1274
  limit: effect.Schema.optional(PositiveInt)
1255
1275
  });
1256
1276
  const SourceControlWorkflowRunListResult = effect.Schema.Struct({
@@ -1786,6 +1806,7 @@ const ORCHESTRATION_WS_METHODS = {
1786
1806
  dispatchCommand: "orchestration.dispatchCommand",
1787
1807
  getTurnDiff: "orchestration.getTurnDiff",
1788
1808
  getFullThreadDiff: "orchestration.getFullThreadDiff",
1809
+ searchThreadMessages: "orchestration.searchThreadMessages",
1789
1810
  replayEvents: "orchestration.replayEvents",
1790
1811
  replayEventsPage: "orchestration.replayEventsPage",
1791
1812
  subscribeShell: "orchestration.subscribeShell",
@@ -1851,7 +1872,11 @@ const RuntimeMode = effect.Schema.Literals([
1851
1872
  "full-access"
1852
1873
  ]);
1853
1874
  const DEFAULT_RUNTIME_MODE = "full-access";
1854
- const ProviderInteractionMode = effect.Schema.Literals(["default", "plan"]);
1875
+ const ProviderInteractionMode = effect.Schema.Literals([
1876
+ "default",
1877
+ "plan",
1878
+ "ask"
1879
+ ]);
1855
1880
  const DEFAULT_PROVIDER_INTERACTION_MODE = "default";
1856
1881
  const AgentTokenMode = effect.Schema.Literals([
1857
1882
  "off",
@@ -3065,6 +3090,18 @@ const OrchestrationGetFullThreadDiffInput = effect.Schema.Struct({
3065
3090
  ignoreWhitespace: effect.Schema.optionalKey(effect.Schema.Boolean)
3066
3091
  });
3067
3092
  const OrchestrationGetFullThreadDiffResult = ThreadTurnDiff;
3093
+ const OrchestrationSearchThreadMessagesInput = effect.Schema.Struct({
3094
+ query: TrimmedNonEmptyString,
3095
+ projectId: effect.Schema.optional(ProjectId),
3096
+ limit: PositiveInt
3097
+ });
3098
+ const OrchestrationThreadMessageSearchResult = effect.Schema.Struct({
3099
+ threadId: ThreadId,
3100
+ messageId: MessageId,
3101
+ snippet: effect.Schema.String,
3102
+ timestamp: IsoDateTime
3103
+ });
3104
+ const OrchestrationSearchThreadMessagesResult = effect.Schema.Array(OrchestrationThreadMessageSearchResult);
3068
3105
  const OrchestrationReplayEventsInput = effect.Schema.Struct({ fromSequenceExclusive: NonNegativeInt });
3069
3106
  const OrchestrationReplayEventsResult = effect.Schema.Array(OrchestrationEvent);
3070
3107
  const OrchestrationReplayEventsPageInput = effect.Schema.Struct({
@@ -3089,6 +3126,10 @@ const OrchestrationRpcSchemas = {
3089
3126
  input: OrchestrationGetFullThreadDiffInput,
3090
3127
  output: OrchestrationGetFullThreadDiffResult
3091
3128
  },
3129
+ searchThreadMessages: {
3130
+ input: OrchestrationSearchThreadMessagesInput,
3131
+ output: OrchestrationSearchThreadMessagesResult
3132
+ },
3092
3133
  replayEvents: {
3093
3134
  input: OrchestrationReplayEventsInput,
3094
3135
  output: OrchestrationReplayEventsResult
@@ -3364,6 +3405,10 @@ effect.Schema.Literals([
3364
3405
  "task.started",
3365
3406
  "task.progress",
3366
3407
  "task.completed",
3408
+ "subagent.started",
3409
+ "subagent.updated",
3410
+ "subagent.completed",
3411
+ "subagent.message.delta",
3367
3412
  "hook.started",
3368
3413
  "hook.progress",
3369
3414
  "hook.completed",
@@ -3413,6 +3458,10 @@ const UserInputResolvedType = effect.Schema.Literal("user-input.resolved");
3413
3458
  const TaskStartedType = effect.Schema.Literal("task.started");
3414
3459
  const TaskProgressType = effect.Schema.Literal("task.progress");
3415
3460
  const TaskCompletedType = effect.Schema.Literal("task.completed");
3461
+ const SubagentStartedType = effect.Schema.Literal("subagent.started");
3462
+ const SubagentUpdatedType = effect.Schema.Literal("subagent.updated");
3463
+ const SubagentCompletedType = effect.Schema.Literal("subagent.completed");
3464
+ const SubagentMessageDeltaType = effect.Schema.Literal("subagent.message.delta");
3416
3465
  const HookStartedType = effect.Schema.Literal("hook.started");
3417
3466
  const HookProgressType = effect.Schema.Literal("hook.progress");
3418
3467
  const HookCompletedType = effect.Schema.Literal("hook.completed");
@@ -3571,6 +3620,59 @@ const TaskCompletedPayload = effect.Schema.Struct({
3571
3620
  summary: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3572
3621
  usage: effect.Schema.optional(effect.Schema.Unknown)
3573
3622
  });
3623
+ const RuntimeSubagentOrigin = effect.Schema.Literals(["native", "inferred"]);
3624
+ const RuntimeSubagentCapability = effect.Schema.Literals(["transcript", "summary"]);
3625
+ const RuntimeSubagentStatus = effect.Schema.Literals([
3626
+ "starting",
3627
+ "running",
3628
+ "completed",
3629
+ "failed",
3630
+ "stopped"
3631
+ ]);
3632
+ const SubagentRef = effect.Schema.Struct({
3633
+ subagentId: RuntimeSubagentId,
3634
+ origin: RuntimeSubagentOrigin,
3635
+ capability: RuntimeSubagentCapability,
3636
+ label: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3637
+ description: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3638
+ providerSessionId: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3639
+ providerThreadId: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3640
+ providerTaskId: effect.Schema.optional(RuntimeTaskId),
3641
+ parentProviderItemId: effect.Schema.optional(ProviderItemId),
3642
+ metadata: effect.Schema.optional(UnknownRecordSchema)
3643
+ });
3644
+ const SubagentStartedPayload = effect.Schema.Struct({ subagent: SubagentRef });
3645
+ const SubagentUpdatedPayload = effect.Schema.Struct({
3646
+ subagent: SubagentRef,
3647
+ status: effect.Schema.optional(RuntimeSubagentStatus),
3648
+ summary: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3649
+ detail: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3650
+ usage: effect.Schema.optional(effect.Schema.Unknown)
3651
+ });
3652
+ const SubagentCompletedPayload = effect.Schema.Struct({
3653
+ subagent: SubagentRef,
3654
+ status: effect.Schema.Literals([
3655
+ "completed",
3656
+ "failed",
3657
+ "stopped"
3658
+ ]),
3659
+ summary: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3660
+ usage: effect.Schema.optional(effect.Schema.Unknown)
3661
+ });
3662
+ const SubagentMessageDeltaPayload = effect.Schema.Struct({
3663
+ subagentId: RuntimeSubagentId,
3664
+ delta: effect.Schema.String,
3665
+ streamKind: effect.Schema.optional(RuntimeContentStreamKind),
3666
+ role: effect.Schema.optional(effect.Schema.Literals([
3667
+ "assistant",
3668
+ "user",
3669
+ "system"
3670
+ ])),
3671
+ providerSessionId: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3672
+ providerThreadId: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3673
+ providerMessageId: effect.Schema.optional(TrimmedNonEmptyStringSchema$1),
3674
+ contentIndex: effect.Schema.optional(effect.Schema.Int)
3675
+ });
3574
3676
  const HookStartedPayload = effect.Schema.Struct({
3575
3677
  hookId: TrimmedNonEmptyStringSchema$1,
3576
3678
  hookName: TrimmedNonEmptyStringSchema$1,
@@ -3812,6 +3914,26 @@ const ProviderRuntimeTaskCompletedEvent = effect.Schema.Struct({
3812
3914
  type: TaskCompletedType,
3813
3915
  payload: TaskCompletedPayload
3814
3916
  });
3917
+ const ProviderRuntimeSubagentStartedEvent = effect.Schema.Struct({
3918
+ ...ProviderRuntimeEventBase.fields,
3919
+ type: SubagentStartedType,
3920
+ payload: SubagentStartedPayload
3921
+ });
3922
+ const ProviderRuntimeSubagentUpdatedEvent = effect.Schema.Struct({
3923
+ ...ProviderRuntimeEventBase.fields,
3924
+ type: SubagentUpdatedType,
3925
+ payload: SubagentUpdatedPayload
3926
+ });
3927
+ const ProviderRuntimeSubagentCompletedEvent = effect.Schema.Struct({
3928
+ ...ProviderRuntimeEventBase.fields,
3929
+ type: SubagentCompletedType,
3930
+ payload: SubagentCompletedPayload
3931
+ });
3932
+ const ProviderRuntimeSubagentMessageDeltaEvent = effect.Schema.Struct({
3933
+ ...ProviderRuntimeEventBase.fields,
3934
+ type: SubagentMessageDeltaType,
3935
+ payload: SubagentMessageDeltaPayload
3936
+ });
3815
3937
  const ProviderRuntimeHookStartedEvent = effect.Schema.Struct({
3816
3938
  ...ProviderRuntimeEventBase.fields,
3817
3939
  type: HookStartedType,
@@ -3929,6 +4051,10 @@ effect.Schema.Union([
3929
4051
  ProviderRuntimeTaskStartedEvent,
3930
4052
  ProviderRuntimeTaskProgressEvent,
3931
4053
  ProviderRuntimeTaskCompletedEvent,
4054
+ ProviderRuntimeSubagentStartedEvent,
4055
+ ProviderRuntimeSubagentUpdatedEvent,
4056
+ ProviderRuntimeSubagentCompletedEvent,
4057
+ ProviderRuntimeSubagentMessageDeltaEvent,
3932
4058
  ProviderRuntimeHookStartedEvent,
3933
4059
  ProviderRuntimeHookProgressEvent,
3934
4060
  ProviderRuntimeHookCompletedEvent,
@@ -3977,6 +4103,7 @@ const MODEL_PICKER_JUMP_KEYBINDING_COMMANDS = [
3977
4103
  "modelPicker.jump.9"
3978
4104
  ];
3979
4105
  const THREAD_KEYBINDING_COMMANDS = [
4106
+ "thread.find",
3980
4107
  "thread.previous",
3981
4108
  "thread.next",
3982
4109
  ...THREAD_JUMP_KEYBINDING_COMMANDS
@@ -4085,7 +4212,7 @@ const GitStatusPollIntervalMs = effect_Schema.Literals([
4085
4212
  3e5
4086
4213
  ]);
4087
4214
  const ClientSettingsSchema = effect_Schema.Struct({
4088
- autoOpenPlanSidebar: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(true))),
4215
+ autoOpenPlanSidebar: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(false))),
4089
4216
  confirmThreadArchive: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(false))),
4090
4217
  confirmThreadDelete: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(true))),
4091
4218
  dismissedProviderUpdateNotificationKeys: effect_Schema.Array(TrimmedNonEmptyString).pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed([]))),
@@ -4105,7 +4232,8 @@ const ClientSettingsSchema = effect_Schema.Struct({
4105
4232
  sidebarThreadSortOrder: SidebarThreadSortOrder.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(DEFAULT_SIDEBAR_THREAD_SORT_ORDER))),
4106
4233
  timestampFormat: TimestampFormat.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(DEFAULT_TIMESTAMP_FORMAT))),
4107
4234
  preferredEditor: effect_Schema.NullOr(EditorId).pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(null))),
4108
- gitStatusPollIntervalMs: GitStatusPollIntervalMs.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(0)))
4235
+ gitStatusPollIntervalMs: GitStatusPollIntervalMs.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(0))),
4236
+ notifyOnTurnCompleteWhenUnfocused: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(true)))
4109
4237
  });
4110
4238
  const DEFAULT_CLIENT_SETTINGS = effect_Schema.decodeSync(ClientSettingsSchema)({});
4111
4239
  const ThreadEnvMode = effect_Schema.Literals(["local", "worktree"]);
@@ -4251,6 +4379,7 @@ const ObservabilitySettings = effect_Schema.Struct({
4251
4379
  });
4252
4380
  const ServerSettings = effect_Schema.Struct({
4253
4381
  enableAssistantStreaming: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(false))),
4382
+ enableProviderUpdateChecks: effect_Schema.Boolean.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(true))),
4254
4383
  defaultThreadEnvMode: ThreadEnvMode.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed("local"))),
4255
4384
  defaultAgentTokenMode: AgentTokenMode.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(DEFAULT_AGENT_TOKEN_MODE))),
4256
4385
  addProjectBaseDirectory: TrimmedString.pipe(effect_Schema.withDecodingDefault(effect.Effect.succeed(""))),
@@ -4321,6 +4450,7 @@ const OpenCodeSettingsPatch = effect_Schema.Struct({
4321
4450
  });
4322
4451
  const ServerSettingsPatch = effect_Schema.Struct({
4323
4452
  enableAssistantStreaming: effect_Schema.optionalKey(effect_Schema.Boolean),
4453
+ enableProviderUpdateChecks: effect_Schema.optionalKey(effect_Schema.Boolean),
4324
4454
  defaultThreadEnvMode: effect_Schema.optionalKey(ThreadEnvMode),
4325
4455
  defaultAgentTokenMode: effect_Schema.optionalKey(AgentTokenMode),
4326
4456
  addProjectBaseDirectory: effect_Schema.optionalKey(effect_Schema.String),
@@ -4504,6 +4634,7 @@ const ServerProvider = effect.Schema.Struct({
4504
4634
  badgeLabel: effect.Schema.optional(TrimmedNonEmptyString),
4505
4635
  continuation: effect.Schema.optional(ServerProviderContinuation),
4506
4636
  showInteractionModeToggle: effect.Schema.optional(effect.Schema.Boolean),
4637
+ supportsAskMode: effect.Schema.optional(effect.Schema.Boolean),
4507
4638
  enabled: effect.Schema.Boolean,
4508
4639
  installed: effect.Schema.Boolean,
4509
4640
  version: effect.Schema.NullOr(TrimmedNonEmptyString),
@@ -4826,6 +4957,119 @@ var DiagnosticsError = class extends effect.Schema.TaggedErrorClass()("Diagnosti
4826
4957
  }
4827
4958
  };
4828
4959
  //#endregion
4960
+ //#region ../../packages/contracts/src/statistics.ts
4961
+ /**
4962
+ * Usage statistics surfaced in Settings → Statistics.
4963
+ *
4964
+ * The server returns the finest sensible granularity — one bucket per
4965
+ * `(date, project, provider, model)` — and the client pivots/filters those
4966
+ * buckets into every chart (totals, per-model, per-project, time series)
4967
+ * without re-fetching.
4968
+ * Token counts and timings are derived on demand from the existing projection
4969
+ * tables; no dedicated statistics tables exist.
4970
+ */
4971
+ /** Selectable time window for the dashboard (client-side slicing of buckets). */
4972
+ const StatisticsRange = effect.Schema.Literals([
4973
+ "7d",
4974
+ "30d",
4975
+ "90d",
4976
+ "all"
4977
+ ]);
4978
+ effect.Schema.Struct({
4979
+ projectId: effect.Schema.optional(effect.Schema.NullOr(ProjectId)),
4980
+ model: effect.Schema.optional(effect.Schema.NullOr(effect.Schema.String)),
4981
+ provider: effect.Schema.optional(effect.Schema.NullOr(effect.Schema.String)),
4982
+ range: effect.Schema.optional(StatisticsRange)
4983
+ });
4984
+ /**
4985
+ * A model that appears in the data, with its best-effort provider driver kind.
4986
+ * String fields are plain `Schema.String` (not non-empty): these are
4987
+ * server-derived display values, and relaxing them keeps a stray empty/legacy
4988
+ * value from failing success-encoding and crashing the whole RPC.
4989
+ */
4990
+ const StatisticsModelRef = effect.Schema.Struct({
4991
+ model: effect.Schema.String,
4992
+ provider: effect.Schema.optional(effect.Schema.String)
4993
+ });
4994
+ const StatisticsProjectRef = effect.Schema.Struct({
4995
+ id: ProjectId,
4996
+ title: effect.Schema.String
4997
+ });
4998
+ /**
4999
+ * One row per `(date, project, provider, model)`. Numeric fields are plain
5000
+ * numbers (sums) to stay permissive — a provider that reports fractional usage
5001
+ * will not fail decoding.
5002
+ */
5003
+ const StatisticsDailyBucket = effect.Schema.Struct({
5004
+ /** Calendar day in UTC, formatted YYYY-MM-DD. */
5005
+ date: effect.Schema.String,
5006
+ projectId: ProjectId,
5007
+ model: effect.Schema.String,
5008
+ provider: effect.Schema.optional(effect.Schema.String),
5009
+ inputTokens: effect.Schema.Number,
5010
+ outputTokens: effect.Schema.Number,
5011
+ cachedInputTokens: effect.Schema.Number,
5012
+ reasoningTokens: effect.Schema.Number,
5013
+ /** Provider-reported total when available; may exceed known input/output split. */
5014
+ totalTokens: effect.Schema.Number,
5015
+ turns: effect.Schema.Number,
5016
+ activeMs: effect.Schema.Number,
5017
+ toolUses: effect.Schema.Number,
5018
+ filesChanged: effect.Schema.Number,
5019
+ additions: effect.Schema.Number,
5020
+ deletions: effect.Schema.Number,
5021
+ commits: effect.Schema.Number,
5022
+ pushes: effect.Schema.Number,
5023
+ threadsCreated: effect.Schema.Number
5024
+ });
5025
+ const StatisticsWorktreeSummary = effect.Schema.Struct({
5026
+ created: effect.Schema.Number,
5027
+ archived: effect.Schema.Number,
5028
+ active: effect.Schema.Number,
5029
+ openPrs: effect.Schema.Number
5030
+ });
5031
+ const StatisticsTotals = effect.Schema.Struct({
5032
+ inputTokens: effect.Schema.Number,
5033
+ outputTokens: effect.Schema.Number,
5034
+ cachedInputTokens: effect.Schema.Number,
5035
+ reasoningTokens: effect.Schema.Number,
5036
+ totalTokens: effect.Schema.Number,
5037
+ turns: effect.Schema.Number,
5038
+ activeMs: effect.Schema.Number,
5039
+ toolUses: effect.Schema.Number,
5040
+ filesChanged: effect.Schema.Number,
5041
+ additions: effect.Schema.Number,
5042
+ deletions: effect.Schema.Number,
5043
+ commits: effect.Schema.Number,
5044
+ pushes: effect.Schema.Number,
5045
+ threads: effect.Schema.Number,
5046
+ projects: effect.Schema.Number
5047
+ });
5048
+ /**
5049
+ * How per-day/per-model token figures were attributed:
5050
+ * - `per-turn-delta`: exact, one definitive delta per (thread, turn).
5051
+ * - `thread-cumulative`: approximate, a thread's cumulative total attributed to
5052
+ * its primary model and last-activity day (fallback when deltas are absent).
5053
+ * - `mixed`: exact deltas for threads that have them, cumulative fallback for
5054
+ * older/provider-limited threads.
5055
+ */
5056
+ const StatisticsTokenAttribution = effect.Schema.Literals([
5057
+ "per-turn-delta",
5058
+ "thread-cumulative",
5059
+ "mixed"
5060
+ ]);
5061
+ const StatisticsSnapshot = effect.Schema.Struct({
5062
+ generatedAt: IsoDateTime,
5063
+ /** Earliest activity date observed, useful for the "all time" label. */
5064
+ earliestActivityAt: effect.Schema.optional(IsoDateTime),
5065
+ projects: effect.Schema.Array(StatisticsProjectRef),
5066
+ models: effect.Schema.Array(StatisticsModelRef),
5067
+ dailyBuckets: effect.Schema.Array(StatisticsDailyBucket),
5068
+ worktrees: StatisticsWorktreeSummary,
5069
+ totals: StatisticsTotals,
5070
+ tokenAttribution: effect.Schema.optional(StatisticsTokenAttribution)
5071
+ });
5072
+ //#endregion
4829
5073
  //#region ../../packages/contracts/src/opinionatedPlugins.ts
4830
5074
  const OpinionatedPluginId = effect.Schema.Literals([
4831
5075
  "rtk",
@@ -5214,6 +5458,16 @@ const VcsStatusChangeRequest = effect.Schema.Struct({
5214
5458
  headRef: TrimmedNonEmptyStringSchema,
5215
5459
  state: VcsStatusChangeRequestState
5216
5460
  });
5461
+ /** A per-file diff summary plus its rolled-up insertion/deletion totals. */
5462
+ const VcsStatusDiffTotals = effect.Schema.Struct({
5463
+ files: effect.Schema.Array(effect.Schema.Struct({
5464
+ path: TrimmedNonEmptyStringSchema,
5465
+ insertions: NonNegativeInt,
5466
+ deletions: NonNegativeInt
5467
+ })),
5468
+ insertions: NonNegativeInt,
5469
+ deletions: NonNegativeInt
5470
+ });
5217
5471
  const VcsStatusLocalShape = {
5218
5472
  isRepo: effect.Schema.Boolean,
5219
5473
  sourceControlProvider: effect.Schema.optional(SourceControlProviderInfo),
@@ -5221,15 +5475,15 @@ const VcsStatusLocalShape = {
5221
5475
  isDefaultRef: effect.Schema.Boolean,
5222
5476
  refName: effect.Schema.NullOr(TrimmedNonEmptyStringSchema),
5223
5477
  hasWorkingTreeChanges: effect.Schema.Boolean,
5224
- workingTree: effect.Schema.Struct({
5225
- files: effect.Schema.Array(effect.Schema.Struct({
5226
- path: TrimmedNonEmptyStringSchema,
5227
- insertions: NonNegativeInt,
5228
- deletions: NonNegativeInt
5229
- })),
5230
- insertions: NonNegativeInt,
5231
- deletions: NonNegativeInt
5232
- })
5478
+ /** Uncommitted (staged + unstaged) working-tree changes. */
5479
+ workingTree: VcsStatusDiffTotals,
5480
+ /**
5481
+ * Committed changes on this branch relative to its base (merge-base of the
5482
+ * default branch and HEAD, i.e. `git diff base...HEAD` — the same set a PR
5483
+ * shows). Counts committed work whether or not it has been pushed. Omitted on
5484
+ * the default branch (nothing to compare against) and by non-git drivers.
5485
+ */
5486
+ committed: effect.Schema.optional(VcsStatusDiffTotals)
5233
5487
  };
5234
5488
  const VcsStatusRemoteShape = {
5235
5489
  hasUpstream: effect.Schema.Boolean,
@@ -5639,6 +5893,7 @@ const WS_METHODS = {
5639
5893
  threadsSetManualPosition: "threads.setManualPosition",
5640
5894
  worktreesSetManualPosition: "worktrees.setManualPosition",
5641
5895
  projectsInitializeGit: "projects.initializeGit",
5896
+ searchThreadMessages: "threads.searchMessages",
5642
5897
  terminalOpen: "terminal.open",
5643
5898
  terminalWrite: "terminal.write",
5644
5899
  terminalResize: "terminal.resize",
@@ -5659,6 +5914,7 @@ const WS_METHODS = {
5659
5914
  serverCheckOpinionatedPlugins: "server.checkOpinionatedPlugins",
5660
5915
  serverInstallOpinionatedPlugin: "server.installOpinionatedPlugin",
5661
5916
  serverGetDiagnosticsSnapshot: "server.getDiagnosticsSnapshot",
5917
+ serverGetStatistics: "server.getStatistics",
5662
5918
  mcpListWorkspaces: "mcp.listWorkspaces",
5663
5919
  mcpListServers: "mcp.listServers",
5664
5920
  mcpUpsertServer: "mcp.upsertServer",
@@ -5780,6 +6036,18 @@ const WorktreesSetManualPositionInput = effect.Schema.Struct({
5780
6036
  position: effect.Schema.Number
5781
6037
  });
5782
6038
  const ProjectsInitializeGitInput = effect.Schema.Struct({ projectId: ProjectId });
6039
+ const SearchThreadMessagesInput = effect.Schema.Struct({
6040
+ query: effect.Schema.String,
6041
+ projectId: effect.Schema.optional(ProjectId),
6042
+ limit: effect.Schema.optional(effect.Schema.Number)
6043
+ });
6044
+ const SearchThreadMessageResult = effect.Schema.Struct({
6045
+ threadId: ThreadId,
6046
+ messageId: effect.Schema.String,
6047
+ snippet: effect.Schema.String,
6048
+ timestamp: effect.Schema.String
6049
+ });
6050
+ const SearchThreadMessagesResult = effect.Schema.Struct({ results: effect.Schema.Array(SearchThreadMessageResult) });
5783
6051
  const EmptyRpcResult = effect.Schema.Struct({});
5784
6052
  const WsServerUpsertKeybindingRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.serverUpsertKeybinding, {
5785
6053
  payload: ServerUpsertKeybindingInput,
@@ -5838,6 +6106,11 @@ const WsServerGetDiagnosticsSnapshotRpc = effect_unstable_rpc_Rpc.make(WS_METHOD
5838
6106
  success: DiagnosticsSnapshot,
5839
6107
  error: effect.Schema.Union([DiagnosticsError, AuthRpcError])
5840
6108
  });
6109
+ const WsServerGetStatisticsRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.serverGetStatistics, {
6110
+ payload: effect.Schema.Struct({}),
6111
+ success: StatisticsSnapshot,
6112
+ error: AuthRpcError
6113
+ });
5841
6114
  const WsServerDiscoverSourceControlRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.serverDiscoverSourceControl, {
5842
6115
  payload: effect.Schema.Struct({}),
5843
6116
  success: SourceControlDiscoveryResult,
@@ -5957,7 +6230,7 @@ const WsSourceControlListChangeRequestsRpc = effect_unstable_rpc_Rpc.make(WS_MET
5957
6230
  query: effect.Schema.optional(effect.Schema.String)
5958
6231
  }),
5959
6232
  success: effect.Schema.Array(ChangeRequest),
5960
- error: SourceControlProviderError
6233
+ error: effect.Schema.Union([SourceControlProviderError, AuthRpcError])
5961
6234
  });
5962
6235
  const WsSourceControlSearchChangeRequestsRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.sourceControlSearchChangeRequests, {
5963
6236
  payload: effect.Schema.Struct({
@@ -6245,6 +6518,11 @@ const WsThreadsSetManualPositionRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.th
6245
6518
  success: EmptyRpcResult,
6246
6519
  error: effect.Schema.Union([GitManagerServiceError, AuthRpcError])
6247
6520
  });
6521
+ const WsSearchThreadMessagesRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.searchThreadMessages, {
6522
+ payload: SearchThreadMessagesInput,
6523
+ success: SearchThreadMessagesResult,
6524
+ error: effect.Schema.Union([AuthRpcError])
6525
+ });
6248
6526
  const WsWorktreesSetManualPositionRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.worktreesSetManualPosition, {
6249
6527
  payload: WorktreesSetManualPositionInput,
6250
6528
  success: EmptyRpcResult,
@@ -6324,6 +6602,11 @@ const WsOrchestrationGetFullThreadDiffRpc = effect_unstable_rpc_Rpc.make(ORCHEST
6324
6602
  success: OrchestrationRpcSchemas.getFullThreadDiff.output,
6325
6603
  error: OrchestrationGetFullThreadDiffError
6326
6604
  });
6605
+ const WsOrchestrationSearchThreadMessagesRpc = effect_unstable_rpc_Rpc.make(ORCHESTRATION_WS_METHODS.searchThreadMessages, {
6606
+ payload: OrchestrationSearchThreadMessagesInput,
6607
+ success: OrchestrationRpcSchemas.searchThreadMessages.output,
6608
+ error: OrchestrationGetSnapshotError
6609
+ });
6327
6610
  const WsOrchestrationReplayEventsRpc = effect_unstable_rpc_Rpc.make(ORCHESTRATION_WS_METHODS.replayEvents, {
6328
6611
  payload: OrchestrationReplayEventsInput,
6329
6612
  success: OrchestrationRpcSchemas.replayEvents.output,
@@ -6369,7 +6652,52 @@ const WsSubscribeAuthAccessRpc = effect_unstable_rpc_Rpc.make(WS_METHODS.subscri
6369
6652
  error: AuthRpcError,
6370
6653
  stream: true
6371
6654
  });
6372
- const WsRpcGroup = effect_unstable_rpc_RpcGroup.make(WsServerGetConfigRpc, WsServerGetAdvertisedEndpointsRpc, WsServerGetDiagnosticsMetricsRpc, WsServerRefreshProvidersRpc, WsServerUpdateProviderRpc, WsServerUpsertKeybindingRpc, WsKeybindingsReplaceCustomRpc, WsServerGetSettingsRpc, WsServerUpdateSettingsRpc, WsServerGetDiagnosticsSnapshotRpc, WsServerDiscoverSourceControlRpc, WsServerListOpinionatedPluginsRpc, WsServerCheckOpinionatedPluginsRpc, WsServerInstallOpinionatedPluginRpc, WsMcpListWorkspacesRpc, WsMcpListServersRpc, WsMcpUpsertServerRpc, WsMcpSetServerEnabledRpc, WsMcpRemoveServerRpc, WsMcpReloadServersRpc, WsMcpStartOauthLoginRpc, WsSourceControlLookupRepositoryRpc, WsSourceControlSearchRepositoriesRpc, WsSourceControlCloneRepositoryRpc, WsSourceControlPublishRepositoryRpc, WsSourceControlListIssuesRpc, WsSourceControlGetIssueRpc, WsSourceControlSearchIssuesRpc, WsSourceControlListChangeRequestsRpc, WsSourceControlSearchChangeRequestsRpc, WsSourceControlGetChangeRequestDetailRpc, WsSourceControlGetChangeRequestDiffRpc, WsSourceControlCreateIssueRpc, WsSourceControlAddIssueCommentRpc, WsSourceControlAddIssueCommentReactionRpc, WsSourceControlAddChangeRequestCommentRpc, WsSourceControlAddChangeRequestCommentReactionRpc, WsSourceControlListIssueLabelsRpc, WsSourceControlListIssueAssigneesRpc, WsSourceControlListWorkflowRunsRpc, WsSourceControlGetWorkflowRunJobsRpc, WsSourceControlGetWorkflowJobLogRpc, WsSourceControlRerunWorkflowRpc, WsTextGenerationGenerateIssueContentRpc, WsTextGenerationGenerateBranchNameRpc, WsAtlassianListConnectionsRpc, WsAtlassianStartOAuthRpc, WsAtlassianDisconnectRpc, WsAtlassianRefreshRpc, WsAtlassianListResourcesRpc, WsAtlassianGetProjectLinkRpc, WsAtlassianSaveProjectLinkRpc, WsAtlassianSaveManualBitbucketTokenRpc, WsAtlassianSaveManualJiraTokenRpc, WsWorkItemsListProjectsRpc, WsWorkItemsListRpc, WsWorkItemsSearchRpc, WsWorkItemsGetRpc, WsWorkItemsAddCommentRpc, WsWorkItemsEditCommentRpc, WsWorkItemsUpdateRpc, WsWorkItemsListTransitionsRpc, WsWorkItemsTransitionRpc, WsProjectsListEntriesRpc, WsProjectsSearchEntriesRpc, WsProjectsReadFileRpc, WsProjectsWriteFileRpc, WsProjectsStageFileReferenceRpc, WsShellOpenInEditorRpc, WsFilesystemBrowseRpc, WsSubscribeVcsStatusRpc, WsVcsPullRpc, WsVcsRefreshStatusRpc, WsGitRunStackedActionRpc, WsGitResolvePullRequestRpc, WsGitPreparePullRequestThreadRpc, WsGitCreateWorktreeForProjectRpc, WsGitFindWorktreeForOriginRpc, WsGitArchiveWorktreeRpc, WsGitRestoreWorktreeRpc, WsGitDeleteWorktreeRpc, WsThreadsSetManualBucketRpc, WsThreadsSetManualPositionRpc, WsWorktreesSetManualPositionRpc, WsProjectsInitializeGitRpc, WsVcsListRefsRpc, WsVcsCreateWorktreeRpc, WsVcsRemoveWorktreeRpc, WsVcsCreateRefRpc, WsVcsSwitchRefRpc, WsVcsInitRpc, WsTerminalOpenRpc, WsTerminalWriteRpc, WsTerminalResizeRpc, WsTerminalClearRpc, WsTerminalRestartRpc, WsTerminalCloseRpc, WsSubscribeTerminalEventsRpc, WsSubscribeServerConfigRpc, WsSubscribeServerLifecycleRpc, WsSubscribeAuthAccessRpc, WsOrchestrationDispatchCommandRpc, WsOrchestrationGetTurnDiffRpc, WsOrchestrationGetFullThreadDiffRpc, WsOrchestrationReplayEventsRpc, WsOrchestrationReplayEventsPageRpc, WsOrchestrationSubscribeShellRpc, WsOrchestrationSubscribeThreadRpc);
6655
+ const WsRpcGroup = effect_unstable_rpc_RpcGroup.make(WsServerGetConfigRpc, WsServerGetAdvertisedEndpointsRpc, WsServerGetDiagnosticsMetricsRpc, WsServerGetStatisticsRpc, WsServerRefreshProvidersRpc, WsServerUpdateProviderRpc, WsServerUpsertKeybindingRpc, WsKeybindingsReplaceCustomRpc, WsServerGetSettingsRpc, WsServerUpdateSettingsRpc, WsServerGetDiagnosticsSnapshotRpc, WsServerDiscoverSourceControlRpc, WsServerListOpinionatedPluginsRpc, WsServerCheckOpinionatedPluginsRpc, WsServerInstallOpinionatedPluginRpc, WsMcpListWorkspacesRpc, WsMcpListServersRpc, WsMcpUpsertServerRpc, WsMcpSetServerEnabledRpc, WsMcpRemoveServerRpc, WsMcpReloadServersRpc, WsMcpStartOauthLoginRpc, WsSourceControlLookupRepositoryRpc, WsSourceControlSearchRepositoriesRpc, WsSourceControlCloneRepositoryRpc, WsSourceControlPublishRepositoryRpc, WsSourceControlListIssuesRpc, WsSourceControlGetIssueRpc, WsSourceControlSearchIssuesRpc, WsSourceControlListChangeRequestsRpc, WsSourceControlSearchChangeRequestsRpc, WsSourceControlGetChangeRequestDetailRpc, WsSourceControlGetChangeRequestDiffRpc, WsSourceControlCreateIssueRpc, WsSourceControlAddIssueCommentRpc, WsSourceControlAddIssueCommentReactionRpc, WsSourceControlAddChangeRequestCommentRpc, WsSourceControlAddChangeRequestCommentReactionRpc, WsSourceControlListIssueLabelsRpc, WsSourceControlListIssueAssigneesRpc, WsSourceControlListWorkflowRunsRpc, WsSourceControlGetWorkflowRunJobsRpc, WsSourceControlGetWorkflowJobLogRpc, WsSourceControlRerunWorkflowRpc, WsTextGenerationGenerateIssueContentRpc, WsTextGenerationGenerateBranchNameRpc, WsAtlassianListConnectionsRpc, WsAtlassianStartOAuthRpc, WsAtlassianDisconnectRpc, WsAtlassianRefreshRpc, WsAtlassianListResourcesRpc, WsAtlassianGetProjectLinkRpc, WsAtlassianSaveProjectLinkRpc, WsAtlassianSaveManualBitbucketTokenRpc, WsAtlassianSaveManualJiraTokenRpc, WsWorkItemsListProjectsRpc, WsWorkItemsListRpc, WsWorkItemsSearchRpc, WsWorkItemsGetRpc, WsWorkItemsAddCommentRpc, WsWorkItemsEditCommentRpc, WsWorkItemsUpdateRpc, WsWorkItemsListTransitionsRpc, WsWorkItemsTransitionRpc, WsProjectsListEntriesRpc, WsProjectsSearchEntriesRpc, WsProjectsReadFileRpc, WsProjectsWriteFileRpc, WsProjectsStageFileReferenceRpc, WsShellOpenInEditorRpc, WsFilesystemBrowseRpc, WsSubscribeVcsStatusRpc, WsVcsPullRpc, WsVcsRefreshStatusRpc, WsGitRunStackedActionRpc, WsGitResolvePullRequestRpc, WsGitPreparePullRequestThreadRpc, WsGitCreateWorktreeForProjectRpc, WsGitFindWorktreeForOriginRpc, WsGitArchiveWorktreeRpc, WsGitRestoreWorktreeRpc, WsGitDeleteWorktreeRpc, WsThreadsSetManualBucketRpc, WsThreadsSetManualPositionRpc, WsSearchThreadMessagesRpc, WsWorktreesSetManualPositionRpc, WsProjectsInitializeGitRpc, WsVcsListRefsRpc, WsVcsCreateWorktreeRpc, WsVcsRemoveWorktreeRpc, WsVcsCreateRefRpc, WsVcsSwitchRefRpc, WsVcsInitRpc, WsTerminalOpenRpc, WsTerminalWriteRpc, WsTerminalResizeRpc, WsTerminalClearRpc, WsTerminalRestartRpc, WsTerminalCloseRpc, WsSubscribeTerminalEventsRpc, WsSubscribeServerConfigRpc, WsSubscribeServerLifecycleRpc, WsSubscribeAuthAccessRpc, WsOrchestrationDispatchCommandRpc, WsOrchestrationGetTurnDiffRpc, WsOrchestrationGetFullThreadDiffRpc, WsOrchestrationSearchThreadMessagesRpc, WsOrchestrationReplayEventsRpc, WsOrchestrationReplayEventsPageRpc, WsOrchestrationSubscribeShellRpc, WsOrchestrationSubscribeThreadRpc);
6656
+ //#endregion
6657
+ //#region ../../packages/shared/src/schemaJson.ts
6658
+ const decodeJsonResult = (schema) => {
6659
+ const decode = effect.Schema.decodeExit(effect.Schema.fromJsonString(schema));
6660
+ return (input) => {
6661
+ const result = decode(input);
6662
+ if (effect.Exit.isFailure(result)) return effect.Result.fail(result.cause);
6663
+ return effect.Result.succeed(result.value);
6664
+ };
6665
+ };
6666
+ const formatSchemaError = (cause) => {
6667
+ const squashed = effect.Cause.squash(cause);
6668
+ return effect.Schema.isSchemaError(squashed) ? effect.SchemaIssue.makeFormatterDefault()(squashed.issue) : effect.Cause.pretty(cause);
6669
+ };
6670
+ /**
6671
+ * A `Getter` that parses a lenient JSON string (tolerating trailing commas
6672
+ * and JS-style comments) into an unknown value.
6673
+ *
6674
+ * Mirrors `SchemaGetter.parseJson()` but uses `parseLenientJson` instead
6675
+ * of `JSON.parse`.
6676
+ */
6677
+ const parseLenientJsonGetter = effect.SchemaGetter.onSome((input) => effect.Effect.try({
6678
+ try: () => {
6679
+ let stripped = input.replace(/("(?:[^"\\]|\\.)*")|\/\/[^\n]*/g, (match, stringLiteral) => stringLiteral ? match : "");
6680
+ stripped = stripped.replace(/("(?:[^"\\]|\\.)*")|\/\*[\s\S]*?\*\//g, (match, stringLiteral) => stringLiteral ? match : "");
6681
+ stripped = stripped.replace(/,(\s*[}\]])/g, "$1");
6682
+ return effect.Option.some(JSON.parse(stripped));
6683
+ },
6684
+ catch: (e) => new effect.SchemaIssue.InvalidValue(effect.Option.some(input), { message: String(e) })
6685
+ }));
6686
+ /**
6687
+ * Schema transformation: lenient JSONC string ↔ unknown.
6688
+ *
6689
+ * Same API as `SchemaTransformation.fromJsonString`, but the decode side
6690
+ * strips trailing commas and JS-style comments before parsing.
6691
+ * Encoding produces strict JSON via `JSON.stringify`.
6692
+ */
6693
+ const fromLenientJsonString = new effect.SchemaTransformation.Transformation(parseLenientJsonGetter, effect.SchemaGetter.stringifyJson());
6694
+ /**
6695
+ * Build a schema that decodes a lenient JSON string into `A`.
6696
+ *
6697
+ * Drop-in replacement for `Schema.fromJsonString(schema)` that tolerates
6698
+ * trailing commas and comments in the input.
6699
+ */
6700
+ const fromLenientJson = (schema) => effect.Schema.String.pipe(effect.Schema.decodeTo(schema, fromLenientJsonString));
6373
6701
  //#endregion
6374
6702
  //#region src/stream/collectUint8StreamText.ts
6375
6703
  const collectUint8StreamText = (input) => {
@@ -7124,6 +7452,12 @@ Object.defineProperty(exports, "RuntimeRequestId", {
7124
7452
  return RuntimeRequestId;
7125
7453
  }
7126
7454
  });
7455
+ Object.defineProperty(exports, "RuntimeSubagentId", {
7456
+ enumerable: true,
7457
+ get: function() {
7458
+ return RuntimeSubagentId;
7459
+ }
7460
+ });
7127
7461
  Object.defineProperty(exports, "RuntimeTaskId", {
7128
7462
  enumerable: true,
7129
7463
  get: function() {
@@ -7460,12 +7794,30 @@ Object.defineProperty(exports, "collectUint8StreamText", {
7460
7794
  return collectUint8StreamText;
7461
7795
  }
7462
7796
  });
7797
+ Object.defineProperty(exports, "decodeJsonResult", {
7798
+ enumerable: true,
7799
+ get: function() {
7800
+ return decodeJsonResult;
7801
+ }
7802
+ });
7463
7803
  Object.defineProperty(exports, "defaultInstanceIdForDriver", {
7464
7804
  enumerable: true,
7465
7805
  get: function() {
7466
7806
  return defaultInstanceIdForDriver;
7467
7807
  }
7468
7808
  });
7809
+ Object.defineProperty(exports, "formatSchemaError", {
7810
+ enumerable: true,
7811
+ get: function() {
7812
+ return formatSchemaError;
7813
+ }
7814
+ });
7815
+ Object.defineProperty(exports, "fromLenientJson", {
7816
+ enumerable: true,
7817
+ get: function() {
7818
+ return fromLenientJson;
7819
+ }
7820
+ });
7469
7821
  Object.defineProperty(exports, "isProviderDriverKind", {
7470
7822
  enumerable: true,
7471
7823
  get: function() {