@rudderhq/agent-runtime-utils 0.7.2 → 0.7.4-canary.0

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 (40) hide show
  1. package/dist/index.d.ts +2 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +2 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/rudder-mcp-contract.d.ts +10 -2
  6. package/dist/rudder-mcp-contract.d.ts.map +1 -1
  7. package/dist/rudder-mcp-contract.js +28 -0
  8. package/dist/rudder-mcp-contract.js.map +1 -1
  9. package/dist/rudder-mcp-preflight.js +1 -1
  10. package/dist/rudder-mcp-preflight.js.map +1 -1
  11. package/dist/rudder-mcp-preflight.test.js +15 -0
  12. package/dist/rudder-mcp-preflight.test.js.map +1 -1
  13. package/dist/rudder-mcp-protocol.d.ts +19 -0
  14. package/dist/rudder-mcp-protocol.d.ts.map +1 -0
  15. package/dist/rudder-mcp-protocol.js +76 -0
  16. package/dist/rudder-mcp-protocol.js.map +1 -0
  17. package/dist/rudder-mcp-server.d.ts +1 -0
  18. package/dist/rudder-mcp-server.d.ts.map +1 -1
  19. package/dist/rudder-mcp-server.js +17 -1
  20. package/dist/rudder-mcp-server.js.map +1 -1
  21. package/dist/rudder-mcp-tool-descriptors.generated.d.ts +2 -2
  22. package/dist/rudder-mcp-tool-descriptors.generated.js +2 -2
  23. package/dist/rudder-mcp-tool-descriptors.generated.js.map +1 -1
  24. package/dist/rudder-mcp.d.ts +3 -1
  25. package/dist/rudder-mcp.d.ts.map +1 -1
  26. package/dist/rudder-mcp.js +9 -0
  27. package/dist/rudder-mcp.js.map +1 -1
  28. package/dist/server-utils.cli.d.ts +2 -0
  29. package/dist/server-utils.cli.d.ts.map +1 -1
  30. package/dist/server-utils.cli.js +6 -0
  31. package/dist/server-utils.cli.js.map +1 -1
  32. package/dist/server-utils.prompts.d.ts +7 -1
  33. package/dist/server-utils.prompts.d.ts.map +1 -1
  34. package/dist/server-utils.prompts.js +43 -2
  35. package/dist/server-utils.prompts.js.map +1 -1
  36. package/dist/server-utils.prompts.test.js +67 -1
  37. package/dist/server-utils.prompts.test.js.map +1 -1
  38. package/dist/server-utils.test.js +25 -1
  39. package/dist/server-utils.test.js.map +1 -1
  40. package/package.json +1 -1
@@ -2,6 +2,26 @@ export const DEFAULT_AGENT_PROMPT_TEMPLATE = `You are agent {{agent.id}} ({{agen
2
2
 
3
3
  {{context.rudderWorkspace.orgResourcesPrompt}}
4
4
  `;
5
+ export const AGENT_ISSUE_CREATION_PROMPT_TEMPLATE = `You are agent {{agent.id}} ({{agent.name}}). A Rudder user explicitly asked you to create one issue in the background.
6
+
7
+ {{context.rudderWorkspace.orgResourcesPrompt}}
8
+
9
+ ## Agent Issue Creation Request
10
+
11
+ - Request ID: {{context.agentIssueCreationRequest.id}}
12
+ - Requested by user: {{context.agentIssueCreationRequest.requestedByUserId}}
13
+ - Project context: {{context.agentIssueCreationRequest.projectId}}
14
+ - Goal context: {{context.agentIssueCreationRequest.goalId}}
15
+ - Parent issue context: {{context.agentIssueCreationRequest.parentId}}
16
+
17
+ **User instruction:**
18
+ {{context.agentIssueCreationRequest.instruction}}
19
+
20
+ ## Required Behavior
21
+
22
+ Interpret the user's instruction and create exactly one real Rudder Issue. Generate a clear, specific title and a complete description that preserves the user's intent and relevant context. Use the stable Rudder Issue creation tool when it is available; otherwise use the existing \`rudder issue create\` CLI compatibility path.
23
+
24
+ Carry the project, goal, and parent issue context into the created Issue when it is valid and relevant. The request record is already durable; do not create an Issue for the request itself, do not create duplicates, and do not modify unrelated Issues or files. Do not invent an assignee or notification target. After the single Issue is created, report its identifier and stop.`;
5
25
  export const COMMENT_TRIGGERED_ISSUE_WAKE_REASONS = new Set([
6
26
  "issue_commented",
7
27
  "issue_comment_mentioned",
@@ -260,6 +280,9 @@ ${ISSUE_ASSIGNEE_EXECUTION_RAIL}`;
260
280
  * "This is a recovery run, not a fresh task ..."
261
281
  * Includes original run id, failure metadata, and a continue-preferred instruction to
262
282
  * inspect prior progress/side effects before resuming.
283
+ * - Agent Issue creation:
284
+ * "A Rudder user explicitly asked you to create one issue in the background."
285
+ * Includes the authoritative request id, instruction, and validated context.
263
286
  * - passive issue follow-up:
264
287
  * "This is a passive issue follow-up, not a fresh assignment ..."
265
288
  * Includes close-out lineage and tells the agent to comment, finish, block, or hand off.
@@ -272,7 +295,9 @@ ${ISSUE_ASSIGNEE_EXECUTION_RAIL}`;
272
295
  * Comment: @agent please check timeout handling in retry path."
273
296
  *
274
297
  * Reasoning:
275
- * - Keep backward compatibility: custom configured templates always win.
298
+ * - Keep backward compatibility: custom configured templates win for ordinary wakes.
299
+ * The platform-owned Agent Issue creation rail intentionally takes precedence so
300
+ * a request cannot be changed into an unrelated runtime task by a custom prompt.
276
301
  * - Keep first-turn latency low: include the minimum task context directly in prompt text.
277
302
  * - Keep behavior deterministic across runtimes: template selection is centralized here.
278
303
  *
@@ -283,6 +308,20 @@ export function selectPromptTemplate(configuredTemplate, context) {
283
308
  // Select based on wake source/reason
284
309
  const wakeSource = String(context.wakeSource ?? "");
285
310
  const wakeReason = String(context.wakeReason ?? "");
311
+ const agentIssueCreationRequest = context.agentIssueCreationRequest;
312
+ const agentIssueCreationRequestRecord = typeof agentIssueCreationRequest === "object" &&
313
+ agentIssueCreationRequest !== null &&
314
+ !Array.isArray(agentIssueCreationRequest)
315
+ ? agentIssueCreationRequest
316
+ : null;
317
+ const rawAgentIssueCreationRequestId = agentIssueCreationRequestRecord?.id;
318
+ const agentIssueCreationRequestId = typeof rawAgentIssueCreationRequestId === "string"
319
+ ? rawAgentIssueCreationRequestId.trim()
320
+ : "";
321
+ const hasAgentIssueCreationRequest = Boolean(agentIssueCreationRequestId &&
322
+ context.targetType === "agent_issue_creation" &&
323
+ context.targetId === agentIssueCreationRequestId &&
324
+ context.agentIssueCreationRequestId === agentIssueCreationRequestId);
286
325
  const relationship = String(context.relationship ?? "");
287
326
  const isCommentMention = wakeSource === "comment.mention" || wakeReason === "issue_comment_mentioned";
288
327
  const explicitRelationshipRail = isCommentMention && relationship === "assignee"
@@ -307,6 +346,8 @@ export function selectPromptTemplate(configuredTemplate, context) {
307
346
  (wakeSource === "comment.mention" ||
308
347
  wakeReason === "issue_comment_mentioned" ||
309
348
  isCommentTriggeredIssueWakeReason(wakeReason)));
349
+ if (hasAgentIssueCreationRequest)
350
+ return AGENT_ISSUE_CREATION_PROMPT_TEMPLATE;
310
351
  // Custom prompt bodies still win, but platform-owned issue execution rails do not.
311
352
  if (configuredTemplate?.trim()) {
312
353
  if (explicitRelationshipRail && !configuredTemplate.includes(explicitRelationshipRail)) {
@@ -430,7 +471,7 @@ export const RUDDER_AGENT_HEARTBEAT_INSTRUCTION = [
430
471
  "4. Inspect your Rudder inbox. Prioritize reviewer rows in `in_review` or `blocked`, then assignee `in_progress`, then assignee `todo`. Do not look for unassigned work.",
431
472
  "5. For mention wakes, read the wake comment before acting. Mentions request attention; they do not transfer ownership unless the comment explicitly says so. If the issue is not assigned to you, including user-owned or unassigned issues, and the comment does not explicitly ask you to implement, modify files, close the issue, or take ownership, respond to the comment itself instead of executing the whole issue.",
432
473
  "6. Load compact issue context, do one bounded useful chunk, and preserve evidence.",
433
- "7. Before exiting active work, leave exactly one durable signal: progress, done, blocked, explicit handoff, or structured review decision.",
474
+ "7. Complete the real task. When an action fails, investigate and try a bounded materially different recovery path before requesting human help. Before exiting active work, leave exactly one durable signal: progress, done, a blocker claim with the exact human input/action required, explicit handoff, or structured review decision. Rudder audits repeated blocker claims; the first claim does not directly establish a blocked Issue.",
434
475
  "8. Treat passive follow-up as issue follow-up, not a fresh assignment.",
435
476
  "9. Treat review close-out follow-up as review follow-up; free-form accept/reject text is not a durable decision.",
436
477
  "",
@@ -1 +1 @@
1
- {"version":3,"file":"server-utils.prompts.js","sourceRoot":"","sources":["../src/server-utils.prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-utils.prompts.js","sourceRoot":"","sources":["../src/server-utils.prompts.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,72 @@
1
1
  import { describe, expect, it } from "vitest";
2
- import { COMMENT_MENTION_PROMPT_TEMPLATE, DEFAULT_AGENT_PROMPT_TEMPLATE, ISSUE_ASSIGN_PROMPT_TEMPLATE, ISSUE_ASSIGNEE_EXECUTION_RAIL, ISSUE_CHANGES_REQUESTED_PROMPT_TEMPLATE, ISSUE_COMMENTED_PROMPT_TEMPLATE, ISSUE_PASSIVE_FOLLOWUP_PROMPT_TEMPLATE, ISSUE_RECOVERY_PROMPT_TEMPLATE, ISSUE_REVIEW_PROMPT_TEMPLATE, ISSUE_REVIEW_RECOVERY_PROMPT_TEMPLATE, RECOVERY_PROMPT_TEMPLATE, renderTemplate, RUDDER_AGENT_HEARTBEAT_INSTRUCTION, RUDDER_AGENT_OPERATING_CONTRACT, selectPromptTemplate, } from "./server-utils.js";
2
+ import { AGENT_ISSUE_CREATION_PROMPT_TEMPLATE, COMMENT_MENTION_PROMPT_TEMPLATE, DEFAULT_AGENT_PROMPT_TEMPLATE, ISSUE_ASSIGN_PROMPT_TEMPLATE, ISSUE_ASSIGNEE_EXECUTION_RAIL, ISSUE_CHANGES_REQUESTED_PROMPT_TEMPLATE, ISSUE_COMMENTED_PROMPT_TEMPLATE, ISSUE_PASSIVE_FOLLOWUP_PROMPT_TEMPLATE, ISSUE_RECOVERY_PROMPT_TEMPLATE, ISSUE_REVIEW_PROMPT_TEMPLATE, ISSUE_REVIEW_RECOVERY_PROMPT_TEMPLATE, RECOVERY_PROMPT_TEMPLATE, renderTemplate, RUDDER_AGENT_HEARTBEAT_INSTRUCTION, RUDDER_AGENT_OPERATING_CONTRACT, selectPromptTemplate, } from "./server-utils.js";
3
3
  describe("server-utils prompt contracts", () => {
4
+ it("selects the dedicated single-issue prompt for Agent Issue creation wakes", () => {
5
+ const context = {
6
+ wakeReason: "agent_issue_creation_requested",
7
+ wakeSource: "on_demand",
8
+ targetType: "agent_issue_creation",
9
+ targetId: "request-1",
10
+ agentIssueCreationRequestId: "request-1",
11
+ agentIssueCreationRequest: {
12
+ id: "request-1",
13
+ requestedByUserId: "user-1",
14
+ projectId: "project-1",
15
+ goalId: null,
16
+ parentId: null,
17
+ instruction: "Track the browser recovery regression.",
18
+ },
19
+ };
20
+ expect(selectPromptTemplate("custom template", context)).toBe(AGENT_ISSUE_CREATION_PROMPT_TEMPLATE);
21
+ const rendered = renderTemplate(selectPromptTemplate(undefined, context), {
22
+ agent: { id: "agent-1", name: "Builder" },
23
+ context: {
24
+ ...context,
25
+ rudderWorkspace: { orgResourcesPrompt: "" },
26
+ },
27
+ });
28
+ expect(rendered).toContain("Request ID: request-1");
29
+ expect(rendered).toContain("Track the browser recovery regression.");
30
+ expect(rendered).toContain("exactly one real Rudder Issue");
31
+ expect(rendered).toContain("rudder issue create");
32
+ });
33
+ it("keeps the dedicated prompt on retries when the authoritative request identity is preserved", () => {
34
+ const request = {
35
+ id: "request-retry",
36
+ requestedByUserId: "user-1",
37
+ projectId: null,
38
+ goalId: null,
39
+ parentId: null,
40
+ instruction: "Create the retry regression issue.",
41
+ };
42
+ expect(selectPromptTemplate("custom template", {
43
+ wakeReason: "process_lost_retry",
44
+ wakeSource: "on_demand",
45
+ targetType: "agent_issue_creation",
46
+ targetId: request.id,
47
+ agentIssueCreationRequestId: request.id,
48
+ agentIssueCreationRequest: request,
49
+ })).toBe(AGENT_ISSUE_CREATION_PROMPT_TEMPLATE);
50
+ });
51
+ it("does not treat unverified request-shaped context as an Agent Issue creation wake", () => {
52
+ const request = {
53
+ id: "request-spoof",
54
+ instruction: "Do not use this as an issue request.",
55
+ };
56
+ expect(selectPromptTemplate("custom template", {
57
+ wakeReason: "agent_issue_creation_requested",
58
+ wakeSource: "on_demand",
59
+ agentIssueCreationRequest: request,
60
+ })).toBe("custom template");
61
+ expect(selectPromptTemplate(undefined, {
62
+ wakeReason: "agent_issue_creation_requested",
63
+ wakeSource: "on_demand",
64
+ targetType: "agent_issue_creation",
65
+ targetId: "different-request",
66
+ agentIssueCreationRequestId: request.id,
67
+ agentIssueCreationRequest: request,
68
+ })).toBe(DEFAULT_AGENT_PROMPT_TEMPLATE);
69
+ });
4
70
  it("renders explicit issue ownership and timestamp metadata for issue-aware wakes", () => {
5
71
  const issue = {
6
72
  id: "issue-575",
@@ -1 +1 @@
1
- {"version":3,"file":"server-utils.prompts.test.js","sourceRoot":"","sources":["../src/server-utils.prompts.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-utils.prompts.test.js","sourceRoot":"","sources":["../src/server-utils.prompts.test.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import fs from "node:fs/promises";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
5
  import { afterEach, describe, expect, it, vi } from "vitest";
6
- import { cleanupLegacyRudderDocsManagedEntry, cleanupRetiredRudderManagedEntries, createOperatorInterruptAbortReason, ensureLocalCliCredentialShimsInPath, ensureRudderCliInPath, filterRudderDesiredSkillsForBrowserCapability, loadAgentInstructionsPrefix, prepareAgentInstructionRuntimeContext, readRudderRuntimeSkillEntries, renderTemplate, resolveDesktopCliSpawnTarget, resolveLocalOperatorHome, resolveRudderCliShimTarget, resolveRudderDesiredSkillNames, RUDDER_AGENT_HEARTBEAT_INSTRUCTION, RUDDER_AGENT_OPERATING_CONTRACT, runChildProcess, selectPromptTemplate, shouldIncludeRuntimeHeartbeatInstructions, syncLocalCliCredentialHomeEntries, } from "./server-utils.js";
6
+ import { cleanupLegacyRudderDocsManagedEntry, cleanupRetiredRudderManagedEntries, createOperatorInterruptAbortReason, createRudderSkillDirectoryLink, ensureLocalCliCredentialShimsInPath, ensureRudderCliInPath, filterRudderDesiredSkillsForBrowserCapability, loadAgentInstructionsPrefix, prepareAgentInstructionRuntimeContext, readRudderRuntimeSkillEntries, renderTemplate, resolveDesktopCliSpawnTarget, resolveLocalOperatorHome, resolveRudderCliShimTarget, resolveRudderDesiredSkillNames, resolveRudderSkillDirectoryLinkType, RUDDER_AGENT_HEARTBEAT_INSTRUCTION, RUDDER_AGENT_OPERATING_CONTRACT, runChildProcess, selectPromptTemplate, shouldIncludeRuntimeHeartbeatInstructions, syncLocalCliCredentialHomeEntries, } from "./server-utils.js";
7
7
  const ORIGINAL_HOME = process.env.HOME;
8
8
  const ORIGINAL_RUDDER_OPERATOR_HOME = process.env.RUDDER_OPERATOR_HOME;
9
9
  const ORIGINAL_ZDOTDIR = process.env.ZDOTDIR;
@@ -42,6 +42,30 @@ function readPathValue(env) {
42
42
  function shimName() {
43
43
  return process.platform === "win32" ? "rudder.cmd" : "rudder";
44
44
  }
45
+ describe("createRudderSkillDirectoryLink", () => {
46
+ it("uses junctions for Windows directory materialization", () => {
47
+ expect(resolveRudderSkillDirectoryLinkType("win32")).toBe("junction");
48
+ expect(resolveRudderSkillDirectoryLinkType("linux")).toBe("dir");
49
+ expect(resolveRudderSkillDirectoryLinkType("darwin")).toBe("dir");
50
+ });
51
+ it("materializes directory skills with a Windows-safe directory link", async () => {
52
+ const root = await fs.mkdtemp(path.join(os.tmpdir(), "rudder-skill-link-"));
53
+ const source = path.join(root, "source-skill");
54
+ const target = path.join(root, "managed-skills", "source-skill");
55
+ try {
56
+ await fs.mkdir(source, { recursive: true });
57
+ await fs.writeFile(path.join(source, "SKILL.md"), "# Windows-safe skill\n", "utf8");
58
+ await fs.mkdir(path.dirname(target), { recursive: true });
59
+ await expect(createRudderSkillDirectoryLink(source, target)).resolves.toBeUndefined();
60
+ await expect(fs.readFile(path.join(target, "SKILL.md"), "utf8")).resolves.toBe("# Windows-safe skill\n");
61
+ expect((await fs.lstat(target)).isSymbolicLink()).toBe(true);
62
+ expect(await fs.realpath(target)).toBe(await fs.realpath(source));
63
+ }
64
+ finally {
65
+ await fs.rm(root, { recursive: true, force: true });
66
+ }
67
+ });
68
+ });
45
69
  describe("cleanupLegacyRudderDocsManagedEntry", () => {
46
70
  it("is exposed by the shared runtime utilities", () => {
47
71
  expect(cleanupLegacyRudderDocsManagedEntry).toBeTypeOf("function");