@cursor/july 0.1.78 → 0.1.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/dist/channels/github/api.d.ts.map +1 -1
  2. package/dist/channels/github/api.js +8 -1
  3. package/dist/channels/github/cursor-account.d.ts +17 -0
  4. package/dist/channels/github/cursor-account.d.ts.map +1 -1
  5. package/dist/channels/github/cursor-account.js +47 -0
  6. package/dist/docs/404.html +1 -1
  7. package/dist/docs/ab.html +2 -2
  8. package/dist/docs/assets/{app.BsA7t7rS.js → app.e4_wtjUS.js} +1 -1
  9. package/dist/docs/assets/chunks/@localSearchIndexroot.BGiMJpnL.js +1 -0
  10. package/dist/docs/assets/chunks/{VPLocalSearchBox.B1hHhktM.js → VPLocalSearchBox.DbdzyEie.js} +1 -1
  11. package/dist/docs/assets/chunks/{theme.DLpLSsQh.js → theme.D8HpLrLK.js} +2 -2
  12. package/dist/docs/building-with-agents.html +2 -2
  13. package/dist/docs/concepts.html +2 -2
  14. package/dist/docs/deployment.html +2 -2
  15. package/dist/docs/evals.html +2 -2
  16. package/dist/docs/example-agents/approval-buddy.html +2 -2
  17. package/dist/docs/example-agents/benny.html +2 -2
  18. package/dist/docs/example-agents/bugbot.html +2 -2
  19. package/dist/docs/example-agents/codebase-wiki.html +2 -2
  20. package/dist/docs/example-agents/codeowners-review.html +2 -2
  21. package/dist/docs/example-agents/concierge.html +2 -2
  22. package/dist/docs/example-agents/fsd.html +2 -2
  23. package/dist/docs/example-agents/index.html +2 -2
  24. package/dist/docs/example-agents/knowledge-base.html +2 -2
  25. package/dist/docs/example-agents/oncall.html +2 -2
  26. package/dist/docs/example-agents/security-reviewer.html +2 -2
  27. package/dist/docs/example-agents/slack-agent.html +2 -2
  28. package/dist/docs/example-agents/weather-agent.html +2 -2
  29. package/dist/docs/guides/agent-to-agent.html +2 -2
  30. package/dist/docs/guides/cloud-runtime.html +2 -2
  31. package/dist/docs/guides/convert-automation.html +2 -2
  32. package/dist/docs/guides/github.html +2 -2
  33. package/dist/docs/guides/human-in-the-loop.html +2 -2
  34. package/dist/docs/guides/mcp-oauth.html +2 -2
  35. package/dist/docs/guides/opentelemetry.html +2 -2
  36. package/dist/docs/guides/slack.html +2 -2
  37. package/dist/docs/guides/webhooks.html +2 -2
  38. package/dist/docs/hillclimbing.html +2 -2
  39. package/dist/docs/index.html +2 -2
  40. package/dist/docs/quickstart.html +2 -2
  41. package/dist/docs/reference/agent-config.html +2 -2
  42. package/dist/docs/reference/artifacts.html +2 -2
  43. package/dist/docs/reference/channels.html +2 -2
  44. package/dist/docs/reference/cli.html +2 -2
  45. package/dist/docs/reference/connections.html +2 -2
  46. package/dist/docs/reference/hooks.html +2 -2
  47. package/dist/docs/reference/http-api.html +2 -2
  48. package/dist/docs/reference/instructions.html +2 -2
  49. package/dist/docs/reference/playground.html +2 -2
  50. package/dist/docs/reference/project-layout.html +2 -2
  51. package/dist/docs/reference/prompt.html +2 -2
  52. package/dist/docs/reference/schedules.html +2 -2
  53. package/dist/docs/reference/sessions.html +2 -2
  54. package/dist/docs/reference/skills.html +2 -2
  55. package/dist/docs/reference/subagents.html +2 -2
  56. package/dist/docs/reference/tools.html +2 -2
  57. package/dist/docs/scaffolding-agents.html +2 -2
  58. package/dist/docs/storage.html +2 -2
  59. package/dist/docs/templates/agentic-owners.html +2 -2
  60. package/dist/docs/templates/demo.html +2 -2
  61. package/dist/docs/templates/pr-autofixer.html +2 -2
  62. package/dist/docs/templates/security-reviewer.html +2 -2
  63. package/dist/docs/templates/triage.html +2 -2
  64. package/dist/docs/troubleshooting.html +2 -2
  65. package/dist/internal/review-comments.d.ts +37 -7
  66. package/dist/internal/review-comments.d.ts.map +1 -1
  67. package/dist/internal/review-comments.js +209 -10
  68. package/dist/internal/server.d.ts.map +1 -1
  69. package/dist/internal/server.js +101 -49
  70. package/package.json +1 -1
  71. package/src/channels/github/api.ts +8 -0
  72. package/src/channels/github/cursor-account.ts +56 -0
  73. package/src/internal/review-comments.ts +257 -16
  74. package/src/internal/server.ts +124 -60
  75. package/templates/agentic-owners/agent/lib/owners/match.ts +64 -3
  76. package/templates/agentic-owners/agent/lib/owners/parse.ts +55 -1
  77. package/templates/agentic-owners/agent/lib/owners/types.ts +5 -0
  78. package/dist/docs/assets/chunks/@localSearchIndexroot.Dcs6boxD.js +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/github/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/github/api.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EACL,KAAK,oBAAoB,EAO1B,MAAM,WAAW,CAAC;AAOnB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACvD,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1E,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;CAAG;AAEjE,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,OAAO;IAC5C,IAAI,EAAE,CAAC,CAAC;IACR,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,YAAY,KAAK,EAAE;QACjB,IAAI,EAAE,OAAO,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KAChB,EASA;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;CACzB;AAED,MAAM,MAAM,qBAAqB,GAC7B,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,MAAM,GACN,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,CAAC;AAEb,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE;IAC/C,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,GAAG,OAAO,CAAC,OAAO,CAAC,CAwEnB;AAaD;;;GAGG;AACH,wBAAsB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE;IACtD,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,WAAW,CAAC,EAAE,wBAAwB,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;KAAE,CAAC;CAC1E,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAchC;AAqCD,8CAA8C;AAC9C,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,mBAAmB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACjE,OAAO,CAAC,mBAAmB,CAAC,CAiB9B;AAED,oDAAoD;AACpD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,mBAAmB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC/D,OAAO,CAAC,mBAAmB,CAAC,CAiB9B;AAED,6DAA6D;AAC7D,wBAAsB,8BAA8B,CAClD,KAAK,EAAE,mBAAmB,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,GACA,OAAO,CAAC,mBAAmB,CAAC,CAkB9B;AAED,uDAAuD;AACvD,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,OAAO,EAAE,eAAe,GAAG,6BAA6B,CAAC;CAC1D,GACA,OAAO,CAAC,iBAAiB,CAAC,CA+B5B;AAED,sDAAsD;AACtD,wBAAsB,wBAAwB,CAC5C,KAAK,EAAE,mBAAmB,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GACA,OAAO,CAAC,iBAAiB,CAAC,CA0B5B;AAED,MAAM,MAAM,oBAAoB,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,CAAC;AAC1E,MAAM,MAAM,wBAAwB,GAChC,iBAAiB,GACjB,WAAW,GACX,SAAS,GACT,SAAS,GACT,SAAS,GACT,SAAS,GACT,WAAW,CAAC;AAEhB,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,MAAM,EAAE,oBAAoB,CAAC;CAC9B;AAED,uCAAuC;AACvC,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,GACxB,wBAAwB,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;CACb,GACF,OAAO,CAAC,cAAc,CAAC,CAuBzB;AAED,uCAAuC;AACvC,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,mBAAmB,GACxB,wBAAwB,GAAG;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB,GACF,OAAO,CAAC,cAAc,CAAC,CAqBzB;AAqED,wEAAwE;AACxE,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GACX,KAAK,CAUP"}
@@ -17,7 +17,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
17
17
  import { createAppAuth } from "@octokit/auth-app";
18
18
  import { Octokit } from "@octokit/rest";
19
19
  import { hasGitHubAppCredentials, resolveCredentialValue, resolveGitHubAccessToken, resolveGitHubAppId, resolveGitHubInstallationId, resolveGitHubPrivateKey, } from "./auth.js";
20
- import { getCursorAccountGithubProxyTransport, isCursorAccountGithubTokenResolver, } from "./cursor-account.js";
20
+ import { getCursorAccountGithubProxyTransport, githubRepoFromOctokitRequest, isCursorAccountGithubTokenResolver, } from "./cursor-account.js";
21
21
  export class GitHubApiError extends Error {
22
22
  constructor(input) {
23
23
  super(`GitHub ${input.method} ${input.path} failed with HTTP ${input.status}.`);
@@ -60,6 +60,13 @@ export function createGitHubOctokit(input) {
60
60
  request.headers.authorization = `Bearer ${token}`;
61
61
  if (proxyTransport !== undefined) {
62
62
  Object.assign(request.headers, proxyTransport.headers);
63
+ const existingRepos = request.headers["x-cursor-github-repos"];
64
+ if (typeof existingRepos !== "string" || existingRepos.trim() === "") {
65
+ const repo = githubRepoFromOctokitRequest(request);
66
+ if (repo !== undefined) {
67
+ request.headers["x-cursor-github-repos"] = repo;
68
+ }
69
+ }
63
70
  }
64
71
  }));
65
72
  return octokit;
@@ -44,6 +44,23 @@ export interface GithubCursorAccountRuntime {
44
44
  scope: CursorGithubRepoScope | undefined;
45
45
  }
46
46
  export declare function parseCursorGithubPermissions(value: unknown, fallback?: CursorGithubPermissions): CursorGithubPermissions;
47
+ /**
48
+ * `owner/repo` from an Octokit request, for github-proxy calls that have no
49
+ * static `x-cursor-github-repos` header (`cursorAccount: true` with no
50
+ * `--repo` / channel `{ repos }`).
51
+ */
52
+ export declare function githubRepoFromOctokitRequest(request: {
53
+ owner?: unknown;
54
+ repo?: unknown;
55
+ url?: unknown;
56
+ }): string | undefined;
57
+ /**
58
+ * Merge `--repo` / channel-declared repos into a lease scope. Empty is
59
+ * valid for `cursorAccount: true`: hosted engines that pull events from
60
+ * the deployment stream (no `--cursor-events --repo`) still start, and
61
+ * github-proxy fills `x-cursor-github-repos` per Octokit call.
62
+ */
63
+ export declare function resolveCursorGithubCredentialScope(values: readonly string[], permissions?: CursorGithubPermissions): CursorGithubRepoScope | undefined;
47
64
  export declare function parseCursorGithubRepoScope(values: readonly string[], permissions?: CursorGithubPermissions): CursorGithubRepoScope;
48
65
  /**
49
66
  * Hosted `cursorAccount` mints `checks:write` on the `contents-write` tier.
@@ -1 +1 @@
1
- {"version":3,"file":"cursor-account.d.ts","sourceRoot":"","sources":["../../../src/channels/github/cursor-account.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAI1C,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,YACpC,MAAM,EACN,UAAU,EACV,gBAAgB,CACR,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,MAAM,MAAM,gCAAgC,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC5C,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,kBAAkB,CAAC,SAAS,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAChE,iBAAiB,IAAI,0BAA0B,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,WAAW,0BAA0B;IACzC,gDAAgD;IAChD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,WAAW,EAAE,8BAA8B,CAAC;IAC5C;;;OAGG;IACH,KAAK,EAAE,qBAAqB,GAAG,SAAS,CAAC;CAC1C;AAID,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,uBAAoC,GAC7C,uBAAuB,CAUzB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,WAAW,GAAE,uBAAoC,GAChD,qBAAqB,CAmCvB;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,QAAQ,CAAC,EAC1D,QAAQ,GAAE,uBAAuB,GAAG,SAAsB,GACzD,uBAAuB,CAezB;AAED,oEAAoE;AACpE,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,uBAAuB,EAAE,GACzC,uBAAuB,CAWzB;AAED,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,8BAA8B,GACvC,gCAAgC,CAOlC;AAED,6EAA6E;AAC7E,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,gCAAgC,GACzC,0BAA0B,GAAG,SAAS,CAExC;AAOD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAO1E;AAED,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,gCAAgC,CAE3C;AAED,wBAAgB,oCAAoC,IAAI,8BAA8B,CAsBrF;AAED,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,0BAA0B,GAClC,IAAI,CAEN;AAED,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,MAAM,GACjB,0BAA0B,GAAG,SAAS,CAExC"}
1
+ {"version":3,"file":"cursor-account.d.ts","sourceRoot":"","sources":["../../../src/channels/github/cursor-account.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEvD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAI1C,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,YACpC,MAAM,EACN,UAAU,EACV,gBAAgB,CACR,CAAC;AAEX,MAAM,MAAM,uBAAuB,GACjC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,uBAAuB,CAAC;CACtC;AAED,MAAM,MAAM,gCAAgC,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;AAErE;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,8BAA8B;IAC7C,IAAI,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC5C,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,kBAAkB,CAAC,SAAS,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAChE,iBAAiB,IAAI,0BAA0B,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,WAAW,0BAA0B;IACzC,gDAAgD;IAChD,OAAO,EAAE,oBAAoB,CAAC;IAC9B,WAAW,EAAE,8BAA8B,CAAC;IAC5C;;;OAGG;IACH,KAAK,EAAE,qBAAqB,GAAG,SAAS,CAAC;CAC1C;AAID,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,OAAO,EACd,QAAQ,GAAE,uBAAoC,GAC7C,uBAAuB,CAUzB;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE;IACpD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GAAG,MAAM,GAAG,SAAS,CA0BrB;AAED;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,WAAW,GAAE,uBAAoC,GAChD,qBAAqB,GAAG,SAAS,CAQnC;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,WAAW,GAAE,uBAAoC,GAChD,qBAAqB,CAmCvB;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,UAAU,GAAG,QAAQ,CAAC,EAC1D,QAAQ,GAAE,uBAAuB,GAAG,SAAsB,GACzD,uBAAuB,CAezB;AAED,oEAAoE;AACpE,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,SAAS,uBAAuB,EAAE,GACzC,uBAAuB,CAWzB;AAED,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,EAC/B,OAAO,CAAC,EAAE,8BAA8B,GACvC,gCAAgC,CAOlC;AAED,6EAA6E;AAC7E,wBAAgB,oCAAoC,CAClD,QAAQ,EAAE,gCAAgC,GACzC,0BAA0B,GAAG,SAAS,CAExC;AAOD;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAO1E;AAED,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,gCAAgC,CAE3C;AAED,wBAAgB,oCAAoC,IAAI,8BAA8B,CAsBrF;AAED,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,0BAA0B,GAClC,IAAI,CAEN;AAED,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,MAAM,GACjB,0BAA0B,GAAG,SAAS,CAExC"}
@@ -25,6 +25,53 @@ export function parseCursorGithubPermissions(value, fallback = "pr-write") {
25
25
  }
26
26
  throw new Error('Cursor account GitHub permissions must be "read", "pr-write", or "contents-write".');
27
27
  }
28
+ /**
29
+ * `owner/repo` from an Octokit request, for github-proxy calls that have no
30
+ * static `x-cursor-github-repos` header (`cursorAccount: true` with no
31
+ * `--repo` / channel `{ repos }`).
32
+ */
33
+ export function githubRepoFromOctokitRequest(request) {
34
+ var _a, _b;
35
+ var _c, _d;
36
+ if (typeof request.owner === "string" && typeof request.repo === "string") {
37
+ const slug = `${request.owner.trim()}/${request.repo.trim()}`.toLowerCase();
38
+ if (CURSOR_GITHUB_REPO_PATTERN.test(slug) && !slug.includes("..")) {
39
+ return slug;
40
+ }
41
+ }
42
+ if (typeof request.url !== "string") {
43
+ return undefined;
44
+ }
45
+ const match = request.url.match(/\/repos\/([^/?#]+)\/([^/?#]+)/);
46
+ const owner = (_c = (_a = match === null || match === void 0 ? void 0 : match[1]) === null || _a === void 0 ? void 0 : _a.trim()) !== null && _c !== void 0 ? _c : "";
47
+ const repo = (_d = (_b = match === null || match === void 0 ? void 0 : match[2]) === null || _b === void 0 ? void 0 : _b.trim()) !== null && _d !== void 0 ? _d : "";
48
+ if (owner === "" ||
49
+ repo === "" ||
50
+ owner.includes("{") ||
51
+ repo.includes("{")) {
52
+ return undefined;
53
+ }
54
+ const slug = `${owner}/${repo}`.toLowerCase();
55
+ if (!CURSOR_GITHUB_REPO_PATTERN.test(slug) || slug.includes("..")) {
56
+ return undefined;
57
+ }
58
+ return slug;
59
+ }
60
+ /**
61
+ * Merge `--repo` / channel-declared repos into a lease scope. Empty is
62
+ * valid for `cursorAccount: true`: hosted engines that pull events from
63
+ * the deployment stream (no `--cursor-events --repo`) still start, and
64
+ * github-proxy fills `x-cursor-github-repos` per Octokit call.
65
+ */
66
+ export function resolveCursorGithubCredentialScope(values, permissions = "pr-write") {
67
+ const repos = [
68
+ ...new Set(values.map((repo) => repo.trim().toLowerCase()).filter(Boolean)),
69
+ ];
70
+ if (repos.length === 0) {
71
+ return undefined;
72
+ }
73
+ return parseCursorGithubRepoScope(repos, permissions);
74
+ }
28
75
  export function parseCursorGithubRepoScope(values, permissions = "pr-write") {
29
76
  var _a;
30
77
  const repos = [
@@ -9,7 +9,7 @@
9
9
  <link rel="preload stylesheet" href="/docs/assets/style.kTsvp4pE.css" as="style">
10
10
  <link rel="preload stylesheet" href="/docs/vp-icons.css" as="style">
11
11
 
12
- <script type="module" src="/docs/assets/app.BsA7t7rS.js"></script>
12
+ <script type="module" src="/docs/assets/app.e4_wtjUS.js"></script>
13
13
  <link rel="preload" href="/docs/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
14
14
  <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
15
15
  <script id="check-mac-os">document.documentElement.classList.toggle("mac",/Mac|iPhone|iPod|iPad/i.test(navigator.platform));</script>
package/dist/docs/ab.html CHANGED
@@ -9,9 +9,9 @@
9
9
  <link rel="preload stylesheet" href="/docs/assets/style.kTsvp4pE.css" as="style">
10
10
  <link rel="preload stylesheet" href="/docs/vp-icons.css" as="style">
11
11
 
12
- <script type="module" src="/docs/assets/app.BsA7t7rS.js"></script>
12
+ <script type="module" src="/docs/assets/app.e4_wtjUS.js"></script>
13
13
  <link rel="preload" href="/docs/assets/inter-roman-latin.Di8DUHzh.woff2" as="font" type="font/woff2" crossorigin="">
14
- <link rel="modulepreload" href="/docs/assets/chunks/theme.DLpLSsQh.js">
14
+ <link rel="modulepreload" href="/docs/assets/chunks/theme.D8HpLrLK.js">
15
15
  <link rel="modulepreload" href="/docs/assets/chunks/framework.CAZyNGu9.js">
16
16
  <link rel="modulepreload" href="/docs/assets/ab.md.DYjwREAP.lean.js">
17
17
  <script id="check-dark-mode">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"auto",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
@@ -1 +1 @@
1
- import{t as p}from"./chunks/theme.DLpLSsQh.js";import{R as s,a2 as i,a3 as u,a4 as c,a5 as l,a6 as f,a7 as d,a8 as m,a9 as h,aa as g,ab as A,d as v,u as y,v as C,s as P,ac as b,ad as w,ae as R,af as E}from"./chunks/framework.CAZyNGu9.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(p),S=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=y();return C(()=>{P(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&b(),w(),R(),n.setup&&n.setup(),()=>E(n.Layout)}});async function T(){globalThis.__VITEPRESS__=!0;const e=_(),a=D();a.provide(u,e);const t=c(e.route);return a.provide(l,t),a.component("Content",f),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function D(){return A(S)}function _(){let e=s;return h(a=>{let t=g(a),o=null;return t&&(e&&(t=t.replace(/\.js$/,".lean.js")),o=import(t)),s&&(e=!1),o},n.NotFound)}s&&T().then(({app:e,router:a,data:t})=>{a.go().then(()=>{i(a.route,t.site),e.mount("#app")})});export{T as createApp};
1
+ import{t as p}from"./chunks/theme.D8HpLrLK.js";import{R as s,a2 as i,a3 as u,a4 as c,a5 as l,a6 as f,a7 as d,a8 as m,a9 as h,aa as g,ab as A,d as v,u as y,v as C,s as P,ac as b,ad as w,ae as R,af as E}from"./chunks/framework.CAZyNGu9.js";function r(e){if(e.extends){const a=r(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const n=r(p),S=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=y();return C(()=>{P(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&b(),w(),R(),n.setup&&n.setup(),()=>E(n.Layout)}});async function T(){globalThis.__VITEPRESS__=!0;const e=_(),a=D();a.provide(u,e);const t=c(e.route);return a.provide(l,t),a.component("Content",f),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),n.enhanceApp&&await n.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function D(){return A(S)}function _(){let e=s;return h(a=>{let t=g(a),o=null;return t&&(e&&(t=t.replace(/\.js$/,".lean.js")),o=import(t)),s&&(e=!1),o},n.NotFound)}s&&T().then(({app:e,router:a,data:t})=>{a.go().then(()=>{i(a.route,t.site),e.mount("#app")})});export{T as createApp};