@cursor/bdk 0.2.4 → 0.2.6

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 (348) hide show
  1. package/README.md +76 -1154
  2. package/dist/bin/agent-serve.js +17 -11
  3. package/dist/channels/github/github-channel.d.ts +4 -4
  4. package/dist/channels/github/github-channel.js +5 -5
  5. package/dist/channels/slack/eval-directive.js +1 -1
  6. package/dist/docs/404.html +2 -2
  7. package/dist/docs/assets/{app.4kQ8Db_q.js → app.CJLKDVza.js} +4 -4
  8. package/dist/docs/assets/{building-with-agents.md.-fcjCmJU.js → building-with-agents.md.BPjPFxFg.js} +2 -2
  9. package/dist/docs/assets/{building-with-agents.md.-fcjCmJU.lean.js → building-with-agents.md.BPjPFxFg.lean.js} +1 -1
  10. package/dist/docs/assets/chunks/@localSearchIndexroot.Bq-pxRXm.js +1 -0
  11. package/dist/docs/assets/chunks/{VPLocalSearchBox.DY1RwB8Q.js → VPLocalSearchBox.BW9mrQmq.js} +1 -1
  12. package/dist/docs/assets/chunks/{arc.CxE_fSPK.js → arc.D8ZOvM1m.js} +1 -1
  13. package/dist/docs/assets/chunks/{architectureDiagram-Q4EWVU46.CPX426ui.js → architectureDiagram-Q4EWVU46.CXEKhLW-.js} +1 -1
  14. package/dist/docs/assets/chunks/{baseUniq.CB52JrKG.js → baseUniq.BJkVKblr.js} +1 -1
  15. package/dist/docs/assets/chunks/{blockDiagram-DXYQGD6D.J0cNaQCL.js → blockDiagram-DXYQGD6D.DQDbHxor.js} +1 -1
  16. package/dist/docs/assets/chunks/{c4Diagram-AHTNJAMY.DJn3vEGT.js → c4Diagram-AHTNJAMY.ByMD6LYM.js} +1 -1
  17. package/dist/docs/assets/chunks/channel.DCU8W1RP.js +1 -0
  18. package/dist/docs/assets/chunks/{chunk-4BX2VUAB.Dao618F6.js → chunk-4BX2VUAB.Dtq1aVI9.js} +1 -1
  19. package/dist/docs/assets/chunks/{chunk-4TB4RGXK.QW8Rhjai.js → chunk-4TB4RGXK.BL_XrkoQ.js} +1 -1
  20. package/dist/docs/assets/chunks/{chunk-55IACEB6.DfRLLKF_.js → chunk-55IACEB6.BDPXu94_.js} +1 -1
  21. package/dist/docs/assets/chunks/{chunk-EDXVE4YY.CIV2ApKQ.js → chunk-EDXVE4YY.DhGOQj4k.js} +1 -1
  22. package/dist/docs/assets/chunks/{chunk-FMBD7UC4.BEheSuxp.js → chunk-FMBD7UC4.DSF5nr8v.js} +1 -1
  23. package/dist/docs/assets/chunks/{chunk-OYMX7WX6.CUN88ENB.js → chunk-OYMX7WX6.Day7wayw.js} +1 -1
  24. package/dist/docs/assets/chunks/{chunk-QZHKN3VN.CgqCs8b_.js → chunk-QZHKN3VN.CpBEC0zA.js} +1 -1
  25. package/dist/docs/assets/chunks/{chunk-YZCP3GAM.iCH0nnTJ.js → chunk-YZCP3GAM.X_7rY1rx.js} +1 -1
  26. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.DwpXsM06.js +1 -0
  27. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.DwpXsM06.js +1 -0
  28. package/dist/docs/assets/chunks/clone.DH6Mx2zB.js +1 -0
  29. package/dist/docs/assets/chunks/{cose-bilkent-S5V4N54A.BLcUxhWE.js → cose-bilkent-S5V4N54A.BVRmi2ko.js} +1 -1
  30. package/dist/docs/assets/chunks/{dagre-KV5264BT.Ep7LofOm.js → dagre-KV5264BT.Dei9oslB.js} +1 -1
  31. package/dist/docs/assets/chunks/{diagram-5BDNPKRD.Bzf4GSQ4.js → diagram-5BDNPKRD._M-efGt7.js} +1 -1
  32. package/dist/docs/assets/chunks/{diagram-G4DWMVQ6.DD6Jh-eM.js → diagram-G4DWMVQ6.D1Vmhfsj.js} +1 -1
  33. package/dist/docs/assets/chunks/{diagram-MMDJMWI5.oOIl8bWd.js → diagram-MMDJMWI5.cE1bmvAC.js} +1 -1
  34. package/dist/docs/assets/chunks/{diagram-TYMM5635.DHs85Ade.js → diagram-TYMM5635.DkXAfznP.js} +1 -1
  35. package/dist/docs/assets/chunks/{erDiagram-SMLLAGMA.BIb5ghCk.js → erDiagram-SMLLAGMA.DH_pSwPg.js} +1 -1
  36. package/dist/docs/assets/chunks/{flowDiagram-DWJPFMVM.DV4paY9k.js → flowDiagram-DWJPFMVM.kAWVN9j1.js} +1 -1
  37. package/dist/docs/assets/chunks/{ganttDiagram-T4ZO3ILL.AyEKA6_v.js → ganttDiagram-T4ZO3ILL.8r0w49-p.js} +1 -1
  38. package/dist/docs/assets/chunks/{gitGraphDiagram-UUTBAWPF.BltiCDFo.js → gitGraphDiagram-UUTBAWPF.BDa7Bi1i.js} +1 -1
  39. package/dist/docs/assets/chunks/{graph.DzuEYGdC.js → graph.BMPXHz_B.js} +1 -1
  40. package/dist/docs/assets/chunks/{infoDiagram-42DDH7IO.BV2l981J.js → infoDiagram-42DDH7IO.BmlcqewS.js} +1 -1
  41. package/dist/docs/assets/chunks/{ishikawaDiagram-UXIWVN3A.BA4Izf-m.js → ishikawaDiagram-UXIWVN3A.CVSEQSul.js} +1 -1
  42. package/dist/docs/assets/chunks/{journeyDiagram-VCZTEJTY.DjaFbFS3.js → journeyDiagram-VCZTEJTY.BpeWJ5n-.js} +1 -1
  43. package/dist/docs/assets/chunks/{kanban-definition-6JOO6SKY.CfTFieDs.js → kanban-definition-6JOO6SKY.DHbDXuxB.js} +1 -1
  44. package/dist/docs/assets/chunks/{layout.DzfWqTBV.js → layout.CzrCDgkP.js} +1 -1
  45. package/dist/docs/assets/chunks/{linear.BO6mpulV.js → linear.HwBsflwN.js} +1 -1
  46. package/dist/docs/assets/chunks/{min.BGgTadgT.js → min.DqGHolT3.js} +1 -1
  47. package/dist/docs/assets/chunks/{mindmap-definition-QFDTVHPH.DPuIXVWY.js → mindmap-definition-QFDTVHPH.ZYGlOawh.js} +1 -1
  48. package/dist/docs/assets/chunks/{pieDiagram-DEJITSTG.BOnl3bBg.js → pieDiagram-DEJITSTG.C2KRXlNR.js} +1 -1
  49. package/dist/docs/assets/chunks/{quadrantDiagram-34T5L4WZ.DNB6Ckdc.js → quadrantDiagram-34T5L4WZ.CHj3Qefp.js} +1 -1
  50. package/dist/docs/assets/chunks/{requirementDiagram-MS252O5E.D5-Qo7vb.js → requirementDiagram-MS252O5E.B1L4Tf7k.js} +1 -1
  51. package/dist/docs/assets/chunks/{sankeyDiagram-XADWPNL6.8t65cesf.js → sankeyDiagram-XADWPNL6.dNR2yi1B.js} +1 -1
  52. package/dist/docs/assets/chunks/{sequenceDiagram-FGHM5R23.CaG07BdS.js → sequenceDiagram-FGHM5R23.BrvQ3C6m.js} +1 -1
  53. package/dist/docs/assets/chunks/{stateDiagram-FHFEXIEX.TKOweTB6.js → stateDiagram-FHFEXIEX.BtehEykA.js} +1 -1
  54. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.kzD0-U89.js +1 -0
  55. package/dist/docs/assets/chunks/{theme.Dx-JhpTB.js → theme.BDHBZUkP.js} +2 -2
  56. package/dist/docs/assets/chunks/{timeline-definition-GMOUNBTQ.fE53zQ2s.js → timeline-definition-GMOUNBTQ.Bn7nhqEN.js} +1 -1
  57. package/dist/docs/assets/chunks/{vennDiagram-DHZGUBPP.DJsZZaJg.js → vennDiagram-DHZGUBPP.DKhc38sz.js} +1 -1
  58. package/dist/docs/assets/chunks/wardley-RL74JXVD.DOXQ0w8J.js +162 -0
  59. package/dist/docs/assets/chunks/{wardleyDiagram-NUSXRM2D.CMZ-Ru_t.js → wardleyDiagram-NUSXRM2D.Bbq5B2Ic.js} +1 -1
  60. package/dist/docs/assets/chunks/{xychartDiagram-5P7HB3ND.XXrhBc7a.js → xychartDiagram-5P7HB3ND.B77HE1K8.js} +1 -1
  61. package/dist/docs/assets/{deployment.md.UhnJIMr-.js → deployment.md.BdqTiGdc.js} +4 -4
  62. package/dist/docs/assets/{deployment.md.UhnJIMr-.lean.js → deployment.md.BdqTiGdc.lean.js} +1 -1
  63. package/dist/docs/assets/{evals.md.CCAtNcuL.js → evals.md.C851kViu.js} +3 -3
  64. package/dist/docs/assets/{evals.md.CCAtNcuL.lean.js → evals.md.C851kViu.lean.js} +1 -1
  65. package/dist/docs/assets/{guides_agent-to-agent.md.CGkicXeB.js → guides_agent-to-agent.md.Cps5NiCV.js} +2 -2
  66. package/dist/docs/assets/{guides_agent-to-agent.md.CGkicXeB.lean.js → guides_agent-to-agent.md.Cps5NiCV.lean.js} +1 -1
  67. package/dist/docs/assets/{guides_bitbucket.md.Cb3LPKt3.js → guides_bitbucket.md.BB6fqD-M.js} +2 -2
  68. package/dist/docs/assets/{guides_bitbucket.md.Cb3LPKt3.lean.js → guides_bitbucket.md.BB6fqD-M.lean.js} +1 -1
  69. package/dist/docs/assets/{guides_cloud-agents.md.BuEkDCwo.js → guides_cloud-agents.md.CWJjS9No.js} +2 -2
  70. package/dist/docs/assets/{guides_cloud-agents.md.BuEkDCwo.lean.js → guides_cloud-agents.md.CWJjS9No.lean.js} +1 -1
  71. package/dist/docs/assets/{guides_convert-automation.md.Ci-Y2iD5.js → guides_convert-automation.md.DMEX9nF-.js} +3 -3
  72. package/dist/docs/assets/{guides_convert-automation.md.Ci-Y2iD5.lean.js → guides_convert-automation.md.DMEX9nF-.lean.js} +1 -1
  73. package/dist/docs/assets/{guides_github.md.Bq9kQU9B.js → guides_github.md.Cr1Xlf-m.js} +3 -3
  74. package/dist/docs/assets/{guides_github.md.Bq9kQU9B.lean.js → guides_github.md.Cr1Xlf-m.lean.js} +1 -1
  75. package/dist/docs/assets/{guides_gitlab.md.BM27P43u.js → guides_gitlab.md.CMpmFi4M.js} +2 -2
  76. package/dist/docs/assets/{guides_gitlab.md.BM27P43u.lean.js → guides_gitlab.md.CMpmFi4M.lean.js} +1 -1
  77. package/dist/docs/assets/{guides_grokbot-agents.md.yxVbSlKA.js → guides_grokbot-agents.md.tD1smFhU.js} +2 -2
  78. package/dist/docs/assets/{guides_grokbot-agents.md.yxVbSlKA.lean.js → guides_grokbot-agents.md.tD1smFhU.lean.js} +1 -1
  79. package/dist/docs/assets/{guides_hooks.md.BWoiNaMq.js → guides_hooks.md.5Ce3NXxZ.js} +2 -2
  80. package/dist/docs/assets/{guides_hooks.md.BWoiNaMq.lean.js → guides_hooks.md.5Ce3NXxZ.lean.js} +1 -1
  81. package/dist/docs/assets/{guides_improve.md.COtL-6ft.js → guides_improve.md.CRrYq22s.js} +2 -2
  82. package/dist/docs/assets/{guides_improve.md.COtL-6ft.lean.js → guides_improve.md.CRrYq22s.lean.js} +1 -1
  83. package/dist/docs/assets/{guides_jev.md.CRcgmjDb.js → guides_jev.md.D7XH4JH3.js} +2 -2
  84. package/dist/docs/assets/{guides_jev.md.CRcgmjDb.lean.js → guides_jev.md.D7XH4JH3.lean.js} +1 -1
  85. package/dist/docs/assets/{guides_mcp-oauth.md.Cu6mhZ_3.js → guides_mcp-oauth.md.DR3zhC9r.js} +2 -2
  86. package/dist/docs/assets/{guides_mcp-oauth.md.Cu6mhZ_3.lean.js → guides_mcp-oauth.md.DR3zhC9r.lean.js} +1 -1
  87. package/dist/docs/assets/{guides_opentelemetry.md.DLlIB5rv.js → guides_opentelemetry.md.jcPNrQbH.js} +8 -6
  88. package/dist/docs/assets/{guides_opentelemetry.md.DLlIB5rv.lean.js → guides_opentelemetry.md.jcPNrQbH.lean.js} +1 -1
  89. package/dist/docs/assets/{guides_slack.md.diqqXTTm.js → guides_slack.md.Bn-WupSE.js} +8 -8
  90. package/dist/docs/assets/{guides_slack.md.diqqXTTm.lean.js → guides_slack.md.Bn-WupSE.lean.js} +1 -1
  91. package/dist/docs/assets/{guides_webhooks.md.D0furjw0.js → guides_webhooks.md.BBvAm_VF.js} +2 -2
  92. package/dist/docs/assets/{guides_webhooks.md.D0furjw0.lean.js → guides_webhooks.md.BBvAm_VF.lean.js} +1 -1
  93. package/dist/docs/assets/{hillclimbing.md.Biy0m-Qb.js → hillclimbing.md.Dxvd-0gT.js} +2 -2
  94. package/dist/docs/assets/{hillclimbing.md.Biy0m-Qb.lean.js → hillclimbing.md.Dxvd-0gT.lean.js} +1 -1
  95. package/dist/docs/assets/index.md.Dxxr7pFa.js +27 -0
  96. package/dist/docs/assets/{index.md.CVc_oOA3.lean.js → index.md.Dxxr7pFa.lean.js} +1 -1
  97. package/dist/docs/assets/{quickstart.md.CHpHPBUN.js → quickstart.md.BK5gjHM2.js} +2 -2
  98. package/dist/docs/assets/{quickstart.md.CHpHPBUN.lean.js → quickstart.md.BK5gjHM2.lean.js} +1 -1
  99. package/dist/docs/assets/{reference_agent-config.md.Cj5uBKp4.js → reference_agent-config.md.DrtLxWgR.js} +4 -4
  100. package/dist/docs/assets/{reference_agent-config.md.Cj5uBKp4.lean.js → reference_agent-config.md.DrtLxWgR.lean.js} +1 -1
  101. package/dist/docs/assets/{reference_artifacts.md.CQfKq8F2.js → reference_artifacts.md.DLV9MZES.js} +2 -2
  102. package/dist/docs/assets/{reference_artifacts.md.CQfKq8F2.lean.js → reference_artifacts.md.DLV9MZES.lean.js} +1 -1
  103. package/dist/docs/assets/{reference_channels.md.mbNtKCiR.js → reference_channels.md.LbNIJBwd.js} +2 -2
  104. package/dist/docs/assets/{reference_channels.md.mbNtKCiR.lean.js → reference_channels.md.LbNIJBwd.lean.js} +1 -1
  105. package/dist/docs/assets/{reference_cli.md.DgeLTO18.js → reference_cli.md.BsgDqYPh.js} +4 -4
  106. package/dist/docs/assets/{reference_cli.md.DgeLTO18.lean.js → reference_cli.md.BsgDqYPh.lean.js} +1 -1
  107. package/dist/docs/assets/{reference_connections.md.COq--gAm.js → reference_connections.md.Bljpve-y.js} +4 -4
  108. package/dist/docs/assets/{reference_connections.md.COq--gAm.lean.js → reference_connections.md.Bljpve-y.lean.js} +1 -1
  109. package/dist/docs/assets/{reference_evals.md.CJm3uCUm.js → reference_evals.md.D5i8PuXJ.js} +2 -2
  110. package/dist/docs/assets/{reference_evals.md.CJm3uCUm.lean.js → reference_evals.md.D5i8PuXJ.lean.js} +1 -1
  111. package/dist/docs/assets/{reference_extensions.md.pa2tN-e4.js → reference_extensions.md.OUacPetl.js} +3 -3
  112. package/dist/docs/assets/{reference_extensions.md.pa2tN-e4.lean.js → reference_extensions.md.OUacPetl.lean.js} +1 -1
  113. package/dist/docs/assets/{reference_hooks.md.DbthhtIR.js → reference_hooks.md.C5LCJ1R3.js} +2 -2
  114. package/dist/docs/assets/{reference_hooks.md.DbthhtIR.lean.js → reference_hooks.md.C5LCJ1R3.lean.js} +1 -1
  115. package/dist/docs/assets/{reference_http-api.md.BZOvhCqY.js → reference_http-api.md.DbFNOubV.js} +1 -1
  116. package/dist/docs/assets/{reference_instructions.md.Bdwscs4G.js → reference_instructions.md.DrcHZXig.js} +2 -2
  117. package/dist/docs/assets/{reference_instructions.md.Bdwscs4G.lean.js → reference_instructions.md.DrcHZXig.lean.js} +1 -1
  118. package/dist/docs/assets/reference_playground.md.1hx0gcIu.js +1 -0
  119. package/dist/docs/assets/{reference_playground.md.BdQzRJc2.lean.js → reference_playground.md.1hx0gcIu.lean.js} +1 -1
  120. package/dist/docs/assets/{reference_project-layout.md.CpLQ9j4K.js → reference_project-layout.md.C2JMRh7p.js} +2 -2
  121. package/dist/docs/assets/{reference_prompt.md.BQZB4eaV.js → reference_prompt.md.DqPh71XN.js} +3 -3
  122. package/dist/docs/assets/{reference_prompt.md.BQZB4eaV.lean.js → reference_prompt.md.DqPh71XN.lean.js} +1 -1
  123. package/dist/docs/assets/{reference_schedules.md.BVU5EFbz.js → reference_schedules.md.BuJ8fgMa.js} +2 -2
  124. package/dist/docs/assets/{reference_schedules.md.BVU5EFbz.lean.js → reference_schedules.md.BuJ8fgMa.lean.js} +1 -1
  125. package/dist/docs/assets/reference_sessions.md.CM5zo3w4.js +1 -0
  126. package/dist/docs/assets/{reference_sessions.md.DeRUItHD.lean.js → reference_sessions.md.CM5zo3w4.lean.js} +1 -1
  127. package/dist/docs/assets/{reference_skills.md.Cy00QMKS.js → reference_skills.md.ClkMoQsV.js} +2 -2
  128. package/dist/docs/assets/{reference_skills.md.Cy00QMKS.lean.js → reference_skills.md.ClkMoQsV.lean.js} +1 -1
  129. package/dist/docs/assets/{reference_subagents.md.B8oyeXOI.js → reference_subagents.md.gmPt5J-M.js} +2 -2
  130. package/dist/docs/assets/{reference_subagents.md.B8oyeXOI.lean.js → reference_subagents.md.gmPt5J-M.lean.js} +1 -1
  131. package/dist/docs/assets/{reference_tools.md.hg2Wi5Bq.js → reference_tools.md.v3SXVSs_.js} +2 -2
  132. package/dist/docs/assets/{reference_tools.md.hg2Wi5Bq.lean.js → reference_tools.md.v3SXVSs_.lean.js} +1 -1
  133. package/dist/docs/assets/{templates_agentic-owners.md.BykUiZ8j.js → templates_agentic-owners.md.CvmABtia.js} +2 -2
  134. package/dist/docs/assets/templates_grokbot-agents.md.2sydjFiO.js +5 -0
  135. package/dist/docs/assets/templates_grokbot-agents.md.2sydjFiO.lean.js +1 -0
  136. package/dist/docs/assets/{templates_security-reviewer.md.DXMmKl_o.js → templates_security-reviewer.md.Gh6EF9Us.js} +3 -2
  137. package/dist/docs/assets/{templates_security-reviewer.md.DXMmKl_o.lean.js → templates_security-reviewer.md.Gh6EF9Us.lean.js} +1 -1
  138. package/dist/docs/assets/{templates_thermo-quality-review.md.Dg1p1MsG.js → templates_thermo-quality-review.md.B77UyTrX.js} +2 -2
  139. package/dist/docs/assets/{templates_thermo-quality-review.md.Dg1p1MsG.lean.js → templates_thermo-quality-review.md.B77UyTrX.lean.js} +1 -1
  140. package/dist/docs/assets/{templates_thermo-review.md.Dlylkowj.js → templates_thermo-review.md.DRJ7mC5U.js} +2 -2
  141. package/dist/docs/assets/{templates_thermo-review.md.Dlylkowj.lean.js → templates_thermo-review.md.DRJ7mC5U.lean.js} +1 -1
  142. package/dist/docs/assets/templates_triage.md.CNN6b0JZ.js +9 -0
  143. package/dist/docs/assets/{templates_triage.md.CvJyx81N.lean.js → templates_triage.md.CNN6b0JZ.lean.js} +1 -1
  144. package/dist/docs/assets/troubleshooting.md.Bscj6ODe.js +1 -0
  145. package/dist/docs/assets/{troubleshooting.md.Cw5PKa3t.lean.js → troubleshooting.md.Bscj6ODe.lean.js} +1 -1
  146. package/dist/docs/building-with-agents.html +36 -36
  147. package/dist/docs/building-with-agents.md +0 -3
  148. package/dist/docs/deployment.html +38 -38
  149. package/dist/docs/deployment.md +2 -9
  150. package/dist/docs/evals.html +37 -37
  151. package/dist/docs/evals.md +2 -5
  152. package/dist/docs/guides/agent-to-agent.html +36 -36
  153. package/dist/docs/guides/agent-to-agent.md +0 -3
  154. package/dist/docs/guides/bitbucket.html +36 -36
  155. package/dist/docs/guides/bitbucket.md +0 -3
  156. package/dist/docs/guides/cloud-agents.html +36 -36
  157. package/dist/docs/guides/cloud-agents.md +0 -4
  158. package/dist/docs/guides/convert-automation.html +37 -37
  159. package/dist/docs/guides/convert-automation.md +2 -5
  160. package/dist/docs/guides/github.html +37 -37
  161. package/dist/docs/guides/github.md +1 -4
  162. package/dist/docs/guides/gitlab.html +36 -36
  163. package/dist/docs/guides/gitlab.md +0 -3
  164. package/dist/docs/guides/grokbot-agents.html +37 -37
  165. package/dist/docs/guides/grokbot-agents.md +1 -4
  166. package/dist/docs/guides/hooks.html +36 -36
  167. package/dist/docs/guides/hooks.md +0 -3
  168. package/dist/docs/guides/improve.html +36 -36
  169. package/dist/docs/guides/improve.md +0 -3
  170. package/dist/docs/guides/jev.html +36 -36
  171. package/dist/docs/guides/jev.md +0 -3
  172. package/dist/docs/guides/mcp-oauth.html +37 -37
  173. package/dist/docs/guides/mcp-oauth.md +1 -4
  174. package/dist/docs/guides/opentelemetry.html +42 -40
  175. package/dist/docs/guides/opentelemetry.md +4 -5
  176. package/dist/docs/guides/slack.html +43 -43
  177. package/dist/docs/guides/slack.md +14 -24
  178. package/dist/docs/guides/webhooks.html +36 -36
  179. package/dist/docs/guides/webhooks.md +0 -3
  180. package/dist/docs/hashmap.json +1 -1
  181. package/dist/docs/hillclimbing.html +36 -36
  182. package/dist/docs/hillclimbing.md +0 -3
  183. package/dist/docs/index.html +38 -38
  184. package/dist/docs/index.md +9 -16
  185. package/dist/docs/llms-full.txt +153 -234
  186. package/dist/docs/llms.txt +1 -0
  187. package/dist/docs/quickstart.html +36 -36
  188. package/dist/docs/quickstart.md +2 -7
  189. package/dist/docs/reference/agent-config.html +38 -38
  190. package/dist/docs/reference/agent-config.md +4 -7
  191. package/dist/docs/reference/artifacts.html +36 -36
  192. package/dist/docs/reference/artifacts.md +0 -3
  193. package/dist/docs/reference/channels.html +37 -37
  194. package/dist/docs/reference/channels.md +1 -6
  195. package/dist/docs/reference/cli.html +38 -38
  196. package/dist/docs/reference/cli.md +7 -14
  197. package/dist/docs/reference/connections.html +38 -38
  198. package/dist/docs/reference/connections.md +7 -10
  199. package/dist/docs/reference/evals.html +36 -36
  200. package/dist/docs/reference/evals.md +0 -3
  201. package/dist/docs/reference/extensions.html +37 -37
  202. package/dist/docs/reference/extensions.md +2 -5
  203. package/dist/docs/reference/hooks.html +36 -36
  204. package/dist/docs/reference/hooks.md +0 -3
  205. package/dist/docs/reference/http-api.html +37 -37
  206. package/dist/docs/reference/http-api.md +1 -1
  207. package/dist/docs/reference/instructions.html +36 -36
  208. package/dist/docs/reference/instructions.md +0 -3
  209. package/dist/docs/reference/playground.html +36 -36
  210. package/dist/docs/reference/playground.md +0 -3
  211. package/dist/docs/reference/project-layout.html +37 -37
  212. package/dist/docs/reference/project-layout.md +2 -2
  213. package/dist/docs/reference/prompt.html +37 -37
  214. package/dist/docs/reference/prompt.md +0 -3
  215. package/dist/docs/reference/schedules.html +36 -36
  216. package/dist/docs/reference/schedules.md +0 -3
  217. package/dist/docs/reference/sessions.html +36 -36
  218. package/dist/docs/reference/sessions.md +0 -3
  219. package/dist/docs/reference/skills.html +36 -36
  220. package/dist/docs/reference/skills.md +0 -3
  221. package/dist/docs/reference/subagents.html +36 -36
  222. package/dist/docs/reference/subagents.md +0 -3
  223. package/dist/docs/reference/tools.html +36 -36
  224. package/dist/docs/reference/tools.md +1 -5
  225. package/dist/docs/templates/agentic-owners.html +37 -37
  226. package/dist/docs/templates/agentic-owners.md +2 -3
  227. package/dist/docs/templates/grokbot-agents.html +64 -0
  228. package/dist/docs/templates/grokbot-agents.md +55 -0
  229. package/dist/docs/templates/security-reviewer.html +38 -37
  230. package/dist/docs/templates/security-reviewer.md +7 -11
  231. package/dist/docs/templates/thermo-quality-review.html +37 -37
  232. package/dist/docs/templates/thermo-quality-review.md +5 -8
  233. package/dist/docs/templates/thermo-review.html +37 -37
  234. package/dist/docs/templates/thermo-review.md +5 -7
  235. package/dist/docs/templates/triage.html +39 -39
  236. package/dist/docs/templates/triage.md +8 -4
  237. package/dist/docs/troubleshooting.html +36 -36
  238. package/dist/docs/troubleshooting.md +3 -7
  239. package/dist/evals.d.ts +2 -2
  240. package/dist/internal/cli-ax.d.ts.map +1 -1
  241. package/dist/internal/cli-ax.js +14 -7
  242. package/dist/internal/eval-runner.js +7 -4
  243. package/dist/internal/init-interview.d.ts +0 -1
  244. package/dist/internal/init-interview.d.ts.map +1 -1
  245. package/dist/internal/init-interview.js +15 -24
  246. package/dist/internal/legacy-command-guard.d.ts +4 -1
  247. package/dist/internal/legacy-command-guard.d.ts.map +1 -1
  248. package/dist/internal/legacy-command-guard.js +11 -2
  249. package/dist/internal/platform-timers.d.ts +8 -1
  250. package/dist/internal/platform-timers.d.ts.map +1 -1
  251. package/dist/internal/platform-timers.js +10 -2
  252. package/dist/internal/reminder-control-plane-protocol.d.ts +8 -1
  253. package/dist/internal/reminder-control-plane-protocol.d.ts.map +1 -1
  254. package/dist/internal/reminder-runner.d.ts +5 -0
  255. package/dist/internal/reminder-runner.d.ts.map +1 -1
  256. package/dist/internal/reminder-runner.js +27 -1
  257. package/dist/internal/resolve-prod-target.d.ts +3 -0
  258. package/dist/internal/resolve-prod-target.d.ts.map +1 -1
  259. package/dist/internal/resolve-prod-target.js +2 -1
  260. package/dist/internal/run-client.d.ts +10 -1
  261. package/dist/internal/run-client.d.ts.map +1 -1
  262. package/dist/internal/run-client.js +152 -51
  263. package/dist/internal/server.d.ts +6 -0
  264. package/dist/internal/server.d.ts.map +1 -1
  265. package/dist/internal/server.js +20 -8
  266. package/dist/internal/session-links.d.ts.map +1 -1
  267. package/dist/internal/session-links.js +8 -7
  268. package/dist/internal/sessions-client.d.ts +1 -0
  269. package/dist/internal/sessions-client.d.ts.map +1 -1
  270. package/dist/internal/sessions-client.js +2 -0
  271. package/docs/README.md +9 -16
  272. package/docs/building-with-agents.md +0 -3
  273. package/docs/deployment.md +2 -9
  274. package/docs/evals.md +2 -5
  275. package/docs/guides/agent-to-agent.md +0 -3
  276. package/docs/guides/bitbucket.md +0 -3
  277. package/docs/guides/cloud-agents.md +0 -4
  278. package/docs/guides/convert-automation.md +2 -5
  279. package/docs/guides/github.md +1 -4
  280. package/docs/guides/gitlab.md +0 -3
  281. package/docs/guides/grokbot-agents.md +1 -4
  282. package/docs/guides/hooks.md +0 -3
  283. package/docs/guides/improve.md +0 -3
  284. package/docs/guides/jev.md +0 -3
  285. package/docs/guides/mcp-oauth.md +1 -4
  286. package/docs/guides/opentelemetry.md +4 -5
  287. package/docs/guides/slack.md +14 -24
  288. package/docs/guides/webhooks.md +0 -3
  289. package/docs/hillclimbing.md +0 -3
  290. package/docs/quickstart.md +2 -7
  291. package/docs/reference/agent-config.md +4 -7
  292. package/docs/reference/artifacts.md +0 -3
  293. package/docs/reference/channels.md +1 -6
  294. package/docs/reference/cli.md +7 -14
  295. package/docs/reference/connections.md +7 -10
  296. package/docs/reference/evals.md +0 -3
  297. package/docs/reference/extensions.md +2 -5
  298. package/docs/reference/hooks.md +0 -3
  299. package/docs/reference/http-api.md +1 -1
  300. package/docs/reference/instructions.md +0 -3
  301. package/docs/reference/playground.md +0 -3
  302. package/docs/reference/project-layout.md +2 -2
  303. package/docs/reference/prompt.md +0 -3
  304. package/docs/reference/schedules.md +0 -3
  305. package/docs/reference/sessions.md +0 -3
  306. package/docs/reference/skills.md +0 -3
  307. package/docs/reference/subagents.md +0 -3
  308. package/docs/reference/tools.md +1 -5
  309. package/docs/templates/agentic-owners.md +2 -3
  310. package/docs/templates/grokbot-agents.md +60 -0
  311. package/docs/templates/security-reviewer.md +7 -11
  312. package/docs/templates/thermo-quality-review.md +5 -8
  313. package/docs/templates/thermo-review.md +5 -7
  314. package/docs/templates/triage.md +8 -4
  315. package/docs/troubleshooting.md +3 -7
  316. package/package.json +2 -2
  317. package/templates/agentic-owners/README.md +0 -3
  318. package/templates/agents-md/README.md +4 -3
  319. package/templates/agents-md/evals/agents.eval.ts +1 -0
  320. package/templates/code-wiki/README.md +0 -3
  321. package/templates/code-wiki/bot/instructions.md +4 -4
  322. package/templates/demo/README.md +0 -3
  323. package/templates/grokbot-agents/README.md +4 -6
  324. package/templates/security-help/README.md +12 -6
  325. package/templates/security-reviewer/README.md +5 -6
  326. package/templates/security-reviewer/bot/tools/post_findings.ts +8 -8
  327. package/templates/thermo-quality-review/README.md +0 -3
  328. package/templates/thermo-quality-review/bot/tools/post_findings.ts +8 -8
  329. package/templates/thermo-review/README.md +0 -3
  330. package/templates/thermo-review/bot/tools/post_findings.ts +8 -8
  331. package/templates/triage/README.md +0 -3
  332. package/templates/triage/overlays/jira/README.md +0 -3
  333. package/templates/triage/overlays/linear/README.md +0 -3
  334. package/dist/docs/assets/chunks/@localSearchIndexroot.CvuAJ0My.js +0 -1
  335. package/dist/docs/assets/chunks/channel.BoNycAoN.js +0 -1
  336. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.C4x07Gkj.js +0 -1
  337. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.C4x07Gkj.js +0 -1
  338. package/dist/docs/assets/chunks/clone.Db22cH_-.js +0 -1
  339. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.CuqmyQc4.js +0 -1
  340. package/dist/docs/assets/chunks/wardley-RL74JXVD.844kyrjl.js +0 -162
  341. package/dist/docs/assets/index.md.CVc_oOA3.js +0 -27
  342. package/dist/docs/assets/reference_playground.md.BdQzRJc2.js +0 -1
  343. package/dist/docs/assets/reference_sessions.md.DeRUItHD.js +0 -1
  344. package/dist/docs/assets/templates_triage.md.CvJyx81N.js +0 -9
  345. package/dist/docs/assets/troubleshooting.md.Cw5PKa3t.js +0 -1
  346. /package/dist/docs/assets/{reference_http-api.md.BZOvhCqY.lean.js → reference_http-api.md.DbFNOubV.lean.js} +0 -0
  347. /package/dist/docs/assets/{reference_project-layout.md.CpLQ9j4K.lean.js → reference_project-layout.md.C2JMRh7p.lean.js} +0 -0
  348. /package/dist/docs/assets/{templates_agentic-owners.md.BykUiZ8j.lean.js → templates_agentic-owners.md.CvmABtia.lean.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"init-interview.d.ts","sourceRoot":"","sources":["../../src/internal/init-interview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-interview.d.ts","sourceRoot":"","sources":["../../src/internal/init-interview.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,OAAO,EAAE,eAAe,EAAE,CAAC;CAC5B;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOvD;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAGxF;AAED,wBAAsB,oBAAoB,CACxC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAUvC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAStE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAa1F;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC7C;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjC,MAAM,MAAM,qBAAqB,GAC7B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GACvE;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjC,4DAA4D;AAC5D,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;CACtB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBjC;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtD,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9B;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CAoC7B;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC9B,MAAM,CAiBR;AAED,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,gBAAgB,EAC1B,OAAO,GAAE;IACP,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;CAC3B,GACL,OAAO,CAAC,MAAM,CAAC,CAejB"}
@@ -94,40 +94,31 @@ export function runTemplateInit(input) {
94
94
  }
95
95
  });
96
96
  }
97
- export function parseTemplateAnswers(spec, raw) {
98
- var _a;
99
- const answers = {};
100
- for (const question of spec.questions) {
101
- if (!(question.id in raw)) {
102
- continue;
103
- }
104
- const parsed = parseQuestionValue(question, (_a = raw[question.id]) !== null && _a !== void 0 ? _a : "");
105
- if (!parsed.ok) {
106
- return parsed;
107
- }
108
- answers[question.id] = parsed.value;
109
- }
110
- return { ok: true, answers };
111
- }
112
97
  export function collectTemplateAnswers(input) {
113
98
  return __awaiter(this, void 0, void 0, function* () {
114
- var _a, _b, _c, _d;
115
- const vars = (_a = input.vars) !== null && _a !== void 0 ? _a : {};
99
+ var _a;
100
+ var _b, _c, _d;
101
+ const vars = (_b = input.vars) !== null && _b !== void 0 ? _b : {};
116
102
  const answers = {};
117
- const ask = (_b = input.ask) !== null && _b !== void 0 ? _b : promptTemplateQuestion;
118
- const out = (_c = input.out) !== null && _c !== void 0 ? _c : (text => process.stdout.write(text));
103
+ const ask = (_c = input.ask) !== null && _c !== void 0 ? _c : promptTemplateQuestion;
104
+ const out = (_d = input.out) !== null && _d !== void 0 ? _d : (text => process.stdout.write(text));
119
105
  for (const question of input.spec.questions) {
120
- if (question.id in vars) {
121
- const parsed = parseQuestionValue(question, (_d = vars[question.id]) !== null && _d !== void 0 ? _d : "");
106
+ if (question.id in vars || !input.interactive) {
107
+ const raw = ((_a = vars[question.id]) === null || _a === void 0 ? void 0 : _a.trim()) || question.default;
108
+ if (raw === undefined) {
109
+ // Skipping would scaffold the template's sample answer (e.g. owner/repo).
110
+ return {
111
+ ok: false,
112
+ error: `${question.id} is required: pass --var ${question.id}=... (${question.prompt})`,
113
+ };
114
+ }
115
+ const parsed = parseQuestionValue(question, raw);
122
116
  if (!parsed.ok) {
123
117
  return parsed;
124
118
  }
125
119
  answers[question.id] = parsed.value;
126
120
  continue;
127
121
  }
128
- if (!input.interactive) {
129
- continue;
130
- }
131
122
  for (;;) {
132
123
  const line = yield ask(question);
133
124
  const value = line.trim() === "" && question.default !== undefined ? question.default : line;
@@ -14,11 +14,14 @@ export declare function deploymentArchitecture(args: {
14
14
  }): Promise<"v1" | "v2">;
15
15
  /** `run --prod` returns a delivery; read the session after it is allocated. */
16
16
  export declare function v2HostedVerifyHint(slug?: string): string;
17
- export declare function unsupportedV2LegacyCommandError(slug: string): DeployApiError;
17
+ /** Legacy `--prod` commands whose v2 rejection names the v2 alternative. */
18
+ export type LegacyProdCommand = "eval" | "logs";
19
+ export declare function unsupportedV2LegacyCommandError(slug: string, command?: LegacyProdCommand): DeployApiError;
18
20
  export declare function isUnsupportedV2LegacyCommandError(error: unknown): error is DeployApiError;
19
21
  export declare function rejectV2ForLegacyCommand(args: {
20
22
  client: AgentServeDeployClient;
21
23
  teamId: number;
22
24
  slug: string;
25
+ command?: LegacyProdCommand;
23
26
  }): Promise<void>;
24
27
  //# sourceMappingURL=legacy-command-guard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"legacy-command-guard.d.ts","sourceRoot":"","sources":["../../src/internal/legacy-command-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGjF;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAavB;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,IAAI,SAAW,GAAG,MAAM,CAO1D;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAM5E;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAMzF;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE;IACnD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhB"}
1
+ {"version":3,"file":"legacy-command-guard.d.ts","sourceRoot":"","sources":["../../src/internal/legacy-command-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,sBAAsB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGjF;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IACjD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAavB;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,IAAI,SAAW,GAAG,MAAM,CAO1D;AAED,4EAA4E;AAC5E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,MAAM,CAAC;AAShD,wBAAgB,+BAA+B,CAC7C,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,iBAAiB,GAC1B,cAAc,CAahB;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAMzF;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE;IACnD,MAAM,EAAE,sBAAsB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,iBAAiB,CAAC;CAC7B,GAAG,OAAO,CAAC,IAAI,CAAC,CAKhB"}
@@ -41,7 +41,16 @@ export function v2HostedVerifyHint(slug = "<slug>") {
41
41
  `Poll the delivery until the session is allocated, then ` +
42
42
  `\`${CLI_COMMAND_NAME} session <ses_> --prod --slug ${slug}\`.`);
43
43
  }
44
- export function unsupportedV2LegacyCommandError(slug) {
44
+ const V2_ALTERNATIVE = {
45
+ eval: () => `Run \`${CLI_COMMAND_NAME} eval\` locally, or pass --url for a running server.`,
46
+ logs: slug => `Use \`${CLI_COMMAND_NAME} deployment ${slug}\` for rollout status and ` +
47
+ `\`${CLI_COMMAND_NAME} session <ses_> --prod --slug ${slug}\` for a session's runs and logs.`,
48
+ };
49
+ export function unsupportedV2LegacyCommandError(slug, command) {
50
+ if (command !== undefined) {
51
+ return new DeployApiError(`\`${CLI_COMMAND_NAME} ${command} --prod\` is not supported for architecture v2 deployment "${slug}". ` +
52
+ V2_ALTERNATIVE[command](slug), 409);
53
+ }
45
54
  return new DeployApiError(`This command is not supported for architecture v2 deployment "${slug}". ` +
46
55
  `call and sessions stay on the v1 API. ${v2HostedVerifyHint(slug)}`, 409);
47
56
  }
@@ -54,7 +63,7 @@ export function rejectV2ForLegacyCommand(args) {
54
63
  return __awaiter(this, void 0, void 0, function* () {
55
64
  const architecture = yield deploymentArchitecture(args);
56
65
  if (architecture === "v2") {
57
- throw unsupportedV2LegacyCommandError(args.slug);
66
+ throw unsupportedV2LegacyCommandError(args.slug, args.command);
58
67
  }
59
68
  });
60
69
  }
@@ -17,7 +17,14 @@ export interface PlatformTimers {
17
17
  deleteSchedule(name: string): Promise<void>;
18
18
  putReminder(record: ReminderRecord): Promise<void>;
19
19
  getReminder(id: string): Promise<ReminderRecord | undefined>;
20
- listReminders(): Promise<ReminderRecord[]>;
20
+ /**
21
+ * Same signature as the v2 control plane. v1 timed-work has no key filter;
22
+ * callers that pass one still receive the page and filter it locally.
23
+ */
24
+ listReminders(filter?: {
25
+ purpose?: string;
26
+ continuationToken?: string;
27
+ }): Promise<ReminderRecord[]>;
21
28
  deleteReminder(id: string): Promise<void>;
22
29
  }
23
30
  export interface CursorHostedPlatformTimersOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"platform-timers.d.ts","sourceRoot":"","sources":["../../src/internal/platform-timers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,oBAAoB,EAK1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI5E,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAC7D,aAAa,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC3C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,iCAAiC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAqED,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,iCAAsC,GAC9C,cAAc,CAoEhB;AAuED;;;;GAIG;AACH,wBAAgB,sCAAsC,CACpD,OAAO,GAAE,iCAAsC,GAC9C,oBAAoB,CAgHtB"}
1
+ {"version":3,"file":"platform-timers.d.ts","sourceRoot":"","sources":["../../src/internal/platform-timers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,KAAK,oBAAoB,EAK1B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAI5E,MAAM,WAAW,cAAc;IAC7B,cAAc,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAC7D;;;OAGG;IACH,aAAa,CAAC,MAAM,CAAC,EAAE;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9B,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,iCAAiC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAqED,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,iCAAsC,GAC9C,cAAc,CAoEhB;AAuED;;;;GAIG;AACH,wBAAgB,sCAAsC,CACpD,OAAO,GAAE,iCAAsC,GAC9C,oBAAoB,CAwHtB"}
@@ -215,9 +215,17 @@ export function createCursorHostedReminderControlPlane(options = {}) {
215
215
  return isReminderRecord(parsed) ? parsed : undefined;
216
216
  });
217
217
  },
218
- listReminders() {
218
+ listReminders(filter) {
219
219
  return __awaiter(this, void 0, void 0, function* () {
220
- const response = yield timedWorkJsonFetch(options, "GET", `${AGENTSDK_REMINDERS_PREFIX}/reminders`);
220
+ const params = new URLSearchParams();
221
+ if ((filter === null || filter === void 0 ? void 0 : filter.continuationToken) !== undefined && filter.continuationToken !== "") {
222
+ params.set("continuationToken", filter.continuationToken);
223
+ }
224
+ if ((filter === null || filter === void 0 ? void 0 : filter.purpose) !== undefined && filter.purpose !== "") {
225
+ params.set("purpose", filter.purpose);
226
+ }
227
+ const query = params.toString();
228
+ const response = yield timedWorkJsonFetch(options, "GET", `${AGENTSDK_REMINDERS_PREFIX}/reminders${query === "" ? "" : `?${query}`}`);
221
229
  if (!response.ok) {
222
230
  throw yield reminderCpReadError("list", response);
223
231
  }
@@ -133,7 +133,14 @@ export interface ReminderControlPlane {
133
133
  readonly protocolVersion: ReminderCpProtocolVersion;
134
134
  createReminder(intent: ReminderCreateIntent): Promise<ReminderRecord>;
135
135
  getReminder(id: string): Promise<ReminderRecord | undefined>;
136
- listReminders(): Promise<ReminderRecord[]>;
136
+ /**
137
+ * Unfiltered list is one page. `continuationToken` and `purpose` are
138
+ * applied before that page so a keyed read is not hidden by older rows.
139
+ */
140
+ listReminders(filter?: {
141
+ purpose?: string;
142
+ continuationToken?: string;
143
+ }): Promise<ReminderRecord[]>;
137
144
  cancelReminder(id: string, reason?: string): Promise<ReminderRecord | undefined>;
138
145
  /**
139
146
  * Re-key armed (and in-flight) reminders for a continuation rotation.
@@ -1 +1 @@
1
- {"version":3,"file":"reminder-control-plane-protocol.d.ts","sourceRoot":"","sources":["../../src/internal/reminder-control-plane-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reminder-control-plane-protocol.d.ts","sourceRoot":"","sources":["../../src/internal/reminder-control-plane-protocol.ts"],"names":[],"mappings":"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"}
@@ -121,6 +121,11 @@ export declare class ReminderRunner {
121
121
  * arm duplicates or miss rows to cancel. v1 keeps the best-effort form.
122
122
  */
123
123
  private allRecords;
124
+ /**
125
+ * A keyed list asks the control plane for that key. An unfiltered list
126
+ * still uses allRecords. Do not replace the in-memory map with the keyed page.
127
+ */
128
+ private recordsForList;
124
129
  stop(): void;
125
130
  create(input: ReminderCreateInput): Promise<ReminderInfo>;
126
131
  list(filter?: {
@@ -1 +1 @@
1
- {"version":3,"file":"reminder-runner.d.ts","sourceRoot":"","sources":["../../src/internal/reminder-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reminder-runner.d.ts","sourceRoot":"","sources":["../../src/internal/reminder-runner.ts"],"names":[],"mappings":"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"}
@@ -334,6 +334,32 @@ export class ReminderRunner {
334
334
  return [...this.records.values()];
335
335
  });
336
336
  }
337
+ /**
338
+ * A keyed list asks the control plane for that key. An unfiltered list
339
+ * still uses allRecords. Do not replace the in-memory map with the keyed page.
340
+ */
341
+ recordsForList(filter) {
342
+ return __awaiter(this, void 0, void 0, function* () {
343
+ if (this.usesControlPlaneProtocol &&
344
+ ((filter === null || filter === void 0 ? void 0 : filter.purpose) !== undefined || (filter === null || filter === void 0 ? void 0 : filter.continuationToken) !== undefined)) {
345
+ try {
346
+ const remote = yield this.controlPlane.listReminders(Object.assign(Object.assign({}, (filter.purpose === undefined ? {} : { purpose: filter.purpose })), (filter.continuationToken === undefined
347
+ ? {}
348
+ : { continuationToken: filter.continuationToken })));
349
+ this.controlPlaneReadFailureLogged = false;
350
+ for (const record of remote) {
351
+ this.records.set(record.id, record);
352
+ }
353
+ return remote;
354
+ }
355
+ catch (error) {
356
+ this.logControlPlaneReadFailure("list", error);
357
+ throw error;
358
+ }
359
+ }
360
+ return this.allRecords();
361
+ });
362
+ }
337
363
  stop() {
338
364
  this.started = false;
339
365
  for (const timer of this.timers.values()) {
@@ -469,7 +495,7 @@ export class ReminderRunner {
469
495
  }
470
496
  list(filter) {
471
497
  return __awaiter(this, void 0, void 0, function* () {
472
- const all = yield this.allRecords();
498
+ const all = yield this.recordsForList(filter);
473
499
  return all
474
500
  .filter(r => {
475
501
  if ((filter === null || filter === void 0 ? void 0 : filter.status) !== undefined) {
@@ -6,6 +6,7 @@
6
6
  * (Cursor API key on the management API; `X-Anyrun-Port-Token` on the
7
7
  * engine). Alias tokens are out of scope here.
8
8
  */
9
+ import { type LegacyProdCommand } from "./legacy-command-guard.js";
9
10
  /**
10
11
  * Interactive CLI keep-alive for hosted engines. Without these, a hibernated
11
12
  * Anyrun pod returns 417 `pod_hibernated` and never wakes. Matches the
@@ -23,6 +24,8 @@ export interface ResolveProdTargetOptions {
23
24
  err?: (text: string) => void;
24
25
  /** Skip when the caller already ran {@link rejectV2ForLegacyCommand}. */
25
26
  skipLegacyArchitectureCheck?: boolean;
27
+ /** Names the command in the {@link rejectV2ForLegacyCommand} v2 error. */
28
+ command?: LegacyProdCommand;
26
29
  /** Test seam for reachability-retry backoff. */
27
30
  sleep?: (ms: number) => Promise<void>;
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-prod-target.d.ts","sourceRoot":"","sources":["../../src/internal/resolve-prod-target.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgBH;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGrE,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,yEAAyE;IACzE,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,gDAAgD;IAChD,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAGtC,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE;IAFxD,YACE,OAAO,EAAE,MAAM,EACN,OAAO,GAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAiB,EAItE;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;CACF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA6F7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,wBAAwB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,sBAAsB,CAAC,CAsCjC;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,wBAAwB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,2BAA2B,CAAC,CAoBtC;AAwDD,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAgB7F"}
1
+ {"version":3,"file":"resolve-prod-target.d.ts","sourceRoot":"","sources":["../../src/internal/resolve-prod-target.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,2BAA2B,CAAC;AAInC;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGrE,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,yEAAyE;IACzE,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,0EAA0E;IAC1E,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,gDAAgD;IAChD,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,qBAAa,eAAgB,SAAQ,KAAK;IAGtC,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE;IAFxD,YACE,OAAO,EAAE,MAAM,EACN,OAAO,GAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAiB,EAItE;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;CACF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA8F7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,IAAI,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,wBAAwB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,sBAAsB,CAAC,CAsCjC;AAED;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,wBAAwB,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,2BAA2B,CAAC,CAoBtC;AAwDD,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,OAAO,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAgB7F"}
@@ -20,7 +20,7 @@ import { resolveDeployAuth } from "./cli-deploy.js";
20
20
  import { cursorWebsiteUrl } from "./cursor/credentials.js";
21
21
  import { DeployApiError, slugFromDirectoryName, validateDeploymentSlug, } from "./deploy-client.js";
22
22
  import { CLI_COMMAND_NAME as CLI } from "./distribution.js";
23
- import { deploymentArchitecture, rejectV2ForLegacyCommand } from "./legacy-command-guard.js";
23
+ import { deploymentArchitecture, rejectV2ForLegacyCommand, } from "./legacy-command-guard.js";
24
24
  import { sleep as defaultSleep } from "./sleep.js";
25
25
  import { stderrPalette } from "./terminal-style.js";
26
26
  /**
@@ -75,6 +75,7 @@ export function resolveProdTarget(options) {
75
75
  client: auth.client,
76
76
  teamId: auth.teamId,
77
77
  slug,
78
+ command: options.command,
78
79
  });
79
80
  }
80
81
  // A hibernated engine can briefly omit engineAccess while getPod fails
@@ -11,12 +11,21 @@ import { type Trajectory } from "./trajectory.js";
11
11
  /** Thrown when a turn stream exceeds `timeoutMs`; carries the session id. */
12
12
  export declare class RunSessionTimeoutError extends Error {
13
13
  readonly sessionId: string;
14
- constructor(message: string, sessionId: string);
14
+ /** Events the turn recorded before the deadline. */
15
+ readonly events: SessionEvent[];
16
+ constructor(message: string, sessionId: string,
17
+ /** Events the turn recorded before the deadline. */
18
+ events: SessionEvent[]);
15
19
  }
16
20
  export interface RunClientOptions extends RequestAuth {
17
21
  baseUrl: string;
18
22
  /** Abort a hung turn. */
19
23
  timeoutMs?: number;
24
+ /**
25
+ * Stream silence that ends a connection so the session's durable log can
26
+ * settle the turn. Also bounds each log read. Default 5s.
27
+ */
28
+ stallCheckMs?: number;
20
29
  /** External cancel (combined with {@link timeoutMs} when both are set). */
21
30
  signal?: AbortSignal;
22
31
  /** Called for each stream event as it arrives (for CLI progress). */
@@ -1 +1 @@
1
- {"version":3,"file":"run-client.d.ts","sourceRoot":"","sources":["../../src/internal/run-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEnE,6EAA6E;AAC7E,qBAAa,sBAAuB,SAAQ,KAAK;IAG7C,QAAQ,CAAC,SAAS,EAAE,MAAM;IAF5B,YACE,OAAO,EAAE,MAAM,EACN,SAAS,EAAE,MAAM,EAI3B;CACF;AACD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,qEAAqE;IACrE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAID;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,gBAAgB,GAAG;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,gEAAgE;IAChE,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B,GACA,OAAO,CAAC,gBAAgB,CAAC,CAyD3B"}
1
+ {"version":3,"file":"run-client.d.ts","sourceRoot":"","sources":["../../src/internal/run-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACnF,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAE7E,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEtF,6EAA6E;AAC7E,qBAAa,sBAAuB,SAAQ,KAAK;IAG7C,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B,oDAAoD;IACpD,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE;IAJjC,YACE,OAAO,EAAE,MAAM,EACN,SAAS,EAAE,MAAM;IAC1B,oDAAoD;IAC3C,MAAM,EAAE,YAAY,EAAE,EAIhC;CACF;AACD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,qEAAqE;IACrE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IACxC;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAQD;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,gBAAgB,GAAG;IAC1B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,gEAAgE;IAChE,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC3B,GACA,OAAO,CAAC,gBAAgB,CAAC,CA0D3B"}
@@ -14,17 +14,26 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
14
14
  step((generator = generator.apply(thisArg, _arguments || [])).next());
15
15
  });
16
16
  };
17
+ import { setTimeout as sleep } from "node:timers/promises";
17
18
  import { mergeRequestHeaders } from "./request-headers.js";
18
- import { buildTrajectory } from "./trajectory.js";
19
+ import { fetchSessionEvents } from "./sessions-client.js";
20
+ import { buildTrajectory, parseEventsNdjson } from "./trajectory.js";
19
21
  /** Thrown when a turn stream exceeds `timeoutMs`; carries the session id. */
20
22
  export class RunSessionTimeoutError extends Error {
21
- constructor(message, sessionId) {
23
+ constructor(message, sessionId,
24
+ /** Events the turn recorded before the deadline. */
25
+ events) {
22
26
  super(message);
23
27
  this.sessionId = sessionId;
28
+ this.events = events;
24
29
  this.name = "RunSessionTimeoutError";
25
30
  }
26
31
  }
27
32
  const TERMINAL_TYPES = new Set(["session.waiting", "session.completed", "session.failed"]);
33
+ const STALL_CHECK_MS = 5000;
34
+ /** Pause before reopening a stream the server closed; doubles while closes bring nothing. */
35
+ const REOPEN_DELAY_MS = 500;
36
+ const MAX_REOPEN_DELAY_MS = 8000;
28
37
  /**
29
38
  * Run one or more messages against a live agent-serve base URL
30
39
  * (e.g. `http://127.0.0.1:3000/weather-agent`).
@@ -53,6 +62,7 @@ export function runSession(options) {
53
62
  startIndex: sessionId === undefined ? 0 : nextEventIndex,
54
63
  auth,
55
64
  timeoutMs: options.timeoutMs,
65
+ stallCheckMs: options.stallCheckMs,
56
66
  signal: options.signal,
57
67
  onEvent: options.onEvent,
58
68
  purpose: sessionId === undefined ? options.purpose : undefined,
@@ -120,6 +130,7 @@ function runOneTurn(args) {
120
130
  startIndex: args.startIndex,
121
131
  auth: args.auth,
122
132
  timeoutMs: args.timeoutMs,
133
+ stallCheckMs: args.stallCheckMs,
123
134
  signal: args.signal,
124
135
  onEvent: args.onEvent,
125
136
  });
@@ -128,84 +139,174 @@ function runOneTurn(args) {
128
139
  return Object.assign(Object.assign({ sessionId }, (continuationToken === undefined ? {} : { continuationToken })), { events, ok: !turnFailed && !sessionFailed });
129
140
  });
130
141
  }
142
+ /** One turn's events in log order. Replays of events already seen are dropped. */
143
+ class TurnEvents {
144
+ constructor(start, onEvent) {
145
+ this.onEvent = onEvent;
146
+ this.events = [];
147
+ this.ended = false;
148
+ this.asks = new Set();
149
+ this.cursor = start;
150
+ }
151
+ /** First event index this turn has not recorded. */
152
+ get next() {
153
+ return this.cursor;
154
+ }
155
+ /** The turn's terminal event is recorded. */
156
+ get done() {
157
+ return this.ended;
158
+ }
159
+ /**
160
+ * Waiting on an unanswered approval or auth request. The engine holds the
161
+ * turn open without a terminal event until someone answers.
162
+ */
163
+ get parked() {
164
+ return this.asks.size > 0;
165
+ }
166
+ add(event) {
167
+ var _a;
168
+ if (this.ended || event.index < this.cursor) {
169
+ return;
170
+ }
171
+ this.cursor = event.index + 1;
172
+ this.events.push(event);
173
+ (_a = this.onEvent) === null || _a === void 0 ? void 0 : _a.call(this, event);
174
+ if (event.type === "action.approval_requested" || event.type === "action.auth_requested") {
175
+ this.asks.add(event.data.callId);
176
+ }
177
+ else if (event.type === "action.approval_resolved" || event.type === "action.auth_resolved") {
178
+ this.asks.delete(event.data.callId);
179
+ }
180
+ this.ended = TERMINAL_TYPES.has(event.type);
181
+ }
182
+ }
183
+ /**
184
+ * Collect one turn's events from `startIndex` through its terminal event.
185
+ *
186
+ * The live stream is the fast path, not the source of truth. Whenever a
187
+ * connection ends without the terminal event (the server closes it, it breaks
188
+ * mid-body, or it goes quiet), the session's durable log decides: a finished
189
+ * turn or one parked on an unanswered approval returns, anything else reopens
190
+ * the stream after the last event recorded. The deadline reads the log once
191
+ * more before timing out.
192
+ */
131
193
  function collectStream(args) {
132
194
  return __awaiter(this, void 0, void 0, function* () {
133
- var _a, _b, _c;
134
- var _d, _e;
135
- const controller = new AbortController();
136
- const onExternalAbort = () => {
137
- controller.abort();
138
- };
139
- if (args.signal !== undefined) {
140
- if (args.signal.aborted) {
141
- controller.abort();
195
+ var _a;
196
+ var _b;
197
+ const turn = new TurnEvents(args.startIndex, args.onEvent);
198
+ const deadline = new AbortController();
199
+ const timer = args.timeoutMs === undefined ? undefined : setTimeout(() => deadline.abort(), args.timeoutMs);
200
+ const signal = args.signal === undefined ? deadline.signal : AbortSignal.any([args.signal, deadline.signal]);
201
+ try {
202
+ for (let closes = 0;;) {
203
+ const seen = turn.next;
204
+ const end = yield followStream(args, turn, signal);
205
+ if (end === "done" || (yield settled(args, turn, signal))) {
206
+ return turn.events;
207
+ }
208
+ if (end === "closed") {
209
+ closes = turn.next > seen ? 0 : closes + 1;
210
+ yield sleep(Math.min(REOPEN_DELAY_MS * Math.pow(2, closes), MAX_REOPEN_DELAY_MS), undefined, {
211
+ signal,
212
+ });
213
+ }
214
+ }
215
+ }
216
+ catch (error) {
217
+ if (!signal.aborted) {
218
+ throw error;
219
+ }
220
+ if ((_a = args.signal) === null || _a === void 0 ? void 0 : _a.aborted) {
221
+ throw new Error("cancelled");
142
222
  }
143
- else {
144
- args.signal.addEventListener("abort", onExternalAbort, { once: true });
223
+ if (yield settled(args, turn)) {
224
+ return turn.events;
145
225
  }
226
+ throw new RunSessionTimeoutError(`turn timed out after ${(_b = args.timeoutMs) !== null && _b !== void 0 ? _b : "?"}ms (session ${args.sessionId})`, args.sessionId, turn.events);
146
227
  }
147
- const timer = args.timeoutMs === undefined ? undefined : setTimeout(() => controller.abort(), args.timeoutMs);
228
+ finally {
229
+ clearTimeout(timer);
230
+ }
231
+ });
232
+ }
233
+ /**
234
+ * Follow one stream connection until the turn's terminal event (`done`), the
235
+ * connection closes or breaks mid-body (`closed`), or it stays silent for
236
+ * `stallCheckMs` (`quiet`). A stream that cannot be opened throws.
237
+ */
238
+ function followStream(args, turn, signal) {
239
+ return __awaiter(this, void 0, void 0, function* () {
240
+ var _a;
241
+ const quiet = new AbortController();
242
+ const idle = setTimeout(() => quiet.abort(), (_a = args.stallCheckMs) !== null && _a !== void 0 ? _a : STALL_CHECK_MS);
243
+ let opened = false;
148
244
  try {
149
- const resp = yield fetch(`${args.baseUrl}/v1/session/${args.sessionId}/stream?startIndex=${args.startIndex}`, {
245
+ const resp = yield fetch(`${args.baseUrl}/v1/session/${args.sessionId}/stream?startIndex=${turn.next}`, {
150
246
  headers: mergeRequestHeaders(args.auth),
151
- signal: controller.signal,
247
+ signal: AbortSignal.any([signal, quiet.signal]),
152
248
  });
153
249
  if (!resp.ok || resp.body === null) {
154
250
  throw new Error(`stream failed (${resp.status})`);
155
251
  }
252
+ opened = true;
156
253
  const reader = resp.body.getReader();
157
254
  const decoder = new TextDecoder();
158
255
  let buffer = "";
159
- const events = [];
160
256
  for (;;) {
161
257
  const chunk = yield reader.read();
162
258
  if (chunk.done) {
163
- break;
259
+ return "closed";
164
260
  }
261
+ idle.refresh();
165
262
  buffer += decoder.decode(chunk.value, { stream: true });
166
- const lines = buffer.split("\n");
167
- buffer = (_d = lines.pop()) !== null && _d !== void 0 ? _d : "";
168
- let stop = false;
169
- for (const line of lines) {
170
- if (line.trim() === "") {
171
- continue;
172
- }
173
- let event;
174
- try {
175
- event = JSON.parse(line);
176
- }
177
- catch (_f) {
178
- continue;
179
- }
180
- events.push(event);
181
- (_a = args.onEvent) === null || _a === void 0 ? void 0 : _a.call(args, event);
182
- if (TERMINAL_TYPES.has(event.type)) {
183
- stop = true;
184
- break;
185
- }
263
+ const lines = buffer.lastIndexOf("\n") + 1;
264
+ for (const event of parseEventsNdjson(buffer.slice(0, lines))) {
265
+ turn.add(event);
186
266
  }
187
- if (stop) {
188
- break;
267
+ buffer = buffer.slice(lines);
268
+ if (turn.done) {
269
+ return "done";
189
270
  }
190
271
  }
191
- yield reader.cancel().catch(() => { });
192
- return events;
193
272
  }
194
273
  catch (error) {
195
- if (error instanceof Error && error.name === "AbortError") {
196
- if ((_b = args.signal) === null || _b === void 0 ? void 0 : _b.aborted) {
197
- throw new Error("cancelled");
198
- }
199
- throw new RunSessionTimeoutError(`turn timed out after ${(_e = args.timeoutMs) !== null && _e !== void 0 ? _e : "?"}ms (session ${args.sessionId})`, args.sessionId);
274
+ if (signal.aborted) {
275
+ throw error;
276
+ }
277
+ if (quiet.signal.aborted) {
278
+ return "quiet";
279
+ }
280
+ if (opened) {
281
+ return "closed";
200
282
  }
201
283
  throw error;
202
284
  }
203
285
  finally {
204
- (_c = args.signal) === null || _c === void 0 ? void 0 : _c.removeEventListener("abort", onExternalAbort);
205
- if (timer !== undefined) {
206
- clearTimeout(timer);
207
- }
286
+ clearTimeout(idle);
287
+ quiet.abort();
288
+ }
289
+ });
290
+ }
291
+ /**
292
+ * Record the turn's events from the session's durable log. True when the turn
293
+ * finished or parked on an unanswered approval. Each read is bounded so a
294
+ * slow log cannot hold a turn the stream would deliver.
295
+ */
296
+ function settled(args, turn, signal) {
297
+ return __awaiter(this, void 0, void 0, function* () {
298
+ var _a;
299
+ const budget = AbortSignal.timeout((_a = args.stallCheckMs) !== null && _a !== void 0 ? _a : STALL_CHECK_MS);
300
+ const events = yield fetchSessionEvents({
301
+ baseUrl: args.baseUrl,
302
+ sessionId: args.sessionId,
303
+ auth: args.auth,
304
+ signal: signal === undefined ? budget : AbortSignal.any([signal, budget]),
305
+ }).catch(() => []);
306
+ for (const event of events) {
307
+ turn.add(event);
208
308
  }
309
+ return turn.done || turn.parked;
209
310
  });
210
311
  }
211
312
  function postJson(baseUrl, path, body, auth) {