@cursor/july 0.1.108 → 0.1.111

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 (1170) hide show
  1. package/AGENTS.md +3 -7
  2. package/README.md +3 -21
  3. package/dist/bin/agent-serve.js +81 -66
  4. package/dist/channels/bitbucket/api.d.ts +41 -0
  5. package/dist/channels/bitbucket/api.d.ts.map +1 -1
  6. package/dist/channels/bitbucket/api.js +266 -6
  7. package/dist/channels/bitbucket/binding.d.ts +4 -0
  8. package/dist/channels/bitbucket/binding.d.ts.map +1 -1
  9. package/dist/channels/bitbucket/binding.js +20 -4
  10. package/dist/channels/bitbucket/bitbucket-channel.js +1 -1
  11. package/dist/channels/bitbucket/bitbucket-webhook.js +1 -1
  12. package/dist/channels/bitbucket/checks.d.ts.map +1 -1
  13. package/dist/channels/bitbucket/checks.js +1 -1
  14. package/dist/channels/bitbucket/cursor-account.js +1 -1
  15. package/dist/channels/bitbucket/events.js +1 -1
  16. package/dist/channels/bitbucket/index.d.ts +1 -1
  17. package/dist/channels/bitbucket/index.d.ts.map +1 -1
  18. package/dist/channels/bitbucket/index.js +1 -1
  19. package/dist/channels/change-monitors/change-monitors-channel.js +1 -1
  20. package/dist/channels/checks.d.ts.map +1 -1
  21. package/dist/channels/checks.js +2 -2
  22. package/dist/channels/deployments/deployments-channel.js +1 -1
  23. package/dist/channels/github/cursor-account.js +3 -3
  24. package/dist/channels/github/defaults.d.ts.map +1 -1
  25. package/dist/channels/github/defaults.js +5 -3
  26. package/dist/channels/github/events.js +1 -1
  27. package/dist/channels/github/forward.js +8 -8
  28. package/dist/channels/github/github-channel.d.ts.map +1 -1
  29. package/dist/channels/github/github-channel.js +17 -13
  30. package/dist/channels/github/progress.d.ts.map +1 -1
  31. package/dist/channels/github/progress.js +7 -2
  32. package/dist/channels/github/state.d.ts +6 -0
  33. package/dist/channels/github/state.d.ts.map +1 -1
  34. package/dist/channels/github/types.d.ts +6 -0
  35. package/dist/channels/github/types.d.ts.map +1 -1
  36. package/dist/channels/gitlab/api.d.ts +27 -0
  37. package/dist/channels/gitlab/api.d.ts.map +1 -1
  38. package/dist/channels/gitlab/api.js +88 -0
  39. package/dist/channels/gitlab/binding.d.ts +5 -0
  40. package/dist/channels/gitlab/binding.d.ts.map +1 -1
  41. package/dist/channels/gitlab/binding.js +14 -4
  42. package/dist/channels/gitlab/checks.d.ts.map +1 -1
  43. package/dist/channels/gitlab/checks.js +1 -1
  44. package/dist/channels/gitlab/cursor-account.js +1 -1
  45. package/dist/channels/gitlab/events.js +1 -1
  46. package/dist/channels/gitlab/gitlab-channel.js +1 -1
  47. package/dist/channels/gitlab/gitlab-webhook.js +1 -1
  48. package/dist/channels/gitlab/index.d.ts +1 -1
  49. package/dist/channels/gitlab/index.d.ts.map +1 -1
  50. package/dist/channels/gitlab/index.js +1 -1
  51. package/dist/channels/gitlab/replay.js +2 -2
  52. package/dist/channels/origin/binding.d.ts +2 -0
  53. package/dist/channels/origin/binding.d.ts.map +1 -1
  54. package/dist/channels/origin/binding.js +3 -3
  55. package/dist/channels/origin/checks.d.ts +19 -7
  56. package/dist/channels/origin/checks.d.ts.map +1 -1
  57. package/dist/channels/origin/checks.js +13 -9
  58. package/dist/channels/origin/cursor-account.js +1 -1
  59. package/dist/channels/origin/defaults.d.ts.map +1 -1
  60. package/dist/channels/origin/defaults.js +3 -1
  61. package/dist/channels/origin/events.js +1 -1
  62. package/dist/channels/origin/origin-channel.d.ts.map +1 -1
  63. package/dist/channels/origin/origin-channel.js +2 -1
  64. package/dist/channels/origin/origin-webhook.js +2 -2
  65. package/dist/channels/slack/agentic-delivery.d.ts +23 -0
  66. package/dist/channels/slack/agentic-delivery.d.ts.map +1 -0
  67. package/dist/channels/slack/agentic-delivery.js +558 -0
  68. package/dist/channels/slack/agentic-posted.d.ts +30 -0
  69. package/dist/channels/slack/agentic-posted.d.ts.map +1 -0
  70. package/dist/channels/slack/agentic-posted.js +102 -0
  71. package/dist/channels/slack/agentic-signals.d.ts +48 -0
  72. package/dist/channels/slack/agentic-signals.d.ts.map +1 -0
  73. package/dist/channels/slack/agentic-signals.js +204 -0
  74. package/dist/channels/slack/api.d.ts +20 -1
  75. package/dist/channels/slack/api.d.ts.map +1 -1
  76. package/dist/channels/slack/api.js +43 -11
  77. package/dist/channels/slack/approvals.js +1 -1
  78. package/dist/channels/slack/auth.d.ts.map +1 -1
  79. package/dist/channels/slack/auth.js +3 -1
  80. package/dist/channels/slack/blocks.js +3 -3
  81. package/dist/channels/slack/bot-mentions.d.ts.map +1 -1
  82. package/dist/channels/slack/bot-mentions.js +5 -5
  83. package/dist/channels/slack/channel-watch.js +1 -1
  84. package/dist/channels/slack/cli-project.js +3 -3
  85. package/dist/channels/slack/defaults.d.ts +3 -0
  86. package/dist/channels/slack/defaults.d.ts.map +1 -1
  87. package/dist/channels/slack/defaults.js +90 -29
  88. package/dist/channels/slack/dispatch.d.ts +44 -1
  89. package/dist/channels/slack/dispatch.d.ts.map +1 -1
  90. package/dist/channels/slack/dispatch.js +233 -103
  91. package/dist/channels/slack/doctor.js +1 -1
  92. package/dist/channels/slack/eval-directive.js +1 -1
  93. package/dist/channels/slack/external-policy.d.ts +2 -1
  94. package/dist/channels/slack/external-policy.d.ts.map +1 -1
  95. package/dist/channels/slack/external-policy.js +13 -2
  96. package/dist/channels/slack/footer.d.ts +30 -0
  97. package/dist/channels/slack/footer.d.ts.map +1 -0
  98. package/dist/channels/slack/footer.js +88 -0
  99. package/dist/channels/slack/index.d.ts +2 -0
  100. package/dist/channels/slack/index.d.ts.map +1 -1
  101. package/dist/channels/slack/index.js +2 -0
  102. package/dist/channels/slack/interactive.d.ts.map +1 -1
  103. package/dist/channels/slack/interactive.js +5 -3
  104. package/dist/channels/slack/live-delivery.d.ts +1 -1
  105. package/dist/channels/slack/live-delivery.d.ts.map +1 -1
  106. package/dist/channels/slack/live-delivery.js +20 -6
  107. package/dist/channels/slack/log.d.ts.map +1 -1
  108. package/dist/channels/slack/log.js +1 -1
  109. package/dist/channels/slack/manifest.js +1 -1
  110. package/dist/channels/slack/nudge-carrier.js +1 -1
  111. package/dist/channels/slack/nudge-store.js +2 -2
  112. package/dist/channels/slack/paint-start.d.ts +22 -0
  113. package/dist/channels/slack/paint-start.d.ts.map +1 -0
  114. package/dist/channels/slack/paint-start.js +91 -0
  115. package/dist/channels/slack/placeholder.d.ts +36 -0
  116. package/dist/channels/slack/placeholder.d.ts.map +1 -0
  117. package/dist/channels/slack/placeholder.js +240 -0
  118. package/dist/channels/slack/progress-delivery.d.ts.map +1 -1
  119. package/dist/channels/slack/progress-delivery.js +13 -4
  120. package/dist/channels/slack/reasoning-chip.d.ts +8 -0
  121. package/dist/channels/slack/reasoning-chip.d.ts.map +1 -0
  122. package/dist/channels/slack/reasoning-chip.js +30 -0
  123. package/dist/channels/slack/recording-sink.d.ts +29 -0
  124. package/dist/channels/slack/recording-sink.d.ts.map +1 -0
  125. package/dist/channels/slack/recording-sink.js +142 -0
  126. package/dist/channels/slack/reply-options.d.ts +8 -1
  127. package/dist/channels/slack/reply-options.d.ts.map +1 -1
  128. package/dist/channels/slack/reply-options.js +59 -14
  129. package/dist/channels/slack/setup.js +1 -1
  130. package/dist/channels/slack/slack-channel.d.ts +12 -5
  131. package/dist/channels/slack/slack-channel.d.ts.map +1 -1
  132. package/dist/channels/slack/slack-channel.js +110 -24
  133. package/dist/channels/slack/socket-mode.js +2 -2
  134. package/dist/channels/slack/thread-context.js +5 -5
  135. package/dist/channels/slack/tool-approval-events.d.ts +5 -0
  136. package/dist/channels/slack/tool-approval-events.d.ts.map +1 -1
  137. package/dist/channels/slack/tool-approval-events.js +50 -38
  138. package/dist/channels/slack/tool-cards.js +1 -1
  139. package/dist/channels/slack/tool-chip.d.ts +9 -0
  140. package/dist/channels/slack/tool-chip.d.ts.map +1 -0
  141. package/dist/channels/slack/tool-chip.js +25 -0
  142. package/dist/channels/slack/types.d.ts +49 -7
  143. package/dist/channels/slack/types.d.ts.map +1 -1
  144. package/dist/channels/slack/upload.d.ts +13 -0
  145. package/dist/channels/slack/upload.d.ts.map +1 -0
  146. package/dist/channels/slack/upload.js +135 -0
  147. package/dist/channels.d.ts +10 -14
  148. package/dist/channels.d.ts.map +1 -1
  149. package/dist/channels.js +9 -21
  150. package/dist/dashboard-session-url.d.ts +15 -0
  151. package/dist/dashboard-session-url.d.ts.map +1 -0
  152. package/dist/dashboard-session-url.js +25 -0
  153. package/dist/docs/404.html +3 -3
  154. package/dist/docs/architecture.svg +59 -0
  155. package/dist/docs/assets/app.Drol6mi6.js +309 -0
  156. package/dist/docs/assets/{building-with-agents.md.CUSWxlP_.js → building-with-agents.md.CEGVXkmO.js} +2 -2
  157. package/dist/docs/assets/{building-with-agents.md.CUSWxlP_.lean.js → building-with-agents.md.CEGVXkmO.lean.js} +1 -1
  158. package/dist/docs/assets/chunks/@localSearchIndexroot.DtXk1hy-.js +1 -0
  159. package/dist/docs/assets/chunks/{VPLocalSearchBox.BOKxlYGP.js → VPLocalSearchBox.CdqoBZJX.js} +2 -2
  160. package/dist/docs/assets/chunks/arc.BVX3ycTn.js +1 -0
  161. package/dist/docs/assets/chunks/architectureDiagram-Q4EWVU46.CcChnMxX.js +36 -0
  162. package/dist/docs/assets/chunks/baseUniq.xwtXO-yt.js +1 -0
  163. package/dist/docs/assets/chunks/blockDiagram-DXYQGD6D.CijZ_taK.js +132 -0
  164. package/dist/docs/assets/chunks/c4Diagram-AHTNJAMY.0FBvwBvK.js +10 -0
  165. package/dist/docs/assets/chunks/channel.Bkv1N-gK.js +1 -0
  166. package/dist/docs/assets/chunks/chunk-4BX2VUAB.CELMmMDA.js +1 -0
  167. package/dist/docs/assets/chunks/chunk-4TB4RGXK.C4bhFtSm.js +206 -0
  168. package/dist/docs/assets/chunks/chunk-55IACEB6.ZnQ9gRRQ.js +1 -0
  169. package/dist/docs/assets/chunks/chunk-EDXVE4YY.DPlmglG-.js +1 -0
  170. package/dist/docs/assets/chunks/chunk-FMBD7UC4.BrUk8pff.js +15 -0
  171. package/dist/docs/assets/chunks/chunk-OYMX7WX6.CcmWIncu.js +231 -0
  172. package/dist/docs/assets/chunks/chunk-QZHKN3VN.D65-cs8I.js +1 -0
  173. package/dist/docs/assets/chunks/chunk-YZCP3GAM.qoXZpG9F.js +1 -0
  174. package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.CZDco1o8.js +1 -0
  175. package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.CZDco1o8.js +1 -0
  176. package/dist/docs/assets/chunks/clone.YSt_40_s.js +1 -0
  177. package/dist/docs/assets/chunks/cose-bilkent-S5V4N54A.8rYtqudO.js +1 -0
  178. package/dist/docs/assets/chunks/cytoscape.esm.BQk4lpUV.js +331 -0
  179. package/dist/docs/assets/chunks/dagre-KV5264BT.DrRP1fOh.js +4 -0
  180. package/dist/docs/assets/chunks/defaultLocale.C4B-KCzX.js +1 -0
  181. package/dist/docs/assets/chunks/diagram-5BDNPKRD.DHj_xA2_.js +10 -0
  182. package/dist/docs/assets/chunks/diagram-G4DWMVQ6.Bz_6nAKj.js +24 -0
  183. package/dist/docs/assets/chunks/diagram-MMDJMWI5.BWA0xSW9.js +43 -0
  184. package/dist/docs/assets/chunks/diagram-TYMM5635.CpTJLNJI.js +24 -0
  185. package/dist/docs/assets/chunks/erDiagram-SMLLAGMA.-7AWWSrP.js +85 -0
  186. package/dist/docs/assets/chunks/flowDiagram-DWJPFMVM.BTnQ742_.js +162 -0
  187. package/dist/docs/assets/chunks/framework.dypDpWZ3.js +19 -0
  188. package/dist/docs/assets/chunks/ganttDiagram-T4ZO3ILL.B5_HiiQ5.js +292 -0
  189. package/dist/docs/assets/chunks/gitGraphDiagram-UUTBAWPF.CZcNTFZd.js +106 -0
  190. package/dist/docs/assets/chunks/graph.V2GLaab4.js +1 -0
  191. package/dist/docs/assets/chunks/infoDiagram-42DDH7IO.7pZOkCCU.js +2 -0
  192. package/dist/docs/assets/chunks/init.Gi6I4Gst.js +1 -0
  193. package/dist/docs/assets/chunks/ishikawaDiagram-UXIWVN3A.DSMo3Qa3.js +70 -0
  194. package/dist/docs/assets/chunks/journeyDiagram-VCZTEJTY.BNEgWN1S.js +139 -0
  195. package/dist/docs/assets/chunks/kanban-definition-6JOO6SKY.B-4d4tC7.js +89 -0
  196. package/dist/docs/assets/chunks/katex.DkKDou_j.js +257 -0
  197. package/dist/docs/assets/chunks/layout.Dvbn9nSb.js +1 -0
  198. package/dist/docs/assets/chunks/linear.D2GM4p4b.js +1 -0
  199. package/dist/docs/assets/chunks/min.DVBtLK-B.js +1 -0
  200. package/dist/docs/assets/chunks/mindmap-definition-QFDTVHPH.CnJRI55x.js +96 -0
  201. package/dist/docs/assets/chunks/ordinal.DBvzRdQf.js +1 -0
  202. package/dist/docs/assets/chunks/pieDiagram-DEJITSTG.CtoaTFlA.js +30 -0
  203. package/dist/docs/assets/chunks/quadrantDiagram-34T5L4WZ.DtT24_vN.js +7 -0
  204. package/dist/docs/assets/chunks/requirementDiagram-MS252O5E.CjSO4o8f.js +84 -0
  205. package/dist/docs/assets/chunks/sankeyDiagram-XADWPNL6.-wWiIVWa.js +10 -0
  206. package/dist/docs/assets/chunks/sequenceDiagram-FGHM5R23.DSk8s4gX.js +157 -0
  207. package/dist/docs/assets/chunks/stateDiagram-FHFEXIEX.BFKAsdkN.js +1 -0
  208. package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.C4CLm481.js +1 -0
  209. package/dist/docs/assets/chunks/{theme.DbDZW-zb.js → theme.C0MctGaz.js} +2 -2
  210. package/dist/docs/assets/chunks/timeline-definition-GMOUNBTQ.TUNJbAFe.js +120 -0
  211. package/dist/docs/assets/chunks/vennDiagram-DHZGUBPP.C-RGNnk4.js +34 -0
  212. package/dist/docs/assets/chunks/virtual_mermaid-config.DDnGl6nM.js +1 -0
  213. package/dist/docs/assets/chunks/wardley-RL74JXVD.g5efOWmT.js +162 -0
  214. package/dist/docs/assets/chunks/wardleyDiagram-NUSXRM2D.DH4zt73Y.js +20 -0
  215. package/dist/docs/assets/chunks/xychartDiagram-5P7HB3ND.B-3k6bF6.js +7 -0
  216. package/dist/docs/assets/{deployment.md.JenwuCCB.js → deployment.md.Dm4Qo3hp.js} +5 -5
  217. package/dist/docs/assets/{deployment.md.JenwuCCB.lean.js → deployment.md.Dm4Qo3hp.lean.js} +1 -1
  218. package/dist/docs/assets/evals.md.BLDRt5LH.js +211 -0
  219. package/dist/docs/assets/evals.md.BLDRt5LH.lean.js +1 -0
  220. package/dist/docs/assets/guides_agent-to-agent.md.BI0xclmy.js +14 -0
  221. package/dist/docs/assets/guides_agent-to-agent.md.BI0xclmy.lean.js +1 -0
  222. package/dist/docs/assets/guides_bitbucket.md.CTpCl__f.js +10 -0
  223. package/dist/docs/assets/guides_bitbucket.md.CTpCl__f.lean.js +1 -0
  224. package/dist/docs/assets/{guides_cloud-agents.md.BsloyHdY.js → guides_cloud-agents.md.lSE_l7lH.js} +2 -2
  225. package/dist/docs/assets/{guides_cloud-agents.md.BsloyHdY.lean.js → guides_cloud-agents.md.lSE_l7lH.lean.js} +1 -1
  226. package/dist/docs/assets/{guides_convert-automation.md.B4sjlodG.js → guides_convert-automation.md.Ck6Cr68A.js} +1 -1
  227. package/dist/docs/assets/{guides_convert-automation.md.B4sjlodG.lean.js → guides_convert-automation.md.Ck6Cr68A.lean.js} +1 -1
  228. package/dist/docs/assets/{guides_github.md.BH33UEBJ.js → guides_github.md.D6ER29dG.js} +13 -3
  229. package/dist/docs/assets/{guides_github.md.BH33UEBJ.lean.js → guides_github.md.D6ER29dG.lean.js} +1 -1
  230. package/dist/docs/assets/guides_gitlab.md.P-TjBnS5.js +14 -0
  231. package/dist/docs/assets/guides_gitlab.md.P-TjBnS5.lean.js +1 -0
  232. package/dist/docs/assets/guides_grokbot-agents.md.WBZIOvkz.js +9 -0
  233. package/dist/docs/assets/{guides_grokbot-agents.md.DyV-WArv.lean.js → guides_grokbot-agents.md.WBZIOvkz.lean.js} +1 -1
  234. package/dist/docs/assets/{guides_improve.md.BGVk32bK.js → guides_improve.md.BKaDuKKK.js} +1 -1
  235. package/dist/docs/assets/{guides_improve.md.BGVk32bK.lean.js → guides_improve.md.BKaDuKKK.lean.js} +1 -1
  236. package/dist/docs/assets/{guides_mcp-oauth.md.Dp6cDP7f.js → guides_mcp-oauth.md.DMNMpXtO.js} +1 -1
  237. package/dist/docs/assets/{guides_mcp-oauth.md.Dp6cDP7f.lean.js → guides_mcp-oauth.md.DMNMpXtO.lean.js} +1 -1
  238. package/dist/docs/assets/{guides_opentelemetry.md.SCRMskno.js → guides_opentelemetry.md._CRfDyzH.js} +14 -14
  239. package/dist/docs/assets/{guides_opentelemetry.md.SCRMskno.lean.js → guides_opentelemetry.md._CRfDyzH.lean.js} +1 -1
  240. package/dist/docs/assets/{guides_slack.md.D4RVMM4G.js → guides_slack.md.DdT8rmsj.js} +12 -4
  241. package/dist/docs/assets/{guides_slack.md.D4RVMM4G.lean.js → guides_slack.md.DdT8rmsj.lean.js} +1 -1
  242. package/dist/docs/assets/{guides_webhooks.md.DKdA43Qm.js → guides_webhooks.md.aQW10HRe.js} +3 -3
  243. package/dist/docs/assets/{guides_webhooks.md.DKdA43Qm.lean.js → guides_webhooks.md.aQW10HRe.lean.js} +1 -1
  244. package/dist/docs/assets/hillclimbing.md.Dq4kkVIL.js +1 -0
  245. package/dist/docs/assets/hillclimbing.md.Dq4kkVIL.lean.js +1 -0
  246. package/dist/docs/assets/index.md.BFVyY2KT.js +17 -0
  247. package/dist/docs/assets/index.md.BFVyY2KT.lean.js +1 -0
  248. package/dist/docs/assets/{quickstart.md.DdQOF7Y8.js → quickstart.md.D3MjSZN-.js} +30 -38
  249. package/dist/docs/assets/quickstart.md.D3MjSZN-.lean.js +1 -0
  250. package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.js → reference_agent-config.md.CfVA-LZJ.js} +1 -1
  251. package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.lean.js → reference_agent-config.md.CfVA-LZJ.lean.js} +1 -1
  252. package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.js → reference_artifacts.md.Vf7qyIZ-.js} +1 -1
  253. package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.lean.js → reference_artifacts.md.Vf7qyIZ-.lean.js} +1 -1
  254. package/dist/docs/assets/{reference_channels.md.D-qTqwcq.js → reference_channels.md.icqLKcTc.js} +2 -12
  255. package/dist/docs/assets/{reference_channels.md.D-qTqwcq.lean.js → reference_channels.md.icqLKcTc.lean.js} +1 -1
  256. package/dist/docs/assets/{reference_cli.md.Ca26u0Es.js → reference_cli.md.B2dBL6L8.js} +4 -4
  257. package/dist/docs/assets/{reference_cli.md.Ca26u0Es.lean.js → reference_cli.md.B2dBL6L8.lean.js} +1 -1
  258. package/dist/docs/assets/{reference_connections.md.BojkC6c5.js → reference_connections.md.Cb3U_c8n.js} +4 -4
  259. package/dist/docs/assets/{reference_connections.md.BojkC6c5.lean.js → reference_connections.md.Cb3U_c8n.lean.js} +1 -1
  260. package/dist/docs/assets/{reference_extensions.md.CPWt00ds.js → reference_extensions.md.wlFD3cUR.js} +3 -3
  261. package/dist/docs/assets/{reference_extensions.md.CPWt00ds.lean.js → reference_extensions.md.wlFD3cUR.lean.js} +1 -1
  262. package/dist/docs/assets/{reference_hooks.md.Ddt5DdgJ.js → reference_hooks.md.CZuynAxj.js} +3 -3
  263. package/dist/docs/assets/{reference_hooks.md.Ddt5DdgJ.lean.js → reference_hooks.md.CZuynAxj.lean.js} +1 -1
  264. package/dist/docs/assets/{reference_http-api.md.oySXBO8o.js → reference_http-api.md.DTKcYE6L.js} +3 -3
  265. package/dist/docs/assets/{reference_http-api.md.oySXBO8o.lean.js → reference_http-api.md.DTKcYE6L.lean.js} +1 -1
  266. package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.js → reference_instructions.md.D7gkckK-.js} +1 -1
  267. package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.lean.js → reference_instructions.md.D7gkckK-.lean.js} +1 -1
  268. package/dist/docs/assets/{reference_playground.md.4myJPxrf.js → reference_playground.md.D2YExv5K.js} +1 -1
  269. package/dist/docs/assets/{reference_playground.md.4myJPxrf.lean.js → reference_playground.md.D2YExv5K.lean.js} +1 -1
  270. package/dist/docs/assets/reference_project-layout.md.DPxbUJyt.js +19 -0
  271. package/dist/docs/assets/{reference_project-layout.md.DuBu9a96.lean.js → reference_project-layout.md.DPxbUJyt.lean.js} +1 -1
  272. package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.js → reference_prompt.md.BQ5uAv1F.js} +1 -1
  273. package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.lean.js → reference_prompt.md.BQ5uAv1F.lean.js} +1 -1
  274. package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.js → reference_schedules.md.BasfZWO-.js} +1 -1
  275. package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.lean.js → reference_schedules.md.BasfZWO-.lean.js} +1 -1
  276. package/dist/docs/assets/reference_sessions.md.YKvIsWAx.js +1 -0
  277. package/dist/docs/assets/{reference_sessions.md.CueyOHSL.lean.js → reference_sessions.md.YKvIsWAx.lean.js} +1 -1
  278. package/dist/docs/assets/{reference_skills.md.l2ezAcaN.js → reference_skills.md.rNgpsGd0.js} +1 -1
  279. package/dist/docs/assets/{reference_skills.md.l2ezAcaN.lean.js → reference_skills.md.rNgpsGd0.lean.js} +1 -1
  280. package/dist/docs/assets/{reference_subagents.md.CfsIloPm.js → reference_subagents.md.e5qitjJt.js} +2 -2
  281. package/dist/docs/assets/{reference_subagents.md.CfsIloPm.lean.js → reference_subagents.md.e5qitjJt.lean.js} +1 -1
  282. package/dist/docs/assets/{reference_tools.md.aGrn99hP.js → reference_tools.md.BdCO2aHZ.js} +4 -4
  283. package/dist/docs/assets/{reference_tools.md.aGrn99hP.lean.js → reference_tools.md.BdCO2aHZ.lean.js} +1 -1
  284. package/dist/docs/assets/{style.DCD_zyg3.css → style.Cfo2vbik.css} +1 -1
  285. package/dist/docs/assets/{templates_agentic-owners.md.BZSH4N9z.js → templates_agentic-owners.md.Da_AGDlH.js} +1 -1
  286. package/dist/docs/assets/{templates_agentic-owners.md.BZSH4N9z.lean.js → templates_agentic-owners.md.Da_AGDlH.lean.js} +1 -1
  287. package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.js → templates_pr-autofixer.md.DqxocIGh.js} +1 -1
  288. package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.lean.js → templates_pr-autofixer.md.DqxocIGh.lean.js} +1 -1
  289. package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.js → templates_security-reviewer.md.Bhnvd8VE.js} +1 -1
  290. package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.lean.js → templates_security-reviewer.md.Bhnvd8VE.lean.js} +1 -1
  291. package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.js → templates_triage.md.BdBWO9Ic.js} +1 -1
  292. package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.lean.js → templates_triage.md.BdBWO9Ic.lean.js} +1 -1
  293. package/dist/docs/assets/{troubleshooting.md.CYEAO9bM.js → troubleshooting.md.BcgNoYtJ.js} +1 -1
  294. package/dist/docs/assets/{troubleshooting.md.CYEAO9bM.lean.js → troubleshooting.md.BcgNoYtJ.lean.js} +1 -1
  295. package/dist/docs/building-with-agents.html +41 -8
  296. package/dist/docs/building-with-agents.md +15 -16
  297. package/dist/docs/deployment.html +44 -11
  298. package/dist/docs/deployment.md +6 -7
  299. package/dist/docs/evals.html +196 -37
  300. package/dist/docs/evals.md +612 -297
  301. package/dist/docs/guides/agent-to-agent.html +48 -11
  302. package/dist/docs/guides/agent-to-agent.md +40 -83
  303. package/dist/docs/guides/bitbucket.html +69 -0
  304. package/dist/docs/guides/bitbucket.md +84 -0
  305. package/dist/docs/guides/cloud-agents.html +41 -8
  306. package/dist/docs/guides/cloud-agents.md +24 -20
  307. package/dist/docs/guides/convert-automation.html +41 -8
  308. package/dist/docs/guides/github.html +52 -9
  309. package/dist/docs/guides/github.md +32 -1
  310. package/dist/docs/guides/gitlab.html +73 -0
  311. package/dist/docs/guides/gitlab.md +92 -0
  312. package/dist/docs/guides/grokbot-agents.html +41 -8
  313. package/dist/docs/guides/grokbot-agents.md +26 -19
  314. package/dist/docs/guides/improve.html +41 -8
  315. package/dist/docs/guides/mcp-oauth.html +41 -8
  316. package/dist/docs/guides/mcp-oauth.md +1 -1
  317. package/dist/docs/guides/opentelemetry.html +53 -20
  318. package/dist/docs/guides/opentelemetry.md +28 -41
  319. package/dist/docs/guides/slack.html +51 -10
  320. package/dist/docs/guides/slack.md +53 -4
  321. package/dist/docs/guides/webhooks.html +42 -9
  322. package/dist/docs/guides/webhooks.md +7 -6
  323. package/dist/docs/hashmap.json +1 -1
  324. package/dist/docs/hillclimbing.html +40 -10
  325. package/dist/docs/hillclimbing.md +7 -7
  326. package/dist/docs/index.html +57 -12
  327. package/dist/docs/index.md +81 -146
  328. package/dist/docs/llms-full.txt +1368 -5551
  329. package/dist/docs/llms.txt +6 -31
  330. package/dist/docs/quickstart.html +70 -45
  331. package/dist/docs/quickstart.md +44 -105
  332. package/dist/docs/reference/agent-config.html +41 -8
  333. package/dist/docs/reference/artifacts.html +41 -8
  334. package/dist/docs/reference/channels.html +41 -18
  335. package/dist/docs/reference/channels.md +16 -19
  336. package/dist/docs/reference/cli.html +43 -10
  337. package/dist/docs/reference/cli.md +6 -20
  338. package/dist/docs/reference/connections.html +43 -10
  339. package/dist/docs/reference/connections.md +3 -5
  340. package/dist/docs/reference/extensions.html +43 -10
  341. package/dist/docs/reference/extensions.md +2 -5
  342. package/dist/docs/reference/hooks.html +42 -9
  343. package/dist/docs/reference/hooks.md +11 -16
  344. package/dist/docs/reference/http-api.html +42 -9
  345. package/dist/docs/reference/http-api.md +6 -7
  346. package/dist/docs/reference/instructions.html +41 -8
  347. package/dist/docs/reference/playground.html +40 -7
  348. package/dist/docs/reference/playground.md +2 -6
  349. package/dist/docs/reference/project-layout.html +42 -9
  350. package/dist/docs/reference/project-layout.md +4 -12
  351. package/dist/docs/reference/prompt.html +41 -8
  352. package/dist/docs/reference/schedules.html +41 -8
  353. package/dist/docs/reference/sessions.html +40 -7
  354. package/dist/docs/reference/sessions.md +6 -6
  355. package/dist/docs/reference/skills.html +41 -8
  356. package/dist/docs/reference/subagents.html +41 -8
  357. package/dist/docs/reference/subagents.md +2 -4
  358. package/dist/docs/reference/tools.html +43 -10
  359. package/dist/docs/reference/tools.md +2 -5
  360. package/dist/docs/templates/agentic-owners.html +41 -8
  361. package/dist/docs/templates/pr-autofixer.html +41 -8
  362. package/dist/docs/templates/security-reviewer.html +41 -8
  363. package/dist/docs/templates/triage.html +41 -8
  364. package/dist/docs/troubleshooting.html +40 -7
  365. package/dist/docs/troubleshooting.md +1 -2
  366. package/dist/evals/assertions.js +19 -19
  367. package/dist/evals/expect.js +1 -1
  368. package/dist/evals/judge.js +1 -1
  369. package/dist/evals/reporters.d.ts.map +1 -1
  370. package/dist/evals/reporters.js +8 -8
  371. package/dist/evals/run-facts.js +2 -2
  372. package/dist/evals.d.ts +1 -1
  373. package/dist/evals.d.ts.map +1 -1
  374. package/dist/evals.js +7 -7
  375. package/dist/extensions/cursor-cloud-agents/extension.js +1 -1
  376. package/dist/extensions/cursor-cloud-agents/lib/backend.js +3 -3
  377. package/dist/extensions/cursor-cloud-agents/lib/fleet.js +1 -1
  378. package/dist/extensions/cursor-cloud-agents/lib/repos.js +6 -6
  379. package/dist/extensions/cursor-cloud-agents/lib/transcript.d.ts.map +1 -1
  380. package/dist/extensions/cursor-cloud-agents/lib/transcript.js +2 -2
  381. package/dist/extensions/cursor-cloud-agents/tools/list.js +1 -1
  382. package/dist/extensions/improve/skills/yourself.js +1 -1
  383. package/dist/extensions/slack-communication/extension.d.ts +28 -0
  384. package/dist/extensions/slack-communication/extension.d.ts.map +1 -0
  385. package/dist/extensions/slack-communication/extension.js +32 -0
  386. package/dist/extensions/slack-communication/skills/slack-voice.d.ts +5 -0
  387. package/dist/extensions/slack-communication/skills/slack-voice.d.ts.map +1 -0
  388. package/dist/extensions/slack-communication/skills/slack-voice.js +54 -0
  389. package/dist/extensions/slack-communication/tools/delete-message.d.ts +4 -0
  390. package/dist/extensions/slack-communication/tools/delete-message.d.ts.map +1 -0
  391. package/dist/extensions/slack-communication/tools/delete-message.js +29 -0
  392. package/dist/extensions/slack-communication/tools/edit-message.d.ts +4 -0
  393. package/dist/extensions/slack-communication/tools/edit-message.d.ts.map +1 -0
  394. package/dist/extensions/slack-communication/tools/edit-message.js +37 -0
  395. package/dist/extensions/slack-communication/tools/post-card.d.ts +4 -0
  396. package/dist/extensions/slack-communication/tools/post-card.d.ts.map +1 -0
  397. package/dist/extensions/slack-communication/tools/post-card.js +25 -0
  398. package/dist/extensions/slack-communication/tools/post-file.d.ts +4 -0
  399. package/dist/extensions/slack-communication/tools/post-file.d.ts.map +1 -0
  400. package/dist/extensions/slack-communication/tools/post-file.js +76 -0
  401. package/dist/extensions/slack-communication/tools/post-update.d.ts +4 -0
  402. package/dist/extensions/slack-communication/tools/post-update.d.ts.map +1 -0
  403. package/dist/extensions/slack-communication/tools/post-update.js +36 -0
  404. package/dist/extensions/slack-communication/tools/react.d.ts +4 -0
  405. package/dist/extensions/slack-communication/tools/react.d.ts.map +1 -0
  406. package/dist/extensions/slack-communication/tools/react.js +27 -0
  407. package/dist/extensions/slack-communication/tools/set-status.d.ts +4 -0
  408. package/dist/extensions/slack-communication/tools/set-status.d.ts.map +1 -0
  409. package/dist/extensions/slack-communication/tools/set-status.js +18 -0
  410. package/dist/extensions.d.ts +2 -3
  411. package/dist/extensions.d.ts.map +1 -1
  412. package/dist/extensions.js +2 -5
  413. package/dist/files-backends/cursor-hosted.d.ts +18 -6
  414. package/dist/files-backends/cursor-hosted.d.ts.map +1 -1
  415. package/dist/files-backends/cursor-hosted.js +357 -74
  416. package/dist/files-backends/local-fs.js +1 -1
  417. package/dist/files.d.ts +15 -0
  418. package/dist/files.d.ts.map +1 -1
  419. package/dist/filesystem.d.ts.map +1 -1
  420. package/dist/filesystem.js +15 -15
  421. package/dist/index.d.ts +6 -10
  422. package/dist/index.d.ts.map +1 -1
  423. package/dist/index.js +5 -8
  424. package/dist/internal/advertise-tools.js +6 -6
  425. package/dist/internal/approval-gate.js +1 -1
  426. package/dist/internal/artifacts-store.js +3 -3
  427. package/dist/internal/as-of.js +2 -2
  428. package/dist/internal/authored-alias-hooks.d.ts +5 -0
  429. package/dist/internal/authored-alias-hooks.d.ts.map +1 -1
  430. package/dist/internal/authored-alias-hooks.js +17 -0
  431. package/dist/internal/authored-loaders.d.ts +4 -0
  432. package/dist/internal/authored-loaders.d.ts.map +1 -1
  433. package/dist/internal/authored-loaders.js +21 -2
  434. package/dist/internal/builtin-tools/reminders.js +2 -2
  435. package/dist/internal/chat-client.js +5 -5
  436. package/dist/internal/cli-ax.d.ts +2 -2
  437. package/dist/internal/cli-ax.d.ts.map +1 -1
  438. package/dist/internal/cli-ax.js +69 -15
  439. package/dist/internal/cli-bitbucket.js +10 -10
  440. package/dist/internal/cli-convert-automation.js +2 -2
  441. package/dist/internal/cli-cursor.d.ts +3 -11
  442. package/dist/internal/cli-cursor.d.ts.map +1 -1
  443. package/dist/internal/cli-cursor.js +5 -10
  444. package/dist/internal/cli-deploy.d.ts +12 -2
  445. package/dist/internal/cli-deploy.d.ts.map +1 -1
  446. package/dist/internal/cli-deploy.js +328 -96
  447. package/dist/internal/cli-docs.js +5 -5
  448. package/dist/internal/cli-github.js +15 -16
  449. package/dist/internal/cli-gitlab.js +10 -10
  450. package/dist/internal/cli-manifest.js +1 -1
  451. package/dist/internal/cli-mcp-oauth.d.ts.map +1 -1
  452. package/dist/internal/cli-mcp-oauth.js +5 -5
  453. package/dist/internal/cli-mcp.js +3 -3
  454. package/dist/internal/cli-skills.js +2 -2
  455. package/dist/internal/cli-slack.js +5 -5
  456. package/dist/internal/cloud-turn-cost.js +1 -1
  457. package/dist/internal/continuation-channel.d.ts.map +1 -1
  458. package/dist/internal/continuation-channel.js +2 -2
  459. package/dist/internal/continuation-identity.d.ts.map +1 -1
  460. package/dist/internal/continuation-identity.js +22 -12
  461. package/dist/internal/conversation-mirror.d.ts.map +1 -1
  462. package/dist/internal/conversation-mirror.js +33 -2
  463. package/dist/internal/convert-automation/convert-workflow.js +25 -24
  464. package/dist/internal/convert-automation/types.d.ts +8 -0
  465. package/dist/internal/convert-automation/types.d.ts.map +1 -1
  466. package/dist/internal/cursor/account-mcp.d.ts +2 -2
  467. package/dist/internal/cursor/account-mcp.d.ts.map +1 -1
  468. package/dist/internal/cursor/account-mcp.js +32 -27
  469. package/dist/internal/cursor/backend-client.d.ts +15 -10
  470. package/dist/internal/cursor/backend-client.d.ts.map +1 -1
  471. package/dist/internal/cursor/backend-client.js +17 -11
  472. package/dist/internal/cursor/credentials.js +1 -1
  473. package/dist/internal/cursor/hosted-store-secrets.d.ts +16 -0
  474. package/dist/internal/cursor/hosted-store-secrets.d.ts.map +1 -1
  475. package/dist/internal/cursor/hosted-store-secrets.js +25 -0
  476. package/dist/internal/cursor-account-mcp-auth.js +9 -9
  477. package/dist/internal/cursor-deployment-relay.js +9 -9
  478. package/dist/internal/cursor-event-relay.js +10 -10
  479. package/dist/internal/cursor-relay-core.js +2 -2
  480. package/dist/internal/deploy-client.d.ts +106 -9
  481. package/dist/internal/deploy-client.d.ts.map +1 -1
  482. package/dist/internal/deploy-client.js +171 -23
  483. package/dist/internal/deploy-manifest.d.ts +13 -0
  484. package/dist/internal/deploy-manifest.d.ts.map +1 -1
  485. package/dist/internal/deploy-manifest.js +32 -16
  486. package/dist/internal/discovery/agent-config.d.ts +5 -0
  487. package/dist/internal/discovery/agent-config.d.ts.map +1 -1
  488. package/dist/internal/discovery/agent-config.js +27 -0
  489. package/dist/internal/discovery/agent.d.ts +1 -1
  490. package/dist/internal/discovery/agent.d.ts.map +1 -1
  491. package/dist/internal/discovery/agent.js +10 -13
  492. package/dist/internal/discovery/channels.js +4 -4
  493. package/dist/internal/discovery/connections.js +4 -4
  494. package/dist/internal/discovery/cursor-plugin.js +12 -12
  495. package/dist/internal/discovery/extension-overlay.d.ts +1 -2
  496. package/dist/internal/discovery/extension-overlay.d.ts.map +1 -1
  497. package/dist/internal/discovery/extension-overlay.js +3 -17
  498. package/dist/internal/discovery/extensions.d.ts +1 -2
  499. package/dist/internal/discovery/extensions.d.ts.map +1 -1
  500. package/dist/internal/discovery/extensions.js +10 -28
  501. package/dist/internal/discovery/info.d.ts.map +1 -1
  502. package/dist/internal/discovery/info.js +44 -26
  503. package/dist/internal/discovery/instructions.js +1 -1
  504. package/dist/internal/discovery/modules.js +0 -1
  505. package/dist/internal/discovery/project.d.ts.map +1 -1
  506. package/dist/internal/discovery/project.js +4 -20
  507. package/dist/internal/discovery/services.js +1 -1
  508. package/dist/internal/discovery/tools.js +1 -1
  509. package/dist/internal/docs-site.js +2 -2
  510. package/dist/internal/env-file.js +1 -1
  511. package/dist/internal/eval-run-store.d.ts.map +1 -1
  512. package/dist/internal/eval-run-store.js +7 -7
  513. package/dist/internal/eval-runner.js +14 -15
  514. package/dist/internal/evals-client.js +4 -4
  515. package/dist/internal/event-log.js +8 -8
  516. package/dist/internal/event-mapper.d.ts +18 -0
  517. package/dist/internal/event-mapper.d.ts.map +1 -1
  518. package/dist/internal/event-mapper.js +34 -2
  519. package/dist/internal/filesystem/format.d.ts.map +1 -1
  520. package/dist/internal/filesystem/format.js +6 -3
  521. package/dist/internal/filesystem/scratch.js +3 -3
  522. package/dist/internal/filesystem/tools.d.ts.map +1 -1
  523. package/dist/internal/filesystem/tools.js +6 -6
  524. package/dist/internal/filesystem/walk.js +1 -1
  525. package/dist/internal/framework-file-storage.d.ts +10 -7
  526. package/dist/internal/framework-file-storage.d.ts.map +1 -1
  527. package/dist/internal/framework-file-storage.js +95 -7
  528. package/dist/internal/framework-storage-selection.d.ts +2 -8
  529. package/dist/internal/framework-storage-selection.d.ts.map +1 -1
  530. package/dist/internal/framework-storage-selection.js +4 -13
  531. package/dist/internal/github-fanout.js +3 -3
  532. package/dist/internal/guest-network.js +4 -4
  533. package/dist/internal/host-files.js +1 -1
  534. package/dist/internal/host-kv.js +2 -2
  535. package/dist/internal/hosted-admission-adapter.d.ts +2 -0
  536. package/dist/internal/hosted-admission-adapter.d.ts.map +1 -1
  537. package/dist/internal/hosted-catch-protocol.d.ts.map +1 -1
  538. package/dist/internal/hosted-catch-protocol.js +2 -4
  539. package/dist/internal/hosted-catch.js +1 -1
  540. package/dist/internal/hosted-delivery-protocol.d.ts +29 -0
  541. package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
  542. package/dist/internal/hosted-delivery-protocol.js +76 -8
  543. package/dist/internal/hosted-delivery.d.ts.map +1 -1
  544. package/dist/internal/hosted-delivery.js +201 -64
  545. package/dist/internal/hosted-execution-diag.js +3 -3
  546. package/dist/internal/hosted-execution-latency.d.ts +80 -0
  547. package/dist/internal/hosted-execution-latency.d.ts.map +1 -0
  548. package/dist/internal/hosted-execution-latency.js +220 -0
  549. package/dist/internal/hosting.d.ts +5 -5
  550. package/dist/internal/hosting.d.ts.map +1 -1
  551. package/dist/internal/hosting.js +5 -6
  552. package/dist/internal/http-channel-define.d.ts +11 -0
  553. package/dist/internal/http-channel-define.d.ts.map +1 -0
  554. package/dist/internal/http-channel-define.js +18 -0
  555. package/dist/internal/http-channel.d.ts +2 -3
  556. package/dist/internal/http-channel.d.ts.map +1 -1
  557. package/dist/internal/http-channel.js +3 -4
  558. package/dist/internal/http-control-plane-session.d.ts +7 -3
  559. package/dist/internal/http-control-plane-session.d.ts.map +1 -1
  560. package/dist/internal/http-control-plane-session.js +22 -10
  561. package/dist/internal/incoming-headers-to-fetch.d.ts +10 -0
  562. package/dist/internal/incoming-headers-to-fetch.d.ts.map +1 -0
  563. package/dist/internal/incoming-headers-to-fetch.js +41 -0
  564. package/dist/internal/init-interview.js +7 -7
  565. package/dist/internal/init-project.d.ts.map +1 -1
  566. package/dist/internal/init-project.js +14 -14
  567. package/dist/internal/init-scaffold.d.ts.map +1 -1
  568. package/dist/internal/init-scaffold.js +2 -3
  569. package/dist/internal/inline-stdio-mcp.js +2 -2
  570. package/dist/internal/install-cursor-skills.d.ts +5 -2
  571. package/dist/internal/install-cursor-skills.d.ts.map +1 -1
  572. package/dist/internal/install-cursor-skills.js +35 -15
  573. package/dist/internal/json-schema.js +1 -1
  574. package/dist/internal/local-control-plane.d.ts.map +1 -1
  575. package/dist/internal/local-control-plane.js +3 -3
  576. package/dist/internal/local-env.js +3 -3
  577. package/dist/internal/log-ring.js +1 -1
  578. package/dist/internal/logs-client.js +1 -1
  579. package/dist/internal/mcp-endpoint.js +8 -8
  580. package/dist/internal/mcp-host.js +4 -4
  581. package/dist/internal/mcp-oauth-on-demand.js +3 -3
  582. package/dist/internal/mcp-oauth.js +5 -5
  583. package/dist/internal/net.js +2 -2
  584. package/dist/internal/otel/config.js +3 -3
  585. package/dist/internal/otel/runtime.js +13 -13
  586. package/dist/internal/peer-connections.js +2 -2
  587. package/dist/internal/platform-schedule-sync.js +1 -1
  588. package/dist/internal/platform-timers.js +1 -1
  589. package/dist/internal/playground/static.js +2 -2
  590. package/dist/internal/playground/toolchain.js +2 -2
  591. package/dist/internal/playground-proxy.js +3 -3
  592. package/dist/internal/process-memory-telemetry.js +1 -1
  593. package/dist/internal/reminder-runner.d.ts.map +1 -1
  594. package/dist/internal/reminder-runner.js +7 -7
  595. package/dist/internal/reminder-store.js +1 -1
  596. package/dist/internal/request-error-status.d.ts.map +1 -1
  597. package/dist/internal/request-error-status.js +9 -0
  598. package/dist/internal/resolved-connections.js +8 -8
  599. package/dist/internal/result-output.d.ts +14 -2
  600. package/dist/internal/result-output.d.ts.map +1 -1
  601. package/dist/internal/result-output.js +45 -2
  602. package/dist/internal/router.js +4 -4
  603. package/dist/internal/run-client.d.ts +1 -1
  604. package/dist/internal/run-client.js +2 -2
  605. package/dist/internal/schedule-runner.js +6 -6
  606. package/dist/internal/scm/pr-url.d.ts +3 -1
  607. package/dist/internal/scm/pr-url.d.ts.map +1 -1
  608. package/dist/internal/scm/pr-url.js +10 -2
  609. package/dist/internal/sdk-runner.d.ts.map +1 -1
  610. package/dist/internal/sdk-runner.js +15 -16
  611. package/dist/internal/serve-restart.js +1 -1
  612. package/dist/internal/server.d.ts.map +1 -1
  613. package/dist/internal/server.js +81 -101
  614. package/dist/internal/session-cost.js +3 -3
  615. package/dist/internal/session-engine.d.ts +39 -35
  616. package/dist/internal/session-engine.d.ts.map +1 -1
  617. package/dist/internal/session-engine.js +394 -343
  618. package/dist/internal/session-run-log.d.ts.map +1 -1
  619. package/dist/internal/session-run-log.js +4 -4
  620. package/dist/internal/session-store.d.ts +47 -3
  621. package/dist/internal/session-store.d.ts.map +1 -1
  622. package/dist/internal/session-store.js +198 -33
  623. package/dist/internal/sessions-client.js +3 -3
  624. package/dist/internal/slack-thread-key.d.ts +7 -0
  625. package/dist/internal/slack-thread-key.d.ts.map +1 -0
  626. package/dist/internal/slack-thread-key.js +10 -0
  627. package/dist/internal/sleep.js +1 -1
  628. package/dist/internal/storage-coordinator.d.ts +22 -19
  629. package/dist/internal/storage-coordinator.d.ts.map +1 -1
  630. package/dist/internal/storage-coordinator.js +114 -73
  631. package/dist/internal/storage-roles.d.ts +4 -9
  632. package/dist/internal/storage-roles.d.ts.map +1 -1
  633. package/dist/internal/storage-roles.js +2 -2
  634. package/dist/internal/storage.d.ts +2 -0
  635. package/dist/internal/storage.d.ts.map +1 -0
  636. package/dist/internal/storage.js +1 -0
  637. package/dist/internal/store-mirror.js +4 -4
  638. package/dist/internal/terminal-style.js +2 -2
  639. package/dist/internal/tool-result.js +3 -3
  640. package/dist/internal/trajectory.js +7 -7
  641. package/dist/internal/turn-governor.js +2 -2
  642. package/dist/internal/turn-outbox.js +1 -1
  643. package/dist/internal/update-check.js +2 -2
  644. package/dist/internal/v2-hosting.d.ts +9 -0
  645. package/dist/internal/v2-hosting.d.ts.map +1 -1
  646. package/dist/internal/v2-hosting.js +10 -0
  647. package/dist/internal/workspace.d.ts +13 -10
  648. package/dist/internal/workspace.d.ts.map +1 -1
  649. package/dist/internal/workspace.js +17 -16
  650. package/dist/kv/memory-kv.d.ts +6 -4
  651. package/dist/kv/memory-kv.d.ts.map +1 -1
  652. package/dist/kv/memory-kv.js +9 -7
  653. package/dist/kv.d.ts +4 -7
  654. package/dist/kv.d.ts.map +1 -1
  655. package/dist/kv.js +4 -7
  656. package/dist/otel-public.d.ts +7 -0
  657. package/dist/otel-public.d.ts.map +1 -0
  658. package/dist/otel-public.js +5 -0
  659. package/dist/otel.d.ts +7 -2
  660. package/dist/otel.d.ts.map +1 -1
  661. package/dist/otel.js +7 -2
  662. package/dist/playground/assets/index-BLlKgZtI.css +1 -0
  663. package/dist/playground/assets/index-CDS5p9sR.js +67 -0
  664. package/dist/playground/index.html +2 -2
  665. package/dist/prompt.js +1 -1
  666. package/dist/result.d.ts +10 -4
  667. package/dist/result.d.ts.map +1 -1
  668. package/dist/result.js +9 -3
  669. package/dist/storage-backends/cursor-hosted-v2.d.ts +4 -5
  670. package/dist/storage-backends/cursor-hosted-v2.d.ts.map +1 -1
  671. package/dist/storage-backends/cursor-hosted-v2.js +6 -7
  672. package/dist/storage-backends/cursor-hosted.d.ts +6 -19
  673. package/dist/storage-backends/cursor-hosted.d.ts.map +1 -1
  674. package/dist/storage-backends/cursor-hosted.js +6 -50
  675. package/dist/storage-backends/file-kv.d.ts +9 -12
  676. package/dist/storage-backends/file-kv.d.ts.map +1 -1
  677. package/dist/storage-backends/file-kv.js +18 -54
  678. package/dist/storage-protocol.d.ts +3 -11
  679. package/dist/storage-protocol.d.ts.map +1 -1
  680. package/dist/storage-protocol.js +3 -11
  681. package/dist/storage.d.ts +28 -38
  682. package/dist/storage.d.ts.map +1 -1
  683. package/dist/storage.js +15 -50
  684. package/dist/types.d.ts +87 -68
  685. package/dist/types.d.ts.map +1 -1
  686. package/dist/types.js +12 -4
  687. package/docs/README.md +83 -148
  688. package/docs/building-with-agents.md +15 -16
  689. package/docs/deployment.md +6 -7
  690. package/docs/evals.md +613 -298
  691. package/docs/guides/agent-to-agent.md +41 -84
  692. package/docs/guides/bitbucket.md +89 -0
  693. package/docs/guides/cloud-agents.md +25 -20
  694. package/docs/guides/github.md +32 -1
  695. package/docs/guides/gitlab.md +97 -0
  696. package/docs/guides/grokbot-agents.md +27 -19
  697. package/docs/guides/mcp-oauth.md +1 -1
  698. package/docs/guides/opentelemetry.md +28 -41
  699. package/docs/guides/slack.md +53 -4
  700. package/docs/guides/webhooks.md +7 -6
  701. package/docs/hillclimbing.md +7 -7
  702. package/docs/quickstart.md +45 -106
  703. package/docs/reference/channels.md +16 -19
  704. package/docs/reference/cli.md +6 -20
  705. package/docs/reference/connections.md +3 -5
  706. package/docs/reference/extensions.md +2 -5
  707. package/docs/reference/hooks.md +11 -16
  708. package/docs/reference/http-api.md +6 -7
  709. package/docs/reference/playground.md +2 -6
  710. package/docs/reference/project-layout.md +4 -12
  711. package/docs/reference/sessions.md +6 -6
  712. package/docs/reference/subagents.md +2 -4
  713. package/docs/reference/tools.md +2 -5
  714. package/docs/troubleshooting.md +1 -2
  715. package/package.json +55 -43
  716. package/skills/deploy/SKILL.md +169 -0
  717. package/skills/evals/SKILL.md +45 -8
  718. package/skills/framework-map/SKILL.md +3 -4
  719. package/skills/otel/SKILL.md +8 -18
  720. package/src/bin/agent-serve.ts +93 -72
  721. package/src/channels/bitbucket/api.ts +347 -6
  722. package/src/channels/bitbucket/binding.ts +29 -4
  723. package/src/channels/bitbucket/bitbucket-channel.ts +1 -1
  724. package/src/channels/bitbucket/bitbucket-webhook.ts +1 -1
  725. package/src/channels/bitbucket/checks.ts +3 -4
  726. package/src/channels/bitbucket/cursor-account.ts +1 -1
  727. package/src/channels/bitbucket/events.ts +1 -1
  728. package/src/channels/bitbucket/index.ts +2 -0
  729. package/src/channels/change-monitors/change-monitors-channel.ts +2 -2
  730. package/src/channels/checks.ts +5 -4
  731. package/src/channels/deployments/deployments-channel.ts +1 -1
  732. package/src/channels/github/api.ts +1 -1
  733. package/src/channels/github/checks.ts +1 -1
  734. package/src/channels/github/cursor-account.ts +3 -3
  735. package/src/channels/github/defaults.ts +8 -4
  736. package/src/channels/github/events.ts +1 -1
  737. package/src/channels/github/forward.ts +8 -8
  738. package/src/channels/github/github-channel.ts +19 -2
  739. package/src/channels/github/progress.ts +7 -2
  740. package/src/channels/github/state.ts +6 -0
  741. package/src/channels/github/types.ts +6 -0
  742. package/src/channels/gitlab/api.ts +123 -0
  743. package/src/channels/gitlab/binding.ts +16 -4
  744. package/src/channels/gitlab/checks.ts +3 -4
  745. package/src/channels/gitlab/cursor-account.ts +1 -1
  746. package/src/channels/gitlab/events.ts +1 -1
  747. package/src/channels/gitlab/gitlab-channel.ts +1 -1
  748. package/src/channels/gitlab/gitlab-webhook.ts +1 -1
  749. package/src/channels/gitlab/index.ts +1 -0
  750. package/src/channels/gitlab/replay.ts +2 -2
  751. package/src/channels/origin/binding.ts +6 -3
  752. package/src/channels/origin/checks.ts +27 -17
  753. package/src/channels/origin/cursor-account.ts +1 -1
  754. package/src/channels/origin/defaults.ts +5 -1
  755. package/src/channels/origin/events.ts +1 -1
  756. package/src/channels/origin/origin-channel.ts +2 -1
  757. package/src/channels/origin/origin-webhook.ts +2 -2
  758. package/src/channels/slack/agentic-delivery.ts +659 -0
  759. package/src/channels/slack/agentic-posted.ts +148 -0
  760. package/src/channels/slack/agentic-signals.ts +248 -0
  761. package/src/channels/slack/api.ts +51 -11
  762. package/src/channels/slack/approvals.ts +1 -1
  763. package/src/channels/slack/attachments.ts +1 -1
  764. package/src/channels/slack/auth.ts +3 -1
  765. package/src/channels/slack/blocks.ts +3 -3
  766. package/src/channels/slack/bot-mentions.ts +5 -7
  767. package/src/channels/slack/channel-watch.ts +1 -1
  768. package/src/channels/slack/cli-project.ts +3 -3
  769. package/src/channels/slack/defaults.ts +109 -37
  770. package/src/channels/slack/dispatch.ts +323 -164
  771. package/src/channels/slack/doctor.ts +1 -1
  772. package/src/channels/slack/eval-directive.ts +1 -1
  773. package/src/channels/slack/external-policy.ts +15 -2
  774. package/src/channels/slack/footer.ts +108 -0
  775. package/src/channels/slack/index.ts +2 -0
  776. package/src/channels/slack/interactive.ts +4 -2
  777. package/src/channels/slack/live-delivery.ts +23 -7
  778. package/src/channels/slack/log.ts +1 -1
  779. package/src/channels/slack/manifest.ts +1 -1
  780. package/src/channels/slack/nudge-carrier.ts +1 -1
  781. package/src/channels/slack/nudge-store.ts +2 -2
  782. package/src/channels/slack/paint-start.ts +93 -0
  783. package/src/channels/slack/placeholder.ts +315 -0
  784. package/src/channels/slack/progress-delivery.ts +14 -1
  785. package/src/channels/slack/reasoning-chip.ts +48 -0
  786. package/src/channels/slack/recording-sink.ts +176 -0
  787. package/src/channels/slack/reply-options.ts +71 -15
  788. package/src/channels/slack/setup.ts +1 -1
  789. package/src/channels/slack/slack-channel.ts +140 -18
  790. package/src/channels/slack/socket-mode.ts +2 -2
  791. package/src/channels/slack/thread-context.ts +5 -5
  792. package/src/channels/slack/tool-approval-events.ts +54 -38
  793. package/src/channels/slack/tool-cards.ts +1 -1
  794. package/src/channels/slack/tool-chip.ts +36 -0
  795. package/src/channels/slack/types.ts +47 -7
  796. package/src/channels/slack/upload.ts +142 -0
  797. package/src/channels.ts +12 -30
  798. package/src/dashboard-session-url.ts +32 -0
  799. package/src/evals/assertions.ts +19 -19
  800. package/src/evals/expect.ts +1 -1
  801. package/src/evals/judge.ts +1 -1
  802. package/src/evals/reporters.ts +8 -9
  803. package/src/evals/run-facts.ts +2 -2
  804. package/src/evals.ts +7 -10
  805. package/src/extensions/cursor-cloud-agents/extension.ts +1 -1
  806. package/src/extensions/cursor-cloud-agents/lib/backend.ts +3 -3
  807. package/src/extensions/cursor-cloud-agents/lib/fleet.ts +1 -1
  808. package/src/extensions/cursor-cloud-agents/lib/repos.ts +3 -3
  809. package/src/extensions/cursor-cloud-agents/lib/transcript.ts +3 -4
  810. package/src/extensions/cursor-cloud-agents/tools/list.ts +1 -1
  811. package/src/extensions/improve/skills/yourself.ts +1 -1
  812. package/src/extensions/slack-communication/evals/harness.ts +728 -0
  813. package/src/extensions/slack-communication/evals/slack-communication.eval.ts +953 -0
  814. package/src/extensions/slack-communication/evals/slack-placeholder.eval.ts +194 -0
  815. package/src/extensions/slack-communication/extension.ts +45 -0
  816. package/src/extensions/slack-communication/skills/slack-voice.ts +59 -0
  817. package/src/extensions/slack-communication/tools/delete-message.ts +34 -0
  818. package/src/extensions/slack-communication/tools/edit-message.ts +42 -0
  819. package/src/extensions/slack-communication/tools/post-card.ts +28 -0
  820. package/src/extensions/slack-communication/tools/post-file.ts +85 -0
  821. package/src/extensions/slack-communication/tools/post-update.ts +41 -0
  822. package/src/extensions/slack-communication/tools/react.ts +33 -0
  823. package/src/extensions/slack-communication/tools/set-status.ts +21 -0
  824. package/src/extensions.ts +2 -6
  825. package/src/files-backends/cursor-hosted.ts +502 -98
  826. package/src/files-backends/local-fs.ts +1 -1
  827. package/src/files.ts +15 -0
  828. package/src/filesystem.ts +16 -18
  829. package/src/index.ts +4 -39
  830. package/src/internal/advertise-tools.ts +6 -6
  831. package/src/internal/approval-gate.ts +1 -1
  832. package/src/internal/artifacts-store.ts +3 -3
  833. package/src/internal/as-of.ts +2 -2
  834. package/src/internal/authored-alias-hooks.ts +32 -0
  835. package/src/internal/authored-loaders.ts +25 -2
  836. package/src/internal/builtin-tools/reminders.ts +2 -2
  837. package/src/internal/chat-client.ts +5 -5
  838. package/src/internal/cli-ax.ts +85 -16
  839. package/src/internal/cli-bitbucket.ts +11 -11
  840. package/src/internal/cli-convert-automation.ts +2 -2
  841. package/src/internal/cli-cursor.ts +5 -16
  842. package/src/internal/cli-deploy.ts +389 -104
  843. package/src/internal/cli-docs.ts +5 -5
  844. package/src/internal/cli-github.ts +16 -19
  845. package/src/internal/cli-gitlab.ts +11 -11
  846. package/src/internal/cli-manifest.ts +1 -1
  847. package/src/internal/cli-mcp-oauth.ts +5 -7
  848. package/src/internal/cli-mcp.ts +3 -3
  849. package/src/internal/cli-skills.ts +2 -2
  850. package/src/internal/cli-slack.ts +5 -5
  851. package/src/internal/cloud-turn-cost.ts +1 -1
  852. package/src/internal/continuation-channel.ts +2 -1
  853. package/src/internal/continuation-identity.ts +23 -11
  854. package/src/internal/conversation-mirror.ts +36 -3
  855. package/src/internal/convert-automation/convert-workflow.ts +27 -27
  856. package/src/internal/convert-automation/types.ts +9 -0
  857. package/src/internal/cursor/account-mcp.ts +48 -31
  858. package/src/internal/cursor/backend-client.ts +28 -17
  859. package/src/internal/cursor/credentials.ts +1 -1
  860. package/src/internal/cursor/hosted-store-secrets.ts +34 -0
  861. package/src/internal/cursor-account-mcp-auth.ts +9 -9
  862. package/src/internal/cursor-deployment-relay.ts +10 -10
  863. package/src/internal/cursor-event-relay.ts +10 -10
  864. package/src/internal/cursor-relay-core.ts +2 -2
  865. package/src/internal/deploy-client.ts +266 -24
  866. package/src/internal/deploy-manifest.ts +46 -8
  867. package/src/internal/discovery/agent-config.ts +34 -0
  868. package/src/internal/discovery/agent.ts +15 -13
  869. package/src/internal/discovery/channels.ts +4 -4
  870. package/src/internal/discovery/connections.ts +4 -4
  871. package/src/internal/discovery/cursor-plugin.ts +12 -12
  872. package/src/internal/discovery/extension-overlay.ts +3 -21
  873. package/src/internal/discovery/extensions.ts +8 -32
  874. package/src/internal/discovery/info.ts +12 -22
  875. package/src/internal/discovery/instructions.ts +1 -1
  876. package/src/internal/discovery/modules.ts +0 -1
  877. package/src/internal/discovery/project.ts +4 -20
  878. package/src/internal/discovery/services.ts +1 -1
  879. package/src/internal/discovery/tools.ts +1 -1
  880. package/src/internal/docs-site.ts +2 -2
  881. package/src/internal/env-file.ts +2 -2
  882. package/src/internal/eval-run-store.ts +7 -9
  883. package/src/internal/eval-runner.ts +20 -21
  884. package/src/internal/evals-client.ts +6 -6
  885. package/src/internal/event-log.ts +10 -10
  886. package/src/internal/event-mapper.ts +37 -2
  887. package/src/internal/filesystem/format.ts +11 -12
  888. package/src/internal/filesystem/scratch.ts +3 -3
  889. package/src/internal/filesystem/tools.ts +6 -8
  890. package/src/internal/filesystem/walk.ts +1 -1
  891. package/src/internal/framework-file-storage.ts +108 -9
  892. package/src/internal/framework-storage-selection.ts +4 -14
  893. package/src/internal/github-fanout.ts +4 -4
  894. package/src/internal/guest-network.ts +4 -4
  895. package/src/internal/host-files.ts +1 -1
  896. package/src/internal/host-kv.ts +2 -2
  897. package/src/internal/hosted-admission-adapter.ts +2 -0
  898. package/src/internal/hosted-catch-protocol.ts +3 -5
  899. package/src/internal/hosted-catch.ts +1 -1
  900. package/src/internal/hosted-delivery-protocol.ts +111 -13
  901. package/src/internal/hosted-delivery.ts +286 -81
  902. package/src/internal/hosted-execution-diag.ts +3 -3
  903. package/src/internal/hosted-execution-latency.ts +334 -0
  904. package/src/internal/hosting.ts +5 -6
  905. package/src/internal/http-channel-define.ts +27 -0
  906. package/src/internal/http-channel.ts +3 -4
  907. package/src/internal/http-control-plane-session.ts +24 -11
  908. package/src/internal/incoming-headers-to-fetch.ts +54 -0
  909. package/src/internal/init-interview.ts +7 -7
  910. package/src/internal/init-project.ts +14 -16
  911. package/src/internal/init-scaffold.ts +2 -3
  912. package/src/internal/inline-stdio-mcp.ts +2 -2
  913. package/src/internal/install-cursor-skills.ts +49 -16
  914. package/src/internal/json-schema.ts +1 -1
  915. package/src/internal/local-control-plane.ts +4 -5
  916. package/src/internal/local-env.ts +3 -3
  917. package/src/internal/log-ring.ts +1 -1
  918. package/src/internal/logs-client.ts +1 -1
  919. package/src/internal/mcp-endpoint.ts +10 -10
  920. package/src/internal/mcp-host.ts +9 -9
  921. package/src/internal/mcp-oauth-on-demand.ts +3 -3
  922. package/src/internal/mcp-oauth.ts +5 -5
  923. package/src/internal/net.ts +2 -2
  924. package/src/internal/otel/config.ts +3 -3
  925. package/src/internal/otel/runtime.ts +14 -14
  926. package/src/internal/peer-connections.ts +2 -2
  927. package/src/internal/platform-schedule-sync.ts +1 -1
  928. package/src/internal/platform-timers.ts +1 -1
  929. package/src/internal/playground/static.ts +2 -2
  930. package/src/internal/playground/toolchain.ts +2 -2
  931. package/src/internal/playground-proxy.ts +3 -3
  932. package/src/internal/process-memory-telemetry.ts +1 -1
  933. package/src/internal/reminder-runner.ts +8 -10
  934. package/src/internal/reminder-store.ts +1 -1
  935. package/src/internal/request-error-status.ts +9 -0
  936. package/src/internal/resolved-connections.ts +8 -8
  937. package/src/internal/result-output.ts +62 -5
  938. package/src/internal/router.ts +4 -4
  939. package/src/internal/run-client.ts +3 -3
  940. package/src/internal/schedule-runner.ts +6 -6
  941. package/src/internal/scm/pr-url.ts +11 -2
  942. package/src/internal/sdk-runner.ts +15 -29
  943. package/src/internal/serve-restart.ts +1 -1
  944. package/src/internal/server.ts +97 -115
  945. package/src/internal/session-cost.ts +3 -3
  946. package/src/internal/session-engine.ts +517 -445
  947. package/src/internal/session-run-log.ts +4 -6
  948. package/src/internal/session-store.ts +213 -39
  949. package/src/internal/sessions-client.ts +3 -3
  950. package/src/internal/slack-thread-key.ts +11 -0
  951. package/src/internal/sleep.ts +1 -1
  952. package/src/internal/storage-coordinator.ts +122 -96
  953. package/src/internal/storage-roles.ts +4 -9
  954. package/src/internal/storage.ts +1 -0
  955. package/src/internal/store-mirror.ts +4 -4
  956. package/src/internal/terminal-style.ts +2 -2
  957. package/src/internal/tool-result.ts +3 -3
  958. package/src/internal/trajectory.ts +7 -7
  959. package/src/internal/turn-governor.ts +2 -2
  960. package/src/internal/turn-outbox.ts +1 -1
  961. package/src/internal/update-check.ts +2 -2
  962. package/src/internal/v2-hosting.ts +14 -0
  963. package/src/internal/workspace.ts +17 -17
  964. package/src/kv/memory-kv.ts +9 -7
  965. package/src/kv.ts +4 -7
  966. package/src/otel-public.ts +24 -0
  967. package/src/otel.ts +7 -2
  968. package/src/prompt.ts +1 -1
  969. package/src/result.ts +10 -8
  970. package/src/storage-backends/cursor-hosted-v2.ts +6 -9
  971. package/src/storage-backends/cursor-hosted.ts +6 -60
  972. package/src/storage-backends/file-kv.ts +17 -58
  973. package/src/storage-protocol.ts +3 -17
  974. package/src/storage.ts +32 -108
  975. package/src/types.ts +101 -73
  976. package/templates/agentic-owners/agent/channels/github.ts +3 -6
  977. package/templates/agentic-owners/agent/lib/github.ts +5 -5
  978. package/templates/agentic-owners/agent/lib/owners/decision.ts +13 -10
  979. package/templates/agentic-owners/agent/lib/owners/handles.ts +2 -2
  980. package/templates/agentic-owners/agent/lib/owners/match.ts +3 -3
  981. package/templates/agentic-owners/agent/lib/owners/matching.ts +1 -1
  982. package/templates/agentic-owners/agent/lib/owners/parse.ts +4 -9
  983. package/templates/agentic-owners/agent/lib/owners/prompt.ts +1 -1
  984. package/templates/agentic-owners/agent/lib/review.ts +37 -30
  985. package/templates/agentic-owners/evals/owners.eval.ts +2 -2
  986. package/templates/agentic-owners/package.json +1 -1
  987. package/templates/agents-md/agent/lib/collect.ts +16 -10
  988. package/templates/agents-md/agent/lib/config.ts +1 -1
  989. package/templates/agents-md/agent/tools/apply_agents.ts +10 -8
  990. package/templates/agents-md/package.json +1 -1
  991. package/templates/code-wiki/agent/channels/github.ts +4 -7
  992. package/templates/code-wiki/agent/lib/repos.ts +1 -1
  993. package/templates/code-wiki/agent/tools/apply_wiki.ts +3 -4
  994. package/templates/code-wiki/package.json +1 -1
  995. package/templates/demo/README.md +10 -6
  996. package/templates/demo/agent/channels/github.ts +2 -0
  997. package/templates/demo/agent/channels/queue.ts +6 -2
  998. package/templates/demo/agent/lib/collect.ts +6 -2
  999. package/templates/demo/agent/lib/repos.ts +5 -0
  1000. package/templates/demo/agent/tools/record_demo.ts +1 -1
  1001. package/templates/demo/evals/demo.eval.ts +1 -5
  1002. package/templates/demo/init.json +25 -0
  1003. package/templates/demo/package.json +1 -1
  1004. package/templates/grokbot-agents/package.json +1 -1
  1005. package/templates/pr-autofixer/agent/channels/github.ts +16 -13
  1006. package/templates/pr-autofixer/agent/lib/merge-watch.ts +2 -4
  1007. package/templates/pr-autofixer/agent/lib/repos.ts +2 -2
  1008. package/templates/pr-autofixer/agent/lib/webhook-routing.ts +1 -1
  1009. package/templates/pr-autofixer/package.json +1 -1
  1010. package/templates/security-help/agent/lib/repos.ts +1 -1
  1011. package/templates/security-help/package.json +1 -1
  1012. package/templates/security-reviewer/agent/lib/repos.ts +1 -1
  1013. package/templates/security-reviewer/agent/tools/post_findings.ts +1 -3
  1014. package/templates/security-reviewer/package.json +1 -1
  1015. package/templates/triage/agent/lib/actuate.ts +26 -41
  1016. package/templates/triage/agent/lib/parse-queue-event.ts +2 -1
  1017. package/templates/triage/agent/lib/verify-webhook.ts +10 -5
  1018. package/templates/triage/agent/tools/record_triage.ts +1 -4
  1019. package/templates/triage/package.json +1 -1
  1020. package/dist/ab.d.ts +0 -209
  1021. package/dist/ab.d.ts.map +0 -1
  1022. package/dist/ab.js +0 -246
  1023. package/dist/client.d.ts +0 -14
  1024. package/dist/client.d.ts.map +0 -1
  1025. package/dist/client.js +0 -12
  1026. package/dist/docs/ab.html +0 -80
  1027. package/dist/docs/ab.md +0 -332
  1028. package/dist/docs/assets/ab.md.mlVgqvSk.js +0 -54
  1029. package/dist/docs/assets/ab.md.mlVgqvSk.lean.js +0 -1
  1030. package/dist/docs/assets/app.BASKM3M4.js +0 -1
  1031. package/dist/docs/assets/chunks/@localSearchIndexroot.BHZYsNVi.js +0 -1
  1032. package/dist/docs/assets/chunks/framework.BCISBCiQ.js +0 -19
  1033. package/dist/docs/assets/concepts.md.DgEcZOfT.js +0 -1
  1034. package/dist/docs/assets/concepts.md.DgEcZOfT.lean.js +0 -1
  1035. package/dist/docs/assets/evals.md.C1ekS3k2.js +0 -85
  1036. package/dist/docs/assets/evals.md.C1ekS3k2.lean.js +0 -1
  1037. package/dist/docs/assets/guides_agent-to-agent.md.BDb0t1QV.js +0 -10
  1038. package/dist/docs/assets/guides_agent-to-agent.md.BDb0t1QV.lean.js +0 -1
  1039. package/dist/docs/assets/guides_grokbot-agents.md.DyV-WArv.js +0 -9
  1040. package/dist/docs/assets/guides_human-in-the-loop.md.By1G2T3_.js +0 -28
  1041. package/dist/docs/assets/guides_human-in-the-loop.md.By1G2T3_.lean.js +0 -1
  1042. package/dist/docs/assets/hillclimbing.md.CpTGTCle.js +0 -4
  1043. package/dist/docs/assets/hillclimbing.md.CpTGTCle.lean.js +0 -1
  1044. package/dist/docs/assets/index.md.BjH1w2ZW.js +0 -5
  1045. package/dist/docs/assets/index.md.BjH1w2ZW.lean.js +0 -1
  1046. package/dist/docs/assets/quickstart.md.DdQOF7Y8.lean.js +0 -1
  1047. package/dist/docs/assets/reference_project-layout.md.DuBu9a96.js +0 -19
  1048. package/dist/docs/assets/reference_result.md.BK5SxDrf.js +0 -19
  1049. package/dist/docs/assets/reference_result.md.BK5SxDrf.lean.js +0 -1
  1050. package/dist/docs/assets/reference_sessions.md.CueyOHSL.js +0 -1
  1051. package/dist/docs/assets/scaffolding-agents.md.Kctn3OVb.js +0 -1
  1052. package/dist/docs/assets/scaffolding-agents.md.Kctn3OVb.lean.js +0 -1
  1053. package/dist/docs/assets/skills_ab.md.CsFNatVx.js +0 -26
  1054. package/dist/docs/assets/skills_ab.md.CsFNatVx.lean.js +0 -1
  1055. package/dist/docs/assets/skills_create-agent.md.Q3h6Je-e.js +0 -8
  1056. package/dist/docs/assets/skills_create-agent.md.Q3h6Je-e.lean.js +0 -1
  1057. package/dist/docs/assets/skills_debug.md.CVjCXMFF.js +0 -1
  1058. package/dist/docs/assets/skills_debug.md.CVjCXMFF.lean.js +0 -1
  1059. package/dist/docs/assets/skills_evals.md.BhovOvrl.js +0 -25
  1060. package/dist/docs/assets/skills_evals.md.BhovOvrl.lean.js +0 -1
  1061. package/dist/docs/assets/skills_framework-map.md.D-tFZhFS.js +0 -1
  1062. package/dist/docs/assets/skills_framework-map.md.D-tFZhFS.lean.js +0 -1
  1063. package/dist/docs/assets/skills_github.md.hgFX_oKY.js +0 -16
  1064. package/dist/docs/assets/skills_github.md.hgFX_oKY.lean.js +0 -1
  1065. package/dist/docs/assets/skills_hillclimb.md.B_zJerxA.js +0 -7
  1066. package/dist/docs/assets/skills_hillclimb.md.B_zJerxA.lean.js +0 -1
  1067. package/dist/docs/assets/skills_index.md.DKwIxzGg.js +0 -1
  1068. package/dist/docs/assets/skills_index.md.DKwIxzGg.lean.js +0 -1
  1069. package/dist/docs/assets/skills_mcp-auth.md.DGvFP3HE.js +0 -18
  1070. package/dist/docs/assets/skills_mcp-auth.md.DGvFP3HE.lean.js +0 -1
  1071. package/dist/docs/assets/skills_otel.md.B5Ddv1xH.js +0 -8
  1072. package/dist/docs/assets/skills_otel.md.B5Ddv1xH.lean.js +0 -1
  1073. package/dist/docs/assets/skills_setup-slack.md.BBgx8lUz.js +0 -20
  1074. package/dist/docs/assets/skills_setup-slack.md.BBgx8lUz.lean.js +0 -1
  1075. package/dist/docs/assets/storage.md.BOHeqk2M.js +0 -30
  1076. package/dist/docs/assets/storage.md.BOHeqk2M.lean.js +0 -1
  1077. package/dist/docs/assets/templates_agents-md.md.CXSMZljE.js +0 -2
  1078. package/dist/docs/assets/templates_agents-md.md.CXSMZljE.lean.js +0 -1
  1079. package/dist/docs/assets/templates_code-wiki.md.CDYZIBFN.js +0 -2
  1080. package/dist/docs/assets/templates_code-wiki.md.CDYZIBFN.lean.js +0 -1
  1081. package/dist/docs/assets/templates_demo.md.BeQX9V3H.js +0 -4
  1082. package/dist/docs/assets/templates_demo.md.BeQX9V3H.lean.js +0 -1
  1083. package/dist/docs/assets/templates_grokbot-agents.md.c1s6Flp9.js +0 -3
  1084. package/dist/docs/assets/templates_grokbot-agents.md.c1s6Flp9.lean.js +0 -1
  1085. package/dist/docs/assets/templates_security-help.md.C3Ny_Qr2.js +0 -4
  1086. package/dist/docs/assets/templates_security-help.md.C3Ny_Qr2.lean.js +0 -1
  1087. package/dist/docs/concepts.html +0 -27
  1088. package/dist/docs/concepts.md +0 -168
  1089. package/dist/docs/design/filesystem.md +0 -376
  1090. package/dist/docs/design/runtime-abstraction.md +0 -1756
  1091. package/dist/docs/guides/human-in-the-loop.html +0 -54
  1092. package/dist/docs/guides/human-in-the-loop.md +0 -126
  1093. package/dist/docs/reference/result.html +0 -45
  1094. package/dist/docs/reference/result.md +0 -89
  1095. package/dist/docs/scaffolding-agents.html +0 -27
  1096. package/dist/docs/scaffolding-agents.md +0 -130
  1097. package/dist/docs/skills/ab.html +0 -52
  1098. package/dist/docs/skills/ab.md +0 -50
  1099. package/dist/docs/skills/create-agent.html +0 -34
  1100. package/dist/docs/skills/create-agent.md +0 -160
  1101. package/dist/docs/skills/debug.html +0 -27
  1102. package/dist/docs/skills/debug.md +0 -36
  1103. package/dist/docs/skills/evals.html +0 -51
  1104. package/dist/docs/skills/evals.md +0 -99
  1105. package/dist/docs/skills/framework-map.html +0 -27
  1106. package/dist/docs/skills/framework-map.md +0 -100
  1107. package/dist/docs/skills/github.html +0 -42
  1108. package/dist/docs/skills/github.md +0 -93
  1109. package/dist/docs/skills/hillclimb.html +0 -33
  1110. package/dist/docs/skills/hillclimb.md +0 -55
  1111. package/dist/docs/skills/index.html +0 -27
  1112. package/dist/docs/skills/index.md +0 -21
  1113. package/dist/docs/skills/mcp-auth.html +0 -44
  1114. package/dist/docs/skills/mcp-auth.md +0 -76
  1115. package/dist/docs/skills/otel.html +0 -34
  1116. package/dist/docs/skills/otel.md +0 -53
  1117. package/dist/docs/skills/setup-slack.html +0 -46
  1118. package/dist/docs/skills/setup-slack.md +0 -141
  1119. package/dist/docs/storage.html +0 -56
  1120. package/dist/docs/storage.md +0 -176
  1121. package/dist/docs/templates/agents-md.html +0 -28
  1122. package/dist/docs/templates/agents-md.md +0 -105
  1123. package/dist/docs/templates/code-wiki.html +0 -28
  1124. package/dist/docs/templates/code-wiki.md +0 -91
  1125. package/dist/docs/templates/demo.html +0 -30
  1126. package/dist/docs/templates/demo.md +0 -80
  1127. package/dist/docs/templates/grokbot-agents.html +0 -29
  1128. package/dist/docs/templates/grokbot-agents.md +0 -48
  1129. package/dist/docs/templates/security-help.html +0 -30
  1130. package/dist/docs/templates/security-help.md +0 -65
  1131. package/dist/internal/ab-collector.d.ts +0 -44
  1132. package/dist/internal/ab-collector.d.ts.map +0 -1
  1133. package/dist/internal/ab-collector.js +0 -142
  1134. package/dist/internal/ab-fold.d.ts +0 -36
  1135. package/dist/internal/ab-fold.d.ts.map +0 -1
  1136. package/dist/internal/ab-fold.js +0 -175
  1137. package/dist/internal/ab-snapshot.d.ts +0 -68
  1138. package/dist/internal/ab-snapshot.d.ts.map +0 -1
  1139. package/dist/internal/ab-snapshot.js +0 -208
  1140. package/dist/internal/discovery/ab.d.ts +0 -9
  1141. package/dist/internal/discovery/ab.d.ts.map +0 -1
  1142. package/dist/internal/discovery/ab.js +0 -113
  1143. package/dist/internal/tenant-slack/relay.d.ts +0 -75
  1144. package/dist/internal/tenant-slack/relay.d.ts.map +0 -1
  1145. package/dist/internal/tenant-slack/relay.js +0 -148
  1146. package/dist/playground/assets/index-BMDqAeXu.js +0 -67
  1147. package/dist/playground/assets/index-LUgJoWdL.css +0 -1
  1148. package/docs/ab.md +0 -337
  1149. package/docs/concepts.md +0 -173
  1150. package/docs/design/filesystem.md +0 -376
  1151. package/docs/design/runtime-abstraction.md +0 -1756
  1152. package/docs/guides/human-in-the-loop.md +0 -131
  1153. package/docs/reference/result.md +0 -94
  1154. package/docs/scaffolding-agents.md +0 -135
  1155. package/docs/skills/index.md +0 -26
  1156. package/docs/storage.md +0 -181
  1157. package/docs/templates/agents-md.md +0 -110
  1158. package/docs/templates/code-wiki.md +0 -96
  1159. package/docs/templates/demo.md +0 -85
  1160. package/docs/templates/grokbot-agents.md +0 -53
  1161. package/docs/templates/security-help.md +0 -70
  1162. package/skills/ab/SKILL.md +0 -58
  1163. package/src/ab.ts +0 -430
  1164. package/src/client.ts +0 -23
  1165. package/src/internal/ab-collector.ts +0 -200
  1166. package/src/internal/ab-fold.ts +0 -232
  1167. package/src/internal/ab-snapshot.ts +0 -331
  1168. package/src/internal/discovery/ab.ts +0 -131
  1169. package/src/internal/tenant-slack/relay.ts +0 -203
  1170. package/templates/pr-autofixer/agent/storage.ts +0 -7
@@ -1,105 +0,0 @@
1
- # Keep AGENTS.md current from last week's work
2
-
3
- This agent runs every Monday at 09:00 UTC. It reads last week's merged
4
- pull requests and the Slack channels you list. When a durable rule
5
- showed up, `apply_agents` parks the write until a person approves it,
6
- then opens a draft follow-up pull request against the default branch.
7
- Chores and rules the file already states stay quiet.
8
-
9
- This template is one model turn: read the week, then call
10
- `apply_agents`.
11
-
12
- Init once per app. Pass a different repo and channel list each time.
13
-
14
- ## Scaffold
15
-
16
- ```bash
17
- npx @cursor/july init ./agents-md --template agents-md
18
- ```
19
-
20
- `init` asks which GitHub repo to watch and which Slack channels to
21
- read. Pass `--var repos=acme/api --var slack=#eng-api,#api-private`
22
- to skip the prompt. Use `--var slack=none` when Slack is out of
23
- scope.
24
-
25
- The answers land in `agent/lib/config.ts`. Edit that file when the
26
- set changes.
27
-
28
- ## Connect GitHub and Slack
29
-
30
- Connect GitHub in Cursor for that repository (Settings or
31
- [cursor.com/dashboard](https://cursor.com/dashboard)). Sign the host
32
- in:
33
-
34
- ```bash
35
- cd agents-md
36
- agent-sdk login
37
- ```
38
-
39
- `cursorAccount` mints a short-lived, repo-scoped credential with
40
- `contents-write` so the agent can open the follow-up PR. See the
41
- [GitHub guide](/docs/guides/github.md).
42
-
43
- Create the Slack app and invite the bot to each listed channel,
44
- including private ones:
45
-
46
- ```bash
47
- agent-sdk slack create --dir .
48
- ```
49
-
50
- See the [Slack guide](/docs/guides/slack.md).
51
-
52
- ## First weekly run
53
-
54
- ```bash
55
- agent-sdk dev
56
- ```
57
-
58
- Schedules never fire under `dev`. Dispatch the same path production
59
- uses:
60
-
61
- ```bash
62
- curl -X POST http://127.0.0.1:3000/v1/dev/schedules/weekly
63
- ```
64
-
65
- The playground can run `/queue/run` too.
66
-
67
- The host writes `week/prs.md`, `week/slack.md`, `week/window.txt`,
68
- and `week/tree/**.txt` snapshots of the current `AGENTS.md` files,
69
- then starts a model turn. The
70
- model calls `apply_agents` once. A skip finishes. An update parks in
71
- the playground until someone approves; then a draft PR opens against
72
- the repository default branch. Later updates to the same base stack
73
- on `agents-md/<base>`. Pull requests from those branches are ignored
74
- so the follow-up cannot feed the next week.
75
-
76
- Chat replies stay in the playground. `apply_agents` records a skip,
77
- or parks the write. Approve there or with
78
- `POST /v1/session/:id/approvals/:callId`.
79
-
80
- ## What to edit
81
-
82
- - `agent/lib/config.ts`: repo and Slack channels
83
- - `agent/instructions.md`: what counts as an update
84
- - `evals/agents.eval.ts`: smoke cases
85
-
86
- ## Evals
87
-
88
- Four smoke cases: a lint-only week, a billing rule that parks the
89
- write, the same rule already in `AGENTS.md`, and an empty week.
90
-
91
- ```bash
92
- agent-sdk eval
93
- ```
94
-
95
- Eval sessions skip the GitHub write.
96
-
97
- ## Deploy
98
-
99
- ```bash
100
- agent-sdk deploy
101
- ```
102
-
103
- Run it from the agent's git checkout. The command infers repository,
104
- ref, path, and slug. Production fires the Monday cron. The deployment
105
- uses the team's Cursor GitHub connection for the watched repo.
@@ -1,28 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en-US" dir="ltr">
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width,initial-scale=1">
6
- <title>Keep a code wiki current after merge | Agent SDK</title>
7
- <meta name="description" content="Scaffold the agent, pick repos, replay a merged PR, and deploy.">
8
- <meta name="generator" content="VitePress v1.6.4">
9
- <link rel="preload stylesheet" href="/docs/assets/style.DCD_zyg3.css" as="style">
10
- <link rel="preload stylesheet" href="/docs/vp-icons.css" as="style">
11
-
12
- <script type="module" src="/docs/assets/app.BASKM3M4.js"></script>
13
- <link rel="preload" href="/docs/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
14
- <link rel="modulepreload" href="/docs/assets/chunks/theme.DbDZW-zb.js">
15
- <link rel="modulepreload" href="/docs/assets/chunks/framework.BCISBCiQ.js">
16
- <link rel="modulepreload" href="/docs/assets/templates_code-wiki.md.CDYZIBFN.lean.js">
17
- <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
18
- <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
19
- <link rel="alternate" type="text/plain" href="/docs/llms.txt">
20
- <link rel="alternate" type="text/markdown" href="/docs/templates/code-wiki.md">
21
- </head>
22
- <body>
23
- <div id="app"><div class="Layout" data-v-990b7706><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0b74bec0></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0b74bec0>Skip to content</a><!--]--><!----><header class="VPNav" data-v-990b7706 data-v-af996e33><div class="VPNavBar" data-v-af996e33 data-v-c7f322eb><div class="wrapper" data-v-c7f322eb><div class="container" data-v-c7f322eb><div class="title" data-v-c7f322eb><div class="VPNavBarTitle has-sidebar" data-v-c7f322eb data-v-d1664c59><a class="title" href="/docs/" data-v-d1664c59><!--[--><!--]--><!----><span data-v-d1664c59>Agent SDK</span><!--[--><!--[--><!--[--><!--[--><span class="agent-sdk-version" title="@cursor/july 0.1.108" data-v-c26a5f4f>0.1.108</span><!--]--><!--]--><!--]--><!--]--></a></div></div><div class="content" data-v-c7f322eb><div class="content-body" data-v-c7f322eb><!--[--><!--]--><div class="VPNavBarSearch search" data-v-c7f322eb><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-c7f322eb data-v-ab749b05><span id="main-nav-aria-label" class="visually-hidden" data-v-ab749b05> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/quickstart.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Quickstart</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/guides/webhooks.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Guides</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/templates/demo.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Templates</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/reference/project-layout.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Reference</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-c7f322eb data-v-7c6c0ede><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-7c6c0ede data-v-87b8a6bb data-v-9f798512><span class="check" data-v-9f798512><span class="icon" data-v-9f798512><!--[--><span class="vpi-sun sun" data-v-87b8a6bb></span><span class="vpi-moon moon" data-v-87b8a6bb></span><!--]--></span></span></button></div><!----><div class="VPFlyout VPNavBarExtra extra" data-v-c7f322eb data-v-e53d4296 data-v-79fc383b><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-79fc383b><span class="vpi-more-horizontal icon" data-v-79fc383b></span></button><div class="menu" data-v-79fc383b><div class="VPMenu" data-v-79fc383b data-v-0d780c53><!----><!--[--><!--[--><!----><div class="group" data-v-e53d4296><div class="item appearance" data-v-e53d4296><p class="label" data-v-e53d4296>Appearance</p><div class="appearance-action" data-v-e53d4296><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-e53d4296 data-v-87b8a6bb data-v-9f798512><span class="check" data-v-9f798512><span class="icon" data-v-9f798512><!--[--><span class="vpi-sun sun" data-v-87b8a6bb></span><span class="vpi-moon moon" data-v-87b8a6bb></span><!--]--></span></span></button></div></div></div><!----><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-c7f322eb data-v-edf597df><span class="container" data-v-edf597df><span class="top" data-v-edf597df></span><span class="middle" data-v-edf597df></span><span class="bottom" data-v-edf597df></span></span></button></div></div></div></div><div class="divider" data-v-c7f322eb><div class="divider-line" data-v-c7f322eb></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-990b7706 data-v-054265d6><div class="container" data-v-054265d6><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-054265d6><span class="vpi-align-left menu-icon" data-v-054265d6></span><span class="menu-text" data-v-054265d6>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-054265d6 data-v-65e16bd4><button data-v-65e16bd4>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-990b7706 data-v-03069692><div class="curtain" data-v-03069692></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-03069692><span class="visually-hidden" id="sidebar-aria-label" data-v-03069692> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Getting started</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/quickstart.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Quickstart</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/scaffolding-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Scaffold an agent with Cursor</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/convert-automation.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Convert a Cursor Automation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/concepts.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Concepts</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 has-active" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Templates</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/demo.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Demo agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/grokbot-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Grok Bot agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/code-wiki.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Code wiki</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/agents-md.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Living AGENTS.md</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/security-reviewer.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Security reviewer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/security-help.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Security help</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/agentic-owners.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agentic Owners</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/pr-autofixer.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>PR autofixer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/triage.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Triage agent</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Improving agents</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/building-with-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Building agents with agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/evals.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Evals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/ab.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Live A/B metrics</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/storage.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Storage</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/hillclimbing.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Hillclimbing</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 collapsible collapsed" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Coding-agent skills</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9a4aac52><span class="vpi-chevron-right caret-icon" data-v-9a4aac52></span></div></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/ab.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>ab</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/create-agent.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>create-agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/debug.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>debug</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/evals.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>evals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/framework-map.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>framework-map</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/github.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>github</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/hillclimb.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>hillclimb</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/mcp-auth.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>mcp-auth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/otel.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>otel</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/setup-slack.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>setup-slack</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Guides</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/webhooks.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Webhooks & custom channels</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/github.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>GitHub</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/slack.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Slack</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/human-in-the-loop.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Human-in-the-loop approvals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/agent-to-agent.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agent-to-agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/mcp-oauth.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Host MCP OAuth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/cloud-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Cursor cloud agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/grokbot-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Cursor Grok Bot agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/improve.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Self-improvement</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/opentelemetry.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>OpenTelemetry</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Operating</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/deployment.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Deployment</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/troubleshooting.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Fix common problems</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 collapsible" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Reference</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9a4aac52><span class="vpi-chevron-right caret-icon" data-v-9a4aac52></span></div></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/project-layout.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Project layout</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/agent-config.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agent config</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/instructions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Instructions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/tools.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Tools</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/prompt.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>prompt</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/skills.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Skills</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/connections.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>MCP Connections</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/subagents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Subagents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/extensions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Extensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/channels.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Channels</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/schedules.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Schedules & reminders</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/hooks.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Hooks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/artifacts.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Artifacts</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/result.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Turn result</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/sessions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Sessions & streaming</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/playground.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Playground</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/cli.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>CLI</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/http-api.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>HTTP API</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-990b7706 data-v-7a16121a><div class="VPDoc has-sidebar has-aside" data-v-7a16121a data-v-38549ef7><!--[--><!--]--><div class="container" data-v-38549ef7><div class="aside" data-v-38549ef7><div class="aside-curtain" data-v-38549ef7></div><div class="aside-container" data-v-38549ef7><div class="aside-content" data-v-38549ef7><div class="VPDocAside" data-v-38549ef7 data-v-da90486d><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-da90486d data-v-0895f2d7><div class="content" data-v-0895f2d7><div class="outline-marker" data-v-0895f2d7></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-0895f2d7>On this page</div><ul class="VPDocOutlineItem root" data-v-0895f2d7 data-v-0cae2091><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-da90486d></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-38549ef7><div class="content-container" data-v-38549ef7><!--[--><!--]--><main class="main" data-v-38549ef7><div style="position:relative;" class="vp-doc _docs_templates_code-wiki" data-v-38549ef7><div><h1 id="keep-a-code-wiki-current-after-merge" tabindex="-1">Keep a code wiki current after merge <a class="header-anchor" href="#keep-a-code-wiki-current-after-merge" aria-label="Permalink to &quot;Keep a code wiki current after merge&quot;">​</a></h1><p>This agent wakes when a watched pull request merges. It reads the diff and the in-repo <code>wiki/</code> pages. When a durable fact changed, it opens a follow-up pull request with the page edits. Chores, cherry-picks, and wiki-only merges stay quiet.</p><p>This template is one model turn: read the merge, then call <code>apply_wiki</code>.</p><h2 id="scaffold" tabindex="-1">Scaffold <a class="header-anchor" href="#scaffold" aria-label="Permalink to &quot;Scaffold&quot;">​</a></h2><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;">npx</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> @cursor/july</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> init</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ./code-wiki</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --template</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> code-wiki</span></span></code></pre></div><p><code>init</code> asks which GitHub repos to watch. Every repo must share one owner. Pass <code>--var repos=acme/api,acme/web</code> to skip the prompt.</p><p>The list lands in <code>agent/lib/repos.ts</code>. The GitHub channel reads it for <code>cursorAccount</code> and for the wake filter. Edit that file when the set changes.</p><p>Pages live in <code>wiki/</code> at the repository root. Keep them flat markdown. Add <code>wiki/_index.md</code> as the catalog.</p><h2 id="connect-github-through-cursor" tabindex="-1">Connect GitHub through Cursor <a class="header-anchor" href="#connect-github-through-cursor" aria-label="Permalink to &quot;Connect GitHub through Cursor&quot;">​</a></h2><p>Connect GitHub in Cursor for those repositories (Settings or <a href="https://cursor.com/dashboard" target="_blank" rel="noreferrer">cursor.com/dashboard</a>). Sign the host in:</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:#005CC5;--shiki-dark:#79B8FF;">cd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> code-wiki</span></span>
24
- <span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> login</span></span></code></pre></div><p><code>cursorAccount</code> pulls SCM events from Cursor and mints a short-lived, repo-scoped credential with <code>contents-write</code> so the agent can open the follow-up PR. See the <a href="./../guides/github.html">GitHub guide</a>.</p><h2 id="first-update" tabindex="-1">First update <a class="header-anchor" href="#first-update" aria-label="Permalink to &quot;First update&quot;">​</a></h2><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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> dev</span></span></code></pre></div><p><code>dev</code> starts the Cursor event relay for the watched repos. To drive a known merge without waiting on a live push:</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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> github</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> replay</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/acme/api/pull/12</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;"> --action</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> closed</span></span></code></pre></div><p><code>replay</code> needs pull access. The payload must be a merged PR (<code>closed</code> and <code>merged</code>). Repos outside <code>agent/lib/repos.ts</code>, wiki-only merges, and branches named <code>wiki/*</code> are ignored so the follow-up PR cannot wake the agent again.</p><p>The channel writes <code>pr/base.ref</code>, <code>pr/files.txt</code>, <code>pr/diff.patch</code>, and the current <code>wiki/</code> pages, then starts a model turn. The model calls <code>apply_wiki</code> once. The follow-up PR targets that merge&#39;s base. Later updates to the same base stack on <code>wiki/&lt;base&gt;</code>.</p><p>Chat replies stay in the playground. <code>apply_wiki</code> opens the GitHub pull request, or records a skip.</p><h2 id="what-to-edit" tabindex="-1">What to edit <a class="header-anchor" href="#what-to-edit" aria-label="Permalink to &quot;What to edit&quot;">​</a></h2><ul><li><code>agent/lib/repos.ts</code>: watched repos</li><li><code>agent/instructions.md</code>: what counts as an update</li><li><code>evals/wiki.eval.ts</code>: smoke cases</li></ul><h2 id="evals" tabindex="-1">Evals <a class="header-anchor" href="#evals" aria-label="Permalink to &quot;Evals&quot;">​</a></h2><p>Four smoke cases drawn from a busy merge day: a lint fix, a new protobuf contract, a markdown-only change, and a cherry-pick.</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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> eval</span></span></code></pre></div><p>Eval sessions skip the GitHub write.</p><h2 id="deploy" tabindex="-1">Deploy <a class="header-anchor" href="#deploy" aria-label="Permalink to &quot;Deploy&quot;">​</a></h2><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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> deploy</span></span></code></pre></div><p>Run it from the agent&#39;s git checkout. The command infers repository, ref, path, and slug. The deployment uses the team&#39;s Cursor GitHub connection for the same watched repos.</p></div></div></main><footer class="VPDocFooter" data-v-38549ef7 data-v-215f93e6><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-215f93e6><span class="visually-hidden" id="doc-footer-aria-label" data-v-215f93e6>Pager</span><div class="pager" data-v-215f93e6><a class="VPLink link pager-link prev" href="/docs/templates/grokbot-agents.html" data-v-215f93e6><!--[--><span class="desc" data-v-215f93e6>Previous page</span><span class="title" data-v-215f93e6>Grok Bot agents</span><!--]--></a></div><div class="pager" data-v-215f93e6><a class="VPLink link pager-link next" href="/docs/templates/agents-md.html" data-v-215f93e6><!--[--><span class="desc" data-v-215f93e6>Next page</span><span class="title" data-v-215f93e6>Living AGENTS.md</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
25
- <script>window.__VP_HASH_MAP__=JSON.parse("{\"ab.md\":\"mlVgqvSk\",\"building-with-agents.md\":\"CUSWxlP_\",\"concepts.md\":\"DgEcZOfT\",\"deployment.md\":\"JenwuCCB\",\"evals.md\":\"C1ekS3k2\",\"guides_agent-to-agent.md\":\"BDb0t1QV\",\"guides_cloud-agents.md\":\"BsloyHdY\",\"guides_convert-automation.md\":\"B4sjlodG\",\"guides_github.md\":\"BH33UEBJ\",\"guides_grokbot-agents.md\":\"DyV-WArv\",\"guides_human-in-the-loop.md\":\"By1G2T3_\",\"guides_improve.md\":\"BGVk32bK\",\"guides_mcp-oauth.md\":\"Dp6cDP7f\",\"guides_opentelemetry.md\":\"SCRMskno\",\"guides_slack.md\":\"D4RVMM4G\",\"guides_webhooks.md\":\"DKdA43Qm\",\"hillclimbing.md\":\"CpTGTCle\",\"index.md\":\"BjH1w2ZW\",\"quickstart.md\":\"DdQOF7Y8\",\"reference_agent-config.md\":\"CvoL6pof\",\"reference_artifacts.md\":\"Dior32Qw\",\"reference_channels.md\":\"D-qTqwcq\",\"reference_cli.md\":\"Ca26u0Es\",\"reference_connections.md\":\"BojkC6c5\",\"reference_extensions.md\":\"CPWt00ds\",\"reference_hooks.md\":\"Ddt5DdgJ\",\"reference_http-api.md\":\"oySXBO8o\",\"reference_instructions.md\":\"CR7XSsGk\",\"reference_playground.md\":\"4myJPxrf\",\"reference_project-layout.md\":\"DuBu9a96\",\"reference_prompt.md\":\"DnaD5dNK\",\"reference_result.md\":\"BK5SxDrf\",\"reference_schedules.md\":\"DI_JrHgq\",\"reference_sessions.md\":\"CueyOHSL\",\"reference_skills.md\":\"l2ezAcaN\",\"reference_subagents.md\":\"CfsIloPm\",\"reference_tools.md\":\"aGrn99hP\",\"scaffolding-agents.md\":\"Kctn3OVb\",\"skills_ab.md\":\"CsFNatVx\",\"skills_create-agent.md\":\"Q3h6Je-e\",\"skills_debug.md\":\"CVjCXMFF\",\"skills_evals.md\":\"BhovOvrl\",\"skills_framework-map.md\":\"D-tFZhFS\",\"skills_github.md\":\"hgFX_oKY\",\"skills_hillclimb.md\":\"B_zJerxA\",\"skills_index.md\":\"DKwIxzGg\",\"skills_mcp-auth.md\":\"DGvFP3HE\",\"skills_otel.md\":\"B5Ddv1xH\",\"skills_setup-slack.md\":\"BBgx8lUz\",\"storage.md\":\"BOHeqk2M\",\"templates_agentic-owners.md\":\"BZSH4N9z\",\"templates_agents-md.md\":\"CXSMZljE\",\"templates_code-wiki.md\":\"CDYZIBFN\",\"templates_demo.md\":\"BeQX9V3H\",\"templates_grokbot-agents.md\":\"c1s6Flp9\",\"templates_pr-autofixer.md\":\"Bds_XWcV\",\"templates_security-help.md\":\"C3Ny_Qr2\",\"templates_security-reviewer.md\":\"lshxbCLK\",\"templates_triage.md\":\"Co4UNzkZ\",\"troubleshooting.md\":\"CYEAO9bM\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Agent SDK\",\"description\":\"Filesystem-first framework for building and serving Cursor agents.\",\"base\":\"/docs/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"sdkVersion\":\"0.1.108\",\"nav\":[{\"text\":\"Quickstart\",\"link\":\"/quickstart\"},{\"text\":\"Guides\",\"link\":\"/guides/webhooks\"},{\"text\":\"Templates\",\"link\":\"/templates/demo\"},{\"text\":\"Reference\",\"link\":\"/reference/project-layout\"}],\"search\":{\"provider\":\"local\"},\"outline\":{\"level\":[2,3]},\"sidebar\":[{\"text\":\"Getting started\",\"items\":[{\"text\":\"Overview\",\"link\":\"/\"},{\"text\":\"Quickstart\",\"link\":\"/quickstart\"},{\"text\":\"Scaffold an agent with Cursor\",\"link\":\"/scaffolding-agents\"},{\"text\":\"Convert a Cursor Automation\",\"link\":\"/guides/convert-automation\"},{\"text\":\"Concepts\",\"link\":\"/concepts\"}]},{\"text\":\"Templates\",\"items\":[{\"text\":\"Demo agent\",\"link\":\"/templates/demo\"},{\"text\":\"Grok Bot agents\",\"link\":\"/templates/grokbot-agents\"},{\"text\":\"Code wiki\",\"link\":\"/templates/code-wiki\"},{\"text\":\"Living AGENTS.md\",\"link\":\"/templates/agents-md\"},{\"text\":\"Security reviewer\",\"link\":\"/templates/security-reviewer\"},{\"text\":\"Security help\",\"link\":\"/templates/security-help\"},{\"text\":\"Agentic Owners\",\"link\":\"/templates/agentic-owners\"},{\"text\":\"PR autofixer\",\"link\":\"/templates/pr-autofixer\"},{\"text\":\"Triage agent\",\"link\":\"/templates/triage\"}]},{\"text\":\"Improving agents\",\"items\":[{\"text\":\"Building agents with agents\",\"link\":\"/building-with-agents\"},{\"text\":\"Evals\",\"link\":\"/evals\"},{\"text\":\"Live A/B metrics\",\"link\":\"/ab\"},{\"text\":\"Storage\",\"link\":\"/storage\"},{\"text\":\"Hillclimbing\",\"link\":\"/hillclimbing\"}]},{\"text\":\"Coding-agent skills\",\"collapsed\":true,\"items\":[{\"text\":\"Overview\",\"link\":\"/skills/\"},{\"text\":\"ab\",\"link\":\"/skills/ab\"},{\"text\":\"create-agent\",\"link\":\"/skills/create-agent\"},{\"text\":\"debug\",\"link\":\"/skills/debug\"},{\"text\":\"evals\",\"link\":\"/skills/evals\"},{\"text\":\"framework-map\",\"link\":\"/skills/framework-map\"},{\"text\":\"github\",\"link\":\"/skills/github\"},{\"text\":\"hillclimb\",\"link\":\"/skills/hillclimb\"},{\"text\":\"mcp-auth\",\"link\":\"/skills/mcp-auth\"},{\"text\":\"otel\",\"link\":\"/skills/otel\"},{\"text\":\"setup-slack\",\"link\":\"/skills/setup-slack\"}]},{\"text\":\"Guides\",\"items\":[{\"text\":\"Webhooks & custom channels\",\"link\":\"/guides/webhooks\"},{\"text\":\"GitHub\",\"link\":\"/guides/github\"},{\"text\":\"Slack\",\"link\":\"/guides/slack\"},{\"text\":\"Human-in-the-loop approvals\",\"link\":\"/guides/human-in-the-loop\"},{\"text\":\"Agent-to-agent\",\"link\":\"/guides/agent-to-agent\"},{\"text\":\"Host MCP OAuth\",\"link\":\"/guides/mcp-oauth\"},{\"text\":\"Cursor cloud agents\",\"link\":\"/guides/cloud-agents\"},{\"text\":\"Cursor Grok Bot agents\",\"link\":\"/guides/grokbot-agents\"},{\"text\":\"Self-improvement\",\"link\":\"/guides/improve\"},{\"text\":\"OpenTelemetry\",\"link\":\"/guides/opentelemetry\"}]},{\"text\":\"Operating\",\"items\":[{\"text\":\"Deployment\",\"link\":\"/deployment\"},{\"text\":\"Fix common problems\",\"link\":\"/troubleshooting\"}]},{\"text\":\"Reference\",\"collapsed\":false,\"items\":[{\"text\":\"Project layout\",\"link\":\"/reference/project-layout\"},{\"text\":\"Agent config\",\"link\":\"/reference/agent-config\"},{\"text\":\"Instructions\",\"link\":\"/reference/instructions\"},{\"text\":\"Tools\",\"link\":\"/reference/tools\"},{\"text\":\"prompt\",\"link\":\"/reference/prompt\"},{\"text\":\"Skills\",\"link\":\"/reference/skills\"},{\"text\":\"MCP Connections\",\"link\":\"/reference/connections\"},{\"text\":\"Subagents\",\"link\":\"/reference/subagents\"},{\"text\":\"Extensions\",\"link\":\"/reference/extensions\"},{\"text\":\"Channels\",\"link\":\"/reference/channels\"},{\"text\":\"Schedules & reminders\",\"link\":\"/reference/schedules\"},{\"text\":\"Hooks\",\"link\":\"/reference/hooks\"},{\"text\":\"Artifacts\",\"link\":\"/reference/artifacts\"},{\"text\":\"Turn result\",\"link\":\"/reference/result\"},{\"text\":\"Sessions & streaming\",\"link\":\"/reference/sessions\"},{\"text\":\"Playground\",\"link\":\"/reference/playground\"},{\"text\":\"CLI\",\"link\":\"/reference/cli\"},{\"text\":\"HTTP API\",\"link\":\"/reference/http-api\"}]}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
26
-
27
- </body>
28
- </html>
@@ -1,91 +0,0 @@
1
- # Keep a code wiki current after merge
2
-
3
- This agent wakes when a watched pull request merges. It reads the diff
4
- and the in-repo `wiki/` pages. When a durable fact changed, it opens a
5
- follow-up pull request with the page edits. Chores, cherry-picks, and
6
- wiki-only merges stay quiet.
7
-
8
- This template is one model turn: read the merge, then call `apply_wiki`.
9
-
10
- ## Scaffold
11
-
12
- ```bash
13
- npx @cursor/july init ./code-wiki --template code-wiki
14
- ```
15
-
16
- `init` asks which GitHub repos to watch. Every repo must share one
17
- owner. Pass `--var repos=acme/api,acme/web` to skip the prompt.
18
-
19
- The list lands in `agent/lib/repos.ts`. The GitHub channel reads it for
20
- `cursorAccount` and for the wake filter. Edit that file when the set
21
- changes.
22
-
23
- Pages live in `wiki/` at the repository root. Keep them flat markdown.
24
- Add `wiki/_index.md` as the catalog.
25
-
26
- ## Connect GitHub through Cursor
27
-
28
- Connect GitHub in Cursor for those repositories (Settings or
29
- [cursor.com/dashboard](https://cursor.com/dashboard)). Sign the host in:
30
-
31
- ```bash
32
- cd code-wiki
33
- agent-sdk login
34
- ```
35
-
36
- `cursorAccount` pulls SCM events from Cursor and mints a short-lived,
37
- repo-scoped credential with `contents-write` so the agent can open the
38
- follow-up PR. See the [GitHub guide](/docs/guides/github.md).
39
-
40
- ## First update
41
-
42
- ```bash
43
- agent-sdk dev
44
- ```
45
-
46
- `dev` starts the Cursor event relay for the watched repos. To drive a
47
- known merge without waiting on a live push:
48
-
49
- ```bash
50
- agent-sdk github replay https://github.com/acme/api/pull/12 --dir . --action closed
51
- ```
52
-
53
- `replay` needs pull access. The payload must be a merged PR (`closed`
54
- and `merged`). Repos outside `agent/lib/repos.ts`, wiki-only merges,
55
- and branches named `wiki/*` are ignored so the follow-up PR cannot
56
- wake the agent again.
57
-
58
- The channel writes `pr/base.ref`, `pr/files.txt`, `pr/diff.patch`, and
59
- the current `wiki/` pages, then starts a model turn. The model calls
60
- `apply_wiki` once. The follow-up PR targets that merge's base. Later
61
- updates to the same base stack on `wiki/<base>`.
62
-
63
- Chat replies stay in the playground. `apply_wiki` opens the GitHub
64
- pull request, or records a skip.
65
-
66
- ## What to edit
67
-
68
- - `agent/lib/repos.ts`: watched repos
69
- - `agent/instructions.md`: what counts as an update
70
- - `evals/wiki.eval.ts`: smoke cases
71
-
72
- ## Evals
73
-
74
- Four smoke cases drawn from a busy merge day: a lint fix, a new
75
- protobuf contract, a markdown-only change, and a cherry-pick.
76
-
77
- ```bash
78
- agent-sdk eval
79
- ```
80
-
81
- Eval sessions skip the GitHub write.
82
-
83
- ## Deploy
84
-
85
- ```bash
86
- agent-sdk deploy
87
- ```
88
-
89
- Run it from the agent's git checkout. The command infers repository,
90
- ref, path, and slug. The deployment uses the team's Cursor GitHub
91
- connection for the same watched repos.
@@ -1,30 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en-US" dir="ltr">
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width,initial-scale=1">
6
- <title>Record a walkthrough from a collected PR | Agent SDK</title>
7
- <meta name="description" content="Scaffold the agent, seed the PR on the host, record a walkthrough, and comment the result.">
8
- <meta name="generator" content="VitePress v1.6.4">
9
- <link rel="preload stylesheet" href="/docs/assets/style.DCD_zyg3.css" as="style">
10
- <link rel="preload stylesheet" href="/docs/vp-icons.css" as="style">
11
-
12
- <script type="module" src="/docs/assets/app.BASKM3M4.js"></script>
13
- <link rel="preload" href="/docs/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
14
- <link rel="modulepreload" href="/docs/assets/chunks/theme.DbDZW-zb.js">
15
- <link rel="modulepreload" href="/docs/assets/chunks/framework.BCISBCiQ.js">
16
- <link rel="modulepreload" href="/docs/assets/templates_demo.md.BeQX9V3H.lean.js">
17
- <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
18
- <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
19
- <link rel="alternate" type="text/plain" href="/docs/llms.txt">
20
- <link rel="alternate" type="text/markdown" href="/docs/templates/demo.md">
21
- </head>
22
- <body>
23
- <div id="app"><div class="Layout" data-v-990b7706><!--[--><!--]--><!--[--><span tabindex="-1" data-v-0b74bec0></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-0b74bec0>Skip to content</a><!--]--><!----><header class="VPNav" data-v-990b7706 data-v-af996e33><div class="VPNavBar" data-v-af996e33 data-v-c7f322eb><div class="wrapper" data-v-c7f322eb><div class="container" data-v-c7f322eb><div class="title" data-v-c7f322eb><div class="VPNavBarTitle has-sidebar" data-v-c7f322eb data-v-d1664c59><a class="title" href="/docs/" data-v-d1664c59><!--[--><!--]--><!----><span data-v-d1664c59>Agent SDK</span><!--[--><!--[--><!--[--><!--[--><span class="agent-sdk-version" title="@cursor/july 0.1.108" data-v-c26a5f4f>0.1.108</span><!--]--><!--]--><!--]--><!--]--></a></div></div><div class="content" data-v-c7f322eb><div class="content-body" data-v-c7f322eb><!--[--><!--]--><div class="VPNavBarSearch search" data-v-c7f322eb><!--[--><!----><div id="local-search"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><span class="vp-icon DocSearch-Search-Icon"></span><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><kbd class="DocSearch-Button-Key"></kbd><kbd class="DocSearch-Button-Key">K</kbd></span></button></div><!--]--></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-c7f322eb data-v-ab749b05><span id="main-nav-aria-label" class="visually-hidden" data-v-ab749b05> Main Navigation </span><!--[--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/quickstart.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Quickstart</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/guides/webhooks.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Guides</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink active" href="/docs/templates/demo.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Templates</span><!--]--></a><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/docs/reference/project-layout.html" tabindex="0" data-v-ab749b05 data-v-ef8d136f><!--[--><span data-v-ef8d136f>Reference</span><!--]--></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-c7f322eb data-v-7c6c0ede><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-7c6c0ede data-v-87b8a6bb data-v-9f798512><span class="check" data-v-9f798512><span class="icon" data-v-9f798512><!--[--><span class="vpi-sun sun" data-v-87b8a6bb></span><span class="vpi-moon moon" data-v-87b8a6bb></span><!--]--></span></span></button></div><!----><div class="VPFlyout VPNavBarExtra extra" data-v-c7f322eb data-v-e53d4296 data-v-79fc383b><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-79fc383b><span class="vpi-more-horizontal icon" data-v-79fc383b></span></button><div class="menu" data-v-79fc383b><div class="VPMenu" data-v-79fc383b data-v-0d780c53><!----><!--[--><!--[--><!----><div class="group" data-v-e53d4296><div class="item appearance" data-v-e53d4296><p class="label" data-v-e53d4296>Appearance</p><div class="appearance-action" data-v-e53d4296><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" title aria-checked="false" data-v-e53d4296 data-v-87b8a6bb data-v-9f798512><span class="check" data-v-9f798512><span class="icon" data-v-9f798512><!--[--><span class="vpi-sun sun" data-v-87b8a6bb></span><span class="vpi-moon moon" data-v-87b8a6bb></span><!--]--></span></span></button></div></div></div><!----><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-c7f322eb data-v-edf597df><span class="container" data-v-edf597df><span class="top" data-v-edf597df></span><span class="middle" data-v-edf597df></span><span class="bottom" data-v-edf597df></span></span></button></div></div></div></div><div class="divider" data-v-c7f322eb><div class="divider-line" data-v-c7f322eb></div></div></div><!----></header><div class="VPLocalNav has-sidebar empty" data-v-990b7706 data-v-054265d6><div class="container" data-v-054265d6><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-054265d6><span class="vpi-align-left menu-icon" data-v-054265d6></span><span class="menu-text" data-v-054265d6>Menu</span></button><div class="VPLocalNavOutlineDropdown" style="--vp-vh:0px;" data-v-054265d6 data-v-65e16bd4><button data-v-65e16bd4>Return to top</button><!----></div></div></div><aside class="VPSidebar" data-v-990b7706 data-v-03069692><div class="curtain" data-v-03069692></div><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-03069692><span class="visually-hidden" id="sidebar-aria-label" data-v-03069692> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Getting started</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/quickstart.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Quickstart</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/scaffolding-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Scaffold an agent with Cursor</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/convert-automation.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Convert a Cursor Automation</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/concepts.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Concepts</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 has-active" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Templates</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/demo.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Demo agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/grokbot-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Grok Bot agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/code-wiki.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Code wiki</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/agents-md.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Living AGENTS.md</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/security-reviewer.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Security reviewer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/security-help.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Security help</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/agentic-owners.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agentic Owners</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/pr-autofixer.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>PR autofixer</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/templates/triage.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Triage agent</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Improving agents</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/building-with-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Building agents with agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/evals.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Evals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/ab.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Live A/B metrics</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/storage.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Storage</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/hillclimbing.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Hillclimbing</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 collapsible collapsed" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Coding-agent skills</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9a4aac52><span class="vpi-chevron-right caret-icon" data-v-9a4aac52></span></div></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Overview</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/ab.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>ab</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/create-agent.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>create-agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/debug.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>debug</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/evals.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>evals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/framework-map.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>framework-map</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/github.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>github</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/hillclimb.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>hillclimb</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/mcp-auth.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>mcp-auth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/otel.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>otel</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/skills/setup-slack.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>setup-slack</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Guides</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/webhooks.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Webhooks & custom channels</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/github.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>GitHub</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/slack.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Slack</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/human-in-the-loop.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Human-in-the-loop approvals</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/agent-to-agent.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agent-to-agent</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/mcp-oauth.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Host MCP OAuth</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/cloud-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Cursor cloud agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/grokbot-agents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Cursor Grok Bot agents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/improve.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Self-improvement</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/guides/opentelemetry.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>OpenTelemetry</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Operating</h2><!----></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/deployment.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Deployment</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/troubleshooting.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Fix common problems</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><div class="no-transition group" data-v-53da167f><section class="VPSidebarItem level-0 collapsible" data-v-53da167f data-v-9a4aac52><div class="item" role="button" tabindex="0" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><h2 class="text" data-v-9a4aac52>Reference</h2><div class="caret" role="button" aria-label="toggle section" tabindex="0" data-v-9a4aac52><span class="vpi-chevron-right caret-icon" data-v-9a4aac52></span></div></div><div class="items" data-v-9a4aac52><!--[--><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/project-layout.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Project layout</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/agent-config.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Agent config</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/instructions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Instructions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/tools.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Tools</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/prompt.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>prompt</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/skills.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Skills</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/connections.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>MCP Connections</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/subagents.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Subagents</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/extensions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Extensions</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/channels.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Channels</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/schedules.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Schedules & reminders</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/hooks.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Hooks</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/artifacts.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Artifacts</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/result.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Turn result</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/sessions.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Sessions & streaming</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/playground.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>Playground</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/cli.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>CLI</p><!--]--></a><!----></div><!----></div><div class="VPSidebarItem level-1 is-link" data-v-9a4aac52><div class="item" data-v-9a4aac52><div class="indicator" data-v-9a4aac52></div><a class="VPLink link link" href="/docs/reference/http-api.html" data-v-9a4aac52><!--[--><p class="text" data-v-9a4aac52>HTTP API</p><!--]--></a><!----></div><!----></div><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-990b7706 data-v-7a16121a><div class="VPDoc has-sidebar has-aside" data-v-7a16121a data-v-38549ef7><!--[--><!--]--><div class="container" data-v-38549ef7><div class="aside" data-v-38549ef7><div class="aside-curtain" data-v-38549ef7></div><div class="aside-container" data-v-38549ef7><div class="aside-content" data-v-38549ef7><div class="VPDocAside" data-v-38549ef7 data-v-da90486d><!--[--><!--]--><!--[--><!--]--><nav aria-labelledby="doc-outline-aria-label" class="VPDocAsideOutline" data-v-da90486d data-v-0895f2d7><div class="content" data-v-0895f2d7><div class="outline-marker" data-v-0895f2d7></div><div aria-level="2" class="outline-title" id="doc-outline-aria-label" role="heading" data-v-0895f2d7>On this page</div><ul class="VPDocOutlineItem root" data-v-0895f2d7 data-v-0cae2091><!--[--><!--]--></ul></div></nav><!--[--><!--]--><div class="spacer" data-v-da90486d></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-38549ef7><div class="content-container" data-v-38549ef7><!--[--><!--]--><main class="main" data-v-38549ef7><div style="position:relative;" class="vp-doc _docs_templates_demo" data-v-38549ef7><div><h1 id="record-a-walkthrough-from-a-collected-pr" tabindex="-1">Record a walkthrough from a collected PR <a class="header-anchor" href="#record-a-walkthrough-from-a-collected-pr" aria-label="Permalink to &quot;Record a walkthrough from a collected PR&quot;">​</a></h1><p>This agent records a walkthrough for a pull request you already opened. The host fetches title, body, and files, writes <code>pr.md</code> and <code>files.md</code>, then starts the turn. The model reads those files. It does not fetch the PR.</p><h2 id="scaffold" tabindex="-1">Scaffold <a class="header-anchor" href="#scaffold" aria-label="Permalink to &quot;Scaffold&quot;">​</a></h2><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;">npx</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> @cursor/july</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> init</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> ./demo-agent</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --template</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> demo</span></span></code></pre></div><p><code>init</code> writes the project, installs dependencies, and puts <code>agent-sdk</code> on PATH.</p><h2 id="log-in" tabindex="-1">Log in <a class="header-anchor" href="#log-in" aria-label="Permalink to &quot;Log in&quot;">​</a></h2><p>Model turns use your Cursor account.</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:#005CC5;--shiki-dark:#79B8FF;">cd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> demo-agent</span></span>
24
- <span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> login</span></span></code></pre></div><p>The command opens a browser if you have no stored credential.</p><h2 id="collect-the-pr" tabindex="-1">Collect the PR <a class="header-anchor" href="#collect-the-pr" aria-label="Permalink to &quot;Collect the PR&quot;">​</a></h2><p>The host needs GitHub credentials so it can read the PR and comment: <code>GITHUB_TOKEN</code>, <code>GH_TOKEN</code>, or <code>gh auth</code>.</p><p>In the playground, run <code>/queue/pr</code> and paste a PR URL or <code>owner/repo#N</code>.</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;">curl</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -X</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> POST</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> http://127.0.0.1:3000/demo-agent/v1/channels/queue/pr</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \</span></span>
25
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -H</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &#39;content-type: application/json&#39;</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> \</span></span>
26
- <span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -d</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> &#39;{ &quot;pr&quot;: &quot;acme/shop#42&quot; }&#39;</span></span></code></pre></div><p>The host fetches title, body, and files, writes <code>pr.md</code> and <code>files.md</code>, and starts the turn. Retries for the same PR coalesce.</p><p>GitHub label <code>demo</code> or comment <code>/demo</code> when you terminate webhooks yourself: self-host and set <code>GITHUB_WEBHOOK_SECRET</code>. Hosted Cursor aliases require <code>X-Agent-Alias-Token</code>, which GitHub cannot send.</p><p><code>record_demo</code> comments on that pull request. Eval sessions skip the comment.</p><h2 id="first-walkthrough" tabindex="-1">First walkthrough <a class="header-anchor" href="#first-walkthrough" aria-label="Permalink to &quot;First walkthrough&quot;">​</a></h2><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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> dev</span></span></code></pre></div><p>Open the playground. Run <code>/queue/pr</code> with a PR. The model reads the seeded files and calls <code>record_demo</code> once. Turns are sandboxed with <code>read</code> and <code>grep</code> only: PR title and body are untrusted.</p><h2 id="evals" tabindex="-1">Evals <a class="header-anchor" href="#evals" aria-label="Permalink to &quot;Evals&quot;">​</a></h2><p>One smoke case. The host seeds <code>pr.md</code> and <code>files.md</code>. No GitHub call.</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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> eval</span></span></code></pre></div><h2 id="deploy" tabindex="-1">Deploy <a class="header-anchor" href="#deploy" aria-label="Permalink to &quot;Deploy&quot;">​</a></h2><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;">agent-sdk</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> deploy</span></span></code></pre></div><p>Run it from the agent&#39;s git checkout. It infers repository, ref, path, and slug, builds on Cursor-managed hosting, and prints the URL. <code>agent-sdk deployments</code> shows status.</p><p>Playground and <code>/queue/pr</code> need the alias token. GitHub label and <code>/demo</code> stay on a self-hosted agent with a webhook secret.</p></div></div></main><footer class="VPDocFooter" data-v-38549ef7 data-v-215f93e6><!--[--><!--]--><!----><nav class="prev-next" aria-labelledby="doc-footer-aria-label" data-v-215f93e6><span class="visually-hidden" id="doc-footer-aria-label" data-v-215f93e6>Pager</span><div class="pager" data-v-215f93e6><a class="VPLink link pager-link prev" href="/docs/concepts.html" data-v-215f93e6><!--[--><span class="desc" data-v-215f93e6>Previous page</span><span class="title" data-v-215f93e6>Concepts</span><!--]--></a></div><div class="pager" data-v-215f93e6><a class="VPLink link pager-link next" href="/docs/templates/grokbot-agents.html" data-v-215f93e6><!--[--><span class="desc" data-v-215f93e6>Next page</span><span class="title" data-v-215f93e6>Grok Bot agents</span><!--]--></a></div></nav></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
27
- <script>window.__VP_HASH_MAP__=JSON.parse("{\"ab.md\":\"mlVgqvSk\",\"building-with-agents.md\":\"CUSWxlP_\",\"concepts.md\":\"DgEcZOfT\",\"deployment.md\":\"JenwuCCB\",\"evals.md\":\"C1ekS3k2\",\"guides_agent-to-agent.md\":\"BDb0t1QV\",\"guides_cloud-agents.md\":\"BsloyHdY\",\"guides_convert-automation.md\":\"B4sjlodG\",\"guides_github.md\":\"BH33UEBJ\",\"guides_grokbot-agents.md\":\"DyV-WArv\",\"guides_human-in-the-loop.md\":\"By1G2T3_\",\"guides_improve.md\":\"BGVk32bK\",\"guides_mcp-oauth.md\":\"Dp6cDP7f\",\"guides_opentelemetry.md\":\"SCRMskno\",\"guides_slack.md\":\"D4RVMM4G\",\"guides_webhooks.md\":\"DKdA43Qm\",\"hillclimbing.md\":\"CpTGTCle\",\"index.md\":\"BjH1w2ZW\",\"quickstart.md\":\"DdQOF7Y8\",\"reference_agent-config.md\":\"CvoL6pof\",\"reference_artifacts.md\":\"Dior32Qw\",\"reference_channels.md\":\"D-qTqwcq\",\"reference_cli.md\":\"Ca26u0Es\",\"reference_connections.md\":\"BojkC6c5\",\"reference_extensions.md\":\"CPWt00ds\",\"reference_hooks.md\":\"Ddt5DdgJ\",\"reference_http-api.md\":\"oySXBO8o\",\"reference_instructions.md\":\"CR7XSsGk\",\"reference_playground.md\":\"4myJPxrf\",\"reference_project-layout.md\":\"DuBu9a96\",\"reference_prompt.md\":\"DnaD5dNK\",\"reference_result.md\":\"BK5SxDrf\",\"reference_schedules.md\":\"DI_JrHgq\",\"reference_sessions.md\":\"CueyOHSL\",\"reference_skills.md\":\"l2ezAcaN\",\"reference_subagents.md\":\"CfsIloPm\",\"reference_tools.md\":\"aGrn99hP\",\"scaffolding-agents.md\":\"Kctn3OVb\",\"skills_ab.md\":\"CsFNatVx\",\"skills_create-agent.md\":\"Q3h6Je-e\",\"skills_debug.md\":\"CVjCXMFF\",\"skills_evals.md\":\"BhovOvrl\",\"skills_framework-map.md\":\"D-tFZhFS\",\"skills_github.md\":\"hgFX_oKY\",\"skills_hillclimb.md\":\"B_zJerxA\",\"skills_index.md\":\"DKwIxzGg\",\"skills_mcp-auth.md\":\"DGvFP3HE\",\"skills_otel.md\":\"B5Ddv1xH\",\"skills_setup-slack.md\":\"BBgx8lUz\",\"storage.md\":\"BOHeqk2M\",\"templates_agentic-owners.md\":\"BZSH4N9z\",\"templates_agents-md.md\":\"CXSMZljE\",\"templates_code-wiki.md\":\"CDYZIBFN\",\"templates_demo.md\":\"BeQX9V3H\",\"templates_grokbot-agents.md\":\"c1s6Flp9\",\"templates_pr-autofixer.md\":\"Bds_XWcV\",\"templates_security-help.md\":\"C3Ny_Qr2\",\"templates_security-reviewer.md\":\"lshxbCLK\",\"templates_triage.md\":\"Co4UNzkZ\",\"troubleshooting.md\":\"CYEAO9bM\"}");window.__VP_SITE_DATA__=JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"Agent SDK\",\"description\":\"Filesystem-first framework for building and serving Cursor agents.\",\"base\":\"/docs/\",\"head\":[],\"router\":{\"prefetchLinks\":true},\"appearance\":true,\"themeConfig\":{\"sdkVersion\":\"0.1.108\",\"nav\":[{\"text\":\"Quickstart\",\"link\":\"/quickstart\"},{\"text\":\"Guides\",\"link\":\"/guides/webhooks\"},{\"text\":\"Templates\",\"link\":\"/templates/demo\"},{\"text\":\"Reference\",\"link\":\"/reference/project-layout\"}],\"search\":{\"provider\":\"local\"},\"outline\":{\"level\":[2,3]},\"sidebar\":[{\"text\":\"Getting started\",\"items\":[{\"text\":\"Overview\",\"link\":\"/\"},{\"text\":\"Quickstart\",\"link\":\"/quickstart\"},{\"text\":\"Scaffold an agent with Cursor\",\"link\":\"/scaffolding-agents\"},{\"text\":\"Convert a Cursor Automation\",\"link\":\"/guides/convert-automation\"},{\"text\":\"Concepts\",\"link\":\"/concepts\"}]},{\"text\":\"Templates\",\"items\":[{\"text\":\"Demo agent\",\"link\":\"/templates/demo\"},{\"text\":\"Grok Bot agents\",\"link\":\"/templates/grokbot-agents\"},{\"text\":\"Code wiki\",\"link\":\"/templates/code-wiki\"},{\"text\":\"Living AGENTS.md\",\"link\":\"/templates/agents-md\"},{\"text\":\"Security reviewer\",\"link\":\"/templates/security-reviewer\"},{\"text\":\"Security help\",\"link\":\"/templates/security-help\"},{\"text\":\"Agentic Owners\",\"link\":\"/templates/agentic-owners\"},{\"text\":\"PR autofixer\",\"link\":\"/templates/pr-autofixer\"},{\"text\":\"Triage agent\",\"link\":\"/templates/triage\"}]},{\"text\":\"Improving agents\",\"items\":[{\"text\":\"Building agents with agents\",\"link\":\"/building-with-agents\"},{\"text\":\"Evals\",\"link\":\"/evals\"},{\"text\":\"Live A/B metrics\",\"link\":\"/ab\"},{\"text\":\"Storage\",\"link\":\"/storage\"},{\"text\":\"Hillclimbing\",\"link\":\"/hillclimbing\"}]},{\"text\":\"Coding-agent skills\",\"collapsed\":true,\"items\":[{\"text\":\"Overview\",\"link\":\"/skills/\"},{\"text\":\"ab\",\"link\":\"/skills/ab\"},{\"text\":\"create-agent\",\"link\":\"/skills/create-agent\"},{\"text\":\"debug\",\"link\":\"/skills/debug\"},{\"text\":\"evals\",\"link\":\"/skills/evals\"},{\"text\":\"framework-map\",\"link\":\"/skills/framework-map\"},{\"text\":\"github\",\"link\":\"/skills/github\"},{\"text\":\"hillclimb\",\"link\":\"/skills/hillclimb\"},{\"text\":\"mcp-auth\",\"link\":\"/skills/mcp-auth\"},{\"text\":\"otel\",\"link\":\"/skills/otel\"},{\"text\":\"setup-slack\",\"link\":\"/skills/setup-slack\"}]},{\"text\":\"Guides\",\"items\":[{\"text\":\"Webhooks & custom channels\",\"link\":\"/guides/webhooks\"},{\"text\":\"GitHub\",\"link\":\"/guides/github\"},{\"text\":\"Slack\",\"link\":\"/guides/slack\"},{\"text\":\"Human-in-the-loop approvals\",\"link\":\"/guides/human-in-the-loop\"},{\"text\":\"Agent-to-agent\",\"link\":\"/guides/agent-to-agent\"},{\"text\":\"Host MCP OAuth\",\"link\":\"/guides/mcp-oauth\"},{\"text\":\"Cursor cloud agents\",\"link\":\"/guides/cloud-agents\"},{\"text\":\"Cursor Grok Bot agents\",\"link\":\"/guides/grokbot-agents\"},{\"text\":\"Self-improvement\",\"link\":\"/guides/improve\"},{\"text\":\"OpenTelemetry\",\"link\":\"/guides/opentelemetry\"}]},{\"text\":\"Operating\",\"items\":[{\"text\":\"Deployment\",\"link\":\"/deployment\"},{\"text\":\"Fix common problems\",\"link\":\"/troubleshooting\"}]},{\"text\":\"Reference\",\"collapsed\":false,\"items\":[{\"text\":\"Project layout\",\"link\":\"/reference/project-layout\"},{\"text\":\"Agent config\",\"link\":\"/reference/agent-config\"},{\"text\":\"Instructions\",\"link\":\"/reference/instructions\"},{\"text\":\"Tools\",\"link\":\"/reference/tools\"},{\"text\":\"prompt\",\"link\":\"/reference/prompt\"},{\"text\":\"Skills\",\"link\":\"/reference/skills\"},{\"text\":\"MCP Connections\",\"link\":\"/reference/connections\"},{\"text\":\"Subagents\",\"link\":\"/reference/subagents\"},{\"text\":\"Extensions\",\"link\":\"/reference/extensions\"},{\"text\":\"Channels\",\"link\":\"/reference/channels\"},{\"text\":\"Schedules & reminders\",\"link\":\"/reference/schedules\"},{\"text\":\"Hooks\",\"link\":\"/reference/hooks\"},{\"text\":\"Artifacts\",\"link\":\"/reference/artifacts\"},{\"text\":\"Turn result\",\"link\":\"/reference/result\"},{\"text\":\"Sessions & streaming\",\"link\":\"/reference/sessions\"},{\"text\":\"Playground\",\"link\":\"/reference/playground\"},{\"text\":\"CLI\",\"link\":\"/reference/cli\"},{\"text\":\"HTTP API\",\"link\":\"/reference/http-api\"}]}]},\"locales\":{},\"scrollOffset\":134,\"cleanUrls\":false}");</script>
28
-
29
- </body>
30
- </html>