@cursor/bdk 0.2.9 → 0.2.10

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 (570) hide show
  1. package/dist/artifacts.js +3 -5
  2. package/dist/bin/agent-serve.js +803 -812
  3. package/dist/channels/bitbucket/api.js +305 -321
  4. package/dist/channels/bitbucket/binding.js +97 -61
  5. package/dist/channels/bitbucket/bitbucket-channel.d.ts +15 -1
  6. package/dist/channels/bitbucket/bitbucket-channel.d.ts.map +1 -1
  7. package/dist/channels/bitbucket/bitbucket-channel.js +95 -42
  8. package/dist/channels/bitbucket/bitbucket-webhook.d.ts +11 -0
  9. package/dist/channels/bitbucket/bitbucket-webhook.d.ts.map +1 -1
  10. package/dist/channels/bitbucket/bitbucket-webhook.js +214 -204
  11. package/dist/channels/bitbucket/checks.js +9 -21
  12. package/dist/channels/bitbucket/cursor-account.js +1 -1
  13. package/dist/channels/bitbucket/defaults.js +14 -4
  14. package/dist/channels/bitbucket/events.js +1 -2
  15. package/dist/channels/bitbucket/index.d.ts +6 -2
  16. package/dist/channels/bitbucket/index.d.ts.map +1 -1
  17. package/dist/channels/bitbucket/index.js +6 -2
  18. package/dist/channels/bitbucket/replay.js +80 -56
  19. package/dist/channels/bitbucket/state.js +16 -7
  20. package/dist/channels/bitbucket/types.d.ts +11 -2
  21. package/dist/channels/bitbucket/types.d.ts.map +1 -1
  22. package/dist/channels/checks.js +18 -28
  23. package/dist/channels/deployments/deployments-channel.js +26 -34
  24. package/dist/channels/github/api.js +216 -210
  25. package/dist/channels/github/auth.d.ts +5 -1
  26. package/dist/channels/github/auth.d.ts.map +1 -1
  27. package/dist/channels/github/auth.js +157 -174
  28. package/dist/channels/github/binding.js +48 -39
  29. package/dist/channels/github/checks.js +9 -14
  30. package/dist/channels/github/cursor-account.js +6 -11
  31. package/dist/channels/github/defaults.js +105 -130
  32. package/dist/channels/github/forward.js +13 -17
  33. package/dist/channels/github/github-channel.d.ts +43 -2
  34. package/dist/channels/github/github-channel.d.ts.map +1 -1
  35. package/dist/channels/github/github-channel.js +1228 -958
  36. package/dist/channels/github/progress.js +145 -146
  37. package/dist/channels/github/replay.js +30 -39
  38. package/dist/channels/github/state.js +40 -16
  39. package/dist/channels/github/types.d.ts +30 -6
  40. package/dist/channels/github/types.d.ts.map +1 -1
  41. package/dist/channels/gitlab/api.js +100 -114
  42. package/dist/channels/gitlab/binding.js +52 -33
  43. package/dist/channels/gitlab/checks.js +28 -29
  44. package/dist/channels/gitlab/cursor-account.js +1 -1
  45. package/dist/channels/gitlab/defaults.js +9 -3
  46. package/dist/channels/gitlab/gitlab-channel.d.ts +16 -1
  47. package/dist/channels/gitlab/gitlab-channel.d.ts.map +1 -1
  48. package/dist/channels/gitlab/gitlab-channel.js +95 -42
  49. package/dist/channels/gitlab/gitlab-webhook.d.ts +10 -1
  50. package/dist/channels/gitlab/gitlab-webhook.d.ts.map +1 -1
  51. package/dist/channels/gitlab/gitlab-webhook.js +282 -249
  52. package/dist/channels/gitlab/index.d.ts +6 -2
  53. package/dist/channels/gitlab/index.d.ts.map +1 -1
  54. package/dist/channels/gitlab/index.js +6 -2
  55. package/dist/channels/gitlab/replay.js +50 -27
  56. package/dist/channels/gitlab/state.js +14 -6
  57. package/dist/channels/gitlab/types.d.ts +13 -2
  58. package/dist/channels/gitlab/types.d.ts.map +1 -1
  59. package/dist/channels/origin/api.js +100 -116
  60. package/dist/channels/origin/binding.js +15 -16
  61. package/dist/channels/origin/checks.js +30 -28
  62. package/dist/channels/origin/defaults.js +50 -65
  63. package/dist/channels/origin/origin-channel.js +266 -272
  64. package/dist/channels/origin/origin-webhook.js +70 -88
  65. package/dist/channels/origin/reactions.js +9 -21
  66. package/dist/channels/origin/state.js +13 -5
  67. package/dist/channels/slack/agentic-delivery.js +426 -478
  68. package/dist/channels/slack/agentic-posted.js +9 -10
  69. package/dist/channels/slack/agentic-signals.js +2 -3
  70. package/dist/channels/slack/api.js +417 -427
  71. package/dist/channels/slack/approvals.js +1 -1
  72. package/dist/channels/slack/assistant.js +37 -47
  73. package/dist/channels/slack/attachments.js +188 -206
  74. package/dist/channels/slack/auth.js +8 -6
  75. package/dist/channels/slack/bot-mentions.js +31 -45
  76. package/dist/channels/slack/channel-watch.js +42 -48
  77. package/dist/channels/slack/cli-project.js +112 -137
  78. package/dist/channels/slack/code-fences.js +3 -5
  79. package/dist/channels/slack/constants.js +2 -2
  80. package/dist/channels/slack/credentials.js +23 -38
  81. package/dist/channels/slack/defaults.js +292 -331
  82. package/dist/channels/slack/dispatch.d.ts.map +1 -1
  83. package/dist/channels/slack/dispatch.js +533 -460
  84. package/dist/channels/slack/doctor.js +200 -214
  85. package/dist/channels/slack/eval-directive.js +79 -96
  86. package/dist/channels/slack/event-id-dedupe.js +1 -1
  87. package/dist/channels/slack/external-policy.js +26 -39
  88. package/dist/channels/slack/footer.js +28 -41
  89. package/dist/channels/slack/inbound.d.ts +1 -0
  90. package/dist/channels/slack/inbound.d.ts.map +1 -1
  91. package/dist/channels/slack/inbound.js +50 -31
  92. package/dist/channels/slack/init.d.ts +1 -5
  93. package/dist/channels/slack/init.d.ts.map +1 -1
  94. package/dist/channels/slack/init.js +42 -59
  95. package/dist/channels/slack/interactive.d.ts +9 -3
  96. package/dist/channels/slack/interactive.d.ts.map +1 -1
  97. package/dist/channels/slack/interactive.js +160 -162
  98. package/dist/channels/slack/links.js +1 -2
  99. package/dist/channels/slack/live-delivery.js +172 -190
  100. package/dist/channels/slack/manifest.d.ts.map +1 -1
  101. package/dist/channels/slack/manifest.js +44 -23
  102. package/dist/channels/slack/message-body.js +2 -2
  103. package/dist/channels/slack/nudge-carrier.js +30 -42
  104. package/dist/channels/slack/nudge-store.js +164 -191
  105. package/dist/channels/slack/paint-start.js +66 -81
  106. package/dist/channels/slack/placeholder.js +123 -152
  107. package/dist/channels/slack/pr-ref.js +1 -1
  108. package/dist/channels/slack/progress-delivery.js +65 -78
  109. package/dist/channels/slack/reasoning-card.js +36 -49
  110. package/dist/channels/slack/recording-sink.js +12 -24
  111. package/dist/channels/slack/reply-options.js +7 -12
  112. package/dist/channels/slack/self-identity.js +27 -35
  113. package/dist/channels/slack/sender-name.d.ts +12 -3
  114. package/dist/channels/slack/sender-name.d.ts.map +1 -1
  115. package/dist/channels/slack/sender-name.js +57 -61
  116. package/dist/channels/slack/setup.js +2 -4
  117. package/dist/channels/slack/slack-channel.d.ts +6 -4
  118. package/dist/channels/slack/slack-channel.d.ts.map +1 -1
  119. package/dist/channels/slack/slack-channel.js +441 -308
  120. package/dist/channels/slack/socket-mode.js +38 -52
  121. package/dist/channels/slack/thread-context.js +143 -160
  122. package/dist/channels/slack/tool-approval-events.js +149 -166
  123. package/dist/channels/slack/tool-cards.js +6 -11
  124. package/dist/channels/slack/tool-chip.js +1 -2
  125. package/dist/channels/slack/types.d.ts +15 -17
  126. package/dist/channels/slack/types.d.ts.map +1 -1
  127. package/dist/channels/slack/upload.js +84 -97
  128. package/dist/channels/slack/user-info.js +27 -41
  129. package/dist/channels.js +9 -20
  130. package/dist/dashboard-session-url.js +3 -4
  131. package/dist/docs/404.html +2 -2
  132. package/dist/docs/assets/{app.BNhEdGa8.js → app.DXI7bwox.js} +4 -4
  133. package/dist/docs/assets/{building-with-agents.md.BPjPFxFg.js → building-with-agents.md.Df87rAe1.js} +1 -1
  134. package/dist/docs/assets/chunks/@localSearchIndexroot.CtLtpWcx.js +1 -0
  135. package/dist/docs/assets/chunks/{VPLocalSearchBox.DIdUV1Ph.js → VPLocalSearchBox.BrbO5mEe.js} +1 -1
  136. package/dist/docs/assets/chunks/{arc.lELI4_SR.js → arc.BOG1yms8.js} +1 -1
  137. package/dist/docs/assets/chunks/{architectureDiagram-Q4EWVU46.iCMdvuoM.js → architectureDiagram-Q4EWVU46.C0hsMZnZ.js} +1 -1
  138. package/dist/docs/assets/chunks/{baseUniq.C1-nDJBf.js → baseUniq.H044KjKs.js} +1 -1
  139. package/dist/docs/assets/chunks/{blockDiagram-DXYQGD6D.ClemzBox.js → blockDiagram-DXYQGD6D.BsRW6GoB.js} +1 -1
  140. package/dist/docs/assets/chunks/{c4Diagram-AHTNJAMY.BqTak6cR.js → c4Diagram-AHTNJAMY.B9HV5PFR.js} +1 -1
  141. package/dist/docs/assets/chunks/channel.CBwrU9rP.js +1 -0
  142. package/dist/docs/assets/chunks/{chunk-4BX2VUAB.CUS3qs_R.js → chunk-4BX2VUAB.CPoT_ajl.js} +1 -1
  143. package/dist/docs/assets/chunks/{chunk-4TB4RGXK.dz5fdHcl.js → chunk-4TB4RGXK.DZBwWuCL.js} +1 -1
  144. package/dist/docs/assets/chunks/{chunk-55IACEB6.D6BEBmve.js → chunk-55IACEB6.CZ3yTiyq.js} +1 -1
  145. package/dist/docs/assets/chunks/{chunk-EDXVE4YY.B5uK4ID9.js → chunk-EDXVE4YY.6DfvHSd8.js} +1 -1
  146. package/dist/docs/assets/chunks/{chunk-FMBD7UC4.PgOJgNQs.js → chunk-FMBD7UC4.CpBj8HfK.js} +1 -1
  147. package/dist/docs/assets/chunks/{chunk-OYMX7WX6.CvkTrCii.js → chunk-OYMX7WX6.BdKo8YqS.js} +1 -1
  148. package/dist/docs/assets/chunks/{chunk-QZHKN3VN.BnSfKYsB.js → chunk-QZHKN3VN.BnXNyxJx.js} +1 -1
  149. package/dist/docs/assets/chunks/{chunk-YZCP3GAM.MZH6v5UC.js → chunk-YZCP3GAM.Cg1OcF8G.js} +1 -1
  150. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.CbC_mrvB.js +1 -0
  151. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.CbC_mrvB.js +1 -0
  152. package/dist/docs/assets/chunks/clone.BTvFyY1a.js +1 -0
  153. package/dist/docs/assets/chunks/{cose-bilkent-S5V4N54A.BBbw_YZi.js → cose-bilkent-S5V4N54A.1SP8al9c.js} +1 -1
  154. package/dist/docs/assets/chunks/{dagre-KV5264BT.CNJB2l7E.js → dagre-KV5264BT.DS1L6hJt.js} +1 -1
  155. package/dist/docs/assets/chunks/{diagram-5BDNPKRD.BQzlnFfq.js → diagram-5BDNPKRD.ChsausbG.js} +1 -1
  156. package/dist/docs/assets/chunks/{diagram-G4DWMVQ6.DkgqqZMz.js → diagram-G4DWMVQ6.3XsptNWj.js} +1 -1
  157. package/dist/docs/assets/chunks/{diagram-MMDJMWI5.DIT8L7H_.js → diagram-MMDJMWI5.DPA9Dk_P.js} +1 -1
  158. package/dist/docs/assets/chunks/{diagram-TYMM5635.3xLPZWGJ.js → diagram-TYMM5635.BVswXWrB.js} +1 -1
  159. package/dist/docs/assets/chunks/{erDiagram-SMLLAGMA.5_IHz8jF.js → erDiagram-SMLLAGMA.BSak5OSP.js} +1 -1
  160. package/dist/docs/assets/chunks/{flowDiagram-DWJPFMVM.BGUCXz8A.js → flowDiagram-DWJPFMVM.CQgN4TTz.js} +1 -1
  161. package/dist/docs/assets/chunks/{ganttDiagram-T4ZO3ILL.DbfFavS1.js → ganttDiagram-T4ZO3ILL.GrT0kA4a.js} +1 -1
  162. package/dist/docs/assets/chunks/{gitGraphDiagram-UUTBAWPF.D2yKdeNW.js → gitGraphDiagram-UUTBAWPF.CdS7Ucll.js} +1 -1
  163. package/dist/docs/assets/chunks/{graph.CSCxwHba.js → graph.BVqKRmRo.js} +1 -1
  164. package/dist/docs/assets/chunks/{infoDiagram-42DDH7IO.FDeb6xHY.js → infoDiagram-42DDH7IO.C3C9FRto.js} +1 -1
  165. package/dist/docs/assets/chunks/{ishikawaDiagram-UXIWVN3A.DbeYs9VL.js → ishikawaDiagram-UXIWVN3A.2FuAh_Zj.js} +1 -1
  166. package/dist/docs/assets/chunks/{journeyDiagram-VCZTEJTY.CWjKINpx.js → journeyDiagram-VCZTEJTY.CaHMfK4b.js} +1 -1
  167. package/dist/docs/assets/chunks/{kanban-definition-6JOO6SKY.B4FrAlwz.js → kanban-definition-6JOO6SKY.CjhIUwcA.js} +1 -1
  168. package/dist/docs/assets/chunks/{layout.DFGxQ9ab.js → layout.CGU3gfSf.js} +1 -1
  169. package/dist/docs/assets/chunks/{linear.BmjZ-G59.js → linear.DaihpW_n.js} +1 -1
  170. package/dist/docs/assets/chunks/{min.DZSxulMW.js → min.BS-j8kHQ.js} +1 -1
  171. package/dist/docs/assets/chunks/{mindmap-definition-QFDTVHPH.CHLi3-aN.js → mindmap-definition-QFDTVHPH.BVJ1Bbnk.js} +1 -1
  172. package/dist/docs/assets/chunks/{pieDiagram-DEJITSTG.DteG-CkU.js → pieDiagram-DEJITSTG.Cz1WIv9r.js} +1 -1
  173. package/dist/docs/assets/chunks/{quadrantDiagram-34T5L4WZ.D458ipN3.js → quadrantDiagram-34T5L4WZ.DKLFxcjy.js} +1 -1
  174. package/dist/docs/assets/chunks/{requirementDiagram-MS252O5E.DcFgUxst.js → requirementDiagram-MS252O5E.BHegiK7x.js} +1 -1
  175. package/dist/docs/assets/chunks/{sankeyDiagram-XADWPNL6.BwQAMmSA.js → sankeyDiagram-XADWPNL6.DYkY6yPc.js} +1 -1
  176. package/dist/docs/assets/chunks/{sequenceDiagram-FGHM5R23.B_Xdsrh9.js → sequenceDiagram-FGHM5R23.DYQ1QUrI.js} +1 -1
  177. package/dist/docs/assets/chunks/{stateDiagram-FHFEXIEX.CdfDW6-C.js → stateDiagram-FHFEXIEX.Iru8BsFo.js} +1 -1
  178. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.BYXl4LW6.js +1 -0
  179. package/dist/docs/assets/chunks/{theme.sfdL3srp.js → theme.DaplWQhQ.js} +2 -2
  180. package/dist/docs/assets/chunks/{timeline-definition-GMOUNBTQ.56-4hXaC.js → timeline-definition-GMOUNBTQ.BwFA8hiX.js} +1 -1
  181. package/dist/docs/assets/chunks/{vennDiagram-DHZGUBPP.CvZSQBO7.js → vennDiagram-DHZGUBPP.CZ60W1C_.js} +1 -1
  182. package/dist/docs/assets/chunks/{wardley-RL74JXVD.C9qc8k39.js → wardley-RL74JXVD.iXazD3Z7.js} +1 -1
  183. package/dist/docs/assets/chunks/{wardleyDiagram-NUSXRM2D.D9s0nihi.js → wardleyDiagram-NUSXRM2D.B69D2r8-.js} +1 -1
  184. package/dist/docs/assets/chunks/{xychartDiagram-5P7HB3ND.BVJSpYrC.js → xychartDiagram-5P7HB3ND.CLPZEIU9.js} +1 -1
  185. package/dist/docs/assets/{deployment.md.BdqTiGdc.js → deployment.md.BYuEcDBv.js} +2 -2
  186. package/dist/docs/assets/{guides_bitbucket.md.BB6fqD-M.js → guides_bitbucket.md.CKUayYtD.js} +3 -3
  187. package/dist/docs/assets/{guides_bitbucket.md.BB6fqD-M.lean.js → guides_bitbucket.md.CKUayYtD.lean.js} +1 -1
  188. package/dist/docs/assets/{guides_github.md.Cr1Xlf-m.js → guides_github.md.TuNiZAOQ.js} +4 -4
  189. package/dist/docs/assets/{guides_github.md.Cr1Xlf-m.lean.js → guides_github.md.TuNiZAOQ.lean.js} +1 -1
  190. package/dist/docs/assets/{guides_gitlab.md.CMpmFi4M.js → guides_gitlab.md.CtNI4fSH.js} +4 -4
  191. package/dist/docs/assets/{guides_gitlab.md.CMpmFi4M.lean.js → guides_gitlab.md.CtNI4fSH.lean.js} +1 -1
  192. package/dist/docs/assets/guides_migrate.md.sCAvvlC6.js +7 -0
  193. package/dist/docs/assets/guides_migrate.md.sCAvvlC6.lean.js +1 -0
  194. package/dist/docs/assets/{reference_cli.md.GwugN3n-.js → reference_cli.md.dYCAL2lB.js} +4 -3
  195. package/dist/docs/assets/reference_cli.md.dYCAL2lB.lean.js +1 -0
  196. package/dist/docs/assets/{reference_skills.md.ClkMoQsV.js → reference_skills.md.C0guGcH0.js} +3 -3
  197. package/dist/docs/assets/troubleshooting.md.x-GBa7wN.js +1 -0
  198. package/dist/docs/assets/{troubleshooting.md.Bscj6ODe.lean.js → troubleshooting.md.x-GBa7wN.lean.js} +1 -1
  199. package/dist/docs/building-with-agents.html +37 -37
  200. package/dist/docs/building-with-agents.md +2 -0
  201. package/dist/docs/deployment.html +38 -38
  202. package/dist/docs/deployment.md +7 -0
  203. package/dist/docs/evals.html +36 -36
  204. package/dist/docs/guides/agent-to-agent.html +35 -35
  205. package/dist/docs/guides/bitbucket.html +38 -38
  206. package/dist/docs/guides/bitbucket.md +9 -1
  207. package/dist/docs/guides/cloud-agents.html +35 -35
  208. package/dist/docs/guides/convert-automation.html +35 -35
  209. package/dist/docs/guides/github.html +39 -39
  210. package/dist/docs/guides/github.md +20 -4
  211. package/dist/docs/guides/gitlab.html +38 -38
  212. package/dist/docs/guides/gitlab.md +9 -1
  213. package/dist/docs/guides/grokbot-agents.html +35 -35
  214. package/dist/docs/guides/hooks.html +35 -35
  215. package/dist/docs/guides/improve.html +35 -35
  216. package/dist/docs/guides/jev.html +35 -35
  217. package/dist/docs/guides/mcp-oauth.html +35 -35
  218. package/dist/docs/guides/migrate.html +66 -0
  219. package/dist/docs/guides/migrate.md +122 -0
  220. package/dist/docs/guides/opentelemetry.html +35 -35
  221. package/dist/docs/guides/slack.html +35 -35
  222. package/dist/docs/guides/webhooks.html +35 -35
  223. package/dist/docs/hashmap.json +1 -1
  224. package/dist/docs/hillclimbing.html +35 -35
  225. package/dist/docs/index.html +35 -35
  226. package/dist/docs/llms-full.txt +214 -6
  227. package/dist/docs/llms.txt +1 -0
  228. package/dist/docs/quickstart.html +35 -35
  229. package/dist/docs/reference/agent-config.html +35 -35
  230. package/dist/docs/reference/artifacts.html +35 -35
  231. package/dist/docs/reference/channels.html +35 -35
  232. package/dist/docs/reference/cli.html +39 -38
  233. package/dist/docs/reference/cli.md +39 -0
  234. package/dist/docs/reference/connections.html +35 -35
  235. package/dist/docs/reference/evals.html +35 -35
  236. package/dist/docs/reference/extensions.html +35 -35
  237. package/dist/docs/reference/hooks.html +35 -35
  238. package/dist/docs/reference/http-api.html +35 -35
  239. package/dist/docs/reference/instructions.html +35 -35
  240. package/dist/docs/reference/playground.html +35 -35
  241. package/dist/docs/reference/project-layout.html +35 -35
  242. package/dist/docs/reference/prompt.html +35 -35
  243. package/dist/docs/reference/schedules.html +35 -35
  244. package/dist/docs/reference/sessions.html +35 -35
  245. package/dist/docs/reference/skills.html +38 -38
  246. package/dist/docs/reference/subagents.html +35 -35
  247. package/dist/docs/reference/tools.html +35 -35
  248. package/dist/docs/templates/agentic-owners.html +35 -35
  249. package/dist/docs/templates/grokbot-agents.html +35 -35
  250. package/dist/docs/templates/security-reviewer.html +35 -35
  251. package/dist/docs/templates/thermo-quality-review.html +35 -35
  252. package/dist/docs/templates/thermo-review.html +35 -35
  253. package/dist/docs/templates/triage.html +35 -35
  254. package/dist/docs/troubleshooting.html +36 -36
  255. package/dist/docs/troubleshooting.md +1 -0
  256. package/dist/evals/assertions.js +20 -34
  257. package/dist/evals/expect.js +3 -6
  258. package/dist/evals/judge.js +5 -8
  259. package/dist/evals/loaders.js +45 -62
  260. package/dist/evals/matchers.js +2 -3
  261. package/dist/evals/reporters.js +43 -67
  262. package/dist/evals/results.js +1 -1
  263. package/dist/evals/run-facts.js +5 -6
  264. package/dist/evals.js +27 -15
  265. package/dist/extensions/cursor-cloud-agents/extension.js +4 -1
  266. package/dist/extensions/cursor-cloud-agents/lib/backend.js +100 -126
  267. package/dist/extensions/cursor-cloud-agents/lib/fleet.js +22 -38
  268. package/dist/extensions/cursor-cloud-agents/lib/repos.js +8 -10
  269. package/dist/extensions/cursor-cloud-agents/lib/transcript.js +2 -3
  270. package/dist/extensions/cursor-cloud-agents/lib/watch.js +52 -66
  271. package/dist/extensions/cursor-cloud-agents/reminders/cloud-agent-stop-watch.js +29 -40
  272. package/dist/extensions/cursor-cloud-agents/tools/cancel.js +6 -17
  273. package/dist/extensions/cursor-cloud-agents/tools/dump.js +25 -36
  274. package/dist/extensions/cursor-cloud-agents/tools/get.js +3 -14
  275. package/dist/extensions/cursor-cloud-agents/tools/launch.js +13 -21
  276. package/dist/extensions/cursor-cloud-agents/tools/list.js +8 -19
  277. package/dist/extensions/cursor-cloud-agents/tools/reply.js +5 -16
  278. package/dist/extensions/cursor-grokbot-agents/extension.js +4 -1
  279. package/dist/extensions/cursor-grokbot-agents/lib/agents.js +3 -3
  280. package/dist/extensions/cursor-grokbot-agents/lib/backend.js +53 -73
  281. package/dist/extensions/cursor-grokbot-agents/lib/contacts.js +10 -23
  282. package/dist/extensions/cursor-grokbot-agents/lib/conversation.js +112 -132
  283. package/dist/extensions/cursor-grokbot-agents/lib/lock.js +1 -2
  284. package/dist/extensions/cursor-grokbot-agents/tools/ask.js +5 -16
  285. package/dist/extensions/cursor-grokbot-agents/tools/check.js +4 -15
  286. package/dist/extensions/cursor-grokbot-agents/tools/interrupt.js +2 -13
  287. package/dist/extensions/cursor-grokbot-agents/tools/list.js +11 -23
  288. package/dist/extensions/jev/extension.js +3 -3
  289. package/dist/extensions/jev/lib/evaluate.js +43 -60
  290. package/dist/extensions/jev/tools/evaluate.js +6 -17
  291. package/dist/extensions/slack-communication/tools/post-file.js +1 -1
  292. package/dist/extensions.js +3 -5
  293. package/dist/files-backends/cursor-hosted.js +504 -523
  294. package/dist/files-backends/local-fs.js +72 -134
  295. package/dist/files.js +3 -3
  296. package/dist/filesystem.js +562 -861
  297. package/dist/index.js +16 -35
  298. package/dist/internal/advertise-tools.js +74 -86
  299. package/dist/internal/artifacts-store.js +298 -361
  300. package/dist/internal/as-of.js +2 -4
  301. package/dist/internal/authored-alias-hooks.js +6 -4
  302. package/dist/internal/authored-loaders.js +37 -52
  303. package/dist/internal/bounded-int.js +1 -2
  304. package/dist/internal/bounded.js +13 -24
  305. package/dist/internal/brand.js +1 -1
  306. package/dist/internal/browser-origin-guard.js +4 -4
  307. package/dist/internal/builtin-tools/artifacts.js +15 -27
  308. package/dist/internal/builtin-tools/index.js +2 -3
  309. package/dist/internal/builtin-tools/reminders.js +33 -52
  310. package/dist/internal/channel-architecture.d.ts +21 -0
  311. package/dist/internal/channel-architecture.d.ts.map +1 -0
  312. package/dist/internal/channel-architecture.js +41 -0
  313. package/dist/internal/channel-dispatch.js +3 -4
  314. package/dist/internal/channel-route-dispatch.js +40 -51
  315. package/dist/internal/channel-state.js +1 -1
  316. package/dist/internal/chat-client.js +319 -340
  317. package/dist/internal/cli-ax.js +1262 -1294
  318. package/dist/internal/cli-bitbucket.js +244 -272
  319. package/dist/internal/cli-convert-automation.js +137 -151
  320. package/dist/internal/cli-cursor.js +126 -147
  321. package/dist/internal/cli-deploy.d.ts.map +1 -1
  322. package/dist/internal/cli-deploy.js +1457 -1507
  323. package/dist/internal/cli-docs.js +130 -147
  324. package/dist/internal/cli-github.js +437 -476
  325. package/dist/internal/cli-gitlab.js +259 -288
  326. package/dist/internal/cli-images.js +266 -334
  327. package/dist/internal/cli-manifest.js +25 -37
  328. package/dist/internal/cli-mcp-oauth.js +228 -247
  329. package/dist/internal/cli-mcp.js +358 -383
  330. package/dist/internal/cli-migrate.js +73 -90
  331. package/dist/internal/cli-skills.js +35 -47
  332. package/dist/internal/cli-slack-manual.d.ts +0 -1
  333. package/dist/internal/cli-slack-manual.d.ts.map +1 -1
  334. package/dist/internal/cli-slack-manual.js +175 -204
  335. package/dist/internal/cli-slack.d.ts +1 -1
  336. package/dist/internal/cli-slack.d.ts.map +1 -1
  337. package/dist/internal/cli-slack.js +416 -456
  338. package/dist/internal/cloud-merge.js +7 -3
  339. package/dist/internal/cloud-turn-cost.js +8 -1
  340. package/dist/internal/connection-env.js +5 -6
  341. package/dist/internal/continuation-channel.js +10 -7
  342. package/dist/internal/continuation-identity.js +85 -67
  343. package/dist/internal/conversation-mirror.js +112 -131
  344. package/dist/internal/convert-automation/convert-workflow.js +21 -31
  345. package/dist/internal/cron.js +3 -3
  346. package/dist/internal/cursor/account-mcp.js +147 -146
  347. package/dist/internal/cursor/backend-client.js +290 -320
  348. package/dist/internal/cursor/bound-secret-file.js +3 -3
  349. package/dist/internal/cursor/credentials.js +127 -142
  350. package/dist/internal/cursor/cursor-api-transport.js +4 -8
  351. package/dist/internal/cursor/github-credentials.js +91 -108
  352. package/dist/internal/cursor/hosted-bound-secrets.js +3 -4
  353. package/dist/internal/cursor/hosted-deployment-secrets.js +1 -1
  354. package/dist/internal/cursor/hosted-store-secrets.js +5 -9
  355. package/dist/internal/cursor/session-token.js +36 -48
  356. package/dist/internal/cursor/store-api-client.js +77 -92
  357. package/dist/internal/cursor-account-mcp-auth.js +132 -149
  358. package/dist/internal/cursor-agent-template.js +1 -1
  359. package/dist/internal/cursor-deployment-relay.js +33 -54
  360. package/dist/internal/cursor-event-relay.js +65 -59
  361. package/dist/internal/cursor-relay-core.js +258 -286
  362. package/dist/internal/deferred-channel-session.js +3 -12
  363. package/dist/internal/deploy-client.js +410 -475
  364. package/dist/internal/deploy-manifest.d.ts +17 -0
  365. package/dist/internal/deploy-manifest.d.ts.map +1 -1
  366. package/dist/internal/deploy-manifest.js +71 -21
  367. package/dist/internal/deploy-source.js +31 -43
  368. package/dist/internal/discovery/agent-config.js +45 -59
  369. package/dist/internal/discovery/agent.js +276 -280
  370. package/dist/internal/discovery/channels.js +67 -80
  371. package/dist/internal/discovery/connections.js +286 -296
  372. package/dist/internal/discovery/context.js +2 -13
  373. package/dist/internal/discovery/cursor-plugin.js +223 -259
  374. package/dist/internal/discovery/extension-overlay.js +104 -131
  375. package/dist/internal/discovery/extensions.js +276 -281
  376. package/dist/internal/discovery/fs.js +56 -79
  377. package/dist/internal/discovery/hooks.js +39 -50
  378. package/dist/internal/discovery/info.js +17 -19
  379. package/dist/internal/discovery/instructions.js +58 -71
  380. package/dist/internal/discovery/modules.js +45 -58
  381. package/dist/internal/discovery/project.d.ts.map +1 -1
  382. package/dist/internal/discovery/project.js +192 -215
  383. package/dist/internal/discovery/reminders.js +41 -52
  384. package/dist/internal/discovery/runtime.js +1 -1
  385. package/dist/internal/discovery/schedules.js +71 -82
  386. package/dist/internal/discovery/seed-files.js +21 -32
  387. package/dist/internal/discovery/services.js +74 -96
  388. package/dist/internal/discovery/skills.js +77 -94
  389. package/dist/internal/discovery/subagent.js +79 -95
  390. package/dist/internal/discovery/tools.js +12 -23
  391. package/dist/internal/distribution.js +2 -2
  392. package/dist/internal/docs-site.js +30 -45
  393. package/dist/internal/duration.js +1 -1
  394. package/dist/internal/env-file.js +48 -64
  395. package/dist/internal/eval-judge-model.js +17 -28
  396. package/dist/internal/eval-run-store.js +265 -254
  397. package/dist/internal/eval-runner.d.ts +8 -0
  398. package/dist/internal/eval-runner.d.ts.map +1 -1
  399. package/dist/internal/eval-runner.js +406 -408
  400. package/dist/internal/eval-transport.d.ts +24 -0
  401. package/dist/internal/eval-transport.d.ts.map +1 -0
  402. package/dist/internal/eval-transport.js +22 -0
  403. package/dist/internal/evals-client.js +242 -246
  404. package/dist/internal/event-log.js +72 -120
  405. package/dist/internal/event-mapper.js +30 -31
  406. package/dist/internal/factory-resource-channel.js +16 -30
  407. package/dist/internal/filesystem/errors.js +6 -6
  408. package/dist/internal/filesystem/format.js +10 -13
  409. package/dist/internal/filesystem/merge.js +52 -94
  410. package/dist/internal/filesystem/nearest.js +15 -27
  411. package/dist/internal/filesystem/scratch.js +65 -85
  412. package/dist/internal/filesystem/tools.js +221 -241
  413. package/dist/internal/filesystem/walk.js +76 -143
  414. package/dist/internal/framework-file-storage.js +118 -139
  415. package/dist/internal/framework-storage-selection.js +21 -13
  416. package/dist/internal/frontmatter.js +4 -6
  417. package/dist/internal/github-fanout.js +50 -64
  418. package/dist/internal/guest-network.js +96 -109
  419. package/dist/internal/handleAgentServeTrigger.js +121 -126
  420. package/dist/internal/host-files.js +73 -88
  421. package/dist/internal/host-kv.js +21 -36
  422. package/dist/internal/host-otel.js +22 -19
  423. package/dist/internal/host-platforms.js +49 -63
  424. package/dist/internal/hosted-catch-protocol.d.ts +1 -0
  425. package/dist/internal/hosted-catch-protocol.d.ts.map +1 -1
  426. package/dist/internal/hosted-catch-protocol.js +1 -0
  427. package/dist/internal/hosted-catch.d.ts +5 -3
  428. package/dist/internal/hosted-catch.d.ts.map +1 -1
  429. package/dist/internal/hosted-catch.js +84 -93
  430. package/dist/internal/hosted-delivery-protocol.js +32 -8
  431. package/dist/internal/hosted-delivery.d.ts +13 -1
  432. package/dist/internal/hosted-delivery.d.ts.map +1 -1
  433. package/dist/internal/hosted-delivery.js +614 -584
  434. package/dist/internal/hosted-eval-cases.d.ts +21 -0
  435. package/dist/internal/hosted-eval-cases.d.ts.map +1 -0
  436. package/dist/internal/hosted-eval-cases.js +162 -0
  437. package/dist/internal/hosted-execution-diag.js +38 -30
  438. package/dist/internal/hosted-execution-flush.js +75 -66
  439. package/dist/internal/hosted-execution-latency.js +16 -8
  440. package/dist/internal/hosted-managed-automation.js +2 -2
  441. package/dist/internal/hosting.js +2 -3
  442. package/dist/internal/http-channel-define.js +4 -1
  443. package/dist/internal/http-channel.js +101 -112
  444. package/dist/internal/http-control-plane-session.d.ts +18 -1
  445. package/dist/internal/http-control-plane-session.d.ts.map +1 -1
  446. package/dist/internal/http-control-plane-session.js +66 -32
  447. package/dist/internal/incoming-headers-to-fetch.js +1 -2
  448. package/dist/internal/init-interview.js +73 -93
  449. package/dist/internal/init-project.js +182 -214
  450. package/dist/internal/init-scaffold.js +10 -21
  451. package/dist/internal/inline-stdio-mcp.js +80 -86
  452. package/dist/internal/install-cursor-skills.js +231 -273
  453. package/dist/internal/legacy-command-guard.js +18 -31
  454. package/dist/internal/listen-port.js +34 -45
  455. package/dist/internal/local-control-plane.js +293 -307
  456. package/dist/internal/local-env.js +1 -1
  457. package/dist/internal/local-ingress.js +15 -9
  458. package/dist/internal/log-ring.js +1 -2
  459. package/dist/internal/logs-client.js +207 -227
  460. package/dist/internal/map-pool.js +24 -38
  461. package/dist/internal/mcp-endpoint.js +204 -180
  462. package/dist/internal/mcp-host.js +165 -168
  463. package/dist/internal/mcp-oauth-on-demand.js +170 -207
  464. package/dist/internal/mcp-oauth-persist.js +15 -29
  465. package/dist/internal/mcp-oauth.js +209 -266
  466. package/dist/internal/named-webhook-secret.d.ts +39 -0
  467. package/dist/internal/named-webhook-secret.d.ts.map +1 -0
  468. package/dist/internal/named-webhook-secret.js +47 -0
  469. package/dist/internal/open-browser.js +2 -3
  470. package/dist/internal/otel/collector.js +104 -68
  471. package/dist/internal/otel/config.js +24 -37
  472. package/dist/internal/otel/http.js +5 -7
  473. package/dist/internal/otel/mcp.js +3 -12
  474. package/dist/internal/otel/runtime.js +69 -83
  475. package/dist/internal/package-inline-stdio.js +57 -65
  476. package/dist/internal/peer-connections.js +9 -5
  477. package/dist/internal/platform-schedule-sync.js +39 -54
  478. package/dist/internal/platform-timers.js +176 -210
  479. package/dist/internal/playground/static.js +1 -2
  480. package/dist/internal/playground/toolchain.js +37 -53
  481. package/dist/internal/playground-proxy.js +230 -270
  482. package/dist/internal/process-memory-telemetry.js +33 -51
  483. package/dist/internal/prompt-context.js +3 -6
  484. package/dist/internal/reminder-control-plane-protocol.js +46 -13
  485. package/dist/internal/reminder-runner.js +770 -785
  486. package/dist/internal/reminder-schedule.js +1 -1
  487. package/dist/internal/reminder-store.js +57 -78
  488. package/dist/internal/request-error-status.js +1 -3
  489. package/dist/internal/request-headers.js +2 -2
  490. package/dist/internal/resolve-prod-target.js +119 -135
  491. package/dist/internal/resolved-connections.js +16 -6
  492. package/dist/internal/run-client.js +221 -229
  493. package/dist/internal/runtime-dispatch-runner.js +18 -43
  494. package/dist/internal/schedule-runner.js +49 -58
  495. package/dist/internal/scm/pr-url.js +7 -6
  496. package/dist/internal/sdk-runner.js +388 -363
  497. package/dist/internal/serve-restart.js +26 -39
  498. package/dist/internal/server.d.ts.map +1 -1
  499. package/dist/internal/server.js +1283 -1244
  500. package/dist/internal/session-cost.js +7 -9
  501. package/dist/internal/session-engine.d.ts +3 -1
  502. package/dist/internal/session-engine.d.ts.map +1 -1
  503. package/dist/internal/session-engine.js +2801 -2777
  504. package/dist/internal/session-links.js +12 -16
  505. package/dist/internal/session-run-log.js +134 -82
  506. package/dist/internal/session-store.js +133 -164
  507. package/dist/internal/sessions-client.js +97 -118
  508. package/dist/internal/skill-catalog.js +18 -23
  509. package/dist/internal/skills-sync.js +16 -30
  510. package/dist/internal/slack-provision-client.js +90 -116
  511. package/dist/internal/start-log-store.js +48 -67
  512. package/dist/internal/steering.js +1 -2
  513. package/dist/internal/storage-coordinator.js +160 -196
  514. package/dist/internal/store-mirror.js +16 -30
  515. package/dist/internal/stream-progress.js +6 -8
  516. package/dist/internal/terminal-style.js +3 -4
  517. package/dist/internal/testing/scm-continuation-fixtures.js +6 -2
  518. package/dist/internal/testing/slack-continuation-fixtures.d.ts +26 -0
  519. package/dist/internal/testing/slack-continuation-fixtures.d.ts.map +1 -0
  520. package/dist/internal/testing/slack-continuation-fixtures.js +136 -0
  521. package/dist/internal/tool-catalog.js +11 -5
  522. package/dist/internal/tool-result.js +1 -1
  523. package/dist/internal/trajectory.js +19 -22
  524. package/dist/internal/turn-cost.js +52 -62
  525. package/dist/internal/turn-governor.js +5 -8
  526. package/dist/internal/turn-lease-store.js +85 -105
  527. package/dist/internal/turn-outbox.js +28 -43
  528. package/dist/internal/update-check.js +231 -259
  529. package/dist/internal/v2-hosting.js +1 -2
  530. package/dist/internal/workspace-sync.js +25 -41
  531. package/dist/internal/workspace.js +111 -139
  532. package/dist/kv/memory-kv.js +27 -51
  533. package/dist/memory.js +106 -148
  534. package/dist/otel.js +5 -8
  535. package/dist/playground/assets/index-DXm_VXAQ.css +1 -0
  536. package/dist/playground/assets/{index-Co4CUVTQ.js → index-JekUQERK.js} +45 -45
  537. package/dist/playground/index.html +2 -2
  538. package/dist/prompt.js +2 -4
  539. package/dist/storage-backends/cursor-hosted-v2.js +53 -83
  540. package/dist/storage-backends/cursor-hosted.js +105 -145
  541. package/dist/storage-backends/file-kv.js +100 -128
  542. package/dist/storage-protocol.js +3 -5
  543. package/dist/storage.js +17 -26
  544. package/dist/types.d.ts +68 -0
  545. package/dist/types.d.ts.map +1 -1
  546. package/dist/types.js +20 -18
  547. package/docs/building-with-agents.md +2 -0
  548. package/docs/deployment.md +7 -0
  549. package/docs/guides/bitbucket.md +9 -1
  550. package/docs/guides/github.md +20 -4
  551. package/docs/guides/gitlab.md +9 -1
  552. package/docs/guides/migrate.md +127 -0
  553. package/docs/reference/cli.md +39 -0
  554. package/docs/troubleshooting.md +1 -0
  555. package/package.json +1 -1
  556. package/skills/debug/SKILL.md +1 -0
  557. package/skills/github/SKILL.md +23 -0
  558. package/skills/migrate-v2/SKILL.md +51 -10
  559. package/dist/docs/assets/chunks/@localSearchIndexroot.BJ8UZggu.js +0 -1
  560. package/dist/docs/assets/chunks/channel.BTJ5J9FI.js +0 -1
  561. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.D4BZ3cVV.js +0 -1
  562. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.D4BZ3cVV.js +0 -1
  563. package/dist/docs/assets/chunks/clone.62tX-O-1.js +0 -1
  564. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.DkTs1aEU.js +0 -1
  565. package/dist/docs/assets/reference_cli.md.GwugN3n-.lean.js +0 -1
  566. package/dist/docs/assets/troubleshooting.md.Bscj6ODe.js +0 -1
  567. package/dist/playground/assets/index-C1g_PTTZ.css +0 -1
  568. /package/dist/docs/assets/{building-with-agents.md.BPjPFxFg.lean.js → building-with-agents.md.Df87rAe1.lean.js} +0 -0
  569. /package/dist/docs/assets/{deployment.md.BdqTiGdc.lean.js → deployment.md.BYuEcDBv.lean.js} +0 -0
  570. /package/dist/docs/assets/{reference_skills.md.ClkMoQsV.lean.js → reference_skills.md.C0guGcH0.lean.js} +0 -0
@@ -5,7 +5,9 @@
5
5
  * import { bitbucketChannel, defaultBitbucketAuth } from "@cursor/bdk/channels/bitbucket";
6
6
  *
7
7
  * export default bitbucketChannel({
8
- * webhookSecret: () => process.env.BITBUCKET_WEBHOOK_SECRET,
8
+ * // Named, not read: locally `process.env.BITBUCKET_WEBHOOK_SECRET`; hosted,
9
+ * // the deployment secret, which the control plane checks at ingestion.
10
+ * webhookSecret: { secretName: "BITBUCKET_WEBHOOK_SECRET" },
9
11
  * onPullRequest: (ctx) => ({ auth: defaultBitbucketAuth(ctx) }),
10
12
  * onPullRequestComment: (ctx) => ({ auth: defaultBitbucketAuth(ctx) }),
11
13
  * });
@@ -17,7 +19,9 @@
17
19
  * are normalized to the Cloud vocabulary (`pullrequest:created`) before
18
20
  * hooks run, and payload fields from either dialect land on one shape.
19
21
  * Hosted deployments receive deliveries the Cursor backend already verified
20
- * and normalized. The turn principal is `bitbucket-webhook` plus the
22
+ * and normalized: a named `webhookSecret` lets the control plane verify
23
+ * `X-Hub-Signature` before any compute starts (architecture `v2` requires
24
+ * that form) and the handler verifies it again on replay. The turn principal is `bitbucket-webhook` plus the
21
25
  * Bitbucket actor — not the Cursor subscriber.
22
26
  */
23
27
  export * from "./api.js";
@@ -77,20 +77,21 @@ function str(value) {
77
77
  }
78
78
  /** PR author from the raw REST record (Cloud `author`, DC `author.user`). */
79
79
  function actorFromPullRequest(raw) {
80
- var _a, _b, _c, _d, _e, _f, _g;
81
80
  const record = asRecord(raw);
82
- const author = asRecord(record === null || record === void 0 ? void 0 : record.author);
83
- const user = (_a = asRecord(author === null || author === void 0 ? void 0 : author.user)) !== null && _a !== void 0 ? _a : author;
81
+ const author = asRecord(record?.author);
82
+ const user = asRecord(author?.user) ?? author;
84
83
  if (user === undefined) {
85
84
  return FALLBACK_ACTOR;
86
85
  }
87
- const id = (_c = (_b = str(user.uuid)) !== null && _b !== void 0 ? _b : str(user.account_id)) !== null && _c !== void 0 ? _c : (typeof user.id === "number" ? String(user.id) : undefined);
88
- const username = (_e = (_d = str(user.nickname)) !== null && _d !== void 0 ? _d : str(user.name)) !== null && _e !== void 0 ? _e : str(user.slug);
89
- const displayName = (_f = str(user.display_name)) !== null && _f !== void 0 ? _f : str(user.displayName);
86
+ const id = str(user.uuid) ??
87
+ str(user.account_id) ??
88
+ (typeof user.id === "number" ? String(user.id) : undefined);
89
+ const username = str(user.nickname) ?? str(user.name) ?? str(user.slug);
90
+ const displayName = str(user.display_name) ?? str(user.displayName);
90
91
  return {
91
- id: id !== null && id !== void 0 ? id : FALLBACK_ACTOR.id,
92
- username: username !== null && username !== void 0 ? username : FALLBACK_ACTOR.username,
93
- displayName: (_g = displayName !== null && displayName !== void 0 ? displayName : username) !== null && _g !== void 0 ? _g : FALLBACK_ACTOR.displayName,
92
+ id: id ?? FALLBACK_ACTOR.id,
93
+ username: username ?? FALLBACK_ACTOR.username,
94
+ displayName: displayName ?? username ?? FALLBACK_ACTOR.displayName,
94
95
  };
95
96
  }
96
97
  function cloudActor(actor) {
@@ -111,74 +112,82 @@ function dcActor(actor) {
111
112
  };
112
113
  }
113
114
  function cloudRepository(repository) {
114
- var _a;
115
- return Object.assign(Object.assign({ type: "repository", full_name: repository.fullName, name: repository.slug }, (repository.uuid === undefined ? {} : { uuid: repository.uuid })), { links: {
115
+ return {
116
+ type: "repository",
117
+ full_name: repository.fullName,
118
+ name: repository.slug,
119
+ ...(repository.uuid === undefined ? {} : { uuid: repository.uuid }),
120
+ links: {
116
121
  html: {
117
- href: (_a = repository.htmlUrl) !== null && _a !== void 0 ? _a : `https://bitbucket.org/${repository.fullName}`,
122
+ href: repository.htmlUrl ?? `https://bitbucket.org/${repository.fullName}`,
118
123
  },
119
- } });
124
+ },
125
+ };
120
126
  }
121
127
  function dcRepository(repository) {
122
- return Object.assign(Object.assign(Object.assign({ slug: repository.slug }, (repository.id === undefined ? {} : { id: repository.id })), { name: repository.slug, project: { key: repository.owner } }), (repository.htmlUrl === undefined
123
- ? {}
124
- : { links: { self: [{ href: `${repository.htmlUrl}/browse` }] } }));
128
+ return {
129
+ slug: repository.slug,
130
+ ...(repository.id === undefined ? {} : { id: repository.id }),
131
+ name: repository.slug,
132
+ project: { key: repository.owner },
133
+ ...(repository.htmlUrl === undefined
134
+ ? {}
135
+ : { links: { self: [{ href: `${repository.htmlUrl}/browse` }] } }),
136
+ };
125
137
  }
126
138
  function cloudPullRequest(pullRequest, actor, url) {
127
- var _a, _b, _c, _d, _e, _f, _g, _h;
128
139
  return {
129
140
  id: pullRequest.id,
130
- title: (_a = pullRequest.title) !== null && _a !== void 0 ? _a : "",
131
- description: (_b = pullRequest.description) !== null && _b !== void 0 ? _b : "",
132
- state: (_c = pullRequest.state) !== null && _c !== void 0 ? _c : "OPEN",
141
+ title: pullRequest.title ?? "",
142
+ description: pullRequest.description ?? "",
143
+ state: pullRequest.state ?? "OPEN",
133
144
  author: cloudActor(actor),
134
145
  source: {
135
- branch: { name: (_d = pullRequest.sourceBranch) !== null && _d !== void 0 ? _d : "" },
136
- commit: { hash: (_e = pullRequest.headSha) !== null && _e !== void 0 ? _e : ZERO_SHA },
146
+ branch: { name: pullRequest.sourceBranch ?? "" },
147
+ commit: { hash: pullRequest.headSha ?? ZERO_SHA },
137
148
  },
138
149
  destination: {
139
- branch: { name: (_f = pullRequest.targetBranch) !== null && _f !== void 0 ? _f : "" },
140
- commit: { hash: (_g = pullRequest.baseSha) !== null && _g !== void 0 ? _g : ZERO_SHA },
150
+ branch: { name: pullRequest.targetBranch ?? "" },
151
+ commit: { hash: pullRequest.baseSha ?? ZERO_SHA },
141
152
  },
142
- links: { html: { href: (_h = pullRequest.htmlUrl) !== null && _h !== void 0 ? _h : url } },
153
+ links: { html: { href: pullRequest.htmlUrl ?? url } },
143
154
  };
144
155
  }
145
156
  function dcPullRequest(pullRequest, repository, actor, url) {
146
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
147
157
  const repo = dcRepository(repository);
148
158
  return {
149
159
  id: pullRequest.id,
150
- title: (_a = pullRequest.title) !== null && _a !== void 0 ? _a : "",
151
- description: (_b = pullRequest.description) !== null && _b !== void 0 ? _b : "",
152
- state: (_c = pullRequest.state) !== null && _c !== void 0 ? _c : "OPEN",
160
+ title: pullRequest.title ?? "",
161
+ description: pullRequest.description ?? "",
162
+ state: pullRequest.state ?? "OPEN",
153
163
  author: { user: dcActor(actor), role: "AUTHOR", approved: false },
154
164
  fromRef: {
155
- id: `refs/heads/${(_d = pullRequest.sourceBranch) !== null && _d !== void 0 ? _d : ""}`,
156
- displayId: (_e = pullRequest.sourceBranch) !== null && _e !== void 0 ? _e : "",
157
- latestCommit: (_f = pullRequest.headSha) !== null && _f !== void 0 ? _f : ZERO_SHA,
165
+ id: `refs/heads/${pullRequest.sourceBranch ?? ""}`,
166
+ displayId: pullRequest.sourceBranch ?? "",
167
+ latestCommit: pullRequest.headSha ?? ZERO_SHA,
158
168
  repository: repo,
159
169
  },
160
170
  toRef: {
161
- id: `refs/heads/${(_g = pullRequest.targetBranch) !== null && _g !== void 0 ? _g : ""}`,
162
- displayId: (_h = pullRequest.targetBranch) !== null && _h !== void 0 ? _h : "",
163
- latestCommit: (_j = pullRequest.baseSha) !== null && _j !== void 0 ? _j : ZERO_SHA,
171
+ id: `refs/heads/${pullRequest.targetBranch ?? ""}`,
172
+ displayId: pullRequest.targetBranch ?? "",
173
+ latestCommit: pullRequest.baseSha ?? ZERO_SHA,
164
174
  repository: repo,
165
175
  },
166
- links: { self: [{ href: (_k = pullRequest.htmlUrl) !== null && _k !== void 0 ? _k : url }] },
176
+ links: { self: [{ href: pullRequest.htmlUrl ?? url }] },
167
177
  };
168
178
  }
169
179
  /** Build one Bitbucket-shaped payload for `event` in the ref's dialect. */
170
180
  export function synthesizeBitbucketEvent(input) {
171
- var _a, _b, _c, _d, _e, _f, _g, _h;
172
181
  const event = normalizeBitbucketEventKey(input.event);
173
182
  if (!isBitbucketSynthesizableEvent(event)) {
174
183
  return { error: `cannot synthesize ${input.event}` };
175
184
  }
176
185
  const { ref, pullRequest } = input;
177
186
  const actor = actorFromPullRequest(pullRequest.raw);
178
- const headSha = (_a = pullRequest.headSha) !== null && _a !== void 0 ? _a : ZERO_SHA;
179
- const baseSha = (_b = pullRequest.baseSha) !== null && _b !== void 0 ? _b : ZERO_SHA;
180
- const comment = (_c = input.comment) !== null && _c !== void 0 ? _c : "@cursor please take a look";
181
- const commentId = Date.now() % 1000000000;
187
+ const headSha = pullRequest.headSha ?? ZERO_SHA;
188
+ const baseSha = pullRequest.baseSha ?? ZERO_SHA;
189
+ const comment = input.comment ?? "@cursor please take a look";
190
+ const commentId = Date.now() % 1_000_000_000;
182
191
  if (ref.dialect === "cloud") {
183
192
  const base = {
184
193
  repository: cloudRepository(ref.repository),
@@ -191,39 +200,46 @@ export function synthesizeBitbucketEvent(input) {
191
200
  return {
192
201
  eventType: event,
193
202
  header: event,
194
- payload: Object.assign(Object.assign({}, base), { pullrequest }),
203
+ payload: { ...base, pullrequest },
195
204
  };
196
205
  case "pullrequest:comment_created":
197
206
  return {
198
207
  eventType: event,
199
208
  header: event,
200
- payload: Object.assign(Object.assign({}, base), { pullrequest, comment: {
209
+ payload: {
210
+ ...base,
211
+ pullrequest,
212
+ comment: {
201
213
  id: commentId,
202
214
  content: { raw: comment },
203
215
  user: cloudActor(actor),
204
216
  links: { html: { href: `${ref.url}#comment-${commentId}` } },
205
- } }),
217
+ },
218
+ },
206
219
  };
207
220
  case "repo:push":
208
221
  return {
209
222
  eventType: event,
210
223
  header: event,
211
- payload: Object.assign(Object.assign({}, base), { push: {
224
+ payload: {
225
+ ...base,
226
+ push: {
212
227
  changes: [
213
228
  {
214
229
  new: {
215
230
  type: "branch",
216
- name: (_d = pullRequest.sourceBranch) !== null && _d !== void 0 ? _d : "",
231
+ name: pullRequest.sourceBranch ?? "",
217
232
  target: { hash: headSha },
218
233
  },
219
234
  old: {
220
235
  type: "branch",
221
- name: (_e = pullRequest.sourceBranch) !== null && _e !== void 0 ? _e : "",
236
+ name: pullRequest.sourceBranch ?? "",
222
237
  target: { hash: baseSha },
223
238
  },
224
239
  },
225
240
  ],
226
- } }),
241
+ },
242
+ },
227
243
  };
228
244
  }
229
245
  }
@@ -239,7 +255,7 @@ export function synthesizeBitbucketEvent(input) {
239
255
  return {
240
256
  eventType: event,
241
257
  header,
242
- payload: Object.assign(Object.assign({}, base), { pullRequest: dcPr }),
258
+ payload: { ...base, pullRequest: dcPr },
243
259
  };
244
260
  case "pullrequest:updated":
245
261
  // `pr:from_ref_updated` carries the previous head; the default dispatch
@@ -247,31 +263,39 @@ export function synthesizeBitbucketEvent(input) {
247
263
  return {
248
264
  eventType: event,
249
265
  header,
250
- payload: Object.assign(Object.assign({}, base), { pullRequest: dcPr, previousFromHash: baseSha }),
266
+ payload: { ...base, pullRequest: dcPr, previousFromHash: baseSha },
251
267
  };
252
268
  case "pullrequest:comment_created":
253
269
  return {
254
270
  eventType: event,
255
271
  header,
256
- payload: Object.assign(Object.assign({}, base), { pullRequest: dcPr, comment: { id: commentId, text: comment, author: dcActor(actor) } }),
272
+ payload: {
273
+ ...base,
274
+ pullRequest: dcPr,
275
+ comment: { id: commentId, text: comment, author: dcActor(actor) },
276
+ },
257
277
  };
258
278
  case "repo:push":
259
279
  return {
260
280
  eventType: event,
261
281
  header,
262
- payload: Object.assign(Object.assign({}, base), { repository: dcRepository(ref.repository), changes: [
282
+ payload: {
283
+ ...base,
284
+ repository: dcRepository(ref.repository),
285
+ changes: [
263
286
  {
264
287
  ref: {
265
- id: `refs/heads/${(_f = pullRequest.sourceBranch) !== null && _f !== void 0 ? _f : ""}`,
266
- displayId: (_g = pullRequest.sourceBranch) !== null && _g !== void 0 ? _g : "",
288
+ id: `refs/heads/${pullRequest.sourceBranch ?? ""}`,
289
+ displayId: pullRequest.sourceBranch ?? "",
267
290
  type: "BRANCH",
268
291
  },
269
- refId: `refs/heads/${(_h = pullRequest.sourceBranch) !== null && _h !== void 0 ? _h : ""}`,
292
+ refId: `refs/heads/${pullRequest.sourceBranch ?? ""}`,
270
293
  fromHash: baseSha,
271
294
  toHash: headSha,
272
295
  type: "UPDATE",
273
296
  },
274
- ] }),
297
+ ],
298
+ },
275
299
  };
276
300
  }
277
301
  }
@@ -4,18 +4,27 @@
4
4
  * re-parsing the webhook.
5
5
  */
6
6
  export function emptyBitbucketChannelState(overrides = {}) {
7
- return Object.assign({ dialect: null, repoFullName: "", repoUuid: null, pullRequestId: null, headSha: null, triggeringCommentId: null, deliveryId: null, eventType: null }, overrides);
7
+ return {
8
+ dialect: null,
9
+ repoFullName: "",
10
+ repoUuid: null,
11
+ pullRequestId: null,
12
+ headSha: null,
13
+ triggeringCommentId: null,
14
+ deliveryId: null,
15
+ eventType: null,
16
+ ...overrides,
17
+ };
8
18
  }
9
19
  export function bitbucketChannelStateForEvent(input) {
10
- var _a, _b, _c, _d, _e;
11
20
  return emptyBitbucketChannelState({
12
21
  dialect: input.repository.dialect,
13
22
  repoFullName: input.repository.fullName,
14
- repoUuid: (_a = input.repository.uuid) !== null && _a !== void 0 ? _a : null,
15
- pullRequestId: (_b = input.pullRequestId) !== null && _b !== void 0 ? _b : null,
16
- headSha: (_c = input.headSha) !== null && _c !== void 0 ? _c : null,
17
- triggeringCommentId: (_d = input.triggeringCommentId) !== null && _d !== void 0 ? _d : null,
18
- deliveryId: (_e = input.deliveryId) !== null && _e !== void 0 ? _e : null,
23
+ repoUuid: input.repository.uuid ?? null,
24
+ pullRequestId: input.pullRequestId ?? null,
25
+ headSha: input.headSha ?? null,
26
+ triggeringCommentId: input.triggeringCommentId ?? null,
27
+ deliveryId: input.deliveryId ?? null,
19
28
  eventType: input.eventType,
20
29
  });
21
30
  }
@@ -1,5 +1,5 @@
1
1
  import type { ContinuationIdentity } from "../../internal/continuation-identity.js";
2
- import type { AgentCloudOptions, ArtifactsApi, AuthContext, AuthPolicy, ChannelEventHandlers, ChannelStartArgs, HostContext, SendMessageFn } from "../../types.js";
2
+ import type { AgentCloudOptions, ArtifactsApi, AuthContext, AuthPolicy, ChannelEventHandlers, ChannelStartArgs, HostContext, SecretRef, SendMessageFn } from "../../types.js";
3
3
  import type { BitbucketTokenProvider } from "./api.js";
4
4
  import type { BitbucketHandle } from "./binding.js";
5
5
  import type { BitbucketChannelState } from "./state.js";
@@ -173,8 +173,17 @@ export interface BitbucketChannelOptions {
173
173
  * `BITBUCKET_WEBHOOK_SECRET`. With a secret set the HMAC is the request
174
174
  * auth; without one production stays loopback-strict and `serve --dev`
175
175
  * admits unsigned loopback deliveries.
176
+ *
177
+ * Prefer the named form, `{ secretName: "BITBUCKET_WEBHOOK_SECRET" }`:
178
+ * locally it reads that env var; on Cursor hosting `deploy` writes the
179
+ * name into the manifest and the control plane verifies the signature
180
+ * with the deployment secret at ingestion — before any compute starts —
181
+ * answering a bad delivery with 401 instead of 202. The handler verifies
182
+ * it again on replay. Architecture `v2` rejects a literal or getter
183
+ * value: that secret never reaches the manifest, so it is only checkable
184
+ * inside the guest.
176
185
  */
177
- webhookSecret?: string | (() => string | undefined);
186
+ webhookSecret?: string | SecretRef | (() => string | undefined);
178
187
  /**
179
188
  * Optional repo allowlist (`workspace/repo` / `PROJECT/repo`,
180
189
  * case-insensitive). Events from other repos are acked without a turn.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/types.ts"],"names":[],"mappings":"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"}
@@ -28,45 +28,32 @@
28
28
  * with extras widens it through the generic parameter (e.g. Origin's
29
29
  * `CiCheck<CiCheckConclusion | "stale">`).
30
30
  */
31
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
32
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
33
- return new (P || (P = Promise))(function (resolve, reject) {
34
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
35
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
36
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
37
- step((generator = generator.apply(thisArg, _arguments || [])).next());
38
- });
39
- };
40
31
  /**
41
32
  * Open a check run through `writer` and return a handle for later updates.
42
33
  * SCM modules wrap this (`createGitHubCheck`, `createOriginCheck`); channels
43
34
  * expose it repo-bound as `ctx.github.createCheck` / `ctx.origin.createCheck`.
44
35
  */
45
- export function openCiCheck(writer, input) {
46
- return __awaiter(this, void 0, void 0, function* () {
47
- var _a;
48
- const ref = yield writer({
49
- status: (_a = input === null || input === void 0 ? void 0 : input.status) !== null && _a !== void 0 ? _a : "in_progress",
50
- startedAt: new Date().toISOString(),
51
- detailsUrl: input === null || input === void 0 ? void 0 : input.detailsUrl,
52
- output: input === null || input === void 0 ? void 0 : input.output,
53
- });
54
- return resumeCiCheck(writer, ref);
36
+ export async function openCiCheck(writer, input) {
37
+ const ref = await writer({
38
+ status: input?.status ?? "in_progress",
39
+ startedAt: new Date().toISOString(),
40
+ detailsUrl: input?.detailsUrl,
41
+ output: input?.output,
55
42
  });
43
+ return resumeCiCheck(writer, ref);
56
44
  }
57
45
  /**
58
46
  * Rebuild a {@link CiCheck} handle around an existing run (e.g. after a
59
47
  * process restart). No write happens until the first update.
60
48
  */
61
49
  export function resumeCiCheck(writer, ref) {
62
- let id = ref === null || ref === void 0 ? void 0 : ref.id;
63
- let url = ref === null || ref === void 0 ? void 0 : ref.url;
64
- const write = (write) => __awaiter(this, void 0, void 0, function* () {
65
- var _a, _b;
66
- const next = yield writer(write);
67
- id = (_a = next === null || next === void 0 ? void 0 : next.id) !== null && _a !== void 0 ? _a : id;
68
- url = (_b = next === null || next === void 0 ? void 0 : next.url) !== null && _b !== void 0 ? _b : url;
69
- });
50
+ let id = ref?.id;
51
+ let url = ref?.url;
52
+ const write = async (write) => {
53
+ const next = await writer(write);
54
+ id = next?.id ?? id;
55
+ url = next?.url ?? url;
56
+ };
70
57
  return {
71
58
  get id() {
72
59
  return id;
@@ -74,7 +61,10 @@ export function resumeCiCheck(writer, ref) {
74
61
  get url() {
75
62
  return url;
76
63
  },
77
- update: update => write(Object.assign(Object.assign({}, update), { completedAt: update.status === "completed" ? new Date().toISOString() : undefined })),
64
+ update: update => write({
65
+ ...update,
66
+ completedAt: update.status === "completed" ? new Date().toISOString() : undefined,
67
+ }),
78
68
  conclude: conclude => write({
79
69
  status: "completed",
80
70
  conclusion: conclude.conclusion,
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { z } from "zod";
11
2
  import { defineChannel, localDevStrict, POST } from "../../channels.js";
12
3
  import { skipped, tagOutcome } from "../../internal/channel-dispatch.js";
@@ -70,18 +61,16 @@ export function deriveDeploymentEventTypes(options) {
70
61
  * serve host's relay fan-out, and the hosted-admission adapter. Whether the
71
62
  * event matches this channel's subscriptions is the caller's decision.
72
63
  */
73
- export function dispatchDeploymentEvent(input) {
74
- return __awaiter(this, void 0, void 0, function* () {
75
- yield input.options.onEvent(input.event, bindLocalIngressSend(input.args, {
76
- identity: input.options.continuation,
77
- kind: DEPLOYMENTS_CHANNEL_KIND,
78
- eventType: input.event.eventType,
79
- payload: input.event,
80
- }));
81
- // "task": authored `onEvent` ran to completion without a captured send.
82
- // Hosted admission only consults this when no send was captured.
83
- return tagOutcome(Response.json({ ok: true }), "task");
84
- });
64
+ export async function dispatchDeploymentEvent(input) {
65
+ await input.options.onEvent(input.event, bindLocalIngressSend(input.args, {
66
+ identity: input.options.continuation,
67
+ kind: DEPLOYMENTS_CHANNEL_KIND,
68
+ eventType: input.event.eventType,
69
+ payload: input.event,
70
+ }));
71
+ // "task": authored `onEvent` ran to completion without a captured send.
72
+ // Hosted admission only consults this when no send was captured.
73
+ return tagOutcome(Response.json({ ok: true }), "task");
85
74
  }
86
75
  /**
87
76
  * Whether this channel admits the event on a hosted pod. The hosted
@@ -150,28 +139,31 @@ export function deploymentEventMatchesChannel(options, event) {
150
139
  * POST an event body and it runs the same `onEvent`.
151
140
  */
152
141
  export function deploymentsChannel(options) {
153
- var _a, _b;
154
142
  // Throws here rather than at startup, so a malformed `deploySourceUris`
155
143
  // entry fails when the channel module is authored instead of when the host
156
144
  // mounts it.
157
145
  resolveDeploymentSubscriptions(options);
158
- const routePath = (_a = options.path) !== null && _a !== void 0 ? _a : "/";
159
- const definition = defineChannel(Object.assign(Object.assign(Object.assign({ auth: (_b = options.auth) !== null && _b !== void 0 ? _b : [localDevStrict()], meta: {
146
+ const routePath = options.path ?? "/";
147
+ const definition = defineChannel({
148
+ auth: options.auth ?? [localDevStrict()],
149
+ meta: {
160
150
  kind: DEPLOYMENTS_CHANNEL_KIND,
161
151
  deploymentEventTypes: deriveDeploymentEventTypes(options),
162
- } }, (options.onStart === undefined ? {} : { onStart: options.onStart })), (options.onStop === undefined ? {} : { onStop: options.onStop })), { routes: [
152
+ },
153
+ ...(options.onStart === undefined ? {} : { onStart: options.onStart }),
154
+ ...(options.onStop === undefined ? {} : { onStop: options.onStop }),
155
+ routes: [
163
156
  POST(routePath, {
164
157
  description: "Replay one deployment event onto this channel",
165
158
  bodySchema: deploymentEventSchema,
166
- handler: (_request, args) => __awaiter(this, void 0, void 0, function* () {
167
- return dispatchDeploymentEvent({
168
- options,
169
- event: args.body,
170
- args,
171
- });
159
+ handler: async (_request, args) => dispatchDeploymentEvent({
160
+ options,
161
+ event: args.body,
162
+ args,
172
163
  }),
173
164
  }),
174
- ] }));
165
+ ],
166
+ });
175
167
  deploymentsChannelOptionsByDefinition.set(definition, options);
176
168
  // Hosted v2 delivery: the control plane admits a deployments mailbox item
177
169
  // (deploy_source edge match) and posts the claim-checked factory envelope
@@ -180,7 +172,7 @@ export function deploymentsChannel(options) {
180
172
  // code runs — the same pre-`onEvent` filter the v1 relay applies.
181
173
  attachHostedAdmissionAdapter(definition, {
182
174
  kind: DEPLOYMENTS_CHANNEL_KIND,
183
- dispatch: (_a) => __awaiter(this, [_a], void 0, function* ({ payload, args }) {
175
+ dispatch: async ({ payload, args }) => {
184
176
  const parsed = deploymentEventSchema.safeParse(payload);
185
177
  if (!parsed.success) {
186
178
  return Response.json({ ok: false, error: "invalid_deployment_event" }, { status: 400 });
@@ -190,7 +182,7 @@ export function deploymentsChannel(options) {
190
182
  return skipped("subscription_mismatch");
191
183
  }
192
184
  return dispatchDeploymentEvent({ options, event, args });
193
- }),
185
+ },
194
186
  });
195
187
  return definition;
196
188
  }