@cursor/july 0.1.109 → 0.1.112
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 +99 -67
- 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 +29 -19
- package/dist/channels/github/github-channel.d.ts.map +1 -1
- package/dist/channels/github/github-channel.js +46 -32
- 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 +560 -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 +44 -1
- package/dist/channels/slack/dispatch.d.ts.map +1 -1
- package/dist/channels/slack/dispatch.js +323 -107
- 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 +62 -0
- package/dist/channels/slack/placeholder.d.ts.map +1 -0
- package/dist/channels/slack/placeholder.js +268 -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 +58 -30
- 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.DxTdhphC.js +309 -0
- package/dist/docs/assets/building-with-agents.md.BBCx0AUo.js +9 -0
- package/dist/docs/assets/building-with-agents.md.BBCx0AUo.lean.js +1 -0
- package/dist/docs/assets/chunks/@localSearchIndexroot.QmjDU6Jh.js +1 -0
- package/dist/docs/assets/chunks/{VPLocalSearchBox.CVQERt56.js → VPLocalSearchBox.CR3KTF0X.js} +2 -2
- package/dist/docs/assets/chunks/arc.CVVqBOdS.js +1 -0
- package/dist/docs/assets/chunks/architectureDiagram-Q4EWVU46.CJHGP4ki.js +36 -0
- package/dist/docs/assets/chunks/baseUniq.r7UVVRBP.js +1 -0
- package/dist/docs/assets/chunks/blockDiagram-DXYQGD6D.DKmMaTre.js +132 -0
- package/dist/docs/assets/chunks/c4Diagram-AHTNJAMY.DDJsntUO.js +10 -0
- package/dist/docs/assets/chunks/channel.BjpoSbz_.js +1 -0
- package/dist/docs/assets/chunks/chunk-4BX2VUAB.BK2rKt6W.js +1 -0
- package/dist/docs/assets/chunks/chunk-4TB4RGXK.DRLV8RnF.js +206 -0
- package/dist/docs/assets/chunks/chunk-55IACEB6.DaKjxtb7.js +1 -0
- package/dist/docs/assets/chunks/chunk-EDXVE4YY.C5sPCIT1.js +1 -0
- package/dist/docs/assets/chunks/chunk-FMBD7UC4.CSGWyNTB.js +15 -0
- package/dist/docs/assets/chunks/chunk-OYMX7WX6.D5tK9XEr.js +231 -0
- package/dist/docs/assets/chunks/chunk-QZHKN3VN.BeZGd1UZ.js +1 -0
- package/dist/docs/assets/chunks/chunk-YZCP3GAM.U_tfWwQR.js +1 -0
- package/dist/docs/assets/chunks/classDiagram-6PBFFD2Q.BgxOlMHw.js +1 -0
- package/dist/docs/assets/chunks/classDiagram-v2-HSJHXN6E.BgxOlMHw.js +1 -0
- package/dist/docs/assets/chunks/clone.DRuGBKZC.js +1 -0
- package/dist/docs/assets/chunks/cose-bilkent-S5V4N54A.DVeRXIb6.js +1 -0
- package/dist/docs/assets/chunks/cytoscape.esm.BQk4lpUV.js +331 -0
- package/dist/docs/assets/chunks/dagre-KV5264BT.BpKJAeRZ.js +4 -0
- package/dist/docs/assets/chunks/defaultLocale.C4B-KCzX.js +1 -0
- package/dist/docs/assets/chunks/diagram-5BDNPKRD.BQOtrd1Z.js +10 -0
- package/dist/docs/assets/chunks/diagram-G4DWMVQ6.CSDAhjPI.js +24 -0
- package/dist/docs/assets/chunks/diagram-MMDJMWI5.Dpztst2S.js +43 -0
- package/dist/docs/assets/chunks/diagram-TYMM5635.qJHRizHR.js +24 -0
- package/dist/docs/assets/chunks/erDiagram-SMLLAGMA.vbDotH3l.js +85 -0
- package/dist/docs/assets/chunks/flowDiagram-DWJPFMVM.CqS_ZQr4.js +162 -0
- package/dist/docs/assets/chunks/{framework.BCISBCiQ.js → framework.BNw1pucY.js} +6 -6
- package/dist/docs/assets/chunks/ganttDiagram-T4ZO3ILL.DTLdR4pN.js +292 -0
- package/dist/docs/assets/chunks/gitGraphDiagram-UUTBAWPF.D04lnbnr.js +106 -0
- package/dist/docs/assets/chunks/graph.BlfqLJsM.js +1 -0
- package/dist/docs/assets/chunks/infoDiagram-42DDH7IO.tAooImWA.js +2 -0
- package/dist/docs/assets/chunks/init.Gi6I4Gst.js +1 -0
- package/dist/docs/assets/chunks/ishikawaDiagram-UXIWVN3A.ClUsVqnJ.js +70 -0
- package/dist/docs/assets/chunks/journeyDiagram-VCZTEJTY.C3tUgyCg.js +139 -0
- package/dist/docs/assets/chunks/kanban-definition-6JOO6SKY.CtD9-QCe.js +89 -0
- package/dist/docs/assets/chunks/katex.DkKDou_j.js +257 -0
- package/dist/docs/assets/chunks/layout.D38U-LnT.js +1 -0
- package/dist/docs/assets/chunks/linear.BJmssyhN.js +1 -0
- package/dist/docs/assets/chunks/min.DNgXoouU.js +1 -0
- package/dist/docs/assets/chunks/mindmap-definition-QFDTVHPH.Dcp6cxeu.js +96 -0
- package/dist/docs/assets/chunks/ordinal.DBvzRdQf.js +1 -0
- package/dist/docs/assets/chunks/pieDiagram-DEJITSTG.CLDw6zIs.js +30 -0
- package/dist/docs/assets/chunks/quadrantDiagram-34T5L4WZ.CYaeeY4c.js +7 -0
- package/dist/docs/assets/chunks/requirementDiagram-MS252O5E.gMYuRpq2.js +84 -0
- package/dist/docs/assets/chunks/sankeyDiagram-XADWPNL6.CZqyHFbc.js +10 -0
- package/dist/docs/assets/chunks/sequenceDiagram-FGHM5R23.BTsCjUDN.js +157 -0
- package/dist/docs/assets/chunks/stateDiagram-FHFEXIEX.CftT9mLJ.js +1 -0
- package/dist/docs/assets/chunks/stateDiagram-v2-QKLJ7IA2.-43J68xB.js +1 -0
- package/dist/docs/assets/chunks/{theme.Dnsd3XOn.js → theme.B_7J9ZsV.js} +2 -2
- package/dist/docs/assets/chunks/timeline-definition-GMOUNBTQ.DbU3WUNw.js +120 -0
- package/dist/docs/assets/chunks/vennDiagram-DHZGUBPP.ixsq-q2u.js +34 -0
- package/dist/docs/assets/chunks/virtual_mermaid-config.DDnGl6nM.js +1 -0
- package/dist/docs/assets/chunks/wardley-RL74JXVD.WRXz-Dux.js +162 -0
- package/dist/docs/assets/chunks/wardleyDiagram-NUSXRM2D.C0ewvgbp.js +20 -0
- package/dist/docs/assets/chunks/xychartDiagram-5P7HB3ND.nAEhF4bO.js +7 -0
- package/dist/docs/assets/deployment.md.D2jQZuFx.js +32 -0
- package/dist/docs/assets/deployment.md.D2jQZuFx.lean.js +1 -0
- package/dist/docs/assets/evals.md.BYvfZ-PO.js +72 -0
- package/dist/docs/assets/evals.md.BYvfZ-PO.lean.js +1 -0
- package/dist/docs/assets/guides_agent-to-agent.md.8oDTfu-E.js +30 -0
- package/dist/docs/assets/guides_agent-to-agent.md.8oDTfu-E.lean.js +1 -0
- package/dist/docs/assets/guides_bitbucket.md.mpevW-VP.js +145 -0
- package/dist/docs/assets/guides_bitbucket.md.mpevW-VP.lean.js +1 -0
- package/dist/docs/assets/guides_cloud-agents.md.Cp1O3u-X.js +15 -0
- package/dist/docs/assets/guides_cloud-agents.md.Cp1O3u-X.lean.js +1 -0
- package/dist/docs/assets/guides_convert-automation.md.CqEyfP6Y.js +43 -0
- package/dist/docs/assets/guides_convert-automation.md.CqEyfP6Y.lean.js +1 -0
- package/dist/docs/assets/guides_github.md.BwpBp3ed.js +156 -0
- package/dist/docs/assets/guides_github.md.BwpBp3ed.lean.js +1 -0
- package/dist/docs/assets/guides_gitlab.md.DaEC3nMk.js +153 -0
- package/dist/docs/assets/guides_gitlab.md.DaEC3nMk.lean.js +1 -0
- package/dist/docs/assets/guides_grokbot-agents.md.CMhZNdEU.js +16 -0
- package/dist/docs/assets/guides_grokbot-agents.md.CMhZNdEU.lean.js +1 -0
- package/dist/docs/assets/guides_improve.md.Bnp4F99w.js +22 -0
- package/dist/docs/assets/guides_improve.md.Bnp4F99w.lean.js +1 -0
- package/dist/docs/assets/guides_mcp-oauth.md.bSFakfCY.js +50 -0
- package/dist/docs/assets/guides_mcp-oauth.md.bSFakfCY.lean.js +1 -0
- package/dist/docs/assets/guides_opentelemetry.md.BKDxQmmd.js +35 -0
- package/dist/docs/assets/guides_opentelemetry.md.BKDxQmmd.lean.js +1 -0
- package/dist/docs/assets/guides_slack.md.Bo96y42E.js +70 -0
- package/dist/docs/assets/guides_slack.md.Bo96y42E.lean.js +1 -0
- package/dist/docs/assets/guides_webhooks.md.1A72_VEE.js +92 -0
- package/dist/docs/assets/guides_webhooks.md.1A72_VEE.lean.js +1 -0
- package/dist/docs/assets/hillclimbing.md.D4E1o5Sa.js +7 -0
- package/dist/docs/assets/hillclimbing.md.D4E1o5Sa.lean.js +1 -0
- package/dist/docs/assets/index.md.C-t81M5J.js +17 -0
- package/dist/docs/assets/index.md.C-t81M5J.lean.js +1 -0
- package/dist/docs/assets/{quickstart.md.DdQOF7Y8.js → quickstart.md.DAvVhuuU.js} +30 -38
- package/dist/docs/assets/quickstart.md.DAvVhuuU.lean.js +1 -0
- package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.js → reference_agent-config.md.DGPyw7ms.js} +1 -1
- package/dist/docs/assets/{reference_agent-config.md.CvoL6pof.lean.js → reference_agent-config.md.DGPyw7ms.lean.js} +1 -1
- package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.js → reference_artifacts.md.Bu_4HmsD.js} +1 -1
- package/dist/docs/assets/{reference_artifacts.md.Dior32Qw.lean.js → reference_artifacts.md.Bu_4HmsD.lean.js} +1 -1
- package/dist/docs/assets/{reference_channels.md.CAo-iK4j.js → reference_channels.md.nFWbzAic.js} +2 -12
- package/dist/docs/assets/{reference_channels.md.CAo-iK4j.lean.js → reference_channels.md.nFWbzAic.lean.js} +1 -1
- package/dist/docs/assets/{reference_cli.md.Deg7849l.js → reference_cli.md.DLWDz9ij.js} +5 -3
- package/dist/docs/assets/{reference_cli.md.Deg7849l.lean.js → reference_cli.md.DLWDz9ij.lean.js} +1 -1
- package/dist/docs/assets/{reference_connections.md.BojkC6c5.js → reference_connections.md.CmyrlXfY.js} +4 -4
- package/dist/docs/assets/{reference_connections.md.BojkC6c5.lean.js → reference_connections.md.CmyrlXfY.lean.js} +1 -1
- package/dist/docs/assets/reference_evals.md.DNJzM_yf.js +57 -0
- package/dist/docs/assets/reference_evals.md.DNJzM_yf.lean.js +1 -0
- package/dist/docs/assets/reference_extensions.md.Ceq-qT8d.js +58 -0
- package/dist/docs/assets/reference_extensions.md.Ceq-qT8d.lean.js +1 -0
- package/dist/docs/assets/{reference_hooks.md.BlM_bOg6.js → reference_hooks.md.B7uzNENk.js} +3 -3
- package/dist/docs/assets/{reference_hooks.md.BlM_bOg6.lean.js → reference_hooks.md.B7uzNENk.lean.js} +1 -1
- package/dist/docs/assets/{reference_http-api.md.BwaCo-VO.js → reference_http-api.md.CduHavZ2.js} +3 -3
- package/dist/docs/assets/{reference_http-api.md.BwaCo-VO.lean.js → reference_http-api.md.CduHavZ2.lean.js} +1 -1
- package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.js → reference_instructions.md.CU1My5My.js} +1 -1
- package/dist/docs/assets/{reference_instructions.md.CR7XSsGk.lean.js → reference_instructions.md.CU1My5My.lean.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.DLnoaczX.js → reference_playground.md.Ch2d0Iqi.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.DLnoaczX.lean.js → reference_playground.md.Ch2d0Iqi.lean.js} +1 -1
- package/dist/docs/assets/{reference_project-layout.md.BEU8MtQV.js → reference_project-layout.md.BGhgpy9V.js} +3 -3
- package/dist/docs/assets/{reference_project-layout.md.BEU8MtQV.lean.js → reference_project-layout.md.BGhgpy9V.lean.js} +1 -1
- package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.js → reference_prompt.md.Ccp0R53H.js} +1 -1
- package/dist/docs/assets/{reference_prompt.md.DnaD5dNK.lean.js → reference_prompt.md.Ccp0R53H.lean.js} +1 -1
- package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.js → reference_schedules.md.B2Nm6FaD.js} +1 -1
- package/dist/docs/assets/{reference_schedules.md.DI_JrHgq.lean.js → reference_schedules.md.B2Nm6FaD.lean.js} +1 -1
- package/dist/docs/assets/{reference_sessions.md.CyXV1MUw.js → reference_sessions.md.1_6Vyv7x.js} +1 -1
- package/dist/docs/assets/{reference_sessions.md.CyXV1MUw.lean.js → reference_sessions.md.1_6Vyv7x.lean.js} +1 -1
- package/dist/docs/assets/{reference_skills.md.l2ezAcaN.js → reference_skills.md.DjQkRefx.js} +1 -1
- package/dist/docs/assets/{reference_skills.md.l2ezAcaN.lean.js → reference_skills.md.DjQkRefx.lean.js} +1 -1
- package/dist/docs/assets/{reference_subagents.md.CfsIloPm.js → reference_subagents.md.BHsSMMyO.js} +2 -2
- package/dist/docs/assets/{reference_subagents.md.CfsIloPm.lean.js → reference_subagents.md.BHsSMMyO.lean.js} +1 -1
- package/dist/docs/assets/{reference_tools.md.aGrn99hP.js → reference_tools.md.BYzUTeVA.js} +4 -4
- package/dist/docs/assets/{reference_tools.md.aGrn99hP.lean.js → reference_tools.md.BYzUTeVA.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.9M575F5C.js} +1 -1
- package/dist/docs/assets/{templates_agentic-owners.md.BZSH4N9z.lean.js → templates_agentic-owners.md.9M575F5C.lean.js} +1 -1
- package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.js → templates_pr-autofixer.md.ws0DDXDy.js} +1 -1
- package/dist/docs/assets/{templates_pr-autofixer.md.Bds_XWcV.lean.js → templates_pr-autofixer.md.ws0DDXDy.lean.js} +1 -1
- package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.js → templates_security-reviewer.md.KEFYXzfK.js} +1 -1
- package/dist/docs/assets/{templates_security-reviewer.md.lshxbCLK.lean.js → templates_security-reviewer.md.KEFYXzfK.lean.js} +1 -1
- package/dist/docs/assets/templates_thermo-quality-review.md.VNJ_mohX.js +3 -0
- package/dist/docs/assets/templates_thermo-quality-review.md.VNJ_mohX.lean.js +1 -0
- package/dist/docs/assets/templates_thermo-review.md.Hi3zWOkP.js +3 -0
- package/dist/docs/assets/templates_thermo-review.md.Hi3zWOkP.lean.js +1 -0
- package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.js → templates_triage.md.CVGe_FG6.js} +1 -1
- package/dist/docs/assets/{templates_triage.md.Co4UNzkZ.lean.js → templates_triage.md.CVGe_FG6.lean.js} +1 -1
- package/dist/docs/assets/troubleshooting.md.mnfFG2Em.js +1 -0
- package/dist/docs/assets/troubleshooting.md.mnfFG2Em.lean.js +1 -0
- package/dist/docs/building-with-agents.html +47 -18
- package/dist/docs/building-with-agents.md +94 -84
- package/dist/docs/deployment.html +62 -48
- package/dist/docs/deployment.md +117 -364
- package/dist/docs/evals.html +88 -194
- package/dist/docs/evals.md +146 -673
- package/dist/docs/guides/agent-to-agent.html +65 -12
- package/dist/docs/guides/agent-to-agent.md +125 -91
- package/dist/docs/guides/bitbucket.html +182 -14
- package/dist/docs/guides/bitbucket.md +249 -48
- package/dist/docs/guides/cloud-agents.html +49 -10
- package/dist/docs/guides/cloud-agents.md +123 -66
- package/dist/docs/guides/convert-automation.html +83 -19
- package/dist/docs/guides/convert-automation.md +156 -147
- package/dist/docs/guides/github.html +187 -62
- package/dist/docs/guides/github.md +260 -245
- package/dist/docs/guides/gitlab.html +187 -15
- package/dist/docs/guides/gitlab.md +249 -50
- package/dist/docs/guides/grokbot-agents.html +51 -11
- package/dist/docs/guides/grokbot-agents.md +116 -63
- package/dist/docs/guides/improve.html +51 -10
- package/dist/docs/guides/improve.md +111 -58
- package/dist/docs/guides/mcp-oauth.html +77 -22
- package/dist/docs/guides/mcp-oauth.md +111 -121
- package/dist/docs/guides/opentelemetry.html +72 -30
- package/dist/docs/guides/opentelemetry.md +105 -187
- package/dist/docs/guides/slack.html +89 -24
- package/dist/docs/guides/slack.md +170 -191
- package/dist/docs/guides/webhooks.html +100 -200
- package/dist/docs/guides/webhooks.md +154 -386
- package/dist/docs/hashmap.json +1 -1
- package/dist/docs/hillclimbing.html +47 -11
- package/dist/docs/hillclimbing.md +101 -55
- package/dist/docs/index.html +57 -12
- package/dist/docs/index.md +83 -150
- package/dist/docs/llms-full.txt +6244 -10784
- package/dist/docs/llms.txt +23 -46
- 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 +44 -9
- package/dist/docs/reference/cli.md +2 -16
- package/dist/docs/reference/connections.html +43 -10
- package/dist/docs/reference/connections.md +3 -5
- package/dist/docs/reference/evals.html +116 -0
- package/dist/docs/reference/evals.md +293 -0
- package/dist/docs/reference/extensions.html +83 -54
- package/dist/docs/reference/extensions.md +127 -199
- package/dist/docs/reference/hooks.html +42 -9
- package/dist/docs/reference/hooks.md +34 -36
- 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/thermo-quality-review.html +62 -0
- package/dist/docs/templates/thermo-quality-review.md +75 -0
- package/dist/docs/templates/thermo-review.html +62 -0
- package/dist/docs/templates/thermo-review.md +74 -0
- package/dist/docs/templates/triage.html +41 -8
- package/dist/docs/troubleshooting.html +41 -8
- package/dist/docs/troubleshooting.md +97 -67
- 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/skills/handoff.md +3 -7
- package/dist/extensions/cursor-cloud-agents/tools/list.js +1 -1
- package/dist/extensions/improve/extension.d.ts +3 -1
- package/dist/extensions/improve/extension.d.ts.map +1 -1
- package/dist/extensions/improve/extension.js +4 -2
- package/dist/extensions/improve/skills/yourself.js +2 -2
- 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 +46 -2
- package/dist/filesystem.d.ts.map +1 -1
- package/dist/filesystem.js +160 -113
- package/dist/index.d.ts +7 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -7
- 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 +7 -0
- package/dist/internal/cli-ax.d.ts.map +1 -1
- package/dist/internal/cli-ax.js +140 -27
- 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 +15 -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-agent-template.d.ts +1 -1
- package/dist/internal/cursor-agent-template.d.ts.map +1 -1
- package/dist/internal/cursor-agent-template.js +2 -0
- 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 +7 -7
- package/dist/internal/filesystem/walk.d.ts +7 -4
- package/dist/internal/filesystem/walk.d.ts.map +1 -1
- package/dist/internal/filesystem/walk.js +35 -12
- 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 +5 -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 +46 -0
- package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
- package/dist/internal/hosted-delivery-protocol.js +126 -9
- package/dist/internal/hosted-delivery.d.ts.map +1 -1
- package/dist/internal/hosted-delivery.js +209 -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 +18 -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 +175 -126
- 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 +386 -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/skill-catalog.d.ts +28 -0
- package/dist/internal/skill-catalog.d.ts.map +1 -0
- package/dist/internal/skill-catalog.js +44 -0
- 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-B1c1LeIf.js +67 -0
- package/dist/playground/assets/index-CK2LX3iD.css +1 -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 +76 -11
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +12 -4
- package/docs/README.md +85 -152
- package/docs/building-with-agents.md +96 -86
- package/docs/deployment.md +118 -365
- package/docs/evals.md +147 -674
- package/docs/guides/agent-to-agent.md +126 -92
- package/docs/guides/bitbucket.md +250 -49
- package/docs/guides/cloud-agents.md +124 -67
- package/docs/guides/convert-automation.md +157 -148
- package/docs/guides/github.md +261 -246
- package/docs/guides/gitlab.md +250 -51
- package/docs/guides/grokbot-agents.md +117 -64
- package/docs/guides/improve.md +112 -59
- package/docs/guides/mcp-oauth.md +112 -122
- package/docs/guides/opentelemetry.md +106 -188
- package/docs/guides/slack.md +171 -192
- package/docs/guides/webhooks.md +155 -387
- package/docs/hillclimbing.md +102 -56
- package/docs/quickstart.md +45 -106
- package/docs/reference/channels.md +0 -16
- package/docs/reference/cli.md +2 -16
- package/docs/reference/connections.md +3 -5
- package/docs/reference/evals.md +298 -0
- package/docs/reference/extensions.md +128 -200
- package/docs/reference/hooks.md +34 -36
- 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/templates/thermo-quality-review.md +80 -0
- package/docs/templates/thermo-review.md +79 -0
- package/docs/troubleshooting.md +98 -68
- package/package.json +55 -37
- package/skills/framework-map/SKILL.md +2 -2
- package/skills/github/SKILL.md +21 -13
- package/skills/otel/SKILL.md +8 -18
- package/src/bin/agent-serve.ts +115 -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 +48 -21
- 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 +661 -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 +419 -168
- 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 +366 -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 +81 -14
- 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/skills/handoff.md +3 -7
- package/src/extensions/cursor-cloud-agents/tools/list.ts +1 -1
- package/src/extensions/improve/extension.ts +4 -2
- package/src/extensions/improve/skills/yourself.ts +2 -2
- 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 +182 -81
- package/src/index.ts +7 -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 +172 -29
- 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 +14 -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-agent-template.ts +2 -0
- 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 +8 -8
- package/src/internal/filesystem/walk.ts +61 -16
- 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 +5 -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 +189 -14
- package/src/internal/hosted-delivery.ts +294 -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 +18 -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 +201 -140
- package/src/internal/session-cost.ts +3 -3
- package/src/internal/session-engine.ts +516 -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/skill-catalog.ts +69 -0
- 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 +91 -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/thermo-quality-review/README.md +35 -0
- package/templates/thermo-quality-review/agent/agent.ts +8 -0
- package/templates/thermo-quality-review/agent/channels/github.ts +42 -0
- package/templates/thermo-quality-review/agent/instructions.md +43 -0
- package/templates/thermo-quality-review/agent/tools/post_findings.ts +70 -0
- package/templates/thermo-quality-review/evals/evals.config.ts +5 -0
- package/templates/thermo-quality-review/evals/review.eval.ts +62 -0
- package/templates/thermo-quality-review/package.json +18 -0
- package/templates/thermo-quality-review/tsconfig.json +12 -0
- package/templates/thermo-review/README.md +35 -0
- package/templates/thermo-review/agent/agent.ts +8 -0
- package/templates/thermo-review/agent/channels/github.ts +42 -0
- package/templates/thermo-review/agent/instructions.md +40 -0
- package/templates/thermo-review/agent/tools/post_findings.ts +70 -0
- package/templates/thermo-review/evals/evals.config.ts +5 -0
- package/templates/thermo-review/evals/review.eval.ts +53 -0
- package/templates/thermo-review/package.json +18 -0
- package/templates/thermo-review/tsconfig.json +12 -0
- 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/building-with-agents.md.D0KbSkJn.js +0 -13
- package/dist/docs/assets/building-with-agents.md.D0KbSkJn.lean.js +0 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.CFVQ4S17.js +0 -1
- 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/deployment.md.JenwuCCB.js +0 -51
- package/dist/docs/assets/deployment.md.JenwuCCB.lean.js +0 -1
- package/dist/docs/assets/evals.md.C7JLjoEP.js +0 -211
- package/dist/docs/assets/evals.md.C7JLjoEP.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_bitbucket.md.DZPzmUjU.js +0 -10
- package/dist/docs/assets/guides_bitbucket.md.DZPzmUjU.lean.js +0 -1
- package/dist/docs/assets/guides_cloud-agents.md.BsloyHdY.js +0 -9
- package/dist/docs/assets/guides_cloud-agents.md.BsloyHdY.lean.js +0 -1
- package/dist/docs/assets/guides_convert-automation.md.B4sjlodG.js +0 -12
- package/dist/docs/assets/guides_convert-automation.md.B4sjlodG.lean.js +0 -1
- package/dist/docs/assets/guides_github.md.TZaTZlfz.js +0 -64
- package/dist/docs/assets/guides_github.md.TZaTZlfz.lean.js +0 -1
- package/dist/docs/assets/guides_gitlab.md.BmqwQfdG.js +0 -14
- package/dist/docs/assets/guides_gitlab.md.BmqwQfdG.lean.js +0 -1
- package/dist/docs/assets/guides_grokbot-agents.md.DyV-WArv.js +0 -9
- package/dist/docs/assets/guides_grokbot-agents.md.DyV-WArv.lean.js +0 -1
- 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/guides_improve.md.BGVk32bK.js +0 -14
- package/dist/docs/assets/guides_improve.md.BGVk32bK.lean.js +0 -1
- package/dist/docs/assets/guides_mcp-oauth.md.Dp6cDP7f.js +0 -28
- package/dist/docs/assets/guides_mcp-oauth.md.Dp6cDP7f.lean.js +0 -1
- package/dist/docs/assets/guides_opentelemetry.md.SCRMskno.js +0 -26
- package/dist/docs/assets/guides_opentelemetry.md.SCRMskno.lean.js +0 -1
- package/dist/docs/assets/guides_slack.md.D4RVMM4G.js +0 -38
- package/dist/docs/assets/guides_slack.md.D4RVMM4G.lean.js +0 -1
- package/dist/docs/assets/guides_webhooks.md.CJK484ex.js +0 -225
- package/dist/docs/assets/guides_webhooks.md.CJK484ex.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_extensions.md.ZAVUyuEX.js +0 -62
- package/dist/docs/assets/reference_extensions.md.ZAVUyuEX.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/assets/troubleshooting.md.CYEAO9bM.js +0 -1
- package/dist/docs/assets/troubleshooting.md.CYEAO9bM.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
package/dist/internal/server.js
CHANGED
|
@@ -44,6 +44,7 @@ import { CURSOR_GITLAB_PROJECTS_HEADER, } from "../channels/gitlab/api.js";
|
|
|
44
44
|
import { getGitLabCursorAccountRuntime, resolveCursorGitLabProxyUrl, } from "../channels/gitlab/cursor-account.js";
|
|
45
45
|
import { getOriginCursorAccountRuntime, parseCursorOriginRepoScope, } from "../channels/origin/cursor-account.js";
|
|
46
46
|
import { findOriginChannelTargets } from "../channels/origin/origin-channel.js";
|
|
47
|
+
import { appendSlackQuietHint } from "../channels/slack/agentic-posted.js";
|
|
47
48
|
import { allowAll, bearerAuth, localDevStrict } from "../channels.js";
|
|
48
49
|
import { invokeChannelRoute } from "./channel-route-dispatch.js";
|
|
49
50
|
import { selectConversationMirror } from "./conversation-mirror.js";
|
|
@@ -67,6 +68,7 @@ import { HOSTED_DELIVERY_HEADER, HOSTED_GUEST_RETRY_TERMINAL, hostedGuestErrorRe
|
|
|
67
68
|
import { hostedErrorStackSnippet } from "./hosted-execution-diag.js";
|
|
68
69
|
import { flushHostedExecutionProcessDeath } from "./hosted-execution-flush.js";
|
|
69
70
|
import { buildHttpChannelRoutes, errorResponse, jsonResponse, readJsonObject, requireSessionOwner, } from "./http-channel.js";
|
|
71
|
+
import { incomingHeadersToFetch, incomingRequestHost, } from "./incoming-headers-to-fetch.js";
|
|
70
72
|
import { DEFAULT_SERVE_PORT, listenHttpServer } from "./listen-port.js";
|
|
71
73
|
import { createLocalControlPlane, } from "./local-control-plane.js";
|
|
72
74
|
import { createLogRing } from "./log-ring.js";
|
|
@@ -94,11 +96,12 @@ import { CursorSdkRunner } from "./sdk-runner.js";
|
|
|
94
96
|
import { HTTP_CHANNEL_ID, InvalidContinuationTokenError, SessionEngine, ToolInputError, ToolNotDirectlyCallableError, UnknownToolError, WorkspaceUnavailableError, } from "./session-engine.js";
|
|
95
97
|
import { registerSessionRunFatalFlush, selectSessionRunLogStore, unregisterSessionRunFatalFlush, } from "./session-run-log.js";
|
|
96
98
|
import { sessionUrlsForRequest } from "./session-urls.js";
|
|
99
|
+
import { readSkillDetail, skillListEntry, UnknownSkillError, } from "./skill-catalog.js";
|
|
97
100
|
import { flushLocalStartLog, selectStartLogStore } from "./start-log-store.js";
|
|
98
101
|
import { catalogDetailEntry, catalogListEntry } from "./tool-catalog.js";
|
|
99
102
|
function memoryHealthFields(engines) {
|
|
100
103
|
return collectMemoryHealthFields({
|
|
101
|
-
eventLog: () => sumEventLogStats(engines.map(
|
|
104
|
+
eventLog: () => sumEventLogStats(engines.map(engine => engine.eventLogMemoryStats())),
|
|
102
105
|
});
|
|
103
106
|
}
|
|
104
107
|
const MAX_BODY_BYTES = 32 * 1024 * 1024;
|
|
@@ -108,14 +111,14 @@ const ARTIFACTS_LIST_MAX_LIMIT = 1000;
|
|
|
108
111
|
function localControlPlaneRoute(runtimes) {
|
|
109
112
|
for (const runtime of runtimes) {
|
|
110
113
|
if (runtime.controlPlane !== undefined) {
|
|
111
|
-
return
|
|
114
|
+
return input => runtime.controlPlane.routeContinuation(input);
|
|
112
115
|
}
|
|
113
116
|
}
|
|
114
117
|
return undefined;
|
|
115
118
|
}
|
|
116
119
|
function firstLocalControlPlane(runtimes) {
|
|
117
120
|
var _a;
|
|
118
|
-
return (_a = runtimes.find(
|
|
121
|
+
return (_a = runtimes.find(runtime => runtime.controlPlane !== undefined)) === null || _a === void 0 ? void 0 : _a.controlPlane;
|
|
119
122
|
}
|
|
120
123
|
function isV2Project(project) {
|
|
121
124
|
return project.agent.architecture === "v2";
|
|
@@ -137,7 +140,7 @@ export function startServer(mounts_1) {
|
|
|
137
140
|
for (const { slug, project } of mounts) {
|
|
138
141
|
if (hasErrorDiagnostics(project)) {
|
|
139
142
|
const label = slug === "" ? project.name : `${slug} (${project.name})`;
|
|
140
|
-
throw new Error(`Refusing to serve agent ${label} — it has errors:\n${formatDiagnostics(project.diagnostics.filter(
|
|
143
|
+
throw new Error(`Refusing to serve agent ${label} — it has errors:\n${formatDiagnostics(project.diagnostics.filter(d => d.severity === "error"))}`);
|
|
141
144
|
}
|
|
142
145
|
}
|
|
143
146
|
const logRing = createLogRing({ capacity: 2000 });
|
|
@@ -146,14 +149,14 @@ export function startServer(mounts_1) {
|
|
|
146
149
|
const playground = (_j = options.playground) !== null && _j !== void 0 ? _j : true;
|
|
147
150
|
const hosted = options;
|
|
148
151
|
const noControlPlane = hosted.noControlPlane === true;
|
|
149
|
-
const scmProxyRequested = hosted.cursorScmProxy === true
|
|
152
|
+
const scmProxyRequested = hosted.cursorScmProxy === true;
|
|
150
153
|
const runSchedules = (_k = options.schedules) !== null && _k !== void 0 ? _k : !dev;
|
|
151
154
|
const runReminders = (_l = options.reminders) !== null && _l !== void 0 ? _l : !dev;
|
|
152
155
|
// CURSOR_AGENTKIT_VERSION is still the env the SDK reads when building
|
|
153
156
|
// its client-version header (wire prefix remains `agentkit-`). Setting it
|
|
154
157
|
// here makes the internal-only agentkit_enabled gate apply to every turn.
|
|
155
158
|
(_m = (_7 = process.env).CURSOR_AGENTKIT_VERSION) !== null && _m !== void 0 ? _m : (_7.CURSOR_AGENTKIT_VERSION = packageVersion());
|
|
156
|
-
const authoredOtel = pickAuthoredOtel(mounts.map(
|
|
159
|
+
const authoredOtel = pickAuthoredOtel(mounts.map(m => ({
|
|
157
160
|
slug: m.slug,
|
|
158
161
|
name: m.project.name,
|
|
159
162
|
otel: m.project.otel,
|
|
@@ -203,8 +206,8 @@ export function startServer(mounts_1) {
|
|
|
203
206
|
noControlPlane,
|
|
204
207
|
config: effectiveCursorEvents,
|
|
205
208
|
auth: cursorEventsAuth,
|
|
206
|
-
v1Mounts: mounts.filter(
|
|
207
|
-
v2Mounts: mounts.filter(
|
|
209
|
+
v1Mounts: mounts.filter(mount => !isV2Project(mount.project)),
|
|
210
|
+
v2Mounts: mounts.filter(mount => isV2Project(mount.project)),
|
|
208
211
|
githubRepos: (_q = (_c = cursorGithubConfig.cursorEvents) === null || _c === void 0 ? void 0 : _c.repos) !== null && _q !== void 0 ? _q : [],
|
|
209
212
|
originRepos: (_r = cursorOriginScope === null || cursorOriginScope === void 0 ? void 0 : cursorOriginScope.repos) !== null && _r !== void 0 ? _r : [],
|
|
210
213
|
});
|
|
@@ -449,7 +452,7 @@ export function startServer(mounts_1) {
|
|
|
449
452
|
// the /v0/grokbot session API; the SDK side is a thin remote client. The
|
|
450
453
|
// dispatching runner is only interposed when a mount needs it. An
|
|
451
454
|
// injected test runner receives every turn, grokbot included.
|
|
452
|
-
const hasGrokBotMounts = mounts.some(
|
|
455
|
+
const hasGrokBotMounts = mounts.some(mount => mount.project.agent.runtime === "grokbot");
|
|
453
456
|
// Fail closed like cursor-account GitHub/MCP: grokbot turns execute on the
|
|
454
457
|
// signed-in account's hosted computer, so anonymous admission needs its
|
|
455
458
|
// own opt-in.
|
|
@@ -568,9 +571,9 @@ export function startServer(mounts_1) {
|
|
|
568
571
|
const useReminderCpProtocol = architecture === "v2";
|
|
569
572
|
const localControlPlane = noControlPlane
|
|
570
573
|
? undefined
|
|
571
|
-
: yield createLocalControlPlane(Object.assign(Object.assign({ fireSchedule:
|
|
574
|
+
: yield createLocalControlPlane(Object.assign(Object.assign({ fireSchedule: name => scheduleRunner.dispatch(name) }, (useReminderCpProtocol
|
|
572
575
|
? {
|
|
573
|
-
executeReminder:
|
|
576
|
+
executeReminder: descriptor => reminderRunner.executeFire(descriptor),
|
|
574
577
|
}
|
|
575
578
|
: {
|
|
576
579
|
fireReminder: (id, fireCount) => reminderRunner.dispatch(id, {
|
|
@@ -604,19 +607,19 @@ export function startServer(mounts_1) {
|
|
|
604
607
|
// boot and makes /v1/dev/evals complete from the first request).
|
|
605
608
|
yield evalRuns.hydrate();
|
|
606
609
|
engine.setReminders({
|
|
607
|
-
create:
|
|
608
|
-
list:
|
|
610
|
+
create: input => reminderRunner.create(input),
|
|
611
|
+
list: filter => reminderRunner.list(filter),
|
|
609
612
|
cancel: (id, reason) => reminderRunner.cancel(id, reason),
|
|
610
613
|
cancelForContinuation: (token, reason) => reminderRunner.cancelForContinuation(token, reason),
|
|
611
614
|
rekeyContinuation: (channelId, oldToken, newToken) => reminderRunner.rekeyContinuation(channelId, oldToken, newToken),
|
|
612
|
-
dispatch:
|
|
615
|
+
dispatch: id => reminderRunner.dispatch(id),
|
|
613
616
|
});
|
|
614
617
|
engine.setEvals({
|
|
615
618
|
list: () => evalRuns.list(),
|
|
616
|
-
get:
|
|
619
|
+
get: runId => evalRuns.get(runId),
|
|
617
620
|
listRunsWithActive: () => evalRuns.listRunsWithActive(),
|
|
618
|
-
start:
|
|
619
|
-
cancel:
|
|
621
|
+
start: input => evalRuns.start(input),
|
|
622
|
+
cancel: runId => evalRuns.cancel(runId),
|
|
620
623
|
});
|
|
621
624
|
const runtime = Object.assign(Object.assign({ slug,
|
|
622
625
|
project,
|
|
@@ -654,20 +657,20 @@ export function startServer(mounts_1) {
|
|
|
654
657
|
const startArgs = {
|
|
655
658
|
send: (message, sendOptions) => engine.send(channel.id, message, sendOptions),
|
|
656
659
|
architecture: project.agent.architecture,
|
|
657
|
-
getSession:
|
|
660
|
+
getSession: sessionId => engine.getChannelSession(channel.id, sessionId),
|
|
658
661
|
receive: (target, input) => engine.receive(target, input),
|
|
659
662
|
callTool: (toolName, input, callOptions) => engine.callTool(toolName, input, callOptions),
|
|
660
663
|
emitAssistantMessage: (sessionId, text) => engine.emitAssistantMessage(sessionId, text),
|
|
661
664
|
host: engine.host,
|
|
662
|
-
waitUntil:
|
|
665
|
+
waitUntil: promise => {
|
|
663
666
|
engine.trackBackground(promise);
|
|
664
667
|
},
|
|
665
668
|
resolveApproval: (sessionId, callId, decision, auth) => engine.resolveApproval(sessionId, callId, decision, auth),
|
|
666
669
|
resolveAuth: (sessionId, callId, decision, auth) => engine.resolveAuth(sessionId, callId, decision, auth),
|
|
667
|
-
hasContinuationSession:
|
|
668
|
-
isContinuationBusy:
|
|
669
|
-
getContinuationLastBotMessageTs:
|
|
670
|
-
interruptContinuation:
|
|
670
|
+
hasContinuationSession: continuationToken => engine.hasContinuationSession(channel.id, continuationToken),
|
|
671
|
+
isContinuationBusy: continuationToken => engine.isContinuationBusy(channel.id, continuationToken),
|
|
672
|
+
getContinuationLastBotMessageTs: continuationToken => engine.getContinuationLastBotMessageTs(channel.id, continuationToken),
|
|
673
|
+
interruptContinuation: continuationToken => engine.interruptContinuation(channel.id, continuationToken),
|
|
671
674
|
logger,
|
|
672
675
|
artifacts: engine.artifacts,
|
|
673
676
|
};
|
|
@@ -721,7 +724,7 @@ export function startServer(mounts_1) {
|
|
|
721
724
|
handler: () => jsonResponse(Object.assign({ ok: true, agents: runtimes.map(({ slug, project }) => ({
|
|
722
725
|
slug,
|
|
723
726
|
name: project.name,
|
|
724
|
-
})) }, memoryHealthFields(runtimes.map(
|
|
727
|
+
})) }, memoryHealthFields(runtimes.map(runtime => runtime.engine)))),
|
|
725
728
|
});
|
|
726
729
|
}
|
|
727
730
|
// Orienting `/` for every layout (single empty-slug and multi).
|
|
@@ -755,24 +758,24 @@ export function startServer(mounts_1) {
|
|
|
755
758
|
// so this route is not a public unsigned endpoint. Agents decide whether
|
|
756
759
|
// to run via their onPullRequest / onComment / … hooks.
|
|
757
760
|
const collectGitHubTargetsFrom = (selected) => collectGitHubTriggerTargets({
|
|
758
|
-
mounts: selected.map(
|
|
761
|
+
mounts: selected.map(runtime => ({
|
|
759
762
|
slug: runtime.slug,
|
|
760
763
|
channels: runtime.project.channels,
|
|
761
|
-
buildHandlerArgs:
|
|
764
|
+
buildHandlerArgs: channelId => buildChannelHandlerArgs({ runtime, channelId }),
|
|
762
765
|
})),
|
|
763
766
|
});
|
|
764
767
|
const collectOriginTargetsFrom = (selected) => collectOriginTriggerTargets({
|
|
765
|
-
mounts: selected.map(
|
|
768
|
+
mounts: selected.map(runtime => ({
|
|
766
769
|
slug: runtime.slug,
|
|
767
770
|
channels: runtime.project.channels,
|
|
768
|
-
buildHandlerArgs:
|
|
771
|
+
buildHandlerArgs: channelId => buildChannelHandlerArgs({ runtime, channelId }),
|
|
769
772
|
})),
|
|
770
773
|
});
|
|
771
774
|
const collectGitHubTargets = () => collectGitHubTargetsFrom(runtimes);
|
|
772
|
-
const v1Runtimes = runtimes.filter(
|
|
773
|
-
const v2Runtimes = runtimes.filter(
|
|
774
|
-
const v1Mounts = mounts.filter(
|
|
775
|
-
const v2Mounts = mounts.filter(
|
|
775
|
+
const v1Runtimes = runtimes.filter(runtime => !isV2Project(runtime.project));
|
|
776
|
+
const v2Runtimes = runtimes.filter(runtime => isV2Project(runtime.project));
|
|
777
|
+
const v1Mounts = mounts.filter(mount => !isV2Project(mount.project));
|
|
778
|
+
const v2Mounts = mounts.filter(mount => isV2Project(mount.project));
|
|
776
779
|
router.add({
|
|
777
780
|
method: "POST",
|
|
778
781
|
pattern: "/v1/webhooks/github",
|
|
@@ -874,14 +877,14 @@ export function startServer(mounts_1) {
|
|
|
874
877
|
if (accountBridge !== undefined && accountRefs !== undefined) {
|
|
875
878
|
const bridge = accountBridge;
|
|
876
879
|
runtime.engine.setCursorAccountAuthProbe((connection) => __awaiter(this, void 0, void 0, function* () {
|
|
877
|
-
const ref = accountRefs.find(
|
|
880
|
+
const ref = accountRefs.find(entry => entry.name === connection);
|
|
878
881
|
if (ref === undefined) {
|
|
879
882
|
return undefined;
|
|
880
883
|
}
|
|
881
884
|
return yield bridge.probeAuthUrl(ref);
|
|
882
885
|
}));
|
|
883
886
|
}
|
|
884
|
-
const hasServerTools = runtime.project.agent.tools.some(
|
|
887
|
+
const hasServerTools = runtime.project.agent.tools.some(tool => tool.execution === "server");
|
|
885
888
|
// Host-bridged connections ride the same endpoint as server tools, so
|
|
886
889
|
// the cloud tools connection is set whenever either needs it.
|
|
887
890
|
const bridgeableNames = runtime.engine.cloudBridgeableConnectionNames();
|
|
@@ -924,7 +927,7 @@ export function startServer(mounts_1) {
|
|
|
924
927
|
runtime.evalRuns.loopbackUrl =
|
|
925
928
|
runtime.slug === "" ? url : `${url}/${runtime.slug}`;
|
|
926
929
|
}
|
|
927
|
-
const runtimeBySlug = new Map(runtimes.map(
|
|
930
|
+
const runtimeBySlug = new Map(runtimes.map(r => [r.slug, r]));
|
|
928
931
|
// --dev: spawn Vite HMR. Single-agent infers the slug base; multi-agent
|
|
929
932
|
// serves `/<slug>/playground` on the HMR origin (optional AGENT_SERVE_BASE
|
|
930
933
|
// pins one slug at the HMR root instead).
|
|
@@ -1011,7 +1014,7 @@ export function startServer(mounts_1) {
|
|
|
1011
1014
|
var _b;
|
|
1012
1015
|
if (sessionRunLog !== undefined) {
|
|
1013
1016
|
yield flushHostedExecutionProcessDeath({
|
|
1014
|
-
flushProcessDeath:
|
|
1017
|
+
flushProcessDeath: reason => sessionRunLog.flushProcessDeath(reason),
|
|
1015
1018
|
flushStartLog,
|
|
1016
1019
|
startLogId: lastStartLogId,
|
|
1017
1020
|
reason: "process_exit",
|
|
@@ -1043,7 +1046,7 @@ export function startServer(mounts_1) {
|
|
|
1043
1046
|
server.close();
|
|
1044
1047
|
server.closeAllConnections();
|
|
1045
1048
|
try {
|
|
1046
|
-
yield Promise.all(runtimes.map(
|
|
1049
|
+
yield Promise.all(runtimes.map(runtime => runtime.engine.close()));
|
|
1047
1050
|
}
|
|
1048
1051
|
finally {
|
|
1049
1052
|
cursorGithubCredentials === null || cursorGithubCredentials === void 0 ? void 0 : cursorGithubCredentials.stop();
|
|
@@ -1070,7 +1073,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1070
1073
|
// loopback-only + per-boot bearer secret, never on the public auth chain.
|
|
1071
1074
|
if (args.accountBridge !== undefined && args.accountRefs !== undefined) {
|
|
1072
1075
|
const bridge = args.accountBridge;
|
|
1073
|
-
const refByName = new Map(args.accountRefs.map(
|
|
1076
|
+
const refByName = new Map(args.accountRefs.map(ref => [ref.name, ref]));
|
|
1074
1077
|
router.add({
|
|
1075
1078
|
method: "POST",
|
|
1076
1079
|
pattern: `${base}${cursorAccountMcpPath(":connection")}`,
|
|
@@ -1081,7 +1084,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1081
1084
|
if (ref === undefined) {
|
|
1082
1085
|
return errorResponse(404, "not_found", `No Cursor account MCP connection named "${(_b = ctx.params.connection) !== null && _b !== void 0 ? _b : ""}" on this agent.`);
|
|
1083
1086
|
}
|
|
1084
|
-
return bridge.handle(request, ref);
|
|
1087
|
+
return bridge.handle(request, ref, appendSlackQuietHint);
|
|
1085
1088
|
},
|
|
1086
1089
|
});
|
|
1087
1090
|
}
|
|
@@ -1093,7 +1096,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1093
1096
|
const httpAuth = (_a = project.httpChannel.auth) !== null && _a !== void 0 ? _a : defaultAuth;
|
|
1094
1097
|
// Temporal posts this marker on a direct pod port-token fetch. The alias
|
|
1095
1098
|
// proxy strips it, so webhook/playground tokens cannot present it.
|
|
1096
|
-
const platformTimerFireAuth =
|
|
1099
|
+
const platformTimerFireAuth = request => {
|
|
1097
1100
|
if (request.headers.get("x-agent-serve-timed-work") === "1") {
|
|
1098
1101
|
return {
|
|
1099
1102
|
authenticator: "app",
|
|
@@ -1103,7 +1106,15 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1103
1106
|
}
|
|
1104
1107
|
return null;
|
|
1105
1108
|
};
|
|
1106
|
-
|
|
1109
|
+
// A v2 mount served under `--no-control-plane` is a hosted v2 guest: the
|
|
1110
|
+
// hosted control plane drives it through the hosted delivery route below.
|
|
1111
|
+
// Session HTTP is a control-plane surface, so such a guest mounts no
|
|
1112
|
+
// `/v1/session*` or `/v1/sessions` routes — session starts arrive as hosted
|
|
1113
|
+
// admissions (`agentsdk.session` on the built-in http channel) and session
|
|
1114
|
+
// reads come from the control plane's runs surface and durable storage.
|
|
1115
|
+
// Local dev, self-hosted serve, and hosted v1 keep the engine mounts.
|
|
1116
|
+
const hostedV2Guest = noControlPlane === true && isV2Project(project);
|
|
1117
|
+
if (hostedV2Guest) {
|
|
1107
1118
|
registerHostedDeliveryRoute(Object.assign(Object.assign(Object.assign(Object.assign({ router,
|
|
1108
1119
|
base,
|
|
1109
1120
|
// The built-in http channel is not in `project.channels`; the control
|
|
@@ -1138,7 +1149,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1138
1149
|
reminderId: descriptor.id,
|
|
1139
1150
|
outcome: "fired",
|
|
1140
1151
|
};
|
|
1141
|
-
}), drainSessionDurability:
|
|
1152
|
+
}), drainSessionDurability: sessionId => engine.drainSessionDurability(sessionId), flushOtel: args.flushOtel }, (args.diagStateRoot === undefined
|
|
1142
1153
|
? {}
|
|
1143
1154
|
: { stateRoot: args.diagStateRoot })), (sessionRunLog === undefined
|
|
1144
1155
|
? {}
|
|
@@ -1166,7 +1177,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1166
1177
|
method: "GET",
|
|
1167
1178
|
pattern: `${base}${mcpOauthServeCallbackPath()}`,
|
|
1168
1179
|
auth: "none",
|
|
1169
|
-
handler:
|
|
1180
|
+
handler: request => engine.oauthCallbackHub.handleCallback(request),
|
|
1170
1181
|
});
|
|
1171
1182
|
router.add({
|
|
1172
1183
|
method: "GET",
|
|
@@ -1226,7 +1237,7 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1226
1237
|
method: "GET",
|
|
1227
1238
|
pattern: `${base}/v1/logs`,
|
|
1228
1239
|
auth: httpAuth,
|
|
1229
|
-
handler:
|
|
1240
|
+
handler: request => {
|
|
1230
1241
|
var _a;
|
|
1231
1242
|
var _b;
|
|
1232
1243
|
const url = new URL(request.url);
|
|
@@ -1244,32 +1255,36 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1244
1255
|
});
|
|
1245
1256
|
},
|
|
1246
1257
|
});
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
(
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1258
|
+
// Session list is session surface: not mounted on a hosted v2 guest (the
|
|
1259
|
+
// control plane owns session reads there; see hostedV2Guest above).
|
|
1260
|
+
if (!hostedV2Guest) {
|
|
1261
|
+
router.add({
|
|
1262
|
+
method: "GET",
|
|
1263
|
+
pattern: `${base}/v1/sessions`,
|
|
1264
|
+
auth: httpAuth,
|
|
1265
|
+
handler: (request, ctx) => __awaiter(this, void 0, void 0, function* () {
|
|
1266
|
+
// Same gate as requireSessionOwner / relaxSessionReadAuth: never with
|
|
1267
|
+
// bearer or custom channel auth (strict per-principal isolation).
|
|
1268
|
+
// `--allow-anonymous` alone is a shared-principal trust boundary (corp
|
|
1269
|
+
// Okta ALB); `--dev` alone stays loopback-only.
|
|
1270
|
+
const includeAll = relaxSessionReadAuth &&
|
|
1271
|
+
(relaxSessionReadAuthBeyondLoopback ||
|
|
1272
|
+
(typeof ctx.requestIp === "string" &&
|
|
1273
|
+
isLoopbackAddress(ctx.requestIp)));
|
|
1274
|
+
// `?latest=1` — only the newest visible session. Clients binding a
|
|
1275
|
+
// default session (agsh) do not need the whole list, and on hosted
|
|
1276
|
+
// storage the whole list is a database scan.
|
|
1277
|
+
const latest = new URL(request.url).searchParams.get("latest");
|
|
1278
|
+
const listed = latest === "1" || latest === "true"
|
|
1279
|
+
? yield engine.latestSessionWithSource(ctx.auth, { includeAll })
|
|
1280
|
+
: yield engine.listSessionsWithSource(ctx.auth, { includeAll });
|
|
1281
|
+
return jsonResponse({
|
|
1282
|
+
sessions: listed.sessions,
|
|
1283
|
+
source: listed.source,
|
|
1284
|
+
});
|
|
1285
|
+
}),
|
|
1286
|
+
});
|
|
1287
|
+
}
|
|
1273
1288
|
// Durable artifacts (ctx.artifacts / tag_artifact), newest-updated first.
|
|
1274
1289
|
router.add({
|
|
1275
1290
|
method: "GET",
|
|
@@ -1510,6 +1525,41 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1510
1525
|
}
|
|
1511
1526
|
}),
|
|
1512
1527
|
});
|
|
1528
|
+
// Deterministic skill reads: the body the harness would receive, plus
|
|
1529
|
+
// resolved sibling files. Read-only, so plain GETs with no session binding.
|
|
1530
|
+
router.add({
|
|
1531
|
+
method: "GET",
|
|
1532
|
+
pattern: `${base}/v1/skills`,
|
|
1533
|
+
auth: httpAuth,
|
|
1534
|
+
handler: () => __awaiter(this, void 0, void 0, function* () {
|
|
1535
|
+
return jsonResponse({
|
|
1536
|
+
skills: project.agent.skills.map(skillListEntry),
|
|
1537
|
+
});
|
|
1538
|
+
}),
|
|
1539
|
+
});
|
|
1540
|
+
router.add({
|
|
1541
|
+
method: "GET",
|
|
1542
|
+
pattern: `${base}/v1/skills/:skillName`,
|
|
1543
|
+
auth: httpAuth,
|
|
1544
|
+
handler: (_request, ctx) => __awaiter(this, void 0, void 0, function* () {
|
|
1545
|
+
var _a;
|
|
1546
|
+
const skillName = (_a = ctx.params.skillName) !== null && _a !== void 0 ? _a : "";
|
|
1547
|
+
try {
|
|
1548
|
+
return jsonResponse(yield readSkillDetail(project.agent.skills, skillName));
|
|
1549
|
+
}
|
|
1550
|
+
catch (error) {
|
|
1551
|
+
if (error instanceof UnknownSkillError) {
|
|
1552
|
+
return jsonResponse({
|
|
1553
|
+
ok: false,
|
|
1554
|
+
error: "unknown_skill",
|
|
1555
|
+
message: error.message,
|
|
1556
|
+
availableSkills: error.availableSkillNames,
|
|
1557
|
+
}, { status: 404 });
|
|
1558
|
+
}
|
|
1559
|
+
throw error;
|
|
1560
|
+
}
|
|
1561
|
+
}),
|
|
1562
|
+
});
|
|
1513
1563
|
if (playground) {
|
|
1514
1564
|
// Serve the built Vite SPA. `<base href>` is injected so the SPA's relative
|
|
1515
1565
|
// asset URLs resolve under this mount regardless of the trailing slash the
|
|
@@ -1531,18 +1581,25 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1531
1581
|
handler: (_request, ctx) => { var _a; return renderPlaygroundAsset((_a = ctx.params.file) !== null && _a !== void 0 ? _a : ""); },
|
|
1532
1582
|
});
|
|
1533
1583
|
}
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1584
|
+
// The built-in HTTP session channel (`/v1/session*`, including the
|
|
1585
|
+
// session-scoped approvals/auths routes) is session surface: not mounted on
|
|
1586
|
+
// a hosted v2 guest (see hostedV2Guest above). The `http` channel itself
|
|
1587
|
+
// stays registered with the hosted delivery route, which is how the control
|
|
1588
|
+
// plane's session starts reach it.
|
|
1589
|
+
if (!hostedV2Guest) {
|
|
1590
|
+
for (const route of buildHttpChannelRoutes({
|
|
1591
|
+
engine,
|
|
1592
|
+
config: project.httpChannel,
|
|
1593
|
+
auth: httpAuth,
|
|
1594
|
+
basePath: base,
|
|
1595
|
+
// Dev playground lists every session (`includeAll`); allow opening them
|
|
1596
|
+
// (see relaxSessionReadAuth above).
|
|
1597
|
+
relaxSessionReadAuth,
|
|
1598
|
+
relaxSessionReadAuthBeyondLoopback,
|
|
1599
|
+
relaxSessionApprovalAuth,
|
|
1600
|
+
})) {
|
|
1601
|
+
router.add(route);
|
|
1602
|
+
}
|
|
1546
1603
|
}
|
|
1547
1604
|
// Playground eval list/run — available without `--dev` (corp / allow-anonymous).
|
|
1548
1605
|
// Schedule/reminder hand-dispatch stays `--dev` only below.
|
|
@@ -1728,9 +1785,9 @@ function mountAgentRoutes(router, runtime, args) {
|
|
|
1728
1785
|
const reminderId = (_a = ctx.params.reminderId) !== null && _a !== void 0 ? _a : "";
|
|
1729
1786
|
try {
|
|
1730
1787
|
const listed = yield reminderRunner.list();
|
|
1731
|
-
const reminder = listed.find(
|
|
1788
|
+
const reminder = listed.find(r => r.id === reminderId);
|
|
1732
1789
|
if (reminder === undefined) {
|
|
1733
|
-
const ids = listed.map(
|
|
1790
|
+
const ids = listed.map(r => r.id);
|
|
1734
1791
|
throw new UnknownReminderError(reminderId, ids);
|
|
1735
1792
|
}
|
|
1736
1793
|
const ownership = yield assertReminderReadable({
|
|
@@ -1841,17 +1898,17 @@ function collectCursorEventSubscriptions(input) {
|
|
|
1841
1898
|
const githubTargets = findGitHubChannelTargets(input.mounts);
|
|
1842
1899
|
const originTargets = findOriginChannelTargets(input.mounts);
|
|
1843
1900
|
const githubEvents = [
|
|
1844
|
-
...new Set(githubTargets.flatMap(
|
|
1901
|
+
...new Set(githubTargets.flatMap(target => target.events)),
|
|
1845
1902
|
];
|
|
1846
1903
|
const originEvents = [
|
|
1847
|
-
...new Set(originTargets.flatMap(
|
|
1904
|
+
...new Set(originTargets.flatMap(target => target.events)),
|
|
1848
1905
|
];
|
|
1849
1906
|
const githubRepos = [
|
|
1850
|
-
...new Set(input.githubRepos.map(
|
|
1851
|
-
].filter(
|
|
1907
|
+
...new Set(input.githubRepos.map(repo => repo.trim().toLowerCase())),
|
|
1908
|
+
].filter(repo => repo.length > 0);
|
|
1852
1909
|
const originRepos = [
|
|
1853
|
-
...new Set(input.originRepos.map(
|
|
1854
|
-
].filter(
|
|
1910
|
+
...new Set(input.originRepos.map(repo => repo.trim().toLowerCase())),
|
|
1911
|
+
].filter(repo => repo.length > 0);
|
|
1855
1912
|
const subscriptions = [];
|
|
1856
1913
|
if (githubEvents.length > 0 && githubRepos.length > 0) {
|
|
1857
1914
|
for (const repo of githubRepos) {
|
|
@@ -1915,8 +1972,8 @@ function startCursorEventRelay(input) {
|
|
|
1915
1972
|
else if (input.lane === "control-plane") {
|
|
1916
1973
|
return undefined;
|
|
1917
1974
|
}
|
|
1918
|
-
else if (input.githubRepos.every(
|
|
1919
|
-
input.originRepos.every(
|
|
1975
|
+
else if (input.githubRepos.every(repo => repo.trim() === "") &&
|
|
1976
|
+
input.originRepos.every(repo => repo.trim() === "")) {
|
|
1920
1977
|
logger("[agent-sdk] cursor-events: no repos configured (pass --repo owner/name); relay disabled");
|
|
1921
1978
|
}
|
|
1922
1979
|
else {
|
|
@@ -1933,7 +1990,7 @@ function startCursorEventRelay(input) {
|
|
|
1933
1990
|
logger,
|
|
1934
1991
|
dispatch: (event) => __awaiter(this, void 0, void 0, function* () {
|
|
1935
1992
|
if (event.provider === "origin") {
|
|
1936
|
-
const targets = input.collectOriginTargets().filter(
|
|
1993
|
+
const targets = input.collectOriginTargets().filter(target => {
|
|
1937
1994
|
const cursorAccount = target.options.cursorAccount;
|
|
1938
1995
|
if (input.cursorAccountOnly &&
|
|
1939
1996
|
cursorAccount !== true &&
|
|
@@ -1942,7 +1999,7 @@ function startCursorEventRelay(input) {
|
|
|
1942
1999
|
}
|
|
1943
2000
|
return typeof cursorAccount !== "object"
|
|
1944
2001
|
? true
|
|
1945
|
-
: cursorAccount.repos.some(
|
|
2002
|
+
: cursorAccount.repos.some(repo => repo.toLowerCase() === event.repo.toLowerCase());
|
|
1946
2003
|
});
|
|
1947
2004
|
const result = yield handleAgentServeTrigger(Object.assign({ type: "origin", bodyText: JSON.stringify(scmMetadataToOriginPayload(event)), targets }, (input.routeContinuation === undefined
|
|
1948
2005
|
? {}
|
|
@@ -1952,7 +2009,7 @@ function startCursorEventRelay(input) {
|
|
|
1952
2009
|
}
|
|
1953
2010
|
if (event.provider !== "github")
|
|
1954
2011
|
return;
|
|
1955
|
-
const targets = input.collectGitHubTargets().filter(
|
|
2012
|
+
const targets = input.collectGitHubTargets().filter(target => {
|
|
1956
2013
|
const cursorAccount = target.options.cursorAccount;
|
|
1957
2014
|
if (input.cursorAccountOnly &&
|
|
1958
2015
|
cursorAccount !== true &&
|
|
@@ -1961,7 +2018,7 @@ function startCursorEventRelay(input) {
|
|
|
1961
2018
|
}
|
|
1962
2019
|
return typeof cursorAccount !== "object"
|
|
1963
2020
|
? true
|
|
1964
|
-
: cursorAccount.repos.some(
|
|
2021
|
+
: cursorAccount.repos.some(repo => repo.toLowerCase() === event.repo.toLowerCase());
|
|
1965
2022
|
});
|
|
1966
2023
|
const result = yield handleAgentServeTrigger(Object.assign({ type: "github", bodyText: JSON.stringify(scmEventToGitHubPayload(event)), eventName: event.eventName, deliveryId: event.deliveryId, targets }, (input.routeContinuation === undefined
|
|
1967
2024
|
? {}
|
|
@@ -1978,9 +2035,9 @@ function startCursorEventRelay(input) {
|
|
|
1978
2035
|
}
|
|
1979
2036
|
function logCursorScmDispatch(logger, event, result) {
|
|
1980
2037
|
const outcomes = result.targets
|
|
1981
|
-
.map(
|
|
2038
|
+
.map(target => formatCursorScmDispatchOutcome(target))
|
|
1982
2039
|
.join(", ");
|
|
1983
|
-
const rejected = result.targets.filter(
|
|
2040
|
+
const rejected = result.targets.filter(target => target.status >= 400);
|
|
1984
2041
|
if (rejected.length > 0) {
|
|
1985
2042
|
logger(`[agent-sdk] cursor-events: dropped ${formatCursorScmEventLog(event)} before hook: ${rejected.map(formatCursorScmDispatchOutcome).join(", ")}`);
|
|
1986
2043
|
}
|
|
@@ -2022,7 +2079,7 @@ function resolveCursorGithubEventConfig(input) {
|
|
|
2022
2079
|
}
|
|
2023
2080
|
const repos = [
|
|
2024
2081
|
...((_b = (_a = input.configured) === null || _a === void 0 ? void 0 : _a.repos) !== null && _b !== void 0 ? _b : []),
|
|
2025
|
-
...input.targets.flatMap(
|
|
2082
|
+
...input.targets.flatMap(target => { var _a; var _b; return [
|
|
2026
2083
|
...((_b = (_a = target.accountRuntime.scope) === null || _a === void 0 ? void 0 : _a.repos) !== null && _b !== void 0 ? _b : []),
|
|
2027
2084
|
]; }),
|
|
2028
2085
|
];
|
|
@@ -2065,10 +2122,10 @@ function resolveCursorOriginRepoScope(input) {
|
|
|
2065
2122
|
if (input.targets.length === 0) {
|
|
2066
2123
|
return undefined;
|
|
2067
2124
|
}
|
|
2068
|
-
const wantsHostRepos = input.targets.some(
|
|
2125
|
+
const wantsHostRepos = input.targets.some(target => target.accountRuntime.options.cursorAccount === true);
|
|
2069
2126
|
const repos = [
|
|
2070
2127
|
...(wantsHostRepos ? input.explicitRepos : []),
|
|
2071
|
-
...input.targets.flatMap(
|
|
2128
|
+
...input.targets.flatMap(target => { var _a; var _b; return (_b = (_a = target.accountRuntime.scope) === null || _a === void 0 ? void 0 : _a.repos) !== null && _b !== void 0 ? _b : []; }),
|
|
2072
2129
|
];
|
|
2073
2130
|
if (repos.length === 0) {
|
|
2074
2131
|
return undefined;
|
|
@@ -2079,7 +2136,7 @@ function buildAgentIndexEntries(runtimes) {
|
|
|
2079
2136
|
return runtimes.map(({ slug, project }) => {
|
|
2080
2137
|
var _a;
|
|
2081
2138
|
var _b;
|
|
2082
|
-
const hasSlack = project.channels.some(
|
|
2139
|
+
const hasSlack = project.channels.some(channel => { var _a; return ((_a = channel.definition.meta) === null || _a === void 0 ? void 0 : _a.kind) === "slack"; });
|
|
2083
2140
|
return {
|
|
2084
2141
|
slug,
|
|
2085
2142
|
name: project.name,
|
|
@@ -2111,7 +2168,7 @@ function collectCursorDeploymentTargets(runtimes) {
|
|
|
2111
2168
|
return targets;
|
|
2112
2169
|
}
|
|
2113
2170
|
function liveDeploymentSubscriptionUnion(targets) {
|
|
2114
|
-
return mergeResolvedSubscriptions(targets.map(
|
|
2171
|
+
return mergeResolvedSubscriptions(targets.map(target => resolveDeploymentSubscriptions(target.options)));
|
|
2115
2172
|
}
|
|
2116
2173
|
/**
|
|
2117
2174
|
* Cursor deployment-events relay: automatic when a mounted agent authored
|
|
@@ -2140,7 +2197,7 @@ function startCursorDeploymentRelay(input) {
|
|
|
2140
2197
|
const initial = liveDeploymentSubscriptionUnion(targets);
|
|
2141
2198
|
if (initial.length === 0) {
|
|
2142
2199
|
logger(`[agent-sdk] deployment-events: no deploy sources yet on ${targets
|
|
2143
|
-
.map(
|
|
2200
|
+
.map(target => `${target.runtime.slug || target.runtime.project.name}/${target.channelId}`)
|
|
2144
2201
|
.join(", ")}; the relay will register when a channel lists some`);
|
|
2145
2202
|
}
|
|
2146
2203
|
// Same host split as scm-events: `/v0/deployment-events/*` is on
|
|
@@ -2156,10 +2213,10 @@ function startCursorDeploymentRelay(input) {
|
|
|
2156
2213
|
return fanOutDeploymentEvent({
|
|
2157
2214
|
event,
|
|
2158
2215
|
logger,
|
|
2159
|
-
targets: targets.map(
|
|
2216
|
+
targets: targets.map(target => ({
|
|
2160
2217
|
name: `${target.runtime.slug || target.runtime.project.name}/${target.channelId}`,
|
|
2161
2218
|
subscriptions: resolveDeploymentSubscriptions(target.options),
|
|
2162
|
-
deliver:
|
|
2219
|
+
deliver: delivered => dispatchDeploymentEvent({
|
|
2163
2220
|
options: target.options,
|
|
2164
2221
|
event: delivered,
|
|
2165
2222
|
args: buildChannelHandlerArgs({
|
|
@@ -2187,13 +2244,17 @@ function buildChannelHandlerArgs(input) {
|
|
|
2187
2244
|
host: runtime.engine.host,
|
|
2188
2245
|
artifacts: runtime.engine.artifacts,
|
|
2189
2246
|
send: (message, sendOptions = {}) => runtime.engine.send(channelId, message, Object.assign(Object.assign({}, sendOptions), { auth: sendOptions.auth !== undefined ? sendOptions.auth : auth, hostedSessionId: input.hostedSessionId })),
|
|
2190
|
-
getSession:
|
|
2247
|
+
getSession: sessionId => runtime.engine.getChannelSession(channelId, sessionId),
|
|
2191
2248
|
receive: (target, inputReceive) => runtime.engine.receive(target, inputReceive),
|
|
2192
2249
|
callTool: (toolName, toolInput, callOptions) => runtime.engine.callTool(toolName, toolInput, callOptions),
|
|
2193
|
-
waitUntil:
|
|
2250
|
+
waitUntil: promise => {
|
|
2194
2251
|
runtime.engine.trackBackground(promise);
|
|
2195
2252
|
},
|
|
2196
2253
|
sessionUrls: (req, sessionId) => sessionUrlsForRequest(req, base, sessionId),
|
|
2254
|
+
hasContinuationSession: continuationToken => runtime.engine.hasContinuationSession(channelId, continuationToken),
|
|
2255
|
+
isContinuationBusy: continuationToken => runtime.engine.isContinuationBusy(channelId, continuationToken),
|
|
2256
|
+
getContinuationLastBotMessageTs: continuationToken => runtime.engine.getContinuationLastBotMessageTs(channelId, continuationToken),
|
|
2257
|
+
interruptContinuation: continuationToken => runtime.engine.interruptContinuation(channelId, continuationToken),
|
|
2197
2258
|
};
|
|
2198
2259
|
}
|
|
2199
2260
|
function handleRequest(router, req, res, logger) {
|
|
@@ -2289,24 +2350,12 @@ function resolveAuth(policies, request, requestIp) {
|
|
|
2289
2350
|
}
|
|
2290
2351
|
function toFetchRequest(req) {
|
|
2291
2352
|
return __awaiter(this, void 0, void 0, function* () {
|
|
2292
|
-
var _a, _b
|
|
2353
|
+
var _a, _b;
|
|
2293
2354
|
const method = (_a = req.method) !== null && _a !== void 0 ? _a : "GET";
|
|
2294
|
-
const hostHeader = (
|
|
2295
|
-
const url = new URL((
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
if (value === undefined) {
|
|
2299
|
-
continue;
|
|
2300
|
-
}
|
|
2301
|
-
if (Array.isArray(value)) {
|
|
2302
|
-
for (const item of value) {
|
|
2303
|
-
headers.append(key, item);
|
|
2304
|
-
}
|
|
2305
|
-
}
|
|
2306
|
-
else {
|
|
2307
|
-
headers.set(key, value);
|
|
2308
|
-
}
|
|
2309
|
-
}
|
|
2355
|
+
const hostHeader = incomingRequestHost(req.headers);
|
|
2356
|
+
const url = new URL((_b = req.url) !== null && _b !== void 0 ? _b : "/", `http://${hostHeader}`);
|
|
2357
|
+
// Drop HTTP/2 pseudo-headers (`:method`, …) — Fetch `Headers` rejects them.
|
|
2358
|
+
const headers = incomingHeadersToFetch(req.headers);
|
|
2310
2359
|
if (method === "GET" || method === "HEAD") {
|
|
2311
2360
|
return new Request(url, { method, headers });
|
|
2312
2361
|
}
|
|
@@ -2368,7 +2417,7 @@ function writeFetchResponse(response_1, res_1) {
|
|
|
2368
2417
|
}
|
|
2369
2418
|
const reader = response.body.getReader();
|
|
2370
2419
|
let clientGone = false;
|
|
2371
|
-
const closed = new Promise(
|
|
2420
|
+
const closed = new Promise(resolve => {
|
|
2372
2421
|
res.once("close", () => {
|
|
2373
2422
|
if (!res.writableFinished) {
|
|
2374
2423
|
clientGone = true;
|