@cursor/july 0.1.101 → 0.1.103

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 (862) hide show
  1. package/AGENTS.md +34 -32
  2. package/README.md +28 -3
  3. package/dist/ab.d.ts +1 -1
  4. package/dist/ab.js +1 -1
  5. package/dist/bin/agent-serve.d.ts +12 -12
  6. package/dist/bin/agent-serve.js +114 -36
  7. package/dist/channels/bitbucket/api.d.ts +176 -0
  8. package/dist/channels/bitbucket/api.d.ts.map +1 -0
  9. package/dist/channels/bitbucket/api.js +419 -0
  10. package/dist/channels/bitbucket/binding.d.ts +71 -0
  11. package/dist/channels/bitbucket/binding.d.ts.map +1 -0
  12. package/dist/channels/bitbucket/binding.js +269 -0
  13. package/dist/channels/bitbucket/bitbucket-channel.d.ts +33 -0
  14. package/dist/channels/bitbucket/bitbucket-channel.d.ts.map +1 -0
  15. package/dist/channels/bitbucket/bitbucket-channel.js +120 -0
  16. package/dist/channels/bitbucket/bitbucket-webhook.d.ts +61 -0
  17. package/dist/channels/bitbucket/bitbucket-webhook.d.ts.map +1 -0
  18. package/dist/channels/bitbucket/bitbucket-webhook.js +394 -0
  19. package/dist/channels/bitbucket/checks.d.ts +67 -0
  20. package/dist/channels/bitbucket/checks.d.ts.map +1 -0
  21. package/dist/channels/bitbucket/checks.js +102 -0
  22. package/dist/channels/bitbucket/cursor-account.d.ts +37 -0
  23. package/dist/channels/bitbucket/cursor-account.d.ts.map +1 -0
  24. package/dist/channels/bitbucket/cursor-account.js +65 -0
  25. package/dist/channels/bitbucket/defaults.d.ts +26 -0
  26. package/dist/channels/bitbucket/defaults.d.ts.map +1 -0
  27. package/dist/channels/bitbucket/defaults.js +73 -0
  28. package/dist/channels/bitbucket/events.d.ts +22 -0
  29. package/dist/channels/bitbucket/events.d.ts.map +1 -0
  30. package/dist/channels/bitbucket/events.js +64 -0
  31. package/dist/channels/bitbucket/index.d.ts +34 -0
  32. package/dist/channels/bitbucket/index.d.ts.map +1 -0
  33. package/dist/channels/bitbucket/index.js +33 -0
  34. package/dist/channels/bitbucket/replay.d.ts +63 -0
  35. package/dist/channels/bitbucket/replay.d.ts.map +1 -0
  36. package/dist/channels/bitbucket/replay.js +304 -0
  37. package/dist/channels/bitbucket/state.d.ts +35 -0
  38. package/dist/channels/bitbucket/state.d.ts.map +1 -0
  39. package/dist/channels/bitbucket/state.js +21 -0
  40. package/dist/channels/bitbucket/types.d.ts +229 -0
  41. package/dist/channels/bitbucket/types.d.ts.map +1 -0
  42. package/dist/channels/bitbucket/types.js +1 -0
  43. package/dist/channels/deployments/deployments-channel.d.ts +22 -14
  44. package/dist/channels/deployments/deployments-channel.d.ts.map +1 -1
  45. package/dist/channels/deployments/deployments-channel.js +25 -27
  46. package/dist/channels/deployments/types.d.ts +12 -6
  47. package/dist/channels/deployments/types.d.ts.map +1 -1
  48. package/dist/channels/github/binding.d.ts +6 -0
  49. package/dist/channels/github/binding.d.ts.map +1 -1
  50. package/dist/channels/github/binding.js +3 -3
  51. package/dist/channels/github/cursor-account.d.ts +7 -3
  52. package/dist/channels/github/cursor-account.d.ts.map +1 -1
  53. package/dist/channels/github/cursor-account.js +10 -6
  54. package/dist/channels/github/events.d.ts +1 -1
  55. package/dist/channels/github/events.js +1 -1
  56. package/dist/channels/github/forward.d.ts +1 -1
  57. package/dist/channels/github/forward.d.ts.map +1 -1
  58. package/dist/channels/github/forward.js +3 -2
  59. package/dist/channels/github/github-channel.d.ts +29 -39
  60. package/dist/channels/github/github-channel.d.ts.map +1 -1
  61. package/dist/channels/github/github-channel.js +68 -101
  62. package/dist/channels/github/replay.d.ts +1 -1
  63. package/dist/channels/github/replay.js +1 -1
  64. package/dist/channels/github/state.d.ts +2 -0
  65. package/dist/channels/github/state.d.ts.map +1 -1
  66. package/dist/channels/github/state.js +14 -11
  67. package/dist/channels/github/types.d.ts +2 -4
  68. package/dist/channels/github/types.d.ts.map +1 -1
  69. package/dist/channels/gitlab/api.d.ts +91 -0
  70. package/dist/channels/gitlab/api.d.ts.map +1 -0
  71. package/dist/channels/gitlab/api.js +150 -0
  72. package/dist/channels/gitlab/binding.d.ts +58 -0
  73. package/dist/channels/gitlab/binding.d.ts.map +1 -0
  74. package/dist/channels/gitlab/binding.js +139 -0
  75. package/dist/channels/gitlab/checks.d.ts +110 -0
  76. package/dist/channels/gitlab/checks.d.ts.map +1 -0
  77. package/dist/channels/gitlab/checks.js +126 -0
  78. package/dist/channels/gitlab/cursor-account.d.ts +36 -0
  79. package/dist/channels/gitlab/cursor-account.d.ts.map +1 -0
  80. package/dist/channels/gitlab/cursor-account.js +65 -0
  81. package/dist/channels/gitlab/defaults.d.ts +25 -0
  82. package/dist/channels/gitlab/defaults.d.ts.map +1 -0
  83. package/dist/channels/gitlab/defaults.js +60 -0
  84. package/dist/channels/gitlab/events.d.ts +12 -0
  85. package/dist/channels/gitlab/events.d.ts.map +1 -0
  86. package/dist/channels/gitlab/events.js +28 -0
  87. package/dist/channels/gitlab/gitlab-channel.d.ts +33 -0
  88. package/dist/channels/gitlab/gitlab-channel.d.ts.map +1 -0
  89. package/dist/channels/gitlab/gitlab-channel.js +120 -0
  90. package/dist/channels/gitlab/gitlab-webhook.d.ts +45 -0
  91. package/dist/channels/gitlab/gitlab-webhook.d.ts.map +1 -0
  92. package/dist/channels/gitlab/gitlab-webhook.js +397 -0
  93. package/dist/channels/gitlab/index.d.ts +31 -0
  94. package/dist/channels/gitlab/index.d.ts.map +1 -0
  95. package/dist/channels/gitlab/index.js +30 -0
  96. package/dist/channels/gitlab/replay.d.ts +105 -0
  97. package/dist/channels/gitlab/replay.d.ts.map +1 -0
  98. package/dist/channels/gitlab/replay.js +206 -0
  99. package/dist/channels/gitlab/state.d.ts +33 -0
  100. package/dist/channels/gitlab/state.d.ts.map +1 -0
  101. package/dist/channels/gitlab/state.js +23 -0
  102. package/dist/channels/gitlab/types.d.ts +214 -0
  103. package/dist/channels/gitlab/types.d.ts.map +1 -0
  104. package/dist/channels/gitlab/types.js +1 -0
  105. package/dist/channels/origin/api.d.ts.map +1 -1
  106. package/dist/channels/origin/api.js +4 -2
  107. package/dist/channels/origin/origin-channel.d.ts +4 -9
  108. package/dist/channels/origin/origin-channel.d.ts.map +1 -1
  109. package/dist/channels/origin/origin-channel.js +8 -48
  110. package/dist/channels/origin/types.d.ts +20 -2
  111. package/dist/channels/origin/types.d.ts.map +1 -1
  112. package/dist/channels/slack/api.d.ts +1 -1
  113. package/dist/channels/slack/api.d.ts.map +1 -1
  114. package/dist/channels/slack/api.js +3 -1
  115. package/dist/channels/slack/assistant.d.ts +1 -1
  116. package/dist/channels/slack/assistant.d.ts.map +1 -1
  117. package/dist/channels/slack/dispatch.d.ts +3 -2
  118. package/dist/channels/slack/dispatch.d.ts.map +1 -1
  119. package/dist/channels/slack/dispatch.js +28 -8
  120. package/dist/channels/slack/eval-directive.d.ts.map +1 -1
  121. package/dist/channels/slack/eval-directive.js +1 -7
  122. package/dist/channels/slack/inbound.d.ts +8 -0
  123. package/dist/channels/slack/inbound.d.ts.map +1 -1
  124. package/dist/channels/slack/inbound.js +28 -0
  125. package/dist/channels/slack/init.d.ts.map +1 -1
  126. package/dist/channels/slack/init.js +3 -3
  127. package/dist/channels/slack/manifest.d.ts.map +1 -1
  128. package/dist/channels/slack/manifest.js +2 -1
  129. package/dist/channels/slack/setup.d.ts +1 -1
  130. package/dist/channels/slack/setup.d.ts.map +1 -1
  131. package/dist/channels/slack/setup.js +6 -13
  132. package/dist/channels/slack/types.d.ts +1 -1
  133. package/dist/channels/slack/types.d.ts.map +1 -1
  134. package/dist/channels.d.ts +1 -1
  135. package/dist/channels.d.ts.map +1 -1
  136. package/dist/client.d.ts +1 -1
  137. package/dist/client.js +1 -1
  138. package/dist/connections.d.ts +1 -1
  139. package/dist/connections.js +1 -1
  140. package/dist/docs/404.html +2 -2
  141. package/dist/docs/ab.html +4 -4
  142. package/dist/docs/assets/{app.BASO9Kih.js → app.DW9pXkpL.js} +1 -1
  143. package/dist/docs/assets/chunks/@localSearchIndexroot.nrl1ifBq.js +1 -0
  144. package/dist/docs/assets/chunks/{VPLocalSearchBox.DwkqxoE0.js → VPLocalSearchBox.CdEIUwDg.js} +1 -1
  145. package/dist/docs/assets/chunks/{theme.CCil_13e.js → theme.YZMHgPgg.js} +2 -2
  146. package/dist/docs/assets/{concepts.md.lwAgBIMI.js → concepts.md.DgEcZOfT.js} +1 -1
  147. package/dist/docs/assets/{concepts.md.lwAgBIMI.lean.js → concepts.md.DgEcZOfT.lean.js} +1 -1
  148. package/dist/docs/assets/{evals.md.CPzDAwoH.js → evals.md.CbMoebP1.js} +1 -1
  149. package/dist/docs/assets/guides_cloud-agents.md.DS8RIjwx.js +9 -0
  150. package/dist/docs/assets/guides_cloud-agents.md.DS8RIjwx.lean.js +1 -0
  151. package/dist/docs/assets/{guides_github.md.BtPr9GaP.js → guides_github.md.DKYiT9do.js} +1 -1
  152. package/dist/docs/assets/{guides_opentelemetry.md.BVTXDCRg.js → guides_opentelemetry.md.COh9jFVg.js} +7 -8
  153. package/dist/docs/assets/{guides_opentelemetry.md.BVTXDCRg.lean.js → guides_opentelemetry.md.COh9jFVg.lean.js} +1 -1
  154. package/dist/docs/assets/index.md.D75GWhPl.js +5 -0
  155. package/dist/docs/assets/{index.md.Bb4k8kUm.lean.js → index.md.D75GWhPl.lean.js} +1 -1
  156. package/dist/docs/assets/{reference_agent-config.md.BHeYMgme.js → reference_agent-config.md.CHNpiyp4.js} +3 -3
  157. package/dist/docs/assets/{reference_channels.md.Cd2f2iyV.js → reference_channels.md.Dz8Cnudp.js} +2 -2
  158. package/dist/docs/assets/{reference_channels.md.Cd2f2iyV.lean.js → reference_channels.md.Dz8Cnudp.lean.js} +1 -1
  159. package/dist/docs/assets/{reference_cli.md.DfoeyvL0.js → reference_cli.md.CJNc_xYK.js} +1 -1
  160. package/dist/docs/assets/reference_extensions.md.DykHW3qL.js +62 -0
  161. package/dist/docs/assets/reference_extensions.md.DykHW3qL.lean.js +1 -0
  162. package/dist/docs/assets/reference_hooks.md.Ddt5DdgJ.js +73 -0
  163. package/dist/docs/assets/{reference_hooks.md.a8BJxMR5.lean.js → reference_hooks.md.Ddt5DdgJ.lean.js} +1 -1
  164. package/dist/docs/assets/{reference_playground.md.DnX5nL-B.js → reference_playground.md.4myJPxrf.js} +1 -1
  165. package/dist/docs/assets/{reference_project-layout.md.Bv4KOtlB.js → reference_project-layout.md.DuBu9a96.js} +2 -2
  166. package/dist/docs/assets/{reference_project-layout.md.Bv4KOtlB.lean.js → reference_project-layout.md.DuBu9a96.lean.js} +1 -1
  167. package/dist/docs/assets/reference_result.md.BK5SxDrf.js +19 -0
  168. package/dist/docs/assets/reference_result.md.BK5SxDrf.lean.js +1 -0
  169. package/dist/docs/assets/{reference_sessions.md.NxFP_CAC.js → reference_sessions.md.CueyOHSL.js} +1 -1
  170. package/dist/docs/assets/{reference_sessions.md.NxFP_CAC.lean.js → reference_sessions.md.CueyOHSL.lean.js} +1 -1
  171. package/dist/docs/assets/{reference_skills.md.BFW9retM.js → reference_skills.md.l2ezAcaN.js} +1 -1
  172. package/dist/docs/assets/{reference_tools.md.CvAHsdSp.js → reference_tools.md.aGrn99hP.js} +2 -2
  173. package/dist/docs/assets/skills_framework-map.md.haibFyoB.js +1 -0
  174. package/dist/docs/assets/{skills_framework-map.md.BTi817yv.lean.js → skills_framework-map.md.haibFyoB.lean.js} +1 -1
  175. package/dist/docs/assets/{skills_otel.md.CgiZryR3.js → skills_otel.md.CqhobH3B.js} +3 -3
  176. package/dist/docs/assets/{skills_otel.md.CgiZryR3.lean.js → skills_otel.md.CqhobH3B.lean.js} +1 -1
  177. package/dist/docs/assets/{templates_pr-autofixer.md.x5zl6-GT.js → templates_pr-autofixer.md.Bds_XWcV.js} +2 -2
  178. package/dist/docs/assets/{templates_pr-autofixer.md.x5zl6-GT.lean.js → templates_pr-autofixer.md.Bds_XWcV.lean.js} +1 -1
  179. package/dist/docs/building-with-agents.html +4 -4
  180. package/dist/docs/concepts.html +5 -5
  181. package/dist/docs/concepts.md +5 -7
  182. package/dist/docs/deployment.html +4 -4
  183. package/dist/docs/design/runtime-abstraction.md +2 -3
  184. package/dist/docs/evals.html +6 -6
  185. package/dist/docs/evals.md +9 -7
  186. package/dist/docs/guides/agent-to-agent.html +4 -4
  187. package/dist/docs/guides/cloud-agents.html +35 -0
  188. package/dist/docs/guides/cloud-agents.md +91 -0
  189. package/dist/docs/guides/convert-automation.html +4 -4
  190. package/dist/docs/guides/github.html +6 -6
  191. package/dist/docs/guides/github.md +0 -1
  192. package/dist/docs/guides/human-in-the-loop.html +4 -4
  193. package/dist/docs/guides/mcp-oauth.html +5 -5
  194. package/dist/docs/guides/opentelemetry.html +11 -12
  195. package/dist/docs/guides/opentelemetry.md +41 -17
  196. package/dist/docs/guides/slack.html +4 -4
  197. package/dist/docs/guides/webhooks.html +4 -4
  198. package/dist/docs/hashmap.json +1 -1
  199. package/dist/docs/hillclimbing.html +4 -4
  200. package/dist/docs/index.html +6 -6
  201. package/dist/docs/index.md +7 -3
  202. package/dist/docs/llms-full.txt +765 -209
  203. package/dist/docs/llms.txt +3 -1
  204. package/dist/docs/quickstart.html +4 -4
  205. package/dist/docs/reference/agent-config.html +8 -8
  206. package/dist/docs/reference/agent-config.md +6 -10
  207. package/dist/docs/reference/artifacts.html +5 -5
  208. package/dist/docs/reference/channels.html +6 -6
  209. package/dist/docs/reference/channels.md +18 -8
  210. package/dist/docs/reference/cli.html +5 -5
  211. package/dist/docs/reference/cli.md +3 -4
  212. package/dist/docs/reference/connections.html +4 -4
  213. package/dist/docs/reference/extensions.html +88 -0
  214. package/dist/docs/reference/extensions.md +264 -0
  215. package/dist/docs/reference/hooks.html +69 -10
  216. package/dist/docs/reference/hooks.md +215 -46
  217. package/dist/docs/reference/http-api.html +4 -4
  218. package/dist/docs/reference/instructions.html +4 -4
  219. package/dist/docs/reference/playground.html +5 -5
  220. package/dist/docs/reference/playground.md +3 -0
  221. package/dist/docs/reference/project-layout.html +6 -6
  222. package/dist/docs/reference/project-layout.md +4 -0
  223. package/dist/docs/reference/prompt.html +4 -4
  224. package/dist/docs/reference/result.html +45 -0
  225. package/dist/docs/reference/result.md +89 -0
  226. package/dist/docs/reference/schedules.html +4 -4
  227. package/dist/docs/reference/sessions.html +5 -5
  228. package/dist/docs/reference/sessions.md +3 -1
  229. package/dist/docs/reference/skills.html +6 -6
  230. package/dist/docs/reference/skills.md +2 -0
  231. package/dist/docs/reference/subagents.html +5 -5
  232. package/dist/docs/reference/tools.html +6 -6
  233. package/dist/docs/reference/tools.md +3 -2
  234. package/dist/docs/scaffolding-agents.html +4 -4
  235. package/dist/docs/skills/ab.html +4 -4
  236. package/dist/docs/skills/create-agent.html +4 -4
  237. package/dist/docs/skills/debug.html +4 -4
  238. package/dist/docs/skills/evals.html +4 -4
  239. package/dist/docs/skills/framework-map.html +5 -5
  240. package/dist/docs/skills/framework-map.md +3 -0
  241. package/dist/docs/skills/github.html +4 -4
  242. package/dist/docs/skills/hillclimb.html +4 -4
  243. package/dist/docs/skills/index.html +4 -4
  244. package/dist/docs/skills/mcp-auth.html +4 -4
  245. package/dist/docs/skills/otel.html +7 -7
  246. package/dist/docs/skills/otel.md +8 -3
  247. package/dist/docs/skills/setup-slack.html +4 -4
  248. package/dist/docs/storage.html +4 -4
  249. package/dist/docs/templates/agentic-owners.html +4 -4
  250. package/dist/docs/templates/agents-md.html +4 -4
  251. package/dist/docs/templates/code-wiki.html +4 -4
  252. package/dist/docs/templates/demo.html +4 -4
  253. package/dist/docs/templates/pr-autofixer.html +6 -6
  254. package/dist/docs/templates/pr-autofixer.md +0 -3
  255. package/dist/docs/templates/security-help.html +4 -4
  256. package/dist/docs/templates/security-reviewer.html +4 -4
  257. package/dist/docs/templates/triage.html +4 -4
  258. package/dist/docs/troubleshooting.html +4 -4
  259. package/dist/evals.d.ts +1 -1
  260. package/dist/evals.d.ts.map +1 -1
  261. package/dist/extensions/cursor-cloud-agents/extension.d.ts +9 -7
  262. package/dist/extensions/cursor-cloud-agents/extension.d.ts.map +1 -1
  263. package/dist/extensions/cursor-cloud-agents/extension.js +9 -7
  264. package/dist/extensions/cursor-cloud-agents/lib/backend.d.ts +78 -0
  265. package/dist/extensions/cursor-cloud-agents/lib/backend.d.ts.map +1 -0
  266. package/dist/extensions/cursor-cloud-agents/lib/backend.js +286 -0
  267. package/dist/extensions/cursor-cloud-agents/lib/inputs.d.ts +5 -0
  268. package/dist/extensions/cursor-cloud-agents/lib/inputs.d.ts.map +1 -0
  269. package/dist/extensions/cursor-cloud-agents/lib/inputs.js +4 -0
  270. package/dist/extensions/cursor-cloud-agents/lib/transcript.d.ts +8 -0
  271. package/dist/extensions/cursor-cloud-agents/lib/transcript.d.ts.map +1 -0
  272. package/dist/extensions/cursor-cloud-agents/lib/transcript.js +15 -0
  273. package/dist/extensions/cursor-cloud-agents/skills/handoff.md +21 -7
  274. package/dist/extensions/cursor-cloud-agents/tools/cancel.d.ts +4 -0
  275. package/dist/extensions/cursor-cloud-agents/tools/cancel.d.ts.map +1 -0
  276. package/dist/extensions/cursor-cloud-agents/tools/cancel.js +26 -0
  277. package/dist/extensions/cursor-cloud-agents/tools/dump.d.ts +4 -0
  278. package/dist/extensions/cursor-cloud-agents/tools/dump.d.ts.map +1 -0
  279. package/dist/extensions/cursor-cloud-agents/tools/dump.js +54 -0
  280. package/dist/extensions/cursor-cloud-agents/tools/get.d.ts +4 -0
  281. package/dist/extensions/cursor-cloud-agents/tools/get.d.ts.map +1 -0
  282. package/dist/extensions/cursor-cloud-agents/tools/get.js +25 -0
  283. package/dist/extensions/cursor-cloud-agents/tools/launch.d.ts.map +1 -1
  284. package/dist/extensions/cursor-cloud-agents/tools/launch.js +14 -38
  285. package/dist/extensions/cursor-cloud-agents/tools/list.js +1 -1
  286. package/dist/extensions/cursor-cloud-agents/tools/reply.d.ts +4 -0
  287. package/dist/extensions/cursor-cloud-agents/tools/reply.d.ts.map +1 -0
  288. package/dist/extensions/cursor-cloud-agents/tools/{follow_up.js → reply.js} +12 -14
  289. package/dist/extensions.d.ts +54 -17
  290. package/dist/extensions.d.ts.map +1 -1
  291. package/dist/extensions.js +83 -15
  292. package/dist/files-backends/cursor-hosted.d.ts +0 -8
  293. package/dist/files-backends/cursor-hosted.d.ts.map +1 -1
  294. package/dist/files-backends/cursor-hosted.js +1 -11
  295. package/dist/files.d.ts +21 -4
  296. package/dist/files.d.ts.map +1 -1
  297. package/dist/files.js +38 -21
  298. package/dist/index.d.ts +6 -6
  299. package/dist/index.d.ts.map +1 -1
  300. package/dist/index.js +4 -4
  301. package/dist/internal/ab-snapshot.d.ts.map +1 -1
  302. package/dist/internal/ab-snapshot.js +0 -1
  303. package/dist/internal/advertise-tools.d.ts.map +1 -1
  304. package/dist/internal/advertise-tools.js +1 -3
  305. package/dist/internal/authored-alias-hooks.d.ts +4 -13
  306. package/dist/internal/authored-alias-hooks.d.ts.map +1 -1
  307. package/dist/internal/authored-alias-hooks.js +4 -20
  308. package/dist/internal/authored-loaders.d.ts +2 -3
  309. package/dist/internal/authored-loaders.d.ts.map +1 -1
  310. package/dist/internal/authored-loaders.js +6 -20
  311. package/dist/internal/channel-dispatch.d.ts +43 -0
  312. package/dist/internal/channel-dispatch.d.ts.map +1 -0
  313. package/dist/internal/channel-dispatch.js +77 -0
  314. package/dist/internal/chat-client.d.ts +1 -1
  315. package/dist/internal/chat-client.js +1 -1
  316. package/dist/internal/cli-ax.d.ts +5 -5
  317. package/dist/internal/cli-ax.d.ts.map +1 -1
  318. package/dist/internal/cli-ax.js +5 -5
  319. package/dist/internal/cli-bitbucket.d.ts +33 -0
  320. package/dist/internal/cli-bitbucket.d.ts.map +1 -0
  321. package/dist/internal/cli-bitbucket.js +359 -0
  322. package/dist/internal/cli-convert-automation.d.ts +1 -1
  323. package/dist/internal/cli-convert-automation.js +2 -2
  324. package/dist/internal/cli-cursor.d.ts +1 -1
  325. package/dist/internal/cli-cursor.d.ts.map +1 -1
  326. package/dist/internal/cli-cursor.js +2 -4
  327. package/dist/internal/cli-deploy.d.ts.map +1 -1
  328. package/dist/internal/cli-deploy.js +2 -6
  329. package/dist/internal/cli-github.d.ts +1 -1
  330. package/dist/internal/cli-github.js +3 -3
  331. package/dist/internal/cli-gitlab.d.ts +37 -0
  332. package/dist/internal/cli-gitlab.d.ts.map +1 -0
  333. package/dist/internal/cli-gitlab.js +380 -0
  334. package/dist/internal/cli-mcp.d.ts.map +1 -1
  335. package/dist/internal/cli-mcp.js +2 -6
  336. package/dist/internal/cli-slack.d.ts +1 -1
  337. package/dist/internal/cli-slack.d.ts.map +1 -1
  338. package/dist/internal/cli-slack.js +2 -4
  339. package/dist/internal/continuation-channel.d.ts +14 -0
  340. package/dist/internal/continuation-channel.d.ts.map +1 -1
  341. package/dist/internal/continuation-channel.js +56 -3
  342. package/dist/internal/continuation-identity.d.ts +14 -15
  343. package/dist/internal/continuation-identity.d.ts.map +1 -1
  344. package/dist/internal/continuation-identity.js +182 -7
  345. package/dist/internal/conversation-mirror.d.ts.map +1 -1
  346. package/dist/internal/conversation-mirror.js +17 -18
  347. package/dist/internal/convert-automation/types.d.ts +1 -1
  348. package/dist/internal/convert-automation/types.js +1 -1
  349. package/dist/internal/cursor/account-mcp.d.ts.map +1 -1
  350. package/dist/internal/cursor/account-mcp.js +1 -3
  351. package/dist/internal/cursor/backend-client.d.ts +13 -5
  352. package/dist/internal/cursor/backend-client.d.ts.map +1 -1
  353. package/dist/internal/cursor/backend-client.js +30 -15
  354. package/dist/internal/cursor/bound-secret-file.d.ts +56 -0
  355. package/dist/internal/cursor/bound-secret-file.d.ts.map +1 -0
  356. package/dist/internal/cursor/bound-secret-file.js +88 -0
  357. package/dist/internal/cursor/credentials.d.ts +39 -5
  358. package/dist/internal/cursor/credentials.d.ts.map +1 -1
  359. package/dist/internal/cursor/credentials.js +58 -8
  360. package/dist/internal/cursor/hosted-bound-secrets.d.ts +41 -0
  361. package/dist/internal/cursor/hosted-bound-secrets.d.ts.map +1 -0
  362. package/dist/internal/cursor/hosted-bound-secrets.js +54 -0
  363. package/dist/internal/cursor/hosted-deployment-secrets.d.ts +19 -5
  364. package/dist/internal/cursor/hosted-deployment-secrets.d.ts.map +1 -1
  365. package/dist/internal/cursor/hosted-deployment-secrets.js +29 -9
  366. package/dist/internal/cursor/hosted-store-secrets.d.ts +12 -1
  367. package/dist/internal/cursor/hosted-store-secrets.d.ts.map +1 -1
  368. package/dist/internal/cursor/hosted-store-secrets.js +16 -1
  369. package/dist/internal/cursor-account-mcp-auth.d.ts.map +1 -1
  370. package/dist/internal/cursor-account-mcp-auth.js +2 -4
  371. package/dist/internal/cursor-deployment-relay.d.ts +6 -2
  372. package/dist/internal/cursor-deployment-relay.d.ts.map +1 -1
  373. package/dist/internal/cursor-deployment-relay.js +13 -9
  374. package/dist/internal/deploy-manifest.d.ts +1 -1
  375. package/dist/internal/deploy-manifest.d.ts.map +1 -1
  376. package/dist/internal/deploy-manifest.js +1 -1
  377. package/dist/internal/discovery/ab.d.ts +9 -0
  378. package/dist/internal/discovery/ab.d.ts.map +1 -0
  379. package/dist/internal/discovery/ab.js +113 -0
  380. package/dist/internal/discovery/agent-config.d.ts +35 -0
  381. package/dist/internal/discovery/agent-config.d.ts.map +1 -0
  382. package/dist/internal/discovery/agent-config.js +173 -0
  383. package/dist/internal/discovery/agent.d.ts +16 -0
  384. package/dist/internal/discovery/agent.d.ts.map +1 -0
  385. package/dist/internal/discovery/agent.js +255 -0
  386. package/dist/internal/discovery/channels.d.ts +10 -0
  387. package/dist/internal/discovery/channels.d.ts.map +1 -0
  388. package/dist/internal/discovery/channels.js +97 -0
  389. package/dist/internal/discovery/connections.d.ts +13 -0
  390. package/dist/internal/discovery/connections.d.ts.map +1 -0
  391. package/dist/internal/discovery/connections.js +422 -0
  392. package/dist/internal/discovery/context.d.ts +20 -0
  393. package/dist/internal/discovery/context.d.ts.map +1 -0
  394. package/dist/internal/discovery/context.js +30 -0
  395. package/dist/internal/discovery/cursor-plugin.d.ts +25 -0
  396. package/dist/internal/discovery/cursor-plugin.d.ts.map +1 -0
  397. package/dist/internal/discovery/cursor-plugin.js +568 -0
  398. package/dist/internal/discovery/extension-overlay.d.ts +32 -0
  399. package/dist/internal/discovery/extension-overlay.d.ts.map +1 -0
  400. package/dist/internal/discovery/extension-overlay.js +191 -0
  401. package/dist/internal/discovery/extensions.d.ts +28 -0
  402. package/dist/internal/discovery/extensions.d.ts.map +1 -0
  403. package/dist/internal/discovery/extensions.js +375 -0
  404. package/dist/internal/discovery/fs.d.ts +15 -0
  405. package/dist/internal/discovery/fs.d.ts.map +1 -0
  406. package/dist/internal/discovery/fs.js +115 -0
  407. package/dist/internal/discovery/hooks.d.ts +7 -0
  408. package/dist/internal/discovery/hooks.d.ts.map +1 -0
  409. package/dist/internal/discovery/hooks.js +61 -0
  410. package/dist/internal/discovery/info.d.ts +6 -0
  411. package/dist/internal/discovery/info.d.ts.map +1 -0
  412. package/dist/internal/discovery/info.js +147 -0
  413. package/dist/internal/discovery/instructions.d.ts +7 -0
  414. package/dist/internal/discovery/instructions.d.ts.map +1 -0
  415. package/dist/internal/discovery/instructions.js +95 -0
  416. package/dist/internal/discovery/modules.d.ts +20 -0
  417. package/dist/internal/discovery/modules.d.ts.map +1 -0
  418. package/dist/internal/discovery/modules.js +107 -0
  419. package/dist/internal/discovery/names.d.ts +12 -0
  420. package/dist/internal/discovery/names.d.ts.map +1 -0
  421. package/dist/internal/discovery/names.js +37 -0
  422. package/dist/internal/discovery/project.d.ts +51 -0
  423. package/dist/internal/discovery/project.d.ts.map +1 -0
  424. package/dist/internal/discovery/project.js +293 -0
  425. package/dist/internal/discovery/runtime.d.ts +34 -0
  426. package/dist/internal/discovery/runtime.d.ts.map +1 -0
  427. package/dist/internal/discovery/runtime.js +97 -0
  428. package/dist/internal/discovery/schedules.d.ts +7 -0
  429. package/dist/internal/discovery/schedules.d.ts.map +1 -0
  430. package/dist/internal/discovery/schedules.js +118 -0
  431. package/dist/internal/discovery/seed-files.d.ts +7 -0
  432. package/dist/internal/discovery/seed-files.d.ts.map +1 -0
  433. package/dist/internal/discovery/seed-files.js +41 -0
  434. package/dist/internal/discovery/services.d.ts +21 -0
  435. package/dist/internal/discovery/services.d.ts.map +1 -0
  436. package/dist/internal/discovery/services.js +134 -0
  437. package/dist/internal/discovery/skills.d.ts +11 -0
  438. package/dist/internal/discovery/skills.d.ts.map +1 -0
  439. package/dist/internal/discovery/skills.js +156 -0
  440. package/dist/internal/discovery/subagent.d.ts +16 -0
  441. package/dist/internal/discovery/subagent.d.ts.map +1 -0
  442. package/dist/internal/discovery/subagent.js +128 -0
  443. package/dist/internal/discovery/tools.d.ts +18 -0
  444. package/dist/internal/discovery/tools.d.ts.map +1 -0
  445. package/dist/internal/discovery/tools.js +159 -0
  446. package/dist/internal/discovery.d.ts +8 -63
  447. package/dist/internal/discovery.d.ts.map +1 -1
  448. package/dist/internal/discovery.js +6 -2504
  449. package/dist/internal/distribution.d.ts +10 -27
  450. package/dist/internal/distribution.d.ts.map +1 -1
  451. package/dist/internal/distribution.js +25 -73
  452. package/dist/internal/docs-site.js +1 -1
  453. package/dist/internal/eval-run-store.d.ts +0 -1
  454. package/dist/internal/eval-run-store.d.ts.map +1 -1
  455. package/dist/internal/eval-runner.d.ts.map +1 -1
  456. package/dist/internal/framework-file-storage.d.ts +8 -0
  457. package/dist/internal/framework-file-storage.d.ts.map +1 -1
  458. package/dist/internal/framework-file-storage.js +14 -14
  459. package/dist/internal/framework-storage-selection.d.ts.map +1 -1
  460. package/dist/internal/framework-storage-selection.js +8 -7
  461. package/dist/internal/frontmatter.d.ts +11 -3
  462. package/dist/internal/frontmatter.d.ts.map +1 -1
  463. package/dist/internal/frontmatter.js +29 -3
  464. package/dist/internal/github-fanout.d.ts +1 -1
  465. package/dist/internal/github-fanout.js +1 -1
  466. package/dist/internal/guest-network.d.ts +101 -0
  467. package/dist/internal/guest-network.d.ts.map +1 -0
  468. package/dist/internal/guest-network.js +304 -0
  469. package/dist/internal/host-otel.d.ts +3 -3
  470. package/dist/internal/host-otel.d.ts.map +1 -1
  471. package/dist/internal/host-otel.js +8 -4
  472. package/dist/internal/hosted-admission-adapter.d.ts +8 -7
  473. package/dist/internal/hosted-admission-adapter.d.ts.map +1 -1
  474. package/dist/internal/hosted-delivery-protocol.d.ts +6 -0
  475. package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
  476. package/dist/internal/hosted-delivery-protocol.js +18 -5
  477. package/dist/internal/hosted-delivery.d.ts +18 -0
  478. package/dist/internal/hosted-delivery.d.ts.map +1 -1
  479. package/dist/internal/hosted-delivery.js +248 -118
  480. package/dist/internal/http-channel.d.ts.map +1 -1
  481. package/dist/internal/http-channel.js +1 -3
  482. package/dist/internal/init-interview.d.ts.map +1 -1
  483. package/dist/internal/init-interview.js +1 -3
  484. package/dist/internal/init-project.d.ts +2 -2
  485. package/dist/internal/init-project.js +2 -2
  486. package/dist/internal/inline-stdio-define-stub.d.ts +1 -1
  487. package/dist/internal/inline-stdio-define-stub.d.ts.map +1 -1
  488. package/dist/internal/inline-stdio-define-stub.js +1 -1
  489. package/dist/internal/is-record.d.ts +2 -0
  490. package/dist/internal/is-record.d.ts.map +1 -0
  491. package/dist/internal/is-record.js +3 -0
  492. package/dist/internal/json-schema.d.ts.map +1 -1
  493. package/dist/internal/json-schema.js +18 -10
  494. package/dist/internal/local-control-plane.d.ts +1 -2
  495. package/dist/internal/local-control-plane.d.ts.map +1 -1
  496. package/dist/internal/local-control-plane.js +3 -20
  497. package/dist/internal/mcp-endpoint.d.ts.map +1 -1
  498. package/dist/internal/mcp-endpoint.js +1 -3
  499. package/dist/internal/mcp-host.d.ts.map +1 -1
  500. package/dist/internal/mcp-host.js +37 -20
  501. package/dist/internal/otel/collector.d.ts +22 -0
  502. package/dist/internal/otel/collector.d.ts.map +1 -1
  503. package/dist/internal/otel/collector.js +145 -126
  504. package/dist/internal/otel/config.d.ts +0 -2
  505. package/dist/internal/otel/config.d.ts.map +1 -1
  506. package/dist/internal/otel/config.js +17 -20
  507. package/dist/internal/otel/http.d.ts +2 -0
  508. package/dist/internal/otel/http.d.ts.map +1 -1
  509. package/dist/internal/otel/http.js +8 -10
  510. package/dist/internal/otel/mcp.d.ts +16 -0
  511. package/dist/internal/otel/mcp.d.ts.map +1 -0
  512. package/dist/internal/otel/mcp.js +55 -0
  513. package/dist/internal/otel/propagation.d.ts +6 -0
  514. package/dist/internal/otel/propagation.d.ts.map +1 -0
  515. package/dist/internal/otel/propagation.js +14 -0
  516. package/dist/internal/otel/runtime.d.ts +26 -1
  517. package/dist/internal/otel/runtime.d.ts.map +1 -1
  518. package/dist/internal/otel/runtime.js +166 -15
  519. package/dist/internal/package-inline-stdio.d.ts.map +1 -1
  520. package/dist/internal/package-inline-stdio.js +3 -11
  521. package/dist/internal/playground/toolchain.d.ts +1 -1
  522. package/dist/internal/playground/toolchain.d.ts.map +1 -1
  523. package/dist/internal/playground/toolchain.js +1 -1
  524. package/dist/internal/request-error-status.d.ts +12 -0
  525. package/dist/internal/request-error-status.d.ts.map +1 -0
  526. package/dist/internal/request-error-status.js +52 -0
  527. package/dist/internal/resolve-prod-target.d.ts +1 -1
  528. package/dist/internal/resolve-prod-target.d.ts.map +1 -1
  529. package/dist/internal/resolve-prod-target.js +3 -7
  530. package/dist/internal/result-output.d.ts +18 -0
  531. package/dist/internal/result-output.d.ts.map +1 -0
  532. package/dist/internal/result-output.js +33 -0
  533. package/dist/internal/run-client.d.ts +2 -2
  534. package/dist/internal/run-client.js +2 -2
  535. package/dist/internal/runtime-dispatch-runner.d.ts +1 -11
  536. package/dist/internal/runtime-dispatch-runner.d.ts.map +1 -1
  537. package/dist/internal/runtime-dispatch-runner.js +2 -15
  538. package/dist/internal/sdk-runner.d.ts.map +1 -1
  539. package/dist/internal/sdk-runner.js +3 -6
  540. package/dist/internal/server.d.ts.map +1 -1
  541. package/dist/internal/server.js +110 -35
  542. package/dist/internal/session-cost.d.ts +3 -3
  543. package/dist/internal/session-cost.d.ts.map +1 -1
  544. package/dist/internal/session-cost.js +3 -3
  545. package/dist/internal/session-engine.d.ts +31 -11
  546. package/dist/internal/session-engine.d.ts.map +1 -1
  547. package/dist/internal/session-engine.js +208 -102
  548. package/dist/internal/session-run-log.d.ts +2 -1
  549. package/dist/internal/session-run-log.d.ts.map +1 -1
  550. package/dist/internal/session-run-log.js +14 -17
  551. package/dist/internal/skills-sync.d.ts +1 -4
  552. package/dist/internal/skills-sync.d.ts.map +1 -1
  553. package/dist/internal/skills-sync.js +10 -50
  554. package/dist/internal/sleep.d.ts +2 -0
  555. package/dist/internal/sleep.d.ts.map +1 -0
  556. package/dist/internal/sleep.js +3 -0
  557. package/dist/internal/start-log-store.d.ts +1 -1
  558. package/dist/internal/start-log-store.d.ts.map +1 -1
  559. package/dist/internal/start-log-store.js +12 -14
  560. package/dist/internal/storage-coordinator.d.ts +4 -1
  561. package/dist/internal/storage-coordinator.d.ts.map +1 -1
  562. package/dist/internal/storage-coordinator.js +15 -13
  563. package/dist/internal/store-mirror.d.ts +29 -0
  564. package/dist/internal/store-mirror.d.ts.map +1 -0
  565. package/dist/internal/store-mirror.js +70 -0
  566. package/dist/internal/tenant-slack/relay.d.ts +73 -0
  567. package/dist/internal/tenant-slack/relay.d.ts.map +1 -0
  568. package/dist/internal/tenant-slack/relay.js +138 -0
  569. package/dist/internal/testing/scm-continuation-fixtures.d.ts +33 -0
  570. package/dist/internal/testing/scm-continuation-fixtures.d.ts.map +1 -0
  571. package/dist/internal/testing/scm-continuation-fixtures.js +253 -0
  572. package/dist/internal/tool-catalog.d.ts.map +1 -1
  573. package/dist/internal/tool-catalog.js +9 -6
  574. package/dist/internal/turn-cost.d.ts +14 -0
  575. package/dist/internal/turn-cost.d.ts.map +1 -1
  576. package/dist/internal/turn-cost.js +41 -9
  577. package/dist/internal/v2-hosting.d.ts +22 -0
  578. package/dist/internal/v2-hosting.d.ts.map +1 -0
  579. package/dist/internal/v2-hosting.js +23 -0
  580. package/dist/internal/workspace-sync.d.ts +22 -0
  581. package/dist/internal/workspace-sync.d.ts.map +1 -0
  582. package/dist/internal/workspace-sync.js +49 -0
  583. package/dist/internal/workspace.d.ts +7 -0
  584. package/dist/internal/workspace.d.ts.map +1 -1
  585. package/dist/internal/workspace.js +13 -0
  586. package/dist/otel.d.ts +39 -1
  587. package/dist/otel.d.ts.map +1 -1
  588. package/dist/otel.js +118 -1
  589. package/dist/playground/assets/index-59KvgREd.js +67 -0
  590. package/dist/playground/assets/index-MbMxXg-y.css +1 -0
  591. package/dist/playground/index.html +2 -2
  592. package/dist/result.d.ts +24 -0
  593. package/dist/result.d.ts.map +1 -0
  594. package/dist/result.js +27 -0
  595. package/dist/storage-backends/cursor-hosted.d.ts.map +1 -1
  596. package/dist/storage-backends/cursor-hosted.js +7 -4
  597. package/dist/storage-protocol.d.ts +24 -23
  598. package/dist/storage-protocol.d.ts.map +1 -1
  599. package/dist/storage-protocol.js +69 -68
  600. package/dist/storage.d.ts +2 -2
  601. package/dist/storage.d.ts.map +1 -1
  602. package/dist/storage.js +1 -1
  603. package/dist/tools.d.ts +9 -0
  604. package/dist/tools.d.ts.map +1 -1
  605. package/dist/tools.js +9 -0
  606. package/dist/types.d.ts +126 -23
  607. package/dist/types.d.ts.map +1 -1
  608. package/docs/README.md +7 -3
  609. package/docs/concepts.md +5 -7
  610. package/docs/design/runtime-abstraction.md +2 -3
  611. package/docs/evals.md +9 -7
  612. package/docs/guides/cloud-agents.md +96 -0
  613. package/docs/guides/github.md +0 -1
  614. package/docs/guides/opentelemetry.md +41 -17
  615. package/docs/reference/agent-config.md +6 -10
  616. package/docs/reference/channels.md +18 -8
  617. package/docs/reference/cli.md +3 -4
  618. package/docs/reference/extensions.md +269 -0
  619. package/docs/reference/hooks.md +215 -46
  620. package/docs/reference/playground.md +3 -0
  621. package/docs/reference/project-layout.md +4 -0
  622. package/docs/reference/result.md +94 -0
  623. package/docs/reference/sessions.md +3 -1
  624. package/docs/reference/skills.md +2 -0
  625. package/docs/reference/tools.md +3 -2
  626. package/docs/templates/pr-autofixer.md +0 -3
  627. package/package.json +29 -10
  628. package/skills/framework-map/SKILL.md +3 -0
  629. package/skills/otel/SKILL.md +8 -3
  630. package/src/ab.ts +1 -1
  631. package/src/bin/agent-serve.ts +121 -21
  632. package/src/channels/bitbucket/api.ts +623 -0
  633. package/src/channels/bitbucket/binding.ts +414 -0
  634. package/src/channels/bitbucket/bitbucket-channel.ts +182 -0
  635. package/src/channels/bitbucket/bitbucket-webhook.ts +576 -0
  636. package/src/channels/bitbucket/checks.ts +154 -0
  637. package/src/channels/bitbucket/cursor-account.ts +117 -0
  638. package/src/channels/bitbucket/defaults.ts +110 -0
  639. package/src/channels/bitbucket/events.ts +84 -0
  640. package/src/channels/bitbucket/index.ts +49 -0
  641. package/src/channels/bitbucket/replay.ts +439 -0
  642. package/src/channels/bitbucket/state.ts +59 -0
  643. package/src/channels/bitbucket/types.ts +266 -0
  644. package/src/channels/deployments/deployments-channel.ts +25 -43
  645. package/src/channels/deployments/types.ts +12 -6
  646. package/src/channels/github/binding.ts +8 -1
  647. package/src/channels/github/cursor-account.ts +17 -6
  648. package/src/channels/github/events.ts +1 -1
  649. package/src/channels/github/forward.ts +3 -2
  650. package/src/channels/github/github-channel.ts +74 -221
  651. package/src/channels/github/replay.ts +1 -1
  652. package/src/channels/github/state.ts +6 -0
  653. package/src/channels/github/types.ts +2 -5
  654. package/src/channels/gitlab/api.ts +228 -0
  655. package/src/channels/gitlab/binding.ts +233 -0
  656. package/src/channels/gitlab/checks.ts +243 -0
  657. package/src/channels/gitlab/cursor-account.ts +114 -0
  658. package/src/channels/gitlab/defaults.ts +93 -0
  659. package/src/channels/gitlab/events.ts +44 -0
  660. package/src/channels/gitlab/gitlab-channel.ts +176 -0
  661. package/src/channels/gitlab/gitlab-webhook.ts +555 -0
  662. package/src/channels/gitlab/index.ts +43 -0
  663. package/src/channels/gitlab/replay.ts +347 -0
  664. package/src/channels/gitlab/state.ts +55 -0
  665. package/src/channels/gitlab/types.ts +263 -0
  666. package/src/channels/origin/api.ts +4 -2
  667. package/src/channels/origin/origin-channel.ts +19 -94
  668. package/src/channels/origin/types.ts +23 -2
  669. package/src/channels/slack/api.ts +4 -2
  670. package/src/channels/slack/assistant.ts +1 -1
  671. package/src/channels/slack/dispatch.ts +27 -2
  672. package/src/channels/slack/eval-directive.ts +1 -6
  673. package/src/channels/slack/inbound.ts +37 -0
  674. package/src/channels/slack/init.ts +6 -3
  675. package/src/channels/slack/manifest.ts +2 -1
  676. package/src/channels/slack/setup.ts +7 -6
  677. package/src/channels/slack/types.ts +1 -1
  678. package/src/channels.ts +0 -1
  679. package/src/client.ts +1 -1
  680. package/src/connections.ts +1 -1
  681. package/src/evals.ts +1 -1
  682. package/src/extensions/cursor-cloud-agents/extension.ts +9 -7
  683. package/src/extensions/cursor-cloud-agents/lib/backend.ts +395 -0
  684. package/src/extensions/cursor-cloud-agents/lib/inputs.ts +5 -0
  685. package/src/extensions/cursor-cloud-agents/lib/transcript.ts +23 -0
  686. package/src/extensions/cursor-cloud-agents/skills/handoff.md +21 -7
  687. package/src/extensions/cursor-cloud-agents/tools/cancel.ts +19 -0
  688. package/src/extensions/cursor-cloud-agents/tools/dump.ts +51 -0
  689. package/src/extensions/cursor-cloud-agents/tools/get.ts +18 -0
  690. package/src/extensions/cursor-cloud-agents/tools/launch.ts +22 -42
  691. package/src/extensions/cursor-cloud-agents/tools/list.ts +1 -1
  692. package/src/extensions/cursor-cloud-agents/tools/reply.ts +34 -0
  693. package/src/extensions.ts +100 -15
  694. package/src/files-backends/cursor-hosted.ts +1 -17
  695. package/src/files.ts +64 -37
  696. package/src/index.ts +27 -26
  697. package/src/internal/ab-snapshot.ts +0 -3
  698. package/src/internal/advertise-tools.ts +1 -4
  699. package/src/internal/authored-alias-hooks.ts +4 -21
  700. package/src/internal/authored-loaders.ts +6 -23
  701. package/src/internal/channel-dispatch.ts +160 -0
  702. package/src/internal/chat-client.ts +1 -1
  703. package/src/internal/cli-ax.ts +5 -5
  704. package/src/internal/cli-bitbucket.ts +477 -0
  705. package/src/internal/cli-convert-automation.ts +7 -7
  706. package/src/internal/cli-cursor.ts +2 -5
  707. package/src/internal/cli-deploy.ts +2 -8
  708. package/src/internal/cli-github.ts +3 -3
  709. package/src/internal/cli-gitlab.ts +485 -0
  710. package/src/internal/cli-mcp.ts +2 -7
  711. package/src/internal/cli-slack.ts +2 -5
  712. package/src/internal/continuation-channel.ts +82 -1
  713. package/src/internal/continuation-identity.ts +229 -11
  714. package/src/internal/conversation-mirror.ts +27 -21
  715. package/src/internal/convert-automation/types.ts +1 -1
  716. package/src/internal/cursor/account-mcp.ts +1 -4
  717. package/src/internal/cursor/backend-client.ts +41 -20
  718. package/src/internal/cursor/bound-secret-file.ts +108 -0
  719. package/src/internal/cursor/credentials.ts +75 -10
  720. package/src/internal/cursor/hosted-bound-secrets.ts +75 -0
  721. package/src/internal/cursor/hosted-deployment-secrets.ts +42 -11
  722. package/src/internal/cursor/hosted-store-secrets.ts +28 -1
  723. package/src/internal/cursor-account-mcp-auth.ts +2 -5
  724. package/src/internal/cursor-deployment-relay.ts +11 -7
  725. package/src/internal/deploy-manifest.ts +4 -2
  726. package/src/internal/discovery/ab.ts +131 -0
  727. package/src/internal/discovery/agent-config.ts +222 -0
  728. package/src/internal/discovery/agent.ts +319 -0
  729. package/src/internal/discovery/channels.ts +105 -0
  730. package/src/internal/discovery/connections.ts +545 -0
  731. package/src/internal/discovery/context.ts +46 -0
  732. package/src/internal/discovery/cursor-plugin.ts +705 -0
  733. package/src/internal/discovery/extension-overlay.ts +274 -0
  734. package/src/internal/discovery/extensions.ts +573 -0
  735. package/src/internal/discovery/fs.ts +108 -0
  736. package/src/internal/discovery/hooks.ts +63 -0
  737. package/src/internal/discovery/info.ts +186 -0
  738. package/src/internal/discovery/instructions.ts +113 -0
  739. package/src/internal/discovery/modules.ts +113 -0
  740. package/src/internal/discovery/names.ts +45 -0
  741. package/src/internal/discovery/project.ts +341 -0
  742. package/src/internal/discovery/runtime.ts +158 -0
  743. package/src/internal/discovery/schedules.ts +120 -0
  744. package/src/internal/discovery/seed-files.ts +37 -0
  745. package/src/internal/discovery/services.ts +160 -0
  746. package/src/internal/discovery/skills.ts +186 -0
  747. package/src/internal/discovery/subagent.ts +136 -0
  748. package/src/internal/discovery/tools.ts +182 -0
  749. package/src/internal/discovery.ts +18 -3081
  750. package/src/internal/distribution.ts +35 -83
  751. package/src/internal/docs-site.ts +1 -1
  752. package/src/internal/eval-run-store.ts +0 -7
  753. package/src/internal/eval-runner.ts +0 -1
  754. package/src/internal/framework-file-storage.ts +14 -14
  755. package/src/internal/framework-storage-selection.ts +9 -9
  756. package/src/internal/frontmatter.ts +36 -3
  757. package/src/internal/github-fanout.ts +1 -1
  758. package/src/internal/guest-network.ts +383 -0
  759. package/src/internal/host-otel.ts +8 -4
  760. package/src/internal/hosted-admission-adapter.ts +8 -8
  761. package/src/internal/hosted-delivery-protocol.ts +26 -1
  762. package/src/internal/hosted-delivery.ts +376 -192
  763. package/src/internal/http-channel.ts +1 -4
  764. package/src/internal/init-interview.ts +1 -4
  765. package/src/internal/init-project.ts +2 -2
  766. package/src/internal/inline-stdio-define-stub.ts +1 -1
  767. package/src/internal/is-record.ts +3 -0
  768. package/src/internal/json-schema.ts +19 -10
  769. package/src/internal/local-control-plane.ts +5 -24
  770. package/src/internal/mcp-endpoint.ts +1 -4
  771. package/src/internal/mcp-host.ts +84 -31
  772. package/src/internal/otel/collector.ts +200 -165
  773. package/src/internal/otel/config.ts +10 -14
  774. package/src/internal/otel/http.ts +16 -13
  775. package/src/internal/otel/mcp.ts +56 -0
  776. package/src/internal/otel/propagation.ts +17 -0
  777. package/src/internal/otel/runtime.ts +242 -25
  778. package/src/internal/package-inline-stdio.ts +3 -12
  779. package/src/internal/playground/toolchain.ts +1 -1
  780. package/src/internal/request-error-status.ts +72 -0
  781. package/src/internal/resolve-prod-target.ts +3 -8
  782. package/src/internal/result-output.ts +34 -0
  783. package/src/internal/run-client.ts +2 -2
  784. package/src/internal/runtime-dispatch-runner.ts +3 -21
  785. package/src/internal/sdk-runner.ts +3 -7
  786. package/src/internal/server.ts +153 -44
  787. package/src/internal/session-cost.ts +3 -3
  788. package/src/internal/session-engine.ts +274 -81
  789. package/src/internal/session-run-log.ts +18 -20
  790. package/src/internal/skills-sync.ts +13 -63
  791. package/src/internal/sleep.ts +3 -0
  792. package/src/internal/start-log-store.ts +13 -16
  793. package/src/internal/storage-coordinator.ts +19 -16
  794. package/src/internal/store-mirror.ts +86 -0
  795. package/src/internal/tenant-slack/relay.ts +179 -0
  796. package/src/internal/testing/scm-continuation-fixtures.ts +286 -0
  797. package/src/internal/tool-catalog.ts +9 -6
  798. package/src/internal/turn-cost.ts +47 -4
  799. package/src/internal/v2-hosting.ts +38 -0
  800. package/src/internal/workspace-sync.ts +55 -0
  801. package/src/internal/workspace.ts +14 -0
  802. package/src/otel.ts +180 -2
  803. package/src/result.ts +36 -0
  804. package/src/storage-backends/cursor-hosted.ts +7 -4
  805. package/src/storage-protocol.ts +102 -95
  806. package/src/storage.ts +4 -0
  807. package/src/tools.ts +18 -0
  808. package/src/types.ts +146 -34
  809. package/templates/triage/agent/lib/types.ts +0 -2
  810. package/dist/continuation.d.ts +0 -20
  811. package/dist/continuation.d.ts.map +0 -1
  812. package/dist/continuation.js +0 -18
  813. package/dist/docs/assets/chunks/@localSearchIndexroot.DbFXINq2.js +0 -1
  814. package/dist/docs/assets/guides_cloud-runtime.md.CkYbjnAX.js +0 -9
  815. package/dist/docs/assets/guides_cloud-runtime.md.CkYbjnAX.lean.js +0 -1
  816. package/dist/docs/assets/index.md.Bb4k8kUm.js +0 -5
  817. package/dist/docs/assets/reference_hooks.md.a8BJxMR5.js +0 -14
  818. package/dist/docs/assets/skills_framework-map.md.BTi817yv.js +0 -1
  819. package/dist/docs/guides/cloud-runtime.html +0 -35
  820. package/dist/docs/guides/cloud-runtime.md +0 -115
  821. package/dist/extensions/cursor-cloud-agents/lib/cloud.d.ts +0 -30
  822. package/dist/extensions/cursor-cloud-agents/lib/cloud.d.ts.map +0 -1
  823. package/dist/extensions/cursor-cloud-agents/lib/cloud.js +0 -45
  824. package/dist/extensions/cursor-cloud-agents/tools/follow_up.d.ts +0 -4
  825. package/dist/extensions/cursor-cloud-agents/tools/follow_up.d.ts.map +0 -1
  826. package/dist/extensions/cursor-cloud-agents/tools/status.d.ts +0 -4
  827. package/dist/extensions/cursor-cloud-agents/tools/status.d.ts.map +0 -1
  828. package/dist/extensions/cursor-cloud-agents/tools/status.js +0 -41
  829. package/dist/internal/convert-automation/index.d.ts +0 -3
  830. package/dist/internal/convert-automation/index.d.ts.map +0 -1
  831. package/dist/internal/convert-automation/index.js +0 -1
  832. package/dist/internal/grokbot/runner.d.ts +0 -64
  833. package/dist/internal/grokbot/runner.d.ts.map +0 -1
  834. package/dist/internal/grokbot/runner.js +0 -282
  835. package/dist/internal/managed-delivery.d.ts +0 -80
  836. package/dist/internal/managed-delivery.d.ts.map +0 -1
  837. package/dist/internal/managed-delivery.js +0 -86
  838. package/dist/internal/review-comments.d.ts +0 -370
  839. package/dist/internal/review-comments.d.ts.map +0 -1
  840. package/dist/internal/review-comments.js +0 -921
  841. package/dist/internal/shallow-clone.d.ts +0 -176
  842. package/dist/internal/shallow-clone.d.ts.map +0 -1
  843. package/dist/internal/shallow-clone.js +0 -419
  844. package/dist/playground/assets/index-BnNN1-EK.js +0 -69
  845. package/dist/playground/assets/index-DBQCwFp0.css +0 -1
  846. package/docs/guides/cloud-runtime.md +0 -120
  847. package/src/continuation.ts +0 -49
  848. package/src/extensions/cursor-cloud-agents/lib/cloud.ts +0 -79
  849. package/src/extensions/cursor-cloud-agents/tools/follow_up.ts +0 -29
  850. package/src/extensions/cursor-cloud-agents/tools/status.ts +0 -39
  851. package/src/internal/convert-automation/index.ts +0 -10
  852. package/src/internal/grokbot/runner.ts +0 -370
  853. package/src/internal/managed-delivery.ts +0 -125
  854. package/src/internal/review-comments.ts +0 -1363
  855. package/src/internal/shallow-clone.ts +0 -609
  856. /package/dist/docs/assets/{evals.md.CPzDAwoH.lean.js → evals.md.CbMoebP1.lean.js} +0 -0
  857. /package/dist/docs/assets/{guides_github.md.BtPr9GaP.lean.js → guides_github.md.DKYiT9do.lean.js} +0 -0
  858. /package/dist/docs/assets/{reference_agent-config.md.BHeYMgme.lean.js → reference_agent-config.md.CHNpiyp4.lean.js} +0 -0
  859. /package/dist/docs/assets/{reference_cli.md.DfoeyvL0.lean.js → reference_cli.md.CJNc_xYK.lean.js} +0 -0
  860. /package/dist/docs/assets/{reference_playground.md.DnX5nL-B.lean.js → reference_playground.md.4myJPxrf.lean.js} +0 -0
  861. /package/dist/docs/assets/{reference_skills.md.BFW9retM.lean.js → reference_skills.md.l2ezAcaN.lean.js} +0 -0
  862. /package/dist/docs/assets/{reference_tools.md.CvAHsdSp.lean.js → reference_tools.md.aGrn99hP.lean.js} +0 -0
@@ -0,0 +1,34 @@
1
+ import { z } from "zod";
2
+ import { defineTool } from "../../../tools.js";
3
+ import type { ToolDefinition } from "../../../types.js";
4
+ import extension from "../extension.js";
5
+ import { cloudAgentsBackend } from "../lib/backend.js";
6
+ import { assertOwned } from "../lib/fleet.js";
7
+ import { agentRef } from "../lib/inputs.js";
8
+
9
+ const reply: ToolDefinition = defineTool({
10
+ description:
11
+ "Send a follow-up prompt to a cloud agent you launched. It queues behind the current run; pass interrupt to stop that run's current step and deliver it now.",
12
+ effect: "write",
13
+ needsApproval: () => extension.config.needsApproval,
14
+ inputSchema: agentRef.extend({
15
+ prompt: z.string().min(1).describe("The follow-up instruction."),
16
+ interrupt: z
17
+ .boolean()
18
+ .default(false)
19
+ .describe(
20
+ "Deliver now, cancelling the in-flight step, instead of waiting for the current run to finish."
21
+ ),
22
+ }),
23
+ async execute(input, ctx) {
24
+ await assertOwned(ctx, input.agent_id);
25
+ const { runId } = await cloudAgentsBackend().followUp(
26
+ input.agent_id,
27
+ input.prompt,
28
+ input.interrupt
29
+ );
30
+ return { agentId: input.agent_id, runId, queued: !input.interrupt };
31
+ },
32
+ });
33
+
34
+ export default reply;
package/src/extensions.ts CHANGED
@@ -2,8 +2,11 @@
2
2
  * Extensions — agent-shaped trees an agent mounts under a namespace.
3
3
  *
4
4
  * An extension is a directory laid out like `agent/`: `extension.ts`
5
- * declares it, `tools/<name>.ts` and `skills/<name>.md|ts` are its
6
- * contributions, `lib/` holds shared code.
5
+ * declares it; `tools/`, `skills/`, `mcp-connections/`,
6
+ * `host-connections/`, `hooks/`, `channels/`, `schedules/`,
7
+ * `subagents/`, `instructions`, `ab.ts` / `ab/`, `artifacts.ts`,
8
+ * and `sandbox/workspace/` are its contributions. `lib/` holds
9
+ * shared code.
7
10
  *
8
11
  * ```ts
9
12
  * // extension.ts
@@ -12,39 +15,64 @@
12
15
  *
13
16
  * export default defineExtension({
14
17
  * root: import.meta.dirname,
15
- * description: "CRM lookups.",
16
- * config: z.object({ apiKey: z.string() }),
18
+ * description: "Investigate failing CI builds.",
19
+ * config: z.object({ org: z.string(), token: z.string() }),
17
20
  * });
18
21
  *
19
- * // tools/search.ts
22
+ * // tools/failed_jobs.ts
20
23
  * import extension from "../extension.js";
21
24
  *
22
25
  * export default defineTool({
23
- * description: "Search the CRM.",
24
- * execute: (input) => search(extension.config.apiKey, input),
26
+ * description: "List the failed jobs of a build.",
27
+ * execute: (input) => failedJobs(extension.config, input),
25
28
  * });
26
29
  * ```
27
30
  *
28
31
  * A consumer mounts it from `agent/extensions/<ns>.ts`; the filename is the
29
32
  * namespace, and every contribution is exposed as `<ns>__<name>`
30
- * (`crm__search`). `__` is reserved for that: an authored `agent/tools/` or
31
- * `agent/skills/` name may not contain it.
33
+ * (`ci__failed_jobs`). `__` is reserved for that.
32
34
  *
33
35
  * ```ts
34
- * // agent/extensions/crm.ts
35
- * import crm from "@acme/crm";
36
+ * // agent/extensions/ci.ts
37
+ * import ci from "@acme/ci-triage";
36
38
  *
37
- * export default crm({ apiKey: process.env.CRM_API_KEY! });
39
+ * export default ci({ org: "acme", token: process.env.BUILDKITE_TOKEN! });
38
40
  * ```
39
41
  *
40
42
  * To adjust a contribution, mount as a directory instead and overlay the
41
- * slot: `agent/extensions/crm/extension.ts` holds the mount, and
42
- * `agent/extensions/crm/tools/search.ts` replaces `crm__search` — or removes
43
- * it with `export default disableTool()`.
43
+ * slot: `agent/extensions/ci/extension.ts` holds the mount, and
44
+ * `agent/extensions/ci/tools/job_log.ts` replaces `ci__job_log` — or removes
45
+ * it with `export default disableTool()`, `disableSkill()`, or the
46
+ * matching helper for that slot.
47
+ *
48
+ * A Cursor plugin (the marketplace format: `.cursor-plugin/plugin.json`,
49
+ * `skills/`, `commands/`, `agents/`, `mcp.json`) mounts the same way with
50
+ * `cursorPlugin`. Its skills and commands become `<ns>__<name>` skills, its
51
+ * agents `<ns>__<name>` subagents, and its MCP servers `<ns>__<server>`
52
+ * connections. Rules and hooks are not mounted yet.
53
+ *
54
+ * ```ts
55
+ * // agent/extensions/notion.ts
56
+ * import { cursorPlugin } from "@cursor/july/extensions";
57
+ *
58
+ * export default cursorPlugin({
59
+ * path: "plugins/notion-workspace",
60
+ * variables: { NOTION_TOKEN: process.env.NOTION_TOKEN! },
61
+ * });
62
+ * ```
63
+ *
64
+ * A directory mount overlays its MCP servers too:
65
+ * `agent/extensions/notion/mcp-connections/notion.ts` replaces
66
+ * `notion__notion` with your own `defineConnection` (headers, `oauth`,
67
+ * `advertiseTools`), and `export default disableConnection()` drops a server
68
+ * the agent should not carry.
44
69
  */
45
70
 
46
71
  import { brandDefinition } from "./internal/brand.js";
47
72
  import type {
73
+ CursorPluginOptions,
74
+ DisabledConnectionDefinition,
75
+ DisabledDefinition,
48
76
  DisabledToolDefinition,
49
77
  Extension,
50
78
  ExtensionMount,
@@ -52,6 +80,10 @@ import type {
52
80
  } from "./types.js";
53
81
 
54
82
  export type {
83
+ CursorPluginDeclaration,
84
+ CursorPluginOptions,
85
+ DisabledConnectionDefinition,
86
+ DisabledDefinition,
55
87
  DisabledToolDefinition,
56
88
  DiscoveredExtension,
57
89
  Extension,
@@ -96,3 +128,56 @@ export function defineExtension<TConfig = undefined, TInput = TConfig>(
96
128
  export function disableTool(): DisabledToolDefinition {
97
129
  return brandDefinition("disabled-tool", {});
98
130
  }
131
+
132
+ export function disableConnection(): DisabledConnectionDefinition {
133
+ return brandDefinition("disabled-connection", {});
134
+ }
135
+
136
+ /** Remove an extension contribution from a directory overlay. */
137
+ export function disable(): DisabledDefinition {
138
+ return brandDefinition("disabled", {});
139
+ }
140
+
141
+ export function disableSkill(): DisabledDefinition {
142
+ return disable();
143
+ }
144
+
145
+ export function disableHook(): DisabledDefinition {
146
+ return disable();
147
+ }
148
+
149
+ export function disableChannel(): DisabledDefinition {
150
+ return disable();
151
+ }
152
+
153
+ export function disableSchedule(): DisabledDefinition {
154
+ return disable();
155
+ }
156
+
157
+ export function disableSubagent(): DisabledDefinition {
158
+ return disable();
159
+ }
160
+
161
+ export function disableInstructions(): DisabledDefinition {
162
+ return disable();
163
+ }
164
+
165
+ export function disableAB(): DisabledDefinition {
166
+ return disable();
167
+ }
168
+
169
+ export function disableArtifacts(): DisabledDefinition {
170
+ return disable();
171
+ }
172
+
173
+ export function cursorPlugin(options: CursorPluginOptions): ExtensionMount {
174
+ return brandDefinition("extension", {
175
+ extension: {
176
+ root: options.path,
177
+ description: undefined,
178
+ layout: "cursor-plugin",
179
+ variables: options.variables ?? {},
180
+ },
181
+ config: undefined,
182
+ });
183
+ }
@@ -51,10 +51,7 @@ import {
51
51
  type FileSinkEntry,
52
52
  type FileSinkPutResult,
53
53
  } from "../files.js";
54
- import {
55
- resolveDeploymentStoreSourceIdSync,
56
- resolveFrameworkStoreSourceIdSync,
57
- } from "../internal/cursor/hosted-store-secrets.js";
54
+ import { resolveDeploymentStoreSourceIdSync } from "../internal/cursor/hosted-store-secrets.js";
58
55
  import { createAgentStorePresignedUrlValidatorForBackend } from "./agent-store-presigned-url.js";
59
56
 
60
57
  /**
@@ -118,19 +115,6 @@ export function isCursorHostedFilesAvailable(
118
115
  return resolveDeploymentStoreSourceIdSync(env) !== undefined;
119
116
  }
120
117
 
121
- /**
122
- * The framework-level store's source id, or `undefined` when the deployment
123
- * has none (v1, self-hosted, or a v2 deploy predating framework-store
124
- * provisioning). Same detection posture as
125
- * {@link isCursorHostedFilesAvailable}: keyed on the id alone — a missing
126
- * credential must fail loudly at use, not silently deselect the store.
127
- */
128
- export function cursorFrameworkStoreSourceId(
129
- env: NodeJS.ProcessEnv = process.env
130
- ): string | undefined {
131
- return resolveFrameworkStoreSourceIdSync(env);
132
- }
133
-
134
118
  /**
135
119
  * Local `serve`/`run` with a personal `CURSOR_API_KEY` can address
136
120
  * `/v0/agent-serve-files/user`. Hosted deployments have a store source id
package/src/files.ts CHANGED
@@ -23,7 +23,7 @@
23
23
  * know the write did not land.
24
24
  */
25
25
 
26
- import { STORAGE_KEY_ROOT } from "./storage.js";
26
+ import { AGENTSDK_STORAGE_KEY_ROOT, STORAGE_KEY_ROOT } from "./storage.js";
27
27
 
28
28
  // ============================================================================
29
29
  // Sink interface
@@ -156,46 +156,66 @@ export const AGENT_SERVE_USER_STORE_KEY_PREFIX = "agent-serve";
156
156
  /**
157
157
  * Framework-owned keys for state that lives on the deployment's Agent Store
158
158
  * but is not author `host.files` data: artifact rows and payloads, authored
159
- * skills synced for cloud turns, and the cross-session memory journal. Kept
160
- * out of `files/` so author listings never see framework rows.
159
+ * skills and workspace seeds synced for cloud turns, and the cross-session
160
+ * memory journal. Kept out of `files/` so author listings never see
161
+ * framework rows.
161
162
  *
162
163
  * Skills sit at store-root `skills/<name>/…` so exec-daemon's
163
164
  * `--agent-store-skills-dir` walk finds them the same way it finds user-store
164
- * skills. Memory and artifacts stay under {@link STORAGE_KEY_ROOT}.
165
+ * skills. Workspace seeds sit at store-root `workspace/…` so the mount path
166
+ * the first cloud prompt names stays short. Memory and artifacts stay under
167
+ * {@link STORAGE_KEY_ROOT}.
165
168
  */
166
- export const agentStoreKeys = {
167
- artifactRow: (agent: string, id: string): string =>
168
- `${STORAGE_KEY_ROOT}/${agent}/artifacts/rows/${encodeURIComponent(id)}.json`,
169
- artifactRowPrefix: (agent: string): string =>
170
- `${STORAGE_KEY_ROOT}/${agent}/artifacts/rows/`,
171
- artifactContent: (agent: string, id: string): string =>
172
- `${STORAGE_KEY_ROOT}/${agent}/artifacts/content/${encodeURIComponent(id)}`,
173
- skillFile: (
174
- skillName: string,
175
- relPath: string,
176
- skillsPrefix: string = "skills/"
177
- ): string => `${skillsPrefix}${skillName}/${relPath}`,
178
- skillsPrefix: (): string => "skills/",
179
- /** Personal-key cloud agents: namespaced so they cannot collide with the user's own `skills/`. */
180
- userSkillsPrefix: (agent: string): string =>
181
- `${AGENT_SERVE_USER_STORE_KEY_PREFIX}/${agent}/skills/`,
182
- memoryDir: (agent: string): string => `${STORAGE_KEY_ROOT}/${agent}/memory`,
183
- memoryJournal: (agent: string): string =>
184
- `${STORAGE_KEY_ROOT}/${agent}/memory/journal.jsonl`,
185
- memoryJournalRotated: (agent: string, stamp: string): string =>
186
- `${STORAGE_KEY_ROOT}/${agent}/memory/journal-${stamp}.jsonl`,
187
- // SDK conversation mirror (the runner's SQLite store, exported through the
188
- // store APIs): one manifest per SDK agent id plus its content-addressed
189
- // checkpoint blobs. See internal/conversation-mirror.ts.
190
- conversationManifest: (agent: string, sdkAgentId: string): string =>
191
- `${STORAGE_KEY_ROOT}/${agent}/conversations/${encodeURIComponent(sdkAgentId)}/manifest.json`,
192
- conversationBlob: (
193
- agent: string,
194
- sdkAgentId: string,
195
- blobId: string
196
- ): string =>
197
- `${STORAGE_KEY_ROOT}/${agent}/conversations/${encodeURIComponent(sdkAgentId)}/blobs/${encodeURIComponent(blobId)}`,
198
- } as const;
169
+ function createAgentStoreKeys(root: string) {
170
+ return {
171
+ artifactRow: (agent: string, id: string): string =>
172
+ `${root}/${agent}/artifacts/rows/${encodeURIComponent(id)}.json`,
173
+ artifactRowPrefix: (agent: string): string =>
174
+ `${root}/${agent}/artifacts/rows/`,
175
+ artifactContent: (agent: string, id: string): string =>
176
+ `${root}/${agent}/artifacts/content/${encodeURIComponent(id)}`,
177
+ skillFile: (
178
+ skillName: string,
179
+ relPath: string,
180
+ skillsPrefix: string = "skills/"
181
+ ): string => `${skillsPrefix}${skillName}/${relPath}`,
182
+ skillsPrefix: (): string => "skills/",
183
+ /** Personal-key cloud agents: namespaced so they cannot collide with the user's own `skills/`. */
184
+ userSkillsPrefix: (agent: string): string =>
185
+ `${AGENT_SERVE_USER_STORE_KEY_PREFIX}/${agent}/skills/`,
186
+ workspaceFile: (
187
+ relPath: string,
188
+ workspacePrefix: string = "workspace/"
189
+ ): string => `${workspacePrefix}${relPath}`,
190
+ workspacePrefix: (): string => "workspace/",
191
+ /** Personal-key cloud agents: namespaced like {@link userSkillsPrefix}. */
192
+ userWorkspacePrefix: (agent: string): string =>
193
+ `${AGENT_SERVE_USER_STORE_KEY_PREFIX}/${agent}/workspace/`,
194
+ memoryDir: (agent: string): string => `${root}/${agent}/memory`,
195
+ memoryJournal: (agent: string): string =>
196
+ `${root}/${agent}/memory/journal.jsonl`,
197
+ memoryJournalRotated: (agent: string, stamp: string): string =>
198
+ `${root}/${agent}/memory/journal-${stamp}.jsonl`,
199
+ // SDK conversation mirror (the runner's SQLite store, exported through the
200
+ // store APIs): one manifest per SDK agent id plus its content-addressed
201
+ // checkpoint blobs. See internal/conversation-mirror.ts.
202
+ conversationManifest: (agent: string, sdkAgentId: string): string =>
203
+ `${root}/${agent}/conversations/${encodeURIComponent(sdkAgentId)}/manifest.json`,
204
+ conversationBlob: (
205
+ agent: string,
206
+ sdkAgentId: string,
207
+ blobId: string
208
+ ): string =>
209
+ `${root}/${agent}/conversations/${encodeURIComponent(sdkAgentId)}/blobs/${encodeURIComponent(blobId)}`,
210
+ } as const;
211
+ }
212
+
213
+ export type AgentStoreKeys = ReturnType<typeof createAgentStoreKeys>;
214
+ export const agentStoreKeys: AgentStoreKeys =
215
+ createAgentStoreKeys(STORAGE_KEY_ROOT);
216
+ export const agentSdkAgentStoreKeys: AgentStoreKeys = createAgentStoreKeys(
217
+ AGENTSDK_STORAGE_KEY_ROOT
218
+ );
199
219
 
200
220
  /**
201
221
  * Deployment store FUSE mount on cloud-runtime VMs. Mirrors
@@ -204,6 +224,13 @@ export const agentStoreKeys = {
204
224
  */
205
225
  export const DEPLOYMENT_STORE_MOUNT_PATH = "/cursor/stores/deployment";
206
226
 
227
+ /**
228
+ * USER store FUSE mount on personal-key cloud-runtime VMs. Mirrors
229
+ * `AGENT_STORE_MOUNT_ROOT` / `AGENT_STORE_USER_MOUNT_NAME` in
230
+ * `@anysphere/constants`.
231
+ */
232
+ export const USER_STORE_MOUNT_PATH = "/cursor/stores/user";
233
+
207
234
  /** Errors raised by the file surface. Thrown by sinks and by the framework. */
208
235
  export class FileConflictError extends Error {
209
236
  constructor(
package/src/index.ts CHANGED
@@ -51,6 +51,26 @@ export {
51
51
  publicEndpoint,
52
52
  } from "./channels.js";
53
53
  export { defineConnection } from "./connections.js";
54
+ export {
55
+ cursorPlugin,
56
+ defineExtension,
57
+ disable,
58
+ disableAB,
59
+ disableArtifacts,
60
+ disableChannel,
61
+ disableConnection,
62
+ disableHook,
63
+ disableInstructions,
64
+ disableSchedule,
65
+ disableSkill,
66
+ disableSubagent,
67
+ disableTool,
68
+ } from "./extensions.js";
69
+ export { defineHook } from "./hooks.js";
70
+ export {
71
+ InvalidAsOfError,
72
+ VacuousTimeArgsError,
73
+ } from "./internal/as-of.js";
54
74
  export type {
55
75
  ContinuationBuiltin,
56
76
  ContinuationClaim,
@@ -59,31 +79,7 @@ export type {
59
79
  ConversationType,
60
80
  MailboxContinuation,
61
81
  ParsedContinuation,
62
- } from "./continuation.js";
63
- export {
64
- BUILTINS,
65
- bindMailboxContinuationSend,
66
- CONTINUATION_SELECTORS,
67
- continuationSource,
68
- defaultContinuationSelector,
69
- extractContinuation,
70
- formatConversationKey,
71
- handshakeContinuation,
72
- isContinuationSelector,
73
- mintClaim,
74
- normalizeIdentity,
75
- parseContinuationSelector,
76
- resolveContinuation,
77
- resolveV2Key,
78
- stampMailboxContinuation,
79
- V2EngineError,
80
- } from "./continuation.js";
81
- export { defineExtension, disableTool } from "./extensions.js";
82
- export { defineHook } from "./hooks.js";
83
- export {
84
- InvalidAsOfError,
85
- VacuousTimeArgsError,
86
- } from "./internal/as-of.js";
82
+ } from "./internal/continuation-identity.js";
87
83
  export type { LoadAgentProjectOptions } from "./internal/discovery.js";
88
84
  export {
89
85
  formatDiagnostics,
@@ -139,7 +135,7 @@ export type {
139
135
  OtelDefinition,
140
136
  OtelExporterConfig,
141
137
  } from "./otel.js";
142
- export { defineOtel } from "./otel.js";
138
+ export { defineOtel, resolveOtelDefinition } from "./otel.js";
143
139
  export type { PromptTag } from "./prompt.js";
144
140
  export { prompt } from "./prompt.js";
145
141
  export type {
@@ -155,6 +151,7 @@ export type {
155
151
  ReminderTarget,
156
152
  ReminderUntilContext,
157
153
  } from "./reminders.js";
154
+ export { defineResult } from "./result.js";
158
155
  export { defineSchedule } from "./schedules.js";
159
156
  export { defineSkill } from "./skills.js";
160
157
  export type {
@@ -167,15 +164,19 @@ export type {
167
164
  StorageDefinition,
168
165
  StorageEntry,
169
166
  StorageEvalsTable,
167
+ StorageKeys,
170
168
  StoragePolicy,
171
169
  StorageRestorePolicy,
172
170
  } from "./storage.js";
173
171
  export {
172
+ AGENTSDK_STORAGE_KEY_ROOT,
173
+ agentSdkStorageKeys,
174
174
  defineStorage,
175
175
  isDurableSessionRecordKey,
176
176
  parseDurableSessionRecord,
177
177
  STORAGE_KEY_ROOT,
178
178
  storageKeys,
179
+ storageKeysForArchitecture,
179
180
  summarizeDurableSessionRecord,
180
181
  } from "./storage.js";
181
182
  export { defineTool } from "./tools.js";
@@ -89,9 +89,6 @@ export async function buildABSnapshot(
89
89
  input: BuildABSnapshotInput
90
90
  ): Promise<ABSnapshot> {
91
91
  const experiments = input.experiments;
92
- const experimentByName = new Map(
93
- experiments.map((experiment) => [experiment.name, experiment])
94
- );
95
92
 
96
93
  const armTotals = new Map<
97
94
  string,
@@ -48,6 +48,7 @@ import {
48
48
  type ToolEffect,
49
49
  } from "../types.js";
50
50
  import { brandDefinition } from "./brand.js";
51
+ import { describeError } from "./describe-error.js";
51
52
  import type { HostMcpOneOff } from "./mcp-host.js";
52
53
  import {
53
54
  sanitizeMcpToolName,
@@ -379,7 +380,3 @@ export function formatMcpToolResult(
379
380
  ? JSON.stringify(result.structuredContent, null, 2)
380
381
  : "(empty result)";
381
382
  }
382
-
383
- function describeError(error: unknown): string {
384
- return error instanceof Error ? error.message : String(error);
385
- }
@@ -4,20 +4,12 @@
4
4
  * thread — keep this module dependency-free).
5
5
  *
6
6
  * Authored files import the framework by bare specifier. On compiled runs the
7
- * CLI pins every public package name onto the running `dist/` entries via
8
- * `directAliases` so channel-option WeakMaps stay single-copy:
9
- *
10
- * - `@anysphere/agent-serve[/subpath]` (historical monorepo name; not on npm)
11
- * - `@cursor/july[/subpath]` (published name)
12
- * - `@cursor/agentkit[/subpath]` (future public name)
13
- *
14
- * Preferring a project's own `node_modules` (or tsx tsconfig paths that map
15
- * onto this package's `src/`) would load a second module instance and break
7
+ * CLI pins `@cursor/july[/subpath]` onto its own entry files via
8
+ * `directAliases` so channel-option WeakMaps stay single-copy. Preferring a
9
+ * project's own `node_modules` (or tsx tsconfig paths that map onto this
10
+ * package's `src/`) would load a second module instance and break
16
11
  * `getGitHubChannelOptions` / continuation stamping / hosted-delivery.
17
12
  *
18
- * `fallbackAliases` remains for tests and any future soft remap; production
19
- * registration leaves it empty.
20
- *
21
13
  * A separate case is first-party factory agents that relative-import this
22
14
  * package's `src/` from a monorepo checkout. Hosted engines `npm install`
23
15
  * only the agent directory, so files under `packages/agent-serve/src` have
@@ -28,12 +20,10 @@
28
20
  // Null-prototype copies so specifiers like "constructor" or "__proto__"
29
21
  // can never resolve to inherited Object.prototype members.
30
22
  let directAliases = toNullProtoMap({});
31
- let fallbackAliases = toNullProtoMap({});
32
23
  let sourceTreeFallbackParentURL: string | undefined;
33
24
 
34
25
  export interface AuthoredAliasHookData {
35
26
  directAliases: Record<string, string>;
36
- fallbackAliases: Record<string, string>;
37
27
  /**
38
28
  * `file:` URL of the running `@cursor/july` package.json. Bare imports
39
29
  * from monorepo `packages/agent-serve/` source retry against this parent
@@ -50,7 +40,6 @@ function toNullProtoMap(
50
40
 
51
41
  export function initialize(data: AuthoredAliasHookData): void {
52
42
  directAliases = toNullProtoMap(data.directAliases);
53
- fallbackAliases = toNullProtoMap(data.fallbackAliases);
54
43
  const parent = data.sourceTreeFallbackParentURL;
55
44
  sourceTreeFallbackParentURL =
56
45
  typeof parent === "string" && parent !== "" ? parent : undefined;
@@ -76,12 +65,6 @@ export function resolve(
76
65
  if (direct !== undefined) {
77
66
  return { url: direct, shortCircuit: true };
78
67
  }
79
- const fallback = fallbackAliases[specifier];
80
- if (fallback !== undefined) {
81
- return Promise.resolve()
82
- .then(() => nextResolve(specifier, context))
83
- .catch(() => ({ url: fallback, shortCircuit: true }));
84
- }
85
68
  if (
86
69
  sourceTreeFallbackParentURL !== undefined &&
87
70
  isBarePackageSpecifier(specifier) &&
@@ -8,9 +8,8 @@
8
8
  * ESM loader itself on startup.
9
9
  *
10
10
  * On compiled runs it additionally registers alias hooks so authored bare
11
- * imports of the framework resolve against the running package's `dist/` —
12
- * `@anysphere/agent-serve[/x]`, `@cursor/july[/x]`, and `@cursor/agentkit[/x]`
13
- * all short-circuit to the same files the CLI loaded. Channel option WeakMaps
11
+ * imports of the framework (`@cursor/july[/x]`) short-circuit to the same
12
+ * files the CLI loaded. Channel option WeakMaps
14
13
  * (`getGitHubChannelOptions`, …) require that identity; letting tsx path-map
15
14
  * or a second install win loads a duplicate module and breaks continuation /
16
15
  * hosted-delivery lookups. Bare npm deps from monorepo `packages/agent-serve/`
@@ -25,19 +24,17 @@ import { join } from "node:path";
25
24
  import { pathToFileURL } from "node:url";
26
25
  import type { AuthoredAliasHookData } from "./authored-alias-hooks.js";
27
26
  import {
28
- AGENTKIT_PACKAGE_NAME,
29
- AUTHORING_ENTRY_FILES,
30
27
  CLI_COMMAND_NAME,
28
+ frameworkAliases,
31
29
  isCompiledDistribution,
32
- LEGACY_PACKAGE_NAME,
33
- PACKAGE_NAME,
34
30
  packageRootDir,
35
31
  } from "./distribution.js";
36
32
 
37
33
  /**
38
34
  * Cross-copy markers: a user project with its own `@cursor/july` install
39
35
  * can load a second copy of this module in the same process; tsx and the
40
- * alias hooks must only be registered once.
36
+ * alias hooks must only be registered once. The key strings are shared with
37
+ * already-published copies; renaming them would double-register.
41
38
  */
42
39
  const TSX_REGISTERED_KEY = Symbol.for("cursor.agentkit.tsxRegistered");
43
40
  const ALIASES_REGISTERED_KEY = Symbol.for("cursor.agentkit.aliasesRegistered");
@@ -167,23 +164,9 @@ function registerFrameworkAliases(): void {
167
164
  if (markers[ALIASES_REGISTERED_KEY] === true) {
168
165
  return;
169
166
  }
170
- const distDir = join(packageRootDir(), "dist");
171
- const directAliases: Record<string, string> = {};
172
- for (const [subpath, file] of AUTHORING_ENTRY_FILES) {
173
- const target = pathToFileURL(join(distDir, file)).href;
174
- const suffix = subpath === "" ? "" : `/${subpath}`;
175
- // Always pin framework imports to this process's dist. Channel factories
176
- // stash options in module-local WeakMaps; a second copy (tsx tsconfig
177
- // paths → src/, or a mismatched node_modules install) makes
178
- // getGitHubChannelOptions miss and hosted-delivery return 422.
179
- directAliases[`${LEGACY_PACKAGE_NAME}${suffix}`] = target;
180
- directAliases[`${PACKAGE_NAME}${suffix}`] = target;
181
- directAliases[`${AGENTKIT_PACKAGE_NAME}${suffix}`] = target;
182
- }
183
167
  const hooksUrl = new URL("./authored-alias-hooks.js", import.meta.url);
184
168
  const data: AuthoredAliasHookData = {
185
- directAliases,
186
- fallbackAliases: {},
169
+ directAliases: frameworkAliases(),
187
170
  // Hosted factory agents relative-import this package's src/ from a
188
171
  // monorepo checkout while npm install ran only in the agent directory.
189
172
  // Bare specifiers from that tree retry against this package.json.