@cursor/july 0.1.68 → 0.1.73

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 (226) hide show
  1. package/AGENTS.md +4 -5
  2. package/README.md +23 -11
  3. package/dist/bin/agent-serve.js +3 -2
  4. package/dist/channels/github/api.d.ts +2 -0
  5. package/dist/channels/github/api.d.ts.map +1 -1
  6. package/dist/channels/github/api.js +2 -1
  7. package/dist/channels/github/binding.d.ts +7 -0
  8. package/dist/channels/github/binding.d.ts.map +1 -1
  9. package/dist/channels/github/binding.js +4 -0
  10. package/dist/channels/github/checks.d.ts +99 -0
  11. package/dist/channels/github/checks.d.ts.map +1 -0
  12. package/dist/channels/github/checks.js +108 -0
  13. package/dist/channels/github/cursor-account.d.ts +4 -4
  14. package/dist/channels/github/cursor-account.d.ts.map +1 -1
  15. package/dist/channels/github/cursor-account.js +7 -5
  16. package/dist/channels/github/index.d.ts +1 -0
  17. package/dist/channels/github/index.d.ts.map +1 -1
  18. package/dist/channels/github/index.js +1 -0
  19. package/dist/channels/github/types.d.ts +8 -0
  20. package/dist/channels/github/types.d.ts.map +1 -1
  21. package/dist/channels/slack/manifest.d.ts +2 -2
  22. package/dist/channels/slack/manifest.d.ts.map +1 -1
  23. package/dist/channels/slack/manifest.js +13 -11
  24. package/dist/channels/slack/types.d.ts +2 -2
  25. package/dist/channels/slack/types.d.ts.map +1 -1
  26. package/dist/connections.d.ts +17 -5
  27. package/dist/connections.d.ts.map +1 -1
  28. package/dist/connections.js +17 -5
  29. package/dist/docs/404.html +2 -2
  30. package/dist/docs/ab.html +3 -3
  31. package/dist/docs/assets/{app.C5XUTCw9.js → app.CdbcFD8T.js} +1 -1
  32. package/dist/docs/assets/chunks/@localSearchIndexroot.DQad--_z.js +1 -0
  33. package/dist/docs/assets/chunks/{VPLocalSearchBox.CGDTAYHY.js → VPLocalSearchBox.D_NKImM7.js} +1 -1
  34. package/dist/docs/assets/chunks/{theme.lPixh250.js → theme.CMvz7cu9.js} +2 -2
  35. package/dist/docs/assets/{concepts.md.CqOsxbMU.js → concepts.md.BXAm6G-C.js} +1 -1
  36. package/dist/docs/assets/{guides_mcp-oauth.md.C7G7IykG.js → guides_mcp-oauth.md.CzEB6RaG.js} +1 -1
  37. package/dist/docs/assets/{reference_agent-config.md.DHkkvcEZ.js → reference_agent-config.md.BZnEKfEc.js} +3 -4
  38. package/dist/docs/assets/{reference_agent-config.md.DHkkvcEZ.lean.js → reference_agent-config.md.BZnEKfEc.lean.js} +1 -1
  39. package/dist/docs/assets/{reference_connections.md.Bwswbm6H.js → reference_connections.md.Cu3N-S3Q.js} +18 -11
  40. package/dist/docs/assets/{reference_connections.md.Bwswbm6H.lean.js → reference_connections.md.Cu3N-S3Q.lean.js} +1 -1
  41. package/dist/docs/assets/{reference_sessions.md.DBVFi2Sx.js → reference_sessions.md.B0DdlM-K.js} +1 -1
  42. package/dist/docs/assets/{reference_tools.md.Wmvb7Lob.js → reference_tools.md.DTg_kEsx.js} +1 -1
  43. package/dist/docs/assets/troubleshooting.md.DQ-hYuZT.js +1 -0
  44. package/dist/docs/building-with-agents.html +3 -3
  45. package/dist/docs/concepts.html +5 -5
  46. package/dist/docs/deployment.html +3 -3
  47. package/dist/docs/evals.html +3 -3
  48. package/dist/docs/example-agents/approval-buddy.html +3 -3
  49. package/dist/docs/example-agents/benny.html +3 -3
  50. package/dist/docs/example-agents/bugbot.html +3 -3
  51. package/dist/docs/example-agents/codebase-wiki.html +3 -3
  52. package/dist/docs/example-agents/codeowners-review.html +3 -3
  53. package/dist/docs/example-agents/concierge.html +3 -3
  54. package/dist/docs/example-agents/fsd.html +3 -3
  55. package/dist/docs/example-agents/index.html +3 -3
  56. package/dist/docs/example-agents/knowledge-base.html +3 -3
  57. package/dist/docs/example-agents/oncall.html +3 -3
  58. package/dist/docs/example-agents/security-reviewer.html +3 -3
  59. package/dist/docs/example-agents/slack-agent.html +3 -3
  60. package/dist/docs/example-agents/weather-agent.html +3 -3
  61. package/dist/docs/guides/agent-to-agent.html +3 -3
  62. package/dist/docs/guides/cloud-runtime.html +3 -3
  63. package/dist/docs/guides/convert-automation.html +3 -3
  64. package/dist/docs/guides/github.html +3 -3
  65. package/dist/docs/guides/human-in-the-loop.html +3 -3
  66. package/dist/docs/guides/mcp-oauth.html +5 -5
  67. package/dist/docs/guides/opentelemetry.html +3 -3
  68. package/dist/docs/guides/slack.html +3 -3
  69. package/dist/docs/guides/webhooks.html +3 -3
  70. package/dist/docs/hashmap.json +1 -1
  71. package/dist/docs/hillclimbing.html +3 -3
  72. package/dist/docs/index.html +3 -3
  73. package/dist/docs/quickstart.html +3 -3
  74. package/dist/docs/reference/agent-config.html +5 -6
  75. package/dist/docs/reference/artifacts.html +3 -3
  76. package/dist/docs/reference/channels.html +3 -3
  77. package/dist/docs/reference/cli.html +3 -3
  78. package/dist/docs/reference/connections.html +20 -13
  79. package/dist/docs/reference/hooks.html +3 -3
  80. package/dist/docs/reference/http-api.html +3 -3
  81. package/dist/docs/reference/instructions.html +3 -3
  82. package/dist/docs/reference/playground.html +3 -3
  83. package/dist/docs/reference/project-layout.html +3 -3
  84. package/dist/docs/reference/prompt.html +3 -3
  85. package/dist/docs/reference/schedules.html +3 -3
  86. package/dist/docs/reference/sessions.html +5 -5
  87. package/dist/docs/reference/skills.html +3 -3
  88. package/dist/docs/reference/subagents.html +3 -3
  89. package/dist/docs/reference/tools.html +5 -5
  90. package/dist/docs/scaffolding-agents.html +3 -3
  91. package/dist/docs/storage.html +3 -3
  92. package/dist/docs/templates/agentic-owners.html +3 -3
  93. package/dist/docs/templates/demo.html +3 -3
  94. package/dist/docs/templates/pr-autofixer.html +3 -3
  95. package/dist/docs/templates/security-reviewer.html +3 -3
  96. package/dist/docs/templates/triage.html +3 -3
  97. package/dist/docs/troubleshooting.html +5 -5
  98. package/dist/internal/advertise-tools.d.ts +11 -6
  99. package/dist/internal/advertise-tools.d.ts.map +1 -1
  100. package/dist/internal/advertise-tools.js +63 -30
  101. package/dist/internal/cli-deploy.d.ts.map +1 -1
  102. package/dist/internal/cli-deploy.js +2 -4
  103. package/dist/internal/convert-automation/convert-workflow.d.ts.map +1 -1
  104. package/dist/internal/convert-automation/convert-workflow.js +2 -10
  105. package/dist/internal/cursor/account-mcp.d.ts +29 -3
  106. package/dist/internal/cursor/account-mcp.d.ts.map +1 -1
  107. package/dist/internal/cursor/account-mcp.js +147 -67
  108. package/dist/internal/cursor/backend-client.d.ts +11 -6
  109. package/dist/internal/cursor/backend-client.d.ts.map +1 -1
  110. package/dist/internal/cursor/backend-client.js +32 -10
  111. package/dist/internal/cursor-account-mcp-auth.d.ts +11 -0
  112. package/dist/internal/cursor-account-mcp-auth.d.ts.map +1 -1
  113. package/dist/internal/cursor-account-mcp-auth.js +69 -0
  114. package/dist/internal/deploy-client.d.ts +0 -7
  115. package/dist/internal/deploy-client.d.ts.map +1 -1
  116. package/dist/internal/deploy-client.js +2 -4
  117. package/dist/internal/deploy-manifest.d.ts +15 -24
  118. package/dist/internal/deploy-manifest.d.ts.map +1 -1
  119. package/dist/internal/deploy-manifest.js +38 -27
  120. package/dist/internal/deployment-scm-event-stream.d.ts +4 -1
  121. package/dist/internal/deployment-scm-event-stream.d.ts.map +1 -1
  122. package/dist/internal/deployment-scm-event-stream.js +15 -1
  123. package/dist/internal/discovery.d.ts.map +1 -1
  124. package/dist/internal/discovery.js +42 -10
  125. package/dist/internal/init-project.d.ts.map +1 -1
  126. package/dist/internal/init-project.js +7 -106
  127. package/dist/internal/init-scaffold.d.ts +8 -0
  128. package/dist/internal/init-scaffold.d.ts.map +1 -0
  129. package/dist/internal/init-scaffold.js +168 -0
  130. package/dist/internal/inline-stdio-mcp.d.ts +2 -0
  131. package/dist/internal/inline-stdio-mcp.d.ts.map +1 -1
  132. package/dist/internal/inline-stdio-mcp.js +10 -8
  133. package/dist/internal/json-schema.d.ts +7 -0
  134. package/dist/internal/json-schema.d.ts.map +1 -1
  135. package/dist/internal/json-schema.js +18 -3
  136. package/dist/internal/mcp-endpoint.js +7 -7
  137. package/dist/internal/mcp-host.js +4 -2
  138. package/dist/internal/mcp-oauth.d.ts +22 -0
  139. package/dist/internal/mcp-oauth.d.ts.map +1 -1
  140. package/dist/internal/mcp-oauth.js +40 -1
  141. package/dist/internal/package-inline-stdio.d.ts.map +1 -1
  142. package/dist/internal/package-inline-stdio.js +5 -5
  143. package/dist/internal/review-comments.d.ts +97 -0
  144. package/dist/internal/review-comments.d.ts.map +1 -1
  145. package/dist/internal/review-comments.js +151 -0
  146. package/dist/internal/sanitize-mcp-tool-name.d.ts +20 -0
  147. package/dist/internal/sanitize-mcp-tool-name.d.ts.map +1 -0
  148. package/dist/internal/sanitize-mcp-tool-name.js +30 -0
  149. package/dist/internal/session-engine.d.ts.map +1 -1
  150. package/dist/internal/session-engine.js +4 -6
  151. package/dist/internal/shallow-clone.d.ts +94 -39
  152. package/dist/internal/shallow-clone.d.ts.map +1 -1
  153. package/dist/internal/shallow-clone.js +188 -68
  154. package/dist/internal/terminal-style.d.ts +18 -0
  155. package/dist/internal/terminal-style.d.ts.map +1 -1
  156. package/dist/internal/terminal-style.js +46 -1
  157. package/dist/internal/workspace.d.ts +2 -0
  158. package/dist/internal/workspace.d.ts.map +1 -1
  159. package/dist/internal/workspace.js +5 -0
  160. package/dist/playground/assets/index-77uhu5Kr.css +1 -0
  161. package/dist/playground/assets/{index-yxs1heea.js → index-D4buox4m.js} +42 -42
  162. package/dist/playground/index.html +2 -2
  163. package/dist/tools.d.ts +7 -0
  164. package/dist/tools.d.ts.map +1 -1
  165. package/dist/types.d.ts +28 -3
  166. package/dist/types.d.ts.map +1 -1
  167. package/docs/concepts.md +4 -4
  168. package/docs/guides/mcp-oauth.md +3 -1
  169. package/docs/reference/agent-config.md +11 -12
  170. package/docs/reference/connections.md +44 -26
  171. package/docs/reference/sessions.md +2 -2
  172. package/docs/reference/tools.md +1 -1
  173. package/docs/troubleshooting.md +3 -2
  174. package/package.json +4 -1
  175. package/skills/create-agent/SKILL.md +12 -9
  176. package/skills/debug/SKILL.md +2 -1
  177. package/skills/framework-map/SKILL.md +6 -6
  178. package/skills/mcp-auth/SKILL.md +8 -6
  179. package/src/bin/agent-serve.ts +3 -2
  180. package/src/channels/github/api.ts +6 -1
  181. package/src/channels/github/binding.ts +21 -0
  182. package/src/channels/github/checks.ts +179 -0
  183. package/src/channels/github/cursor-account.ts +9 -6
  184. package/src/channels/github/index.ts +1 -0
  185. package/src/channels/github/types.ts +8 -0
  186. package/src/channels/slack/manifest.ts +8 -10
  187. package/src/channels/slack/types.ts +2 -2
  188. package/src/connections.ts +17 -5
  189. package/src/internal/advertise-tools.ts +72 -23
  190. package/src/internal/cli-deploy.ts +4 -15
  191. package/src/internal/convert-automation/convert-workflow.ts +2 -11
  192. package/src/internal/cursor/account-mcp.ts +208 -73
  193. package/src/internal/cursor/backend-client.ts +45 -11
  194. package/src/internal/cursor-account-mcp-auth.ts +83 -0
  195. package/src/internal/deploy-client.ts +0 -10
  196. package/src/internal/deploy-manifest.ts +33 -39
  197. package/src/internal/deployment-scm-event-stream.ts +17 -1
  198. package/src/internal/discovery.ts +47 -3
  199. package/src/internal/init-project.ts +7 -133
  200. package/src/internal/init-scaffold.ts +176 -0
  201. package/src/internal/inline-stdio-mcp.ts +13 -0
  202. package/src/internal/json-schema.ts +24 -3
  203. package/src/internal/mcp-endpoint.ts +6 -0
  204. package/src/internal/mcp-host.ts +4 -0
  205. package/src/internal/mcp-oauth.ts +55 -1
  206. package/src/internal/package-inline-stdio.ts +5 -1
  207. package/src/internal/review-comments.ts +245 -0
  208. package/src/internal/sanitize-mcp-tool-name.ts +33 -0
  209. package/src/internal/session-engine.ts +7 -0
  210. package/src/internal/shallow-clone.ts +293 -105
  211. package/src/internal/terminal-style.ts +67 -1
  212. package/src/internal/workspace.ts +6 -0
  213. package/src/tools.ts +7 -0
  214. package/src/types.ts +32 -4
  215. package/templates/agentic-owners/agent/agent.ts +3 -0
  216. package/templates/demo/agent/agent.ts +3 -0
  217. package/templates/security-reviewer/agent/agent.ts +3 -0
  218. package/templates/triage/agent/agent.ts +3 -0
  219. package/dist/docs/assets/chunks/@localSearchIndexroot.DvUR3lv9.js +0 -1
  220. package/dist/docs/assets/troubleshooting.md.CuVztCKs.js +0 -1
  221. package/dist/playground/assets/index-CoL7xCJl.css +0 -1
  222. /package/dist/docs/assets/{concepts.md.CqOsxbMU.lean.js → concepts.md.BXAm6G-C.lean.js} +0 -0
  223. /package/dist/docs/assets/{guides_mcp-oauth.md.C7G7IykG.lean.js → guides_mcp-oauth.md.CzEB6RaG.lean.js} +0 -0
  224. /package/dist/docs/assets/{reference_sessions.md.DBVFi2Sx.lean.js → reference_sessions.md.B0DdlM-K.lean.js} +0 -0
  225. /package/dist/docs/assets/{reference_tools.md.Wmvb7Lob.lean.js → reference_tools.md.DTg_kEsx.lean.js} +0 -0
  226. /package/dist/docs/assets/{troubleshooting.md.CuVztCKs.lean.js → troubleshooting.md.DQ-hYuZT.lean.js} +0 -0
@@ -8,6 +8,100 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { spawn } from "node:child_process";
11
+ /** Parse a PR URL into the SCM target to read comments from. */
12
+ export function resolveScmReviewTarget(prUrl) {
13
+ const parsed = parseGithubPrUrl(prUrl);
14
+ return parsed.kind === "valid"
15
+ ? {
16
+ provider: "github",
17
+ repo: parsed.value.repo,
18
+ prNumber: parsed.value.prNumber,
19
+ }
20
+ : undefined;
21
+ }
22
+ /**
23
+ * Reader for a resolved target, mirroring Bugbot's `createPrGitProvider`
24
+ * dispatch. Returns undefined when the host cannot serve that provider (no
25
+ * GitHub client bound), so callers degrade instead of throwing.
26
+ */
27
+ export function createReviewCommentReader(args) {
28
+ switch (args.target.provider) {
29
+ case "github":
30
+ return args.github === undefined
31
+ ? undefined
32
+ : createHostGithubReviewCommentReader(args.github);
33
+ }
34
+ }
35
+ /** Cap on pages pulled per PR; GitHub serves 100 comments per page. */
36
+ const REVIEW_COMMENTS_MAX_PAGES = 5;
37
+ const REVIEW_COMMENTS_PAGE_SIZE = 100;
38
+ /**
39
+ * Reads inline review comments through the host GitHub client (Cursor
40
+ * account lease, App installation token, or PAT).
41
+ */
42
+ export function createHostGithubReviewCommentReader(github) {
43
+ return {
44
+ getReviewComments(_a) {
45
+ return __awaiter(this, arguments, void 0, function* ({ target, commentIds, signal }) {
46
+ const [owner, repo] = target.repo.split("/", 2);
47
+ if (owner === undefined || repo === undefined || repo === "") {
48
+ return [];
49
+ }
50
+ const octokit = yield github.getOctokit();
51
+ const comments = [];
52
+ for (const commentId of commentIds) {
53
+ signal === null || signal === void 0 ? void 0 : signal.throwIfAborted();
54
+ try {
55
+ const response = yield octokit.rest.pulls.getReviewComment({
56
+ owner,
57
+ repo,
58
+ comment_id: commentId,
59
+ });
60
+ const normalized = normalizeGithubReviewComment(response.data);
61
+ if (normalized !== undefined) {
62
+ comments.push(normalized);
63
+ }
64
+ }
65
+ catch (_b) {
66
+ // Deleted or otherwise unreadable: that finding simply has no
67
+ // prior text to judge, which is the same as it not being there.
68
+ }
69
+ }
70
+ return comments;
71
+ });
72
+ },
73
+ };
74
+ }
75
+ /**
76
+ * GitHub review comment → {@link ExistingReviewComment}.
77
+ *
78
+ * Prefers the `original_*` fields — the path/lines/commit as of the review
79
+ * the comment belongs to. `line` drifts as the PR gains commits, so a
80
+ * caller correlating a comment with the review that produced it needs the
81
+ * original position, the same fields Bugbot carries on
82
+ * `PullRequestCommentOutput`.
83
+ */
84
+ export function normalizeGithubReviewComment(comment) {
85
+ var _a, _b, _c;
86
+ // Take both lines from the same position set. Mixing them (original end
87
+ // line with the drifted current start line) would describe a range that
88
+ // never existed in either revision.
89
+ const original = (_a = comment.original_line) !== null && _a !== void 0 ? _a : undefined;
90
+ const endLine = (_b = original !== null && original !== void 0 ? original : comment.line) !== null && _b !== void 0 ? _b : undefined;
91
+ if (endLine === undefined || endLine === null) {
92
+ return undefined;
93
+ }
94
+ const startLine = (_c = (original === undefined
95
+ ? comment.start_line
96
+ : comment.original_start_line)) !== null && _c !== void 0 ? _c : endLine;
97
+ return {
98
+ id: comment.id,
99
+ file: comment.path,
100
+ startLine,
101
+ endLine,
102
+ body: comment.body,
103
+ };
104
+ }
11
105
  /**
12
106
  * Prepares the provider-neutral review payload used by local `gh` posting.
13
107
  */
@@ -97,6 +191,15 @@ function postReviewViaHostGithub(github, args) {
97
191
  detail: htmlUrl
98
192
  ? `posted via host GitHub: ${htmlUrl}`
99
193
  : `posted via host GitHub with ${inlineCommentCount} inline comment(s)`,
194
+ postedComments: yield readPostedComments({
195
+ octokit,
196
+ owner,
197
+ repo,
198
+ prNumber: request.prNumber,
199
+ reviewId: response.data.id,
200
+ expected: inlineCommentCount,
201
+ signal: args.signal,
202
+ }),
100
203
  };
101
204
  }
102
205
  catch (error) {
@@ -107,6 +210,54 @@ function postReviewViaHostGithub(github, args) {
107
210
  }
108
211
  });
109
212
  }
213
+ /**
214
+ * Ids of the inline comments a just-created review owns.
215
+ *
216
+ * `pulls.createReview` returns the review, not its comments, so they come
217
+ * from the review-scoped listing. Scoping to the review matters: the
218
+ * PR-wide list is ordered oldest-first and runs to thousands on a busy PR,
219
+ * so the comments we just created are the ones a page cap would drop.
220
+ * Best-effort: any failure yields an empty list, which costs the next run
221
+ * its prior findings rather than risking a wrong id. Never throws — the
222
+ * review is already posted by this point.
223
+ */
224
+ function readPostedComments(args) {
225
+ return __awaiter(this, void 0, void 0, function* () {
226
+ var _a;
227
+ var _b;
228
+ if (args.expected === 0) {
229
+ return [];
230
+ }
231
+ try {
232
+ const posted = [];
233
+ for (let page = 1; page <= REVIEW_COMMENTS_MAX_PAGES; page++) {
234
+ (_a = args.signal) === null || _a === void 0 ? void 0 : _a.throwIfAborted();
235
+ const response = yield args.octokit.rest.pulls.listCommentsForReview({
236
+ owner: args.owner,
237
+ repo: args.repo,
238
+ pull_number: args.prNumber,
239
+ review_id: args.reviewId,
240
+ per_page: REVIEW_COMMENTS_PAGE_SIZE,
241
+ page,
242
+ });
243
+ for (const comment of response.data) {
244
+ const line = (_b = comment.original_line) !== null && _b !== void 0 ? _b : comment.line;
245
+ if (line === null || line === undefined) {
246
+ continue;
247
+ }
248
+ posted.push({ id: comment.id, file: comment.path, line });
249
+ }
250
+ if (response.data.length < REVIEW_COMMENTS_PAGE_SIZE) {
251
+ break;
252
+ }
253
+ }
254
+ return posted;
255
+ }
256
+ catch (_c) {
257
+ return [];
258
+ }
259
+ });
260
+ }
110
261
  function postReviewViaLocalGh(args) {
111
262
  return __awaiter(this, void 0, void 0, function* () {
112
263
  var _a, _b;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * MCP tool-name sanitization shared by the Cursor-account bridge
3
+ * (`account-mcp.ts`) and advertised connections (`advertise-tools.ts`).
4
+ *
5
+ * Connector display names — and the aggregate `/v1/agent/mcp` names minted
6
+ * from them (`<serverIdentifier>-<tool>`) — can contain spaces, dots, and
7
+ * other characters that are illegal as the tool name a model sees.
8
+ *
9
+ * Character class matches `packages/agent` `normalizeMcpToolName`
10
+ * (`[^a-zA-Z0-9_-]` → `_`). Length cap and the empty fallback match the
11
+ * account bridge (MCP clients commonly enforce `^[a-zA-Z0-9_-]{1,128}$`).
12
+ * Callers that talk to the backend keep the original advertised name.
13
+ */
14
+ /** MCP clients commonly enforce `^[a-zA-Z0-9_-]{1,128}$` for tool names. */
15
+ export declare const MAX_MCP_TOOL_NAME_LENGTH = 128;
16
+ /** Connector display names can contain anything (spaces, dots, emoji). */
17
+ export declare function sanitizeMcpToolName(name: string): string;
18
+ /** `base` for the first claimant, `base_2` / `base_3` … for colliders. */
19
+ export declare function suffixMcpToolName(base: string, index: number): string;
20
+ //# sourceMappingURL=sanitize-mcp-tool-name.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sanitize-mcp-tool-name.d.ts","sourceRoot":"","sources":["../../src/internal/sanitize-mcp-tool-name.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,4EAA4E;AAC5E,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,0EAA0E;AAC1E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKxD;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAMrE"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * MCP tool-name sanitization shared by the Cursor-account bridge
3
+ * (`account-mcp.ts`) and advertised connections (`advertise-tools.ts`).
4
+ *
5
+ * Connector display names — and the aggregate `/v1/agent/mcp` names minted
6
+ * from them (`<serverIdentifier>-<tool>`) — can contain spaces, dots, and
7
+ * other characters that are illegal as the tool name a model sees.
8
+ *
9
+ * Character class matches `packages/agent` `normalizeMcpToolName`
10
+ * (`[^a-zA-Z0-9_-]` → `_`). Length cap and the empty fallback match the
11
+ * account bridge (MCP clients commonly enforce `^[a-zA-Z0-9_-]{1,128}$`).
12
+ * Callers that talk to the backend keep the original advertised name.
13
+ */
14
+ /** MCP clients commonly enforce `^[a-zA-Z0-9_-]{1,128}$` for tool names. */
15
+ export const MAX_MCP_TOOL_NAME_LENGTH = 128;
16
+ /** Connector display names can contain anything (spaces, dots, emoji). */
17
+ export function sanitizeMcpToolName(name) {
18
+ const cleaned = name
19
+ .replace(/[^a-zA-Z0-9_-]/g, "_")
20
+ .slice(0, MAX_MCP_TOOL_NAME_LENGTH);
21
+ return cleaned === "" ? "tool" : cleaned;
22
+ }
23
+ /** `base` for the first claimant, `base_2` / `base_3` … for colliders. */
24
+ export function suffixMcpToolName(base, index) {
25
+ if (index === 0) {
26
+ return base;
27
+ }
28
+ const suffix = `_${index + 1}`;
29
+ return `${base.slice(0, MAX_MCP_TOOL_NAME_LENGTH - suffix.length)}${suffix}`;
30
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"session-engine.d.ts","sourceRoot":"","sources":["../../src/internal/session-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-engine.d.ts","sourceRoot":"","sources":["../../src/internal/session-engine.ts"],"names":[],"mappings":"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"}
@@ -1672,10 +1672,9 @@ export class SessionEngine {
1672
1672
  return __awaiter(this, void 0, void 0, function* () {
1673
1673
  const tools = {};
1674
1674
  const register = (tool) => {
1675
- tools[tool.name] = {
1676
- description: tool.description,
1677
- inputSchema: tool.inputSchema,
1678
- execute: (args, context) => __awaiter(this, void 0, void 0, function* () {
1675
+ tools[tool.name] = Object.assign(Object.assign({ description: tool.description, inputSchema: tool.inputSchema }, (tool.outputSchema === undefined
1676
+ ? {}
1677
+ : { outputSchema: tool.outputSchema })), { execute: (args, context) => __awaiter(this, void 0, void 0, function* () {
1679
1678
  return this.executeServerTool({
1680
1679
  tool,
1681
1680
  input: args,
@@ -1684,8 +1683,7 @@ export class SessionEngine {
1684
1683
  turnId,
1685
1684
  emit,
1686
1685
  });
1687
- }),
1688
- };
1686
+ }) });
1689
1687
  };
1690
1688
  for (const tool of agent.tools) {
1691
1689
  if (tool.execution !== "server") {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Shallow GitHub PR checkout for SDK agents that review a PR's code.
2
+ * Shallow SCM PR checkout for SDK agents that review a PR's code.
3
3
  *
4
4
  * Mirrors Bugbot's `shallow_fetch` prefetch strategy
5
5
  * (`backend/crates/napi_bugbot/src/temp_clone.rs`): instead of cloning the
@@ -10,11 +10,19 @@
10
10
  * clone because its tools stream objects on demand; SDK agents read a real
11
11
  * working tree, so we materialize the head checkout instead.
12
12
  *
13
- * Auth also mirrors Bugbot's provider model (`IGitProvider.getAccessToken`
14
- * token handed straight to git): the clone takes one explicit repo-scoped
15
- * bearer token. The default source is the serve host's Cursor-account
16
- * GitHub lease the same backend `GithubAccessService` mint Bugbot uses —
17
- * which `CursorGithubCredentialProvider` installs as `GH_TOKEN` for child
13
+ * SCM support follows Bugbot's provider seam (`IGitProvider.getCloneTarget`
14
+ * / the Rust `clone_url` dispatch): everything provider-specific remote
15
+ * URL shape, git credential username convention, PR head ref layout — lives
16
+ * in one {@link ScmCloneTarget} produced by {@link resolveScmCloneTarget}.
17
+ * Supporting another SCM (GitLab, Bitbucket, …) means adding a resolver
18
+ * case and a default credential source; the fetch/verify/checkout machinery
19
+ * is provider-agnostic.
20
+ *
21
+ * Auth also mirrors Bugbot (`IGitProvider.getAccessToken` → token handed
22
+ * straight to git): the clone takes one explicit repo-scoped bearer token.
23
+ * For GitHub the default source is the serve host's Cursor-account lease —
24
+ * the same backend `GithubAccessService` mint Bugbot uses — which
25
+ * `CursorGithubCredentialProvider` installs as `GH_TOKEN` for child
18
26
  * processes. Where Bugbot embeds the token in the clone URL, this module
19
27
  * serves it through an inline credential helper that reads a child-process
20
28
  * env var, so the token never lands in argv or in `.git/config` inside a
@@ -24,34 +32,90 @@
24
32
  * the security reviewer's `prepare_review` stage). Consumed via relative
25
33
  * source imports, following `tenant-mcp/run-mcp-registry.ts`.
26
34
  */
27
- export type ShallowPrCheckout = {
28
- /** Directory containing the PR head working tree (detached at headSha). */
29
- checkoutDir: string;
30
- headSha: string;
31
- /** True when the merge-base commit was also fetched (enables local diffs). */
32
- baseFetched: boolean;
33
- /** How the head commit was obtained. */
34
- headSource: "sha_fetch" | "pr_ref_fetch";
35
+ /** SCMs with shallow-clone support. */
36
+ export type ScmProvider = "github";
37
+ /**
38
+ * Everything git needs to clone one SCM's PR head. Provider-specific
39
+ * conventions live here and nowhere else.
40
+ */
41
+ export type ScmCloneTarget = {
42
+ provider: ScmProvider;
43
+ /** `owner/name` — used for logs and error messages. */
44
+ repo: string;
45
+ prNumber: number;
46
+ /** HTTPS remote to fetch from. */
47
+ remoteUrl: string;
48
+ /** Username paired with the bearer token for git-over-HTTPS basic auth. */
49
+ credentialUsername: string;
50
+ /**
51
+ * Server-advertised PR head ref (e.g. GitHub `refs/pull/<n>/head`,
52
+ * GitLab `refs/merge-requests/<n>/head`) — the fallback when the pinned
53
+ * SHA cannot be fetched directly.
54
+ */
55
+ prHeadRef: string;
35
56
  };
36
- /** Repo-scoped bearer for git-over-HTTPS (installation token or PAT). */
57
+ /**
58
+ * Resolve a PR URL to its clone target, or `undefined` when the SCM has no
59
+ * shallow-clone support (callers then review on their fallback checkout —
60
+ * e.g. Origin PRs, where the host checkout already is the reviewed repo).
61
+ */
62
+ export declare function resolveScmCloneTarget(prUrl: string): ScmCloneTarget | undefined;
63
+ /** Repo-scoped bearer for git-over-HTTPS. */
37
64
  export type ShallowCloneAuth = {
38
65
  token: string;
39
66
  };
40
67
  /**
41
- * Default clone credential: the serve host's Cursor-account GitHub lease.
68
+ * Default GitHub clone credential: the serve host's Cursor-account lease.
42
69
  * `CursorGithubCredentialProvider` mints it repo-scoped from the backend and
43
70
  * keeps `GH_TOKEN` refreshed for child processes; `GITHUB_TOKEN` covers
44
71
  * local/CI runs that export the conventional variable instead.
45
72
  */
46
73
  export declare function serveHostGithubAuth(env?: NodeJS.ProcessEnv): ShallowCloneAuth | undefined;
74
+ export type CommitRangeDiff = {
75
+ status: "ok";
76
+ diff: string;
77
+ } | {
78
+ status: "unavailable";
79
+ reason: string;
80
+ };
47
81
  /**
48
- * Create a fresh shallow checkout of a GitHub PR head at `checkoutDir`.
82
+ * Diff two commits inside an existing shallow PR checkout, fetching either
83
+ * end on demand when the shallow history does not already contain it.
84
+ *
85
+ * Lives here because it needs the same authenticated git the clone uses —
86
+ * a `--depth=1` checkout usually lacks the older commit, so reading a range
87
+ * means another credentialed fetch. Never throws: every failure becomes an
88
+ * `unavailable` reason the caller can act on or surface.
89
+ */
90
+ export declare function tryDiffCommitRange(args: {
91
+ /** Existing checkout to run git in (see {@link createShallowPrCheckout}). */
92
+ checkoutDir: string;
93
+ /** The checkout's clone target; supplies the remote's ref + auth conventions. */
94
+ target: ScmCloneTarget;
95
+ from: string;
96
+ to: string;
97
+ /** Restrict the diff to one path when set. */
98
+ file?: string | undefined;
99
+ /** Fetch credential; defaults to the target provider's credential source. */
100
+ auth?: ShallowCloneAuth | undefined;
101
+ }): Promise<CommitRangeDiff>;
102
+ export type ShallowPrCheckout = {
103
+ /** Directory containing the PR head working tree (detached at headSha). */
104
+ checkoutDir: string;
105
+ headSha: string;
106
+ /** True when the merge-base commit was also fetched (enables local diffs). */
107
+ baseFetched: boolean;
108
+ /** How the head commit was obtained. */
109
+ headSource: "sha_fetch" | "pr_ref_fetch";
110
+ };
111
+ /**
112
+ * Create a fresh shallow checkout of a PR head at `checkoutDir`.
49
113
  *
50
114
  * Fetch order (both single depth-1 round-trips):
51
115
  * 1. Fetch `headSha` (and `baseSha` when known) directly — GitHub advertises
52
116
  * `allow-reachable-sha1-in-want`, and this pins the exact reviewed commit
53
117
  * the way Bugbot's `shallow_fetch` does.
54
- * 2. Fall back to `refs/pull/<n>/head`, verifying it still resolves to
118
+ * 2. Fall back to the target's PR head ref, verifying it still resolves to
55
119
  * `headSha` so the working tree cannot silently drift from the pinned
56
120
  * patch in the review bundle.
57
121
  *
@@ -59,35 +123,26 @@ export declare function serveHostGithubAuth(env?: NodeJS.ProcessEnv): ShallowClo
59
123
  * patch text in their prompt); a missing head checkout throws.
60
124
  */
61
125
  export declare function createShallowPrCheckout(args: {
62
- /** `owner/name`. */
63
- repo: string;
64
- prNumber?: number | undefined;
126
+ target: ScmCloneTarget;
65
127
  headSha: string;
66
128
  /** Merge-base SHA; fetched too so `git diff baseSha headSha` works locally. */
67
129
  baseSha?: string | undefined;
68
130
  checkoutDir: string;
69
- /** Clone credential; required for GitHub remotes, unused for file fixtures. */
131
+ /** Clone credential; required for HTTPS remotes, unused for file fixtures. */
70
132
  auth?: ShallowCloneAuth | undefined;
71
- /** Test seam: clone from this URL instead of `https://github.com/<repo>.git`. */
72
- remoteUrl?: string | undefined;
73
133
  }): Promise<ShallowPrCheckout>;
74
- /** True for `https://github.com/<owner>/<repo>/pull/<n>` URLs. */
75
- export declare function isGithubPrUrl(prUrl: string): boolean;
76
134
  export type TryShallowPrCheckoutOptions = {
77
- /** PR URL; only GitHub PR URLs are cloned (others skip). */
135
+ /** PR URL; resolved to a clone target (unsupported SCMs skip). */
78
136
  prUrl: string;
79
- /** `owner/name`. */
80
- repo: string;
81
- prNumber?: number | undefined;
82
137
  /** Pinned head SHA; skipped (undefined result) when unknown. */
83
138
  headSha?: string | undefined;
84
139
  /** Merge-base SHA; fetched too so `git diff baseSha headSha` works locally. */
85
140
  baseSha?: string | undefined;
86
141
  checkoutDir: string;
87
- /** Clone credential; defaults to {@link serveHostGithubAuth}. */
142
+ /** Clone credential; defaults to the target provider's credential source. */
88
143
  auth?: ShallowCloneAuth | undefined;
89
- /** Test seam: clone from this URL instead of `https://github.com/<repo>.git`. */
90
- remoteUrl?: string | undefined;
144
+ /** Test seam: clone this target instead of resolving `prUrl`. */
145
+ target?: ScmCloneTarget | undefined;
91
146
  };
92
147
  export type TryShallowPrCheckoutResult = {
93
148
  /** Set when the shallow checkout succeeded. */
@@ -104,12 +159,12 @@ export type TryShallowPrCheckoutResult = {
104
159
  * reviewed repo instead of the host's own checkout.
105
160
  *
106
161
  * Returns no checkout — leaving the caller on its fallback working
107
- * directory — when the PR is not on GitHub (e.g. Origin PRs, where the host
108
- * checkout is the reviewed repo), when no head SHA is pinned, when no clone
109
- * credential is available, or when the clone fails; `fallbackReason` says
110
- * which. Failures are logged, never thrown: agents still have the pinned
111
- * patch in their prompts, so a missing checkout degrades quality rather
112
- * than the run.
162
+ * directory — when the PR's SCM has no clone support (e.g. Origin PRs,
163
+ * where the host checkout is the reviewed repo), when no head SHA is
164
+ * pinned, when no clone credential is available, or when the clone fails;
165
+ * `fallbackReason` says which. Failures are logged, never thrown: agents
166
+ * still have the pinned patch in their prompts, so a missing checkout
167
+ * degrades quality rather than the run.
113
168
  */
114
169
  export declare function tryCreateShallowPrCheckout(options: TryShallowPrCheckoutOptions): Promise<TryShallowPrCheckoutResult>;
115
170
  //# sourceMappingURL=shallow-clone.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shallow-clone.d.ts","sourceRoot":"","sources":["../../src/internal/shallow-clone.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,8EAA8E;IAC9E,WAAW,EAAE,OAAO,CAAC;IACrB,wCAAwC;IACxC,UAAU,EAAE,WAAW,GAAG,cAAc,CAAC;CAC1C,CAAC;AAEF,yEAAyE;AACzE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,gBAAgB,GAAG,SAAS,CAG9B;AA0GD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpC,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAgH7B;AAED,kEAAkE;AAClE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAapD;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,IAAI,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACpC,iFAAiF;IACjF,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,0BAA0B,CAAC,CA2CrC"}
1
+ {"version":3,"file":"shallow-clone.d.ts","sourceRoot":"","sources":["../../src/internal/shallow-clone.ts"],"names":[],"mappings":"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"}