@cursor/july 0.1.30 → 0.1.32

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 (403) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +10 -5
  3. package/dist/bin/agent-serve.js +4 -4
  4. package/dist/channels/github/index.d.ts +1 -1
  5. package/dist/channels/github/index.js +1 -1
  6. package/dist/channels/slack/bot-mentions.d.ts +1 -1
  7. package/dist/channels/slack/bot-mentions.d.ts.map +1 -1
  8. package/dist/channels/slack/bot-mentions.js +1 -1
  9. package/dist/channels/slack/eval-directive.js +1 -1
  10. package/dist/channels/slack/external-policy.d.ts +1 -1
  11. package/dist/channels/slack/external-policy.js +1 -1
  12. package/dist/channels/slack/log.d.ts +1 -1
  13. package/dist/channels/slack/log.js +1 -1
  14. package/dist/channels/slack/post-update-delivery.d.ts +85 -0
  15. package/dist/channels/slack/post-update-delivery.d.ts.map +1 -0
  16. package/dist/channels/slack/setup.js +1 -1
  17. package/dist/channels/slack/socket-mode.js +1 -1
  18. package/dist/docs/404.html +3 -3
  19. package/dist/docs/ab.html +11 -11
  20. package/dist/docs/assets/{ab.md.BMCZ6Hd7.js → ab.md.DAQoJ-up.js} +6 -6
  21. package/dist/docs/assets/{ab.md.BMCZ6Hd7.lean.js → ab.md.DAQoJ-up.lean.js} +1 -1
  22. package/dist/docs/assets/{app.Cm4lsMc4.js → app.C2aVczmo.js} +1 -1
  23. package/dist/docs/assets/building-with-agents.md.CnHqvYDd.js +13 -0
  24. package/dist/docs/assets/{building-with-agents.md.CJCtZCyi.lean.js → building-with-agents.md.CnHqvYDd.lean.js} +1 -1
  25. package/dist/docs/assets/chunks/@localSearchIndexroot.xgMnlUSO.js +1 -0
  26. package/dist/docs/assets/chunks/{VPLocalSearchBox.CYUFXspH.js → VPLocalSearchBox.DLEzetbD.js} +1 -1
  27. package/dist/docs/assets/chunks/{theme.CTjkX9vc.js → theme.BkOH1oMp.js} +2 -2
  28. package/dist/docs/assets/concepts.md.DFaQEFkA.js +4 -0
  29. package/dist/docs/assets/concepts.md.DFaQEFkA.lean.js +1 -0
  30. package/dist/docs/assets/deployment.md.9MYBuKM1.js +55 -0
  31. package/dist/docs/assets/deployment.md.9MYBuKM1.lean.js +1 -0
  32. package/dist/docs/assets/{evals.md.DYOjkRCX.js → evals.md.BIUoVZ6X.js} +13 -13
  33. package/dist/docs/assets/evals.md.BIUoVZ6X.lean.js +1 -0
  34. package/dist/docs/assets/{example-agents_approval-buddy.md.DFGBYLcc.js → example-agents_approval-buddy.md.BhEfleVx.js} +4 -4
  35. package/dist/docs/assets/{example-agents_approval-buddy.md.DFGBYLcc.lean.js → example-agents_approval-buddy.md.BhEfleVx.lean.js} +1 -1
  36. package/dist/docs/assets/example-agents_benny.md.2Et1qa8f.js +7 -0
  37. package/dist/docs/assets/{example-agents_bugbot.md.DelIdhxB.js → example-agents_bugbot.md.ByUexi5i.js} +5 -5
  38. package/dist/docs/assets/{example-agents_codebase-wiki.md.DC6sgwn0.js → example-agents_codebase-wiki.md.B4y-7ZVW.js} +6 -6
  39. package/dist/docs/assets/{example-agents_codebase-wiki.md.DC6sgwn0.lean.js → example-agents_codebase-wiki.md.B4y-7ZVW.lean.js} +1 -1
  40. package/dist/docs/assets/{example-agents_codeowners-review.md.Ku_tG2RY.js → example-agents_codeowners-review.md.D6ay4nvf.js} +6 -6
  41. package/dist/docs/assets/{example-agents_codeowners-review.md.Ku_tG2RY.lean.js → example-agents_codeowners-review.md.D6ay4nvf.lean.js} +1 -1
  42. package/dist/docs/assets/{example-agents_concierge.md.4rQTSMXt.js → example-agents_concierge.md.lL8rhYlj.js} +7 -7
  43. package/dist/docs/assets/{example-agents_fsd.md.CzgUrDfi.js → example-agents_fsd.md.DfNKQTHz.js} +5 -5
  44. package/dist/docs/assets/example-agents_index.md.DgGBwckv.js +2 -0
  45. package/dist/docs/assets/example-agents_index.md.DgGBwckv.lean.js +1 -0
  46. package/dist/docs/assets/{example-agents_knowledge-base.md.BPJiVueF.js → example-agents_knowledge-base.md.CzyZ2DCr.js} +5 -5
  47. package/dist/docs/assets/{example-agents_knowledge-base.md.BPJiVueF.lean.js → example-agents_knowledge-base.md.CzyZ2DCr.lean.js} +1 -1
  48. package/dist/docs/assets/example-agents_oncall.md.wFFXXEyW.js +10 -0
  49. package/dist/docs/assets/{example-agents_security-reviewer.md.Dhj_m7_B.js → example-agents_security-reviewer.md.Dkf1gyo6.js} +8 -8
  50. package/dist/docs/assets/example-agents_slack-agent.md.DvgvT4nn.js +5 -0
  51. package/dist/docs/assets/example-agents_weather-agent.md.Dmrcphhl.js +24 -0
  52. package/dist/docs/assets/example-agents_weather-agent.md.Dmrcphhl.lean.js +1 -0
  53. package/dist/docs/assets/{guides_agent-to-agent.md.Bpzgq2Pq.js → guides_agent-to-agent.md.Bmbxy-FA.js} +4 -4
  54. package/dist/docs/assets/guides_cloud-runtime.md.BZ2GA7Es.js +9 -0
  55. package/dist/docs/assets/{guides_github.md.DOOCpqsW.js → guides_github.md.R2QlpR75.js} +5 -5
  56. package/dist/docs/assets/{guides_human-in-the-loop.md.DlUqsp1S.js → guides_human-in-the-loop.md.BWvT7UqY.js} +1 -1
  57. package/dist/docs/assets/{guides_mcp-oauth.md.Dd8EgSem.js → guides_mcp-oauth.md.C7G7IykG.js} +5 -5
  58. package/dist/docs/assets/guides_mcp-oauth.md.C7G7IykG.lean.js +1 -0
  59. package/dist/docs/assets/guides_slack.md.zriQpU_9.js +47 -0
  60. package/dist/docs/assets/guides_slack.md.zriQpU_9.lean.js +1 -0
  61. package/dist/docs/assets/{guides_webhooks.md.wSOYas3X.js → guides_webhooks.md.DiAwSR42.js} +1 -1
  62. package/dist/docs/assets/{hillclimbing.md.DHNast08.js → hillclimbing.md.D9Y1_bYh.js} +1 -1
  63. package/dist/docs/assets/index.md.CZqbBJPB.js +20 -0
  64. package/dist/docs/assets/index.md.CZqbBJPB.lean.js +1 -0
  65. package/dist/docs/assets/{quickstart.md.BU6Iwi_9.js → quickstart.md.TnEXYgYW.js} +12 -12
  66. package/dist/docs/assets/{reference_agent-config.md.DrW2JUM8.js → reference_agent-config.md.kuN6-OxK.js} +1 -1
  67. package/dist/docs/assets/reference_cli.md.sD-IUWjg.js +73 -0
  68. package/dist/docs/assets/{reference_cli.md.ccoKOoXt.lean.js → reference_cli.md.sD-IUWjg.lean.js} +1 -1
  69. package/dist/docs/assets/{reference_connections.md.B9Q3TOve.js → reference_connections.md.DGqAsFXb.js} +3 -3
  70. package/dist/docs/assets/reference_http-api.md.CfVM_ICa.js +11 -0
  71. package/dist/docs/assets/{reference_project-layout.md.Bd_CKtNS.js → reference_project-layout.md.D8E6ZmHJ.js} +4 -4
  72. package/dist/docs/assets/{reference_project-layout.md.Bd_CKtNS.lean.js → reference_project-layout.md.D8E6ZmHJ.lean.js} +1 -1
  73. package/dist/docs/assets/{reference_schedules.md.w_F2mXB6.js → reference_schedules.md.gmfYzf_I.js} +1 -1
  74. package/dist/docs/assets/{reference_sessions.md.DLd6mvbv.js → reference_sessions.md.C_ouF_uf.js} +3 -3
  75. package/dist/docs/assets/{reference_tools.md.BRSDnTbN.js → reference_tools.md.BswAQM41.js} +3 -3
  76. package/dist/docs/assets/{scaffolding-agents.md.C3pTrmoE.js → scaffolding-agents.md.Bsr9Pwzu.js} +1 -1
  77. package/dist/docs/assets/{scaffolding-agents.md.C3pTrmoE.lean.js → scaffolding-agents.md.Bsr9Pwzu.lean.js} +1 -1
  78. package/dist/docs/assets/{storage.md.DRTdnFvd.js → storage.md.xZoiGM58.js} +3 -3
  79. package/dist/docs/assets/storage.md.xZoiGM58.lean.js +1 -0
  80. package/dist/docs/assets/troubleshooting.md.B5RVX_tL.js +1 -0
  81. package/dist/docs/assets/{troubleshooting.md.CmQkmnzC.lean.js → troubleshooting.md.B5RVX_tL.lean.js} +1 -1
  82. package/dist/docs/building-with-agents.html +12 -12
  83. package/dist/docs/concepts.html +6 -6
  84. package/dist/docs/deployment.html +32 -32
  85. package/dist/docs/evals.html +19 -19
  86. package/dist/docs/example-agents/approval-buddy.html +9 -9
  87. package/dist/docs/example-agents/benny.html +11 -11
  88. package/dist/docs/example-agents/bugbot.html +10 -10
  89. package/dist/docs/example-agents/codebase-wiki.html +11 -11
  90. package/dist/docs/example-agents/codeowners-review.html +11 -11
  91. package/dist/docs/example-agents/concierge.html +12 -12
  92. package/dist/docs/example-agents/fsd.html +10 -10
  93. package/dist/docs/example-agents/index.html +7 -7
  94. package/dist/docs/example-agents/knowledge-base.html +10 -10
  95. package/dist/docs/example-agents/oncall.html +10 -10
  96. package/dist/docs/example-agents/security-reviewer.html +13 -13
  97. package/dist/docs/example-agents/slack-agent.html +10 -10
  98. package/dist/docs/example-agents/weather-agent.html +16 -16
  99. package/dist/docs/guides/agent-to-agent.html +9 -9
  100. package/dist/docs/guides/cloud-runtime.html +7 -7
  101. package/dist/docs/guides/github.html +10 -10
  102. package/dist/docs/guides/human-in-the-loop.html +7 -7
  103. package/dist/docs/guides/mcp-oauth.html +11 -11
  104. package/dist/docs/guides/slack.html +22 -17
  105. package/dist/docs/guides/webhooks.html +7 -7
  106. package/dist/docs/hashmap.json +1 -1
  107. package/dist/docs/hillclimbing.html +7 -7
  108. package/dist/docs/index.html +9 -9
  109. package/dist/docs/quickstart.html +17 -17
  110. package/dist/docs/reference/agent-config.html +7 -7
  111. package/dist/docs/reference/channels.html +5 -5
  112. package/dist/docs/reference/cli.html +56 -48
  113. package/dist/docs/reference/connections.html +9 -9
  114. package/dist/docs/reference/hooks.html +5 -5
  115. package/dist/docs/reference/http-api.html +7 -7
  116. package/dist/docs/reference/instructions.html +5 -5
  117. package/dist/docs/reference/playground.html +5 -5
  118. package/dist/docs/reference/project-layout.html +9 -9
  119. package/dist/docs/reference/prompt.html +5 -5
  120. package/dist/docs/reference/schedules.html +7 -7
  121. package/dist/docs/reference/sessions.html +8 -8
  122. package/dist/docs/reference/skills.html +5 -5
  123. package/dist/docs/reference/subagents.html +5 -5
  124. package/dist/docs/reference/tools.html +9 -9
  125. package/dist/docs/scaffolding-agents.html +6 -6
  126. package/dist/docs/storage.html +9 -9
  127. package/dist/docs/troubleshooting.html +6 -6
  128. package/dist/evals/reporters.d.ts +1 -1
  129. package/dist/evals/reporters.js +1 -1
  130. package/dist/evals.d.ts +2 -2
  131. package/dist/files-backends/agent-store-presigned-url.d.ts +3 -0
  132. package/dist/files-backends/agent-store-presigned-url.d.ts.map +1 -0
  133. package/dist/files-backends/agent-store-presigned-url.js +1023 -0
  134. package/dist/files-backends/cursor-hosted.d.ts +87 -0
  135. package/dist/files-backends/cursor-hosted.d.ts.map +1 -0
  136. package/dist/files-backends/cursor-hosted.js +563 -0
  137. package/dist/files-backends/local-fs.d.ts +33 -0
  138. package/dist/files-backends/local-fs.d.ts.map +1 -0
  139. package/dist/files-backends/local-fs.js +199 -0
  140. package/dist/files.d.ts +139 -0
  141. package/dist/files.d.ts.map +1 -0
  142. package/dist/files.js +89 -0
  143. package/dist/internal/ab-collector.js +2 -2
  144. package/dist/internal/ab-fold.js +1 -1
  145. package/dist/internal/cli-ax.d.ts +2 -2
  146. package/dist/internal/cli-ax.js +2 -2
  147. package/dist/internal/cli-deploy.d.ts +1 -1
  148. package/dist/internal/cli-deploy.d.ts.map +1 -1
  149. package/dist/internal/cli-deploy.js +7 -2
  150. package/dist/internal/cli-docs.d.ts +1 -1
  151. package/dist/internal/cli-docs.js +1 -1
  152. package/dist/internal/cli-github.js +13 -13
  153. package/dist/internal/cli-mcp-oauth.d.ts +1 -1
  154. package/dist/internal/cli-mcp-oauth.js +2 -2
  155. package/dist/internal/cli-mcp.d.ts +3 -3
  156. package/dist/internal/cli-mcp.js +4 -4
  157. package/dist/internal/cli-skills.js +1 -1
  158. package/dist/internal/cloud-turn-cost.d.ts +9 -1
  159. package/dist/internal/cloud-turn-cost.d.ts.map +1 -1
  160. package/dist/internal/cloud-turn-cost.js +14 -4
  161. package/dist/internal/cursor/account-mcp.js +5 -5
  162. package/dist/internal/cursor/backend-client.js +1 -1
  163. package/dist/internal/cursor/github-credentials.js +3 -3
  164. package/dist/internal/cursor-account-mcp-auth.d.ts +1 -1
  165. package/dist/internal/cursor-account-mcp-auth.js +1 -1
  166. package/dist/internal/cursor-event-relay.js +1 -1
  167. package/dist/internal/cursor-relay-core.d.ts +1 -1
  168. package/dist/internal/cursor-relay-core.d.ts.map +1 -1
  169. package/dist/internal/cursor-slack-relay.js +1 -1
  170. package/dist/internal/deploy-client.d.ts +6 -1
  171. package/dist/internal/deploy-client.d.ts.map +1 -1
  172. package/dist/internal/deploy-client.js +3 -2
  173. package/dist/internal/deploy-source.d.ts +2 -2
  174. package/dist/internal/deploy-source.js +2 -2
  175. package/dist/internal/discovery.js +2 -2
  176. package/dist/internal/distribution.d.ts +5 -5
  177. package/dist/internal/distribution.d.ts.map +1 -1
  178. package/dist/internal/distribution.js +6 -6
  179. package/dist/internal/docs-site.js +5 -5
  180. package/dist/internal/eval-run-store.js +8 -8
  181. package/dist/internal/evals-client.d.ts +1 -1
  182. package/dist/internal/evals-client.js +1 -1
  183. package/dist/internal/github-fanout.js +2 -2
  184. package/dist/internal/host-files.d.ts +29 -0
  185. package/dist/internal/host-files.d.ts.map +1 -0
  186. package/dist/internal/host-files.js +283 -0
  187. package/dist/internal/host-platforms.js +5 -5
  188. package/dist/internal/hosting.d.ts +1 -1
  189. package/dist/internal/hosting.js +1 -1
  190. package/dist/internal/http-channel.d.ts.map +1 -1
  191. package/dist/internal/http-channel.js +26 -0
  192. package/dist/internal/install-cursor-skills.d.ts +1 -1
  193. package/dist/internal/install-cursor-skills.d.ts.map +1 -1
  194. package/dist/internal/install-cursor-skills.js +33 -4
  195. package/dist/internal/json-dir-store.d.ts +32 -0
  196. package/dist/internal/json-dir-store.d.ts.map +1 -0
  197. package/dist/internal/local-control-plane.js +2 -2
  198. package/dist/internal/logs-client.d.ts +2 -2
  199. package/dist/internal/logs-client.js +2 -2
  200. package/dist/internal/mcp-endpoint.js +1 -1
  201. package/dist/internal/mcp-oauth.js +2 -2
  202. package/dist/internal/persistence-coordinator.d.ts +127 -0
  203. package/dist/internal/persistence-coordinator.d.ts.map +1 -0
  204. package/dist/internal/platform-schedule-sync.js +2 -2
  205. package/dist/internal/playground/toolchain.js +6 -6
  206. package/dist/internal/reminder-runner.js +13 -13
  207. package/dist/internal/resolved-connections.js +6 -6
  208. package/dist/internal/schedule-runner.js +1 -1
  209. package/dist/internal/sdk-runner.js +5 -5
  210. package/dist/internal/server.js +16 -16
  211. package/dist/internal/session-cost.d.ts +3 -2
  212. package/dist/internal/session-cost.d.ts.map +1 -1
  213. package/dist/internal/session-cost.js +7 -6
  214. package/dist/internal/session-engine.d.ts +31 -1
  215. package/dist/internal/session-engine.d.ts.map +1 -1
  216. package/dist/internal/session-engine.js +119 -31
  217. package/dist/internal/slack-provision-client.js +1 -1
  218. package/dist/internal/storage-coordinator.js +7 -7
  219. package/dist/internal/trajectory.js +2 -2
  220. package/dist/internal/turn-cost.d.ts +27 -0
  221. package/dist/internal/turn-cost.d.ts.map +1 -0
  222. package/dist/internal/turn-cost.js +83 -0
  223. package/dist/internal/update-check.d.ts +3 -3
  224. package/dist/internal/update-check.d.ts.map +1 -1
  225. package/dist/internal/update-check.js +5 -5
  226. package/dist/memory.d.ts +1 -1
  227. package/dist/memory.js +1 -1
  228. package/dist/multi-tenant.d.ts +80 -0
  229. package/dist/multi-tenant.d.ts.map +1 -0
  230. package/dist/multi-tenant.js +69 -0
  231. package/dist/persistence.d.ts +184 -0
  232. package/dist/persistence.d.ts.map +1 -0
  233. package/dist/playground/assets/index-50PKeJlG.css +1 -0
  234. package/dist/playground/assets/index-C0f2Wl1q.js +85 -0
  235. package/dist/playground/index.html +2 -2
  236. package/dist/storage.d.ts +1 -1
  237. package/dist/storage.js +1 -1
  238. package/dist/types.d.ts +120 -16
  239. package/dist/types.d.ts.map +1 -1
  240. package/docs/README.md +23 -23
  241. package/docs/ab.md +12 -12
  242. package/docs/building-with-agents.md +9 -9
  243. package/docs/concepts.md +11 -11
  244. package/docs/deployment.md +55 -43
  245. package/docs/evals.md +20 -20
  246. package/docs/example-agents/approval-buddy.md +9 -9
  247. package/docs/example-agents/benny.md +13 -13
  248. package/docs/example-agents/bugbot.md +6 -6
  249. package/docs/example-agents/codebase-wiki.md +8 -8
  250. package/docs/example-agents/codeowners-review.md +8 -8
  251. package/docs/example-agents/concierge.md +10 -10
  252. package/docs/example-agents/fsd.md +7 -7
  253. package/docs/example-agents/index.md +8 -8
  254. package/docs/example-agents/knowledge-base.md +9 -9
  255. package/docs/example-agents/oncall.md +7 -7
  256. package/docs/example-agents/security-reviewer.md +12 -12
  257. package/docs/example-agents/slack-agent.md +10 -10
  258. package/docs/example-agents/weather-agent.md +30 -26
  259. package/docs/guides/agent-to-agent.md +4 -4
  260. package/docs/guides/cloud-runtime.md +3 -3
  261. package/docs/guides/github.md +6 -6
  262. package/docs/guides/human-in-the-loop.md +1 -1
  263. package/docs/guides/mcp-oauth.md +9 -9
  264. package/docs/guides/slack.md +94 -21
  265. package/docs/guides/webhooks.md +1 -1
  266. package/docs/hillclimbing.md +3 -3
  267. package/docs/quickstart.md +18 -18
  268. package/docs/reference/agent-config.md +1 -1
  269. package/docs/reference/cli.md +110 -79
  270. package/docs/reference/connections.md +3 -3
  271. package/docs/reference/http-api.md +2 -2
  272. package/docs/reference/project-layout.md +7 -7
  273. package/docs/reference/schedules.md +1 -1
  274. package/docs/reference/sessions.md +7 -7
  275. package/docs/reference/tools.md +3 -3
  276. package/docs/scaffolding-agents.md +2 -2
  277. package/docs/storage.md +5 -5
  278. package/docs/troubleshooting.md +11 -10
  279. package/package.json +5 -2
  280. package/skills/ab/SKILL.md +5 -5
  281. package/skills/create-agent/SKILL.md +17 -17
  282. package/skills/debug/SKILL.md +10 -10
  283. package/skills/evals/SKILL.md +13 -13
  284. package/skills/framework-map/SKILL.md +3 -3
  285. package/skills/github/SKILL.md +11 -11
  286. package/skills/hillclimb/SKILL.md +9 -9
  287. package/skills/mcp-auth/SKILL.md +11 -11
  288. package/skills/setup-slack/SKILL.md +28 -28
  289. package/src/bin/agent-serve.ts +4 -4
  290. package/src/channels/github/index.ts +1 -1
  291. package/src/channels/slack/bot-mentions.ts +1 -1
  292. package/src/channels/slack/eval-directive.ts +1 -1
  293. package/src/channels/slack/external-policy.ts +1 -1
  294. package/src/channels/slack/log.ts +1 -1
  295. package/src/channels/slack/setup.ts +1 -1
  296. package/src/channels/slack/socket-mode.ts +1 -1
  297. package/src/evals/reporters.ts +1 -1
  298. package/src/evals.ts +2 -2
  299. package/src/files-backends/agent-store-presigned-url.ts +8 -0
  300. package/src/files-backends/cursor-hosted.ts +724 -0
  301. package/src/files-backends/local-fs.ts +178 -0
  302. package/src/files.ts +195 -0
  303. package/src/internal/ab-collector.ts +2 -2
  304. package/src/internal/ab-fold.ts +1 -1
  305. package/src/internal/cli-ax.ts +2 -2
  306. package/src/internal/cli-deploy.ts +7 -2
  307. package/src/internal/cli-docs.ts +1 -1
  308. package/src/internal/cli-github.ts +13 -13
  309. package/src/internal/cli-mcp-oauth.ts +2 -2
  310. package/src/internal/cli-mcp.ts +4 -4
  311. package/src/internal/cli-skills.ts +1 -1
  312. package/src/internal/cloud-turn-cost.ts +20 -4
  313. package/src/internal/cursor/account-mcp.ts +5 -5
  314. package/src/internal/cursor/backend-client.ts +1 -1
  315. package/src/internal/cursor/github-credentials.ts +3 -3
  316. package/src/internal/cursor-account-mcp-auth.ts +1 -1
  317. package/src/internal/cursor-event-relay.ts +1 -1
  318. package/src/internal/cursor-relay-core.ts +1 -1
  319. package/src/internal/cursor-slack-relay.ts +1 -1
  320. package/src/internal/deploy-client.ts +8 -2
  321. package/src/internal/deploy-source.ts +2 -2
  322. package/src/internal/discovery.ts +2 -2
  323. package/src/internal/distribution.ts +6 -6
  324. package/src/internal/docs-site.ts +5 -5
  325. package/src/internal/eval-run-store.ts +8 -8
  326. package/src/internal/evals-client.ts +1 -1
  327. package/src/internal/github-fanout.ts +2 -2
  328. package/src/internal/host-files.ts +372 -0
  329. package/src/internal/host-platforms.ts +5 -5
  330. package/src/internal/hosting.ts +1 -1
  331. package/src/internal/http-channel.ts +30 -0
  332. package/src/internal/install-cursor-skills.ts +31 -3
  333. package/src/internal/local-control-plane.ts +2 -2
  334. package/src/internal/logs-client.ts +2 -2
  335. package/src/internal/mcp-endpoint.ts +1 -1
  336. package/src/internal/mcp-oauth.ts +2 -2
  337. package/src/internal/platform-schedule-sync.ts +2 -2
  338. package/src/internal/playground/toolchain.ts +6 -6
  339. package/src/internal/reminder-runner.ts +13 -13
  340. package/src/internal/resolved-connections.ts +6 -6
  341. package/src/internal/schedule-runner.ts +1 -1
  342. package/src/internal/sdk-runner.ts +5 -5
  343. package/src/internal/server.ts +16 -16
  344. package/src/internal/session-cost.ts +7 -6
  345. package/src/internal/session-engine.ts +141 -28
  346. package/src/internal/slack-provision-client.ts +1 -1
  347. package/src/internal/storage-coordinator.ts +7 -7
  348. package/src/internal/trajectory.ts +2 -2
  349. package/src/internal/turn-cost.ts +110 -0
  350. package/src/internal/update-check.ts +6 -6
  351. package/src/memory.ts +1 -1
  352. package/src/storage.ts +1 -1
  353. package/src/types.ts +148 -16
  354. package/dist/docs/assets/building-with-agents.md.CJCtZCyi.js +0 -13
  355. package/dist/docs/assets/chunks/@localSearchIndexroot.CbQshWFK.js +0 -1
  356. package/dist/docs/assets/concepts.md.Cfb9b-k1.js +0 -4
  357. package/dist/docs/assets/concepts.md.Cfb9b-k1.lean.js +0 -1
  358. package/dist/docs/assets/deployment.md.TecHo0_2.js +0 -55
  359. package/dist/docs/assets/deployment.md.TecHo0_2.lean.js +0 -1
  360. package/dist/docs/assets/evals.md.DYOjkRCX.lean.js +0 -1
  361. package/dist/docs/assets/example-agents_benny.md.B0gjhI-p.js +0 -7
  362. package/dist/docs/assets/example-agents_index.md.D2PEVSXl.js +0 -2
  363. package/dist/docs/assets/example-agents_index.md.D2PEVSXl.lean.js +0 -1
  364. package/dist/docs/assets/example-agents_oncall.md.BG_sUMly.js +0 -10
  365. package/dist/docs/assets/example-agents_slack-agent.md.buLbgvBf.js +0 -5
  366. package/dist/docs/assets/example-agents_weather-agent.md.C9Qv-W0o.js +0 -24
  367. package/dist/docs/assets/example-agents_weather-agent.md.C9Qv-W0o.lean.js +0 -1
  368. package/dist/docs/assets/guides_cloud-runtime.md.gVzabdQL.js +0 -9
  369. package/dist/docs/assets/guides_mcp-oauth.md.Dd8EgSem.lean.js +0 -1
  370. package/dist/docs/assets/guides_slack.md.CjmJSvZS.js +0 -42
  371. package/dist/docs/assets/guides_slack.md.CjmJSvZS.lean.js +0 -1
  372. package/dist/docs/assets/index.md.CH_s5uZe.js +0 -20
  373. package/dist/docs/assets/index.md.CH_s5uZe.lean.js +0 -1
  374. package/dist/docs/assets/reference_cli.md.ccoKOoXt.js +0 -65
  375. package/dist/docs/assets/reference_http-api.md.BncLd3PZ.js +0 -11
  376. package/dist/docs/assets/storage.md.DRTdnFvd.lean.js +0 -1
  377. package/dist/docs/assets/troubleshooting.md.CmQkmnzC.js +0 -1
  378. package/dist/internal/model-pricing.d.ts +0 -49
  379. package/dist/internal/model-pricing.d.ts.map +0 -1
  380. package/dist/internal/model-pricing.js +0 -377
  381. package/dist/playground/assets/index-CquRB-l0.js +0 -85
  382. package/dist/playground/assets/index-Dj0bWpkn.css +0 -1
  383. package/src/internal/model-pricing.ts +0 -426
  384. /package/dist/docs/assets/{example-agents_benny.md.B0gjhI-p.lean.js → example-agents_benny.md.2Et1qa8f.lean.js} +0 -0
  385. /package/dist/docs/assets/{example-agents_bugbot.md.DelIdhxB.lean.js → example-agents_bugbot.md.ByUexi5i.lean.js} +0 -0
  386. /package/dist/docs/assets/{example-agents_concierge.md.4rQTSMXt.lean.js → example-agents_concierge.md.lL8rhYlj.lean.js} +0 -0
  387. /package/dist/docs/assets/{example-agents_fsd.md.CzgUrDfi.lean.js → example-agents_fsd.md.DfNKQTHz.lean.js} +0 -0
  388. /package/dist/docs/assets/{example-agents_oncall.md.BG_sUMly.lean.js → example-agents_oncall.md.wFFXXEyW.lean.js} +0 -0
  389. /package/dist/docs/assets/{example-agents_security-reviewer.md.Dhj_m7_B.lean.js → example-agents_security-reviewer.md.Dkf1gyo6.lean.js} +0 -0
  390. /package/dist/docs/assets/{example-agents_slack-agent.md.buLbgvBf.lean.js → example-agents_slack-agent.md.DvgvT4nn.lean.js} +0 -0
  391. /package/dist/docs/assets/{guides_agent-to-agent.md.Bpzgq2Pq.lean.js → guides_agent-to-agent.md.Bmbxy-FA.lean.js} +0 -0
  392. /package/dist/docs/assets/{guides_cloud-runtime.md.gVzabdQL.lean.js → guides_cloud-runtime.md.BZ2GA7Es.lean.js} +0 -0
  393. /package/dist/docs/assets/{guides_github.md.DOOCpqsW.lean.js → guides_github.md.R2QlpR75.lean.js} +0 -0
  394. /package/dist/docs/assets/{guides_human-in-the-loop.md.DlUqsp1S.lean.js → guides_human-in-the-loop.md.BWvT7UqY.lean.js} +0 -0
  395. /package/dist/docs/assets/{guides_webhooks.md.wSOYas3X.lean.js → guides_webhooks.md.DiAwSR42.lean.js} +0 -0
  396. /package/dist/docs/assets/{hillclimbing.md.DHNast08.lean.js → hillclimbing.md.D9Y1_bYh.lean.js} +0 -0
  397. /package/dist/docs/assets/{quickstart.md.BU6Iwi_9.lean.js → quickstart.md.TnEXYgYW.lean.js} +0 -0
  398. /package/dist/docs/assets/{reference_agent-config.md.DrW2JUM8.lean.js → reference_agent-config.md.kuN6-OxK.lean.js} +0 -0
  399. /package/dist/docs/assets/{reference_connections.md.B9Q3TOve.lean.js → reference_connections.md.DGqAsFXb.lean.js} +0 -0
  400. /package/dist/docs/assets/{reference_http-api.md.BncLd3PZ.lean.js → reference_http-api.md.CfVM_ICa.lean.js} +0 -0
  401. /package/dist/docs/assets/{reference_schedules.md.w_F2mXB6.lean.js → reference_schedules.md.gmfYzf_I.lean.js} +0 -0
  402. /package/dist/docs/assets/{reference_sessions.md.DLd6mvbv.lean.js → reference_sessions.md.C_ouF_uf.lean.js} +0 -0
  403. /package/dist/docs/assets/{reference_tools.md.BRSDnTbN.lean.js → reference_tools.md.BswAQM41.lean.js} +0 -0
@@ -121,7 +121,7 @@ export class ReminderRunner {
121
121
  remote = await this.platformTimers.listReminders();
122
122
  } catch (error) {
123
123
  this.logger(
124
- `[agentkit] reminders: control-plane list failed: ${
124
+ `[agent-sdk] reminders: control-plane list failed: ${
125
125
  error instanceof Error ? error.message : String(error)
126
126
  }`
127
127
  );
@@ -146,7 +146,7 @@ export class ReminderRunner {
146
146
  }
147
147
  if (remote.length > 0 || disarmedOrphan > 0) {
148
148
  this.logger(
149
- `[agentkit] reminders: hydrated ${remote.length} reminder(s) from control plane` +
149
+ `[agent-sdk] reminders: hydrated ${remote.length} reminder(s) from control plane` +
150
150
  (disarmedOrphan > 0
151
151
  ? `; disarmed ${disarmedOrphan} without live handlers`
152
152
  : "")
@@ -181,7 +181,7 @@ export class ReminderRunner {
181
181
  }
182
182
  if (restored > 0 || disarmedOrphan > 0) {
183
183
  this.logger(
184
- `[agentkit] reminders: restored ${restored} armed reminder(s)` +
184
+ `[agent-sdk] reminders: restored ${restored} armed reminder(s)` +
185
185
  (disarmedOrphan > 0
186
186
  ? `; disarmed ${disarmedOrphan} without live handlers`
187
187
  : "")
@@ -208,7 +208,7 @@ export class ReminderRunner {
208
208
  return remote;
209
209
  } catch (error) {
210
210
  this.logger(
211
- `[agentkit] reminders: control-plane get failed for ${id}: ${
211
+ `[agent-sdk] reminders: control-plane get failed for ${id}: ${
212
212
  error instanceof Error ? error.message : String(error)
213
213
  }`
214
214
  );
@@ -228,7 +228,7 @@ export class ReminderRunner {
228
228
  }
229
229
  } catch (error) {
230
230
  this.logger(
231
- `[agentkit] reminders: control-plane list failed: ${
231
+ `[agent-sdk] reminders: control-plane list failed: ${
232
232
  error instanceof Error ? error.message : String(error)
233
233
  }`
234
234
  );
@@ -454,7 +454,7 @@ export class ReminderRunner {
454
454
  const timer = setTimeout(() => {
455
455
  void this.fire(record.id).catch(async (error) => {
456
456
  this.logger(
457
- `[agentkit] reminder "${record.id}" fire failed: ${
457
+ `[agent-sdk] reminder "${record.id}" fire failed: ${
458
458
  error instanceof Error ? error.message : String(error)
459
459
  }`
460
460
  );
@@ -472,7 +472,7 @@ export class ReminderRunner {
472
472
  await this.afterFire(current, "skip");
473
473
  } catch (rescheduleError) {
474
474
  this.logger(
475
- `[agentkit] reminder "${record.id}" reschedule after failure failed: ${
475
+ `[agent-sdk] reminder "${record.id}" reschedule after failure failed: ${
476
476
  rescheduleError instanceof Error
477
477
  ? rescheduleError.message
478
478
  : String(rescheduleError)
@@ -535,7 +535,7 @@ export class ReminderRunner {
535
535
  }
536
536
  } catch (error) {
537
537
  this.logger(
538
- `[agentkit] reminder "${id}" until() failed: ${
538
+ `[agent-sdk] reminder "${id}" until() failed: ${
539
539
  error instanceof Error ? error.message : String(error)
540
540
  }`
541
541
  );
@@ -548,7 +548,7 @@ export class ReminderRunner {
548
548
  if (record.busyPolicy === "skipIfBusy") {
549
549
  await this.afterFire(record, "skip");
550
550
  this.logger(
551
- `[agentkit] reminder "${id}" (${record.purpose}) skipped: session busy`
551
+ `[agent-sdk] reminder "${id}" (${record.purpose}) skipped: session busy`
552
552
  );
553
553
  return { outcome: "fired", reason: "skipped_busy" };
554
554
  }
@@ -576,7 +576,7 @@ export class ReminderRunner {
576
576
  if (latest !== undefined && latest.status === "armed") {
577
577
  await this.disarm(latest, "run_stop");
578
578
  this.logger(
579
- `[agentkit] reminder "${id}" (${record.purpose}) disarmed: run_stop`
579
+ `[agent-sdk] reminder "${id}" (${record.purpose}) disarmed: run_stop`
580
580
  );
581
581
  return { outcome: "fired", reason: "run_stop" };
582
582
  }
@@ -591,11 +591,11 @@ export class ReminderRunner {
591
591
 
592
592
  if (result.action === "skip") {
593
593
  await this.afterFire(latest, "skip", result.reschedule);
594
- this.logger(`[agentkit] reminder "${id}" (${record.purpose}) skipped`);
594
+ this.logger(`[agent-sdk] reminder "${id}" (${record.purpose}) skipped`);
595
595
  return { outcome: "fired", reason: "skipped" };
596
596
  }
597
597
  await this.afterFire(latest, "delivered", result.reschedule);
598
- this.logger(`[agentkit] reminder "${id}" (${record.purpose}) delivered`);
598
+ this.logger(`[agent-sdk] reminder "${id}" (${record.purpose}) delivered`);
599
599
  return { outcome: "fired", reason: "delivered" };
600
600
  } finally {
601
601
  this.firing.delete(id);
@@ -697,7 +697,7 @@ export class ReminderRunner {
697
697
  return { action: "delivered" };
698
698
  } catch (retryError) {
699
699
  this.logger(
700
- `[agentkit] reminder "${record.id}" followup failed after wait: ${
700
+ `[agent-sdk] reminder "${record.id}" followup failed after wait: ${
701
701
  retryError instanceof Error
702
702
  ? retryError.message
703
703
  : String(retryError)
@@ -47,7 +47,7 @@ export function validateMountConnectionsConfig(args: {
47
47
  return;
48
48
  }
49
49
  throw new Error(
50
- `[agentkit] agent "${label}" has Cursor account MCP connections with \`servers\` filters (${filteredRefs
50
+ `[agent-sdk] agent "${label}" has Cursor account MCP connections with \`servers\` filters (${filteredRefs
51
51
  .map((ref) => ref.name)
52
52
  .join(
53
53
  ", "
@@ -72,7 +72,7 @@ export function assertCloudCanHonorAccountServersFilters(args: {
72
72
  return;
73
73
  }
74
74
  throw new Error(
75
- `[agentkit] cloud turn cannot honor Cursor account \`servers\` filters (${blocked
75
+ `[agent-sdk] cloud turn cannot honor Cursor account \`servers\` filters (${blocked
76
76
  .map((connection) => connection.name)
77
77
  .join(
78
78
  ", "
@@ -98,7 +98,7 @@ export function assertAccountConnectionsNotAnonymous(args: {
98
98
  return;
99
99
  }
100
100
  throw new Error(
101
- "[agentkit] --allow-anonymous cannot be used with Cursor account MCP connections (defineConnection({ cursorAccount: true })); use --bearer-token, or opt in with --allow-anonymous-cursor-account-mcp behind a trusted boundary."
101
+ "[agent-sdk] --allow-anonymous cannot be used with Cursor account MCP connections (defineConnection({ cursorAccount: true })); use --bearer-token, or opt in with --allow-anonymous-cursor-account-mcp behind a trusted boundary."
102
102
  );
103
103
  }
104
104
 
@@ -128,7 +128,7 @@ export function resolveMountConnections(args: {
128
128
  .map((connection) => connection.name);
129
129
  if (hostOauthNames.length > 0) {
130
130
  args.logger(
131
- `[agentkit] warning: agent "${label}" has host-OAuth MCP connections (${hostOauthNames.join(
131
+ `[agent-sdk] warning: agent "${label}" has host-OAuth MCP connections (${hostOauthNames.join(
132
132
  ", "
133
133
  )}) whose tokens live on this serve host; cloud-runtime turns omit them. Mark them \`hostOnly: true\` and call them from host tools, or drop \`oauth\` and authorize the server another way.`
134
134
  );
@@ -145,7 +145,7 @@ export function resolveMountConnections(args: {
145
145
  resolved.push(...peers);
146
146
  if (cloudCapable && args.publicUrl === undefined) {
147
147
  args.logger(
148
- `[agentkit] warning: agent "${label}" has peer MCP connections (${peers
148
+ `[agent-sdk] warning: agent "${label}" has peer MCP connections (${peers
149
149
  .map((peer) => peer.name)
150
150
  .join(
151
151
  ", "
@@ -168,7 +168,7 @@ export function resolveMountConnections(args: {
168
168
  args.accountBridge.logPreflight(args.accountRefs);
169
169
  if (cloudCapable && args.publicUrl === undefined) {
170
170
  args.logger(
171
- `[agentkit] agent "${label}": cloud-runtime turns omit the account bridge without --public-url (cloud agents fall back to the account's native connectors).`
171
+ `[agent-sdk] agent "${label}": cloud-runtime turns omit the account bridge without --public-url (cloud agents fall back to the account's native connectors).`
172
172
  );
173
173
  }
174
174
  }
@@ -90,7 +90,7 @@ export class ScheduleRunner {
90
90
  if (schedule.cron.matches(now)) {
91
91
  void this.dispatch(schedule.name).catch((error) => {
92
92
  this.logger(
93
- `[agentkit] schedule "${schedule.name}" dispatch failed: ${
93
+ `[agent-sdk] schedule "${schedule.name}" dispatch failed: ${
94
94
  error instanceof Error ? error.message : String(error)
95
95
  }`
96
96
  );
@@ -155,7 +155,7 @@ export class CursorSdkRunner implements AgentRunner {
155
155
  // excluded: their token was exchanged moments ago, so the credential
156
156
  // itself is the problem and a retry cannot succeed.
157
157
  this.log(
158
- `[agentkit] session ${request.sessionId}: retrying the turn on a fresh SDK agent handle after an authentication failure`
158
+ `[agent-sdk] session ${request.sessionId}: retrying the turn on a fresh SDK agent handle after an authentication failure`
159
159
  );
160
160
  try {
161
161
  return await this.runTurnAttempt(tracked);
@@ -294,7 +294,7 @@ export class CursorSdkRunner implements AgentRunner {
294
294
  // Past this age the handle's exchanged access token could expire
295
295
  // mid-turn. Retire it and reopen below on a fresh transport.
296
296
  this.log(
297
- `[agentkit] session ${request.sessionId}: recycling the SDK agent handle after ${Math.round(ageMs / 60_000)} min so the turn runs on a fresh access token`
297
+ `[agent-sdk] session ${request.sessionId}: recycling the SDK agent handle after ${Math.round(ageMs / 60_000)} min so the turn runs on a fresh access token`
298
298
  );
299
299
  this.evictAgent(request.sessionId, cached.agent);
300
300
  }
@@ -404,7 +404,7 @@ export class CursorSdkRunner implements AgentRunner {
404
404
  // forever ("Agent … not found" on every follow-up). The channel's
405
405
  // warm-turn prompt context re-hydrates the thread history.
406
406
  this.log(
407
- `[agentkit] no stored conversation for ${agentId} on this host; starting a fresh one`
407
+ `[agent-sdk] no stored conversation for ${agentId} on this host; starting a fresh one`
408
408
  );
409
409
  return Agent.create({ ...options, agentId });
410
410
  }
@@ -450,7 +450,7 @@ export class CursorSdkRunner implements AgentRunner {
450
450
  // host-replacement path above: a fresh conversation beats failing this
451
451
  // thread forever, and the new id binds to the session for later resumes.
452
452
  this.log(
453
- `[agentkit] cloud session ${request.sessionId} has no bound cloud agent; creating a fresh one`
453
+ `[agent-sdk] cloud session ${request.sessionId} has no bound cloud agent; creating a fresh one`
454
454
  );
455
455
  return Agent.create(options);
456
456
  }
@@ -569,7 +569,7 @@ const CLOUD_USAGE_RETRY_DELAYS_MS = [0, 400, 1200] as const;
569
569
 
570
570
  /**
571
571
  * Cloud `wait()` often omits usage after a stream drop. Pull the run's
572
- * tokens from the usage API so the engine can still estimate cost.
572
+ * tokens from the usage API so the engine can still price the turn.
573
573
  * Failures are ignored: a missing estimate is better than failing the turn.
574
574
  */
575
575
  async function fillMissingCloudUsage(
@@ -251,12 +251,12 @@ export async function startServer(
251
251
  );
252
252
  }
253
253
  logger(
254
- "[agentkit] warning: --allow-anonymous-cursor-github — every admitted HTTP caller can drive sessions holding the signed-in account's repo-scoped GitHub credential; serve this only behind a trusted boundary (e.g. an SSO proxy)"
254
+ "[agent-sdk] warning: --allow-anonymous-cursor-github — every admitted HTTP caller can drive sessions holding the signed-in account's repo-scoped GitHub credential; serve this only behind a trusted boundary (e.g. an SSO proxy)"
255
255
  );
256
256
  }
257
257
  if (cursorGithubConfig.scope.permissions === "contents-write") {
258
258
  logger(
259
- '[agentkit] warning: Cursor GitHub credentials include contents:write — the host holds a push-capable token shared with model-driven tools and untrusted webhook content; prefer permissions: "pr-write" unless this agent must push code'
259
+ '[agent-sdk] warning: Cursor GitHub credentials include contents:write — the host holds a push-capable token shared with model-driven tools and untrusted webhook content; prefer permissions: "pr-write" unless this agent must push code'
260
260
  );
261
261
  }
262
262
  const provider = new CursorGithubCredentialProvider({
@@ -292,7 +292,7 @@ export async function startServer(
292
292
  target.accountRuntime.credentials.bindProxyTransport(proxyTransport);
293
293
  }
294
294
  logger(
295
- `[agentkit] GitHub auth: channel API calls route through ${githubProxyUrl}`
295
+ `[agent-sdk] GitHub auth: channel API calls route through ${githubProxyUrl}`
296
296
  );
297
297
  } else {
298
298
  for (const target of cursorGithubTargets) {
@@ -325,7 +325,7 @@ export async function startServer(
325
325
  }
326
326
  if (options.allowAnonymous === true) {
327
327
  logger(
328
- "[agentkit] warning: --allow-anonymous admits every HTTP caller as the same principal; use only on a trusted network (e.g. Tailscale) and prefer --bearer-token for shared hosts"
328
+ "[agent-sdk] warning: --allow-anonymous admits every HTTP caller as the same principal; use only on a trusted network (e.g. Tailscale) and prefer --bearer-token for shared hosts"
329
329
  );
330
330
  }
331
331
  const runner =
@@ -361,7 +361,7 @@ export async function startServer(
361
361
  accountRefsBySlug.size > 0
362
362
  ) {
363
363
  logger(
364
- "[agentkit] warning: --allow-anonymous-cursor-account-mcp — every admitted HTTP caller can drive Cursor account MCP connectors; serve this only behind a trusted boundary (e.g. an SSO proxy or hosted alias token)"
364
+ "[agent-sdk] warning: --allow-anonymous-cursor-account-mcp — every admitted HTTP caller can drive Cursor account MCP connectors; serve this only behind a trusted boundary (e.g. an SSO proxy or hosted alias token)"
365
365
  );
366
366
  }
367
367
  let accountBridge: CursorAccountMcpBridge | undefined;
@@ -529,7 +529,7 @@ export async function startServer(
529
529
  await definition.onStart(startArgs);
530
530
  } catch (error) {
531
531
  logger(
532
- `[agentkit] channel "${channel.id}" onStart failed: ${
532
+ `[agent-sdk] channel "${channel.id}" onStart failed: ${
533
533
  error instanceof Error
534
534
  ? (error.stack ?? error.message)
535
535
  : String(error)
@@ -853,7 +853,7 @@ export async function startServer(
853
853
  await stop();
854
854
  } catch (error) {
855
855
  logger(
856
- `[agentkit] channel onStop failed: ${
856
+ `[agent-sdk] channel onStop failed: ${
857
857
  error instanceof Error
858
858
  ? (error.stack ?? error.message)
859
859
  : String(error)
@@ -1605,7 +1605,7 @@ function requireCursorEventsAuth(
1605
1605
  const apiKey = (config.apiKey ?? accountKey?.apiKey ?? "").trim();
1606
1606
  if (apiKey === "") {
1607
1607
  throw new Error(
1608
- `[agentkit] --cursor-events (serve({ cursorEvents })) requires a signed-in Cursor account: the SCM event stream is read as the host's user. ${SIGN_IN_HINT}`
1608
+ `[agent-sdk] --cursor-events (serve({ cursorEvents })) requires a signed-in Cursor account: the SCM event stream is read as the host's user. ${SIGN_IN_HINT}`
1609
1609
  );
1610
1610
  }
1611
1611
  return {
@@ -1641,7 +1641,7 @@ function startCursorEventRelay(input: {
1641
1641
  );
1642
1642
  if (repos.length === 0) {
1643
1643
  logger(
1644
- "[agentkit] cursor-events: no repos configured (pass --repo owner/name); relay disabled"
1644
+ "[agent-sdk] cursor-events: no repos configured (pass --repo owner/name); relay disabled"
1645
1645
  );
1646
1646
  return undefined;
1647
1647
  }
@@ -1649,7 +1649,7 @@ function startCursorEventRelay(input: {
1649
1649
  const events = [...new Set(githubTargets.flatMap((target) => target.events))];
1650
1650
  if (events.length === 0) {
1651
1651
  logger(
1652
- "[agentkit] cursor-events: no mounted agent declares a github channel; relay disabled"
1652
+ "[agent-sdk] cursor-events: no mounted agent declares a github channel; relay disabled"
1653
1653
  );
1654
1654
  return undefined;
1655
1655
  }
@@ -1693,13 +1693,13 @@ function startCursorEventRelay(input: {
1693
1693
  .map((target) => `${target.slug || "default"}:${target.status}`)
1694
1694
  .join(", ");
1695
1695
  logger(
1696
- `[agentkit] cursor-events: dispatched ${formatCursorScmEventLog(event)}${outcomes === "" ? "" : ` → ${outcomes}`}`
1696
+ `[agent-sdk] cursor-events: dispatched ${formatCursorScmEventLog(event)}${outcomes === "" ? "" : ` → ${outcomes}`}`
1697
1697
  );
1698
1698
  },
1699
1699
  });
1700
1700
  relay.start();
1701
1701
  logger(
1702
- `[agentkit] cursor-events: relaying ${events.length} event kind(s) for ${repos.join(", ")} from ${auth.baseUrl}`
1702
+ `[agent-sdk] cursor-events: relaying ${events.length} event kind(s) for ${repos.join(", ")} from ${auth.baseUrl}`
1703
1703
  );
1704
1704
  return relay;
1705
1705
  }
@@ -1891,7 +1891,7 @@ async function startCursorSlackRelay(input: {
1891
1891
  channelId: target.channelId,
1892
1892
  });
1893
1893
  logger(
1894
- `[agentkit] cursor-slack: dispatching ${formatCursorSlackEventLog(envelope)} → ${target.runtime.slug || "default"}`
1894
+ `[agent-sdk] cursor-slack: dispatching ${formatCursorSlackEventLog(envelope)} → ${target.runtime.slug || "default"}`
1895
1895
  );
1896
1896
  await dispatchCursorSlackEnvelope({
1897
1897
  runtime: target.accountRuntime,
@@ -1940,7 +1940,7 @@ async function startCursorSlackRelay(input: {
1940
1940
 
1941
1941
  relay.start();
1942
1942
  logger(
1943
- `[agentkit] cursor-slack: relaying Slack for ${targets
1943
+ `[agent-sdk] cursor-slack: relaying Slack for ${targets
1944
1944
  .map(
1945
1945
  (target) => `${target.agentName} (${target.runtime.slug || "default"})`
1946
1946
  )
@@ -2037,7 +2037,7 @@ async function handleRequest(
2037
2037
  response = errorResponse(403, "forbidden", error.message);
2038
2038
  } else {
2039
2039
  logger(
2040
- `[agentkit] request failed: ${
2040
+ `[agent-sdk] request failed: ${
2041
2041
  error instanceof Error
2042
2042
  ? (error.stack ?? error.message)
2043
2043
  : String(error)
@@ -2051,7 +2051,7 @@ async function handleRequest(
2051
2051
  await writeFetchResponse(response, res, method);
2052
2052
  } catch (error) {
2053
2053
  logger(
2054
- `[agentkit] response write failed: ${
2054
+ `[agent-sdk] response write failed: ${
2055
2055
  error instanceof Error ? error.message : String(error)
2056
2056
  }`
2057
2057
  );
@@ -3,8 +3,9 @@
3
3
  *
4
4
  * Powers `agent-serve cost [sessionId]`: each `turn.completed` event carries
5
5
  * the turn's token usage and the estimated dollar cost recorded by the
6
- * engine (see `model-pricing.ts`), so a session's spend is a pure fold over
7
- * its `events.ndjson` no server-side aggregation required.
6
+ * engine via `POST /v1/models/estimate-cost`, so a session's spend is a
7
+ * pure fold over its `events.ndjson`. `GET /v1/session/:id/cost` is the
8
+ * live billed total.
8
9
  */
9
10
 
10
11
  import type { SessionEvent, TurnCost, TurnUsage } from "../types.js";
@@ -118,7 +119,7 @@ function formatCount(value: number): string {
118
119
  export function formatSessionCostText(report: SessionCostReport): string {
119
120
  const lines: string[] = [];
120
121
  lines.push(
121
- `session ${report.sessionId || "(unknown)"} est. cost: ${formatCostUsd(report.totals.costUsd)}`
122
+ `session ${report.sessionId || "(unknown)"} cost: ${formatCostUsd(report.totals.costUsd)}`
122
123
  );
123
124
  if (report.turns.length === 0) {
124
125
  lines.push("No turns recorded.");
@@ -130,7 +131,7 @@ export function formatSessionCostText(report: SessionCostReport): string {
130
131
  "OUT",
131
132
  "CACHE R",
132
133
  "CACHE W",
133
- "EST COST",
134
+ "COST",
134
135
  "MODEL",
135
136
  "STATUS",
136
137
  ];
@@ -180,7 +181,7 @@ export function formatSessionsCostText(rows: SessionCostRow[]): string {
180
181
  "TURNS",
181
182
  "IN",
182
183
  "OUT",
183
- "EST COST",
184
+ "COST",
184
185
  "UPDATED",
185
186
  ];
186
187
  const totals = emptySessionCostTotals();
@@ -213,7 +214,7 @@ export function formatSessionsCostText(rows: SessionCostRow[]): string {
213
214
  function appendUnpricedNote(lines: string[], unpricedTurns: number): void {
214
215
  if (unpricedTurns > 0) {
215
216
  lines.push(
216
- `note: ${unpricedTurns} turn(s) reported usage for a model with no known rates; est. cost excludes them.`
217
+ `note: ${unpricedTurns} turn(s) reported usage with no priced cost; cost totals exclude them.`
217
218
  );
218
219
  }
219
220
  }