@cursor/july 0.1.102 → 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 (715) hide show
  1. package/AGENTS.md +34 -32
  2. package/README.md +10 -12
  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/eval-directive.d.ts.map +1 -1
  113. package/dist/channels/slack/eval-directive.js +1 -7
  114. package/dist/channels/slack/init.d.ts.map +1 -1
  115. package/dist/channels/slack/init.js +3 -3
  116. package/dist/channels/slack/setup.d.ts +1 -1
  117. package/dist/channels/slack/setup.d.ts.map +1 -1
  118. package/dist/channels/slack/setup.js +6 -13
  119. package/dist/channels/slack/types.d.ts +1 -1
  120. package/dist/channels/slack/types.d.ts.map +1 -1
  121. package/dist/channels.d.ts +1 -1
  122. package/dist/channels.d.ts.map +1 -1
  123. package/dist/client.d.ts +1 -1
  124. package/dist/client.js +1 -1
  125. package/dist/connections.d.ts +1 -1
  126. package/dist/connections.js +1 -1
  127. package/dist/docs/404.html +2 -2
  128. package/dist/docs/ab.html +4 -4
  129. package/dist/docs/assets/{app.CLA03RCz.js → app.DW9pXkpL.js} +1 -1
  130. package/dist/docs/assets/chunks/@localSearchIndexroot.nrl1ifBq.js +1 -0
  131. package/dist/docs/assets/chunks/{VPLocalSearchBox.ifxv-cJV.js → VPLocalSearchBox.CdEIUwDg.js} +1 -1
  132. package/dist/docs/assets/chunks/{theme.DWCwM6p-.js → theme.YZMHgPgg.js} +2 -2
  133. package/dist/docs/assets/concepts.md.DgEcZOfT.js +1 -0
  134. package/dist/docs/assets/{concepts.md.rPzW2HZN.lean.js → concepts.md.DgEcZOfT.lean.js} +1 -1
  135. package/dist/docs/assets/{evals.md.CPzDAwoH.js → evals.md.CbMoebP1.js} +1 -1
  136. package/dist/docs/assets/guides_cloud-agents.md.DS8RIjwx.js +9 -0
  137. package/dist/docs/assets/{guides_github.md.BtPr9GaP.js → guides_github.md.DKYiT9do.js} +1 -1
  138. package/dist/docs/assets/{guides_opentelemetry.md.BVTXDCRg.js → guides_opentelemetry.md.COh9jFVg.js} +7 -8
  139. package/dist/docs/assets/{guides_opentelemetry.md.BVTXDCRg.lean.js → guides_opentelemetry.md.COh9jFVg.lean.js} +1 -1
  140. package/dist/docs/assets/{index.md.Kiht7ell.js → index.md.D75GWhPl.js} +1 -1
  141. package/dist/docs/assets/{reference_agent-config.md.BHeYMgme.js → reference_agent-config.md.CHNpiyp4.js} +3 -3
  142. package/dist/docs/assets/{reference_channels.md.Cd2f2iyV.js → reference_channels.md.Dz8Cnudp.js} +2 -2
  143. package/dist/docs/assets/{reference_channels.md.Cd2f2iyV.lean.js → reference_channels.md.Dz8Cnudp.lean.js} +1 -1
  144. package/dist/docs/assets/{reference_cli.md.DfoeyvL0.js → reference_cli.md.CJNc_xYK.js} +1 -1
  145. package/dist/docs/assets/{reference_extensions.md.9WQMZe1l.js → reference_extensions.md.DykHW3qL.js} +11 -5
  146. package/dist/docs/assets/reference_extensions.md.DykHW3qL.lean.js +1 -0
  147. package/dist/docs/assets/reference_hooks.md.Ddt5DdgJ.js +73 -0
  148. package/dist/docs/assets/{reference_hooks.md.a8BJxMR5.lean.js → reference_hooks.md.Ddt5DdgJ.lean.js} +1 -1
  149. package/dist/docs/assets/{reference_playground.md.DnX5nL-B.js → reference_playground.md.4myJPxrf.js} +1 -1
  150. package/dist/docs/assets/{reference_project-layout.md.CA6QP6Lw.js → reference_project-layout.md.DuBu9a96.js} +2 -2
  151. package/dist/docs/assets/reference_result.md.BK5SxDrf.js +19 -0
  152. package/dist/docs/assets/reference_result.md.BK5SxDrf.lean.js +1 -0
  153. package/dist/docs/assets/{reference_sessions.md.NxFP_CAC.js → reference_sessions.md.CueyOHSL.js} +1 -1
  154. package/dist/docs/assets/{reference_sessions.md.NxFP_CAC.lean.js → reference_sessions.md.CueyOHSL.lean.js} +1 -1
  155. package/dist/docs/assets/{reference_tools.md.B1up2r9W.js → reference_tools.md.aGrn99hP.js} +1 -1
  156. package/dist/docs/assets/skills_framework-map.md.haibFyoB.js +1 -0
  157. package/dist/docs/assets/{skills_otel.md.CgiZryR3.js → skills_otel.md.CqhobH3B.js} +3 -3
  158. package/dist/docs/assets/{skills_otel.md.CgiZryR3.lean.js → skills_otel.md.CqhobH3B.lean.js} +1 -1
  159. package/dist/docs/assets/{templates_pr-autofixer.md.x5zl6-GT.js → templates_pr-autofixer.md.Bds_XWcV.js} +2 -2
  160. package/dist/docs/assets/{templates_pr-autofixer.md.x5zl6-GT.lean.js → templates_pr-autofixer.md.Bds_XWcV.lean.js} +1 -1
  161. package/dist/docs/building-with-agents.html +4 -4
  162. package/dist/docs/concepts.html +5 -5
  163. package/dist/docs/concepts.md +2 -4
  164. package/dist/docs/deployment.html +4 -4
  165. package/dist/docs/design/runtime-abstraction.md +2 -3
  166. package/dist/docs/evals.html +6 -6
  167. package/dist/docs/evals.md +9 -7
  168. package/dist/docs/guides/agent-to-agent.html +4 -4
  169. package/dist/docs/guides/cloud-agents.html +6 -6
  170. package/dist/docs/guides/cloud-agents.md +4 -6
  171. package/dist/docs/guides/convert-automation.html +4 -4
  172. package/dist/docs/guides/github.html +6 -6
  173. package/dist/docs/guides/github.md +0 -1
  174. package/dist/docs/guides/human-in-the-loop.html +4 -4
  175. package/dist/docs/guides/mcp-oauth.html +5 -5
  176. package/dist/docs/guides/opentelemetry.html +10 -11
  177. package/dist/docs/guides/opentelemetry.md +41 -17
  178. package/dist/docs/guides/slack.html +4 -4
  179. package/dist/docs/guides/webhooks.html +4 -4
  180. package/dist/docs/hashmap.json +1 -1
  181. package/dist/docs/hillclimbing.html +4 -4
  182. package/dist/docs/index.html +6 -6
  183. package/dist/docs/index.md +2 -2
  184. package/dist/docs/llms-full.txt +501 -262
  185. package/dist/docs/llms.txt +2 -2
  186. package/dist/docs/quickstart.html +4 -4
  187. package/dist/docs/reference/agent-config.html +8 -8
  188. package/dist/docs/reference/agent-config.md +6 -10
  189. package/dist/docs/reference/artifacts.html +5 -5
  190. package/dist/docs/reference/channels.html +6 -6
  191. package/dist/docs/reference/channels.md +18 -8
  192. package/dist/docs/reference/cli.html +5 -5
  193. package/dist/docs/reference/cli.md +3 -4
  194. package/dist/docs/reference/connections.html +4 -4
  195. package/dist/docs/reference/extensions.html +16 -10
  196. package/dist/docs/reference/extensions.md +86 -22
  197. package/dist/docs/reference/hooks.html +69 -10
  198. package/dist/docs/reference/hooks.md +215 -46
  199. package/dist/docs/reference/http-api.html +4 -4
  200. package/dist/docs/reference/instructions.html +4 -4
  201. package/dist/docs/reference/playground.html +5 -5
  202. package/dist/docs/reference/playground.md +3 -0
  203. package/dist/docs/reference/project-layout.html +6 -6
  204. package/dist/docs/reference/project-layout.md +2 -1
  205. package/dist/docs/reference/prompt.html +4 -4
  206. package/dist/docs/reference/result.html +45 -0
  207. package/dist/docs/reference/result.md +89 -0
  208. package/dist/docs/reference/schedules.html +4 -4
  209. package/dist/docs/reference/sessions.html +5 -5
  210. package/dist/docs/reference/sessions.md +3 -1
  211. package/dist/docs/reference/skills.html +4 -4
  212. package/dist/docs/reference/subagents.html +4 -4
  213. package/dist/docs/reference/tools.html +5 -5
  214. package/dist/docs/reference/tools.md +1 -2
  215. package/dist/docs/scaffolding-agents.html +4 -4
  216. package/dist/docs/skills/ab.html +4 -4
  217. package/dist/docs/skills/create-agent.html +4 -4
  218. package/dist/docs/skills/debug.html +4 -4
  219. package/dist/docs/skills/evals.html +4 -4
  220. package/dist/docs/skills/framework-map.html +5 -5
  221. package/dist/docs/skills/framework-map.md +3 -1
  222. package/dist/docs/skills/github.html +4 -4
  223. package/dist/docs/skills/hillclimb.html +4 -4
  224. package/dist/docs/skills/index.html +4 -4
  225. package/dist/docs/skills/mcp-auth.html +4 -4
  226. package/dist/docs/skills/otel.html +7 -7
  227. package/dist/docs/skills/otel.md +8 -3
  228. package/dist/docs/skills/setup-slack.html +4 -4
  229. package/dist/docs/storage.html +4 -4
  230. package/dist/docs/templates/agentic-owners.html +4 -4
  231. package/dist/docs/templates/agents-md.html +4 -4
  232. package/dist/docs/templates/code-wiki.html +4 -4
  233. package/dist/docs/templates/demo.html +4 -4
  234. package/dist/docs/templates/pr-autofixer.html +6 -6
  235. package/dist/docs/templates/pr-autofixer.md +0 -3
  236. package/dist/docs/templates/security-help.html +4 -4
  237. package/dist/docs/templates/security-reviewer.html +4 -4
  238. package/dist/docs/templates/triage.html +4 -4
  239. package/dist/docs/troubleshooting.html +4 -4
  240. package/dist/evals.d.ts +1 -1
  241. package/dist/evals.d.ts.map +1 -1
  242. package/dist/extensions.d.ts +20 -7
  243. package/dist/extensions.d.ts.map +1 -1
  244. package/dist/extensions.js +36 -5
  245. package/dist/files.d.ts +16 -3
  246. package/dist/files.d.ts.map +1 -1
  247. package/dist/files.js +16 -3
  248. package/dist/index.d.ts +4 -4
  249. package/dist/index.d.ts.map +1 -1
  250. package/dist/index.js +3 -3
  251. package/dist/internal/ab-snapshot.d.ts.map +1 -1
  252. package/dist/internal/ab-snapshot.js +0 -1
  253. package/dist/internal/advertise-tools.d.ts.map +1 -1
  254. package/dist/internal/advertise-tools.js +1 -3
  255. package/dist/internal/authored-alias-hooks.d.ts +4 -13
  256. package/dist/internal/authored-alias-hooks.d.ts.map +1 -1
  257. package/dist/internal/authored-alias-hooks.js +4 -20
  258. package/dist/internal/authored-loaders.d.ts +2 -3
  259. package/dist/internal/authored-loaders.d.ts.map +1 -1
  260. package/dist/internal/authored-loaders.js +6 -20
  261. package/dist/internal/channel-dispatch.d.ts +43 -0
  262. package/dist/internal/channel-dispatch.d.ts.map +1 -0
  263. package/dist/internal/channel-dispatch.js +77 -0
  264. package/dist/internal/chat-client.d.ts +1 -1
  265. package/dist/internal/chat-client.js +1 -1
  266. package/dist/internal/cli-ax.d.ts +5 -5
  267. package/dist/internal/cli-ax.d.ts.map +1 -1
  268. package/dist/internal/cli-ax.js +5 -5
  269. package/dist/internal/cli-bitbucket.d.ts +33 -0
  270. package/dist/internal/cli-bitbucket.d.ts.map +1 -0
  271. package/dist/internal/cli-bitbucket.js +359 -0
  272. package/dist/internal/cli-convert-automation.d.ts +1 -1
  273. package/dist/internal/cli-convert-automation.js +2 -2
  274. package/dist/internal/cli-cursor.d.ts +1 -1
  275. package/dist/internal/cli-cursor.d.ts.map +1 -1
  276. package/dist/internal/cli-cursor.js +2 -4
  277. package/dist/internal/cli-deploy.d.ts.map +1 -1
  278. package/dist/internal/cli-deploy.js +2 -6
  279. package/dist/internal/cli-github.d.ts +1 -1
  280. package/dist/internal/cli-github.js +3 -3
  281. package/dist/internal/cli-gitlab.d.ts +37 -0
  282. package/dist/internal/cli-gitlab.d.ts.map +1 -0
  283. package/dist/internal/cli-gitlab.js +380 -0
  284. package/dist/internal/cli-mcp.d.ts.map +1 -1
  285. package/dist/internal/cli-mcp.js +2 -6
  286. package/dist/internal/cli-slack.d.ts +1 -1
  287. package/dist/internal/cli-slack.d.ts.map +1 -1
  288. package/dist/internal/cli-slack.js +2 -4
  289. package/dist/internal/continuation-channel.d.ts +14 -0
  290. package/dist/internal/continuation-channel.d.ts.map +1 -1
  291. package/dist/internal/continuation-channel.js +56 -3
  292. package/dist/internal/continuation-identity.d.ts +14 -15
  293. package/dist/internal/continuation-identity.d.ts.map +1 -1
  294. package/dist/internal/continuation-identity.js +182 -7
  295. package/dist/internal/conversation-mirror.d.ts.map +1 -1
  296. package/dist/internal/conversation-mirror.js +4 -3
  297. package/dist/internal/convert-automation/types.d.ts +1 -1
  298. package/dist/internal/convert-automation/types.js +1 -1
  299. package/dist/internal/cursor/account-mcp.d.ts.map +1 -1
  300. package/dist/internal/cursor/account-mcp.js +1 -3
  301. package/dist/internal/cursor/backend-client.d.ts +5 -4
  302. package/dist/internal/cursor/backend-client.d.ts.map +1 -1
  303. package/dist/internal/cursor/backend-client.js +5 -6
  304. package/dist/internal/cursor/bound-secret-file.d.ts +56 -0
  305. package/dist/internal/cursor/bound-secret-file.d.ts.map +1 -0
  306. package/dist/internal/cursor/bound-secret-file.js +88 -0
  307. package/dist/internal/cursor/credentials.d.ts +39 -5
  308. package/dist/internal/cursor/credentials.d.ts.map +1 -1
  309. package/dist/internal/cursor/credentials.js +58 -8
  310. package/dist/internal/cursor/hosted-bound-secrets.d.ts +41 -0
  311. package/dist/internal/cursor/hosted-bound-secrets.d.ts.map +1 -0
  312. package/dist/internal/cursor/hosted-bound-secrets.js +54 -0
  313. package/dist/internal/cursor/hosted-deployment-secrets.d.ts +19 -5
  314. package/dist/internal/cursor/hosted-deployment-secrets.d.ts.map +1 -1
  315. package/dist/internal/cursor/hosted-deployment-secrets.js +29 -9
  316. package/dist/internal/cursor/hosted-store-secrets.d.ts +1 -1
  317. package/dist/internal/cursor/hosted-store-secrets.js +1 -1
  318. package/dist/internal/cursor-account-mcp-auth.d.ts.map +1 -1
  319. package/dist/internal/cursor-account-mcp-auth.js +2 -4
  320. package/dist/internal/cursor-deployment-relay.d.ts +6 -2
  321. package/dist/internal/cursor-deployment-relay.d.ts.map +1 -1
  322. package/dist/internal/cursor-deployment-relay.js +13 -9
  323. package/dist/internal/deploy-manifest.d.ts +1 -1
  324. package/dist/internal/deploy-manifest.d.ts.map +1 -1
  325. package/dist/internal/deploy-manifest.js +1 -1
  326. package/dist/internal/discovery/ab.d.ts +1 -1
  327. package/dist/internal/discovery/ab.d.ts.map +1 -1
  328. package/dist/internal/discovery/ab.js +21 -9
  329. package/dist/internal/discovery/agent.d.ts +6 -1
  330. package/dist/internal/discovery/agent.d.ts.map +1 -1
  331. package/dist/internal/discovery/agent.js +65 -116
  332. package/dist/internal/discovery/channels.d.ts +1 -1
  333. package/dist/internal/discovery/channels.d.ts.map +1 -1
  334. package/dist/internal/discovery/channels.js +14 -14
  335. package/dist/internal/discovery/connections.d.ts +1 -5
  336. package/dist/internal/discovery/connections.d.ts.map +1 -1
  337. package/dist/internal/discovery/connections.js +30 -44
  338. package/dist/internal/discovery/cursor-plugin.d.ts.map +1 -1
  339. package/dist/internal/discovery/cursor-plugin.js +1 -3
  340. package/dist/internal/discovery/extension-overlay.d.ts +32 -0
  341. package/dist/internal/discovery/extension-overlay.d.ts.map +1 -0
  342. package/dist/internal/discovery/extension-overlay.js +191 -0
  343. package/dist/internal/discovery/extensions.d.ts +11 -2
  344. package/dist/internal/discovery/extensions.d.ts.map +1 -1
  345. package/dist/internal/discovery/extensions.js +211 -74
  346. package/dist/internal/discovery/hooks.d.ts +1 -1
  347. package/dist/internal/discovery/hooks.d.ts.map +1 -1
  348. package/dist/internal/discovery/hooks.js +15 -2
  349. package/dist/internal/discovery/info.d.ts.map +1 -1
  350. package/dist/internal/discovery/info.js +7 -1
  351. package/dist/internal/discovery/modules.d.ts.map +1 -1
  352. package/dist/internal/discovery/modules.js +8 -2
  353. package/dist/internal/discovery/names.d.ts +1 -1
  354. package/dist/internal/discovery/names.d.ts.map +1 -1
  355. package/dist/internal/discovery/names.js +1 -0
  356. package/dist/internal/discovery/project.d.ts +0 -2
  357. package/dist/internal/discovery/project.d.ts.map +1 -1
  358. package/dist/internal/discovery/project.js +64 -10
  359. package/dist/internal/discovery/runtime.d.ts.map +1 -1
  360. package/dist/internal/discovery/runtime.js +1 -2
  361. package/dist/internal/discovery/schedules.d.ts +1 -1
  362. package/dist/internal/discovery/schedules.d.ts.map +1 -1
  363. package/dist/internal/discovery/schedules.js +23 -2
  364. package/dist/internal/discovery/services.d.ts +6 -2
  365. package/dist/internal/discovery/services.d.ts.map +1 -1
  366. package/dist/internal/discovery/services.js +31 -1
  367. package/dist/internal/discovery/skills.d.ts +1 -6
  368. package/dist/internal/discovery/skills.d.ts.map +1 -1
  369. package/dist/internal/discovery/skills.js +8 -3
  370. package/dist/internal/discovery/subagent.d.ts +3 -0
  371. package/dist/internal/discovery/subagent.d.ts.map +1 -1
  372. package/dist/internal/discovery/subagent.js +109 -0
  373. package/dist/internal/discovery.d.ts +1 -2
  374. package/dist/internal/discovery.d.ts.map +1 -1
  375. package/dist/internal/discovery.js +1 -2
  376. package/dist/internal/distribution.d.ts +10 -27
  377. package/dist/internal/distribution.d.ts.map +1 -1
  378. package/dist/internal/distribution.js +25 -73
  379. package/dist/internal/docs-site.js +1 -1
  380. package/dist/internal/eval-run-store.d.ts +0 -1
  381. package/dist/internal/eval-run-store.d.ts.map +1 -1
  382. package/dist/internal/eval-runner.d.ts.map +1 -1
  383. package/dist/internal/framework-file-storage.d.ts +8 -0
  384. package/dist/internal/framework-file-storage.d.ts.map +1 -1
  385. package/dist/internal/framework-file-storage.js +8 -8
  386. package/dist/internal/github-fanout.d.ts +1 -1
  387. package/dist/internal/github-fanout.js +1 -1
  388. package/dist/internal/guest-network.d.ts +101 -0
  389. package/dist/internal/guest-network.d.ts.map +1 -0
  390. package/dist/internal/guest-network.js +304 -0
  391. package/dist/internal/host-otel.d.ts +3 -3
  392. package/dist/internal/host-otel.d.ts.map +1 -1
  393. package/dist/internal/host-otel.js +8 -4
  394. package/dist/internal/hosted-admission-adapter.d.ts +8 -7
  395. package/dist/internal/hosted-admission-adapter.d.ts.map +1 -1
  396. package/dist/internal/hosted-delivery-protocol.d.ts +6 -0
  397. package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
  398. package/dist/internal/hosted-delivery-protocol.js +18 -5
  399. package/dist/internal/hosted-delivery.d.ts +18 -0
  400. package/dist/internal/hosted-delivery.d.ts.map +1 -1
  401. package/dist/internal/hosted-delivery.js +248 -118
  402. package/dist/internal/http-channel.d.ts.map +1 -1
  403. package/dist/internal/http-channel.js +1 -3
  404. package/dist/internal/init-interview.d.ts.map +1 -1
  405. package/dist/internal/init-interview.js +1 -3
  406. package/dist/internal/init-project.d.ts +2 -2
  407. package/dist/internal/init-project.js +2 -2
  408. package/dist/internal/inline-stdio-define-stub.d.ts +1 -1
  409. package/dist/internal/inline-stdio-define-stub.d.ts.map +1 -1
  410. package/dist/internal/inline-stdio-define-stub.js +1 -1
  411. package/dist/internal/is-record.d.ts +2 -0
  412. package/dist/internal/is-record.d.ts.map +1 -0
  413. package/dist/internal/is-record.js +3 -0
  414. package/dist/internal/json-schema.d.ts.map +1 -1
  415. package/dist/internal/json-schema.js +18 -10
  416. package/dist/internal/local-control-plane.d.ts +1 -2
  417. package/dist/internal/local-control-plane.d.ts.map +1 -1
  418. package/dist/internal/local-control-plane.js +3 -20
  419. package/dist/internal/mcp-endpoint.d.ts.map +1 -1
  420. package/dist/internal/mcp-endpoint.js +1 -3
  421. package/dist/internal/otel/collector.d.ts +12 -3
  422. package/dist/internal/otel/collector.d.ts.map +1 -1
  423. package/dist/internal/otel/collector.js +77 -125
  424. package/dist/internal/otel/config.d.ts +0 -2
  425. package/dist/internal/otel/config.d.ts.map +1 -1
  426. package/dist/internal/otel/config.js +17 -20
  427. package/dist/internal/otel/http.d.ts +2 -0
  428. package/dist/internal/otel/http.d.ts.map +1 -1
  429. package/dist/internal/otel/http.js +7 -1
  430. package/dist/internal/otel/mcp.d.ts.map +1 -1
  431. package/dist/internal/otel/mcp.js +3 -16
  432. package/dist/internal/otel/runtime.d.ts +26 -1
  433. package/dist/internal/otel/runtime.d.ts.map +1 -1
  434. package/dist/internal/otel/runtime.js +164 -15
  435. package/dist/internal/package-inline-stdio.d.ts.map +1 -1
  436. package/dist/internal/package-inline-stdio.js +3 -11
  437. package/dist/internal/playground/toolchain.d.ts +1 -1
  438. package/dist/internal/playground/toolchain.d.ts.map +1 -1
  439. package/dist/internal/playground/toolchain.js +1 -1
  440. package/dist/internal/request-error-status.d.ts +12 -0
  441. package/dist/internal/request-error-status.d.ts.map +1 -0
  442. package/dist/internal/request-error-status.js +52 -0
  443. package/dist/internal/resolve-prod-target.d.ts +1 -1
  444. package/dist/internal/resolve-prod-target.d.ts.map +1 -1
  445. package/dist/internal/resolve-prod-target.js +3 -7
  446. package/dist/internal/result-output.d.ts +18 -0
  447. package/dist/internal/result-output.d.ts.map +1 -0
  448. package/dist/internal/result-output.js +33 -0
  449. package/dist/internal/run-client.d.ts +2 -2
  450. package/dist/internal/run-client.js +2 -2
  451. package/dist/internal/runtime-dispatch-runner.d.ts +1 -11
  452. package/dist/internal/runtime-dispatch-runner.d.ts.map +1 -1
  453. package/dist/internal/runtime-dispatch-runner.js +2 -15
  454. package/dist/internal/sdk-runner.d.ts.map +1 -1
  455. package/dist/internal/sdk-runner.js +3 -6
  456. package/dist/internal/server.d.ts.map +1 -1
  457. package/dist/internal/server.js +110 -35
  458. package/dist/internal/session-cost.d.ts +3 -3
  459. package/dist/internal/session-cost.d.ts.map +1 -1
  460. package/dist/internal/session-cost.js +3 -3
  461. package/dist/internal/session-engine.d.ts +26 -11
  462. package/dist/internal/session-engine.d.ts.map +1 -1
  463. package/dist/internal/session-engine.js +146 -76
  464. package/dist/internal/session-run-log.d.ts.map +1 -1
  465. package/dist/internal/session-run-log.js +1 -3
  466. package/dist/internal/skills-sync.d.ts +1 -4
  467. package/dist/internal/skills-sync.d.ts.map +1 -1
  468. package/dist/internal/skills-sync.js +10 -50
  469. package/dist/internal/sleep.d.ts +2 -0
  470. package/dist/internal/sleep.d.ts.map +1 -0
  471. package/dist/internal/sleep.js +3 -0
  472. package/dist/internal/store-mirror.d.ts +29 -0
  473. package/dist/internal/store-mirror.d.ts.map +1 -0
  474. package/dist/internal/store-mirror.js +70 -0
  475. package/dist/internal/tenant-slack/relay.d.ts +73 -0
  476. package/dist/internal/tenant-slack/relay.d.ts.map +1 -0
  477. package/dist/internal/tenant-slack/relay.js +138 -0
  478. package/dist/internal/testing/scm-continuation-fixtures.d.ts +33 -0
  479. package/dist/internal/testing/scm-continuation-fixtures.d.ts.map +1 -0
  480. package/dist/internal/testing/scm-continuation-fixtures.js +253 -0
  481. package/dist/internal/workspace-sync.d.ts +22 -0
  482. package/dist/internal/workspace-sync.d.ts.map +1 -0
  483. package/dist/internal/workspace-sync.js +49 -0
  484. package/dist/internal/workspace.d.ts +7 -0
  485. package/dist/internal/workspace.d.ts.map +1 -1
  486. package/dist/internal/workspace.js +13 -0
  487. package/dist/otel.d.ts +23 -1
  488. package/dist/otel.d.ts.map +1 -1
  489. package/dist/otel.js +93 -2
  490. package/dist/playground/assets/index-59KvgREd.js +67 -0
  491. package/dist/playground/assets/index-MbMxXg-y.css +1 -0
  492. package/dist/playground/index.html +2 -2
  493. package/dist/result.d.ts +24 -0
  494. package/dist/result.d.ts.map +1 -0
  495. package/dist/result.js +27 -0
  496. package/dist/storage-backends/cursor-hosted.d.ts.map +1 -1
  497. package/dist/storage-backends/cursor-hosted.js +7 -4
  498. package/dist/storage-protocol.d.ts.map +1 -1
  499. package/dist/storage-protocol.js +1 -3
  500. package/dist/types.d.ts +90 -23
  501. package/dist/types.d.ts.map +1 -1
  502. package/docs/README.md +2 -2
  503. package/docs/concepts.md +2 -4
  504. package/docs/design/runtime-abstraction.md +2 -3
  505. package/docs/evals.md +9 -7
  506. package/docs/guides/cloud-agents.md +4 -6
  507. package/docs/guides/github.md +0 -1
  508. package/docs/guides/opentelemetry.md +41 -17
  509. package/docs/reference/agent-config.md +6 -10
  510. package/docs/reference/channels.md +18 -8
  511. package/docs/reference/cli.md +3 -4
  512. package/docs/reference/extensions.md +87 -23
  513. package/docs/reference/hooks.md +215 -46
  514. package/docs/reference/playground.md +3 -0
  515. package/docs/reference/project-layout.md +2 -1
  516. package/docs/reference/result.md +94 -0
  517. package/docs/reference/sessions.md +3 -1
  518. package/docs/reference/tools.md +1 -2
  519. package/docs/templates/pr-autofixer.md +0 -3
  520. package/package.json +29 -10
  521. package/skills/framework-map/SKILL.md +3 -1
  522. package/skills/otel/SKILL.md +8 -3
  523. package/src/ab.ts +1 -1
  524. package/src/bin/agent-serve.ts +121 -21
  525. package/src/channels/bitbucket/api.ts +623 -0
  526. package/src/channels/bitbucket/binding.ts +414 -0
  527. package/src/channels/bitbucket/bitbucket-channel.ts +182 -0
  528. package/src/channels/bitbucket/bitbucket-webhook.ts +576 -0
  529. package/src/channels/bitbucket/checks.ts +154 -0
  530. package/src/channels/bitbucket/cursor-account.ts +117 -0
  531. package/src/channels/bitbucket/defaults.ts +110 -0
  532. package/src/channels/bitbucket/events.ts +84 -0
  533. package/src/channels/bitbucket/index.ts +49 -0
  534. package/src/channels/bitbucket/replay.ts +439 -0
  535. package/src/channels/bitbucket/state.ts +59 -0
  536. package/src/channels/bitbucket/types.ts +266 -0
  537. package/src/channels/deployments/deployments-channel.ts +25 -43
  538. package/src/channels/deployments/types.ts +12 -6
  539. package/src/channels/github/binding.ts +8 -1
  540. package/src/channels/github/cursor-account.ts +17 -6
  541. package/src/channels/github/events.ts +1 -1
  542. package/src/channels/github/forward.ts +3 -2
  543. package/src/channels/github/github-channel.ts +74 -221
  544. package/src/channels/github/replay.ts +1 -1
  545. package/src/channels/github/state.ts +6 -0
  546. package/src/channels/github/types.ts +2 -5
  547. package/src/channels/gitlab/api.ts +228 -0
  548. package/src/channels/gitlab/binding.ts +233 -0
  549. package/src/channels/gitlab/checks.ts +243 -0
  550. package/src/channels/gitlab/cursor-account.ts +114 -0
  551. package/src/channels/gitlab/defaults.ts +93 -0
  552. package/src/channels/gitlab/events.ts +44 -0
  553. package/src/channels/gitlab/gitlab-channel.ts +176 -0
  554. package/src/channels/gitlab/gitlab-webhook.ts +555 -0
  555. package/src/channels/gitlab/index.ts +43 -0
  556. package/src/channels/gitlab/replay.ts +347 -0
  557. package/src/channels/gitlab/state.ts +55 -0
  558. package/src/channels/gitlab/types.ts +263 -0
  559. package/src/channels/origin/api.ts +4 -2
  560. package/src/channels/origin/origin-channel.ts +19 -94
  561. package/src/channels/origin/types.ts +23 -2
  562. package/src/channels/slack/eval-directive.ts +1 -6
  563. package/src/channels/slack/init.ts +6 -3
  564. package/src/channels/slack/setup.ts +7 -6
  565. package/src/channels/slack/types.ts +1 -1
  566. package/src/channels.ts +0 -1
  567. package/src/client.ts +1 -1
  568. package/src/connections.ts +1 -1
  569. package/src/evals.ts +1 -1
  570. package/src/extensions.ts +47 -5
  571. package/src/files.ts +21 -3
  572. package/src/index.ts +20 -28
  573. package/src/internal/ab-snapshot.ts +0 -3
  574. package/src/internal/advertise-tools.ts +1 -4
  575. package/src/internal/authored-alias-hooks.ts +4 -21
  576. package/src/internal/authored-loaders.ts +6 -23
  577. package/src/internal/channel-dispatch.ts +160 -0
  578. package/src/internal/chat-client.ts +1 -1
  579. package/src/internal/cli-ax.ts +5 -5
  580. package/src/internal/cli-bitbucket.ts +477 -0
  581. package/src/internal/cli-convert-automation.ts +7 -7
  582. package/src/internal/cli-cursor.ts +2 -5
  583. package/src/internal/cli-deploy.ts +2 -8
  584. package/src/internal/cli-github.ts +3 -3
  585. package/src/internal/cli-gitlab.ts +485 -0
  586. package/src/internal/cli-mcp.ts +2 -7
  587. package/src/internal/cli-slack.ts +2 -5
  588. package/src/internal/continuation-channel.ts +82 -1
  589. package/src/internal/continuation-identity.ts +229 -11
  590. package/src/internal/conversation-mirror.ts +4 -3
  591. package/src/internal/convert-automation/types.ts +1 -1
  592. package/src/internal/cursor/account-mcp.ts +1 -4
  593. package/src/internal/cursor/backend-client.ts +9 -10
  594. package/src/internal/cursor/bound-secret-file.ts +108 -0
  595. package/src/internal/cursor/credentials.ts +75 -10
  596. package/src/internal/cursor/hosted-bound-secrets.ts +75 -0
  597. package/src/internal/cursor/hosted-deployment-secrets.ts +42 -11
  598. package/src/internal/cursor/hosted-store-secrets.ts +1 -1
  599. package/src/internal/cursor-account-mcp-auth.ts +2 -5
  600. package/src/internal/cursor-deployment-relay.ts +11 -7
  601. package/src/internal/deploy-manifest.ts +4 -2
  602. package/src/internal/discovery/ab.ts +29 -9
  603. package/src/internal/discovery/agent.ts +94 -135
  604. package/src/internal/discovery/channels.ts +15 -13
  605. package/src/internal/discovery/connections.ts +55 -50
  606. package/src/internal/discovery/cursor-plugin.ts +1 -4
  607. package/src/internal/discovery/extension-overlay.ts +274 -0
  608. package/src/internal/discovery/extensions.ts +330 -105
  609. package/src/internal/discovery/hooks.ts +20 -2
  610. package/src/internal/discovery/info.ts +7 -0
  611. package/src/internal/discovery/modules.ts +8 -2
  612. package/src/internal/discovery/names.ts +2 -1
  613. package/src/internal/discovery/project.ts +80 -9
  614. package/src/internal/discovery/runtime.ts +1 -2
  615. package/src/internal/discovery/schedules.ts +28 -2
  616. package/src/internal/discovery/services.ts +37 -1
  617. package/src/internal/discovery/skills.ts +13 -3
  618. package/src/internal/discovery/subagent.ts +107 -0
  619. package/src/internal/discovery.ts +0 -2
  620. package/src/internal/distribution.ts +35 -83
  621. package/src/internal/docs-site.ts +1 -1
  622. package/src/internal/eval-run-store.ts +0 -7
  623. package/src/internal/eval-runner.ts +0 -1
  624. package/src/internal/framework-file-storage.ts +8 -8
  625. package/src/internal/github-fanout.ts +1 -1
  626. package/src/internal/guest-network.ts +383 -0
  627. package/src/internal/host-otel.ts +8 -4
  628. package/src/internal/hosted-admission-adapter.ts +8 -8
  629. package/src/internal/hosted-delivery-protocol.ts +26 -1
  630. package/src/internal/hosted-delivery.ts +376 -192
  631. package/src/internal/http-channel.ts +1 -4
  632. package/src/internal/init-interview.ts +1 -4
  633. package/src/internal/init-project.ts +2 -2
  634. package/src/internal/inline-stdio-define-stub.ts +1 -1
  635. package/src/internal/is-record.ts +3 -0
  636. package/src/internal/json-schema.ts +19 -10
  637. package/src/internal/local-control-plane.ts +5 -24
  638. package/src/internal/mcp-endpoint.ts +1 -4
  639. package/src/internal/otel/collector.ts +94 -159
  640. package/src/internal/otel/config.ts +10 -14
  641. package/src/internal/otel/http.ts +14 -1
  642. package/src/internal/otel/mcp.ts +3 -16
  643. package/src/internal/otel/runtime.ts +240 -25
  644. package/src/internal/package-inline-stdio.ts +3 -12
  645. package/src/internal/playground/toolchain.ts +1 -1
  646. package/src/internal/request-error-status.ts +72 -0
  647. package/src/internal/resolve-prod-target.ts +3 -8
  648. package/src/internal/result-output.ts +34 -0
  649. package/src/internal/run-client.ts +2 -2
  650. package/src/internal/runtime-dispatch-runner.ts +3 -21
  651. package/src/internal/sdk-runner.ts +3 -7
  652. package/src/internal/server.ts +153 -44
  653. package/src/internal/session-cost.ts +3 -3
  654. package/src/internal/session-engine.ts +182 -74
  655. package/src/internal/session-run-log.ts +1 -4
  656. package/src/internal/skills-sync.ts +13 -63
  657. package/src/internal/sleep.ts +3 -0
  658. package/src/internal/store-mirror.ts +86 -0
  659. package/src/internal/tenant-slack/relay.ts +179 -0
  660. package/src/internal/testing/scm-continuation-fixtures.ts +286 -0
  661. package/src/internal/workspace-sync.ts +55 -0
  662. package/src/internal/workspace.ts +14 -0
  663. package/src/otel.ts +143 -3
  664. package/src/result.ts +36 -0
  665. package/src/storage-backends/cursor-hosted.ts +7 -4
  666. package/src/storage-protocol.ts +1 -4
  667. package/src/types.ts +105 -34
  668. package/templates/triage/agent/lib/types.ts +0 -2
  669. package/dist/continuation.d.ts +0 -20
  670. package/dist/continuation.d.ts.map +0 -1
  671. package/dist/continuation.js +0 -18
  672. package/dist/docs/assets/chunks/@localSearchIndexroot.FAqdWIXo.js +0 -1
  673. package/dist/docs/assets/concepts.md.rPzW2HZN.js +0 -1
  674. package/dist/docs/assets/guides_cloud-agents.md.DumwWXba.js +0 -9
  675. package/dist/docs/assets/guides_cloud-runtime.md.BRirbRAN.js +0 -9
  676. package/dist/docs/assets/guides_cloud-runtime.md.BRirbRAN.lean.js +0 -1
  677. package/dist/docs/assets/reference_extensions.md.9WQMZe1l.lean.js +0 -1
  678. package/dist/docs/assets/reference_hooks.md.a8BJxMR5.js +0 -14
  679. package/dist/docs/assets/skills_framework-map.md.DDa4MeEW.js +0 -1
  680. package/dist/docs/guides/cloud-runtime.html +0 -35
  681. package/dist/docs/guides/cloud-runtime.md +0 -117
  682. package/dist/internal/convert-automation/index.d.ts +0 -3
  683. package/dist/internal/convert-automation/index.d.ts.map +0 -1
  684. package/dist/internal/convert-automation/index.js +0 -1
  685. package/dist/internal/grokbot/runner.d.ts +0 -64
  686. package/dist/internal/grokbot/runner.d.ts.map +0 -1
  687. package/dist/internal/grokbot/runner.js +0 -282
  688. package/dist/internal/managed-delivery.d.ts +0 -80
  689. package/dist/internal/managed-delivery.d.ts.map +0 -1
  690. package/dist/internal/managed-delivery.js +0 -86
  691. package/dist/internal/review-comments.d.ts +0 -370
  692. package/dist/internal/review-comments.d.ts.map +0 -1
  693. package/dist/internal/review-comments.js +0 -921
  694. package/dist/internal/shallow-clone.d.ts +0 -176
  695. package/dist/internal/shallow-clone.d.ts.map +0 -1
  696. package/dist/internal/shallow-clone.js +0 -419
  697. package/dist/playground/assets/index-B6C9S9nG.css +0 -1
  698. package/dist/playground/assets/index-ZqNoT8Ie.js +0 -69
  699. package/docs/guides/cloud-runtime.md +0 -122
  700. package/src/continuation.ts +0 -49
  701. package/src/internal/convert-automation/index.ts +0 -10
  702. package/src/internal/grokbot/runner.ts +0 -370
  703. package/src/internal/managed-delivery.ts +0 -125
  704. package/src/internal/review-comments.ts +0 -1363
  705. package/src/internal/shallow-clone.ts +0 -609
  706. /package/dist/docs/assets/{evals.md.CPzDAwoH.lean.js → evals.md.CbMoebP1.lean.js} +0 -0
  707. /package/dist/docs/assets/{guides_cloud-agents.md.DumwWXba.lean.js → guides_cloud-agents.md.DS8RIjwx.lean.js} +0 -0
  708. /package/dist/docs/assets/{guides_github.md.BtPr9GaP.lean.js → guides_github.md.DKYiT9do.lean.js} +0 -0
  709. /package/dist/docs/assets/{index.md.Kiht7ell.lean.js → index.md.D75GWhPl.lean.js} +0 -0
  710. /package/dist/docs/assets/{reference_agent-config.md.BHeYMgme.lean.js → reference_agent-config.md.CHNpiyp4.lean.js} +0 -0
  711. /package/dist/docs/assets/{reference_cli.md.DfoeyvL0.lean.js → reference_cli.md.CJNc_xYK.lean.js} +0 -0
  712. /package/dist/docs/assets/{reference_playground.md.DnX5nL-B.lean.js → reference_playground.md.4myJPxrf.lean.js} +0 -0
  713. /package/dist/docs/assets/{reference_project-layout.md.CA6QP6Lw.lean.js → reference_project-layout.md.DuBu9a96.lean.js} +0 -0
  714. /package/dist/docs/assets/{reference_tools.md.B1up2r9W.lean.js → reference_tools.md.aGrn99hP.lean.js} +0 -0
  715. /package/dist/docs/assets/{skills_framework-map.md.DDa4MeEW.lean.js → skills_framework-map.md.haibFyoB.lean.js} +0 -0
@@ -104,6 +104,12 @@ export function projectInfo(project) {
104
104
  if ((meta === null || meta === void 0 ? void 0 : meta.originWebhookEvents) !== undefined) {
105
105
  info.originWebhookEvents = meta.originWebhookEvents;
106
106
  }
107
+ if ((meta === null || meta === void 0 ? void 0 : meta.gitlabWebhookEvents) !== undefined) {
108
+ info.gitlabWebhookEvents = meta.gitlabWebhookEvents;
109
+ }
110
+ if ((meta === null || meta === void 0 ? void 0 : meta.bitbucketWebhookEvents) !== undefined) {
111
+ info.bitbucketWebhookEvents = meta.bitbucketWebhookEvents;
112
+ }
107
113
  if ((meta === null || meta === void 0 ? void 0 : meta.deploymentEventTypes) !== undefined) {
108
114
  info.deploymentEventTypes = meta.deploymentEventTypes;
109
115
  }
@@ -132,7 +138,7 @@ export function projectInfo(project) {
132
138
  kinds: Object.keys((_f = project.artifacts.kinds) !== null && _f !== void 0 ? _f : {}),
133
139
  agentTool: project.artifacts.agentTool === true,
134
140
  max: resolveArtifactsMax(project.artifacts),
135
- }, otel: project.otel === undefined
141
+ }, result: project.result === undefined ? undefined : true, otel: project.otel === undefined
136
142
  ? undefined
137
143
  : {
138
144
  enabled: true,
@@ -1 +1 @@
1
- {"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/modules.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,KAAK,gBAAgB,EAA6B,MAAM,cAAc,CAAC;AAIhF,KAAK,cAAc,GAAG,OAAO,CAC3B,cAAc,EACd,cAAc,GAAG,MAAM,GAAG,UAAU,CACrC,CAAC;AAEF,4EAA4E;AAC5E,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GAAG,YAAY,GAC1B,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAwBhD;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,cAAc,GAAG,SAAS,cAAc,EAAE,GACnD,OAAO,CAAC,OAAO,CAAC,CA2BlB;AAED,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAGvD"}
1
+ {"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/modules.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,KAAK,gBAAgB,EAA6B,MAAM,cAAc,CAAC;AAIhF,KAAK,cAAc,GAAG,OAAO,CAC3B,cAAc,EACd,cAAc,GAAG,MAAM,GAAG,UAAU,CACrC,CAAC;AAEF,4EAA4E;AAC5E,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GAAG,YAAY,GAC1B,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAwBhD;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,cAAc,GAAG,SAAS,cAAc,EAAE,GACnD,OAAO,CAAC,OAAO,CAAC,CA6BlB;AAED,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAKvD"}
@@ -67,12 +67,14 @@ export function importDefault(ctx, modulePath, expected) {
67
67
  return mod.default;
68
68
  }
69
69
  const helpers = kinds.map(helperCall).join(" or ");
70
+ const expectedKinds = kinds.join(" or ");
71
+ const article = /^[aeiou]/.test(expectedKinds) ? "an" : "a";
70
72
  ctx.diagnostics.push({
71
73
  severity: "error",
72
74
  path: displayPath(ctx, modulePath),
73
75
  message: kind === undefined
74
76
  ? `Module must default-export ${helpers}.`
75
- : `Expected a ${kinds.join(" or ")} definition but found "${kind}" (wrong authored slot?).`,
77
+ : `Expected ${article} ${expectedKinds} definition but found "${kind}" (wrong authored slot?).`,
76
78
  });
77
79
  return undefined;
78
80
  });
@@ -80,7 +82,9 @@ export function importDefault(ctx, modulePath, expected) {
80
82
  /** How a definition of `kind` is authored: `defineTool({ ... })`, `disableTool()`. */
81
83
  export function helperCall(kind) {
82
84
  const name = DEFINE_HELPER_NAME[kind];
83
- return kind.startsWith("disabled-") ? `${name}()` : `${name}({ ... })`;
85
+ return kind === "disabled" || kind.startsWith("disabled-")
86
+ ? `${name}()`
87
+ : `${name}({ ... })`;
84
88
  }
85
89
  const DEFINE_HELPER_NAME = {
86
90
  agent: "defineAgent",
@@ -89,6 +93,7 @@ const DEFINE_HELPER_NAME = {
89
93
  extension: "defineExtension",
90
94
  "disabled-tool": "disableTool",
91
95
  "disabled-connection": "disableConnection",
96
+ disabled: "disable",
92
97
  connection: "defineConnection",
93
98
  channel: "defineChannel",
94
99
  "http-channel": "httpChannel",
@@ -98,4 +103,5 @@ const DEFINE_HELPER_NAME = {
98
103
  storage: "defineStorage",
99
104
  artifacts: "defineArtifacts",
100
105
  otel: "defineOtel",
106
+ result: "defineResult",
101
107
  };
@@ -8,5 +8,5 @@ export declare const NAME_PATTERN: RegExp;
8
8
  * extension's namespace to its contribution (`ci__failed_jobs`), so no
9
9
  * authored name may carry it.
10
10
  */
11
- export declare function validateName(ctx: DiscoveryContext, kind: "skill" | "tool" | "extension" | "connection" | "subagent", name: string, entryPath: string): boolean;
11
+ export declare function validateName(ctx: DiscoveryContext, kind: "skill" | "tool" | "extension" | "connection" | "subagent" | "channel", name: string, entryPath: string): boolean;
12
12
  //# sourceMappingURL=names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/names.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAElE,eAAO,MAAM,YAAY,EAAE,MAAsC,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,EAChE,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAChB,OAAO,CAyBT"}
1
+ {"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/names.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAElE,eAAO,MAAM,YAAY,EAAE,MAAsC,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,GAAG,EAAE,gBAAgB,EACrB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,EAC5E,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GAChB,OAAO,CA0BT"}
@@ -15,6 +15,7 @@ export function validateName(ctx, kind, name, entryPath) {
15
15
  extension: "Extension",
16
16
  connection: "MCP connection",
17
17
  subagent: "Subagent",
18
+ channel: "Channel",
18
19
  }[kind];
19
20
  if (!NAME_PATTERN.test(name)) {
20
21
  ctx.diagnostics.push({
@@ -44,8 +44,6 @@ export declare function resolveAgentMounts(rootDir: string, options?: LoadAgentP
44
44
  slug: string;
45
45
  project: AgentProject;
46
46
  }>>;
47
- /** URL path segments reserved by the server; agents cannot use them as slugs. */
48
- export declare const RESERVED_SLUGS: Set<string>;
49
47
  export declare function loadAgentProject(dir: string, options?: LoadAgentProjectOptions): Promise<AgentProject>;
50
48
  /** True when the project has diagnostics that must block serving. */
51
49
  export declare function hasErrorDiagnostics(project: AgentProject): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/project.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAM/D,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,cAAc,CAAC;AAiBtB;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASrE;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,EAAE,CAAC,CA2B1B;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC,CA6BzD;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,uBAAuB,GAAG;IACjC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CACtB,GACL,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC,CAgBzD;AAWD,iFAAiF;AACjF,eAAO,MAAM,cAAc,EAAE,GAAG,CAAC,MAAM,CAIrC,CAAC;AAEH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,YAAY,CAAC,CA0EvB;AAED,qEAAqE;AACrE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAElE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CAOnE"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/project.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EACV,YAAY,EAEZ,UAAU,EACX,MAAM,gBAAgB,CAAC;AASxB,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,cAAc,CAAC;AAmBtB;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CASrE;AAED,sEAAsE;AACtE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,aAAa,EAAE,CAAC,CA2B1B;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC,CA6BzD;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,uBAAuB,GAAG;IACjC,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CACtB,GACL,OAAO,CAAC,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC,CAAC,CAgBzD;AAcD,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,YAAY,CAAC,CAmHvB;AA0BD,qEAAqE;AACrE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAElE;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CAOnE"}
@@ -24,16 +24,16 @@ var __rest = (this && this.__rest) || function (s, e) {
24
24
  import { basename, join, resolve } from "node:path";
25
25
  import { httpChannel } from "../../channels.js";
26
26
  import { registerAuthoredModuleLoaders } from "../authored-loaders.js";
27
- import { applyAgentContinuationDefaults } from "../continuation-channel.js";
27
+ import { applyAgentContinuationDefaults, warnOmittedContinuationDowngrades, } from "../continuation-channel.js";
28
28
  import { loadABConfig, loadABs } from "./ab.js";
29
29
  import { loadAgent, warnUnknownSlots } from "./agent.js";
30
30
  import { loadChannels } from "./channels.js";
31
- import { defaultImportModule, } from "./context.js";
31
+ import { defaultImportModule, displayPath, } from "./context.js";
32
32
  import { hasFlatLayoutMarkers, isDirectory, readPackageName, sortedEntries, } from "./fs.js";
33
33
  import { loadHooks } from "./hooks.js";
34
34
  import { NAME_PATTERN } from "./names.js";
35
35
  import { loadSchedules } from "./schedules.js";
36
- import { appendArtifactTool, loadArtifacts, loadOtel, loadStorage, } from "./services.js";
36
+ import { appendArtifactTool, loadArtifacts, loadOtel, loadResult, loadStorage, mergeArtifacts, } from "./services.js";
37
37
  /**
38
38
  * True when `dir` looks like an agent project root: it has a nested `agent/`
39
39
  * directory, or flat-layout markers (`agent.ts` / `instructions.md`) directly
@@ -152,11 +152,7 @@ function assertSlug(name, parentDir) {
152
152
  return name;
153
153
  }
154
154
  /** URL path segments reserved by the server; agents cannot use them as slugs. */
155
- export const RESERVED_SLUGS = new Set([
156
- "v1",
157
- "playground",
158
- "docs",
159
- ]);
155
+ const RESERVED_SLUGS = new Set(["v1", "playground", "docs"]);
160
156
  export function loadAgentProject(dir_1) {
161
157
  return __awaiter(this, arguments, void 0, function* (dir, options = {}) {
162
158
  var _a, _b;
@@ -185,23 +181,59 @@ export function loadAgentProject(dir_1) {
185
181
  importModule: (_a = options.importModule) !== null && _a !== void 0 ? _a : defaultImportModule,
186
182
  };
187
183
  const name = (_b = (yield readPackageName(rootDir))) !== null && _b !== void 0 ? _b : basename(rootDir);
188
- const agent = yield loadAgent(ctx, agentDir, {
184
+ const { agent, projectSlots } = yield loadAgent(ctx, agentDir, {
189
185
  name,
190
186
  isRoot: true,
191
187
  });
192
188
  const { channels, httpChannelDefinition } = yield loadChannels(ctx, join(agentDir, "channels"));
189
+ for (const channel of projectSlots.channels) {
190
+ if (channel.id === "http" || channels.some((c) => c.id === channel.id)) {
191
+ ctx.diagnostics.push({
192
+ severity: "error",
193
+ path: displayPath(ctx, join(agentDir, "extensions")),
194
+ message: `Extension channel "${channel.id}" collides with an agent channel.`,
195
+ });
196
+ continue;
197
+ }
198
+ channels.push(channel);
199
+ }
193
200
  const schedules = yield loadSchedules(ctx, join(agentDir, "schedules"));
201
+ schedules.push(...projectSlots.schedules);
194
202
  const hooks = yield loadHooks(ctx, join(agentDir, "hooks"));
203
+ hooks.push(...projectSlots.hooks);
195
204
  const abs = yield loadABs(ctx, agentDir);
205
+ for (const experiment of projectSlots.abs) {
206
+ if (abs.some((existing) => existing.name === experiment.name)) {
207
+ ctx.diagnostics.push({
208
+ severity: "error",
209
+ path: displayPath(ctx, join(agentDir, "extensions")),
210
+ message: `Extension A/B experiment "${experiment.name}" collides with an agent experiment.`,
211
+ });
212
+ continue;
213
+ }
214
+ abs.push(experiment);
215
+ }
196
216
  const abConfig = yield loadABConfig(ctx, agentDir);
197
217
  const storage = yield loadStorage(ctx, agentDir, agent.architecture);
198
- const artifacts = yield loadArtifacts(ctx, agentDir);
218
+ const artifacts = yield mergeProjectArtifacts(ctx, agentDir, projectSlots.artifacts);
199
219
  const otel = yield loadOtel(ctx, agentDir);
220
+ const result = yield loadResult(ctx, agentDir);
200
221
  yield appendArtifactTool(ctx, agentDir, agent, artifacts);
201
222
  if (agentDir !== rootDir) {
202
223
  yield warnUnknownSlots(ctx, agentDir);
203
224
  }
204
225
  const resolvedHttpChannel = httpChannelDefinition !== null && httpChannelDefinition !== void 0 ? httpChannelDefinition : httpChannel();
226
+ warnOmittedContinuationDowngrades({
227
+ architecture: agent.architecture,
228
+ channels,
229
+ warn: (id, message) => {
230
+ ctx.diagnostics.push({
231
+ severity: "warning",
232
+ path: displayPath(ctx, join(agentDir, "channels", `${id}.ts`)),
233
+ message,
234
+ });
235
+ },
236
+ });
205
237
  applyAgentContinuationDefaults({
206
238
  agent,
207
239
  channels,
@@ -220,11 +252,33 @@ export function loadAgentProject(dir_1) {
220
252
  abConfig,
221
253
  storage,
222
254
  artifacts,
255
+ result,
223
256
  otel,
224
257
  diagnostics,
225
258
  };
226
259
  });
227
260
  }
261
+ function mergeProjectArtifacts(ctx, agentDir, extra) {
262
+ return __awaiter(this, void 0, void 0, function* () {
263
+ const agent = yield loadArtifacts(ctx, agentDir);
264
+ if (extra === undefined) {
265
+ return agent;
266
+ }
267
+ const kinds = Object.assign({}, extra.kinds);
268
+ const agentKinds = agent === null || agent === void 0 ? void 0 : agent.kinds;
269
+ for (const kind of Object.keys(kinds)) {
270
+ if (agentKinds !== undefined && kind in agentKinds) {
271
+ ctx.diagnostics.push({
272
+ severity: "error",
273
+ path: displayPath(ctx, join(agentDir, "extensions")),
274
+ message: `Extension artifact kind "${kind}" collides with an agent kind.`,
275
+ });
276
+ delete kinds[kind];
277
+ }
278
+ }
279
+ return mergeArtifacts(agent, Object.assign(Object.assign({}, extra), { kinds }));
280
+ });
281
+ }
228
282
  /** True when the project has diagnostics that must block serving. */
229
283
  export function hasErrorDiagnostics(project) {
230
284
  return project.diagnostics.some((d) => d.severity === "error");
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/runtime.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,GAAG,SAAS,GAChC,YAAY,CAed;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;IACN,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACA,IAAI,CA2DN;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;IACN,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACA,IAAI,CAkCN"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/runtime.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,YAAY,GAAG,SAAS,GAChC,YAAY,CAed;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;IACN,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACA,IAAI,CA2DN;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE;IACN,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;CAC1B,GACA,IAAI,CAkCN"}
@@ -2,7 +2,6 @@
2
2
  * Runtime resolution and the limitations each runtime imposes on the authored surface.
3
3
  */
4
4
  import { join } from "node:path";
5
- import { builtinTools } from "../builtin-tools/index.js";
6
5
  import { displayPath } from "./context.js";
7
6
  /**
8
7
  * Validate the authored runtime. An unrecognized value is an error
@@ -92,7 +91,7 @@ export function warnCloudRuntimeLimitations(ctx, agentDir, counts) {
92
91
  ctx.diagnostics.push({
93
92
  severity: "warning",
94
93
  path: displayPath(ctx, join(agentDir, "sandbox")),
95
- message: "sandbox/workspace seed files apply to the local session workspace only; cloud agents use the configured cloud repos.",
94
+ message: "sandbox/workspace seed files reach cloud agents through the Agent Store, not the checkout: hosted deployments write the deployment store's workspace/ directory; local serve/run with a personal API key writes agent-serve/<agent>/workspace/ on the USER store. The first cloud prompt names the mounted directory. Without a reachable store, cloud turns do not see them.",
96
95
  });
97
96
  }
98
97
  }
@@ -3,5 +3,5 @@
3
3
  */
4
4
  import type { DiscoveredSchedule } from "../../types.js";
5
5
  import { type DiscoveryContext } from "./context.js";
6
- export declare function loadSchedules(ctx: DiscoveryContext, schedulesDir: string): Promise<DiscoveredSchedule[]>;
6
+ export declare function loadSchedules(ctx: DiscoveryContext, schedulesDir: string, onDisable?: (name: string, path: string) => void): Promise<DiscoveredSchedule[]>;
7
7
  //# sourceMappingURL=schedules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedules.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/schedules.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAG7E,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAIlE,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA6E/B"}
1
+ {"version":3,"file":"schedules.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/schedules.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAsB,MAAM,gBAAgB,CAAC;AAI7E,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAIlE,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAC/C,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAqG/B"}
@@ -12,12 +12,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  };
13
13
  import { readFile } from "node:fs/promises";
14
14
  import { basename, extname, relative } from "node:path";
15
+ import { getDefinitionKind } from "../brand.js";
15
16
  import { isValidCron } from "../cron.js";
16
17
  import { parseFrontmatter } from "../frontmatter.js";
17
18
  import { displayPath } from "./context.js";
18
19
  import { isDirectory, isModuleFile, toPosix, walkFiles } from "./fs.js";
19
20
  import { importDefault } from "./modules.js";
20
- export function loadSchedules(ctx, schedulesDir) {
21
+ export function loadSchedules(ctx, schedulesDir, onDisable) {
21
22
  return __awaiter(this, void 0, void 0, function* () {
22
23
  if (!(yield isDirectory(schedulesDir))) {
23
24
  return [];
@@ -27,6 +28,14 @@ export function loadSchedules(ctx, schedulesDir) {
27
28
  const rel = toPosix(relative(schedulesDir, filePath));
28
29
  if (rel.endsWith(".md")) {
29
30
  const name = rel.slice(0, -".md".length);
31
+ if (name.includes("__")) {
32
+ ctx.diagnostics.push({
33
+ severity: "error",
34
+ path: displayPath(ctx, filePath),
35
+ message: `Schedule name "${name}" may not contain "__"; it is reserved for extension contributions (\`<ns>__<name>\`).`,
36
+ });
37
+ continue;
38
+ }
30
39
  const { data, body } = parseFrontmatter(yield readFile(filePath, "utf8"));
31
40
  const cron = data.cron;
32
41
  if (cron === undefined || !isValidCron(cron)) {
@@ -64,10 +73,22 @@ export function loadSchedules(ctx, schedulesDir) {
64
73
  continue;
65
74
  }
66
75
  const name = rel.slice(0, -extname(rel).length);
67
- const definition = yield importDefault(ctx, filePath, "schedule");
76
+ if (name.includes("__")) {
77
+ ctx.diagnostics.push({
78
+ severity: "error",
79
+ path: displayPath(ctx, filePath),
80
+ message: `Schedule name "${name}" may not contain "__"; it is reserved for extension contributions (\`<ns>__<name>\`).`,
81
+ });
82
+ continue;
83
+ }
84
+ const definition = yield importDefault(ctx, filePath, onDisable === undefined ? "schedule" : ["schedule", "disabled"]);
68
85
  if (definition === undefined) {
69
86
  continue;
70
87
  }
88
+ if (getDefinitionKind(definition) === "disabled") {
89
+ onDisable === null || onDisable === void 0 ? void 0 : onDisable(name, filePath);
90
+ continue;
91
+ }
71
92
  const schedule = definition;
72
93
  if ((schedule.markdown === undefined) === (schedule.run === undefined)) {
73
94
  ctx.diagnostics.push({
@@ -1,13 +1,17 @@
1
1
  /**
2
- * `agent/storage.ts`, `agent/otel.ts`, `agent/artifacts.ts`: host services the agent configures.
2
+ * `agent/storage.ts`, `agent/otel.ts`, `agent/artifacts.ts`,
3
+ * `agent/result.ts`: host services the agent configures.
3
4
  */
4
5
  import type { OtelDefinition } from "../../otel.js";
5
6
  import type { StorageDefinition } from "../../storage.js";
6
- import type { AgentArchitecture, ArtifactsDefinition, ResolvedAgent } from "../../types.js";
7
+ import type { AgentArchitecture, ArtifactsDefinition, ResolvedAgent, ResultDefinition } from "../../types.js";
7
8
  import { type DiscoveryContext } from "./context.js";
8
9
  export declare function loadStorage(ctx: DiscoveryContext, agentDir: string, architecture: AgentArchitecture | undefined): Promise<StorageDefinition | undefined>;
9
10
  export declare function loadOtel(ctx: DiscoveryContext, agentDir: string): Promise<OtelDefinition | undefined>;
10
11
  export declare function loadArtifacts(ctx: DiscoveryContext, agentDir: string): Promise<ArtifactsDefinition | undefined>;
12
+ export declare function loadResult(ctx: DiscoveryContext, agentDir: string): Promise<ResultDefinition | undefined>;
13
+ /** Merge namespaced extension kinds onto the agent's artifacts registry. */
14
+ export declare function mergeArtifacts(agent: ArtifactsDefinition | undefined, extra: ArtifactsDefinition | undefined): ArtifactsDefinition | undefined;
11
15
  /**
12
16
  * Materialize the `tag_artifact` built-in when `defineArtifacts` set
13
17
  * `agentTool: true`. Appended after `loadAgent` because the tool is
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/services.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACd,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAIlE,wBAAsB,WAAW,CAC/B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,iBAAiB,GAAG,SAAS,GAC1C,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CA6BxC;AAED,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAOrC;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAsB1C;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,mBAAmB,GAAG,SAAS,GACzC,OAAO,CAAC,IAAI,CAAC,CAmBf"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/services.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EACV,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAIlE,wBAAsB,WAAW,CAC/B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,iBAAiB,GAAG,SAAS,GAC1C,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CA6BxC;AAED,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAOrC;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAsB1C;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAUvC;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,GAAG,SAAS,EACtC,KAAK,EAAE,mBAAmB,GAAG,SAAS,GACrC,mBAAmB,GAAG,SAAS,CAYjC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,mBAAmB,GAAG,SAAS,GACzC,OAAO,CAAC,IAAI,CAAC,CAmBf"}
@@ -1,5 +1,6 @@
1
1
  /**
2
- * `agent/storage.ts`, `agent/otel.ts`, `agent/artifacts.ts`: host services the agent configures.
2
+ * `agent/storage.ts`, `agent/otel.ts`, `agent/artifacts.ts`,
3
+ * `agent/result.ts`: host services the agent configures.
3
4
  */
4
5
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
6
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -11,6 +12,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
12
  });
12
13
  };
13
14
  import { join } from "node:path";
15
+ import { defineArtifacts } from "../../artifacts.js";
14
16
  import { artifactBuiltinTool, TAG_ARTIFACT_TOOL_NAME, } from "../builtin-tools/index.js";
15
17
  import { displayPath } from "./context.js";
16
18
  import { findModuleFile } from "./fs.js";
@@ -78,6 +80,34 @@ export function loadArtifacts(ctx, agentDir) {
78
80
  return definition;
79
81
  });
80
82
  }
83
+ export function loadResult(ctx, agentDir) {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ const path = yield findModuleFile(agentDir, "result");
86
+ if (path === undefined) {
87
+ return undefined;
88
+ }
89
+ const imported = yield importDefault(ctx, path, "result");
90
+ if (imported === undefined) {
91
+ return undefined;
92
+ }
93
+ return imported;
94
+ });
95
+ }
96
+ /** Merge namespaced extension kinds onto the agent's artifacts registry. */
97
+ export function mergeArtifacts(agent, extra) {
98
+ var _a;
99
+ if (extra === undefined) {
100
+ return agent;
101
+ }
102
+ if (agent === undefined) {
103
+ return extra;
104
+ }
105
+ return defineArtifacts({
106
+ kinds: Object.assign(Object.assign({}, agent.kinds), extra.kinds),
107
+ agentTool: agent.agentTool === true || extra.agentTool === true,
108
+ max: (_a = agent.max) !== null && _a !== void 0 ? _a : extra.max,
109
+ });
110
+ }
81
111
  /**
82
112
  * Materialize the `tag_artifact` built-in when `defineArtifacts` set
83
113
  * `agentTool: true`. Appended after `loadAgent` because the tool is
@@ -7,10 +7,5 @@ import { type DiscoveryContext } from "./context.js";
7
7
  export declare function skillDescription(name: string, declared: string | undefined, body: string): string;
8
8
  /** A packaged skill's sibling files, keyed by path relative to the skill dir. */
9
9
  export declare function skillFiles(skillDir: string): Promise<Record<string, SkillFileSource>>;
10
- export declare function loadSkills(ctx: DiscoveryContext, skillsDir: string): Promise<DiscoveredSkill[]>;
11
- /**
12
- * Advertise the first non-empty, non-code-fence line of the body, with any
13
- * leading `#`, `>`, `*`, or `-` markers stripped.
14
- */
15
- export declare function deriveSkillDescription(markdown: string): string | undefined;
10
+ export declare function loadSkills(ctx: DiscoveryContext, skillsDir: string, onDisable?: (name: string, path: string) => void): Promise<DiscoveredSkill[]>;
16
11
  //# sourceMappingURL=skills.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/skills.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EACV,eAAe,EAGf,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,cAAc,CAAC;AAa3E,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GACX,MAAM,CAMR;AAED,iFAAiF;AACjF,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAS1C;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,eAAe,EAAE,CAAC,CA8C5B;AAoDD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiB3E"}
1
+ {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/skills.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EACV,eAAe,EAGf,eAAe,EAChB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,cAAc,CAAC;AAa3E,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,IAAI,EAAE,MAAM,GACX,MAAM,CAMR;AAED,iFAAiF;AACjF,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAS1C;AAED,wBAAsB,UAAU,CAC9B,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAC/C,OAAO,CAAC,eAAe,EAAE,CAAC,CAsD5B"}
@@ -12,6 +12,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  };
13
13
  import { readFile } from "node:fs/promises";
14
14
  import { join, relative } from "node:path";
15
+ import { getDefinitionKind } from "../brand.js";
15
16
  import { parseFrontmatter } from "../frontmatter.js";
16
17
  import { displayPath, isBlank } from "./context.js";
17
18
  import { isDirectory, isFile, isModuleFile, moduleStem, sortedEntries, toPosix, walkFiles, } from "./fs.js";
@@ -35,7 +36,7 @@ export function skillFiles(skillDir) {
35
36
  return files;
36
37
  });
37
38
  }
38
- export function loadSkills(ctx, skillsDir) {
39
+ export function loadSkills(ctx, skillsDir, onDisable) {
39
40
  return __awaiter(this, void 0, void 0, function* () {
40
41
  if (!(yield isDirectory(skillsDir))) {
41
42
  return [];
@@ -72,10 +73,14 @@ export function loadSkills(ctx, skillsDir) {
72
73
  if (!validateName(ctx, "skill", name, entryPath)) {
73
74
  continue;
74
75
  }
75
- const definition = yield importDefault(ctx, entryPath, "skill");
76
+ const definition = yield importDefault(ctx, entryPath, onDisable === undefined ? "skill" : ["skill", "disabled"]);
76
77
  if (definition === undefined) {
77
78
  continue;
78
79
  }
80
+ if (getDefinitionKind(definition) === "disabled") {
81
+ onDisable === null || onDisable === void 0 ? void 0 : onDisable(name, entryPath);
82
+ continue;
83
+ }
79
84
  skills.push(compileSkill(name, definition));
80
85
  }
81
86
  }
@@ -131,7 +136,7 @@ function loadPackagedSkill(ctx, skillDir, name) {
131
136
  * Advertise the first non-empty, non-code-fence line of the body, with any
132
137
  * leading `#`, `>`, `*`, or `-` markers stripped.
133
138
  */
134
- export function deriveSkillDescription(markdown) {
139
+ function deriveSkillDescription(markdown) {
135
140
  let inFence = false;
136
141
  for (const rawLine of markdown.split(/\r?\n/)) {
137
142
  const line = rawLine.trim();
@@ -2,6 +2,7 @@
2
2
  * A subagent as the Cursor harness runs it: description, model, and prompt. Its other slots are inert.
3
3
  */
4
4
  import type { ModelSetting, ResolvedAgent } from "../../types.js";
5
+ import { type DiscoveryContext } from "./context.js";
5
6
  interface SubagentFields {
6
7
  description?: string;
7
8
  model?: ModelSetting;
@@ -9,5 +10,7 @@ interface SubagentFields {
9
10
  prompt?: string;
10
11
  }
11
12
  export declare function subagent(name: string, fields: SubagentFields): ResolvedAgent;
13
+ export declare function loadSubagents(ctx: DiscoveryContext, subagentsDir: string): Promise<ResolvedAgent[]>;
14
+ export declare function loadSubagent(ctx: DiscoveryContext, agentDir: string, name: string): Promise<ResolvedAgent>;
12
15
  export {};
13
16
  //# sourceMappingURL=subagent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subagent.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/subagent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGlE,UAAU,cAAc;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,aAAa,CAc5E"}
1
+ {"version":3,"file":"subagent.d.ts","sourceRoot":"","sources":["../../../src/internal/discovery/subagent.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAGlE,OAAO,EAAE,KAAK,gBAAgB,EAAe,MAAM,cAAc,CAAC;AAKlE,UAAU,cAAc;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,aAAa,CAc5E;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,gBAAgB,EACrB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,aAAa,EAAE,CAAC,CAgB1B;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,gBAAgB,EACrB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,aAAa,CAAC,CA+CxB"}
@@ -1,7 +1,22 @@
1
1
  /**
2
2
  * A subagent as the Cursor harness runs it: description, model, and prompt. Its other slots are inert.
3
3
  */
4
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
+ return new (P || (P = Promise))(function (resolve, reject) {
7
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
11
+ });
12
+ };
13
+ import { join } from "node:path";
4
14
  import { withIdentityPreamble } from "../workspace.js";
15
+ import { loadAgentConfig } from "./agent-config.js";
16
+ import { displayPath } from "./context.js";
17
+ import { findModuleFile, isDirectory, sortedEntries } from "./fs.js";
18
+ import { loadInstructions } from "./instructions.js";
19
+ import { validateName } from "./names.js";
5
20
  export function subagent(name, fields) {
6
21
  return {
7
22
  name,
@@ -17,3 +32,97 @@ export function subagent(name, fields) {
17
32
  seedFiles: [],
18
33
  };
19
34
  }
35
+ export function loadSubagents(ctx, subagentsDir) {
36
+ return __awaiter(this, void 0, void 0, function* () {
37
+ if (!(yield isDirectory(subagentsDir))) {
38
+ return [];
39
+ }
40
+ const subagents = [];
41
+ for (const entry of yield sortedEntries(subagentsDir)) {
42
+ if (!entry.isDirectory()) {
43
+ continue;
44
+ }
45
+ const subagentDir = join(subagentsDir, entry.name);
46
+ if (!validateName(ctx, "subagent", entry.name, subagentDir)) {
47
+ continue;
48
+ }
49
+ subagents.push(yield loadSubagent(ctx, subagentDir, entry.name));
50
+ }
51
+ return subagents;
52
+ });
53
+ }
54
+ export function loadSubagent(ctx, agentDir, name) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ var _a;
57
+ const config = yield loadAgentConfig(ctx, agentDir, false);
58
+ const prompt = yield loadInstructions(ctx, agentDir, config, false);
59
+ yield warnUnsupportedSubagentSlots(ctx, agentDir);
60
+ if ((config === null || config === void 0 ? void 0 : config.builtinTools) !== undefined) {
61
+ ctx.diagnostics.push({
62
+ severity: "warning",
63
+ path: displayPath(ctx, join(agentDir, "agent.ts")),
64
+ message: "builtinTools is not supported on subagents; ignoring.",
65
+ });
66
+ }
67
+ if ((config === null || config === void 0 ? void 0 : config.tools) !== undefined) {
68
+ ctx.diagnostics.push({
69
+ severity: "warning",
70
+ path: displayPath(ctx, join(agentDir, "agent.ts")),
71
+ message: "tools is not supported on subagents (they keep the harness task-tool toolset); ignoring.",
72
+ });
73
+ }
74
+ if ((config === null || config === void 0 ? void 0 : config.architecture) !== undefined) {
75
+ ctx.diagnostics.push({
76
+ severity: "warning",
77
+ path: displayPath(ctx, join(agentDir, "agent.ts")),
78
+ message: "architecture is not supported on subagents; ignoring.",
79
+ });
80
+ }
81
+ const artifactsPath = yield findModuleFile(agentDir, "artifacts");
82
+ if (artifactsPath !== undefined) {
83
+ ctx.diagnostics.push({
84
+ severity: "warning",
85
+ path: displayPath(ctx, artifactsPath),
86
+ message: "artifacts are not supported on subagents; ignoring.",
87
+ });
88
+ }
89
+ const resultPath = yield findModuleFile(agentDir, "result");
90
+ if (resultPath !== undefined) {
91
+ ctx.diagnostics.push({
92
+ severity: "warning",
93
+ path: displayPath(ctx, resultPath),
94
+ message: "result is not supported on subagents; ignoring.",
95
+ });
96
+ }
97
+ return subagent((_a = config === null || config === void 0 ? void 0 : config.name) !== null && _a !== void 0 ? _a : name, {
98
+ description: config === null || config === void 0 ? void 0 : config.description,
99
+ model: config === null || config === void 0 ? void 0 : config.model,
100
+ prompt,
101
+ });
102
+ });
103
+ }
104
+ function warnUnsupportedSubagentSlots(ctx, subagentDir) {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ const unsupported = [
107
+ ["tools", "tools"],
108
+ ["skills", "skills"],
109
+ ["extensions", "extensions"],
110
+ ["mcp-connections", "MCP connections"],
111
+ ["host-connections", "host MCP connections"],
112
+ ["subagents", "nested subagents"],
113
+ ["channels", "channels"],
114
+ ["schedules", "schedules"],
115
+ ["hooks", "hooks"],
116
+ ["sandbox", "sandbox files"],
117
+ ];
118
+ for (const [slot, label] of unsupported) {
119
+ if (yield isDirectory(join(subagentDir, slot))) {
120
+ ctx.diagnostics.push({
121
+ severity: "warning",
122
+ path: displayPath(ctx, join(subagentDir, slot)),
123
+ message: `Subagent ${label} are not supported on the Cursor harness yet; the subagent runs with the parent's execution surface. Ignoring.`,
124
+ });
125
+ }
126
+ }
127
+ });
128
+ }
@@ -11,6 +11,5 @@
11
11
  export { runtimeArchitectureCompatibilityError } from "./discovery/agent-config.js";
12
12
  export type { LoadAgentProjectOptions } from "./discovery/context.js";
13
13
  export { projectInfo } from "./discovery/info.js";
14
- export { type ChildAgentDir, formatDiagnostics, hasErrorDiagnostics, isAgentProjectDir, listChildAgentDirs, loadAgentProject, loadAgentProjects, RESERVED_SLUGS, resolveAgentMounts, } from "./discovery/project.js";
15
- export { deriveSkillDescription } from "./discovery/skills.js";
14
+ export { type ChildAgentDir, formatDiagnostics, hasErrorDiagnostics, isAgentProjectDir, listChildAgentDirs, loadAgentProject, loadAgentProjects, resolveAgentMounts, } from "./discovery/project.js";
16
15
  //# sourceMappingURL=discovery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/internal/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,qCAAqC,EAAE,MAAM,6BAA6B,CAAC;AACpF,YAAY,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACL,KAAK,aAAa,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../src/internal/discovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,qCAAqC,EAAE,MAAM,6BAA6B,CAAC;AACpF,YAAY,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EACL,KAAK,aAAa,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}