@cursor/bdk 0.2.21 → 0.2.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/dist/channels/github/api.d.ts.map +1 -1
  2. package/dist/channels/github/api.js +47 -0
  3. package/dist/channels/slack/api.d.ts.map +1 -1
  4. package/dist/channels/slack/api.js +34 -1
  5. package/dist/channels/slack/manifest.d.ts.map +1 -1
  6. package/dist/channels/slack/manifest.js +10 -5
  7. package/dist/channels/slack/types.d.ts +7 -0
  8. package/dist/channels/slack/types.d.ts.map +1 -1
  9. package/dist/docs/404.html +2 -2
  10. package/dist/docs/assets/{app.C0diulDR.js → app.AXQcJZaf.js} +4 -4
  11. package/dist/docs/assets/chunks/@localSearchIndexroot.B3j7LFef.js +1 -0
  12. package/dist/docs/assets/chunks/{VPLocalSearchBox.mlUwkfRQ.js → VPLocalSearchBox.hlZ2vmun.js} +1 -1
  13. package/dist/docs/assets/chunks/{arc.DM5RRfvb.js → arc.9KNWdH-l.js} +1 -1
  14. package/dist/docs/assets/chunks/{architectureDiagram-Q4EWVU46.CNHCBbQl.js → architectureDiagram-Q4EWVU46.BfGzkBHI.js} +1 -1
  15. package/dist/docs/assets/chunks/{baseUniq.25Udb_uV.js → baseUniq.Btk8-2Rs.js} +1 -1
  16. package/dist/docs/assets/chunks/{blockDiagram-DXYQGD6D.Bg-f3-qN.js → blockDiagram-DXYQGD6D.BmHm9OH5.js} +1 -1
  17. package/dist/docs/assets/chunks/{c4Diagram-AHTNJAMY.BywSQvK9.js → c4Diagram-AHTNJAMY.9POrbDHJ.js} +1 -1
  18. package/dist/docs/assets/chunks/channel.RoCpi7X1.js +1 -0
  19. package/dist/docs/assets/chunks/{chunk-4BX2VUAB.C3IdWWlO.js → chunk-4BX2VUAB.YWZVSM6S.js} +1 -1
  20. package/dist/docs/assets/chunks/{chunk-4TB4RGXK.D_t-pAXu.js → chunk-4TB4RGXK.Cxr_SFgw.js} +1 -1
  21. package/dist/docs/assets/chunks/{chunk-55IACEB6.DvlNSQE5.js → chunk-55IACEB6.DtiJyPlD.js} +1 -1
  22. package/dist/docs/assets/chunks/{chunk-EDXVE4YY.6LpTrDTf.js → chunk-EDXVE4YY.b5gNHJPH.js} +1 -1
  23. package/dist/docs/assets/chunks/{chunk-FMBD7UC4.BZxXsutI.js → chunk-FMBD7UC4.DmN9yA_M.js} +1 -1
  24. package/dist/docs/assets/chunks/{chunk-OYMX7WX6.CrtynS_e.js → chunk-OYMX7WX6.Dfm3xgV5.js} +1 -1
  25. package/dist/docs/assets/chunks/{chunk-QZHKN3VN.CUOQY0pM.js → chunk-QZHKN3VN.sXNxDcJA.js} +1 -1
  26. package/dist/docs/assets/chunks/{chunk-YZCP3GAM.Dv3biZVN.js → chunk-YZCP3GAM.DgBnDUV7.js} +1 -1
  27. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.oxdmwwqk.js +1 -0
  28. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.oxdmwwqk.js +1 -0
  29. package/dist/docs/assets/chunks/clone.BkguoIMm.js +1 -0
  30. package/dist/docs/assets/chunks/{cose-bilkent-S5V4N54A.DDzCqntx.js → cose-bilkent-S5V4N54A.D18MEcoN.js} +1 -1
  31. package/dist/docs/assets/chunks/{dagre-KV5264BT.DoiV-U_C.js → dagre-KV5264BT.CSf3tihh.js} +1 -1
  32. package/dist/docs/assets/chunks/{diagram-5BDNPKRD.LHX1aUDr.js → diagram-5BDNPKRD.cbfzAfoC.js} +1 -1
  33. package/dist/docs/assets/chunks/{diagram-G4DWMVQ6.lTnkbDQp.js → diagram-G4DWMVQ6.6i6P3uu9.js} +1 -1
  34. package/dist/docs/assets/chunks/{diagram-MMDJMWI5.CclJPnEx.js → diagram-MMDJMWI5.B9HAIfN6.js} +1 -1
  35. package/dist/docs/assets/chunks/{diagram-TYMM5635.CLmB0KKs.js → diagram-TYMM5635.B9baAjUv.js} +1 -1
  36. package/dist/docs/assets/chunks/{erDiagram-SMLLAGMA.qKkkB7iQ.js → erDiagram-SMLLAGMA.DaBmX_GN.js} +1 -1
  37. package/dist/docs/assets/chunks/{flowDiagram-DWJPFMVM.HIkXNLJ3.js → flowDiagram-DWJPFMVM.CJqQJjkb.js} +1 -1
  38. package/dist/docs/assets/chunks/{ganttDiagram-T4ZO3ILL.YN9lDgHe.js → ganttDiagram-T4ZO3ILL.CIXBLQhC.js} +1 -1
  39. package/dist/docs/assets/chunks/{gitGraphDiagram-UUTBAWPF.CL6gf7f9.js → gitGraphDiagram-UUTBAWPF.CDgentto.js} +1 -1
  40. package/dist/docs/assets/chunks/{graph.DMkP70rB.js → graph.BWHn6JBQ.js} +1 -1
  41. package/dist/docs/assets/chunks/{infoDiagram-42DDH7IO.CT98u6Zd.js → infoDiagram-42DDH7IO.d9VU_ts_.js} +1 -1
  42. package/dist/docs/assets/chunks/{ishikawaDiagram-UXIWVN3A.CF88w8YD.js → ishikawaDiagram-UXIWVN3A.BNO79Prj.js} +1 -1
  43. package/dist/docs/assets/chunks/{journeyDiagram-VCZTEJTY.BoWKk6Rz.js → journeyDiagram-VCZTEJTY.CPgUTM1R.js} +1 -1
  44. package/dist/docs/assets/chunks/{kanban-definition-6JOO6SKY.CrmPv2sG.js → kanban-definition-6JOO6SKY.idl0Eoe1.js} +1 -1
  45. package/dist/docs/assets/chunks/{layout.CEiPTQln.js → layout.BY7DIMr6.js} +1 -1
  46. package/dist/docs/assets/chunks/{linear.gkXuWu8G.js → linear.DYaUDrHd.js} +1 -1
  47. package/dist/docs/assets/chunks/{min.C4EHK60v.js → min.V6MWb1UC.js} +1 -1
  48. package/dist/docs/assets/chunks/{mindmap-definition-QFDTVHPH.C-JqTP4s.js → mindmap-definition-QFDTVHPH.BRlJXuFS.js} +1 -1
  49. package/dist/docs/assets/chunks/{pieDiagram-DEJITSTG.t2HgQOCt.js → pieDiagram-DEJITSTG.BIhkDLcB.js} +1 -1
  50. package/dist/docs/assets/chunks/{quadrantDiagram-34T5L4WZ.D1k-BEKc.js → quadrantDiagram-34T5L4WZ.Bw-_VEL3.js} +1 -1
  51. package/dist/docs/assets/chunks/{requirementDiagram-MS252O5E.CUu9VVrt.js → requirementDiagram-MS252O5E.DolEGwxw.js} +1 -1
  52. package/dist/docs/assets/chunks/{sankeyDiagram-XADWPNL6.HroiBrt1.js → sankeyDiagram-XADWPNL6.hMM-8BhN.js} +1 -1
  53. package/dist/docs/assets/chunks/{sequenceDiagram-FGHM5R23.CeJapdwH.js → sequenceDiagram-FGHM5R23.Bg_CRVDy.js} +1 -1
  54. package/dist/docs/assets/chunks/{stateDiagram-FHFEXIEX.CLj6JnXZ.js → stateDiagram-FHFEXIEX.DNWdl34_.js} +1 -1
  55. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.7W-btjJ2.js +1 -0
  56. package/dist/docs/assets/chunks/{theme.B9ZHHvCq.js → theme.CBW1oolh.js} +2 -2
  57. package/dist/docs/assets/chunks/{timeline-definition-GMOUNBTQ.BzKGPAdN.js → timeline-definition-GMOUNBTQ.Cr1wJ1mB.js} +1 -1
  58. package/dist/docs/assets/chunks/{vennDiagram-DHZGUBPP.DtBNkpF9.js → vennDiagram-DHZGUBPP.BltDV9j7.js} +1 -1
  59. package/dist/docs/assets/chunks/{wardley-RL74JXVD.D_iarxve.js → wardley-RL74JXVD.BWPaUhOs.js} +1 -1
  60. package/dist/docs/assets/chunks/{wardleyDiagram-NUSXRM2D.rOXEXIA9.js → wardleyDiagram-NUSXRM2D.nsADqCCo.js} +1 -1
  61. package/dist/docs/assets/chunks/{xychartDiagram-5P7HB3ND.BrM71_SA.js → xychartDiagram-5P7HB3ND.CCwbO3dK.js} +1 -1
  62. package/dist/docs/assets/guides_migrate.md.CQlGaBKX.js +7 -0
  63. package/dist/docs/assets/{guides_migrate.md.DZBL7dqT.lean.js → guides_migrate.md.CQlGaBKX.lean.js} +1 -1
  64. package/dist/docs/assets/{reference_cli.md.Bkrsce22.js → reference_cli.md.DB7Llw3T.js} +3 -3
  65. package/dist/docs/assets/{reference_cli.md.Bkrsce22.lean.js → reference_cli.md.DB7Llw3T.lean.js} +1 -1
  66. package/dist/docs/assets/{reference_schedules.md.03Ryy9ca.js → reference_schedules.md.BqWnJES4.js} +3 -3
  67. package/dist/docs/building-with-agents.html +35 -35
  68. package/dist/docs/deployment.html +35 -35
  69. package/dist/docs/evals.html +35 -35
  70. package/dist/docs/guides/agent-to-agent.html +35 -35
  71. package/dist/docs/guides/bitbucket.html +35 -35
  72. package/dist/docs/guides/cloud-agents.html +35 -35
  73. package/dist/docs/guides/convert-automation.html +35 -35
  74. package/dist/docs/guides/export-grokbot.html +35 -35
  75. package/dist/docs/guides/github.html +35 -35
  76. package/dist/docs/guides/gitlab.html +35 -35
  77. package/dist/docs/guides/grokbot-agents.html +35 -35
  78. package/dist/docs/guides/hooks.html +35 -35
  79. package/dist/docs/guides/improve.html +35 -35
  80. package/dist/docs/guides/jev.html +35 -35
  81. package/dist/docs/guides/mcp-oauth.html +35 -35
  82. package/dist/docs/guides/migrate.html +38 -38
  83. package/dist/docs/guides/migrate.md +46 -4
  84. package/dist/docs/guides/opentelemetry.html +35 -35
  85. package/dist/docs/guides/slack.html +35 -35
  86. package/dist/docs/guides/webhooks.html +35 -35
  87. package/dist/docs/hashmap.json +1 -1
  88. package/dist/docs/hillclimbing.html +35 -35
  89. package/dist/docs/index.html +35 -35
  90. package/dist/docs/llms-full.txt +62 -9
  91. package/dist/docs/quickstart.html +35 -35
  92. package/dist/docs/reference/agent-config.html +35 -35
  93. package/dist/docs/reference/artifacts.html +35 -35
  94. package/dist/docs/reference/channels.html +35 -35
  95. package/dist/docs/reference/cli.html +39 -39
  96. package/dist/docs/reference/cli.md +16 -5
  97. package/dist/docs/reference/connections.html +35 -35
  98. package/dist/docs/reference/evals.html +35 -35
  99. package/dist/docs/reference/extensions.html +35 -35
  100. package/dist/docs/reference/hooks.html +35 -35
  101. package/dist/docs/reference/http-api.html +35 -35
  102. package/dist/docs/reference/instructions.html +35 -35
  103. package/dist/docs/reference/memory.html +35 -35
  104. package/dist/docs/reference/playground.html +35 -35
  105. package/dist/docs/reference/project-layout.html +35 -35
  106. package/dist/docs/reference/prompt.html +35 -35
  107. package/dist/docs/reference/schedules.html +38 -38
  108. package/dist/docs/reference/sessions.html +35 -35
  109. package/dist/docs/reference/skills.html +35 -35
  110. package/dist/docs/reference/subagents.html +35 -35
  111. package/dist/docs/reference/tools.html +35 -35
  112. package/dist/docs/templates/agentic-owners.html +35 -35
  113. package/dist/docs/templates/grokbot-agents.html +35 -35
  114. package/dist/docs/templates/security-reviewer.html +35 -35
  115. package/dist/docs/templates/thermo-quality-review.html +35 -35
  116. package/dist/docs/templates/thermo-review.html +35 -35
  117. package/dist/docs/templates/triage.html +35 -35
  118. package/dist/docs/troubleshooting.html +35 -35
  119. package/dist/files-backends/cursor-hosted.js +4 -1
  120. package/dist/internal/cli-deploy.d.ts +3 -3
  121. package/dist/internal/cli-deploy.d.ts.map +1 -1
  122. package/dist/internal/cli-deploy.js +63 -21
  123. package/dist/internal/cli-migrate.d.ts.map +1 -1
  124. package/dist/internal/cli-migrate.js +227 -12
  125. package/dist/internal/cli-slack.d.ts.map +1 -1
  126. package/dist/internal/cli-slack.js +56 -3
  127. package/dist/internal/cursor/hosted-deployment-secrets.d.ts.map +1 -1
  128. package/dist/internal/cursor/hosted-deployment-secrets.js +22 -6
  129. package/dist/internal/deploy-client.d.ts +7 -0
  130. package/dist/internal/deploy-client.d.ts.map +1 -1
  131. package/dist/internal/deploy-client.js +15 -1
  132. package/dist/internal/filesystem/scratch.d.ts +7 -6
  133. package/dist/internal/filesystem/scratch.d.ts.map +1 -1
  134. package/dist/internal/filesystem/scratch.js +13 -7
  135. package/dist/internal/hosted-delivery.d.ts.map +1 -1
  136. package/dist/internal/hosted-delivery.js +10 -0
  137. package/dist/internal/hosted-eval-cases.js +1 -1
  138. package/dist/internal/session-engine.d.ts.map +1 -1
  139. package/dist/internal/session-engine.js +6 -2
  140. package/dist/internal/slack-provision-client.d.ts +1 -0
  141. package/dist/internal/slack-provision-client.d.ts.map +1 -1
  142. package/dist/playground/assets/index-BtsbIqV9.css +1 -0
  143. package/dist/playground/assets/index-CD8VRa25.js +71 -0
  144. package/dist/playground/index.html +2 -2
  145. package/docs/guides/migrate.md +46 -4
  146. package/docs/reference/cli.md +16 -5
  147. package/package.json +8 -3
  148. package/skills/migrate-v2/SKILL.md +140 -11
  149. package/templates/agentic-owners/bot/lib/owners/matching.ts +4 -1
  150. package/dist/docs/assets/chunks/@localSearchIndexroot._fglLrPa.js +0 -1
  151. package/dist/docs/assets/chunks/channel.C4s-x2x3.js +0 -1
  152. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.h-fLya-M.js +0 -1
  153. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.h-fLya-M.js +0 -1
  154. package/dist/docs/assets/chunks/clone.BM9yCOiZ.js +0 -1
  155. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.CLFLHNN0.js +0 -1
  156. package/dist/docs/assets/guides_migrate.md.DZBL7dqT.js +0 -7
  157. package/dist/playground/assets/index-BfePgvWh.css +0 -1
  158. package/dist/playground/assets/index-DAlf9lxD.js +0 -71
  159. /package/dist/docs/assets/{reference_schedules.md.03Ryy9ca.lean.js → reference_schedules.md.BqWnJES4.lean.js} +0 -0
@@ -1 +0,0 @@
1
- import{U as a,D as n}from"../app.C0diulDR.js";const t=(r,o)=>a.lang.round(n.parse(r)[o]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK.D_t-pAXu.js";import{_ as i}from"../app.C0diulDR.js";import"./chunk-FMBD7UC4.BZxXsutI.js";import"./chunk-YZCP3GAM.Dv3biZVN.js";import"./chunk-55IACEB6.DvlNSQE5.js";import"./chunk-EDXVE4YY.6LpTrDTf.js";import"./framework.BNw1pucY.js";import"./theme.B9ZHHvCq.js";var f={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{f as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK.D_t-pAXu.js";import{_ as i}from"../app.C0diulDR.js";import"./chunk-FMBD7UC4.BZxXsutI.js";import"./chunk-YZCP3GAM.Dv3biZVN.js";import"./chunk-55IACEB6.DvlNSQE5.js";import"./chunk-EDXVE4YY.6LpTrDTf.js";import"./framework.BNw1pucY.js";import"./theme.B9ZHHvCq.js";var f={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{f as diagram};
@@ -1 +0,0 @@
1
- import{b as r}from"./graph.DMkP70rB.js";var e=4;function a(o){return r(o,e)}export{a as c};
@@ -1 +0,0 @@
1
- import{s as r,b as e,a,S as s}from"./chunk-OYMX7WX6.CrtynS_e.js";import{_ as i}from"../app.C0diulDR.js";import"./chunk-55IACEB6.DvlNSQE5.js";import"./chunk-EDXVE4YY.6LpTrDTf.js";import"./framework.BNw1pucY.js";import"./theme.B9ZHHvCq.js";var u={parser:a,get db(){return new s(2)},renderer:e,styles:r,init:i(t=>{t.state||(t.state={}),t.state.arrowMarkerAbsolute=t.arrowMarkerAbsolute},"init")};export{u as diagram};
@@ -1,7 +0,0 @@
1
- import{_ as t,c as a,o as s,a3 as i}from"./chunks/framework.BNw1pucY.js";const u=JSON.parse('{"title":"Migrate an early-alpha project","description":"Move a hosted BDK architecture v1 project to v2 through a reviewed pull request.","frontmatter":{"title":"Migrate an early-alpha project","description":"Move a hosted BDK architecture v1 project to v2 through a reviewed pull request."},"headers":[],"relativePath":"guides/migrate.md","filePath":"guides/migrate.md"}'),o={name:"guides/migrate.md"};function r(n,e,l,h,d,p){return s(),a("div",null,[...e[0]||(e[0]=[i(`<h1 id="migrate-an-early-alpha-project-to-architecture-v2" tabindex="-1">Migrate an early-alpha project to architecture v2 <a class="header-anchor" href="#migrate-an-early-alpha-project-to-architecture-v2" aria-label="Permalink to &quot;Migrate an early-alpha project to architecture v2&quot;">​</a></h1><p>Use this guide only for Bot Development Kit (BDK) projects deployed during the early alpha. Projects that never deployed on architecture v1 already use v2 and need no migration.</p><h2 id="check-whether-your-project-needs-migration" tabindex="-1">Check whether your project needs migration <a class="header-anchor" href="#check-whether-your-project-needs-migration" aria-label="Permalink to &quot;Check whether your project needs migration&quot;">​</a></h2><p>Migrate when at least one of these signals is present:</p><ul><li><p><code>package.json</code> depends on the legacy early-alpha package <code>@cursor/july</code>.</p></li><li><p>A script or CI job runs the legacy early-alpha <code>agent-sdk</code> binary.</p></li><li><p><code>agent/agent.ts</code> sets <code>architecture: &quot;v1&quot;</code>.</p></li><li><p><code>bdk deployment &lt;slug&gt;</code> does not print <code>architecture: v2</code>.</p></li></ul><p>Stop when none of these is true. An existing <code>agent/</code> project root can remain in place; BDK still loads it even though current examples use <code>bot/</code>.</p><h2 id="start-the-migration" tabindex="-1">Start the migration <a class="header-anchor" href="#start-the-migration" aria-label="Permalink to &quot;Start the migration&quot;">​</a></h2><p>Commit and push the source you want to migrate. <code>bdk migrate</code> reads that pushed Git ref, starts a Cursor cloud agent with the bundled migration skill, and waits for the agent to open a pull request. It does not deploy the project.</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">bdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> login</span></span>
2
- <span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">bdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> migrate</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --dir</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .</span></span></code></pre></div><p>Inside a checkout, the command infers the repository, current ref, and project path. Pass them when you need to target a different pushed source:</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">bdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> migrate</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \\</span></span>
3
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --dir</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ./bots/triage</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \\</span></span>
4
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --repo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/acme/agents</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \\</span></span>
5
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --ref</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> migrate-triage-v2</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \\</span></span>
6
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --path</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> bots/triage</span></span></code></pre></div><p>Use <code>--no-wait</code> to print the cloud agent URL and return while it works. Use <code>--json</code> for machine-readable status. The <a href="./../reference/cli.html#migrate">CLI reference</a> covers every flag, output, and exit status.</p><h2 id="use-the-coding-agent-skill-directly" tabindex="-1">Use the coding-agent skill directly <a class="header-anchor" href="#use-the-coding-agent-skill-directly" aria-label="Permalink to &quot;Use the coding-agent skill directly&quot;">​</a></h2><p>You can instead ask a coding agent working in the project checkout to follow the bundled <a href="./../../skills/migrate-v2/SKILL.html"><code>bdk-migrate-v2</code> skill</a>. The skill owns the code changes, capability checks, local verification, and deployment handoff.</p><blockquote><p>Follow the <code>bdk-migrate-v2</code> skill for this project. Open one pull request with the migration, but do not deploy it or change deployment secrets.</p></blockquote><p>If the project depends on a v1 capability without a supported v2 path, the skill tells the coding agent to stop and name the blocker instead of removing the behavior.</p><h2 id="review-the-pull-request" tabindex="-1">Review the pull request <a class="header-anchor" href="#review-the-pull-request" aria-label="Permalink to &quot;Review the pull request&quot;">​</a></h2><p>Before merging, confirm the pull request:</p><ul><li><p>Uses <code>@cursor/bdk</code> and <code>bdk</code>, and removes the v1 architecture opt-in.</p></li><li><p>Moves durable state to <code>ctx.host.kv</code> or <code>ctx.host.files</code>, reads secrets inside the handler that needs them, and accounts for hosted HTTP routes returning <code>202</code>.</p></li><li><p>Names SCM channel secrets instead of reading them: every <code>githubChannel({ credentials })</code> field and the GitLab or Bitbucket <code>webhookSecret</code> is <code>{ secretName: &quot;NAME&quot; }</code>. <code>bdk validate</code> reports each field still written as a literal or <code>() =&gt; process.env.NAME</code> getter, as a warning while <code>architecture: &quot;v1&quot;</code> is set and as an error once it is removed. The <a href="./github.html#other-hosts">GitHub guide</a> explains the named form.</p></li><li><p>Calls out unsupported behavior and any follow-up needed for reminders, schedules, Slack, or MCP connections.</p></li><li><p>Reports the validation, type checks, tests, and credential-dependent checks it ran or handed off.</p></li></ul><p>The migration pull request should change source only. Deploy after it merges.</p><h2 id="choose-a-cutover" tabindex="-1">Choose a cutover <a class="header-anchor" href="#choose-a-cutover" aria-label="Permalink to &quot;Choose a cutover&quot;">​</a></h2><table tabindex="0"><thead><tr><th>Cutover</th><th>What happens</th><th>Choose it when</th></tr></thead><tbody><tr><td>Same slug</td><td>The v2 deployment copies the v1 secrets and replaces v1 after it starts. The cutover cannot be undone, and it deletes v1&#39;s hosted sessions, KV, files, and eval runs.</td><td>A service interruption and an empty v2 state are acceptable.</td></tr><tr><td>New slug</td><td>The v1 deployment keeps serving while you configure and test v2. Move senders to the new URL, then delete the old deployment.</td><td>You use Slack, webhooks, or hosted state, or want a staged cutover.</td></tr></tbody></table><p>Prefer a new slug for Slack, webhooks, or data in <code>ctx.host.kv</code>. Point the trial at a test repository so both deployments do not act on the same source-control events. If the CLI reports that same-slug replacement is unavailable, use a new slug.</p><h2 id="deploy-after-merge" tabindex="-1">Deploy after merge <a class="header-anchor" href="#deploy-after-merge" aria-label="Permalink to &quot;Deploy after merge&quot;">​</a></h2><p>Deploy from the merged, pushed ref. Reuse every <code>--cursor-events-repo</code> and <code>--allow-domain</code> value from the v1 deployment.</p><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">bdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> validate</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --dir</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .</span></span>
7
- <span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">bdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> deploy</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --dir</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> .</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --slug</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> &lt;</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">existing-or-new-slu</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">g</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">&gt;</span></span></code></pre></div><p>After the deployment starts, follow the migration skill&#39;s cutover checklist for Slack, webhook callers, and Cursor-account MCP connections, then verify a hosted turn. The <a href="./../deployment.html">deployment guide</a> covers the managed hosting workflow.</p><h2 id="related" tabindex="-1">Related <a class="header-anchor" href="#related" aria-label="Permalink to &quot;Related&quot;">​</a></h2><ul><li><a href="./../reference/cli.html#migrate">CLI reference</a>: migration flags, output, and exit status</li><li><a href="./../../skills/migrate-v2/SKILL.html"><code>bdk-migrate-v2</code> skill</a>: the coding procedure and complete capability matrix</li><li><a href="./../deployment.html">Deployment</a>: deploy and verify the reviewed project</li></ul>`,29)])])}const k=t(o,[["render",r]]);export{u as __pageData,k as default};