ryco-cli 0.1.30 → 0.1.31

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 (493) hide show
  1. package/dist/{AcpAdapter-DjP0IHpH.cjs → AcpAdapter-ByUp9-wk.cjs} +71 -51
  2. package/dist/{AcpAdapter-CKWzfB3Q.mjs → AcpAdapter-CY_ANTKu.mjs} +73 -53
  3. package/dist/{AcpNativeLogging-Do0LktDb.mjs → AcpNativeLogging-C7PC6imv.mjs} +30 -4
  4. package/dist/{AcpNativeLogging-5gTPK9Fq.cjs → AcpNativeLogging-OQeAya9d.cjs} +33 -1
  5. package/dist/{AcpRegistryDriver-BblCFfev.cjs → AcpRegistryDriver-CD9GN7rI.cjs} +3 -3
  6. package/dist/{AcpRegistryDriver-BzohT-PC.mjs → AcpRegistryDriver-DMZ5VBWJ.mjs} +4 -4
  7. package/dist/AzureDevOpsSourceControlProvider-5giVYoNi.mjs +2053 -0
  8. package/dist/AzureDevOpsSourceControlProvider-BKMXEUaN.cjs +2055 -0
  9. package/dist/{BitbucketSourceControlProvider-D5UVAc9z.mjs → BitbucketSourceControlProvider-BVUBsEUF.mjs} +63 -23
  10. package/dist/{BitbucketSourceControlProvider-Bvl_q1o2.cjs → BitbucketSourceControlProvider-BWnnrbch.cjs} +62 -22
  11. package/dist/{BunPTY-Dcl1Lp62.mjs → BunPTY-CMbDQ1Xb.mjs} +1 -1
  12. package/dist/{ClaudeDriver-DZkz0QPr.cjs → ClaudeDriver-DCrqouOR.cjs} +1373 -191
  13. package/dist/{ClaudeDriver-BuQ_azDw.mjs → ClaudeDriver-DVOss8cC.mjs} +1375 -193
  14. package/dist/{CodexDriver-6Ph2cjAW.cjs → CodexDriver-CBQPHJqU.cjs} +258 -28
  15. package/dist/{CodexDriver-Bi49RIL4.mjs → CodexDriver-DJoTky7Z.mjs} +261 -31
  16. package/dist/{CodexTextGeneration-C5TIspJA.mjs → CodexTextGeneration-BSgNgfZv.mjs} +6 -6
  17. package/dist/{CodexTextGeneration-sXPR9eld.cjs → CodexTextGeneration-C9MDQmZm.cjs} +7 -7
  18. package/dist/{CopilotDriver-Bcdpz6U_.mjs → CopilotDriver-CUkdPXcH.mjs} +78 -20
  19. package/dist/{CopilotDriver-D6P0xgRX.cjs → CopilotDriver-DbaMDH16.cjs} +76 -18
  20. package/dist/{CursorDriver-CRnDGwEv.mjs → CursorDriver-B-ZilXJB.mjs} +114 -97
  21. package/dist/{CursorDriver-DMJ7sGSx.cjs → CursorDriver-DKQqPbKH.cjs} +114 -97
  22. package/dist/{ForgejoSourceControlProvider-D4jGdaJX.cjs → ForgejoSourceControlProvider-CgpjFECj.cjs} +94 -60
  23. package/dist/{ForgejoSourceControlProvider-Dl_Fk3RY.mjs → ForgejoSourceControlProvider-DemMYUye.mjs} +95 -61
  24. package/dist/{GitHubSourceControlProvider-QMe-zymI.cjs → GitHubSourceControlProvider-C4un6hOK.cjs} +218 -119
  25. package/dist/{GitHubSourceControlProvider-DnwKf0ap.mjs → GitHubSourceControlProvider-CRSDYcjc.mjs} +206 -108
  26. package/dist/GitLabSourceControlProvider-D8W1ZLPh.cjs +2260 -0
  27. package/dist/GitLabSourceControlProvider-DpWkJ0M3.mjs +2258 -0
  28. package/dist/{GrokDriver-jy8JIvYY.cjs → GrokDriver-BQ6G_7ZZ.cjs} +6 -7
  29. package/dist/{GrokDriver-Bvq1jP3S.mjs → GrokDriver-Buvas9-q.mjs} +5 -6
  30. package/dist/{Metrics-CnmjpbWk.mjs → Metrics-C3vLS9rz.mjs} +123 -13
  31. package/dist/{Metrics-C0LSU8s7.cjs → Metrics-DjRPLE98.cjs} +170 -12
  32. package/dist/{NodePTY-D7tFWuQe.mjs → NodePTY-DgnuBruq.mjs} +1 -1
  33. package/dist/{OpenCodeDriver-DhyVaBMT.mjs → OpenCodeDriver-BWEZD841.mjs} +183 -49
  34. package/dist/{OpenCodeDriver-Bu5D19tl.cjs → OpenCodeDriver-qUiX0RLH.cjs} +183 -49
  35. package/dist/{SideQuestionIsolation-B-aE6aBz.mjs → SideQuestionIsolation-B1T-DsR0.mjs} +1 -1
  36. package/dist/{SideQuestionIsolation-CtJ4wX83.cjs → SideQuestionIsolation-BPC-Bxsz.cjs} +1 -1
  37. package/dist/bin.cjs +37021 -10253
  38. package/dist/bin.mjs +36892 -10178
  39. package/dist/client/assets/AccountSettings-B88Q_w9Y.js +1 -0
  40. package/dist/client/assets/AiFocusSettings-Bb0TrCPn.js +1 -0
  41. package/dist/client/assets/{AnimatedHeight-UXn4-nUd.js → AnimatedHeight-epXOsgdm.js} +1 -1
  42. package/dist/client/assets/AppearanceSettings-XS9WRVPU.js +1 -0
  43. package/dist/client/assets/AutomationsDialog-bZckh4Y3.js +1 -0
  44. package/dist/client/assets/AutomationsSummary-wPFZCF49.js +1 -0
  45. package/dist/client/assets/BranchToolbar.logic-DjzLKbbB.js +3 -0
  46. package/dist/client/assets/BrowserPanel-CdBLnnfz.js +1 -0
  47. package/dist/client/assets/ChatRightPanel-BCINd0vP.js +34 -0
  48. package/dist/client/assets/ChatThreadRouteView-BFZ0Si-l.js +1 -0
  49. package/dist/client/assets/ColorSwatchPicker-CGyo99o0.js +1 -0
  50. package/dist/client/assets/CommandPalette.logic-BIOMtnEQ.js +1 -0
  51. package/dist/client/assets/CommandPaletteDialog-Db4LH--z.js +2 -0
  52. package/dist/client/assets/CompositeRoot-DtnwMJKj.js +1 -0
  53. package/dist/client/assets/ComputerUseSettings-CkqCqDsU.js +1 -0
  54. package/dist/client/assets/ConnectionsSettings-B9mxExdG.js +7 -0
  55. package/dist/client/assets/CreatePullRequestDialog-CJ7pNCue.js +1 -0
  56. package/dist/client/assets/CreatePullRequestDialogHost-n4ZjdSr4.js +1 -0
  57. package/dist/client/assets/DiagnosticsSettings-f9rFG9re.js +2 -0
  58. package/dist/client/assets/DiagnosticsSettings.logic-Byf-Bu4S.js +1 -0
  59. package/dist/client/assets/DialogHandle-C0c_rK3I.js +1 -0
  60. package/dist/client/assets/{DialogPopup-NfwDyR5c.js → DialogPopup-BKW1PEEa.js} +1 -1
  61. package/dist/client/assets/DialogRoot-BIubqrv0.js +1 -0
  62. package/dist/client/assets/DialogTitle-BAX_FLoG.js +1 -0
  63. package/dist/client/assets/{DialogViewport-B6w_ROOE.js → DialogViewport-C2iOUx0O.js} +1 -1
  64. package/dist/client/assets/DiffPanel-BkqDt_SS.js +25 -0
  65. package/dist/client/assets/DisclosureRegion-B8556yU0.js +1 -0
  66. package/dist/client/assets/DraftChatThreadRouteView-BKgRKJ2w.js +1 -0
  67. package/dist/client/assets/{ExternalIdentityWeb.logic-BlKX8J9h.js → ExternalIdentityWeb.logic-Cu6suNrN.js} +1 -1
  68. package/dist/client/assets/GlassSurface-DLYYzRdP.js +1 -0
  69. package/dist/client/assets/HostedConnectionControls-CoVqtnrK.js +1 -0
  70. package/dist/client/assets/HostedHubRoot-CM2CwPUr.js +2 -0
  71. package/dist/client/assets/{HostedNativeAuthorizationRoute-j7oSlakZ.js → HostedNativeAuthorizationRoute-Bizmqrh_.js} +2 -2
  72. package/dist/client/assets/HostedNodeRenameDialog-SXWMsTO0.js +1 -0
  73. package/dist/client/assets/HostedRelayTrustNotice-BfTyrBi5.js +1 -0
  74. package/dist/client/assets/InboxStatusGlyph-BPTqzp7l.js +1 -0
  75. package/dist/client/assets/IntegrationsSettingsPanel-DAPvkV4i.js +1 -0
  76. package/dist/client/assets/KeybindingsSettings-B8g-YI2O.js +1 -0
  77. package/dist/client/assets/LazyBrowserPanel-Ds9cdOC_.js +2 -0
  78. package/dist/client/assets/McpServersSettings-Dw6G3ff3.js +6 -0
  79. package/dist/client/assets/MobileSheet-DfgXNWbd.js +1 -0
  80. package/dist/client/assets/ModelTuningDial-DQBAbuNL.js +1 -0
  81. package/dist/client/assets/NewWorktreeDialog-CDZAJmK6.js +4 -0
  82. package/dist/client/assets/NodeSecuritySettings-3MELA9ru.js +1 -0
  83. package/dist/client/assets/NullStore-gT_6_xZE.js +1 -0
  84. package/dist/client/assets/OnboardingDialog-CAAtNnJf.js +1 -0
  85. package/dist/client/assets/OpinionatedPluginsSettings-AiDB0Vl4.js +1 -0
  86. package/dist/client/assets/{PdfAttachmentPreview-C8-hT8KQ.js → PdfAttachmentPreview-BFNW2wjN.js} +2 -2
  87. package/dist/client/assets/{PhoneGetAppInterstitial-Zh0zpBgT.js → PhoneGetAppInterstitial-D8fwZ8E9.js} +1 -1
  88. package/dist/client/assets/PhoneHome-YHgHljA0.js +1 -0
  89. package/dist/client/assets/PhoneSettingsSurface-BVxJppvK.js +2 -0
  90. package/dist/client/assets/PreviewPanel-BYcEnkv9.js +643 -0
  91. package/dist/client/assets/ProjectScriptDialog-K34K2Kzm.js +1 -0
  92. package/dist/client/assets/ProjectsPage-DXnMYLjb.js +1 -0
  93. package/dist/client/assets/PromoteChatDialog-CAY7_wJ-.js +1 -0
  94. package/dist/client/assets/ProviderLimitWindow-CK04BSkM.js +1 -0
  95. package/dist/client/assets/ProviderUpdateLaunchNotification.logic-BMBrDDOC.js +1 -0
  96. package/dist/client/assets/ProvidersSettingsPanel-C85PX9Es.js +1 -0
  97. package/dist/client/assets/PullRequestsPage-C0rgfGwB.js +1 -0
  98. package/dist/client/assets/{QuitShortcutFeedback-Qs9XsuZ4.js → QuitShortcutFeedback-DSkKqETs.js} +1 -1
  99. package/dist/client/assets/RedactedSensitiveText-DQ0YveQd.js +1 -0
  100. package/dist/client/assets/RollingText-BzvpP5fa.js +1 -0
  101. package/dist/client/assets/RootAppShell-BYQ-eGNT.js +6 -0
  102. package/dist/client/assets/{Separator-B6Esv57Y.js → Separator-DpiW19Vw.js} +1 -1
  103. package/dist/client/assets/SettingsPage-BCFN7Ju2.js +2 -0
  104. package/dist/client/assets/SettingsPanels-CP6z2b1x.js +3 -0
  105. package/dist/client/assets/SettingsPanels.editor-D8U-TWWG.js +1 -0
  106. package/dist/client/assets/SettingsSelect-DEhNaz3E.js +1 -0
  107. package/dist/client/assets/Sidebar.logic-D_ODfSpl.js +1 -0
  108. package/dist/client/assets/SimulatorPanel-DCT6fZ0X.js +1 -0
  109. package/dist/client/assets/SourceControlSettings-DxUtvPMK.js +1 -0
  110. package/dist/client/assets/StatisticsPage-C9SrwtM4.js +1 -0
  111. package/dist/client/assets/StatisticsPanel-BMYLETs0.js +1 -0
  112. package/dist/client/assets/ThreadLinkList-BN5z5EpS.js +169 -0
  113. package/dist/client/assets/ThreadTerminalDrawer-CgIFOlR-.js +18 -0
  114. package/dist/client/assets/ThreadWorkspacePanel-DvXoqQPF.js +3 -0
  115. package/dist/client/assets/ToolbarRootContext-8FsV9Cpj.js +1 -0
  116. package/dist/client/assets/TraitsPicker-DcrpJahy.js +1 -0
  117. package/dist/client/assets/Virtualizer-CwXeUPla.js +1345 -0
  118. package/dist/client/assets/WorkspacePullRequestPanel-3mlcJn9G.js +1 -0
  119. package/dist/client/assets/WorkspaceReview-UGbCgXeK.js +2 -0
  120. package/dist/client/assets/{abnfDiagram-N423BO3Z-ByEe3mC0.js → abnfDiagram-N423BO3Z-DVEM6Scc.js} +1 -1
  121. package/dist/client/assets/{activity-CwTUF6lv.js → activity-DVCuAejY.js} +1 -1
  122. package/dist/client/assets/{alert-DQEkrtUJ.js → alert-FV7ZIit_.js} +1 -1
  123. package/dist/client/assets/alert-dialog-CgXR9tED.js +1 -0
  124. package/dist/client/assets/app-window-3xtwqZgI.js +1 -0
  125. package/dist/client/assets/appChrome-COCz-T7w.js +1 -0
  126. package/dist/client/assets/{appearancePreferences-nFx4MHoI.js → appearancePreferences-NnsvXwBe.js} +1 -1
  127. package/dist/client/assets/architecture-7GRP2DOG-DXXb_0_g.js +1 -0
  128. package/dist/client/assets/{architectureDiagram-T3A2C74G-Bd-yxaTr.js → architectureDiagram-T3A2C74G-B6pcKiCj.js} +1 -1
  129. package/dist/client/assets/{arrow-left-DUOpzEbP.js → arrow-left-Blu3LSE2.js} +1 -1
  130. package/dist/client/assets/{arrow-right-HOYJnPKw.js → arrow-right-CO3CH0ne.js} +1 -1
  131. package/dist/client/assets/arrow-up-B69gV2Bq.js +1 -0
  132. package/dist/client/assets/{arrow-up-right-DHnMKuVA.js → arrow-up-right-BbPGFOLA.js} +1 -1
  133. package/dist/client/assets/authorization-Ob6YwWiI.js +1 -0
  134. package/dist/client/assets/autocomplete-RVpjsrDv.js +1 -0
  135. package/dist/client/assets/ban-BIm2PVkE.js +1 -0
  136. package/dist/client/assets/{blockDiagram-VBNYF7ZC-CPDBonMC.js → blockDiagram-VBNYF7ZC-WNerGp9V.js} +1 -1
  137. package/dist/client/assets/{bot-DxjPA7Bw.js → bot-C9nWtaWq.js} +1 -1
  138. package/dist/client/assets/browserState-jt47YsqD.js +1 -0
  139. package/dist/client/assets/{c4Diagram-5PPSVZJV-BM6pAiqT.js → c4Diagram-5PPSVZJV-wp1ioOoM.js} +1 -1
  140. package/dist/client/assets/camera-C13VoW3c.js +1 -0
  141. package/dist/client/assets/capabilities-CfOhq009.js +1 -0
  142. package/dist/client/assets/channel-56r2qL2v.js +1 -0
  143. package/dist/client/assets/{chart-column-Cg7d41tb.js → chart-column-DRv0YtL_.js} +1 -1
  144. package/dist/client/assets/checkbox-CIIIY9FA.js +1 -0
  145. package/dist/client/assets/checks-Dw022Bvy.js +1 -0
  146. package/dist/client/assets/{chunk-2GRJ4B5K-DVKozJ41.js → chunk-2GRJ4B5K-DRl3ILpc.js} +1 -1
  147. package/dist/client/assets/{chunk-4I5QYGJK-BRoMwPkW.js → chunk-4I5QYGJK-CYTRl4bo.js} +1 -1
  148. package/dist/client/assets/{chunk-5RXB4S5H-DFMKyoqP.js → chunk-5RXB4S5H-VCNwRsOa.js} +1 -1
  149. package/dist/client/assets/{chunk-6Q2QTUOP-Ba6UENe9.js → chunk-6Q2QTUOP-DnSeKGPG.js} +1 -1
  150. package/dist/client/assets/{chunk-7Z6QIM7H-B87gYLWH.js → chunk-7Z6QIM7H-Cjilh9TF.js} +1 -1
  151. package/dist/client/assets/{chunk-GF5L2VYU-DZ840GRQ.js → chunk-GF5L2VYU-CGR7AW0t.js} +1 -1
  152. package/dist/client/assets/{chunk-I66GZJ75-BO6p4Aqg.js → chunk-I66GZJ75-CXSn8dDu.js} +1 -1
  153. package/dist/client/assets/{chunk-JQJVKLGR-5dTfVinz.js → chunk-JQJVKLGR-Dro-75lU.js} +1 -1
  154. package/dist/client/assets/{chunk-KBJHAD2P-BeWfBZdP.js → chunk-KBJHAD2P-BDqN2kVf.js} +1 -1
  155. package/dist/client/assets/{chunk-NSK5VX7P-DuRkdn5k.js → chunk-NSK5VX7P-DGo5UczH.js} +1 -1
  156. package/dist/client/assets/{chunk-QR6OTTB3-Duz4Y_uE.js → chunk-QR6OTTB3-RWuyWnBI.js} +1 -1
  157. package/dist/client/assets/{chunk-UBXNYLIW-D-z8URgN.js → chunk-UBXNYLIW-BPRzeB0w.js} +1 -1
  158. package/dist/client/assets/{chunk-W5SLKNZC-AGjFjjoJ.js → chunk-W5SLKNZC-DYWocTFi.js} +1 -1
  159. package/dist/client/assets/{chunk-WRU74C26-BgY3UiXB.js → chunk-WRU74C26-ChbB1jY3.js} +1 -1
  160. package/dist/client/assets/circle-stop-D8B4hRpY.js +1 -0
  161. package/dist/client/assets/circle-x-CNLfrTqR.js +1 -0
  162. package/dist/client/assets/classDiagram-JCYQIIEL-DGvmFev3.js +1 -0
  163. package/dist/client/assets/classDiagram-v2-OCEON4UE-DGvmFev3.js +1 -0
  164. package/dist/client/assets/{clipboard-copy-BWf3JuTE.js → clipboard-copy-DGi8FKNO.js} +1 -1
  165. package/dist/client/assets/clock-3-DmJ4_XPI.js +1 -0
  166. package/dist/client/assets/clock-DZIuPtNG.js +1 -0
  167. package/dist/client/assets/color-picker-BdBXje-a.js +1 -0
  168. package/dist/client/assets/columns-2-CWlMOClK.js +1 -0
  169. package/dist/client/assets/combobox-Dtjtf7AB.js +1 -0
  170. package/dist/client/assets/{cynefin-OW5HDTMX-BuOAGqlK.js → cynefin-OW5HDTMX-TuShvMuM.js} +1 -1
  171. package/dist/client/assets/{cynefinDiagram-MW4NZA55-DqV0Aokp.js → cynefinDiagram-MW4NZA55-B0Edt2Em.js} +1 -1
  172. package/dist/client/assets/{dagre-VZM6K2ZE-D_GFquDW.js → dagre-VZM6K2ZE-D-eiuqHx.js} +1 -1
  173. package/dist/client/assets/{data-list-BJCq3CVP.js → data-list-BAx6jBY1.js} +1 -1
  174. package/dist/client/assets/desktopUpdateAtoms-BjrLa3tl.js +1 -0
  175. package/dist/client/assets/desktopWorkspace-C2wXVBhc.js +1 -0
  176. package/dist/client/assets/{deviceName-C2N8ZRX3.js → deviceName-B4youG0v.js} +1 -1
  177. package/dist/client/assets/{diagram-7IWD3JNH-B1wlsNg2.js → diagram-7IWD3JNH-DgM6lMlR.js} +1 -1
  178. package/dist/client/assets/{diagram-B4RE2ZJO-D-CYoym7.js → diagram-B4RE2ZJO-CyHNDjzV.js} +1 -1
  179. package/dist/client/assets/{diagram-LBJQPF4R-DqJ9NCqt.js → diagram-LBJQPF4R-DDzuLIN5.js} +1 -1
  180. package/dist/client/assets/{diagram-Q27KOJAE-3yp1D2u4.js → diagram-Q27KOJAE-BaBvK9QB.js} +1 -1
  181. package/dist/client/assets/{diagram-UB23O5K3-Byp25nGC.js → diagram-UB23O5K3-CzZ2ewuZ.js} +1 -1
  182. package/dist/client/assets/dialogWords-Cg0YkJVg.js +1 -0
  183. package/dist/client/assets/diffRouteSearch-D2MKN_ah.js +1 -0
  184. package/dist/client/assets/disclosureMotion-cbMJn5-z.js +1 -0
  185. package/dist/client/assets/{download-DsYNYJeu.js → download-TvtXS4hE.js} +1 -1
  186. package/dist/client/assets/{ebnfDiagram-BXEA7PRR-B_IM1l6o.js → ebnfDiagram-BXEA7PRR-CL1vdOKi.js} +1 -1
  187. package/dist/client/assets/editorPreferences-DqKyA-2Z.js +1 -0
  188. package/dist/client/assets/ellipsis-CDK1dNFZ.js +1 -0
  189. package/dist/client/assets/ellipsis-vertical-CwzEUTwV.js +1 -0
  190. package/dist/client/assets/{empty-BbJHvskr.js → empty-BovKoxbn.js} +1 -1
  191. package/dist/client/assets/{erDiagram-JOGREHBK--OtcrCRJ.js → erDiagram-JOGREHBK-DmQR2if6.js} +1 -1
  192. package/dist/client/assets/eventmodeling-NTZA5JFV-D272GIcY.js +1 -0
  193. package/dist/client/assets/external-link-CJeVJZ7s.js +1 -0
  194. package/dist/client/assets/eye-BUmrXqzg.js +1 -0
  195. package/dist/client/assets/file-diff-BWc3mYsz.js +1 -0
  196. package/dist/client/assets/flowDiagram-UKHOOZJN-DLyS38Mm.js +1 -0
  197. package/dist/client/assets/folder-git-2-CPxg5wKP.js +1 -0
  198. package/dist/client/assets/folder-open-DcMymvp1.js +1 -0
  199. package/dist/client/assets/formatCount-B4KLI651.js +1 -0
  200. package/dist/client/assets/{ganttDiagram-PKOTCBZU-w0seBi3Q.js → ganttDiagram-PKOTCBZU-1q2nUL92.js} +1 -1
  201. package/dist/client/assets/git-pull-request-BFPwpm3c.js +1 -0
  202. package/dist/client/assets/{gitGraph-4MIJSDKK-BOJ0lcSW.js → gitGraph-4MIJSDKK-COtwmv2S.js} +1 -1
  203. package/dist/client/assets/{gitGraphDiagram-DS77QQ5N-BMfOCCYn.js → gitGraphDiagram-DS77QQ5N-ChsvaxX4.js} +1 -1
  204. package/dist/client/assets/{group-tVMKGp7Q.js → group-DWWn0dTx.js} +1 -1
  205. package/dist/client/assets/hammer-BXo-EU88.js +1 -0
  206. package/dist/client/assets/hostedConnectionCoordinator-BkAE-RhA.js +1 -0
  207. package/dist/client/assets/{index-BqZvnGNr.js → index-DARIYokI.js} +2 -2
  208. package/dist/client/assets/{info-A6RAGUB7-acjBTQ5o.js → info-A6RAGUB7-CI2qZ9wW.js} +1 -1
  209. package/dist/client/assets/{infoDiagram-6WML65LV-DB01Nc2m.js → infoDiagram-6WML65LV-BPmgcTPH.js} +1 -1
  210. package/dist/client/assets/{input-BDWSVClC.js → input-CCie4mm1.js} +1 -1
  211. package/dist/client/assets/{ishikawaDiagram-WSZJBQD7-KhZTvm-J.js → ishikawaDiagram-WSZJBQD7-LyS9p3Yg.js} +1 -1
  212. package/dist/client/assets/{journeyDiagram-NVQOT4AX-C3JCYk-2.js → journeyDiagram-NVQOT4AX-BYaAmN65.js} +1 -1
  213. package/dist/client/assets/{kanban-definition-27J2QSJJ-Dbo0C1s6.js → kanban-definition-27J2QSJJ-D-pwzqFt.js} +1 -1
  214. package/dist/client/assets/{key-round-CETZqe3h.js → key-round-BlrUTfxB.js} +1 -1
  215. package/dist/client/assets/keyboard-DlBdq6sz.js +1 -0
  216. package/dist/client/assets/label-ChtVI9lp.js +1 -0
  217. package/dist/client/assets/layers-BB-ruGvd.js +1 -0
  218. package/dist/client/assets/lifecycleSuggestionPolicy-0ERe_O53.js +1 -0
  219. package/dist/client/assets/list-checks-BkM_ZRsj.js +1 -0
  220. package/dist/client/assets/loader-3vQnfqIT.js +1 -0
  221. package/dist/client/assets/{log-out-D5-aSBAz.js → log-out-CKq9YiLY.js} +1 -1
  222. package/dist/client/assets/{logging-B_qXVrk6.js → logging-CCg76rgn.js} +1 -1
  223. package/dist/client/assets/main-Ch0bwS-M.js +9 -0
  224. package/dist/client/assets/main-Di0isH9D.css +2 -0
  225. package/dist/client/assets/{mermaid-parser.core-B6Q-3x_q.js → mermaid-parser.core-RK9ah5RM.js} +2 -2
  226. package/dist/client/assets/{mermaidEngine-DksLcesB.js → mermaidEngine-Dr8UsPhH.js} +3 -3
  227. package/dist/client/assets/message-circle-dashed-BrjwqS7-.js +1 -0
  228. package/dist/client/assets/messageQueueDrain-B7R7Qmq6.js +1 -0
  229. package/dist/client/assets/messages-square-cDTkDJv_.js +1 -0
  230. package/dist/client/assets/{mindmap-definition-FAOFIHXS-LaMzRxqw.js → mindmap-definition-FAOFIHXS-DVudWasx.js} +1 -1
  231. package/dist/client/assets/{packet-AYTQ26CC-BHhg59Si.js → packet-AYTQ26CC-DnkTsVhD.js} +1 -1
  232. package/dist/client/assets/panels-top-left-B7jZiLth.js +1 -0
  233. package/dist/client/assets/path-text-3Rfu6lt8.js +1 -0
  234. package/dist/client/assets/{pegDiagram-VL7TDLO6-s7l7UD9d.js → pegDiagram-VL7TDLO6-Do5PIp8B.js} +1 -1
  235. package/dist/client/assets/pencil-Bzg-nc6d.js +1 -0
  236. package/dist/client/assets/{pie-WAS4IAKB-DygX31Z9.js → pie-WAS4IAKB-B_nNQOzn.js} +1 -1
  237. package/dist/client/assets/{pieDiagram-7S7Q4E2Y-bb6I9TtZ.js → pieDiagram-7S7Q4E2Y-D_IG4xwA.js} +1 -1
  238. package/dist/client/assets/{play-DUvOxTpL.js → play-DpXXQ1qB.js} +1 -1
  239. package/dist/client/assets/popover-OWEv6cQz.js +48 -0
  240. package/dist/client/assets/presentationTier-DPVAxTK4.js +1 -0
  241. package/dist/client/assets/previewRouteSearch-BjZdTuSf.js +1 -0
  242. package/dist/client/assets/primary-Cf-xJExj.js +4 -0
  243. package/dist/client/assets/primitives-CxTBN7D4.js +1 -0
  244. package/dist/client/assets/projectCheckouts.logic-DUT4AxXr.js +1 -0
  245. package/dist/client/assets/projectPaths-B8aVmOZX.js +1 -0
  246. package/dist/client/assets/projectPreferences-CzWBItFj.js +1 -0
  247. package/dist/client/assets/providerCapabilities-B2YOPsLN.js +1 -0
  248. package/dist/client/assets/providerDriverMeta-BHHL9uw0.js +1 -0
  249. package/dist/client/assets/providerModels-v9PYbzRE.js +1 -0
  250. package/dist/client/assets/providerStatus-CDPaqb0S.js +1 -0
  251. package/dist/client/assets/pullRequestsModel.logic-Dv_om_C4.js +1 -0
  252. package/dist/client/assets/{qr-code-dbkTo07n.js → qr-code-BlbiBIwH.js} +1 -1
  253. package/dist/client/assets/{qr-code-D4CtBq2F.js → qr-code-DywzVgQC.js} +1 -1
  254. package/dist/client/assets/{quadrantDiagram-CIZ2JOQS-Cj1Y68ZF.js → quadrantDiagram-CIZ2JOQS-DY6fJyrM.js} +1 -1
  255. package/dist/client/assets/{radar-RG4KPBEZ-FHM3ftPp.js → radar-RG4KPBEZ-D9689I5m.js} +1 -1
  256. package/dist/client/assets/radio-group-DVwD6Cuy.js +1 -0
  257. package/dist/client/assets/{railroad-74A4TZTK-CPMn18Cm.js → railroad-74A4TZTK-DVzWbQnl.js} +1 -1
  258. package/dist/client/assets/railroad-abnf-HS5TGJTU-C_2P6umA.js +1 -0
  259. package/dist/client/assets/railroad-ebnf-LZEXJU2U-aGlR3R3z.js +1 -0
  260. package/dist/client/assets/railroad-peg-WCYAUIDC-DCB9oE8y.js +1 -0
  261. package/dist/client/assets/{railroadDiagram-AXF67PYL-DyV3SuDj.js → railroadDiagram-AXF67PYL-D1oJ6Jtl.js} +1 -1
  262. package/dist/client/assets/readCache-B7cDPz2O.js +1 -0
  263. package/dist/client/assets/{refresh-cw-CgDa2Ok_.js → refresh-cw-CRUTivd6.js} +1 -1
  264. package/dist/client/assets/{requirementDiagram-LRYGKXZP-_xEAGWaH.js → requirementDiagram-LRYGKXZP-7RM8iREp.js} +1 -1
  265. package/dist/client/assets/rotate-ccw-BE2ZCwL6.js +1 -0
  266. package/dist/client/assets/roving-radio-group-NMPWrDqe.js +1 -0
  267. package/dist/client/assets/rows-2-DDS4dGTX.js +1 -0
  268. package/dist/client/assets/runtime-DjjjAcTE.js +18 -0
  269. package/dist/client/assets/safePolygon-C1AzMRS4.js +1 -0
  270. package/dist/client/assets/{sankeyDiagram-W5VNT64P-Clf6oTLi.js → sankeyDiagram-W5VNT64P-C1tKAPGN.js} +1 -1
  271. package/dist/client/assets/{save-C8h0AMdl.js → save-OZdkPs_y.js} +1 -1
  272. package/dist/client/assets/scroll-area-80P7vbjw.js +1 -0
  273. package/dist/client/assets/{scrollEdges-BXYnwntN.js → scrollEdges-C0Oc-5qi.js} +1 -1
  274. package/dist/client/assets/select-Cb9FUPHD.js +1 -0
  275. package/dist/client/assets/separator-CO8bC7Wc.js +1 -0
  276. package/dist/client/assets/{sequenceDiagram-SI44F4Z6-CcYtQLSe.js → sequenceDiagram-SI44F4Z6-DGVpb7jL.js} +1 -1
  277. package/dist/client/assets/settings-2-PrRDu6Lc.js +1 -0
  278. package/dist/client/assets/settingsLayout-CRFNCk_D.js +1 -0
  279. package/dist/client/assets/sheet-C5DW7qVO.js +1 -0
  280. package/dist/client/assets/{shield-DPC4oHTi.js → shield-CBHYqlkR.js} +1 -1
  281. package/dist/client/assets/{shield-alert-CwH36qZb.js → shield-alert-Dc2cGwyR.js} +1 -1
  282. package/dist/client/assets/{shield-check-CGD7sEeF.js → shield-check-_wl7R4Js.js} +1 -1
  283. package/dist/client/assets/sidebar-0BBaFNm3.js +1 -0
  284. package/dist/client/assets/sidebarProjectFolders-BjWzbt8C.js +3 -0
  285. package/dist/client/assets/sidebarProjectGrouping-nQRStWrZ.js +1 -0
  286. package/dist/client/assets/sidebarStatusText-BBKuNies.js +1 -0
  287. package/dist/client/assets/sidebarUndo-Dfq1lvyF.js +1 -0
  288. package/dist/client/assets/{skeleton-rS3IgBob.js → skeleton-DfUe6VV_.js} +1 -1
  289. package/dist/client/assets/sliders-horizontal-BGXkwvKv.js +1 -0
  290. package/dist/client/assets/sliding-tabs-BnDSjRU3.js +39 -0
  291. package/dist/client/assets/{smartphone-DgVJfbv3.js → smartphone-OEAQOTdv.js} +1 -1
  292. package/dist/client/assets/spinner-lHRJWsym.js +1 -0
  293. package/dist/client/assets/square-B05NKv3e.js +1 -0
  294. package/dist/client/assets/{star-Cqay-Cae.js → star-C8mHmfZu.js} +1 -1
  295. package/dist/client/assets/{stateDiagram-OKZ733FA-DEKURpRP.js → stateDiagram-OKZ733FA-CCOAegCG.js} +1 -1
  296. package/dist/client/assets/stateDiagram-v2-UEYNNEHI-D60qqBed.js +1 -0
  297. package/dist/client/assets/storeSelectors-BichCKDC.js +1 -0
  298. package/dist/client/assets/surfaceMorph-BTRijmlU.js +1 -0
  299. package/dist/client/assets/{swimlanes-SLNWSIFB-DrR6sbi6.js → swimlanes-SLNWSIFB-CFsLYT4h.js} +1 -1
  300. package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-D0SaJgSn.js +8 -0
  301. package/dist/client/assets/switch-oQc7Ifbl.js +1 -0
  302. package/dist/client/assets/text-wrap-DSRdSfDm.js +1 -0
  303. package/dist/client/assets/textarea-VyiIZ0wQ.js +1 -0
  304. package/dist/client/assets/threadPriorityRefreshRuntime-H656C1J_.js +1 -0
  305. package/dist/client/assets/ticker-CPutfhZ4.js +1 -0
  306. package/dist/client/assets/{timeline-definition-Z64GVDOM-bQJvmJx5.js → timeline-definition-Z64GVDOM-B4agmO7R.js} +1 -1
  307. package/dist/client/assets/toggle-DFqtCPt-.js +1 -0
  308. package/dist/client/assets/toggle-group-C5ICmqkI.js +1 -0
  309. package/dist/client/assets/{tokenModePresentation-BkS-mry_.js → tokenModePresentation-umDRm4k1.js} +1 -1
  310. package/dist/client/assets/tooltip-DbqhseXd.js +1 -0
  311. package/dist/client/assets/{treeView-Q6P3EWNA-D4Ex5QTp.js → treeView-Q6P3EWNA-C_S3udFB.js} +1 -1
  312. package/dist/client/assets/{treemap-WGGIJYW6-C4B6Y6qM.js → treemap-WGGIJYW6-B-kUSAkE.js} +1 -1
  313. package/dist/client/assets/undo-2-lyluTGMW.js +1 -0
  314. package/dist/client/assets/{unplug-B1dczi-t.js → unplug-D6iu-qlh.js} +1 -1
  315. package/dist/client/assets/usage-ClF-eUmy.js +1 -0
  316. package/dist/client/assets/useActiveIndicator-R5NWu8Fg.js +1 -0
  317. package/dist/client/assets/useAppSidebarCollapsed-BbMxfio5.js +1 -0
  318. package/dist/client/assets/useAppearancePreference-Ix13pMKy.js +1 -0
  319. package/dist/client/assets/useAtlassian-BYDCc9lv.js +0 -0
  320. package/dist/client/assets/useCheckoutResolution-CR-oOp5-.js +1 -0
  321. package/dist/client/assets/useDesktopRelaunchGuard-Jmh615iZ.js +1 -0
  322. package/dist/client/assets/useDiffFileNavigation-DeuzdD5E.js +15 -0
  323. package/dist/client/assets/useDiffLayout-DhcXwhBL.js +1 -0
  324. package/dist/client/assets/useEnvironmentSettingsTarget-DM6BRDT7.js +1 -0
  325. package/dist/client/assets/useFocus-CV0KIZwg.js +1 -0
  326. package/dist/client/assets/useGit-CUcs7h5_.js +1 -0
  327. package/dist/client/assets/useGitBranchSearch-CeKFtnCL.js +1 -0
  328. package/dist/client/assets/useHostedDraftExecutionTarget-DvQU5UOq.js +1 -0
  329. package/dist/client/assets/useLabelableId-CEgCRi6q.js +1 -0
  330. package/dist/client/assets/useLandingFlash-BfOOlFtW.js +1 -0
  331. package/dist/client/assets/useLogicalProjectSnapshots-CRNZke74.js +1 -0
  332. package/dist/client/assets/useNavigate-sQZthdyT.js +1 -0
  333. package/dist/client/assets/usePageLeadingInsetClass-Bf4nUvx4.js +1 -0
  334. package/dist/client/assets/usePhoneThreadActions-VaQ-mZex.js +1 -0
  335. package/dist/client/assets/usePopupHandleStore-DimKo2Yy.js +1 -0
  336. package/dist/client/assets/usePopupViewport-YeqX_UM3.js +1 -0
  337. package/dist/client/assets/usePresentationTier-B9kCQ4YH.js +1 -0
  338. package/dist/client/assets/useProject-Kt74Z12J.js +1 -0
  339. package/dist/client/assets/useProviderOptionsUpdater-CTzNh2B7.js +2 -0
  340. package/dist/client/assets/usePullRequestFilesViewed-D5Snmzys.js +1 -0
  341. package/dist/client/assets/usePullRequestsModel-DJL5HHbP.js +40 -0
  342. package/dist/client/assets/useScrollLock-CLZ31xsK.js +1 -0
  343. package/dist/client/assets/useSidebarThreadActions-n6EkLATf.js +6 -0
  344. package/dist/client/assets/{useStatistics-B76_r68I.js → useStatistics-DD0mYS4J.js} +14 -14
  345. package/dist/client/assets/{useTheme-B441xg4F.js → useTheme-Bdy-BDs-.js} +1 -1
  346. package/dist/client/assets/useValueChanged-DoumqMnV.js +1 -0
  347. package/dist/client/assets/{user-round-CLy1Qy1Y.js → user-round-BPDXr8Gq.js} +1 -1
  348. package/dist/client/assets/{vennDiagram-T6HMQDX7-8iiroXim.js → vennDiagram-T6HMQDX7-B1UEn_j_.js} +1 -1
  349. package/dist/client/assets/{vscode-icons-CJBVQtq5.js → vscode-icons-Ccy-gzFN.js} +1 -1
  350. package/dist/client/assets/{wardley-WFR3VGLG-DpyNUbTc.js → wardley-WFR3VGLG-gPdyDc-7.js} +1 -1
  351. package/dist/client/assets/{wardleyDiagram-T6FBY63Y-CI7is3QO.js → wardleyDiagram-T6FBY63Y-2aDcwOA4.js} +1 -1
  352. package/dist/client/assets/workspaceLifecycle-OJ1aKksw.js +3 -0
  353. package/dist/client/assets/workspaceMetadataProjection-CyEyJhUa.js +1 -0
  354. package/dist/client/assets/workspaceRouteSearch-CCavUdbH.js +1 -0
  355. package/dist/client/assets/{wrench-7pbbxqrZ.js → wrench-CPUCA_rn.js} +1 -1
  356. package/dist/client/assets/wsTransport-C88seBPA.js +15 -0
  357. package/dist/client/assets/{xychartDiagram-ELKLHX3M-BTEX3m2y.js → xychartDiagram-ELKLHX3M-C1_7Q-1i.js} +1 -1
  358. package/dist/client/favicon.svg +1 -1
  359. package/dist/client/index.html +1 -1
  360. package/dist/collectUint8StreamText-BsLSgI8i.mjs +710 -0
  361. package/dist/collectUint8StreamText-D5olwfpM.cjs +757 -0
  362. package/dist/{deviceHostWorker-L8C9wy38.mjs → deviceHostWorker-B-Dn-6An.mjs} +1 -1
  363. package/dist/{makeManagedServerProvider-CF776SAO.cjs → makeManagedServerProvider-B5tP7tvg.cjs} +1 -1
  364. package/dist/{makeManagedServerProvider-B90UKjnv.mjs → makeManagedServerProvider-B65ipCxM.mjs} +2 -2
  365. package/dist/resource-monitor/linux-arm64/ryco-resource-monitor +0 -0
  366. package/dist/resource-monitor/ryco-resource-monitor +0 -0
  367. package/dist/resource-monitor/ryco-resource-monitor.exe +0 -0
  368. package/dist/resource-monitor/win32-arm64/ryco-resource-monitor.exe +0 -0
  369. package/dist/resource-monitor/win32-x64/ryco-resource-monitor.exe +0 -0
  370. package/dist/{runtimeSession-V3RIy8Ao.mjs → runtimeSession-D_BZ-wRH.mjs} +1 -1
  371. package/dist/{src-CARHuYkT.cjs → src-FmeCeBJ9.cjs} +2291 -72
  372. package/dist/{src-CtsgPPhb.mjs → src-VTj60bUm.mjs} +1974 -61
  373. package/package.json +1 -1
  374. package/dist/AzureDevOpsSourceControlProvider-CKSvfuDS.cjs +0 -190
  375. package/dist/AzureDevOpsSourceControlProvider-DRWSXTml.mjs +0 -188
  376. package/dist/GitLabSourceControlProvider-Cj07OTBD.mjs +0 -186
  377. package/dist/GitLabSourceControlProvider-CvvN5pHt.cjs +0 -188
  378. package/dist/client/assets/AccountSettings-v6-r6gYl.js +0 -1
  379. package/dist/client/assets/AiFocusSettings-BVdLON0q.js +0 -1
  380. package/dist/client/assets/AppearanceSettings-DRChsQnN.js +0 -1
  381. package/dist/client/assets/BranchToolbar.logic-YN3KjVr9.js +0 -3
  382. package/dist/client/assets/BrowserPanel-Dxw3stFP.js +0 -1
  383. package/dist/client/assets/ChatRightPanel-CygpcJiF.js +0 -201
  384. package/dist/client/assets/ChatThreadRouteView-DYLZFHu0.js +0 -1
  385. package/dist/client/assets/CommandPaletteDialog-BRvBzP1R.js +0 -1
  386. package/dist/client/assets/CompositeRoot-BeEGGWwn.js +0 -1
  387. package/dist/client/assets/ComputerUseSettings-Cq8Pi0ZU.js +0 -1
  388. package/dist/client/assets/ConnectionsSettings-RSYtexxd.js +0 -7
  389. package/dist/client/assets/ContextHandoffEndpointLabel-CeGDLNA4.js +0 -4
  390. package/dist/client/assets/DiagnosticsSettings-CDa6MVx4.js +0 -2
  391. package/dist/client/assets/DialogHandle-BE7egDQQ.js +0 -1
  392. package/dist/client/assets/DialogRoot-C4mtzigX.js +0 -1
  393. package/dist/client/assets/DialogTitle-B_Q4DykI.js +0 -1
  394. package/dist/client/assets/DialogTrigger-BSqd4Crj.js +0 -1
  395. package/dist/client/assets/DraftChatThreadRouteView-JW_bXVrM.js +0 -1
  396. package/dist/client/assets/GlassSurface-DDG4eTlj.js +0 -1
  397. package/dist/client/assets/HostedConnectionControls-CscV6hm1.js +0 -1
  398. package/dist/client/assets/HostedHubRoot-gp7-ClBP.js +0 -2
  399. package/dist/client/assets/HostedNodeRenameDialog-D1DSiTpx.js +0 -1
  400. package/dist/client/assets/HostedRelayTrustNotice-B9jp4SRh.js +0 -1
  401. package/dist/client/assets/IntegrationsSettingsPanel-DH7SfWtV.js +0 -2
  402. package/dist/client/assets/KeybindingsSettings-DkgYYSHS.js +0 -7
  403. package/dist/client/assets/LazyBrowserPanel-D4e76vc_.js +0 -2
  404. package/dist/client/assets/McpServersSettings-Dc1kPa-X.js +0 -6
  405. package/dist/client/assets/MobileSheet-lT--mLEz.js +0 -1
  406. package/dist/client/assets/NodeSecuritySettings-DcfSx4KT.js +0 -1
  407. package/dist/client/assets/NullStore-8d2s-Re3.js +0 -1
  408. package/dist/client/assets/OnboardingDialog-CnLjwM6Z.js +0 -1
  409. package/dist/client/assets/OpinionatedPluginsSettings-BTJyS3rN.js +0 -1
  410. package/dist/client/assets/PhoneHome-CIMkuDJF.js +0 -1
  411. package/dist/client/assets/PhoneSettingsSurface-CfZQxJNI.js +0 -2
  412. package/dist/client/assets/ProvidersSettingsPanel-DAVSiwE1.js +0 -1
  413. package/dist/client/assets/RedactedSensitiveText-BHGbQJwB.js +0 -1
  414. package/dist/client/assets/RootAppShell-T056pByH.js +0 -7
  415. package/dist/client/assets/SettingsDialog-BERU2Qg7.js +0 -2
  416. package/dist/client/assets/SettingsPanels-De_XZOQF.js +0 -3
  417. package/dist/client/assets/SettingsPanels.editor-Dkva9gX_.js +0 -2
  418. package/dist/client/assets/SourceControlSettings-B4HS17cB.js +0 -1
  419. package/dist/client/assets/StatisticsPage-Bj2ftFdH.js +0 -1
  420. package/dist/client/assets/StatisticsPanel-Dw7GBBmd.js +0 -1
  421. package/dist/client/assets/StatisticsSettingsLink-_XL3ABoI.js +0 -1
  422. package/dist/client/assets/ThreadTerminalDrawer-CPPzQSXN.js +0 -18
  423. package/dist/client/assets/ThreadWorkspacePanel-DWKU7Omm.js +0 -2073
  424. package/dist/client/assets/appChrome-TkWLAGxk.js +0 -1
  425. package/dist/client/assets/architecture-7GRP2DOG-HS59zfrk.js +0 -1
  426. package/dist/client/assets/authorization-D8dOcEYq.js +0 -1
  427. package/dist/client/assets/badge-2AZ3HfVS.js +0 -1
  428. package/dist/client/assets/capabilities-CsHjxjab.js +0 -1
  429. package/dist/client/assets/channel-Dn3_cOkm.js +0 -1
  430. package/dist/client/assets/chevron-right-Dsw16yGn.js +0 -1
  431. package/dist/client/assets/classDiagram-JCYQIIEL-ZQvrS8No.js +0 -1
  432. package/dist/client/assets/classDiagram-v2-OCEON4UE-ZQvrS8No.js +0 -1
  433. package/dist/client/assets/compiler-runtime-C4g8XhC5.js +0 -1
  434. package/dist/client/assets/desktopWorkspace-_iM6B9Kf.js +0 -1
  435. package/dist/client/assets/editorPreferences-D8q1ItMW.js +0 -1
  436. package/dist/client/assets/eventmodeling-NTZA5JFV-Dj71kuPV.js +0 -1
  437. package/dist/client/assets/flowDiagram-UKHOOZJN-BaAiwuvL.js +0 -1
  438. package/dist/client/assets/hostedConnectionCoordinator-BuRWCvUG.js +0 -1
  439. package/dist/client/assets/hubRoutes-jcMPIFy3.js +0 -1
  440. package/dist/client/assets/kbd-Dxm5Elqj.js +0 -1
  441. package/dist/client/assets/layers-Dqez1Uq8.js +0 -1
  442. package/dist/client/assets/liquidGlass-CA2o_Cq0.js +0 -1
  443. package/dist/client/assets/liquidGlass.worker-icvLJKHf.js +0 -1
  444. package/dist/client/assets/main-BqSANuAs.css +0 -2
  445. package/dist/client/assets/main-DAbEANjY.js +0 -9
  446. package/dist/client/assets/motion-BdscFixQ.js +0 -1
  447. package/dist/client/assets/palette-92ylWqeC.js +0 -1
  448. package/dist/client/assets/perfInstrumentation-BT27w4tn.js +0 -1
  449. package/dist/client/assets/presentationTier-xlIjcFab.js +0 -1
  450. package/dist/client/assets/primary-DZjgHvyf.js +0 -5
  451. package/dist/client/assets/providerDriverMeta-T2YbXzuS.js +0 -1
  452. package/dist/client/assets/providerStatus-DBGvvkyF.js +0 -1
  453. package/dist/client/assets/radio-group-CRnHYWa8.js +0 -1
  454. package/dist/client/assets/railroad-abnf-HS5TGJTU-DxU7Mt1k.js +0 -1
  455. package/dist/client/assets/railroad-ebnf-LZEXJU2U-BYAPVjRd.js +0 -1
  456. package/dist/client/assets/railroad-peg-WCYAUIDC-BOqgR_X7.js +0 -1
  457. package/dist/client/assets/runtime-BwHA1GUS.js +0 -18
  458. package/dist/client/assets/scroll-area-7n2X_RLQ.js +0 -1
  459. package/dist/client/assets/separator-CL1qjMqJ.js +0 -1
  460. package/dist/client/assets/settingsLayout-DxsFwhF0.js +0 -1
  461. package/dist/client/assets/sheet-CGiaw8-i.js +0 -1
  462. package/dist/client/assets/sidebar-Cc6ANbOP.js +0 -1
  463. package/dist/client/assets/sidebarProjectFolders-DO2Uv84F.js +0 -4
  464. package/dist/client/assets/sidebarStatusText-B4AtFXZo.js +0 -1
  465. package/dist/client/assets/sidebarUndo-gdSrfa4O.js +0 -1
  466. package/dist/client/assets/square-Cr9X8U6y.js +0 -1
  467. package/dist/client/assets/src-C3Y_imaX.js +0 -14
  468. package/dist/client/assets/stateDiagram-v2-UEYNNEHI-CWtHILqh.js +0 -1
  469. package/dist/client/assets/storeSelectors-CTDWheMy.js +0 -1
  470. package/dist/client/assets/swimlanesDiagram-ULZ7WXOC-DuaPce9O.js +0 -8
  471. package/dist/client/assets/switch-DnpJB2xv.js +0 -48
  472. package/dist/client/assets/toggle-D10FsFoE.js +0 -1
  473. package/dist/client/assets/toggle-group-BhzbQPEQ.js +0 -1
  474. package/dist/client/assets/tooltip-BlweKBxc.js +0 -1
  475. package/dist/client/assets/usage-BBwaxMif.js +0 -1
  476. package/dist/client/assets/useAppSidebarCollapsed-CFy476E3.js +0 -1
  477. package/dist/client/assets/useAppearancePreference-Dlh9P8iu.js +0 -1
  478. package/dist/client/assets/useBaseUiId-DKOjzmu3.js +0 -1
  479. package/dist/client/assets/useLabelableId-DQbY2GG1.js +0 -1
  480. package/dist/client/assets/useNavigate-B8oXtF30.js +0 -1
  481. package/dist/client/assets/usePhoneThreadActions-6DCLiyJ5.js +0 -1
  482. package/dist/client/assets/usePopupViewport-CNWcP7Od.js +0 -1
  483. package/dist/client/assets/usePresentationTier-hxB7Yv_Q.js +0 -1
  484. package/dist/client/assets/useScrollLock-BbKeKZdj.js +0 -1
  485. package/dist/client/assets/useTriggerFocusGuards-BC4Wb3GI.js +0 -1
  486. package/dist/client/assets/useValueChanged-BkTbyZdO.js +0 -1
  487. package/dist/client/assets/workspaceMetadataProjection-aqZEXDrQ.js +0 -1
  488. package/dist/collectUint8StreamText-BAUF-vzz.mjs +0 -37
  489. package/dist/collectUint8StreamText-vagpNUMJ.cjs +0 -42
  490. package/dist/git-9xWsJYIH.mjs +0 -132
  491. package/dist/git-xIkXFy_l.cjs +0 -218
  492. package/dist/sourceControl-B0D1Op29.cjs +0 -253
  493. package/dist/sourceControl-BiEBxN01.mjs +0 -224
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { Dt as ServerConfig, Gt as normalizeModelSlug, Rt as getModelSelectionBooleanOptionValue, X as ServerSettingsService, at as expandHomePath, zt as getModelSelectionStringOptionValue } from "./Metrics-CnmjpbWk.mjs";
4
- import { Aa as PROVIDER_SEND_TURN_MAX_IMAGE_BYTES, Ba as ProviderApprovalDecision, Do as ThreadGoal, Du as EventId, Fu as RuntimeRequestId, Lu as RuntimeSubagentId, Nu as ProviderItemId, Pu as RuntimeItemId, Qo as ProviderInstanceId, Ru as RuntimeTaskId, Vu as TurnId, Zo as ProviderDriverKind, _i as UserInputQuestion, ku as MessageId, qr as CodexSettings, vi as isToolLifecycleItemType, yu as ApprovalRequestId } from "./src-CtsgPPhb.mjs";
5
- import { $t as ServerRequest__CommandExecutionRequestApprovalParams, A as makeEventNdjsonLogger, An as V2ThreadRealtimeStartedNotification, B as buildTokenReductionInstructions, Bn as V2TurnSteerParams, Bt as ProviderAdapterSessionNotFoundError, Cn as V2ThreadGoalClearedNotification, Dn as V2ThreadRealtimeErrorNotification, En as V2ThreadRealtimeClosedNotification, Fn as V2TurnDiffUpdatedNotification, Gn as materializeCodexShadowHome, Gt as layerCommand, Hn as V2WindowsSandboxSetupCompletedNotification, Ht as ProviderDriverError, In as V2TurnPlanUpdatedNotification, It as createProcessDeviceToolBinding, Jt as CodexAppServerRequestError, Kn as resolveCodexHomeLayout, Kt as CodexAppServerProcessExitedError, Ln as V2TurnStartParams, Lt as ProviderAdapterProcessError, Mn as V2ThreadStatusChangedNotification, Nn as V2ThreadTokenUsageUpdatedNotification, On as V2ThreadRealtimeItemAddedNotification, Pn as V2TurnCompletedNotification, Pt as installAgentControlNativeHttp, Q as enrichProviderSnapshotWithVersionAdvisory, Qt as ServerRequest__ApplyPatchApprovalParams, Rn as V2TurnStartParams__CollaborationMode, Rt as ProviderAdapterRequestError, Sn as V2ServerRequestResolvedNotification, Tn as V2ThreadNameUpdatedNotification, Un as V2WindowsWorldWritableWarningNotification, Ut as CodexAppServerClient, V as checkRtkAvailability, Vn as V2TurnSteerResponse, Vt as ProviderAdapterValidationError, Wn as codexContinuationIdentity, Wt as layerChildProcess, Xt as CodexAppServerTransportError, Yt as CodexAppServerSpawnError, Zt as SERVER_NOTIFICATION_METHODS, _n as V2McpToolCallProgressNotification, _t as checkCodexProviderStatus, an as ToolRequestUserInputResponse, bn as V2ReasoningSummaryTextDeltaNotification, cn as V2AgentMessageDeltaNotification, ct as resolveAttachmentPath, dn as V2DeprecationNoticeNotification, en as ServerRequest__DynamicToolCallParams, et as makePackageManagedProviderMaintenanceResolver, fn as V2ErrorNotification, gn as V2McpServerOauthLoginCompletedNotification, gt as buildCodexInitializeParams, hn as V2ItemStartedNotification, ht as normalizeProviderHomeEnvironment, in as ToolRequestUserInputParams, it as resolveProviderMaintenanceCapabilitiesEffect, jn as V2ThreadStartedNotification, k as ProviderEventLoggers, kn as V2ThreadRealtimeOutputAudioDeltaNotification, ln as V2CommandExecutionOutputDeltaNotification, mn as V2ItemCompletedNotification, mt as mergeProviderInstanceEnvironment, n as AgentControlSessionRegistry, nn as ServerRequest__FileChangeRequestApprovalParams, on as V2AccountRateLimitsUpdatedNotification, pn as V2FileChangeOutputDeltaNotification, qt as CodexAppServerProtocolParseError, rn as ServerRequest__ToolRequestUserInputParams, sn as V2AccountUpdatedNotification, t as makeServerQueueMetrics, tn as ServerRequest__ExecCommandApprovalParams, un as V2ConfigWarningNotification, vn as V2ModelReroutedNotification, vt as makePendingCodexProvider, wn as V2ThreadGoalUpdatedNotification, xn as V2ReasoningTextDeltaNotification, yn as V2PlanDeltaNotification, zn as V2TurnStartResponse, zt as ProviderAdapterSessionClosedError } from "./bin.mjs";
6
- import { i as formatAttachmentPathLines, n as stampRuntimeEvent, r as appendAttachmentPathLines, t as requireRuntimeSessionId } from "./runtimeSession-V3RIy8Ao.mjs";
3
+ import { Kt as getModelSelectionStringOptionValue, Nt as ServerConfig, Qt as normalizeModelSlug, X as ServerSettingsService, ot as expandHomePath } from "./Metrics-C3vLS9rz.mjs";
4
+ import { Ad as ProviderItemId, Ed as MessageId, Fd as RuntimeTaskId, Ji as UserInputQuestion, Ks as ProviderDriverKind, Md as RuntimeRequestId, Pd as RuntimeSubagentId, Rd as TurnId, Si as CodexSettings, To as ProviderApprovalDecision, Yi as isToolLifecycleItemType, bs as ThreadGoal, gd as ApprovalRequestId, jd as RuntimeItemId, mo as PROVIDER_SEND_TURN_MAX_IMAGE_BYTES, qs as ProviderInstanceId, wd as EventId } from "./src-VTj60bUm.mjs";
5
+ import { $t as CodexAppServerRequestError, A as ProviderEventLoggers, An as V2ThreadNameUpdatedNotification, Bn as V2TurnDiffUpdatedNotification, Bt as createProcessDeviceToolBinding, Cn as V2ModelReroutedNotification, Ct as codexServiceTierForSelection, Dn as V2ServerRequestResolvedNotification, En as V2ReasoningTextDeltaNotification, Fn as V2ThreadRealtimeStartedNotification, Gn as V2TurnSteerParams, Gt as ProviderAdapterValidationError, H as checkRtkAvailability, Hn as V2TurnStartParams, Ht as ProviderAdapterRequestError, In as V2ThreadStartedNotification, It as agentControlHostContext, Jn as V2WindowsWorldWritableWarningNotification, Jt as CodexAppServerClient, Kn as V2TurnSteerResponse, Kt as ProviderDriverError, Ln as V2ThreadStatusChangedNotification, Mn as V2ThreadRealtimeErrorNotification, Nn as V2ThreadRealtimeItemAddedNotification, On as V2ThreadGoalClearedNotification, Pn as V2ThreadRealtimeOutputAudioDeltaNotification, Qt as CodexAppServerProtocolParseError, Rn as V2ThreadTokenUsageUpdatedNotification, Rt as installAgentControlNativeHttp, Sn as V2McpToolCallProgressNotification, Tn as V2ReasoningSummaryTextDeltaNotification, Un as V2TurnStartParams__CollaborationMode, Ut as ProviderAdapterSessionClosedError, V as buildTokenReductionInstructions, Vn as V2TurnPlanUpdatedNotification, Vt as ProviderAdapterProcessError, Wn as V2TurnStartResponse, Wt as ProviderAdapterSessionNotFoundError, X as withoutHtmlRenderMarkup, Xn as materializeCodexShadowHome, Xt as layerCommand, Y as resolveHtmlRenderToolPresentation, Yn as codexContinuationIdentity, Yt as layerChildProcess, Zn as resolveCodexHomeLayout, Zt as CodexAppServerProcessExitedError, _n as V2ErrorNotification, _t as mergeProviderInstanceEnvironment, an as ServerRequest__DynamicToolCallParams, at as enrichProviderSnapshotWithVersionAdvisory, bn as V2ItemStartedNotification, bt as checkCodexProviderStatus, cn as ServerRequest__ToolRequestUserInputParams, dn as V2AccountRateLimitsUpdatedNotification, dt as resolveProviderMaintenanceCapabilitiesEffect, en as CodexAppServerSpawnError, er as resolveAttachmentPath, fn as V2AccountUpdatedNotification, gn as V2DeprecationNoticeNotification, hn as V2ConfigWarningNotification, i as AgentControlSessionRegistry, in as ServerRequest__CommandExecutionRequestApprovalParams, j as makeEventNdjsonLogger, jn as V2ThreadRealtimeClosedNotification, kn as V2ThreadGoalUpdatedNotification, ln as ToolRequestUserInputParams, mn as V2CommandExecutionOutputDeltaNotification, n as usageLimitStateFromWindows, nn as SERVER_NOTIFICATION_METHODS, on as ServerRequest__ExecCommandApprovalParams, pn as V2AgentMessageDeltaNotification, qn as V2WindowsSandboxSetupCompletedNotification, qt as ProviderTurnNotSteerableError, r as makeServerQueueMetrics, rn as ServerRequest__ApplyPatchApprovalParams, sn as ServerRequest__FileChangeRequestApprovalParams, st as makePackageManagedProviderMaintenanceResolver, tn as CodexAppServerTransportError, un as ToolRequestUserInputResponse, vn as V2FileChangeOutputDeltaNotification, vt as normalizeProviderHomeEnvironment, wn as V2PlanDeltaNotification, xn as V2McpServerOauthLoginCompletedNotification, xt as makePendingCodexProvider, yn as V2ItemCompletedNotification, yt as buildCodexInitializeParams, zn as V2TurnCompletedNotification } from "./bin.mjs";
6
+ import { i as formatAttachmentPathLines, n as stampRuntimeEvent, r as appendAttachmentPathLines, t as requireRuntimeSessionId } from "./runtimeSession-D_BZ-wRH.mjs";
7
7
  import { t as formatSourceControlContextsForAgent } from "./sourceControlContextFormatter-DEwpnVAH.mjs";
8
8
  import { t as appendProjectCustomSystemPrompt } from "./ProjectCustomSystemPrompt-CS1nulhL.mjs";
9
- import { t as makeManagedServerProvider } from "./makeManagedServerProvider-B90UKjnv.mjs";
10
- import { t as makeCodexTextGeneration } from "./CodexTextGeneration-C5TIspJA.mjs";
11
- import { Cause, Deferred, Effect, Exit, Fiber, FileSystem, Layer, Option, Queue, Redacted, Ref, Schedule, Schema, Scope, Stream } from "effect";
9
+ import { t as makeManagedServerProvider } from "./makeManagedServerProvider-B65ipCxM.mjs";
10
+ import { t as makeCodexTextGeneration } from "./CodexTextGeneration-BSgNgfZv.mjs";
11
+ import { Cause, Clock, Deferred, Effect, Exit, Fiber, FileSystem, Layer, Option, Queue, Redacted, Ref, Schedule, Schema, Scope, Stream } from "effect";
12
12
  import { HttpClient } from "effect/unstable/http";
13
13
  import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
14
14
  import * as SchemaIssue$1 from "effect/SchemaIssue";
@@ -417,6 +417,7 @@ function buildTurnStartParams(input) {
417
417
  ...input.model ? { model: input.model } : {},
418
418
  ...input.serviceTier ? { serviceTier: input.serviceTier } : {},
419
419
  ...input.effort ? { effort: input.effort } : {},
420
+ summary: "auto",
420
421
  ...collaborationMode ? { collaborationMode } : {}
421
422
  }).pipe(Effect.mapError((error) => toProtocolParseError("Invalid turn/start request payload", error)));
422
423
  }
@@ -476,6 +477,35 @@ const openCodexThread = (input) => {
476
477
  errorMessage: "This Codex thread already has an active writer in another process. Its history can still be recovered. Release the thread in that process before continuing it here."
477
478
  }) : error));
478
479
  };
480
+ const CodexThreadRevertResponse = Schema.Struct({ thread: Schema.Struct({ id: Schema.String }) });
481
+ function isUnknownCodexMethod(error) {
482
+ return Schema.is(CodexAppServerRequestError)(error) && (error.code === -32601 || error.code === -32600 && /unknown variant/i.test(error.errorMessage));
483
+ }
484
+ /**
485
+ * Makes a Codex thread forget its newest turns. Current binaries replace the
486
+ * durable history with the prefix before `beforeTurnId` (`thread/revert`); old
487
+ * binaries only know the deprecated `thread/rollback`. Neither touches files.
488
+ */
489
+ const revertCodexThread = (client, input) => {
490
+ const legacyRollback = (revertError) => client.request("thread/rollback", {
491
+ threadId: input.threadId,
492
+ numTurns: input.numTurns
493
+ }).pipe(Effect.as({
494
+ threadId: input.threadId,
495
+ turns: []
496
+ }), Effect.catch((rollbackError) => !isUnknownCodexMethod(rollbackError) ? Effect.fail(rollbackError) : Effect.fail(revertError ?? new CodexAppServerRequestError({
497
+ code: -32601,
498
+ errorMessage: "This Codex version can't rewind threads."
499
+ }))));
500
+ if (input.beforeTurnId === void 0) return legacyRollback(void 0);
501
+ return client.raw.request("thread/revert", {
502
+ threadId: input.threadId,
503
+ beforeTurnId: input.beforeTurnId
504
+ }).pipe(Effect.flatMap((raw) => Schema.decodeUnknownEffect(CodexThreadRevertResponse)(raw).pipe(Effect.mapError((error) => toProtocolParseError("Invalid thread/revert response payload", error)))), Effect.as({
505
+ threadId: input.threadId,
506
+ turns: []
507
+ }), Effect.catch((error) => Schema.is(CodexAppServerRequestError)(error) ? legacyRollback(error) : Effect.fail(error)));
508
+ };
479
509
  function readNotificationThreadId(notification) {
480
510
  switch (notification.method) {
481
511
  case "thread/started": return notification.params.thread.id;
@@ -1440,17 +1470,18 @@ const makeCodexSessionRuntime = (options) => Effect.gen(function* () {
1440
1470
  }
1441
1471
  return parseThreadSnapshot(response);
1442
1472
  }),
1443
- rollbackThread: (numTurns) => Effect.gen(function* () {
1473
+ rollbackThread: (input) => Effect.gen(function* () {
1444
1474
  const providerThreadId = yield* readProviderThreadId;
1445
- const response = yield* client.request("thread/rollback", {
1475
+ const snapshot = yield* revertCodexThread(client, {
1446
1476
  threadId: providerThreadId,
1447
- numTurns
1477
+ numTurns: input.numTurns,
1478
+ beforeTurnId: input.beforeTurnId
1448
1479
  });
1449
1480
  yield* updateSession(sessionRef, {
1450
1481
  status: "ready",
1451
1482
  activeTurnId: void 0
1452
1483
  });
1453
- return parseThreadSnapshot(response);
1484
+ return snapshot;
1454
1485
  }),
1455
1486
  setGoal: (input) => Effect.gen(function* () {
1456
1487
  const providerThreadId = yield* readProviderThreadId;
@@ -1536,6 +1567,131 @@ const makeCodexSessionRuntime = (options) => Effect.gen(function* () {
1536
1567
  close
1537
1568
  };
1538
1569
  });
1570
+ function asRecord(value) {
1571
+ return value !== null && typeof value === "object" && !Array.isArray(value) ? value : void 0;
1572
+ }
1573
+ /**
1574
+ * Codex's rolling update is sparse: a present value overrides the previous one, while
1575
+ * null or absent never clears it. Window objects merge the same way one level down.
1576
+ */
1577
+ function mergeCodexRateLimitSnapshot(previous, update) {
1578
+ const next = asRecord(update);
1579
+ if (!next) return previous;
1580
+ const merged = { ...previous };
1581
+ for (const [key, value] of Object.entries(next)) {
1582
+ if (value === null || value === void 0) continue;
1583
+ const before = asRecord(merged[key]);
1584
+ const after = asRecord(value);
1585
+ if (before && after) {
1586
+ const window = { ...before };
1587
+ for (const [field, fieldValue] of Object.entries(after)) if (fieldValue !== null && fieldValue !== void 0) window[field] = fieldValue;
1588
+ merged[key] = window;
1589
+ } else merged[key] = value;
1590
+ }
1591
+ return merged;
1592
+ }
1593
+ function readWindow(value) {
1594
+ const window = asRecord(value);
1595
+ const usedPercent = window?.usedPercent;
1596
+ if (typeof usedPercent !== "number" || !Number.isFinite(usedPercent)) return void 0;
1597
+ const resetsAt = window?.resetsAt;
1598
+ return {
1599
+ exhausted: usedPercent >= 100,
1600
+ resetAtMs: typeof resetsAt === "number" && Number.isFinite(resetsAt) ? resetsAt * 1e3 : null
1601
+ };
1602
+ }
1603
+ function codexUsageLimitState(snapshot, nowMs) {
1604
+ const windows = [readWindow(snapshot?.primary), readWindow(snapshot?.secondary)].filter((window) => window !== void 0);
1605
+ return usageLimitStateFromWindows(windows, nowMs);
1606
+ }
1607
+ /** `"usageLimitExceeded"` → itself; `{ httpConnectionFailed: {...} }` → its single key. */
1608
+ function codexErrorInfoCode(info) {
1609
+ if (typeof info === "string") return info.length > 0 ? info : void 0;
1610
+ const record = asRecord(info);
1611
+ if (!record) return void 0;
1612
+ const keys = Object.keys(record);
1613
+ return keys.length === 1 ? keys[0] : void 0;
1614
+ }
1615
+ /**
1616
+ * `usageLimitExceeded` is a limit. `rateLimitExceeded` is not in the pinned schema; it
1617
+ * counts only while the account snapshot is exhausted, so a transient 429 stays an error.
1618
+ */
1619
+ function isCodexUsageLimitError(code, state) {
1620
+ if (code === "usageLimitExceeded") return true;
1621
+ if (code === "rateLimitExceeded") return state.exhausted;
1622
+ return false;
1623
+ }
1624
+ function readTurnError(payload) {
1625
+ const error = asRecord(asRecord(asRecord(payload)?.turn)?.error);
1626
+ if (!error) return {};
1627
+ const message = typeof error.message === "string" ? error.message.trim() : "";
1628
+ const code = codexErrorInfoCode(error.codexErrorInfo);
1629
+ return {
1630
+ ...code !== void 0 ? { code } : {},
1631
+ ...message.length > 0 ? { message } : {}
1632
+ };
1633
+ }
1634
+ /** Per-session state: the merged rate-limit snapshot and turns already reported as limited. */
1635
+ function makeCodexUsageLimitTracker() {
1636
+ let snapshot;
1637
+ const announcedTurnIds = /* @__PURE__ */ new Set();
1638
+ const annotate = (event, mapped, nowMs = Date.now()) => {
1639
+ if (event.method === "account/rateLimits/updated") {
1640
+ snapshot = mergeCodexRateLimitSnapshot(snapshot, asRecord(event.payload)?.rateLimits);
1641
+ const usageLimitState = codexUsageLimitState(snapshot, nowMs);
1642
+ return mapped.map((runtimeEvent) => runtimeEvent.type === "account.rate-limits.updated" ? {
1643
+ ...runtimeEvent,
1644
+ payload: {
1645
+ ...runtimeEvent.payload,
1646
+ usageLimitState
1647
+ }
1648
+ } : runtimeEvent);
1649
+ }
1650
+ if (event.method === "error") {
1651
+ const payload = asRecord(event.payload);
1652
+ if (payload?.willRetry === true) return mapped;
1653
+ const code = codexErrorInfoCode(asRecord(payload?.error)?.codexErrorInfo);
1654
+ const state = codexUsageLimitState(snapshot, nowMs);
1655
+ if (!isCodexUsageLimitError(code, state)) return mapped;
1656
+ return mapped.map((runtimeEvent) => {
1657
+ if (runtimeEvent.type !== "runtime.error") return runtimeEvent;
1658
+ if (runtimeEvent.turnId !== void 0) announcedTurnIds.add(runtimeEvent.turnId);
1659
+ return {
1660
+ ...runtimeEvent,
1661
+ payload: {
1662
+ ...runtimeEvent.payload,
1663
+ class: "usage_limit",
1664
+ resetAt: state.exhausted ? state.resetAt : null
1665
+ }
1666
+ };
1667
+ });
1668
+ }
1669
+ if (event.method === "turn/completed") {
1670
+ const completed = mapped.find((runtimeEvent) => runtimeEvent.type === "turn.completed");
1671
+ if (!completed) return mapped;
1672
+ const turnId = completed.turnId;
1673
+ const alreadyAnnounced = turnId !== void 0 && announcedTurnIds.has(turnId);
1674
+ if (turnId !== void 0) announcedTurnIds.delete(turnId);
1675
+ if (completed.payload.state !== "failed" || alreadyAnnounced) return mapped;
1676
+ const turnError = readTurnError(event.payload);
1677
+ const state = codexUsageLimitState(snapshot, nowMs);
1678
+ if (!isCodexUsageLimitError(turnError.code, state)) return mapped;
1679
+ const { type: _type, payload: _payload, ...base } = completed;
1680
+ return [{
1681
+ ...base,
1682
+ eventId: EventId.make(`${completed.eventId}:usage-limit`),
1683
+ type: "runtime.error",
1684
+ payload: {
1685
+ message: turnError.message ?? "Codex usage limit reached.",
1686
+ class: "usage_limit",
1687
+ resetAt: state.exhausted ? state.resetAt : null
1688
+ }
1689
+ }, ...mapped];
1690
+ }
1691
+ return mapped;
1692
+ };
1693
+ return { annotate };
1694
+ }
1539
1695
  //#endregion
1540
1696
  //#region src/provider/Layers/CodexAdapter.ts
1541
1697
  /**
@@ -1555,9 +1711,10 @@ const PROVIDER_SEND_TURN_MAX_ATTACHMENT_TOTAL_BYTES = 8 * PROVIDER_SEND_TURN_MAX
1555
1711
  * The revocation sentence keeps the note truthful for the runtime's whole
1556
1712
  * lifetime: instructions are fixed at session start, but the lease can be
1557
1713
  * revoked mid-session (feature disabled, listener stopped), after which
1558
- * every request is rejected as unauthorized.
1714
+ * every request is rejected as unauthorized. Built on the shared host
1715
+ * context so Codex hears the same guidance as every other provider.
1559
1716
  */
1560
- const CODEX_AGENT_CONTROL_INSTRUCTIONS = `Ryco Agent Control tools (ryco_*) are available through the '${CODEX_AGENT_CONTROL_SERVER_NAME}' MCP server on a private local connection. They can inspect Ryco projects, threads, transcripts, and request status. During an active turn, the four thread-action tools create immutable requests that require user approval in Ryco; they never mutate immediately. If the server is unreachable or rejects requests as unauthorized, Ryco has revoked this session's access — treat the tools as unavailable instead of retrying.`;
1717
+ const CODEX_AGENT_CONTROL_INSTRUCTIONS = `${agentControlHostContext(true)} The server is '${CODEX_AGENT_CONTROL_SERVER_NAME}' on a private local connection; if it becomes unreachable, Ryco has revoked this session's access.`;
1561
1718
  function formatCodexRuntimeErrorDetail(error) {
1562
1719
  if (!(error.message.includes("Expected \"fast\" | \"flex\"") && error.message.includes("[\"serviceTier\"]"))) return error.message;
1563
1720
  return `${error.message}. This usually means the installed Codex CLI returned a newer service tier name than Ryco's generated app-server schema knows about. Rebuild effect-codex-app-server before rebuilding the server bundle.`;
@@ -1619,7 +1776,7 @@ function readTokenReductionInstructions(tokenMode) {
1619
1776
  rtkInstalled: availability.installed
1620
1777
  })));
1621
1778
  }
1622
- function normalizeCodexTokenUsage(usage) {
1779
+ function normalizeCodexTokenUsage(usage, sessionId) {
1623
1780
  const totalProcessedTokens = usage.total.totalTokens;
1624
1781
  const usedTokens = usage.last.totalTokens;
1625
1782
  if (usedTokens === void 0 || usedTokens < 0) return;
@@ -1629,6 +1786,15 @@ function normalizeCodexTokenUsage(usage) {
1629
1786
  const outputTokens = usage.last.outputTokens;
1630
1787
  const reasoningOutputTokens = usage.last.reasoningOutputTokens;
1631
1788
  return {
1789
+ processedUsage: {
1790
+ scope: "session",
1791
+ sessionId,
1792
+ inputTokens: usage.total.inputTokens,
1793
+ cachedInputTokens: usage.total.cachedInputTokens,
1794
+ outputTokens: usage.total.outputTokens,
1795
+ reasoningOutputTokens: usage.total.reasoningOutputTokens,
1796
+ totalTokens: usage.total.totalTokens
1797
+ },
1632
1798
  usedTokens,
1633
1799
  ...totalProcessedTokens !== void 0 && totalProcessedTokens > usedTokens ? { totalProcessedTokens } : {},
1634
1800
  ...maxTokens !== void 0 ? { maxTokens } : {},
@@ -1653,6 +1819,22 @@ function toTurnStatus(value) {
1653
1819
  default: return "completed";
1654
1820
  }
1655
1821
  }
1822
+ /**
1823
+ * Fallback for a `turn/completed` that strict decoding rejects (for example a
1824
+ * `codexErrorInfo` literal newer than the pinned schema). Dropping it would leave the
1825
+ * turn running and its Agent Control authority bound.
1826
+ */
1827
+ function readTurnCompletedStructurally(payload) {
1828
+ const turn = payload !== null && typeof payload === "object" ? payload.turn : void 0;
1829
+ if (turn === null || typeof turn !== "object") return void 0;
1830
+ const { status, error } = turn;
1831
+ const errorRecord = error !== null && typeof error === "object" ? error : null;
1832
+ const errorMessage = trimText(typeof errorRecord?.message === "string" ? errorRecord.message : void 0);
1833
+ return {
1834
+ status: status === "completed" || status === "failed" || status === "cancelled" || status === "interrupted" ? status : errorRecord !== null ? "failed" : "completed",
1835
+ ...errorMessage ? { errorMessage } : {}
1836
+ };
1837
+ }
1656
1838
  function normalizeItemType(raw) {
1657
1839
  const type = trimText(raw);
1658
1840
  if (!type) return "item";
@@ -1810,12 +1992,39 @@ function runtimeEventBase(event, canonicalThreadId) {
1810
1992
  }
1811
1993
  };
1812
1994
  }
1995
+ /**
1996
+ * A call to one of Ryco's HTML tools: shown by page title or viewport, and
1997
+ * carried without the page markup its arguments hold.
1998
+ */
1999
+ function htmlRenderToolItem(payload) {
2000
+ const { item } = payload;
2001
+ if (item.type !== "mcpToolCall") return void 0;
2002
+ const presentation = resolveHtmlRenderToolPresentation({
2003
+ toolName: item.tool,
2004
+ serverName: item.server,
2005
+ input: item.arguments
2006
+ });
2007
+ if (!presentation) return void 0;
2008
+ return {
2009
+ ...presentation,
2010
+ payload: {
2011
+ ...payload,
2012
+ item: {
2013
+ ...item,
2014
+ arguments: withoutHtmlRenderMarkup(item.arguments)
2015
+ }
2016
+ }
2017
+ };
2018
+ }
1813
2019
  function mapItemLifecycle(event, canonicalThreadId, lifecycle) {
1814
- const item = (readPayload(V2ItemStartedNotification, event.payload) ?? readPayload(V2ItemCompletedNotification, event.payload))?.item;
2020
+ const payload = readPayload(V2ItemStartedNotification, event.payload) ?? readPayload(V2ItemCompletedNotification, event.payload);
2021
+ const item = payload?.item;
1815
2022
  if (!item) return;
1816
2023
  const itemType = toCanonicalItemType(item.type);
1817
2024
  if (itemType === "unknown" && lifecycle !== "item.updated") return;
1818
- const detail = itemDetail(item);
2025
+ const htmlRender = htmlRenderToolItem(payload);
2026
+ const title = htmlRender?.title ?? itemTitle(itemType);
2027
+ const detail = htmlRender ? htmlRender.detail : itemDetail(item);
1819
2028
  const status = lifecycle === "item.started" ? "inProgress" : lifecycle === "item.completed" ? "completed" : void 0;
1820
2029
  return {
1821
2030
  ...runtimeEventBase(event, canonicalThreadId),
@@ -1823,9 +2032,9 @@ function mapItemLifecycle(event, canonicalThreadId, lifecycle) {
1823
2032
  payload: {
1824
2033
  itemType,
1825
2034
  ...status ? { status } : {},
1826
- ...itemTitle(itemType) ? { title: itemTitle(itemType) } : {},
2035
+ ...title ? { title } : {},
1827
2036
  ...detail ? { detail } : {},
1828
- ...event.payload !== void 0 ? { data: event.payload } : {}
2037
+ ...htmlRender ? { data: htmlRender.payload } : event.payload !== void 0 ? { data: event.payload } : {}
1829
2038
  }
1830
2039
  };
1831
2040
  }
@@ -2187,7 +2396,7 @@ function mapToRuntimeEvents(event, canonicalThreadId) {
2187
2396
  }
2188
2397
  if (event.method === "thread/tokenUsage/updated") {
2189
2398
  const payload = readPayload(V2ThreadTokenUsageUpdatedNotification, event.payload);
2190
- const normalizedUsage = payload ? normalizeCodexTokenUsage(payload.tokenUsage) : void 0;
2399
+ const normalizedUsage = payload ? normalizeCodexTokenUsage(payload.tokenUsage, payload.threadId) : void 0;
2191
2400
  if (!normalizedUsage) return [];
2192
2401
  return [{
2193
2402
  type: "thread.token-usage.updated",
@@ -2225,14 +2434,17 @@ function mapToRuntimeEvents(event, canonicalThreadId) {
2225
2434
  }
2226
2435
  if (event.method === "turn/completed") {
2227
2436
  const payload = readPayload(V2TurnCompletedNotification, event.payload);
2228
- if (!payload) return [];
2229
- const errorMessage = trimText(payload.turn.error?.message);
2437
+ const completed = payload ? {
2438
+ status: toTurnStatus(payload.turn.status),
2439
+ errorMessage: trimText(payload.turn.error?.message)
2440
+ } : readTurnCompletedStructurally(event.payload);
2441
+ if (!completed) return [];
2230
2442
  return [{
2231
2443
  ...runtimeEventBase(event, canonicalThreadId),
2232
2444
  type: "turn.completed",
2233
2445
  payload: {
2234
- state: toTurnStatus(payload.turn.status),
2235
- ...errorMessage ? { errorMessage } : {}
2446
+ state: completed.status,
2447
+ ...completed.errorMessage ? { errorMessage: completed.errorMessage } : {}
2236
2448
  }
2237
2449
  }];
2238
2450
  }
@@ -2642,6 +2854,7 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2642
2854
  authorization: agentControlLease.value.credential,
2643
2855
  instructions: CODEX_AGENT_CONTROL_INSTRUCTIONS
2644
2856
  } : void 0;
2857
+ const startServiceTier = input.modelSelection?.instanceId === boundInstanceId ? codexServiceTierForSelection(input.modelSelection) : void 0;
2645
2858
  const runtimeInput = {
2646
2859
  threadId: input.threadId,
2647
2860
  providerInstanceId: boundInstanceId,
@@ -2656,7 +2869,7 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2656
2869
  runtimeMode: input.runtimeMode,
2657
2870
  tokenMode,
2658
2871
  ...input.modelSelection?.instanceId === boundInstanceId ? { model: input.modelSelection.model } : {},
2659
- ...input.modelSelection?.instanceId === boundInstanceId && getModelSelectionBooleanOptionValue(input.modelSelection, "fastMode") === true ? { serviceTier: "fast" } : {}
2872
+ ...startServiceTier ? { serviceTier: startServiceTier } : {}
2660
2873
  };
2661
2874
  const agentControl = Option.getOrUndefined(agentControlLease);
2662
2875
  const sessionScope = yield* Scope.make("sequential");
@@ -2674,9 +2887,10 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2674
2887
  const current = sessions.get(input.threadId);
2675
2888
  if (current?.runtime === runtime) yield* stopSessionInternal(current);
2676
2889
  });
2890
+ const usageLimits = makeCodexUsageLimitTracker();
2677
2891
  const eventFiber = yield* Stream.runForEach(runtime.events, (event) => Effect.gen(function* () {
2678
2892
  yield* writeNativeEvent(event);
2679
- const runtimeEvents = mapToRuntimeEvents(event, event.threadId).map((runtimeEvent) => stampRuntimeEvent(runtimeEvent, {
2893
+ const runtimeEvents = usageLimits.annotate(event, mapToRuntimeEvents(event, event.threadId), yield* Clock.currentTimeMillis).map((runtimeEvent) => stampRuntimeEvent(runtimeEvent, {
2680
2894
  providerInstanceId: boundInstanceId,
2681
2895
  runtimeSessionId
2682
2896
  }));
@@ -2849,14 +3063,14 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2849
3063
  const codexAttachments = yield* Effect.forEach(native, (attachment) => toCodexAttachment(attachment, "turn/start"), { concurrency: 1 });
2850
3064
  const session = yield* requireSession(input.threadId);
2851
3065
  const reasoningEffort = input.modelSelection?.instanceId === boundInstanceId ? getModelSelectionStringOptionValue(input.modelSelection, "reasoningEffort") : void 0;
2852
- const fastMode = input.modelSelection?.instanceId === boundInstanceId ? getModelSelectionBooleanOptionValue(input.modelSelection, "fastMode") : void 0;
3066
+ const serviceTier = input.modelSelection?.instanceId === boundInstanceId ? codexServiceTierForSelection(input.modelSelection) : void 0;
2853
3067
  const formatted = formatSourceControlContextsForAgent(input.sourceControlContexts ?? []);
2854
3068
  const codexInput = appendAttachmentPathLines(formatted ? formatted + "\n\n" + (input.input ?? "") : input.input, pathLines);
2855
3069
  const result = yield* session.runtime.sendTurn({
2856
3070
  ...codexInput !== void 0 ? { input: codexInput } : {},
2857
3071
  ...input.modelSelection?.instanceId === boundInstanceId ? { model: input.modelSelection.model } : {},
2858
3072
  ...reasoningEffort ? { effort: reasoningEffort } : {},
2859
- ...fastMode === true ? { serviceTier: "fast" } : {},
3073
+ ...serviceTier ? { serviceTier } : {},
2860
3074
  ...input.interactionMode !== void 0 ? { interactionMode: input.interactionMode } : {},
2861
3075
  ...input.customSystemPrompt !== void 0 ? { customSystemPrompt: input.customSystemPrompt } : {},
2862
3076
  ...codexAttachments.length > 0 ? { attachments: codexAttachments } : {}
@@ -2878,7 +3092,17 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2878
3092
  messageId: input.messageId,
2879
3093
  ...steerInput !== void 0 ? { input: steerInput } : {},
2880
3094
  ...codexAttachments.length > 0 ? { attachments: codexAttachments } : {}
2881
- }).pipe(Effect.mapError((cause) => mapCodexRuntimeError(input.threadId, "turn/steer", cause)));
3095
+ }).pipe(Effect.mapError((cause) => mapCodexRuntimeError(input.threadId, "turn/steer", cause)), Effect.catchTag("ProviderAdapterRequestError", (error) => Effect.gen(function* () {
3096
+ if ((yield* session.runtime.getSession).activeTurnId === input.expectedTurnId) return yield* error;
3097
+ return yield* new ProviderTurnNotSteerableError({
3098
+ provider: PROVIDER,
3099
+ threadId: input.threadId,
3100
+ turnId: input.expectedTurnId,
3101
+ reason: "turn-ended",
3102
+ detail: "The turn finished before this message could be steered. It stays queued and is sent next.",
3103
+ cause: error
3104
+ });
3105
+ })));
2882
3106
  });
2883
3107
  const requireSession = Effect.fn("requireSession")(function* (threadId) {
2884
3108
  const session = sessions.get(threadId);
@@ -2981,13 +3205,17 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
2981
3205
  failedTurnIds
2982
3206
  };
2983
3207
  });
2984
- const rollbackThread = (threadId, numTurns) => {
3208
+ const rollbackThread = (threadId, input) => {
3209
+ const numTurns = input.numTurns;
2985
3210
  if (!Number.isInteger(numTurns) || numTurns < 1) return Effect.fail(new ProviderAdapterValidationError({
2986
3211
  provider: PROVIDER,
2987
3212
  operation: "rollbackThread",
2988
3213
  issue: "numTurns must be an integer >= 1."
2989
3214
  }));
2990
- return requireSession(threadId).pipe(Effect.flatMap((session) => session.runtime.rollbackThread(numTurns)), Effect.mapError((cause) => cause._tag === "ProviderAdapterSessionNotFoundError" ? cause : mapCodexRuntimeError(threadId, "thread/rollback", cause)), Effect.map((snapshot) => ({
3215
+ return requireSession(threadId).pipe(Effect.flatMap((session) => session.runtime.rollbackThread({
3216
+ numTurns,
3217
+ beforeTurnId: input.droppedTurnIds[0]
3218
+ })), Effect.mapError((cause) => cause._tag === "ProviderAdapterSessionNotFoundError" ? cause : mapCodexRuntimeError(threadId, "thread/rollback", cause)), Effect.map((snapshot) => ({
2991
3219
  threadId,
2992
3220
  turns: snapshot.turns
2993
3221
  })));
@@ -3043,7 +3271,9 @@ const makeCodexAdapter = Effect.fn("makeCodexAdapter")(function* (codexConfig, o
3043
3271
  provider: PROVIDER,
3044
3272
  capabilities: {
3045
3273
  sessionModelSwitch: "in-session",
3046
- turnSteering: "native"
3274
+ turnSteering: "native",
3275
+ conversationRollback: "native",
3276
+ resumeSurvivesCwdChange: true
3047
3277
  },
3048
3278
  startSession,
3049
3279
  sendTurn,
@@ -1,10 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- import { Dt as ServerConfig, Rt as getModelSelectionBooleanOptionValue, at as expandHomePath, zt as getModelSelectionStringOptionValue } from "./Metrics-CnmjpbWk.mjs";
4
- import { Dr as TextGenerationError } from "./src-CtsgPPhb.mjs";
5
- import { m as sanitizeFeatureBranchName, p as sanitizeBranchFragment } from "./git-9xWsJYIH.mjs";
6
- import { Cr as sanitizePrTitle, Sr as sanitizeCommitSubject, Tr as toJsonSchemaObject, _r as buildSideQuestionPrompt, ct as resolveAttachmentPath, dr as validateRankInboxThreadsResult, fr as buildBranchNamePrompt, gr as buildPrContentPrompt, hr as buildIssueContentTitlePrompt, mr as buildIssueContentPolishPrompt, pr as buildCommitMessagePrompt, vr as buildThreadPriorityPrompt, wr as sanitizeThreadTitle, xr as normalizeCliError, yr as buildThreadTitlePrompt } from "./bin.mjs";
7
- import { n as sideQuestionEnvironment, t as sideQuestionDirectory } from "./SideQuestionIsolation-B-aE6aBz.mjs";
3
+ import { Kt as getModelSelectionStringOptionValue, Nt as ServerConfig, ot as expandHomePath } from "./Metrics-C3vLS9rz.mjs";
4
+ import { ei as TextGenerationError } from "./src-VTj60bUm.mjs";
5
+ import { Ci as sanitizeFeatureBranchName, Ct as codexServiceTierForSelection, Si as sanitizeBranchFragment, _i as normalizeCliError, bi as sanitizeThreadTitle, ci as buildBranchNamePrompt, di as buildIssueContentTitlePrompt, er as resolveAttachmentPath, fi as buildPrContentPrompt, hi as buildThreadTitlePrompt, li as buildCommitMessagePrompt, mi as buildThreadPriorityPrompt, pi as buildSideQuestionPrompt, si as validateRankInboxThreadsResult, ui as buildIssueContentPolishPrompt, vi as sanitizeCommitSubject, xi as toJsonSchemaObject, yi as sanitizePrTitle } from "./bin.mjs";
6
+ import { n as sideQuestionEnvironment, t as sideQuestionDirectory } from "./SideQuestionIsolation-B1T-DsR0.mjs";
8
7
  import { Effect, FileSystem, Option, Path, Schema, Stream } from "effect";
9
8
  import { ChildProcess, ChildProcessSpawner } from "effect/unstable/process";
10
9
  //#region src/textGeneration/CodexTextGeneration.ts
@@ -52,6 +51,7 @@ const makeCodexTextGeneration = Effect.fn("makeCodexTextGeneration")(function* (
52
51
  const outputPath = yield* writeTempFile(operation, "codex-output", "");
53
52
  const runCodexCommand = Effect.fn("runCodexJson.runCodexCommand")(function* () {
54
53
  const reasoningEffort = getModelSelectionStringOptionValue(modelSelection, "reasoningEffort") ?? CODEX_GIT_TEXT_GENERATION_REASONING_EFFORT;
54
+ const serviceTier = codexServiceTierForSelection(modelSelection);
55
55
  const command = ChildProcess.make(codexConfig.binaryPath || "codex", [
56
56
  "exec",
57
57
  "--ephemeral",
@@ -89,7 +89,7 @@ const makeCodexTextGeneration = Effect.fn("makeCodexTextGeneration")(function* (
89
89
  modelSelection.model,
90
90
  "--config",
91
91
  `model_reasoning_effort="${reasoningEffort}"`,
92
- ...getModelSelectionBooleanOptionValue(modelSelection, "fastMode") === true ? ["--config", `service_tier="fast"`] : [],
92
+ ...serviceTier ? ["--config", `service_tier="${serviceTier}"`] : [],
93
93
  "--output-schema",
94
94
  schemaPath,
95
95
  "--output-last-message",
@@ -1,10 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- const require_Metrics = require("./Metrics-C0LSU8s7.cjs");
4
- const require_src = require("./src-CARHuYkT.cjs");
5
- const require_git = require("./git-xIkXFy_l.cjs");
3
+ const require_Metrics = require("./Metrics-DjRPLE98.cjs");
4
+ const require_src = require("./src-FmeCeBJ9.cjs");
6
5
  const require_bin = require("./bin.cjs");
7
- const require_SideQuestionIsolation = require("./SideQuestionIsolation-CtJ4wX83.cjs");
6
+ const require_SideQuestionIsolation = require("./SideQuestionIsolation-BPC-Bxsz.cjs");
8
7
  let effect = require("effect");
9
8
  let effect_unstable_process = require("effect/unstable/process");
10
9
  //#region src/textGeneration/CodexTextGeneration.ts
@@ -52,6 +51,7 @@ const makeCodexTextGeneration = effect.Effect.fn("makeCodexTextGeneration")(func
52
51
  const outputPath = yield* writeTempFile(operation, "codex-output", "");
53
52
  const runCodexCommand = effect.Effect.fn("runCodexJson.runCodexCommand")(function* () {
54
53
  const reasoningEffort = require_Metrics.getModelSelectionStringOptionValue(modelSelection, "reasoningEffort") ?? CODEX_GIT_TEXT_GENERATION_REASONING_EFFORT;
54
+ const serviceTier = require_bin.codexServiceTierForSelection(modelSelection);
55
55
  const command = effect_unstable_process.ChildProcess.make(codexConfig.binaryPath || "codex", [
56
56
  "exec",
57
57
  "--ephemeral",
@@ -89,7 +89,7 @@ const makeCodexTextGeneration = effect.Effect.fn("makeCodexTextGeneration")(func
89
89
  modelSelection.model,
90
90
  "--config",
91
91
  `model_reasoning_effort="${reasoningEffort}"`,
92
- ...require_Metrics.getModelSelectionBooleanOptionValue(modelSelection, "fastMode") === true ? ["--config", `service_tier="fast"`] : [],
92
+ ...serviceTier ? ["--config", `service_tier="${serviceTier}"`] : [],
93
93
  "--output-schema",
94
94
  schemaPath,
95
95
  "--output-last-message",
@@ -162,7 +162,7 @@ const makeCodexTextGeneration = effect.Effect.fn("makeCodexTextGeneration")(func
162
162
  return {
163
163
  subject: require_bin.sanitizeCommitSubject(generated.subject),
164
164
  body: generated.body.trim(),
165
- ..."branch" in generated && typeof generated.branch === "string" ? { branch: require_git.sanitizeFeatureBranchName(generated.branch) } : {}
165
+ ..."branch" in generated && typeof generated.branch === "string" ? { branch: require_bin.sanitizeFeatureBranchName(generated.branch) } : {}
166
166
  };
167
167
  });
168
168
  const generatePrContent = effect.Effect.fn("CodexTextGeneration.generatePrContent")(function* (input) {
@@ -199,7 +199,7 @@ const makeCodexTextGeneration = effect.Effect.fn("makeCodexTextGeneration")(func
199
199
  imagePaths,
200
200
  modelSelection: input.modelSelection
201
201
  });
202
- return { branch: require_git.sanitizeBranchFragment(generated.branch) };
202
+ return { branch: require_bin.sanitizeBranchFragment(generated.branch) };
203
203
  });
204
204
  const generateThreadTitle = effect.Effect.fn("CodexTextGeneration.generateThreadTitle")(function* (input) {
205
205
  const { imagePaths } = yield* materializeImageAttachments("generateThreadTitle", input.attachments);