@cursor/july 0.1.1
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 +290 -0
- package/LICENSE.md +3 -0
- package/README.md +1233 -0
- package/dist/ab.d.ts +290 -0
- package/dist/ab.d.ts.map +1 -0
- package/dist/ab.js +386 -0
- package/dist/bin/agent-serve.d.ts +15 -0
- package/dist/bin/agent-serve.d.ts.map +1 -0
- package/dist/bin/agent-serve.js +754 -0
- package/dist/channels/github/api.d.ts +101 -0
- package/dist/channels/github/api.d.ts.map +1 -0
- package/dist/channels/github/api.js +229 -0
- package/dist/channels/github/auth.d.ts +67 -0
- package/dist/channels/github/auth.d.ts.map +1 -0
- package/dist/channels/github/auth.js +239 -0
- package/dist/channels/github/binding.d.ts +73 -0
- package/dist/channels/github/binding.d.ts.map +1 -0
- package/dist/channels/github/binding.js +114 -0
- package/dist/channels/github/defaults.d.ts +24 -0
- package/dist/channels/github/defaults.d.ts.map +1 -0
- package/dist/channels/github/defaults.js +100 -0
- package/dist/channels/github/events.d.ts +18 -0
- package/dist/channels/github/events.d.ts.map +1 -0
- package/dist/channels/github/events.js +59 -0
- package/dist/channels/github/forward.d.ts +137 -0
- package/dist/channels/github/forward.d.ts.map +1 -0
- package/dist/channels/github/forward.js +271 -0
- package/dist/channels/github/github-channel.d.ts +127 -0
- package/dist/channels/github/github-channel.d.ts.map +1 -0
- package/dist/channels/github/github-channel.js +1688 -0
- package/dist/channels/github/index.d.ts +52 -0
- package/dist/channels/github/index.d.ts.map +1 -0
- package/dist/channels/github/index.js +51 -0
- package/dist/channels/github/replay.d.ts +115 -0
- package/dist/channels/github/replay.d.ts.map +1 -0
- package/dist/channels/github/replay.js +282 -0
- package/dist/channels/github/state.d.ts +26 -0
- package/dist/channels/github/state.d.ts.map +1 -0
- package/dist/channels/github/state.js +50 -0
- package/dist/channels/github/types.d.ts +385 -0
- package/dist/channels/github/types.d.ts.map +1 -0
- package/dist/channels/github/types.js +1 -0
- package/dist/channels/slack/api.d.ts +117 -0
- package/dist/channels/slack/api.d.ts.map +1 -0
- package/dist/channels/slack/api.js +437 -0
- package/dist/channels/slack/approvals.d.ts +32 -0
- package/dist/channels/slack/approvals.d.ts.map +1 -0
- package/dist/channels/slack/approvals.js +157 -0
- package/dist/channels/slack/assistant.d.ts +23 -0
- package/dist/channels/slack/assistant.d.ts.map +1 -0
- package/dist/channels/slack/assistant.js +67 -0
- package/dist/channels/slack/auth.d.ts +40 -0
- package/dist/channels/slack/auth.d.ts.map +1 -0
- package/dist/channels/slack/auth.js +71 -0
- package/dist/channels/slack/channel-watch.d.ts +46 -0
- package/dist/channels/slack/channel-watch.d.ts.map +1 -0
- package/dist/channels/slack/channel-watch.js +180 -0
- package/dist/channels/slack/constants.d.ts +17 -0
- package/dist/channels/slack/constants.d.ts.map +1 -0
- package/dist/channels/slack/constants.js +27 -0
- package/dist/channels/slack/credentials.d.ts +35 -0
- package/dist/channels/slack/credentials.d.ts.map +1 -0
- package/dist/channels/slack/credentials.js +88 -0
- package/dist/channels/slack/cursor-account.d.ts +76 -0
- package/dist/channels/slack/cursor-account.d.ts.map +1 -0
- package/dist/channels/slack/cursor-account.js +88 -0
- package/dist/channels/slack/defaults.d.ts +32 -0
- package/dist/channels/slack/defaults.d.ts.map +1 -0
- package/dist/channels/slack/defaults.js +380 -0
- package/dist/channels/slack/dispatch.d.ts +43 -0
- package/dist/channels/slack/dispatch.d.ts.map +1 -0
- package/dist/channels/slack/dispatch.js +185 -0
- package/dist/channels/slack/doctor.d.ts +24 -0
- package/dist/channels/slack/doctor.d.ts.map +1 -0
- package/dist/channels/slack/doctor.js +115 -0
- package/dist/channels/slack/event-id-dedupe.d.ts +10 -0
- package/dist/channels/slack/event-id-dedupe.d.ts.map +1 -0
- package/dist/channels/slack/event-id-dedupe.js +23 -0
- package/dist/channels/slack/inbound.d.ts +41 -0
- package/dist/channels/slack/inbound.d.ts.map +1 -0
- package/dist/channels/slack/inbound.js +166 -0
- package/dist/channels/slack/index.d.ts +45 -0
- package/dist/channels/slack/index.d.ts.map +1 -0
- package/dist/channels/slack/index.js +44 -0
- package/dist/channels/slack/init.d.ts +32 -0
- package/dist/channels/slack/init.d.ts.map +1 -0
- package/dist/channels/slack/init.js +82 -0
- package/dist/channels/slack/interactive.d.ts +19 -0
- package/dist/channels/slack/interactive.d.ts.map +1 -0
- package/dist/channels/slack/interactive.js +142 -0
- package/dist/channels/slack/links.d.ts +10 -0
- package/dist/channels/slack/links.d.ts.map +1 -0
- package/dist/channels/slack/links.js +19 -0
- package/dist/channels/slack/live-delivery.d.ts +75 -0
- package/dist/channels/slack/live-delivery.d.ts.map +1 -0
- package/dist/channels/slack/live-delivery.js +143 -0
- package/dist/channels/slack/log.d.ts +25 -0
- package/dist/channels/slack/log.d.ts.map +1 -0
- package/dist/channels/slack/log.js +47 -0
- package/dist/channels/slack/manifest.d.ts +57 -0
- package/dist/channels/slack/manifest.d.ts.map +1 -0
- package/dist/channels/slack/manifest.js +110 -0
- package/dist/channels/slack/pr-ref.d.ts +18 -0
- package/dist/channels/slack/pr-ref.d.ts.map +1 -0
- package/dist/channels/slack/pr-ref.js +36 -0
- package/dist/channels/slack/setup.d.ts +14 -0
- package/dist/channels/slack/setup.d.ts.map +1 -0
- package/dist/channels/slack/setup.js +86 -0
- package/dist/channels/slack/slack-channel.d.ts +15 -0
- package/dist/channels/slack/slack-channel.d.ts.map +1 -0
- package/dist/channels/slack/slack-channel.js +281 -0
- package/dist/channels/slack/socket-mode.d.ts +26 -0
- package/dist/channels/slack/socket-mode.d.ts.map +1 -0
- package/dist/channels/slack/socket-mode.js +116 -0
- package/dist/channels/slack/stream.d.ts +26 -0
- package/dist/channels/slack/stream.d.ts.map +1 -0
- package/dist/channels/slack/stream.js +39 -0
- package/dist/channels/slack/tool-approval-events.d.ts +33 -0
- package/dist/channels/slack/tool-approval-events.d.ts.map +1 -0
- package/dist/channels/slack/tool-approval-events.js +129 -0
- package/dist/channels/slack/types.d.ts +326 -0
- package/dist/channels/slack/types.d.ts.map +1 -0
- package/dist/channels/slack/types.js +4 -0
- package/dist/channels.d.ts +116 -0
- package/dist/channels.d.ts.map +1 -0
- package/dist/channels.js +294 -0
- package/dist/connections.d.ts +75 -0
- package/dist/connections.d.ts.map +1 -0
- package/dist/connections.js +75 -0
- package/dist/docs/404.html +22 -0
- package/dist/docs/ab.html +87 -0
- package/dist/docs/assets/ab.md.COdXkces.js +63 -0
- package/dist/docs/assets/ab.md.COdXkces.lean.js +1 -0
- package/dist/docs/assets/app.DqfFEmJd.js +1 -0
- package/dist/docs/assets/building-with-agents.md.CJCtZCyi.js +13 -0
- package/dist/docs/assets/building-with-agents.md.CJCtZCyi.lean.js +1 -0
- package/dist/docs/assets/chunks/@localSearchIndexroot.CcVk1uKq.js +1 -0
- package/dist/docs/assets/chunks/VPLocalSearchBox.BaLEdS15.js +9 -0
- package/dist/docs/assets/chunks/framework.CAZyNGu9.js +19 -0
- package/dist/docs/assets/chunks/theme.CZRvu_0q.js +2 -0
- package/dist/docs/assets/concepts.md.Cfb9b-k1.js +4 -0
- package/dist/docs/assets/concepts.md.Cfb9b-k1.lean.js +1 -0
- package/dist/docs/assets/deployment.md.Dx1TYNk5.js +14 -0
- package/dist/docs/assets/deployment.md.Dx1TYNk5.lean.js +1 -0
- package/dist/docs/assets/evals.md.DPZ_MAnI.js +85 -0
- package/dist/docs/assets/evals.md.DPZ_MAnI.lean.js +1 -0
- package/dist/docs/assets/guides_agent-to-agent.md.CrtrsySy.js +10 -0
- package/dist/docs/assets/guides_agent-to-agent.md.CrtrsySy.lean.js +1 -0
- package/dist/docs/assets/guides_cloud-runtime.md.CYlNMTNp.js +9 -0
- package/dist/docs/assets/guides_cloud-runtime.md.CYlNMTNp.lean.js +1 -0
- package/dist/docs/assets/guides_github.md.DwbKhCeS.js +20 -0
- package/dist/docs/assets/guides_github.md.DwbKhCeS.lean.js +1 -0
- package/dist/docs/assets/guides_human-in-the-loop.md.Dvuctx7s.js +28 -0
- package/dist/docs/assets/guides_human-in-the-loop.md.Dvuctx7s.lean.js +1 -0
- package/dist/docs/assets/guides_slack.md.bv41fHfW.js +37 -0
- package/dist/docs/assets/guides_slack.md.bv41fHfW.lean.js +1 -0
- package/dist/docs/assets/guides_webhooks.md.hFTik3lf.js +50 -0
- package/dist/docs/assets/guides_webhooks.md.hFTik3lf.lean.js +1 -0
- package/dist/docs/assets/hillclimbing.md.DHNast08.js +4 -0
- package/dist/docs/assets/hillclimbing.md.DHNast08.lean.js +1 -0
- package/dist/docs/assets/index.md.BPKcj5AI.js +20 -0
- package/dist/docs/assets/index.md.BPKcj5AI.lean.js +1 -0
- package/dist/docs/assets/inter-italic-cyrillic-ext.r48I6akx.woff2 +0 -0
- package/dist/docs/assets/inter-italic-cyrillic.By2_1cv3.woff2 +0 -0
- package/dist/docs/assets/inter-italic-greek-ext.1u6EdAuj.woff2 +0 -0
- package/dist/docs/assets/inter-italic-greek.DJ8dCoTZ.woff2 +0 -0
- package/dist/docs/assets/inter-italic-latin-ext.CN1xVJS-.woff2 +0 -0
- package/dist/docs/assets/inter-italic-latin.C2AdPX0b.woff2 +0 -0
- package/dist/docs/assets/inter-italic-vietnamese.BSbpV94h.woff2 +0 -0
- package/dist/docs/assets/inter-roman-cyrillic-ext.BBPuwvHQ.woff2 +0 -0
- package/dist/docs/assets/inter-roman-cyrillic.C5lxZ8CY.woff2 +0 -0
- package/dist/docs/assets/inter-roman-greek-ext.CqjqNYQ-.woff2 +0 -0
- package/dist/docs/assets/inter-roman-greek.BBVDIX6e.woff2 +0 -0
- package/dist/docs/assets/inter-roman-latin-ext.4ZJIpNVo.woff2 +0 -0
- package/dist/docs/assets/inter-roman-latin.Di8DUHzh.woff2 +0 -0
- package/dist/docs/assets/inter-roman-vietnamese.BjW4sHH5.woff2 +0 -0
- package/dist/docs/assets/quickstart.md.tVPiGK_L.js +35 -0
- package/dist/docs/assets/quickstart.md.tVPiGK_L.lean.js +1 -0
- package/dist/docs/assets/reference_agent-config.md.Bpd7HQwf.js +34 -0
- package/dist/docs/assets/reference_agent-config.md.Bpd7HQwf.lean.js +1 -0
- package/dist/docs/assets/reference_channels.md.D7JTR03W.js +53 -0
- package/dist/docs/assets/reference_channels.md.D7JTR03W.lean.js +1 -0
- package/dist/docs/assets/reference_cli.md.DA730zCu.js +33 -0
- package/dist/docs/assets/reference_cli.md.DA730zCu.lean.js +1 -0
- package/dist/docs/assets/reference_connections.md.C3vNH_DE.js +26 -0
- package/dist/docs/assets/reference_connections.md.C3vNH_DE.lean.js +1 -0
- package/dist/docs/assets/reference_hooks.md.BCEc3MyM.js +12 -0
- package/dist/docs/assets/reference_hooks.md.BCEc3MyM.lean.js +1 -0
- package/dist/docs/assets/reference_http-api.md.DBAahtdz.js +11 -0
- package/dist/docs/assets/reference_http-api.md.DBAahtdz.lean.js +1 -0
- package/dist/docs/assets/reference_instructions.md.BC05LEQ8.js +12 -0
- package/dist/docs/assets/reference_instructions.md.BC05LEQ8.lean.js +1 -0
- package/dist/docs/assets/reference_playground.md.CPZhfYaO.js +1 -0
- package/dist/docs/assets/reference_playground.md.CPZhfYaO.lean.js +1 -0
- package/dist/docs/assets/reference_project-layout.md.Bd_CKtNS.js +31 -0
- package/dist/docs/assets/reference_project-layout.md.Bd_CKtNS.lean.js +1 -0
- package/dist/docs/assets/reference_schedules.md.D7qijxLk.js +82 -0
- package/dist/docs/assets/reference_schedules.md.D7qijxLk.lean.js +1 -0
- package/dist/docs/assets/reference_sessions.md.DdjWabnN.js +8 -0
- package/dist/docs/assets/reference_sessions.md.DdjWabnN.lean.js +1 -0
- package/dist/docs/assets/reference_skills.md.VQnlBT3Q.js +15 -0
- package/dist/docs/assets/reference_skills.md.VQnlBT3Q.lean.js +1 -0
- package/dist/docs/assets/reference_subagents.md.CIRAVcPK.js +10 -0
- package/dist/docs/assets/reference_subagents.md.CIRAVcPK.lean.js +1 -0
- package/dist/docs/assets/reference_tools.md.DF5kwlt0.js +46 -0
- package/dist/docs/assets/reference_tools.md.DF5kwlt0.lean.js +1 -0
- package/dist/docs/assets/scaffolding-agents.md.CyYfWGdc.js +1 -0
- package/dist/docs/assets/scaffolding-agents.md.CyYfWGdc.lean.js +1 -0
- package/dist/docs/assets/style.Bj-IXa5W.css +1 -0
- package/dist/docs/assets/troubleshooting.md.DkovjS7h.js +1 -0
- package/dist/docs/assets/troubleshooting.md.DkovjS7h.lean.js +1 -0
- package/dist/docs/building-with-agents.html +37 -0
- package/dist/docs/concepts.html +28 -0
- package/dist/docs/deployment.html +38 -0
- package/dist/docs/evals.html +109 -0
- package/dist/docs/guides/agent-to-agent.html +34 -0
- package/dist/docs/guides/cloud-runtime.html +33 -0
- package/dist/docs/guides/github.html +44 -0
- package/dist/docs/guides/human-in-the-loop.html +52 -0
- package/dist/docs/guides/slack.html +61 -0
- package/dist/docs/guides/webhooks.html +74 -0
- package/dist/docs/hashmap.json +1 -0
- package/dist/docs/hillclimbing.html +28 -0
- package/dist/docs/index.html +44 -0
- package/dist/docs/quickstart.html +59 -0
- package/dist/docs/reference/agent-config.html +58 -0
- package/dist/docs/reference/channels.html +77 -0
- package/dist/docs/reference/cli.html +57 -0
- package/dist/docs/reference/connections.html +50 -0
- package/dist/docs/reference/hooks.html +36 -0
- package/dist/docs/reference/http-api.html +35 -0
- package/dist/docs/reference/instructions.html +36 -0
- package/dist/docs/reference/playground.html +25 -0
- package/dist/docs/reference/project-layout.html +55 -0
- package/dist/docs/reference/schedules.html +106 -0
- package/dist/docs/reference/sessions.html +32 -0
- package/dist/docs/reference/skills.html +39 -0
- package/dist/docs/reference/subagents.html +34 -0
- package/dist/docs/reference/tools.html +70 -0
- package/dist/docs/scaffolding-agents.html +25 -0
- package/dist/docs/troubleshooting.html +25 -0
- package/dist/docs/vp-icons.css +0 -0
- package/dist/evals.d.ts +312 -0
- package/dist/evals.d.ts.map +1 -0
- package/dist/evals.js +254 -0
- package/dist/hooks.d.ts +23 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +23 -0
- package/dist/index.d.ts +71 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +101 -0
- package/dist/internal/ab-collector.d.ts +42 -0
- package/dist/internal/ab-collector.d.ts.map +1 -0
- package/dist/internal/ab-collector.js +153 -0
- package/dist/internal/ab-fold.d.ts +36 -0
- package/dist/internal/ab-fold.d.ts.map +1 -0
- package/dist/internal/ab-fold.js +171 -0
- package/dist/internal/ab-snapshot.d.ts +70 -0
- package/dist/internal/ab-snapshot.d.ts.map +1 -0
- package/dist/internal/ab-snapshot.js +208 -0
- package/dist/internal/approval-gate.d.ts +34 -0
- package/dist/internal/approval-gate.d.ts.map +1 -0
- package/dist/internal/approval-gate.js +85 -0
- package/dist/internal/auth.d.ts +8 -0
- package/dist/internal/auth.d.ts.map +1 -0
- package/dist/internal/auth.js +27 -0
- package/dist/internal/authored-alias-hooks.d.ts +31 -0
- package/dist/internal/authored-alias-hooks.d.ts.map +1 -0
- package/dist/internal/authored-alias-hooks.js +43 -0
- package/dist/internal/authored-loaders.d.ts +25 -0
- package/dist/internal/authored-loaders.d.ts.map +1 -0
- package/dist/internal/authored-loaders.js +129 -0
- package/dist/internal/bounded-int.d.ts +11 -0
- package/dist/internal/bounded-int.d.ts.map +1 -0
- package/dist/internal/bounded-int.js +13 -0
- package/dist/internal/brand.d.ts +6 -0
- package/dist/internal/brand.d.ts.map +1 -0
- package/dist/internal/brand.js +17 -0
- package/dist/internal/chat-client.d.ts +19 -0
- package/dist/internal/chat-client.d.ts.map +1 -0
- package/dist/internal/chat-client.js +327 -0
- package/dist/internal/cli-ax.d.ts +58 -0
- package/dist/internal/cli-ax.d.ts.map +1 -0
- package/dist/internal/cli-ax.js +345 -0
- package/dist/internal/cli-cursor.d.ts +20 -0
- package/dist/internal/cli-cursor.d.ts.map +1 -0
- package/dist/internal/cli-cursor.js +227 -0
- package/dist/internal/cli-github.d.ts +47 -0
- package/dist/internal/cli-github.d.ts.map +1 -0
- package/dist/internal/cli-github.js +644 -0
- package/dist/internal/cli-slack.d.ts +18 -0
- package/dist/internal/cli-slack.d.ts.map +1 -0
- package/dist/internal/cli-slack.js +144 -0
- package/dist/internal/cloud-merge.d.ts +23 -0
- package/dist/internal/cloud-merge.d.ts.map +1 -0
- package/dist/internal/cloud-merge.js +28 -0
- package/dist/internal/cron.d.ts +17 -0
- package/dist/internal/cron.d.ts.map +1 -0
- package/dist/internal/cron.js +60 -0
- package/dist/internal/cursor/account-mcp.d.ts +95 -0
- package/dist/internal/cursor/account-mcp.d.ts.map +1 -0
- package/dist/internal/cursor/account-mcp.js +342 -0
- package/dist/internal/cursor/backend-client.d.ts +118 -0
- package/dist/internal/cursor/backend-client.d.ts.map +1 -0
- package/dist/internal/cursor/backend-client.js +477 -0
- package/dist/internal/cursor/credentials.d.ts +112 -0
- package/dist/internal/cursor/credentials.d.ts.map +1 -0
- package/dist/internal/cursor/credentials.js +329 -0
- package/dist/internal/cursor-event-relay.d.ts +111 -0
- package/dist/internal/cursor-event-relay.d.ts.map +1 -0
- package/dist/internal/cursor-event-relay.js +181 -0
- package/dist/internal/cursor-relay-core.d.ts +113 -0
- package/dist/internal/cursor-relay-core.d.ts.map +1 -0
- package/dist/internal/cursor-relay-core.js +364 -0
- package/dist/internal/cursor-slack-relay.d.ts +94 -0
- package/dist/internal/cursor-slack-relay.d.ts.map +1 -0
- package/dist/internal/cursor-slack-relay.js +171 -0
- package/dist/internal/describe-error.d.ts +3 -0
- package/dist/internal/describe-error.d.ts.map +1 -0
- package/dist/internal/describe-error.js +4 -0
- package/dist/internal/dev-mode.d.ts +13 -0
- package/dist/internal/dev-mode.d.ts.map +1 -0
- package/dist/internal/dev-mode.js +17 -0
- package/dist/internal/discovery.d.ts +55 -0
- package/dist/internal/discovery.d.ts.map +1 -0
- package/dist/internal/discovery.js +1427 -0
- package/dist/internal/distribution.d.ts +47 -0
- package/dist/internal/distribution.d.ts.map +1 -0
- package/dist/internal/distribution.js +82 -0
- package/dist/internal/docs-site.d.ts +28 -0
- package/dist/internal/docs-site.d.ts.map +1 -0
- package/dist/internal/docs-site.js +169 -0
- package/dist/internal/duration.d.ts +8 -0
- package/dist/internal/duration.d.ts.map +1 -0
- package/dist/internal/duration.js +35 -0
- package/dist/internal/eval-run-store.d.ts +81 -0
- package/dist/internal/eval-run-store.d.ts.map +1 -0
- package/dist/internal/eval-run-store.js +396 -0
- package/dist/internal/eval-runner.d.ts +76 -0
- package/dist/internal/eval-runner.d.ts.map +1 -0
- package/dist/internal/eval-runner.js +336 -0
- package/dist/internal/event-log.d.ts +51 -0
- package/dist/internal/event-log.d.ts.map +1 -0
- package/dist/internal/event-log.js +167 -0
- package/dist/internal/event-mapper.d.ts +46 -0
- package/dist/internal/event-mapper.d.ts.map +1 -0
- package/dist/internal/event-mapper.js +226 -0
- package/dist/internal/frontmatter.d.ts +12 -0
- package/dist/internal/frontmatter.d.ts.map +1 -0
- package/dist/internal/frontmatter.js +61 -0
- package/dist/internal/github-fanout.d.ts +32 -0
- package/dist/internal/github-fanout.d.ts.map +1 -0
- package/dist/internal/github-fanout.js +122 -0
- package/dist/internal/handleAgentServeTrigger.d.ts +59 -0
- package/dist/internal/handleAgentServeTrigger.d.ts.map +1 -0
- package/dist/internal/handleAgentServeTrigger.js +115 -0
- package/dist/internal/host-platforms.d.ts +40 -0
- package/dist/internal/host-platforms.d.ts.map +1 -0
- package/dist/internal/host-platforms.js +113 -0
- package/dist/internal/http-channel.d.ts +54 -0
- package/dist/internal/http-channel.d.ts.map +1 -0
- package/dist/internal/http-channel.js +382 -0
- package/dist/internal/ids.d.ts +19 -0
- package/dist/internal/ids.d.ts.map +1 -0
- package/dist/internal/ids.js +34 -0
- package/dist/internal/init-project.d.ts +22 -0
- package/dist/internal/init-project.d.ts.map +1 -0
- package/dist/internal/init-project.js +125 -0
- package/dist/internal/json-dir-store.d.ts +32 -0
- package/dist/internal/json-dir-store.d.ts.map +1 -0
- package/dist/internal/json-dir-store.js +100 -0
- package/dist/internal/json-schema.d.ts +18 -0
- package/dist/internal/json-schema.d.ts.map +1 -0
- package/dist/internal/json-schema.js +53 -0
- package/dist/internal/log-ring.d.ts +23 -0
- package/dist/internal/log-ring.d.ts.map +1 -0
- package/dist/internal/log-ring.js +42 -0
- package/dist/internal/map-pool.d.ts +6 -0
- package/dist/internal/map-pool.d.ts.map +1 -0
- package/dist/internal/map-pool.js +41 -0
- package/dist/internal/mcp-endpoint.d.ts +59 -0
- package/dist/internal/mcp-endpoint.d.ts.map +1 -0
- package/dist/internal/mcp-endpoint.js +355 -0
- package/dist/internal/mcp-host.d.ts +28 -0
- package/dist/internal/mcp-host.d.ts.map +1 -0
- package/dist/internal/mcp-host.js +162 -0
- package/dist/internal/net.d.ts +5 -0
- package/dist/internal/net.d.ts.map +1 -0
- package/dist/internal/net.js +30 -0
- package/dist/internal/peer-connections.d.ts +44 -0
- package/dist/internal/peer-connections.d.ts.map +1 -0
- package/dist/internal/peer-connections.js +67 -0
- package/dist/internal/playground/static.d.ts +35 -0
- package/dist/internal/playground/static.d.ts.map +1 -0
- package/dist/internal/playground/static.js +162 -0
- package/dist/internal/playground/toolchain.d.ts +57 -0
- package/dist/internal/playground/toolchain.d.ts.map +1 -0
- package/dist/internal/playground/toolchain.js +226 -0
- package/dist/internal/reminder-runner.d.ts +62 -0
- package/dist/internal/reminder-runner.d.ts.map +1 -0
- package/dist/internal/reminder-runner.js +582 -0
- package/dist/internal/reminder-schedule.d.ts +22 -0
- package/dist/internal/reminder-schedule.d.ts.map +1 -0
- package/dist/internal/reminder-schedule.js +82 -0
- package/dist/internal/reminder-store.d.ts +58 -0
- package/dist/internal/reminder-store.d.ts.map +1 -0
- package/dist/internal/reminder-store.js +106 -0
- package/dist/internal/resolved-connections.d.ts +41 -0
- package/dist/internal/resolved-connections.d.ts.map +1 -0
- package/dist/internal/resolved-connections.js +73 -0
- package/dist/internal/review-comments.d.ts +50 -0
- package/dist/internal/review-comments.d.ts.map +1 -0
- package/dist/internal/review-comments.js +194 -0
- package/dist/internal/router.d.ts +33 -0
- package/dist/internal/router.d.ts.map +1 -0
- package/dist/internal/router.js +93 -0
- package/dist/internal/run-client.d.ts +49 -0
- package/dist/internal/run-client.d.ts.map +1 -0
- package/dist/internal/run-client.js +208 -0
- package/dist/internal/schedule-runner.d.ts +31 -0
- package/dist/internal/schedule-runner.d.ts.map +1 -0
- package/dist/internal/schedule-runner.js +126 -0
- package/dist/internal/sdk-runner.d.ts +41 -0
- package/dist/internal/sdk-runner.d.ts.map +1 -0
- package/dist/internal/sdk-runner.js +221 -0
- package/dist/internal/server.d.ts +25 -0
- package/dist/internal/server.d.ts.map +1 -0
- package/dist/internal/server.js +1374 -0
- package/dist/internal/session-engine.d.ts +287 -0
- package/dist/internal/session-engine.d.ts.map +1 -0
- package/dist/internal/session-engine.js +1377 -0
- package/dist/internal/session-store.d.ts +29 -0
- package/dist/internal/session-store.d.ts.map +1 -0
- package/dist/internal/session-store.js +140 -0
- package/dist/internal/session-urls.d.ts +10 -0
- package/dist/internal/session-urls.d.ts.map +1 -0
- package/dist/internal/session-urls.js +25 -0
- package/dist/internal/stream-progress.d.ts +14 -0
- package/dist/internal/stream-progress.d.ts.map +1 -0
- package/dist/internal/stream-progress.js +195 -0
- package/dist/internal/tool-result.d.ts +20 -0
- package/dist/internal/tool-result.d.ts.map +1 -0
- package/dist/internal/tool-result.js +45 -0
- package/dist/internal/trajectory.d.ts +56 -0
- package/dist/internal/trajectory.d.ts.map +1 -0
- package/dist/internal/trajectory.js +248 -0
- package/dist/internal/workspace.d.ts +42 -0
- package/dist/internal/workspace.d.ts.map +1 -0
- package/dist/internal/workspace.js +199 -0
- package/dist/playground/assets/cursor-icons-outline-oY2V_mvK.woff2 +0 -0
- package/dist/playground/assets/index-1K-hG-7p.css +1 -0
- package/dist/playground/assets/index-FlWjhg3x.js +79 -0
- package/dist/playground/index.html +17 -0
- package/dist/reminders.d.ts +23 -0
- package/dist/reminders.d.ts.map +1 -0
- package/dist/reminders.js +22 -0
- package/dist/schedules.d.ts +23 -0
- package/dist/schedules.d.ts.map +1 -0
- package/dist/schedules.js +26 -0
- package/dist/skills.d.ts +22 -0
- package/dist/skills.d.ts.map +1 -0
- package/dist/skills.js +22 -0
- package/dist/tools.d.ts +92 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/tools.js +68 -0
- package/dist/types.d.ts +1609 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +80 -0
- package/docs/README.md +174 -0
- package/docs/ab.md +355 -0
- package/docs/building-with-agents.md +129 -0
- package/docs/concepts.md +177 -0
- package/docs/deployment.md +218 -0
- package/docs/evals.md +383 -0
- package/docs/guides/agent-to-agent.md +118 -0
- package/docs/guides/cloud-runtime.md +122 -0
- package/docs/guides/github.md +172 -0
- package/docs/guides/human-in-the-loop.md +131 -0
- package/docs/guides/slack.md +245 -0
- package/docs/guides/webhooks.md +201 -0
- package/docs/hillclimbing.md +93 -0
- package/docs/quickstart.md +183 -0
- package/docs/reference/agent-config.md +154 -0
- package/docs/reference/channels.md +206 -0
- package/docs/reference/cli.md +257 -0
- package/docs/reference/connections.md +137 -0
- package/docs/reference/hooks.md +74 -0
- package/docs/reference/http-api.md +219 -0
- package/docs/reference/instructions.md +77 -0
- package/docs/reference/playground.md +67 -0
- package/docs/reference/project-layout.md +119 -0
- package/docs/reference/schedules.md +220 -0
- package/docs/reference/sessions.md +165 -0
- package/docs/reference/skills.md +79 -0
- package/docs/reference/subagents.md +74 -0
- package/docs/reference/tools.md +203 -0
- package/docs/scaffolding-agents.md +113 -0
- package/docs/troubleshooting.md +95 -0
- package/package.json +185 -0
- package/skills/ab/SKILL.md +139 -0
- package/skills/create-agent/SKILL.md +219 -0
- package/skills/debug/SKILL.md +71 -0
- package/skills/evals/SKILL.md +217 -0
- package/skills/framework-map/SKILL.md +142 -0
- package/skills/github/SKILL.md +144 -0
- package/skills/hillclimb/SKILL.md +162 -0
- package/skills/setup-slack/SKILL.md +180 -0
- package/src/ab.ts +675 -0
- package/src/bin/agent-serve.ts +949 -0
- package/src/channels/github/api.ts +374 -0
- package/src/channels/github/auth.ts +275 -0
- package/src/channels/github/binding.ts +223 -0
- package/src/channels/github/defaults.ts +111 -0
- package/src/channels/github/events.ts +72 -0
- package/src/channels/github/forward.ts +381 -0
- package/src/channels/github/github-channel.ts +2270 -0
- package/src/channels/github/index.ts +52 -0
- package/src/channels/github/replay.ts +387 -0
- package/src/channels/github/state.ts +95 -0
- package/src/channels/github/types.ts +490 -0
- package/src/channels/slack/api.ts +580 -0
- package/src/channels/slack/approvals.ts +198 -0
- package/src/channels/slack/assistant.ts +76 -0
- package/src/channels/slack/auth.ts +112 -0
- package/src/channels/slack/channel-watch.ts +219 -0
- package/src/channels/slack/constants.ts +30 -0
- package/src/channels/slack/credentials.ts +90 -0
- package/src/channels/slack/cursor-account.ts +166 -0
- package/src/channels/slack/defaults.ts +450 -0
- package/src/channels/slack/dispatch.ts +293 -0
- package/src/channels/slack/doctor.ts +135 -0
- package/src/channels/slack/event-id-dedupe.ts +30 -0
- package/src/channels/slack/inbound.ts +219 -0
- package/src/channels/slack/index.ts +45 -0
- package/src/channels/slack/init.ts +133 -0
- package/src/channels/slack/interactive.ts +194 -0
- package/src/channels/slack/links.ts +23 -0
- package/src/channels/slack/live-delivery.ts +201 -0
- package/src/channels/slack/log.ts +83 -0
- package/src/channels/slack/manifest.ts +179 -0
- package/src/channels/slack/pr-ref.ts +50 -0
- package/src/channels/slack/setup.ts +97 -0
- package/src/channels/slack/slack-channel.ts +374 -0
- package/src/channels/slack/socket-mode.ts +154 -0
- package/src/channels/slack/stream.ts +63 -0
- package/src/channels/slack/tool-approval-events.ts +136 -0
- package/src/channels/slack/types.ts +349 -0
- package/src/channels.ts +385 -0
- package/src/connections.ts +89 -0
- package/src/evals.ts +501 -0
- package/src/hooks.ts +33 -0
- package/src/index.ts +184 -0
- package/src/internal/ab-collector.ts +210 -0
- package/src/internal/ab-fold.ts +228 -0
- package/src/internal/ab-snapshot.ts +335 -0
- package/src/internal/approval-gate.ts +115 -0
- package/src/internal/auth.ts +39 -0
- package/src/internal/authored-alias-hooks.ts +69 -0
- package/src/internal/authored-loaders.ts +138 -0
- package/src/internal/bounded-int.ts +27 -0
- package/src/internal/brand.ts +29 -0
- package/src/internal/chat-client.ts +407 -0
- package/src/internal/cli-ax.ts +474 -0
- package/src/internal/cli-cursor.ts +275 -0
- package/src/internal/cli-github.ts +849 -0
- package/src/internal/cli-slack.ts +175 -0
- package/src/internal/cloud-merge.ts +41 -0
- package/src/internal/cron.ts +78 -0
- package/src/internal/cursor/account-mcp.ts +472 -0
- package/src/internal/cursor/backend-client.ts +614 -0
- package/src/internal/cursor/credentials.ts +401 -0
- package/src/internal/cursor-event-relay.ts +281 -0
- package/src/internal/cursor-relay-core.ts +444 -0
- package/src/internal/cursor-slack-relay.ts +242 -0
- package/src/internal/describe-error.ts +4 -0
- package/src/internal/dev-mode.ts +20 -0
- package/src/internal/discovery.ts +1709 -0
- package/src/internal/distribution.ts +97 -0
- package/src/internal/docs-site.ts +191 -0
- package/src/internal/duration.ts +39 -0
- package/src/internal/eval-run-store.ts +519 -0
- package/src/internal/eval-runner.ts +522 -0
- package/src/internal/event-log.ts +175 -0
- package/src/internal/event-mapper.ts +272 -0
- package/src/internal/frontmatter.ts +77 -0
- package/src/internal/github-fanout.ts +159 -0
- package/src/internal/handleAgentServeTrigger.ts +156 -0
- package/src/internal/host-platforms.ts +144 -0
- package/src/internal/http-channel.ts +546 -0
- package/src/internal/ids.ts +44 -0
- package/src/internal/init-project.ts +165 -0
- package/src/internal/json-dir-store.ts +109 -0
- package/src/internal/json-schema.ts +69 -0
- package/src/internal/log-ring.ts +59 -0
- package/src/internal/map-pool.ts +32 -0
- package/src/internal/mcp-endpoint.ts +518 -0
- package/src/internal/mcp-host.ts +211 -0
- package/src/internal/net.ts +31 -0
- package/src/internal/peer-connections.ts +100 -0
- package/src/internal/playground/static.ts +189 -0
- package/src/internal/playground/toolchain.ts +277 -0
- package/src/internal/reminder-runner.ts +756 -0
- package/src/internal/reminder-schedule.ts +106 -0
- package/src/internal/reminder-store.ts +145 -0
- package/src/internal/resolved-connections.ts +145 -0
- package/src/internal/review-comments.ts +268 -0
- package/src/internal/router.ts +145 -0
- package/src/internal/run-client.ts +320 -0
- package/src/internal/schedule-runner.ts +161 -0
- package/src/internal/sdk-runner.ts +315 -0
- package/src/internal/server.ts +1737 -0
- package/src/internal/session-engine.ts +1810 -0
- package/src/internal/session-store.ts +147 -0
- package/src/internal/session-urls.ts +40 -0
- package/src/internal/stream-progress.ts +254 -0
- package/src/internal/tool-result.ts +54 -0
- package/src/internal/trajectory.ts +306 -0
- package/src/internal/workspace.ts +223 -0
- package/src/reminders.ts +35 -0
- package/src/schedules.ts +37 -0
- package/src/skills.ts +27 -0
- package/src/tools.ts +127 -0
- package/src/types.ts +1848 -0
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
import type { AgentCloudOptions, AuthContext, AuthPolicy, ChannelEventHandlers, ChannelStartArgs, HostContext } from "../../types.js";
|
|
2
|
+
import type { GitHubApiOptions } from "./api.js";
|
|
3
|
+
import type { GitHubHandle, GitHubThread } from "./binding.js";
|
|
4
|
+
import type { GitHubProgressConfig } from "./defaults.js";
|
|
5
|
+
import type { GitHubChannelState } from "./state.js";
|
|
6
|
+
/** A credential value: a literal or a lazy resolver fetched on demand. */
|
|
7
|
+
export type GitHubCredentialValue = string | (() => string | undefined | Promise<string | undefined>);
|
|
8
|
+
/**
|
|
9
|
+
* GitHub webhook + API credentials. Every field falls back to an env var
|
|
10
|
+
* (or `gh auth token` for API calls), so you can drop the `credentials`
|
|
11
|
+
* block entirely once these are set:
|
|
12
|
+
*
|
|
13
|
+
* ```bash
|
|
14
|
+
* GITHUB_WEBHOOK_SECRET=... # verifies the webhook signature
|
|
15
|
+
* GITHUB_APP_ID=... # App JWT path (preferred in production)
|
|
16
|
+
* GITHUB_APP_PRIVATE_KEY=...
|
|
17
|
+
* GITHUB_APP_INSTALLATION_ID=... # host / non-webhook App auth
|
|
18
|
+
* GITHUB_APP_SLUG=... # supplies botName when it is not set in config
|
|
19
|
+
* GITHUB_TOKEN=... # local PAT fallback (or GH_TOKEN / `gh auth`)
|
|
20
|
+
* ```
|
|
21
|
+
*
|
|
22
|
+
* API auth prefers App installation tokens when App credentials are set,
|
|
23
|
+
* then falls back to `GITHUB_TOKEN` / `GH_TOKEN` / `gh auth token` for local
|
|
24
|
+
* testing.
|
|
25
|
+
*/
|
|
26
|
+
export interface GitHubChannelCredentials {
|
|
27
|
+
/**
|
|
28
|
+
* Webhook secret used to verify `X-Hub-Signature-256` before parsing the
|
|
29
|
+
* payload. Falls back to `GITHUB_WEBHOOK_SECRET`.
|
|
30
|
+
*/
|
|
31
|
+
webhookSecret?: GitHubCredentialValue;
|
|
32
|
+
/**
|
|
33
|
+
* Explicit bearer token for GitHub REST calls. Prefer this only when you
|
|
34
|
+
* intentionally override ambient auth (e.g. tests). Falls back to App
|
|
35
|
+
* installation tokens, then `GITHUB_TOKEN` / `GH_TOKEN` / `gh auth token`.
|
|
36
|
+
*/
|
|
37
|
+
token?: GitHubCredentialValue;
|
|
38
|
+
/**
|
|
39
|
+
* Pre-resolved installation access token (Connect-style). Same effect as
|
|
40
|
+
* {@link token} for API calls; skips App JWT exchange.
|
|
41
|
+
*/
|
|
42
|
+
installationToken?: GitHubCredentialValue;
|
|
43
|
+
/** GitHub App id for installation-token minting. Falls back to `GITHUB_APP_ID`. */
|
|
44
|
+
appId?: GitHubCredentialValue | number;
|
|
45
|
+
/** GitHub App private key (PEM). Falls back to `GITHUB_APP_PRIVATE_KEY`. */
|
|
46
|
+
privateKey?: GitHubCredentialValue;
|
|
47
|
+
}
|
|
48
|
+
/** @deprecated Prefer {@link GitHubChannelCredentials}. */
|
|
49
|
+
export type GitHubCredentials = GitHubChannelCredentials;
|
|
50
|
+
export type GitHubPullRequestAction = "opened" | "reopened" | "synchronize" | "ready_for_review" | "edited" | "closed" | "labeled" | "unlabeled" | "assigned" | "unassigned" | "review_requested" | "review_request_removed" | "converted_to_draft";
|
|
51
|
+
export type GitHubIssueAction = "opened" | "edited" | "closed" | "reopened" | "labeled" | "unlabeled" | "assigned" | "unassigned";
|
|
52
|
+
export type GitHubConversationKind = "issue" | "pull_request" | "review_thread";
|
|
53
|
+
export type GitHubCiAction = "created" | "completed" | "rerequested" | "requested_action";
|
|
54
|
+
export type GitHubCiConclusion = "success" | "failure" | "neutral" | "cancelled" | "timed_out" | "action_required" | "stale" | "skipped" | null;
|
|
55
|
+
export type GitHubCiStatus = "queued" | "in_progress" | "completed" | "waiting" | "requested" | "pending" | string;
|
|
56
|
+
/** Normalized actor on a delivery. */
|
|
57
|
+
export interface GitHubUser {
|
|
58
|
+
login: string;
|
|
59
|
+
id?: number;
|
|
60
|
+
type?: "User" | "Bot" | "Organization" | string;
|
|
61
|
+
}
|
|
62
|
+
/** Normalized repository on a delivery. */
|
|
63
|
+
export interface GitHubRepositoryRef {
|
|
64
|
+
fullName: string;
|
|
65
|
+
url: string;
|
|
66
|
+
owner: string;
|
|
67
|
+
name: string;
|
|
68
|
+
id?: number;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Wire shape of the `pull_request` webhook payload, narrowed to the fields
|
|
72
|
+
* the channel consumes.
|
|
73
|
+
*/
|
|
74
|
+
export type GitHubPullRequestPayload = {
|
|
75
|
+
action: string;
|
|
76
|
+
repository: {
|
|
77
|
+
id?: number;
|
|
78
|
+
full_name: string;
|
|
79
|
+
html_url: string;
|
|
80
|
+
name?: string;
|
|
81
|
+
owner?: {
|
|
82
|
+
login?: string;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
pull_request: {
|
|
86
|
+
number: number;
|
|
87
|
+
html_url: string;
|
|
88
|
+
title: string;
|
|
89
|
+
body?: string | null;
|
|
90
|
+
draft?: boolean;
|
|
91
|
+
user?: {
|
|
92
|
+
login?: string;
|
|
93
|
+
id?: number;
|
|
94
|
+
type?: string;
|
|
95
|
+
} | null;
|
|
96
|
+
head: {
|
|
97
|
+
ref: string;
|
|
98
|
+
sha: string;
|
|
99
|
+
};
|
|
100
|
+
base: {
|
|
101
|
+
ref: string;
|
|
102
|
+
sha?: string;
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
sender?: {
|
|
106
|
+
login?: string;
|
|
107
|
+
id?: number;
|
|
108
|
+
type?: string;
|
|
109
|
+
} | null;
|
|
110
|
+
installation?: {
|
|
111
|
+
id?: number;
|
|
112
|
+
} | null;
|
|
113
|
+
};
|
|
114
|
+
/** Normalized `pull_request` event handed to {@link GitHubPullRequestHook}. */
|
|
115
|
+
export interface GitHubPullRequestEvent {
|
|
116
|
+
action: GitHubPullRequestAction | string;
|
|
117
|
+
number: number;
|
|
118
|
+
url: string;
|
|
119
|
+
title: string;
|
|
120
|
+
body?: string;
|
|
121
|
+
headRef: string;
|
|
122
|
+
headSha: string;
|
|
123
|
+
baseRef: string;
|
|
124
|
+
baseSha?: string;
|
|
125
|
+
draft: boolean;
|
|
126
|
+
authorLogin?: string;
|
|
127
|
+
}
|
|
128
|
+
/** Normalized `issues` event. */
|
|
129
|
+
export interface GitHubIssueEvent {
|
|
130
|
+
action: GitHubIssueAction | string;
|
|
131
|
+
number: number;
|
|
132
|
+
url: string;
|
|
133
|
+
title: string;
|
|
134
|
+
body?: string;
|
|
135
|
+
authorLogin?: string;
|
|
136
|
+
}
|
|
137
|
+
/** Normalized comment on an issue, PR timeline, or review thread. */
|
|
138
|
+
export interface GitHubComment {
|
|
139
|
+
id: number;
|
|
140
|
+
body: string;
|
|
141
|
+
url: string;
|
|
142
|
+
htmlUrl: string;
|
|
143
|
+
author?: GitHubUser;
|
|
144
|
+
/** Present for inline review comments. */
|
|
145
|
+
path?: string;
|
|
146
|
+
line?: number | null;
|
|
147
|
+
pullRequestReviewId?: number | null;
|
|
148
|
+
/** Root or parent review comment when this comment is a thread reply. */
|
|
149
|
+
inReplyToId?: number;
|
|
150
|
+
}
|
|
151
|
+
/** Shared CI fields across check_suite / check_run / workflow_run. */
|
|
152
|
+
export interface GitHubCiPullRequestRef {
|
|
153
|
+
number: number;
|
|
154
|
+
url?: string;
|
|
155
|
+
}
|
|
156
|
+
export interface GitHubCiAppRef {
|
|
157
|
+
slug?: string;
|
|
158
|
+
name?: string;
|
|
159
|
+
}
|
|
160
|
+
export interface GitHubCiBase {
|
|
161
|
+
action: GitHubCiAction | string;
|
|
162
|
+
status?: GitHubCiStatus;
|
|
163
|
+
conclusion?: GitHubCiConclusion;
|
|
164
|
+
headSha: string;
|
|
165
|
+
app: GitHubCiAppRef;
|
|
166
|
+
pullRequests: GitHubCiPullRequestRef[];
|
|
167
|
+
}
|
|
168
|
+
export interface GitHubCheckSuiteEvent extends GitHubCiBase {
|
|
169
|
+
checkSuiteId: number;
|
|
170
|
+
}
|
|
171
|
+
export interface GitHubCheckRunEvent extends GitHubCiBase {
|
|
172
|
+
checkRunId: number;
|
|
173
|
+
name?: string;
|
|
174
|
+
checkSuiteId?: number;
|
|
175
|
+
}
|
|
176
|
+
export interface GitHubWorkflowRunEvent extends GitHubCiBase {
|
|
177
|
+
workflowRunId: number;
|
|
178
|
+
name?: string;
|
|
179
|
+
workflowId?: number;
|
|
180
|
+
htmlUrl?: string;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Legacy commit `status` webhook (Statuses API). Distinct from Checks /
|
|
184
|
+
* Actions events — use {@link GitHubChannelOptions.onStatus}.
|
|
185
|
+
*/
|
|
186
|
+
export interface GitHubStatusEvent {
|
|
187
|
+
state: "pending" | "success" | "failure" | "error" | string;
|
|
188
|
+
context: string;
|
|
189
|
+
description?: string | null;
|
|
190
|
+
targetUrl?: string | null;
|
|
191
|
+
sha: string;
|
|
192
|
+
name?: string;
|
|
193
|
+
branches: Array<{
|
|
194
|
+
name: string;
|
|
195
|
+
commit?: {
|
|
196
|
+
sha?: string;
|
|
197
|
+
};
|
|
198
|
+
}>;
|
|
199
|
+
commit?: {
|
|
200
|
+
sha?: string;
|
|
201
|
+
htmlUrl?: string;
|
|
202
|
+
};
|
|
203
|
+
raw: unknown;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Raw webhook envelope for {@link GitHubChannelOptions.onEvent}. Prefer
|
|
207
|
+
* typed hooks (`onComment`, `onPullRequest`, …) when possible.
|
|
208
|
+
*/
|
|
209
|
+
export interface GitHubRawEvent {
|
|
210
|
+
eventName: string;
|
|
211
|
+
deliveryId?: string;
|
|
212
|
+
action?: string;
|
|
213
|
+
payload: unknown;
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Per-delivery context shared by every inbound hook: where the event landed,
|
|
217
|
+
* who triggered it, delivery-scoped GitHub helpers (`github` / `thread`), and
|
|
218
|
+
* shared host services (`host`) for MCP / host GitHub / Slack.
|
|
219
|
+
*/
|
|
220
|
+
export interface GitHubEventContext {
|
|
221
|
+
/** `X-GitHub-Delivery` header, when present. */
|
|
222
|
+
deliveryId?: string;
|
|
223
|
+
/** `X-GitHub-Event` header. */
|
|
224
|
+
eventName: string;
|
|
225
|
+
repository: GitHubRepositoryRef;
|
|
226
|
+
/** The thread the session is anchored to. */
|
|
227
|
+
conversation: {
|
|
228
|
+
kind: GitHubConversationKind;
|
|
229
|
+
number: number;
|
|
230
|
+
url: string;
|
|
231
|
+
};
|
|
232
|
+
/** Login of the actor that triggered the delivery. */
|
|
233
|
+
senderLogin?: string;
|
|
234
|
+
sender?: GitHubUser;
|
|
235
|
+
/** Installation id from the webhook payload, when present. */
|
|
236
|
+
installationId?: number;
|
|
237
|
+
/** Authenticated GitHub helpers (`getOctokit`, `request`, `createStatus`). */
|
|
238
|
+
github: GitHubHandle;
|
|
239
|
+
/** Post / react on the conversation thread. */
|
|
240
|
+
thread: GitHubThread;
|
|
241
|
+
/** Shared host services (MCP / host GitHub / Slack). Same as tool `ctx.host`. */
|
|
242
|
+
host: HostContext;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* A hook's decision to handle an inbound event. Return `null` from the hook
|
|
246
|
+
* to ignore the delivery instead.
|
|
247
|
+
*/
|
|
248
|
+
export type GitHubDispatch = GitHubTurnDispatch | GitHubTaskDispatch;
|
|
249
|
+
/** Start (or resume) a model turn for the event. */
|
|
250
|
+
export interface GitHubTurnDispatch {
|
|
251
|
+
/** Who the turn runs as. Use `defaultGitHubAuth(ctx)` to derive it from the actor. */
|
|
252
|
+
auth: AuthContext | null;
|
|
253
|
+
/** Extra prompt lines appended to the default event message. */
|
|
254
|
+
context?: readonly string[];
|
|
255
|
+
/** Optional message override (comment hooks use the comment body by default). */
|
|
256
|
+
message?: string;
|
|
257
|
+
/** Optional session title override. */
|
|
258
|
+
title?: string;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Run a host-side handler for the event instead of a model turn. The task
|
|
262
|
+
* runs in the background (`waitUntil`) after the webhook is acknowledged
|
|
263
|
+
* with a 202, so it can outlive GitHub's ~10s delivery timeout.
|
|
264
|
+
*/
|
|
265
|
+
export interface GitHubTaskDispatch {
|
|
266
|
+
task: () => void | Promise<void>;
|
|
267
|
+
}
|
|
268
|
+
export type GitHubDispatchResult = GitHubDispatch | null | Promise<GitHubDispatch | null>;
|
|
269
|
+
/**
|
|
270
|
+
* Inbound `pull_request` hook. Return `{ auth }` to dispatch a turn,
|
|
271
|
+
* `{ task }` to run a host-side handler, or `null` to ignore the delivery.
|
|
272
|
+
* Without this hook the channel keeps the agent-serve default action gate
|
|
273
|
+
* (opened / reopened / synchronize / ready_for_review). Eve has no default —
|
|
274
|
+
* declare the hook for Eve-style opt-in dispatch.
|
|
275
|
+
*/
|
|
276
|
+
export type GitHubPullRequestHook = (ctx: GitHubEventContext, pullRequest: GitHubPullRequestEvent) => GitHubDispatchResult;
|
|
277
|
+
/**
|
|
278
|
+
* Invoked for every `@mention` of the bot in an issue/PR timeline comment or
|
|
279
|
+
* an inline review comment; `ctx.conversation.kind` distinguishes the surface.
|
|
280
|
+
* Return `{ auth }` to dispatch or `null` to ignore. Replaces the default
|
|
281
|
+
* mention gate when declared.
|
|
282
|
+
*/
|
|
283
|
+
export type GitHubCommentHook = (ctx: GitHubEventContext, comment: GitHubComment) => GitHubDispatchResult;
|
|
284
|
+
/** Opt-in `issues` webhook hook. No default dispatch. */
|
|
285
|
+
export type GitHubIssueHook = (ctx: GitHubEventContext, issue: GitHubIssueEvent) => GitHubDispatchResult;
|
|
286
|
+
/** Opt-in `check_suite` webhook hook. No default dispatch. */
|
|
287
|
+
export type GitHubCheckSuiteHook = (ctx: GitHubEventContext, checkSuite: GitHubCheckSuiteEvent) => GitHubDispatchResult;
|
|
288
|
+
/** Opt-in `check_run` webhook hook. No default dispatch. */
|
|
289
|
+
export type GitHubCheckRunHook = (ctx: GitHubEventContext, checkRun: GitHubCheckRunEvent) => GitHubDispatchResult;
|
|
290
|
+
/** Opt-in `workflow_run` webhook hook. No default dispatch. */
|
|
291
|
+
export type GitHubWorkflowRunHook = (ctx: GitHubEventContext, workflowRun: GitHubWorkflowRunEvent) => GitHubDispatchResult;
|
|
292
|
+
/**
|
|
293
|
+
* Opt-in legacy commit `status` webhook hook. No default dispatch. Turns are
|
|
294
|
+
* only started when the hook returns a dispatch *and* a PR can be resolved
|
|
295
|
+
* from the payload (otherwise use `{ task }` for host-side work).
|
|
296
|
+
*/
|
|
297
|
+
export type GitHubStatusHook = (ctx: GitHubEventContext, status: GitHubStatusEvent) => GitHubDispatchResult;
|
|
298
|
+
/**
|
|
299
|
+
* Catch-all for any webhook event (including ones with typed hooks). Runs
|
|
300
|
+
* after the typed handler path when the typed hook is absent or returns
|
|
301
|
+
* undefined-as-no-handler; for events with no typed hook, this is the only
|
|
302
|
+
* dispatch path. Return `null` to ignore.
|
|
303
|
+
*/
|
|
304
|
+
export type GitHubEventHook = (ctx: GitHubEventContext, event: GitHubRawEvent) => GitHubDispatchResult;
|
|
305
|
+
export type GitHubCloudOptionsResolver = (ctx: GitHubEventContext, pullRequest: GitHubPullRequestEvent) => AgentCloudOptions | undefined | Promise<AgentCloudOptions | undefined>;
|
|
306
|
+
export interface GitHubChannelOptions {
|
|
307
|
+
/**
|
|
308
|
+
* Bot / App slug used by the default `@mention` gate on comments.
|
|
309
|
+
* Falls back to `GITHUB_APP_SLUG`.
|
|
310
|
+
*/
|
|
311
|
+
botName?: string;
|
|
312
|
+
/**
|
|
313
|
+
* Webhook + API credentials. When the resolved webhook secret is set, the
|
|
314
|
+
* channel verifies `X-Hub-Signature-256` before parsing the payload.
|
|
315
|
+
* API calls prefer App installation tokens, then local PAT / `gh auth`.
|
|
316
|
+
*/
|
|
317
|
+
credentials?: GitHubChannelCredentials;
|
|
318
|
+
/** Optional GitHub API transport overrides (`apiBaseUrl`, `fetch`). */
|
|
319
|
+
api?: GitHubApiOptions;
|
|
320
|
+
/**
|
|
321
|
+
* Route auth chain. Defaults to strict loopback auth without a webhook
|
|
322
|
+
* secret, and allow-all with one because the GitHub HMAC is the request
|
|
323
|
+
* auth.
|
|
324
|
+
*/
|
|
325
|
+
auth?: AuthPolicy[];
|
|
326
|
+
/** Route path under `/v1/channels/<name>`. Defaults to `/`. */
|
|
327
|
+
path?: string;
|
|
328
|
+
/**
|
|
329
|
+
* Webhook events advertised to `agent-serve github forward` (published as
|
|
330
|
+
* `meta.githubWebhookEvents`). Defaults to the set derived from the declared
|
|
331
|
+
* hooks. Set this to pin an exact list — e.g. to include events only handled
|
|
332
|
+
* through {@link onEvent} such as `pull_request_review`.
|
|
333
|
+
*/
|
|
334
|
+
webhookEvents?: readonly string[];
|
|
335
|
+
/**
|
|
336
|
+
* Decide whether an inbound `pull_request` event starts a turn. Return
|
|
337
|
+
* `{ auth: defaultGitHubAuth(ctx) }` to dispatch, `null` to ignore.
|
|
338
|
+
* Without this hook the channel dispatches on opened, reopened,
|
|
339
|
+
* synchronize, and ready_for_review (agent-serve default; Eve is opt-in).
|
|
340
|
+
*/
|
|
341
|
+
onPullRequest?: GitHubPullRequestHook;
|
|
342
|
+
/**
|
|
343
|
+
* `@mention` gate for `issue_comment` and `pull_request_review_comment`.
|
|
344
|
+
* Without this hook, comments that `@mention` {@link botName} dispatch.
|
|
345
|
+
*/
|
|
346
|
+
onComment?: GitHubCommentHook;
|
|
347
|
+
/** Opt-in `issues` webhook handler. No default dispatch. */
|
|
348
|
+
onIssue?: GitHubIssueHook;
|
|
349
|
+
/** Opt-in `check_suite` webhook handler. No default dispatch. */
|
|
350
|
+
onCheckSuite?: GitHubCheckSuiteHook;
|
|
351
|
+
/** Opt-in `check_run` webhook handler. No default dispatch. */
|
|
352
|
+
onCheckRun?: GitHubCheckRunHook;
|
|
353
|
+
/** Opt-in `workflow_run` webhook handler. No default dispatch. */
|
|
354
|
+
onWorkflowRun?: GitHubWorkflowRunHook;
|
|
355
|
+
/** Opt-in legacy commit `status` webhook handler. No default dispatch. */
|
|
356
|
+
onStatus?: GitHubStatusHook;
|
|
357
|
+
/**
|
|
358
|
+
* Catch-all webhook handler. Invoked for events without a typed hook, and
|
|
359
|
+
* as a fallback when a typed hook is not declared. Prefer typed hooks when
|
|
360
|
+
* the event is known.
|
|
361
|
+
*/
|
|
362
|
+
onEvent?: GitHubEventHook;
|
|
363
|
+
/**
|
|
364
|
+
* Override / extend default stream-event handlers (eyes reaction, reply
|
|
365
|
+
* posting). Handlers you provide replace the matching defaults.
|
|
366
|
+
*/
|
|
367
|
+
events?: ChannelEventHandlers<GitHubChannelState>;
|
|
368
|
+
/** Acknowledgement progress surfaces (reactions). */
|
|
369
|
+
progress?: GitHubProgressConfig;
|
|
370
|
+
/**
|
|
371
|
+
* When false, skip posting assistant / error comments back to GitHub.
|
|
372
|
+
* Defaults to true.
|
|
373
|
+
*/
|
|
374
|
+
deliverReplies?: boolean;
|
|
375
|
+
/**
|
|
376
|
+
* Per-session cloud options. Pass `true` to attach the PR repo using the
|
|
377
|
+
* pull request URL, or a resolver for custom cloud options.
|
|
378
|
+
*/
|
|
379
|
+
cloud?: boolean | AgentCloudOptions | GitHubCloudOptionsResolver;
|
|
380
|
+
/** Called once when the server mounts this channel. */
|
|
381
|
+
onStart?: (args: ChannelStartArgs) => void | Promise<void>;
|
|
382
|
+
/** Called when the server shuts down. */
|
|
383
|
+
onStop?: () => void | Promise<void>;
|
|
384
|
+
}
|
|
385
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/channels/github/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Slack Web API helpers used by the channel pack (`@slack/web-api`).
|
|
3
|
+
*/
|
|
4
|
+
import type { HostContext } from "../../types.js";
|
|
5
|
+
import { type SlackLog } from "./log.js";
|
|
6
|
+
import type { StreamTaskChunk } from "./stream.js";
|
|
7
|
+
import type { SlackApiTransport, SlackBinding, SlackBotToken, SlackCredentials, SlackSuggestedPrompt, SoftSlackResult } from "./types.js";
|
|
8
|
+
/** Whether a bot token slot holds an API transport instead of a token. */
|
|
9
|
+
export declare function isSlackApiTransport(token: SlackBotToken | undefined): token is SlackApiTransport;
|
|
10
|
+
export declare function resolveBotToken(credentials: SlackCredentials | undefined): Promise<string>;
|
|
11
|
+
/** Resolve the Socket Mode app-level token (`xapp-…`). */
|
|
12
|
+
export declare function resolveAppToken(credentials: SlackCredentials | undefined): Promise<string>;
|
|
13
|
+
/** Channel-local continuation key: `<slackChannelId>:<threadTs>`. */
|
|
14
|
+
export declare function slackContinuationKey(channelId: string, threadTs: string): string;
|
|
15
|
+
/**
|
|
16
|
+
* Call a Slack Web API method. Platform errors (`ok: false`) are returned as
|
|
17
|
+
* the response body (not thrown) so callers can soft-fail cleanly. When the
|
|
18
|
+
* bot token slot holds a {@link SlackApiTransport} (e.g. the Cursor account
|
|
19
|
+
* proxy), the call is executed by the transport instead of `@slack/web-api`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function callSlackApi(args: {
|
|
22
|
+
botToken: SlackBotToken | undefined;
|
|
23
|
+
operation: string;
|
|
24
|
+
body: Record<string, unknown>;
|
|
25
|
+
}): Promise<Record<string, unknown>>;
|
|
26
|
+
/**
|
|
27
|
+
* Soft-fail wrapper: never throws for Slack API errors. Network/throw
|
|
28
|
+
* errors become `{ ok: false, error }`. Unsupported feature errors set
|
|
29
|
+
* `unsupported: true`.
|
|
30
|
+
*/
|
|
31
|
+
export declare function callSlackApiSoft(args: {
|
|
32
|
+
botToken: SlackBotToken | undefined;
|
|
33
|
+
operation: string;
|
|
34
|
+
body: Record<string, unknown>;
|
|
35
|
+
}): Promise<SoftSlackResult>;
|
|
36
|
+
export declare function truncateTypingStatus(status: string, max?: number): string;
|
|
37
|
+
export declare function truncateTitle(title: string, max?: number): string;
|
|
38
|
+
export declare function setThreadStatus(args: {
|
|
39
|
+
botToken: SlackBotToken | undefined;
|
|
40
|
+
channelId: string;
|
|
41
|
+
threadTs: string;
|
|
42
|
+
status: string;
|
|
43
|
+
loadingMessages?: string[];
|
|
44
|
+
}): Promise<SoftSlackResult>;
|
|
45
|
+
export declare function setThreadTitle(args: {
|
|
46
|
+
botToken: SlackBotToken | undefined;
|
|
47
|
+
channelId: string;
|
|
48
|
+
threadTs: string;
|
|
49
|
+
title: string;
|
|
50
|
+
}): Promise<SoftSlackResult>;
|
|
51
|
+
export declare function setSuggestedPrompts(args: {
|
|
52
|
+
botToken: SlackBotToken | undefined;
|
|
53
|
+
channelId: string;
|
|
54
|
+
threadTs: string;
|
|
55
|
+
prompts: SlackSuggestedPrompt[];
|
|
56
|
+
title?: string;
|
|
57
|
+
}): Promise<SoftSlackResult>;
|
|
58
|
+
export declare function startChatStream(args: {
|
|
59
|
+
botToken: SlackBotToken | undefined;
|
|
60
|
+
channel: string;
|
|
61
|
+
thread_ts?: string;
|
|
62
|
+
markdown_text?: string;
|
|
63
|
+
}): Promise<SoftSlackResult<{
|
|
64
|
+
ts: string;
|
|
65
|
+
channel: string;
|
|
66
|
+
}>>;
|
|
67
|
+
export declare function appendChatStream(args: {
|
|
68
|
+
botToken: SlackBotToken | undefined;
|
|
69
|
+
channel: string;
|
|
70
|
+
ts: string;
|
|
71
|
+
markdown_text?: string;
|
|
72
|
+
chunks?: StreamTaskChunk[];
|
|
73
|
+
}): Promise<SoftSlackResult>;
|
|
74
|
+
export declare function stopChatStream(args: {
|
|
75
|
+
botToken: SlackBotToken | undefined;
|
|
76
|
+
channel: string;
|
|
77
|
+
ts: string;
|
|
78
|
+
markdown_text?: string;
|
|
79
|
+
blocks?: unknown[];
|
|
80
|
+
}): Promise<SoftSlackResult>;
|
|
81
|
+
export declare function postMessage(args: {
|
|
82
|
+
botToken: SlackBotToken | undefined;
|
|
83
|
+
channel: string;
|
|
84
|
+
text: string;
|
|
85
|
+
threadTs?: string;
|
|
86
|
+
blocks?: unknown[];
|
|
87
|
+
}): Promise<{
|
|
88
|
+
ts: string;
|
|
89
|
+
}>;
|
|
90
|
+
/** Replace an existing message (e.g. strip Approve/Deny after a decision). */
|
|
91
|
+
export declare function updateMessage(args: {
|
|
92
|
+
botToken: SlackBotToken | undefined;
|
|
93
|
+
channel: string;
|
|
94
|
+
ts: string;
|
|
95
|
+
text: string;
|
|
96
|
+
blocks?: unknown[];
|
|
97
|
+
}): Promise<SoftSlackResult>;
|
|
98
|
+
/**
|
|
99
|
+
* Delete a message (`chat.delete`). Soft-fails — used best-effort to remove an
|
|
100
|
+
* orphaned skeleton before falling back to a fresh post, so a failed delete
|
|
101
|
+
* never blocks delivery of the reply.
|
|
102
|
+
*/
|
|
103
|
+
export declare function deleteMessage(args: {
|
|
104
|
+
botToken: SlackBotToken | undefined;
|
|
105
|
+
channel: string;
|
|
106
|
+
ts: string;
|
|
107
|
+
}): Promise<SoftSlackResult>;
|
|
108
|
+
export declare function buildSlackBinding(args: {
|
|
109
|
+
botToken: SlackBotToken | undefined;
|
|
110
|
+
channelId: string;
|
|
111
|
+
threadTs: string;
|
|
112
|
+
teamId?: string;
|
|
113
|
+
host: HostContext;
|
|
114
|
+
onThreadTsChanged?: (threadTs: string) => void;
|
|
115
|
+
log?: SlackLog;
|
|
116
|
+
}): SlackBinding;
|
|
117
|
+
//# sourceMappingURL=api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/api.ts"],"names":[],"mappings":"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"}
|