@cursor/july 0.1.109 → 0.1.111
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +1 -1
- package/README.md +0 -15
- package/dist/bin/agent-serve.js +81 -66
- package/dist/channels/bitbucket/api.js +8 -8
- package/dist/channels/bitbucket/binding.js +4 -4
- package/dist/channels/bitbucket/bitbucket-channel.js +1 -1
- package/dist/channels/bitbucket/bitbucket-webhook.js +1 -1
- package/dist/channels/bitbucket/checks.d.ts.map +1 -1
- package/dist/channels/bitbucket/checks.js +1 -1
- package/dist/channels/bitbucket/cursor-account.js +1 -1
- package/dist/channels/bitbucket/events.js +1 -1
- package/dist/channels/change-monitors/change-monitors-channel.js +1 -1
- package/dist/channels/checks.d.ts.map +1 -1
- package/dist/channels/checks.js +2 -2
- package/dist/channels/deployments/deployments-channel.js +1 -1
- package/dist/channels/github/cursor-account.js +3 -3
- package/dist/channels/github/defaults.d.ts.map +1 -1
- package/dist/channels/github/defaults.js +5 -3
- package/dist/channels/github/events.js +1 -1
- package/dist/channels/github/forward.js +8 -8
- package/dist/channels/github/github-channel.d.ts.map +1 -1
- package/dist/channels/github/github-channel.js +17 -13
- package/dist/channels/github/progress.d.ts.map +1 -1
- package/dist/channels/github/progress.js +7 -2
- package/dist/channels/github/state.d.ts +6 -0
- package/dist/channels/github/state.d.ts.map +1 -1
- package/dist/channels/github/types.d.ts +6 -0
- package/dist/channels/github/types.d.ts.map +1 -1
- package/dist/channels/gitlab/binding.js +4 -4
- package/dist/channels/gitlab/checks.d.ts.map +1 -1
- package/dist/channels/gitlab/checks.js +1 -1
- package/dist/channels/gitlab/cursor-account.js +1 -1
- package/dist/channels/gitlab/events.js +1 -1
- package/dist/channels/gitlab/gitlab-channel.js +1 -1
- package/dist/channels/gitlab/gitlab-webhook.js +1 -1
- package/dist/channels/gitlab/replay.js +2 -2
- package/dist/channels/origin/binding.d.ts +2 -0
- package/dist/channels/origin/binding.d.ts.map +1 -1
- package/dist/channels/origin/binding.js +3 -3
- package/dist/channels/origin/checks.d.ts +19 -7
- package/dist/channels/origin/checks.d.ts.map +1 -1
- package/dist/channels/origin/checks.js +13 -9
- package/dist/channels/origin/cursor-account.js +1 -1
- package/dist/channels/origin/defaults.d.ts.map +1 -1
- package/dist/channels/origin/defaults.js +3 -1
- package/dist/channels/origin/events.js +1 -1
- package/dist/channels/origin/origin-channel.d.ts.map +1 -1
- package/dist/channels/origin/origin-channel.js +2 -1
- package/dist/channels/origin/origin-webhook.js +2 -2
- package/dist/channels/slack/agentic-delivery.d.ts +23 -0
- package/dist/channels/slack/agentic-delivery.d.ts.map +1 -0
- package/dist/channels/slack/agentic-delivery.js +558 -0
- package/dist/channels/slack/agentic-posted.d.ts +30 -0
- package/dist/channels/slack/agentic-posted.d.ts.map +1 -0
- package/dist/channels/slack/agentic-posted.js +102 -0
- package/dist/channels/slack/agentic-signals.d.ts +48 -0
- package/dist/channels/slack/agentic-signals.d.ts.map +1 -0
- package/dist/channels/slack/agentic-signals.js +204 -0
- package/dist/channels/slack/api.d.ts +20 -1
- package/dist/channels/slack/api.d.ts.map +1 -1
- package/dist/channels/slack/api.js +43 -11
- package/dist/channels/slack/approvals.js +1 -1
- package/dist/channels/slack/auth.d.ts.map +1 -1
- package/dist/channels/slack/auth.js +3 -1
- package/dist/channels/slack/blocks.js +3 -3
- package/dist/channels/slack/bot-mentions.d.ts.map +1 -1
- package/dist/channels/slack/bot-mentions.js +5 -5
- package/dist/channels/slack/channel-watch.js +1 -1
- package/dist/channels/slack/cli-project.js +3 -3
- package/dist/channels/slack/defaults.d.ts +3 -0
- package/dist/channels/slack/defaults.d.ts.map +1 -1
- package/dist/channels/slack/defaults.js +90 -29
- package/dist/channels/slack/dispatch.d.ts +34 -1
- package/dist/channels/slack/dispatch.d.ts.map +1 -1
- package/dist/channels/slack/dispatch.js +219 -106
- package/dist/channels/slack/doctor.js +1 -1
- package/dist/channels/slack/eval-directive.js +1 -1
- package/dist/channels/slack/external-policy.d.ts +2 -1
- package/dist/channels/slack/external-policy.d.ts.map +1 -1
- package/dist/channels/slack/external-policy.js +13 -2
- package/dist/channels/slack/footer.d.ts +30 -0
- package/dist/channels/slack/footer.d.ts.map +1 -0
- package/dist/channels/slack/footer.js +88 -0
- package/dist/channels/slack/index.d.ts +2 -0
- package/dist/channels/slack/index.d.ts.map +1 -1
- package/dist/channels/slack/index.js +2 -0
- package/dist/channels/slack/interactive.d.ts.map +1 -1
- package/dist/channels/slack/interactive.js +5 -3
- package/dist/channels/slack/live-delivery.d.ts +1 -1
- package/dist/channels/slack/live-delivery.d.ts.map +1 -1
- package/dist/channels/slack/live-delivery.js +20 -6
- package/dist/channels/slack/log.d.ts.map +1 -1
- package/dist/channels/slack/log.js +1 -1
- package/dist/channels/slack/manifest.js +1 -1
- package/dist/channels/slack/nudge-carrier.js +1 -1
- package/dist/channels/slack/nudge-store.js +2 -2
- package/dist/channels/slack/paint-start.d.ts +22 -0
- package/dist/channels/slack/paint-start.d.ts.map +1 -0
- package/dist/channels/slack/paint-start.js +91 -0
- package/dist/channels/slack/placeholder.d.ts +36 -0
- package/dist/channels/slack/placeholder.d.ts.map +1 -0
- package/dist/channels/slack/placeholder.js +240 -0
- package/dist/channels/slack/progress-delivery.d.ts.map +1 -1
- package/dist/channels/slack/progress-delivery.js +13 -4
- package/dist/channels/slack/reasoning-chip.d.ts +8 -0
- package/dist/channels/slack/reasoning-chip.d.ts.map +1 -0
- package/dist/channels/slack/reasoning-chip.js +30 -0
- package/dist/channels/slack/recording-sink.d.ts +29 -0
- package/dist/channels/slack/recording-sink.d.ts.map +1 -0
- package/dist/channels/slack/recording-sink.js +142 -0
- package/dist/channels/slack/reply-options.d.ts +8 -1
- package/dist/channels/slack/reply-options.d.ts.map +1 -1
- package/dist/channels/slack/reply-options.js +59 -14
- package/dist/channels/slack/setup.js +1 -1
- package/dist/channels/slack/slack-channel.d.ts +2 -2
- package/dist/channels/slack/slack-channel.d.ts.map +1 -1
- package/dist/channels/slack/slack-channel.js +55 -20
- package/dist/channels/slack/socket-mode.js +2 -2
- package/dist/channels/slack/thread-context.js +5 -5
- package/dist/channels/slack/tool-approval-events.d.ts +5 -0
- package/dist/channels/slack/tool-approval-events.d.ts.map +1 -1
- package/dist/channels/slack/tool-approval-events.js +50 -38
- package/dist/channels/slack/tool-cards.js +1 -1
- package/dist/channels/slack/tool-chip.d.ts +9 -0
- package/dist/channels/slack/tool-chip.d.ts.map +1 -0
- package/dist/channels/slack/tool-chip.js +25 -0
- package/dist/channels/slack/types.d.ts +49 -7
- package/dist/channels/slack/types.d.ts.map +1 -1
- package/dist/channels/slack/upload.d.ts +13 -0
- package/dist/channels/slack/upload.d.ts.map +1 -0
- package/dist/channels/slack/upload.js +135 -0
- package/dist/channels.d.ts +10 -14
- package/dist/channels.d.ts.map +1 -1
- package/dist/channels.js +9 -21
- package/dist/dashboard-session-url.d.ts +15 -0
- package/dist/dashboard-session-url.d.ts.map +1 -0
- package/dist/dashboard-session-url.js +25 -0
- package/dist/docs/404.html +3 -3
- package/dist/docs/architecture.svg +59 -0
- package/dist/docs/assets/app.Drol6mi6.js +309 -0
- package/dist/docs/assets/{building-with-agents.md.D0KbSkJn.js → building-with-agents.md.CEGVXkmO.js} +2 -2
- package/dist/docs/assets/{building-with-agents.md.D0KbSkJn.lean.js → building-with-agents.md.CEGVXkmO.lean.js} +1 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.DtXk1hy-.js +1 -0
- package/dist/docs/assets/chunks/{VPLocalSearchBox.CVQERt56.js → VPLocalSearchBox.CdqoBZJX.js} +2 -2
- package/dist/docs/assets/chunks/arc.BVX3ycTn.js +1 -0
- package/dist/docs/assets/chunks/architectureDiagram-Q4EWVU46.CcChnMxX.js +36 -0
- package/dist/docs/assets/chunks/baseUniq.xwtXO-yt.js +1 -0
- package/dist/docs/assets/chunks/blockDiagram-DXYQGD6D.CijZ_taK.js +132 -0
- package/dist/docs/assets/chunks/c4Diagram-AHTNJAMY.0FBvwBvK.js +10 -0
- package/dist/docs/assets/chunks/channel.Bkv1N-gK.js +1 -0
- package/dist/docs/assets/chunks/chunk-4BX2VUAB.CELMmMDA.js +1 -0
- package/dist/docs/assets/chunks/chunk-4TB4RGXK.C4bhFtSm.js +206 -0
- package/dist/docs/assets/chunks/chunk-55IACEB6.ZnQ9gRRQ.js +1 -0
- package/dist/docs/assets/chunks/chunk-EDXVE4YY.DPlmglG-.js +1 -0
- package/dist/docs/assets/chunks/chunk-FMBD7UC4.BrUk8pff.js +15 -0
- package/dist/docs/assets/chunks/chunk-OYMX7WX6.CcmWIncu.js +231 -0
- package/dist/docs/assets/chunks/chunk-QZHKN3VN.D65-cs8I.js +1 -0
- package/dist/docs/assets/chunks/chunk-YZCP3GAM.qoXZpG9F.js +1 -0
- package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.CZDco1o8.js +1 -0
- package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.CZDco1o8.js +1 -0
- package/dist/docs/assets/chunks/clone.YSt_40_s.js +1 -0
- package/dist/docs/assets/chunks/cose-bilkent-S5V4N54A.8rYtqudO.js +1 -0
- package/dist/docs/assets/chunks/cytoscape.esm.BQk4lpUV.js +331 -0
- package/dist/docs/assets/chunks/dagre-KV5264BT.DrRP1fOh.js +4 -0
- package/dist/docs/assets/chunks/defaultLocale.C4B-KCzX.js +1 -0
- package/dist/docs/assets/chunks/diagram-5BDNPKRD.DHj_xA2_.js +10 -0
- package/dist/docs/assets/chunks/diagram-G4DWMVQ6.Bz_6nAKj.js +24 -0
- package/dist/docs/assets/chunks/diagram-MMDJMWI5.BWA0xSW9.js +43 -0
- package/dist/docs/assets/chunks/diagram-TYMM5635.CpTJLNJI.js +24 -0
- package/dist/docs/assets/chunks/erDiagram-SMLLAGMA.-7AWWSrP.js +85 -0
- package/dist/docs/assets/chunks/flowDiagram-DWJPFMVM.BTnQ742_.js +162 -0
- package/dist/docs/assets/chunks/framework.dypDpWZ3.js +19 -0
- package/dist/docs/assets/chunks/ganttDiagram-T4ZO3ILL.B5_HiiQ5.js +292 -0
- package/dist/docs/assets/chunks/gitGraphDiagram-UUTBAWPF.CZcNTFZd.js +106 -0
- package/dist/docs/assets/chunks/graph.V2GLaab4.js +1 -0
- package/dist/docs/assets/chunks/infoDiagram-42DDH7IO.7pZOkCCU.js +2 -0
- package/dist/docs/assets/chunks/init.Gi6I4Gst.js +1 -0
- package/dist/docs/assets/chunks/ishikawaDiagram-UXIWVN3A.DSMo3Qa3.js +70 -0
- package/dist/docs/assets/chunks/journeyDiagram-VCZTEJTY.BNEgWN1S.js +139 -0
- package/dist/docs/assets/chunks/kanban-definition-6JOO6SKY.B-4d4tC7.js +89 -0
- package/dist/docs/assets/chunks/katex.DkKDou_j.js +257 -0
- package/dist/docs/assets/chunks/layout.Dvbn9nSb.js +1 -0
- package/dist/docs/assets/chunks/linear.D2GM4p4b.js +1 -0
- package/dist/docs/assets/chunks/min.DVBtLK-B.js +1 -0
- package/dist/docs/assets/chunks/mindmap-definition-QFDTVHPH.CnJRI55x.js +96 -0
- package/dist/docs/assets/chunks/ordinal.DBvzRdQf.js +1 -0
- package/dist/docs/assets/chunks/pieDiagram-DEJITSTG.CtoaTFlA.js +30 -0
- package/dist/docs/assets/chunks/quadrantDiagram-34T5L4WZ.DtT24_vN.js +7 -0
- package/dist/docs/assets/chunks/requirementDiagram-MS252O5E.CjSO4o8f.js +84 -0
- package/dist/docs/assets/chunks/sankeyDiagram-XADWPNL6.-wWiIVWa.js +10 -0
- package/dist/docs/assets/chunks/sequenceDiagram-FGHM5R23.DSk8s4gX.js +157 -0
- package/dist/docs/assets/chunks/stateDiagram-FHFEXIEX.BFKAsdkN.js +1 -0
- package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.C4CLm481.js +1 -0
- package/dist/docs/assets/chunks/{theme.Dnsd3XOn.js → theme.C0MctGaz.js} +2 -2
- package/dist/docs/assets/chunks/timeline-definition-GMOUNBTQ.TUNJbAFe.js +120 -0
- package/dist/docs/assets/chunks/vennDiagram-DHZGUBPP.C-RGNnk4.js +34 -0
- package/dist/docs/assets/chunks/virtual_mermaid-config.DDnGl6nM.js +1 -0
- package/dist/docs/assets/chunks/wardley-RL74JXVD.g5efOWmT.js +162 -0
- package/dist/docs/assets/chunks/wardleyDiagram-NUSXRM2D.DH4zt73Y.js +20 -0
- package/dist/docs/assets/chunks/xychartDiagram-5P7HB3ND.B-3k6bF6.js +7 -0
- package/dist/docs/assets/{deployment.md.JenwuCCB.js → deployment.md.Dm4Qo3hp.js} +5 -5
- package/dist/docs/assets/{deployment.md.JenwuCCB.lean.js → deployment.md.Dm4Qo3hp.lean.js} +1 -1
- package/dist/docs/assets/{evals.md.C7JLjoEP.js → evals.md.BLDRt5LH.js} +4 -4
- package/dist/docs/assets/{evals.md.C7JLjoEP.lean.js → evals.md.BLDRt5LH.lean.js} +1 -1
- package/dist/docs/assets/guides_agent-to-agent.md.BI0xclmy.js +14 -0
- package/dist/docs/assets/guides_agent-to-agent.md.BI0xclmy.lean.js +1 -0
- package/dist/docs/assets/{guides_bitbucket.md.DZPzmUjU.js → guides_bitbucket.md.CTpCl__f.js} +1 -1
- package/dist/docs/assets/{guides_bitbucket.md.DZPzmUjU.lean.js → guides_bitbucket.md.CTpCl__f.lean.js} +1 -1
- package/dist/docs/assets/{guides_cloud-agents.md.BsloyHdY.js → guides_cloud-agents.md.lSE_l7lH.js} +2 -2
- package/dist/docs/assets/{guides_cloud-agents.md.BsloyHdY.lean.js → guides_cloud-agents.md.lSE_l7lH.lean.js} +1 -1
- package/dist/docs/assets/{guides_convert-automation.md.B4sjlodG.js → guides_convert-automation.md.Ck6Cr68A.js} +1 -1
- package/dist/docs/assets/{guides_convert-automation.md.B4sjlodG.lean.js → guides_convert-automation.md.Ck6Cr68A.lean.js} +1 -1
- package/dist/docs/assets/{guides_github.md.TZaTZlfz.js → guides_github.md.D6ER29dG.js} +1 -1
- package/dist/docs/assets/{guides_github.md.TZaTZlfz.lean.js → guides_github.md.D6ER29dG.lean.js} +1 -1
- package/dist/docs/assets/{guides_gitlab.md.BmqwQfdG.js → guides_gitlab.md.P-TjBnS5.js} +1 -1
- package/dist/docs/assets/{guides_gitlab.md.BmqwQfdG.lean.js → guides_gitlab.md.P-TjBnS5.lean.js} +1 -1
- package/dist/docs/assets/guides_grokbot-agents.md.WBZIOvkz.js +9 -0
- package/dist/docs/assets/{guides_grokbot-agents.md.DyV-WArv.lean.js → guides_grokbot-agents.md.WBZIOvkz.lean.js} +1 -1
- package/dist/docs/assets/{guides_improve.md.BGVk32bK.js → guides_improve.md.BKaDuKKK.js} +1 -1
- package/dist/docs/assets/{guides_improve.md.BGVk32bK.lean.js → guides_improve.md.BKaDuKKK.lean.js} +1 -1
- package/dist/docs/assets/{guides_mcp-oauth.md.Dp6cDP7f.js → guides_mcp-oauth.md.DMNMpXtO.js} +1 -1
- package/dist/docs/assets/{guides_mcp-oauth.md.Dp6cDP7f.lean.js → guides_mcp-oauth.md.DMNMpXtO.lean.js} +1 -1
- package/dist/docs/assets/{guides_opentelemetry.md.SCRMskno.js → guides_opentelemetry.md._CRfDyzH.js} +14 -14
- package/dist/docs/assets/{guides_opentelemetry.md.SCRMskno.lean.js → guides_opentelemetry.md._CRfDyzH.lean.js} +1 -1
- package/dist/docs/assets/{guides_slack.md.D4RVMM4G.js → guides_slack.md.DdT8rmsj.js} +12 -4
- package/dist/docs/assets/{guides_slack.md.D4RVMM4G.lean.js → guides_slack.md.DdT8rmsj.lean.js} +1 -1
- package/dist/docs/assets/{guides_webhooks.md.CJK484ex.js → guides_webhooks.md.aQW10HRe.js} +2 -2
- package/dist/docs/assets/{guides_webhooks.md.CJK484ex.lean.js → guides_webhooks.md.aQW10HRe.lean.js} +1 -1
- package/dist/docs/assets/hillclimbing.md.Dq4kkVIL.js +1 -0
- package/dist/docs/assets/hillclimbing.md.Dq4kkVIL.lean.js +1 -0
- package/dist/docs/assets/index.md.BFVyY2KT.js +17 -0
- package/dist/docs/assets/index.md.BFVyY2KT.lean.js +1 -0
- package/dist/docs/assets/{quickstart.md.DdQOF7Y8.js → quickstart.md.D3MjSZN-.js} +30 -38
- package/dist/docs/assets/quickstart.md.D3MjSZN-.lean.js +1 -0
- package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.js → reference_agent-config.md.CfVA-LZJ.js} +1 -1
- package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.lean.js → reference_agent-config.md.CfVA-LZJ.lean.js} +1 -1
- package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.js → reference_artifacts.md.Vf7qyIZ-.js} +1 -1
- package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.lean.js → reference_artifacts.md.Vf7qyIZ-.lean.js} +1 -1
- package/dist/docs/assets/{reference_channels.md.CAo-iK4j.js → reference_channels.md.icqLKcTc.js} +2 -12
- package/dist/docs/assets/{reference_channels.md.CAo-iK4j.lean.js → reference_channels.md.icqLKcTc.lean.js} +1 -1
- package/dist/docs/assets/{reference_cli.md.Deg7849l.js → reference_cli.md.B2dBL6L8.js} +3 -3
- package/dist/docs/assets/{reference_cli.md.Deg7849l.lean.js → reference_cli.md.B2dBL6L8.lean.js} +1 -1
- package/dist/docs/assets/{reference_connections.md.BojkC6c5.js → reference_connections.md.Cb3U_c8n.js} +4 -4
- package/dist/docs/assets/{reference_connections.md.BojkC6c5.lean.js → reference_connections.md.Cb3U_c8n.lean.js} +1 -1
- package/dist/docs/assets/{reference_extensions.md.ZAVUyuEX.js → reference_extensions.md.wlFD3cUR.js} +2 -2
- package/dist/docs/assets/{reference_extensions.md.ZAVUyuEX.lean.js → reference_extensions.md.wlFD3cUR.lean.js} +1 -1
- package/dist/docs/assets/{reference_hooks.md.BlM_bOg6.js → reference_hooks.md.CZuynAxj.js} +3 -3
- package/dist/docs/assets/{reference_hooks.md.BlM_bOg6.lean.js → reference_hooks.md.CZuynAxj.lean.js} +1 -1
- package/dist/docs/assets/{reference_http-api.md.BwaCo-VO.js → reference_http-api.md.DTKcYE6L.js} +3 -3
- package/dist/docs/assets/{reference_http-api.md.BwaCo-VO.lean.js → reference_http-api.md.DTKcYE6L.lean.js} +1 -1
- package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.js → reference_instructions.md.D7gkckK-.js} +1 -1
- package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.lean.js → reference_instructions.md.D7gkckK-.lean.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.DLnoaczX.js → reference_playground.md.D2YExv5K.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.DLnoaczX.lean.js → reference_playground.md.D2YExv5K.lean.js} +1 -1
- package/dist/docs/assets/{reference_project-layout.md.BEU8MtQV.js → reference_project-layout.md.DPxbUJyt.js} +3 -3
- package/dist/docs/assets/{reference_project-layout.md.BEU8MtQV.lean.js → reference_project-layout.md.DPxbUJyt.lean.js} +1 -1
- package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.js → reference_prompt.md.BQ5uAv1F.js} +1 -1
- package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.lean.js → reference_prompt.md.BQ5uAv1F.lean.js} +1 -1
- package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.js → reference_schedules.md.BasfZWO-.js} +1 -1
- package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.lean.js → reference_schedules.md.BasfZWO-.lean.js} +1 -1
- package/dist/docs/assets/{reference_sessions.md.CyXV1MUw.js → reference_sessions.md.YKvIsWAx.js} +1 -1
- package/dist/docs/assets/{reference_sessions.md.CyXV1MUw.lean.js → reference_sessions.md.YKvIsWAx.lean.js} +1 -1
- package/dist/docs/assets/{reference_skills.md.l2ezAcaN.js → reference_skills.md.rNgpsGd0.js} +1 -1
- package/dist/docs/assets/{reference_skills.md.l2ezAcaN.lean.js → reference_skills.md.rNgpsGd0.lean.js} +1 -1
- package/dist/docs/assets/{reference_subagents.md.CfsIloPm.js → reference_subagents.md.e5qitjJt.js} +2 -2
- package/dist/docs/assets/{reference_subagents.md.CfsIloPm.lean.js → reference_subagents.md.e5qitjJt.lean.js} +1 -1
- package/dist/docs/assets/{reference_tools.md.aGrn99hP.js → reference_tools.md.BdCO2aHZ.js} +4 -4
- package/dist/docs/assets/{reference_tools.md.aGrn99hP.lean.js → reference_tools.md.BdCO2aHZ.lean.js} +1 -1
- package/dist/docs/assets/{style.DCD_zyg3.css → style.Cfo2vbik.css} +1 -1
- package/dist/docs/assets/{templates_agentic-owners.md.BZSH4N9z.js → templates_agentic-owners.md.Da_AGDlH.js} +1 -1
- package/dist/docs/assets/{templates_agentic-owners.md.BZSH4N9z.lean.js → templates_agentic-owners.md.Da_AGDlH.lean.js} +1 -1
- package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.js → templates_pr-autofixer.md.DqxocIGh.js} +1 -1
- package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.lean.js → templates_pr-autofixer.md.DqxocIGh.lean.js} +1 -1
- package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.js → templates_security-reviewer.md.Bhnvd8VE.js} +1 -1
- package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.lean.js → templates_security-reviewer.md.Bhnvd8VE.lean.js} +1 -1
- package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.js → templates_triage.md.BdBWO9Ic.js} +1 -1
- package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.lean.js → templates_triage.md.BdBWO9Ic.lean.js} +1 -1
- package/dist/docs/assets/{troubleshooting.md.CYEAO9bM.js → troubleshooting.md.BcgNoYtJ.js} +1 -1
- package/dist/docs/assets/{troubleshooting.md.CYEAO9bM.lean.js → troubleshooting.md.BcgNoYtJ.lean.js} +1 -1
- package/dist/docs/building-with-agents.html +41 -8
- package/dist/docs/building-with-agents.md +13 -15
- package/dist/docs/deployment.html +44 -11
- package/dist/docs/deployment.md +6 -7
- package/dist/docs/evals.html +44 -11
- package/dist/docs/evals.md +5 -5
- package/dist/docs/guides/agent-to-agent.html +48 -11
- package/dist/docs/guides/agent-to-agent.md +40 -83
- package/dist/docs/guides/bitbucket.html +41 -8
- package/dist/docs/guides/cloud-agents.html +41 -8
- package/dist/docs/guides/cloud-agents.md +24 -20
- package/dist/docs/guides/convert-automation.html +41 -8
- package/dist/docs/guides/github.html +41 -8
- package/dist/docs/guides/github.md +1 -1
- package/dist/docs/guides/gitlab.html +41 -8
- package/dist/docs/guides/grokbot-agents.html +41 -8
- package/dist/docs/guides/grokbot-agents.md +26 -19
- package/dist/docs/guides/improve.html +41 -8
- package/dist/docs/guides/mcp-oauth.html +41 -8
- package/dist/docs/guides/mcp-oauth.md +1 -1
- package/dist/docs/guides/opentelemetry.html +53 -20
- package/dist/docs/guides/opentelemetry.md +28 -41
- package/dist/docs/guides/slack.html +51 -10
- package/dist/docs/guides/slack.md +53 -4
- package/dist/docs/guides/webhooks.html +42 -9
- package/dist/docs/guides/webhooks.md +3 -4
- package/dist/docs/hashmap.json +1 -1
- package/dist/docs/hillclimbing.html +40 -10
- package/dist/docs/hillclimbing.md +5 -5
- package/dist/docs/index.html +57 -12
- package/dist/docs/index.md +81 -150
- package/dist/docs/llms-full.txt +5779 -10297
- package/dist/docs/llms.txt +3 -29
- package/dist/docs/quickstart.html +70 -45
- package/dist/docs/quickstart.md +44 -105
- package/dist/docs/reference/agent-config.html +41 -8
- package/dist/docs/reference/artifacts.html +41 -8
- package/dist/docs/reference/channels.html +41 -18
- package/dist/docs/reference/channels.md +0 -16
- package/dist/docs/reference/cli.html +42 -9
- package/dist/docs/reference/cli.md +0 -16
- package/dist/docs/reference/connections.html +43 -10
- package/dist/docs/reference/connections.md +3 -5
- package/dist/docs/reference/extensions.html +42 -9
- package/dist/docs/reference/extensions.md +2 -2
- package/dist/docs/reference/hooks.html +42 -9
- package/dist/docs/reference/hooks.md +2 -4
- package/dist/docs/reference/http-api.html +42 -9
- package/dist/docs/reference/http-api.md +5 -5
- package/dist/docs/reference/instructions.html +41 -8
- package/dist/docs/reference/playground.html +40 -7
- package/dist/docs/reference/playground.md +2 -2
- package/dist/docs/reference/project-layout.html +42 -9
- package/dist/docs/reference/project-layout.md +3 -4
- package/dist/docs/reference/prompt.html +41 -8
- package/dist/docs/reference/schedules.html +41 -8
- package/dist/docs/reference/sessions.html +40 -7
- package/dist/docs/reference/sessions.md +5 -4
- package/dist/docs/reference/skills.html +41 -8
- package/dist/docs/reference/subagents.html +41 -8
- package/dist/docs/reference/subagents.md +2 -4
- package/dist/docs/reference/tools.html +43 -10
- package/dist/docs/reference/tools.md +2 -5
- package/dist/docs/templates/agentic-owners.html +41 -8
- package/dist/docs/templates/pr-autofixer.html +41 -8
- package/dist/docs/templates/security-reviewer.html +41 -8
- package/dist/docs/templates/triage.html +41 -8
- package/dist/docs/troubleshooting.html +40 -7
- package/dist/docs/troubleshooting.md +1 -2
- package/dist/evals/assertions.js +19 -19
- package/dist/evals/expect.js +1 -1
- package/dist/evals/judge.js +1 -1
- package/dist/evals/reporters.d.ts.map +1 -1
- package/dist/evals/reporters.js +8 -8
- package/dist/evals/run-facts.js +2 -2
- package/dist/evals.d.ts +1 -1
- package/dist/evals.d.ts.map +1 -1
- package/dist/evals.js +7 -7
- package/dist/extensions/cursor-cloud-agents/extension.js +1 -1
- package/dist/extensions/cursor-cloud-agents/lib/backend.js +3 -3
- package/dist/extensions/cursor-cloud-agents/lib/fleet.js +1 -1
- package/dist/extensions/cursor-cloud-agents/lib/repos.js +6 -6
- package/dist/extensions/cursor-cloud-agents/lib/transcript.d.ts.map +1 -1
- package/dist/extensions/cursor-cloud-agents/lib/transcript.js +2 -2
- package/dist/extensions/cursor-cloud-agents/tools/list.js +1 -1
- package/dist/extensions/improve/skills/yourself.js +1 -1
- package/dist/extensions/slack-communication/extension.d.ts +28 -0
- package/dist/extensions/slack-communication/extension.d.ts.map +1 -0
- package/dist/extensions/slack-communication/extension.js +32 -0
- package/dist/extensions/slack-communication/skills/slack-voice.d.ts +5 -0
- package/dist/extensions/slack-communication/skills/slack-voice.d.ts.map +1 -0
- package/dist/extensions/slack-communication/skills/slack-voice.js +54 -0
- package/dist/extensions/slack-communication/tools/delete-message.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/delete-message.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/delete-message.js +29 -0
- package/dist/extensions/slack-communication/tools/edit-message.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/edit-message.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/edit-message.js +37 -0
- package/dist/extensions/slack-communication/tools/post-card.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/post-card.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/post-card.js +25 -0
- package/dist/extensions/slack-communication/tools/post-file.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/post-file.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/post-file.js +76 -0
- package/dist/extensions/slack-communication/tools/post-update.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/post-update.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/post-update.js +36 -0
- package/dist/extensions/slack-communication/tools/react.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/react.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/react.js +27 -0
- package/dist/extensions/slack-communication/tools/set-status.d.ts +4 -0
- package/dist/extensions/slack-communication/tools/set-status.d.ts.map +1 -0
- package/dist/extensions/slack-communication/tools/set-status.js +18 -0
- package/dist/files-backends/cursor-hosted.d.ts +18 -6
- package/dist/files-backends/cursor-hosted.d.ts.map +1 -1
- package/dist/files-backends/cursor-hosted.js +357 -74
- package/dist/files-backends/local-fs.js +1 -1
- package/dist/files.d.ts +15 -0
- package/dist/files.d.ts.map +1 -1
- package/dist/filesystem.d.ts.map +1 -1
- package/dist/filesystem.js +15 -15
- package/dist/index.d.ts +5 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -6
- package/dist/internal/advertise-tools.js +6 -6
- package/dist/internal/approval-gate.js +1 -1
- package/dist/internal/artifacts-store.js +3 -3
- package/dist/internal/as-of.js +2 -2
- package/dist/internal/authored-alias-hooks.js +1 -1
- package/dist/internal/builtin-tools/reminders.js +2 -2
- package/dist/internal/chat-client.js +5 -5
- package/dist/internal/cli-ax.d.ts +1 -0
- package/dist/internal/cli-ax.d.ts.map +1 -1
- package/dist/internal/cli-ax.js +68 -13
- package/dist/internal/cli-bitbucket.js +10 -10
- package/dist/internal/cli-convert-automation.js +2 -2
- package/dist/internal/cli-cursor.d.ts +3 -11
- package/dist/internal/cli-cursor.d.ts.map +1 -1
- package/dist/internal/cli-cursor.js +5 -10
- package/dist/internal/cli-deploy.d.ts +12 -2
- package/dist/internal/cli-deploy.d.ts.map +1 -1
- package/dist/internal/cli-deploy.js +328 -96
- package/dist/internal/cli-docs.js +5 -5
- package/dist/internal/cli-github.js +15 -16
- package/dist/internal/cli-gitlab.js +10 -10
- package/dist/internal/cli-manifest.js +1 -1
- package/dist/internal/cli-mcp-oauth.d.ts.map +1 -1
- package/dist/internal/cli-mcp-oauth.js +5 -5
- package/dist/internal/cli-mcp.js +3 -3
- package/dist/internal/cli-skills.js +2 -2
- package/dist/internal/cli-slack.js +5 -5
- package/dist/internal/cloud-turn-cost.js +1 -1
- package/dist/internal/continuation-identity.d.ts.map +1 -1
- package/dist/internal/continuation-identity.js +14 -9
- package/dist/internal/conversation-mirror.d.ts.map +1 -1
- package/dist/internal/conversation-mirror.js +33 -2
- package/dist/internal/convert-automation/convert-workflow.js +25 -24
- package/dist/internal/convert-automation/types.d.ts +8 -0
- package/dist/internal/convert-automation/types.d.ts.map +1 -1
- package/dist/internal/cursor/account-mcp.d.ts +2 -2
- package/dist/internal/cursor/account-mcp.d.ts.map +1 -1
- package/dist/internal/cursor/account-mcp.js +32 -27
- package/dist/internal/cursor/backend-client.d.ts +15 -10
- package/dist/internal/cursor/backend-client.d.ts.map +1 -1
- package/dist/internal/cursor/backend-client.js +17 -11
- package/dist/internal/cursor/credentials.js +1 -1
- package/dist/internal/cursor/hosted-store-secrets.d.ts +16 -0
- package/dist/internal/cursor/hosted-store-secrets.d.ts.map +1 -1
- package/dist/internal/cursor/hosted-store-secrets.js +25 -0
- package/dist/internal/cursor-account-mcp-auth.js +9 -9
- package/dist/internal/cursor-deployment-relay.js +9 -9
- package/dist/internal/cursor-event-relay.js +10 -10
- package/dist/internal/cursor-relay-core.js +2 -2
- package/dist/internal/deploy-client.d.ts +106 -9
- package/dist/internal/deploy-client.d.ts.map +1 -1
- package/dist/internal/deploy-client.js +171 -23
- package/dist/internal/deploy-manifest.d.ts +13 -0
- package/dist/internal/deploy-manifest.d.ts.map +1 -1
- package/dist/internal/deploy-manifest.js +32 -16
- package/dist/internal/discovery/agent-config.d.ts +5 -0
- package/dist/internal/discovery/agent-config.d.ts.map +1 -1
- package/dist/internal/discovery/agent-config.js +27 -0
- package/dist/internal/discovery/agent.d.ts.map +1 -1
- package/dist/internal/discovery/agent.js +10 -8
- package/dist/internal/discovery/channels.js +4 -4
- package/dist/internal/discovery/connections.js +4 -4
- package/dist/internal/discovery/cursor-plugin.js +12 -12
- package/dist/internal/discovery/extension-overlay.js +3 -3
- package/dist/internal/discovery/extensions.js +6 -6
- package/dist/internal/discovery/info.js +9 -9
- package/dist/internal/discovery/instructions.js +1 -1
- package/dist/internal/discovery/project.d.ts.map +1 -1
- package/dist/internal/discovery/project.js +4 -4
- package/dist/internal/discovery/services.js +1 -1
- package/dist/internal/discovery/tools.js +1 -1
- package/dist/internal/docs-site.js +2 -2
- package/dist/internal/env-file.js +1 -1
- package/dist/internal/eval-run-store.d.ts.map +1 -1
- package/dist/internal/eval-run-store.js +7 -7
- package/dist/internal/eval-runner.js +14 -14
- package/dist/internal/evals-client.js +4 -4
- package/dist/internal/event-log.js +8 -8
- package/dist/internal/event-mapper.d.ts +18 -0
- package/dist/internal/event-mapper.d.ts.map +1 -1
- package/dist/internal/event-mapper.js +34 -2
- package/dist/internal/filesystem/format.d.ts.map +1 -1
- package/dist/internal/filesystem/format.js +6 -3
- package/dist/internal/filesystem/scratch.js +3 -3
- package/dist/internal/filesystem/tools.d.ts.map +1 -1
- package/dist/internal/filesystem/tools.js +6 -6
- package/dist/internal/filesystem/walk.js +1 -1
- package/dist/internal/framework-file-storage.d.ts +6 -2
- package/dist/internal/framework-file-storage.d.ts.map +1 -1
- package/dist/internal/framework-file-storage.js +91 -2
- package/dist/internal/framework-storage-selection.d.ts +0 -6
- package/dist/internal/framework-storage-selection.d.ts.map +1 -1
- package/dist/internal/framework-storage-selection.js +2 -11
- package/dist/internal/github-fanout.js +3 -3
- package/dist/internal/guest-network.js +4 -4
- package/dist/internal/host-files.js +1 -1
- package/dist/internal/host-kv.js +2 -2
- package/dist/internal/hosted-admission-adapter.d.ts +2 -0
- package/dist/internal/hosted-admission-adapter.d.ts.map +1 -1
- package/dist/internal/hosted-catch-protocol.d.ts.map +1 -1
- package/dist/internal/hosted-catch-protocol.js +2 -4
- package/dist/internal/hosted-catch.js +1 -1
- package/dist/internal/hosted-delivery-protocol.d.ts +29 -0
- package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
- package/dist/internal/hosted-delivery-protocol.js +76 -8
- package/dist/internal/hosted-delivery.d.ts.map +1 -1
- package/dist/internal/hosted-delivery.js +201 -64
- package/dist/internal/hosted-execution-diag.js +3 -3
- package/dist/internal/hosted-execution-latency.d.ts +80 -0
- package/dist/internal/hosted-execution-latency.d.ts.map +1 -0
- package/dist/internal/hosted-execution-latency.js +220 -0
- package/dist/internal/hosting.d.ts +5 -5
- package/dist/internal/hosting.d.ts.map +1 -1
- package/dist/internal/hosting.js +5 -6
- package/dist/internal/http-channel-define.d.ts +11 -0
- package/dist/internal/http-channel-define.d.ts.map +1 -0
- package/dist/internal/http-channel-define.js +18 -0
- package/dist/internal/http-channel.d.ts +2 -3
- package/dist/internal/http-channel.d.ts.map +1 -1
- package/dist/internal/http-channel.js +3 -4
- package/dist/internal/http-control-plane-session.d.ts +7 -3
- package/dist/internal/http-control-plane-session.d.ts.map +1 -1
- package/dist/internal/http-control-plane-session.js +22 -10
- package/dist/internal/incoming-headers-to-fetch.d.ts +10 -0
- package/dist/internal/incoming-headers-to-fetch.d.ts.map +1 -0
- package/dist/internal/incoming-headers-to-fetch.js +41 -0
- package/dist/internal/init-interview.js +7 -7
- package/dist/internal/init-project.d.ts.map +1 -1
- package/dist/internal/init-project.js +14 -14
- package/dist/internal/init-scaffold.js +1 -1
- package/dist/internal/inline-stdio-mcp.js +2 -2
- package/dist/internal/install-cursor-skills.js +10 -10
- package/dist/internal/json-schema.js +1 -1
- package/dist/internal/local-control-plane.d.ts.map +1 -1
- package/dist/internal/local-control-plane.js +3 -3
- package/dist/internal/local-env.js +3 -3
- package/dist/internal/log-ring.js +1 -1
- package/dist/internal/logs-client.js +1 -1
- package/dist/internal/mcp-endpoint.js +8 -8
- package/dist/internal/mcp-host.js +4 -4
- package/dist/internal/mcp-oauth-on-demand.js +3 -3
- package/dist/internal/mcp-oauth.js +5 -5
- package/dist/internal/net.js +2 -2
- package/dist/internal/otel/config.js +3 -3
- package/dist/internal/otel/runtime.js +13 -13
- package/dist/internal/peer-connections.js +2 -2
- package/dist/internal/platform-schedule-sync.js +1 -1
- package/dist/internal/platform-timers.js +1 -1
- package/dist/internal/playground/static.js +2 -2
- package/dist/internal/playground/toolchain.js +2 -2
- package/dist/internal/playground-proxy.js +3 -3
- package/dist/internal/process-memory-telemetry.js +1 -1
- package/dist/internal/reminder-runner.d.ts.map +1 -1
- package/dist/internal/reminder-runner.js +7 -7
- package/dist/internal/reminder-store.js +1 -1
- package/dist/internal/request-error-status.d.ts.map +1 -1
- package/dist/internal/request-error-status.js +9 -0
- package/dist/internal/resolved-connections.js +8 -8
- package/dist/internal/result-output.d.ts +14 -2
- package/dist/internal/result-output.d.ts.map +1 -1
- package/dist/internal/result-output.js +45 -2
- package/dist/internal/router.js +4 -4
- package/dist/internal/run-client.js +2 -2
- package/dist/internal/schedule-runner.js +6 -6
- package/dist/internal/scm/pr-url.d.ts +3 -1
- package/dist/internal/scm/pr-url.d.ts.map +1 -1
- package/dist/internal/scm/pr-url.js +10 -2
- package/dist/internal/sdk-runner.d.ts.map +1 -1
- package/dist/internal/sdk-runner.js +14 -15
- package/dist/internal/serve-restart.js +1 -1
- package/dist/internal/server.d.ts.map +1 -1
- package/dist/internal/server.js +81 -87
- package/dist/internal/session-cost.js +3 -3
- package/dist/internal/session-engine.d.ts +34 -0
- package/dist/internal/session-engine.d.ts.map +1 -1
- package/dist/internal/session-engine.js +380 -184
- package/dist/internal/session-run-log.d.ts.map +1 -1
- package/dist/internal/session-run-log.js +4 -4
- package/dist/internal/session-store.d.ts +47 -3
- package/dist/internal/session-store.d.ts.map +1 -1
- package/dist/internal/session-store.js +198 -33
- package/dist/internal/sessions-client.js +3 -3
- package/dist/internal/slack-thread-key.d.ts +7 -0
- package/dist/internal/slack-thread-key.d.ts.map +1 -0
- package/dist/internal/slack-thread-key.js +10 -0
- package/dist/internal/sleep.js +1 -1
- package/dist/internal/storage-coordinator.d.ts +17 -0
- package/dist/internal/storage-coordinator.d.ts.map +1 -1
- package/dist/internal/storage-coordinator.js +111 -11
- package/dist/internal/storage.d.ts +2 -0
- package/dist/internal/storage.d.ts.map +1 -0
- package/dist/internal/storage.js +1 -0
- package/dist/internal/store-mirror.js +4 -4
- package/dist/internal/terminal-style.js +2 -2
- package/dist/internal/tool-result.js +3 -3
- package/dist/internal/trajectory.js +7 -7
- package/dist/internal/turn-governor.js +2 -2
- package/dist/internal/turn-outbox.js +1 -1
- package/dist/internal/update-check.js +2 -2
- package/dist/internal/v2-hosting.d.ts +9 -0
- package/dist/internal/v2-hosting.d.ts.map +1 -1
- package/dist/internal/v2-hosting.js +10 -0
- package/dist/internal/workspace.d.ts +13 -10
- package/dist/internal/workspace.d.ts.map +1 -1
- package/dist/internal/workspace.js +17 -16
- package/dist/kv/memory-kv.d.ts +6 -4
- package/dist/kv/memory-kv.d.ts.map +1 -1
- package/dist/kv/memory-kv.js +9 -7
- package/dist/kv.d.ts +4 -7
- package/dist/kv.d.ts.map +1 -1
- package/dist/kv.js +4 -7
- package/dist/otel-public.d.ts +7 -0
- package/dist/otel-public.d.ts.map +1 -0
- package/dist/otel-public.js +5 -0
- package/dist/otel.d.ts +7 -2
- package/dist/otel.d.ts.map +1 -1
- package/dist/otel.js +7 -2
- package/dist/playground/assets/index-BLlKgZtI.css +1 -0
- package/dist/playground/assets/index-CDS5p9sR.js +67 -0
- package/dist/playground/index.html +2 -2
- package/dist/prompt.js +1 -1
- package/dist/result.d.ts +10 -4
- package/dist/result.d.ts.map +1 -1
- package/dist/result.js +9 -3
- package/dist/storage-backends/cursor-hosted-v2.js +2 -2
- package/dist/storage-backends/cursor-hosted.d.ts +5 -17
- package/dist/storage-backends/cursor-hosted.d.ts.map +1 -1
- package/dist/storage-backends/cursor-hosted.js +6 -20
- package/dist/storage-backends/file-kv.js +7 -7
- package/dist/storage.d.ts +20 -2
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +7 -6
- package/dist/types.d.ts +67 -11
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +12 -4
- package/docs/README.md +83 -152
- package/docs/building-with-agents.md +13 -15
- package/docs/deployment.md +6 -7
- package/docs/evals.md +5 -5
- package/docs/guides/agent-to-agent.md +41 -84
- package/docs/guides/cloud-agents.md +25 -20
- package/docs/guides/github.md +1 -1
- package/docs/guides/grokbot-agents.md +27 -19
- package/docs/guides/mcp-oauth.md +1 -1
- package/docs/guides/opentelemetry.md +28 -41
- package/docs/guides/slack.md +53 -4
- package/docs/guides/webhooks.md +3 -4
- package/docs/hillclimbing.md +5 -5
- package/docs/quickstart.md +45 -106
- package/docs/reference/channels.md +0 -16
- package/docs/reference/cli.md +0 -16
- package/docs/reference/connections.md +3 -5
- package/docs/reference/extensions.md +2 -2
- package/docs/reference/hooks.md +2 -4
- package/docs/reference/http-api.md +5 -5
- package/docs/reference/playground.md +2 -2
- package/docs/reference/project-layout.md +3 -4
- package/docs/reference/sessions.md +5 -4
- package/docs/reference/subagents.md +2 -4
- package/docs/reference/tools.md +2 -5
- package/docs/troubleshooting.md +1 -2
- package/package.json +55 -37
- package/skills/framework-map/SKILL.md +2 -2
- package/skills/otel/SKILL.md +8 -18
- package/src/bin/agent-serve.ts +93 -72
- package/src/channels/bitbucket/api.ts +8 -8
- package/src/channels/bitbucket/binding.ts +4 -4
- package/src/channels/bitbucket/bitbucket-channel.ts +1 -1
- package/src/channels/bitbucket/bitbucket-webhook.ts +1 -1
- package/src/channels/bitbucket/checks.ts +3 -4
- package/src/channels/bitbucket/cursor-account.ts +1 -1
- package/src/channels/bitbucket/events.ts +1 -1
- package/src/channels/change-monitors/change-monitors-channel.ts +2 -2
- package/src/channels/checks.ts +5 -4
- package/src/channels/deployments/deployments-channel.ts +1 -1
- package/src/channels/github/api.ts +1 -1
- package/src/channels/github/checks.ts +1 -1
- package/src/channels/github/cursor-account.ts +3 -3
- package/src/channels/github/defaults.ts +8 -4
- package/src/channels/github/events.ts +1 -1
- package/src/channels/github/forward.ts +8 -8
- package/src/channels/github/github-channel.ts +19 -2
- package/src/channels/github/progress.ts +7 -2
- package/src/channels/github/state.ts +6 -0
- package/src/channels/github/types.ts +6 -0
- package/src/channels/gitlab/binding.ts +4 -4
- package/src/channels/gitlab/checks.ts +3 -4
- package/src/channels/gitlab/cursor-account.ts +1 -1
- package/src/channels/gitlab/events.ts +1 -1
- package/src/channels/gitlab/gitlab-channel.ts +1 -1
- package/src/channels/gitlab/gitlab-webhook.ts +1 -1
- package/src/channels/gitlab/replay.ts +2 -2
- package/src/channels/origin/binding.ts +6 -3
- package/src/channels/origin/checks.ts +27 -17
- package/src/channels/origin/cursor-account.ts +1 -1
- package/src/channels/origin/defaults.ts +5 -1
- package/src/channels/origin/events.ts +1 -1
- package/src/channels/origin/origin-channel.ts +2 -1
- package/src/channels/origin/origin-webhook.ts +2 -2
- package/src/channels/slack/agentic-delivery.ts +659 -0
- package/src/channels/slack/agentic-posted.ts +148 -0
- package/src/channels/slack/agentic-signals.ts +248 -0
- package/src/channels/slack/api.ts +51 -11
- package/src/channels/slack/approvals.ts +1 -1
- package/src/channels/slack/attachments.ts +1 -1
- package/src/channels/slack/auth.ts +3 -1
- package/src/channels/slack/blocks.ts +3 -3
- package/src/channels/slack/bot-mentions.ts +5 -7
- package/src/channels/slack/channel-watch.ts +1 -1
- package/src/channels/slack/cli-project.ts +3 -3
- package/src/channels/slack/defaults.ts +109 -37
- package/src/channels/slack/dispatch.ts +299 -170
- package/src/channels/slack/doctor.ts +1 -1
- package/src/channels/slack/eval-directive.ts +1 -1
- package/src/channels/slack/external-policy.ts +15 -2
- package/src/channels/slack/footer.ts +108 -0
- package/src/channels/slack/index.ts +2 -0
- package/src/channels/slack/interactive.ts +4 -2
- package/src/channels/slack/live-delivery.ts +23 -7
- package/src/channels/slack/log.ts +1 -1
- package/src/channels/slack/manifest.ts +1 -1
- package/src/channels/slack/nudge-carrier.ts +1 -1
- package/src/channels/slack/nudge-store.ts +2 -2
- package/src/channels/slack/paint-start.ts +93 -0
- package/src/channels/slack/placeholder.ts +315 -0
- package/src/channels/slack/progress-delivery.ts +14 -1
- package/src/channels/slack/reasoning-chip.ts +48 -0
- package/src/channels/slack/recording-sink.ts +176 -0
- package/src/channels/slack/reply-options.ts +71 -15
- package/src/channels/slack/setup.ts +1 -1
- package/src/channels/slack/slack-channel.ts +73 -13
- package/src/channels/slack/socket-mode.ts +2 -2
- package/src/channels/slack/thread-context.ts +5 -5
- package/src/channels/slack/tool-approval-events.ts +54 -38
- package/src/channels/slack/tool-cards.ts +1 -1
- package/src/channels/slack/tool-chip.ts +36 -0
- package/src/channels/slack/types.ts +47 -7
- package/src/channels/slack/upload.ts +142 -0
- package/src/channels.ts +12 -30
- package/src/dashboard-session-url.ts +32 -0
- package/src/evals/assertions.ts +19 -19
- package/src/evals/expect.ts +1 -1
- package/src/evals/judge.ts +1 -1
- package/src/evals/reporters.ts +8 -9
- package/src/evals/run-facts.ts +2 -2
- package/src/evals.ts +7 -10
- package/src/extensions/cursor-cloud-agents/extension.ts +1 -1
- package/src/extensions/cursor-cloud-agents/lib/backend.ts +3 -3
- package/src/extensions/cursor-cloud-agents/lib/fleet.ts +1 -1
- package/src/extensions/cursor-cloud-agents/lib/repos.ts +3 -3
- package/src/extensions/cursor-cloud-agents/lib/transcript.ts +3 -4
- package/src/extensions/cursor-cloud-agents/tools/list.ts +1 -1
- package/src/extensions/improve/skills/yourself.ts +1 -1
- package/src/extensions/slack-communication/evals/harness.ts +728 -0
- package/src/extensions/slack-communication/evals/slack-communication.eval.ts +953 -0
- package/src/extensions/slack-communication/evals/slack-placeholder.eval.ts +194 -0
- package/src/extensions/slack-communication/extension.ts +45 -0
- package/src/extensions/slack-communication/skills/slack-voice.ts +59 -0
- package/src/extensions/slack-communication/tools/delete-message.ts +34 -0
- package/src/extensions/slack-communication/tools/edit-message.ts +42 -0
- package/src/extensions/slack-communication/tools/post-card.ts +28 -0
- package/src/extensions/slack-communication/tools/post-file.ts +85 -0
- package/src/extensions/slack-communication/tools/post-update.ts +41 -0
- package/src/extensions/slack-communication/tools/react.ts +33 -0
- package/src/extensions/slack-communication/tools/set-status.ts +21 -0
- package/src/files-backends/cursor-hosted.ts +502 -98
- package/src/files-backends/local-fs.ts +1 -1
- package/src/files.ts +15 -0
- package/src/filesystem.ts +16 -18
- package/src/index.ts +4 -36
- package/src/internal/advertise-tools.ts +6 -6
- package/src/internal/approval-gate.ts +1 -1
- package/src/internal/artifacts-store.ts +3 -3
- package/src/internal/as-of.ts +2 -2
- package/src/internal/authored-alias-hooks.ts +1 -1
- package/src/internal/authored-loaders.ts +2 -3
- package/src/internal/builtin-tools/reminders.ts +2 -2
- package/src/internal/chat-client.ts +5 -5
- package/src/internal/cli-ax.ts +84 -14
- package/src/internal/cli-bitbucket.ts +11 -11
- package/src/internal/cli-convert-automation.ts +2 -2
- package/src/internal/cli-cursor.ts +5 -16
- package/src/internal/cli-deploy.ts +389 -104
- package/src/internal/cli-docs.ts +5 -5
- package/src/internal/cli-github.ts +16 -19
- package/src/internal/cli-gitlab.ts +11 -11
- package/src/internal/cli-manifest.ts +1 -1
- package/src/internal/cli-mcp-oauth.ts +5 -7
- package/src/internal/cli-mcp.ts +3 -3
- package/src/internal/cli-skills.ts +2 -2
- package/src/internal/cli-slack.ts +5 -5
- package/src/internal/cloud-turn-cost.ts +1 -1
- package/src/internal/continuation-identity.ts +13 -9
- package/src/internal/conversation-mirror.ts +36 -3
- package/src/internal/convert-automation/convert-workflow.ts +27 -27
- package/src/internal/convert-automation/types.ts +9 -0
- package/src/internal/cursor/account-mcp.ts +48 -31
- package/src/internal/cursor/backend-client.ts +28 -17
- package/src/internal/cursor/credentials.ts +1 -1
- package/src/internal/cursor/hosted-store-secrets.ts +34 -0
- package/src/internal/cursor-account-mcp-auth.ts +9 -9
- package/src/internal/cursor-deployment-relay.ts +10 -10
- package/src/internal/cursor-event-relay.ts +10 -10
- package/src/internal/cursor-relay-core.ts +2 -2
- package/src/internal/deploy-client.ts +266 -24
- package/src/internal/deploy-manifest.ts +46 -8
- package/src/internal/discovery/agent-config.ts +34 -0
- package/src/internal/discovery/agent.ts +14 -6
- package/src/internal/discovery/channels.ts +4 -4
- package/src/internal/discovery/connections.ts +4 -4
- package/src/internal/discovery/cursor-plugin.ts +12 -12
- package/src/internal/discovery/extension-overlay.ts +3 -3
- package/src/internal/discovery/extensions.ts +6 -6
- package/src/internal/discovery/info.ts +9 -9
- package/src/internal/discovery/instructions.ts +1 -1
- package/src/internal/discovery/project.ts +4 -4
- package/src/internal/discovery/services.ts +1 -1
- package/src/internal/discovery/tools.ts +1 -1
- package/src/internal/docs-site.ts +2 -2
- package/src/internal/env-file.ts +2 -2
- package/src/internal/eval-run-store.ts +7 -9
- package/src/internal/eval-runner.ts +20 -20
- package/src/internal/evals-client.ts +6 -6
- package/src/internal/event-log.ts +10 -10
- package/src/internal/event-mapper.ts +37 -2
- package/src/internal/filesystem/format.ts +11 -12
- package/src/internal/filesystem/scratch.ts +3 -3
- package/src/internal/filesystem/tools.ts +6 -8
- package/src/internal/filesystem/walk.ts +1 -1
- package/src/internal/framework-file-storage.ts +104 -4
- package/src/internal/framework-storage-selection.ts +2 -12
- package/src/internal/github-fanout.ts +4 -4
- package/src/internal/guest-network.ts +4 -4
- package/src/internal/host-files.ts +1 -1
- package/src/internal/host-kv.ts +2 -2
- package/src/internal/hosted-admission-adapter.ts +2 -0
- package/src/internal/hosted-catch-protocol.ts +3 -5
- package/src/internal/hosted-catch.ts +1 -1
- package/src/internal/hosted-delivery-protocol.ts +111 -13
- package/src/internal/hosted-delivery.ts +286 -81
- package/src/internal/hosted-execution-diag.ts +3 -3
- package/src/internal/hosted-execution-latency.ts +334 -0
- package/src/internal/hosting.ts +5 -6
- package/src/internal/http-channel-define.ts +27 -0
- package/src/internal/http-channel.ts +3 -4
- package/src/internal/http-control-plane-session.ts +24 -11
- package/src/internal/incoming-headers-to-fetch.ts +54 -0
- package/src/internal/init-interview.ts +7 -7
- package/src/internal/init-project.ts +14 -16
- package/src/internal/init-scaffold.ts +1 -1
- package/src/internal/inline-stdio-mcp.ts +2 -2
- package/src/internal/install-cursor-skills.ts +11 -11
- package/src/internal/json-schema.ts +1 -1
- package/src/internal/local-control-plane.ts +4 -5
- package/src/internal/local-env.ts +3 -3
- package/src/internal/log-ring.ts +1 -1
- package/src/internal/logs-client.ts +1 -1
- package/src/internal/mcp-endpoint.ts +10 -10
- package/src/internal/mcp-host.ts +9 -9
- package/src/internal/mcp-oauth-on-demand.ts +3 -3
- package/src/internal/mcp-oauth.ts +5 -5
- package/src/internal/net.ts +2 -2
- package/src/internal/otel/config.ts +3 -3
- package/src/internal/otel/runtime.ts +14 -14
- package/src/internal/peer-connections.ts +2 -2
- package/src/internal/platform-schedule-sync.ts +1 -1
- package/src/internal/platform-timers.ts +1 -1
- package/src/internal/playground/static.ts +2 -2
- package/src/internal/playground/toolchain.ts +2 -2
- package/src/internal/playground-proxy.ts +3 -3
- package/src/internal/process-memory-telemetry.ts +1 -1
- package/src/internal/reminder-runner.ts +8 -10
- package/src/internal/reminder-store.ts +1 -1
- package/src/internal/request-error-status.ts +9 -0
- package/src/internal/resolved-connections.ts +8 -8
- package/src/internal/result-output.ts +62 -5
- package/src/internal/router.ts +4 -4
- package/src/internal/run-client.ts +2 -2
- package/src/internal/schedule-runner.ts +6 -6
- package/src/internal/scm/pr-url.ts +11 -2
- package/src/internal/sdk-runner.ts +14 -28
- package/src/internal/serve-restart.ts +1 -1
- package/src/internal/server.ts +97 -99
- package/src/internal/session-cost.ts +3 -3
- package/src/internal/session-engine.ts +504 -244
- package/src/internal/session-run-log.ts +4 -6
- package/src/internal/session-store.ts +213 -39
- package/src/internal/sessions-client.ts +3 -3
- package/src/internal/slack-thread-key.ts +11 -0
- package/src/internal/sleep.ts +1 -1
- package/src/internal/storage-coordinator.ts +118 -21
- package/src/internal/storage.ts +1 -0
- package/src/internal/store-mirror.ts +4 -4
- package/src/internal/terminal-style.ts +2 -2
- package/src/internal/tool-result.ts +3 -3
- package/src/internal/trajectory.ts +7 -7
- package/src/internal/turn-governor.ts +2 -2
- package/src/internal/turn-outbox.ts +1 -1
- package/src/internal/update-check.ts +2 -2
- package/src/internal/v2-hosting.ts +14 -0
- package/src/internal/workspace.ts +17 -17
- package/src/kv/memory-kv.ts +9 -7
- package/src/kv.ts +4 -7
- package/src/otel-public.ts +24 -0
- package/src/otel.ts +7 -2
- package/src/prompt.ts +1 -1
- package/src/result.ts +10 -8
- package/src/storage-backends/cursor-hosted-v2.ts +2 -2
- package/src/storage-backends/cursor-hosted.ts +6 -23
- package/src/storage-backends/file-kv.ts +7 -7
- package/src/storage.ts +22 -7
- package/src/types.ts +82 -17
- package/templates/agentic-owners/agent/channels/github.ts +3 -6
- package/templates/agentic-owners/agent/lib/github.ts +5 -5
- package/templates/agentic-owners/agent/lib/owners/decision.ts +13 -10
- package/templates/agentic-owners/agent/lib/owners/handles.ts +2 -2
- package/templates/agentic-owners/agent/lib/owners/match.ts +3 -3
- package/templates/agentic-owners/agent/lib/owners/matching.ts +1 -1
- package/templates/agentic-owners/agent/lib/owners/parse.ts +4 -9
- package/templates/agentic-owners/agent/lib/owners/prompt.ts +1 -1
- package/templates/agentic-owners/agent/lib/review.ts +37 -30
- package/templates/agentic-owners/evals/owners.eval.ts +2 -2
- package/templates/agentic-owners/package.json +1 -1
- package/templates/agents-md/agent/lib/collect.ts +16 -10
- package/templates/agents-md/agent/lib/config.ts +1 -1
- package/templates/agents-md/agent/tools/apply_agents.ts +10 -8
- package/templates/agents-md/package.json +1 -1
- package/templates/code-wiki/agent/channels/github.ts +4 -7
- package/templates/code-wiki/agent/lib/repos.ts +1 -1
- package/templates/code-wiki/agent/tools/apply_wiki.ts +3 -4
- package/templates/code-wiki/package.json +1 -1
- package/templates/demo/agent/lib/collect.ts +6 -2
- package/templates/demo/agent/lib/repos.ts +1 -1
- package/templates/demo/agent/tools/record_demo.ts +1 -1
- package/templates/demo/evals/demo.eval.ts +1 -5
- package/templates/demo/package.json +1 -1
- package/templates/grokbot-agents/package.json +1 -1
- package/templates/pr-autofixer/agent/channels/github.ts +16 -13
- package/templates/pr-autofixer/agent/lib/merge-watch.ts +2 -4
- package/templates/pr-autofixer/agent/lib/repos.ts +2 -2
- package/templates/pr-autofixer/agent/lib/webhook-routing.ts +1 -1
- package/templates/pr-autofixer/package.json +1 -1
- package/templates/security-help/agent/lib/repos.ts +1 -1
- package/templates/security-help/package.json +1 -1
- package/templates/security-reviewer/agent/lib/repos.ts +1 -1
- package/templates/security-reviewer/agent/tools/post_findings.ts +1 -3
- package/templates/security-reviewer/package.json +1 -1
- package/templates/triage/agent/lib/actuate.ts +26 -41
- package/templates/triage/agent/lib/parse-queue-event.ts +2 -1
- package/templates/triage/agent/lib/verify-webhook.ts +10 -5
- package/templates/triage/agent/tools/record_triage.ts +1 -4
- package/templates/triage/package.json +1 -1
- package/dist/client.d.ts +0 -14
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -12
- package/dist/docs/assets/app.Cr-wVbnB.js +0 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.CFVQ4S17.js +0 -1
- package/dist/docs/assets/chunks/framework.BCISBCiQ.js +0 -19
- package/dist/docs/assets/concepts.md.B4o63Gul.js +0 -1
- package/dist/docs/assets/concepts.md.B4o63Gul.lean.js +0 -1
- package/dist/docs/assets/guides_agent-to-agent.md.BDb0t1QV.js +0 -10
- package/dist/docs/assets/guides_agent-to-agent.md.BDb0t1QV.lean.js +0 -1
- package/dist/docs/assets/guides_grokbot-agents.md.DyV-WArv.js +0 -9
- package/dist/docs/assets/guides_human-in-the-loop.md.By1G2T3_.js +0 -28
- package/dist/docs/assets/guides_human-in-the-loop.md.By1G2T3_.lean.js +0 -1
- package/dist/docs/assets/hillclimbing.md.BOiVo1tf.js +0 -4
- package/dist/docs/assets/hillclimbing.md.BOiVo1tf.lean.js +0 -1
- package/dist/docs/assets/index.md.DD9Q2XuJ.js +0 -5
- package/dist/docs/assets/index.md.DD9Q2XuJ.lean.js +0 -1
- package/dist/docs/assets/quickstart.md.DdQOF7Y8.lean.js +0 -1
- package/dist/docs/assets/reference_result.md.BK5SxDrf.js +0 -19
- package/dist/docs/assets/reference_result.md.BK5SxDrf.lean.js +0 -1
- package/dist/docs/assets/scaffolding-agents.md.Kctn3OVb.js +0 -1
- package/dist/docs/assets/scaffolding-agents.md.Kctn3OVb.lean.js +0 -1
- package/dist/docs/assets/skills_create-agent.md.Q3h6Je-e.js +0 -8
- package/dist/docs/assets/skills_create-agent.md.Q3h6Je-e.lean.js +0 -1
- package/dist/docs/assets/skills_debug.md.CVjCXMFF.js +0 -1
- package/dist/docs/assets/skills_debug.md.CVjCXMFF.lean.js +0 -1
- package/dist/docs/assets/skills_deploy.md.CWqi_ZxW.js +0 -35
- package/dist/docs/assets/skills_deploy.md.CWqi_ZxW.lean.js +0 -1
- package/dist/docs/assets/skills_evals.md.DFxYPErF.js +0 -25
- package/dist/docs/assets/skills_evals.md.DFxYPErF.lean.js +0 -1
- package/dist/docs/assets/skills_framework-map.md.BxLSOhSY.js +0 -1
- package/dist/docs/assets/skills_framework-map.md.BxLSOhSY.lean.js +0 -1
- package/dist/docs/assets/skills_github.md.hgFX_oKY.js +0 -16
- package/dist/docs/assets/skills_github.md.hgFX_oKY.lean.js +0 -1
- package/dist/docs/assets/skills_hillclimb.md.B_zJerxA.js +0 -7
- package/dist/docs/assets/skills_hillclimb.md.B_zJerxA.lean.js +0 -1
- package/dist/docs/assets/skills_index.md.DL7EHaQ-.js +0 -1
- package/dist/docs/assets/skills_index.md.DL7EHaQ-.lean.js +0 -1
- package/dist/docs/assets/skills_mcp-auth.md.DGvFP3HE.js +0 -18
- package/dist/docs/assets/skills_mcp-auth.md.DGvFP3HE.lean.js +0 -1
- package/dist/docs/assets/skills_otel.md.B5Ddv1xH.js +0 -8
- package/dist/docs/assets/skills_otel.md.B5Ddv1xH.lean.js +0 -1
- package/dist/docs/assets/skills_setup-slack.md.BBgx8lUz.js +0 -20
- package/dist/docs/assets/skills_setup-slack.md.BBgx8lUz.lean.js +0 -1
- package/dist/docs/assets/storage.md.BUrhJ-Zz.js +0 -30
- package/dist/docs/assets/storage.md.BUrhJ-Zz.lean.js +0 -1
- package/dist/docs/assets/templates_agents-md.md.CXSMZljE.js +0 -2
- package/dist/docs/assets/templates_agents-md.md.CXSMZljE.lean.js +0 -1
- package/dist/docs/assets/templates_code-wiki.md.CDYZIBFN.js +0 -2
- package/dist/docs/assets/templates_code-wiki.md.CDYZIBFN.lean.js +0 -1
- package/dist/docs/assets/templates_demo.md.BeQX9V3H.js +0 -4
- package/dist/docs/assets/templates_demo.md.BeQX9V3H.lean.js +0 -1
- package/dist/docs/assets/templates_grokbot-agents.md.c1s6Flp9.js +0 -3
- package/dist/docs/assets/templates_grokbot-agents.md.c1s6Flp9.lean.js +0 -1
- package/dist/docs/assets/templates_security-help.md.C3Ny_Qr2.js +0 -4
- package/dist/docs/assets/templates_security-help.md.C3Ny_Qr2.lean.js +0 -1
- package/dist/docs/concepts.html +0 -27
- package/dist/docs/concepts.md +0 -166
- package/dist/docs/design/filesystem.md +0 -376
- package/dist/docs/design/runtime-abstraction.md +0 -1756
- package/dist/docs/guides/human-in-the-loop.html +0 -54
- package/dist/docs/guides/human-in-the-loop.md +0 -126
- package/dist/docs/reference/result.html +0 -45
- package/dist/docs/reference/result.md +0 -89
- package/dist/docs/scaffolding-agents.html +0 -27
- package/dist/docs/scaffolding-agents.md +0 -130
- package/dist/docs/skills/create-agent.html +0 -34
- package/dist/docs/skills/create-agent.md +0 -160
- package/dist/docs/skills/debug.html +0 -27
- package/dist/docs/skills/debug.md +0 -36
- package/dist/docs/skills/deploy.html +0 -61
- package/dist/docs/skills/deploy.md +0 -161
- package/dist/docs/skills/evals.html +0 -51
- package/dist/docs/skills/evals.md +0 -137
- package/dist/docs/skills/framework-map.html +0 -27
- package/dist/docs/skills/framework-map.md +0 -99
- package/dist/docs/skills/github.html +0 -42
- package/dist/docs/skills/github.md +0 -93
- package/dist/docs/skills/hillclimb.html +0 -33
- package/dist/docs/skills/hillclimb.md +0 -55
- package/dist/docs/skills/index.html +0 -27
- package/dist/docs/skills/index.md +0 -21
- package/dist/docs/skills/mcp-auth.html +0 -44
- package/dist/docs/skills/mcp-auth.md +0 -76
- package/dist/docs/skills/otel.html +0 -34
- package/dist/docs/skills/otel.md +0 -53
- package/dist/docs/skills/setup-slack.html +0 -46
- package/dist/docs/skills/setup-slack.md +0 -141
- package/dist/docs/storage.html +0 -56
- package/dist/docs/storage.md +0 -167
- package/dist/docs/templates/agents-md.html +0 -28
- package/dist/docs/templates/agents-md.md +0 -105
- package/dist/docs/templates/code-wiki.html +0 -28
- package/dist/docs/templates/code-wiki.md +0 -91
- package/dist/docs/templates/demo.html +0 -30
- package/dist/docs/templates/demo.md +0 -80
- package/dist/docs/templates/grokbot-agents.html +0 -29
- package/dist/docs/templates/grokbot-agents.md +0 -48
- package/dist/docs/templates/security-help.html +0 -30
- package/dist/docs/templates/security-help.md +0 -65
- package/dist/internal/tenant-slack/relay.d.ts +0 -75
- package/dist/internal/tenant-slack/relay.d.ts.map +0 -1
- package/dist/internal/tenant-slack/relay.js +0 -148
- package/dist/playground/assets/index-Bhxzrcf6.css +0 -1
- package/dist/playground/assets/index-CqLX5uF3.js +0 -67
- package/docs/concepts.md +0 -171
- package/docs/design/filesystem.md +0 -376
- package/docs/design/runtime-abstraction.md +0 -1756
- package/docs/guides/human-in-the-loop.md +0 -131
- package/docs/reference/result.md +0 -94
- package/docs/scaffolding-agents.md +0 -135
- package/docs/skills/index.md +0 -26
- package/docs/storage.md +0 -172
- package/docs/templates/agents-md.md +0 -110
- package/docs/templates/code-wiki.md +0 -96
- package/docs/templates/demo.md +0 -85
- package/docs/templates/grokbot-agents.md +0 -53
- package/docs/templates/security-help.md +0 -70
- package/src/client.ts +0 -23
- package/src/internal/tenant-slack/relay.ts +0 -203
- package/templates/pr-autofixer/agent/storage.ts +0 -7
|
@@ -193,7 +193,7 @@ const APPLY_REMINDER_OUTCOME_MAX_ATTEMPTS = 3;
|
|
|
193
193
|
const APPLY_REMINDER_OUTCOME_RETRY_DELAY_MS = 50;
|
|
194
194
|
|
|
195
195
|
async function sleepMs(ms: number): Promise<void> {
|
|
196
|
-
await new Promise(
|
|
196
|
+
await new Promise(resolve => setTimeout(resolve, ms));
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
async function withBoundedApplyRetries<T>(run: () => Promise<T>): Promise<T> {
|
|
@@ -126,7 +126,7 @@ export function renderAgentsIndexHtml(
|
|
|
126
126
|
const docs = options.docs !== false;
|
|
127
127
|
const multi = options.multi === true;
|
|
128
128
|
const cards = agents
|
|
129
|
-
.map(
|
|
129
|
+
.map(agent => {
|
|
130
130
|
const playground =
|
|
131
131
|
agent.slug === "" ? "/playground" : `/${agent.slug}/playground`;
|
|
132
132
|
const slugLabel = agent.slug === "" ? "/" : `/${agent.slug}`;
|
|
@@ -143,7 +143,7 @@ export function renderAgentsIndexHtml(
|
|
|
143
143
|
|
|
144
144
|
const routes = hostRouteRows(agents, docs, multi)
|
|
145
145
|
.map(
|
|
146
|
-
|
|
146
|
+
row =>
|
|
147
147
|
` <tr><td><a href="${escapeHtml(row.href)}"><code>${escapeHtml(row.path)}</code></a></td><td>${escapeHtml(row.blurb)}</td></tr>`
|
|
148
148
|
)
|
|
149
149
|
.join("\n");
|
|
@@ -220,7 +220,7 @@ export function startPlaygroundDevServer(options: {
|
|
|
220
220
|
});
|
|
221
221
|
|
|
222
222
|
let stopped = false;
|
|
223
|
-
child.on("error",
|
|
223
|
+
child.on("error", err => {
|
|
224
224
|
if (stopped) {
|
|
225
225
|
return;
|
|
226
226
|
}
|
|
@@ -272,7 +272,7 @@ function spawnVite(
|
|
|
272
272
|
stdio: "inherit",
|
|
273
273
|
});
|
|
274
274
|
child.on("error", reject);
|
|
275
|
-
child.on("exit",
|
|
275
|
+
child.on("exit", code => {
|
|
276
276
|
resolve(code ?? 1);
|
|
277
277
|
});
|
|
278
278
|
});
|
|
@@ -199,7 +199,7 @@ export async function startPlaygroundProxy(
|
|
|
199
199
|
// Drop keep-alive / streamed playground connections so Ctrl-C
|
|
200
200
|
// does not hang waiting for active sockets.
|
|
201
201
|
server.closeAllConnections();
|
|
202
|
-
server.close(
|
|
202
|
+
server.close(error => {
|
|
203
203
|
if (error) {
|
|
204
204
|
reject(error);
|
|
205
205
|
return;
|
|
@@ -484,7 +484,7 @@ async function forwardOnce(args: {
|
|
|
484
484
|
};
|
|
485
485
|
|
|
486
486
|
return await new Promise<number>((resolve, reject) => {
|
|
487
|
-
const upstreamReq = requestFn(options,
|
|
487
|
+
const upstreamReq = requestFn(options, upstreamRes => {
|
|
488
488
|
const status = upstreamRes.statusCode ?? 502;
|
|
489
489
|
if (status === 401 && args.deferWriteOnUnauthorized) {
|
|
490
490
|
// Drain so the socket can be reused; caller will refresh + retry.
|
|
@@ -511,7 +511,7 @@ async function forwardOnce(args: {
|
|
|
511
511
|
});
|
|
512
512
|
});
|
|
513
513
|
|
|
514
|
-
upstreamReq.on("error",
|
|
514
|
+
upstreamReq.on("error", error => {
|
|
515
515
|
reject(error);
|
|
516
516
|
});
|
|
517
517
|
|
|
@@ -207,7 +207,7 @@ export function buildDatadogGaugeSeries(args: {
|
|
|
207
207
|
value: args.eventLog.residentSessions,
|
|
208
208
|
},
|
|
209
209
|
];
|
|
210
|
-
return points.map(
|
|
210
|
+
return points.map(point => ({
|
|
211
211
|
metric: point.name,
|
|
212
212
|
type: "gauge",
|
|
213
213
|
points: [[args.timestampSec, point.value]],
|
|
@@ -287,9 +287,7 @@ export class ReminderRunner {
|
|
|
287
287
|
if (this.platformTimers !== undefined) {
|
|
288
288
|
return;
|
|
289
289
|
}
|
|
290
|
-
const armed = [...this.records.values()].filter(
|
|
291
|
-
(r) => r.status === "armed"
|
|
292
|
-
);
|
|
290
|
+
const armed = [...this.records.values()].filter(r => r.status === "armed");
|
|
293
291
|
let restored = 0;
|
|
294
292
|
let disarmedOrphan = 0;
|
|
295
293
|
for (const record of armed) {
|
|
@@ -544,7 +542,7 @@ export class ReminderRunner {
|
|
|
544
542
|
}): Promise<ReminderInfo[]> {
|
|
545
543
|
const all = await this.allRecords();
|
|
546
544
|
return all
|
|
547
|
-
.filter(
|
|
545
|
+
.filter(r => {
|
|
548
546
|
if (filter?.status !== undefined) {
|
|
549
547
|
const publicStatus = r.status === "firing" ? "armed" : r.status;
|
|
550
548
|
if (publicStatus !== filter.status) {
|
|
@@ -562,7 +560,7 @@ export class ReminderRunner {
|
|
|
562
560
|
}
|
|
563
561
|
return true;
|
|
564
562
|
})
|
|
565
|
-
.map(
|
|
563
|
+
.map(r => {
|
|
566
564
|
const live = this.handlers.get(r.id);
|
|
567
565
|
const info = toInfo(r);
|
|
568
566
|
if (live === undefined) return info;
|
|
@@ -614,7 +612,7 @@ export class ReminderRunner {
|
|
|
614
612
|
continuationToken: string,
|
|
615
613
|
reason: string
|
|
616
614
|
): Promise<number> {
|
|
617
|
-
const armed = (await this.allRecords()).filter(
|
|
615
|
+
const armed = (await this.allRecords()).filter(r => r.status === "armed");
|
|
618
616
|
let n = 0;
|
|
619
617
|
for (const record of armed) {
|
|
620
618
|
if (record.continuationToken === continuationToken) {
|
|
@@ -640,7 +638,7 @@ export class ReminderRunner {
|
|
|
640
638
|
return this.controlPlane!.rekeyReminders(channelId, oldToken, newToken);
|
|
641
639
|
}
|
|
642
640
|
const armed = (await this.allRecords()).filter(
|
|
643
|
-
|
|
641
|
+
r => r.status === "armed" || r.status === "firing"
|
|
644
642
|
);
|
|
645
643
|
let n = 0;
|
|
646
644
|
for (const record of armed) {
|
|
@@ -672,7 +670,7 @@ export class ReminderRunner {
|
|
|
672
670
|
}> {
|
|
673
671
|
const record = await this.getRecord(reminderId);
|
|
674
672
|
if (record === undefined) {
|
|
675
|
-
const ids = (await this.allRecords()).map(
|
|
673
|
+
const ids = (await this.allRecords()).map(r => r.id);
|
|
676
674
|
throw new UnknownReminderError(reminderId, ids);
|
|
677
675
|
}
|
|
678
676
|
if (
|
|
@@ -815,7 +813,7 @@ export class ReminderRunner {
|
|
|
815
813
|
Math.max(0, nextFireAtMs - Date.now())
|
|
816
814
|
);
|
|
817
815
|
const timer = setTimeout(() => {
|
|
818
|
-
void this.fire(record.id).catch(async
|
|
816
|
+
void this.fire(record.id).catch(async error => {
|
|
819
817
|
this.logger(
|
|
820
818
|
`[agent-sdk] reminder "${record.id}" fire failed: ${
|
|
821
819
|
error instanceof Error ? error.message : String(error)
|
|
@@ -1082,7 +1080,7 @@ export class ReminderRunner {
|
|
|
1082
1080
|
channelId === HTTP_CHANNEL_ID
|
|
1083
1081
|
? httpContinuationIdentity(project.httpChannel)
|
|
1084
1082
|
: channelContinuationIdentity(
|
|
1085
|
-
project.channels.find(
|
|
1083
|
+
project.channels.find(channel => channel.id === channelId)
|
|
1086
1084
|
?.definition
|
|
1087
1085
|
);
|
|
1088
1086
|
return continuationSource(identity) === "control-plane";
|
|
@@ -140,7 +140,7 @@ export class ReminderStore {
|
|
|
140
140
|
async listArmed(): Promise<ReminderRecord[]> {
|
|
141
141
|
const all = await this.list();
|
|
142
142
|
// Treat in-flight claims as still armed for restart / listing purposes.
|
|
143
|
-
return all.filter(
|
|
143
|
+
return all.filter(r => r.status === "armed" || r.status === "firing");
|
|
144
144
|
}
|
|
145
145
|
|
|
146
146
|
async get(id: string): Promise<ReminderRecord | undefined> {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { HttpSessionAdmitError } from "../types.js";
|
|
1
2
|
import { InvalidAsOfError, VacuousTimeArgsError } from "./as-of.js";
|
|
2
3
|
import { V2EngineError } from "./continuation-identity.js";
|
|
3
4
|
import {
|
|
@@ -52,6 +53,14 @@ export function mapThrownRequestError(
|
|
|
52
53
|
retry: HOSTED_GUEST_RETRY_TERMINAL,
|
|
53
54
|
};
|
|
54
55
|
}
|
|
56
|
+
if (error instanceof HttpSessionAdmitError) {
|
|
57
|
+
return {
|
|
58
|
+
status: 400,
|
|
59
|
+
code: "invalid_request",
|
|
60
|
+
message: error.message,
|
|
61
|
+
retry: HOSTED_GUEST_RETRY_TERMINAL,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
55
64
|
if (
|
|
56
65
|
error instanceof InvalidAsOfError ||
|
|
57
66
|
error instanceof VacuousTimeArgsError
|
|
@@ -48,18 +48,18 @@ export function validateMountConnectionsConfig(args: {
|
|
|
48
48
|
const label = args.slug === "" ? args.project.name : args.slug;
|
|
49
49
|
const hostConnectionNames = new Set(
|
|
50
50
|
(args.project.agent.hostConnections ?? []).map(
|
|
51
|
-
|
|
51
|
+
connection => connection.name
|
|
52
52
|
)
|
|
53
53
|
);
|
|
54
54
|
const filteredRefs = args.accountRefs.filter(
|
|
55
|
-
|
|
55
|
+
ref => ref.servers !== undefined && !hostConnectionNames.has(ref.name)
|
|
56
56
|
);
|
|
57
57
|
if (filteredRefs.length === 0) {
|
|
58
58
|
return;
|
|
59
59
|
}
|
|
60
60
|
throw new Error(
|
|
61
61
|
`[agent-sdk] agent "${label}" has Cursor account MCP connections with \`servers\` filters (${filteredRefs
|
|
62
|
-
.map(
|
|
62
|
+
.map(ref => ref.name)
|
|
63
63
|
.join(
|
|
64
64
|
", "
|
|
65
65
|
)}) but no --public-url; cloud-runtime turns cannot honor those filters without a public bridge URL. Set --public-url or remove the \`servers\` filter.`
|
|
@@ -81,7 +81,7 @@ export function assertCloudCanHonorAccountServersFilters(args: {
|
|
|
81
81
|
return;
|
|
82
82
|
}
|
|
83
83
|
const blocked = args.resolvedConnections.filter(
|
|
84
|
-
|
|
84
|
+
connection =>
|
|
85
85
|
connection.accountServersFilter !== undefined &&
|
|
86
86
|
connection.cloudUrl === undefined &&
|
|
87
87
|
args.bridgedNames?.has(connection.name) !== true
|
|
@@ -91,7 +91,7 @@ export function assertCloudCanHonorAccountServersFilters(args: {
|
|
|
91
91
|
}
|
|
92
92
|
throw new Error(
|
|
93
93
|
`[agent-sdk] cloud turn cannot honor Cursor account \`servers\` filters (${blocked
|
|
94
|
-
.map(
|
|
94
|
+
.map(connection => connection.name)
|
|
95
95
|
.join(
|
|
96
96
|
", "
|
|
97
97
|
)}) without --public-url; set --public-url so cloud turns reach the filtered account bridge instead of falling back to native connectors.`
|
|
@@ -140,10 +140,10 @@ export function resolveMountConnections(args: {
|
|
|
140
140
|
|
|
141
141
|
if (cloudCapable) {
|
|
142
142
|
const hostOauthNames = agent.connections
|
|
143
|
-
.filter(
|
|
143
|
+
.filter(connection =>
|
|
144
144
|
isHostOauthConnectionTransport(connection.transport)
|
|
145
145
|
)
|
|
146
|
-
.map(
|
|
146
|
+
.map(connection => connection.name);
|
|
147
147
|
if (hostOauthNames.length > 0) {
|
|
148
148
|
args.logger(
|
|
149
149
|
args.cloudToolsBridge === true
|
|
@@ -168,7 +168,7 @@ export function resolveMountConnections(args: {
|
|
|
168
168
|
if (cloudCapable && args.publicUrl === undefined) {
|
|
169
169
|
args.logger(
|
|
170
170
|
`[agent-sdk] warning: agent "${label}" has peer MCP connections (${peers
|
|
171
|
-
.map(
|
|
171
|
+
.map(peer => peer.name)
|
|
172
172
|
.join(
|
|
173
173
|
", "
|
|
174
174
|
)}) but no --public-url; cloud-runtime turns cannot reach this host's loopback address, so peers are omitted from cloud turns.`
|
|
@@ -2,30 +2,87 @@
|
|
|
2
2
|
* Run the authored `defineResult` commit on the final assistant text.
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import type { ResultContext, ResultDefinition } from "../types.js";
|
|
5
|
+
import type { ResultContext, ResultDefinition, TurnUsage } from "../types.js";
|
|
6
|
+
|
|
7
|
+
/** Same-turn `runTurn` retries after `ctx.reject` (initial commit + this many). */
|
|
8
|
+
export const RESULT_REPAIR_BUDGET = 2;
|
|
9
|
+
|
|
10
|
+
export class ResultRejectError extends Error {
|
|
11
|
+
override readonly name = "ResultRejectError";
|
|
12
|
+
}
|
|
6
13
|
|
|
7
14
|
export type ResultParse =
|
|
8
15
|
| { ok: true; text: string }
|
|
9
|
-
| { ok: false; message: string }
|
|
16
|
+
| { ok: false; kind: "error"; message: string }
|
|
17
|
+
| { ok: false; kind: "reject"; message: string };
|
|
18
|
+
|
|
19
|
+
export function resultRepairPrompt(message: string): string {
|
|
20
|
+
return [
|
|
21
|
+
"Your previous turn result was not applied.",
|
|
22
|
+
"",
|
|
23
|
+
message,
|
|
24
|
+
"",
|
|
25
|
+
"Revise the result and finish the turn again. The host will commit the new assistant text.",
|
|
26
|
+
].join("\n");
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export function addTurnUsage(
|
|
30
|
+
left: TurnUsage | undefined,
|
|
31
|
+
right: TurnUsage | undefined
|
|
32
|
+
): TurnUsage | undefined {
|
|
33
|
+
if (left === undefined) {
|
|
34
|
+
return right;
|
|
35
|
+
}
|
|
36
|
+
if (right === undefined) {
|
|
37
|
+
return left;
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
inputTokens: left.inputTokens + right.inputTokens,
|
|
41
|
+
outputTokens: left.outputTokens + right.outputTokens,
|
|
42
|
+
cacheReadTokens: left.cacheReadTokens + right.cacheReadTokens,
|
|
43
|
+
cacheWriteTokens: left.cacheWriteTokens + right.cacheWriteTokens,
|
|
44
|
+
...(left.reasoningTokens !== undefined ||
|
|
45
|
+
right.reasoningTokens !== undefined
|
|
46
|
+
? {
|
|
47
|
+
reasoningTokens:
|
|
48
|
+
(left.reasoningTokens ?? 0) + (right.reasoningTokens ?? 0),
|
|
49
|
+
}
|
|
50
|
+
: {}),
|
|
51
|
+
};
|
|
52
|
+
}
|
|
10
53
|
|
|
11
54
|
export async function applyAuthoredResult(args: {
|
|
12
55
|
definition: ResultDefinition;
|
|
13
56
|
text: string | undefined;
|
|
14
57
|
dryRun: boolean;
|
|
15
|
-
ctx: Omit<ResultContext, "text">;
|
|
58
|
+
ctx: Omit<ResultContext, "text" | "reject">;
|
|
16
59
|
}): Promise<ResultParse> {
|
|
17
60
|
if (args.text === undefined || args.text.trim() === "") {
|
|
18
|
-
return {
|
|
61
|
+
return {
|
|
62
|
+
ok: false,
|
|
63
|
+
kind: "error",
|
|
64
|
+
message: "turn produced no assistant text",
|
|
65
|
+
};
|
|
19
66
|
}
|
|
20
67
|
const text = args.text;
|
|
21
68
|
if (args.dryRun) {
|
|
22
69
|
return { ok: true, text };
|
|
23
70
|
}
|
|
24
71
|
try {
|
|
25
|
-
await args.definition.commit({
|
|
72
|
+
await args.definition.commit({
|
|
73
|
+
...args.ctx,
|
|
74
|
+
text,
|
|
75
|
+
reject(message: string): never {
|
|
76
|
+
throw new ResultRejectError(message);
|
|
77
|
+
},
|
|
78
|
+
});
|
|
26
79
|
} catch (error) {
|
|
80
|
+
if (error instanceof ResultRejectError) {
|
|
81
|
+
return { ok: false, kind: "reject", message: error.message };
|
|
82
|
+
}
|
|
27
83
|
return {
|
|
28
84
|
ok: false,
|
|
85
|
+
kind: "error",
|
|
29
86
|
message:
|
|
30
87
|
error instanceof Error ? error.message : `on commit: ${String(error)}`,
|
|
31
88
|
};
|
package/src/internal/router.ts
CHANGED
|
@@ -86,14 +86,14 @@ export class Router {
|
|
|
86
86
|
}
|
|
87
87
|
|
|
88
88
|
function compilePattern(pattern: string): Segment[] {
|
|
89
|
-
const segments: Segment[] = splitPath(pattern).map(
|
|
89
|
+
const segments: Segment[] = splitPath(pattern).map(part =>
|
|
90
90
|
part.startsWith(":")
|
|
91
91
|
? { kind: "param", name: part.slice(1) }
|
|
92
92
|
: part.startsWith("*")
|
|
93
93
|
? { kind: "rest", name: part.slice(1) }
|
|
94
94
|
: { kind: "literal", value: part }
|
|
95
95
|
);
|
|
96
|
-
const restIndex = segments.findIndex(
|
|
96
|
+
const restIndex = segments.findIndex(segment => segment.kind === "rest");
|
|
97
97
|
if (restIndex !== -1 && restIndex !== segments.length - 1) {
|
|
98
98
|
throw new Error(
|
|
99
99
|
`Route pattern "${pattern}" may only use a catch-all (*name) as the last segment.`
|
|
@@ -103,7 +103,7 @@ function compilePattern(pattern: string): Segment[] {
|
|
|
103
103
|
}
|
|
104
104
|
|
|
105
105
|
function splitPath(path: string): string[] {
|
|
106
|
-
return path.split("/").filter(
|
|
106
|
+
return path.split("/").filter(part => part !== "");
|
|
107
107
|
}
|
|
108
108
|
|
|
109
109
|
function matchSegments(
|
|
@@ -138,7 +138,7 @@ function matchSegments(
|
|
|
138
138
|
if (hasRest) {
|
|
139
139
|
params[last.name] = pathSegments
|
|
140
140
|
.slice(fixedCount)
|
|
141
|
-
.map(
|
|
141
|
+
.map(value => decodeURIComponent(value))
|
|
142
142
|
.join("/");
|
|
143
143
|
}
|
|
144
144
|
return params;
|
|
@@ -228,8 +228,8 @@ async function runOneTurn(args: OneTurnArgs): Promise<OneTurnResult> {
|
|
|
228
228
|
onEvent: args.onEvent,
|
|
229
229
|
});
|
|
230
230
|
|
|
231
|
-
const turnFailed = events.some(
|
|
232
|
-
const sessionFailed = events.some(
|
|
231
|
+
const turnFailed = events.some(e => e.type === "turn.failed");
|
|
232
|
+
const sessionFailed = events.some(e => e.type === "session.failed");
|
|
233
233
|
return {
|
|
234
234
|
sessionId,
|
|
235
235
|
...(continuationToken === undefined ? {} : { continuationToken }),
|
|
@@ -49,7 +49,7 @@ export class ScheduleRunner {
|
|
|
49
49
|
project: AgentProject,
|
|
50
50
|
private readonly logger: (line: string) => void = () => {}
|
|
51
51
|
) {
|
|
52
|
-
this.schedules = project.schedules.map(
|
|
52
|
+
this.schedules = project.schedules.map(schedule => ({
|
|
53
53
|
name: schedule.name,
|
|
54
54
|
cron: parseCron(schedule.cron),
|
|
55
55
|
discovered: schedule,
|
|
@@ -57,7 +57,7 @@ export class ScheduleRunner {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
get scheduleIds(): string[] {
|
|
60
|
-
return this.schedules.map(
|
|
60
|
+
return this.schedules.map(schedule => schedule.name);
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
start(): void {
|
|
@@ -88,7 +88,7 @@ export class ScheduleRunner {
|
|
|
88
88
|
this.lastFiredMinute = minute;
|
|
89
89
|
for (const schedule of this.schedules) {
|
|
90
90
|
if (schedule.cron.matches(now)) {
|
|
91
|
-
void this.dispatch(schedule.name).catch(
|
|
91
|
+
void this.dispatch(schedule.name).catch(error => {
|
|
92
92
|
this.logger(
|
|
93
93
|
`[agent-sdk] schedule "${schedule.name}" dispatch failed: ${
|
|
94
94
|
error instanceof Error ? error.message : String(error)
|
|
@@ -103,7 +103,7 @@ export class ScheduleRunner {
|
|
|
103
103
|
|
|
104
104
|
/** Fire a schedule by name, exactly once. Returns the started sessions. */
|
|
105
105
|
async dispatch(scheduleId: string): Promise<{ sessionIds: string[] }> {
|
|
106
|
-
const schedule = this.schedules.find(
|
|
106
|
+
const schedule = this.schedules.find(s => s.name === scheduleId);
|
|
107
107
|
if (schedule === undefined) {
|
|
108
108
|
throw new UnknownScheduleError(scheduleId, this.scheduleIds);
|
|
109
109
|
}
|
|
@@ -131,7 +131,7 @@ export class ScheduleRunner {
|
|
|
131
131
|
channel: Parameters<SessionEngine["receive"]>[0],
|
|
132
132
|
input: ReceiveInput
|
|
133
133
|
): Promise<ChannelSession> => {
|
|
134
|
-
const promise = this.engine.receive(channel, input).then(
|
|
134
|
+
const promise = this.engine.receive(channel, input).then(session => {
|
|
135
135
|
sessionIds.push(session.id);
|
|
136
136
|
return session;
|
|
137
137
|
});
|
|
@@ -146,7 +146,7 @@ export class ScheduleRunner {
|
|
|
146
146
|
auth: APP_AUTH,
|
|
147
147
|
...callOptions,
|
|
148
148
|
}),
|
|
149
|
-
waitUntil:
|
|
149
|
+
waitUntil: promise => {
|
|
150
150
|
this.engine.trackBackground(promise);
|
|
151
151
|
},
|
|
152
152
|
appAuth: APP_AUTH,
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Provider-neutral PR URL parse. GitHub.com plus the Origin page shapes
|
|
3
|
-
* humans paste: cursor.com/codebase,
|
|
3
|
+
* humans paste: cursor.com/codebase (canonical), origin.cursor.com, and the
|
|
4
|
+
* retired review-host shape that older links and stored PR records still
|
|
5
|
+
* carry.
|
|
4
6
|
*
|
|
5
7
|
* {@link parseScmPrUrl} is the wider parse the review seams use: it also
|
|
6
8
|
* recognizes GitLab merge requests (`/-/merge_requests/<iid>` on any host),
|
|
@@ -47,6 +49,13 @@ export type ParsedScmPrUrl = {
|
|
|
47
49
|
|
|
48
50
|
const ORIGIN_PAGE = /^origin(-[a-z0-9]+)?\.cursor\.com$/i;
|
|
49
51
|
|
|
52
|
+
/**
|
|
53
|
+
* Retired Origin UI host. Accepted on input only, for links minted before
|
|
54
|
+
* the move to cursor.com/codebase; every canonical URL this module emits is
|
|
55
|
+
* the cursor.com shape.
|
|
56
|
+
*/
|
|
57
|
+
const LEGACY_REVIEW_CURSOR_HOSTS = new Set(["review.cursor.com"]);
|
|
58
|
+
|
|
50
59
|
function positiveInt(raw: string | undefined): number | undefined {
|
|
51
60
|
if (raw === undefined) {
|
|
52
61
|
return undefined;
|
|
@@ -145,7 +154,7 @@ export function parseScmPrUrl(raw: string): ParsedScmPrUrl | undefined {
|
|
|
145
154
|
return parsed("origin", host, parts[1], parts[2], positiveInt(parts[4]));
|
|
146
155
|
}
|
|
147
156
|
|
|
148
|
-
if (host
|
|
157
|
+
if (LEGACY_REVIEW_CURSOR_HOSTS.has(host) && parts[0] === "pr") {
|
|
149
158
|
if (parts.length >= 5 && parts[3] === "github") {
|
|
150
159
|
return parsed("origin", host, parts[1], parts[2], positiveInt(parts[4]));
|
|
151
160
|
}
|
|
@@ -79,18 +79,6 @@ export type PrewarmOutcome =
|
|
|
79
79
|
| { readonly warmed: true }
|
|
80
80
|
| { readonly warmed: false; readonly reason: string };
|
|
81
81
|
|
|
82
|
-
/**
|
|
83
|
-
* `CursorAgentPlatform.prewarmLocalWorkspace` as of `@cursor/sdk` 1.0.26.
|
|
84
|
-
* Declared structurally so this keeps building — and reports that it skipped
|
|
85
|
-
* warming — against the pinned older SDK. Delete once the pin passes that
|
|
86
|
-
* version.
|
|
87
|
-
*/
|
|
88
|
-
type MaybePrewarmingPlatform = {
|
|
89
|
-
prewarmLocalWorkspace?: (
|
|
90
|
-
options: AgentOptions
|
|
91
|
-
) => Promise<() => Promise<void>>;
|
|
92
|
-
};
|
|
93
|
-
|
|
94
82
|
/**
|
|
95
83
|
* How long a non-`--dev` serve holds workspace scans (rules, skills,
|
|
96
84
|
* `AGENTS.md`, ignore files). The SDK default is 20s for an editor whose
|
|
@@ -233,7 +221,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
233
221
|
let sawUpdate = false;
|
|
234
222
|
const tracked: RunnerTurnRequest = {
|
|
235
223
|
...request,
|
|
236
|
-
onUpdate:
|
|
224
|
+
onUpdate: update => {
|
|
237
225
|
sawUpdate = true;
|
|
238
226
|
return request.onUpdate(update);
|
|
239
227
|
},
|
|
@@ -272,7 +260,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
272
260
|
request.images !== undefined && request.images.length > 0
|
|
273
261
|
? {
|
|
274
262
|
text: request.prompt,
|
|
275
|
-
images: request.images.map(
|
|
263
|
+
images: request.images.map(image => ({
|
|
276
264
|
data: image.data,
|
|
277
265
|
mimeType: image.mimeType,
|
|
278
266
|
})),
|
|
@@ -416,15 +404,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
416
404
|
* {@link dispose}; dropping it early would tear the workspace back down.
|
|
417
405
|
*/
|
|
418
406
|
async prewarm(request: RunnerPrewarmRequest): Promise<PrewarmOutcome> {
|
|
419
|
-
const platform =
|
|
420
|
-
if (typeof platform.prewarmLocalWorkspace !== "function") {
|
|
421
|
-
// Older @cursor/sdk. Turns still work; they just pay on the first one.
|
|
422
|
-
return {
|
|
423
|
-
warmed: false,
|
|
424
|
-
reason:
|
|
425
|
-
"the installed @cursor/sdk has no prewarmLocalWorkspace; upgrade it to warm the workspace before the first turn",
|
|
426
|
-
};
|
|
427
|
-
}
|
|
407
|
+
const platform = await createAgentPlatform();
|
|
428
408
|
const release = await platform.prewarmLocalWorkspace(
|
|
429
409
|
await this.buildLocalOptions(request)
|
|
430
410
|
);
|
|
@@ -453,9 +433,9 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
453
433
|
|
|
454
434
|
async dispose(): Promise<void> {
|
|
455
435
|
const releases = this.prewarmReleases.splice(0);
|
|
456
|
-
await Promise.allSettled(releases.map(
|
|
436
|
+
await Promise.allSettled(releases.map(release => release()));
|
|
457
437
|
const agents = await Promise.allSettled(
|
|
458
|
-
[...this.agents.values()].map(
|
|
438
|
+
[...this.agents.values()].map(handle => handle.agent)
|
|
459
439
|
);
|
|
460
440
|
this.agents.clear();
|
|
461
441
|
for (const settled of agents) {
|
|
@@ -479,7 +459,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
479
459
|
);
|
|
480
460
|
this.evictAgent(request.sessionId, cached.agent);
|
|
481
461
|
}
|
|
482
|
-
const agentPromise = this.openAgent(request).catch(
|
|
462
|
+
const agentPromise = this.openAgent(request).catch(error => {
|
|
483
463
|
// Nothing opened, so there is no handle to close — just free the slot.
|
|
484
464
|
this.agents.delete(request.sessionId);
|
|
485
465
|
throw error;
|
|
@@ -502,7 +482,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
502
482
|
return;
|
|
503
483
|
}
|
|
504
484
|
this.agents.delete(sessionId);
|
|
505
|
-
void cached.agent.then(
|
|
485
|
+
void cached.agent.then(sdkAgent => sdkAgent.close()).catch(() => {});
|
|
506
486
|
}
|
|
507
487
|
|
|
508
488
|
private log(line: string): void {
|
|
@@ -548,7 +528,7 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
548
528
|
* goes through here too, so a warmed workspace is the one turns land on.
|
|
549
529
|
*/
|
|
550
530
|
private async buildLocalOptions(
|
|
551
|
-
request: RunnerPrewarmRequest
|
|
531
|
+
request: RunnerPrewarmRequest & Pick<RunnerTurnRequest, "instructions">
|
|
552
532
|
): Promise<AgentOptions> {
|
|
553
533
|
// Not resolveStore: an injected store is used synchronously (no
|
|
554
534
|
// microtask, no thenable assimilation), exactly as before the mirror
|
|
@@ -565,6 +545,12 @@ export class CursorSdkRunner implements AgentRunner {
|
|
|
565
545
|
...(request.disallowedTools === undefined
|
|
566
546
|
? {}
|
|
567
547
|
: { disallowedTools: request.disallowedTools }),
|
|
548
|
+
// Same shape: local-only (the SDK rejects it with `cloud`), not
|
|
549
|
+
// persisted, so it rides every create/resume. Replaces Cursor's
|
|
550
|
+
// built-in system prompt with the agent's composed instructions.
|
|
551
|
+
// Prewarm requests carry none, and the SDK's workspace cache key
|
|
552
|
+
// ignores it, so a warmed executor is still the one turns land on.
|
|
553
|
+
systemPrompt: request.instructions,
|
|
568
554
|
local: {
|
|
569
555
|
cwd: request.workspaceDir,
|
|
570
556
|
settingSources: ["project"],
|
|
@@ -103,7 +103,7 @@ export async function runEnterRestartSupervisor(options: {
|
|
|
103
103
|
function waitForExit(
|
|
104
104
|
child: ServeRestartWorkerChild
|
|
105
105
|
): Promise<{ code: number | null; signal: NodeJS.Signals | null }> {
|
|
106
|
-
return new Promise(
|
|
106
|
+
return new Promise(resolve => {
|
|
107
107
|
child.once("exit", (code, signal) => {
|
|
108
108
|
resolve({ code, signal });
|
|
109
109
|
});
|