@onkernel/cua-agent 0.2.0 → 0.3.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 (125) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.md +24 -9
  3. package/dist/index.d.ts +138 -8
  4. package/dist/index.js +752 -5
  5. package/package.json +11 -10
  6. package/dist/agent.d.ts +0 -102
  7. package/dist/agent.d.ts.map +0 -1
  8. package/dist/agent.js +0 -207
  9. package/dist/agent.js.map +0 -1
  10. package/dist/index.d.ts.map +0 -1
  11. package/dist/index.js.map +0 -1
  12. package/dist/tools.d.ts +0 -39
  13. package/dist/tools.d.ts.map +0 -1
  14. package/dist/tools.js +0 -116
  15. package/dist/tools.js.map +0 -1
  16. package/dist/translator/translator.d.ts +0 -22
  17. package/dist/translator/translator.d.ts.map +0 -1
  18. package/dist/translator/translator.js +0 -227
  19. package/dist/translator/translator.js.map +0 -1
  20. package/dist/translator/types.d.ts +0 -39
  21. package/dist/translator/types.d.ts.map +0 -1
  22. package/dist/translator/types.js +0 -2
  23. package/dist/translator/types.js.map +0 -1
  24. package/dist/vendor/pi-agent-core/agent-loop.d.ts +0 -24
  25. package/dist/vendor/pi-agent-core/agent-loop.d.ts.map +0 -1
  26. package/dist/vendor/pi-agent-core/agent-loop.js +0 -479
  27. package/dist/vendor/pi-agent-core/agent-loop.js.map +0 -1
  28. package/dist/vendor/pi-agent-core/agent.d.ts +0 -125
  29. package/dist/vendor/pi-agent-core/agent.d.ts.map +0 -1
  30. package/dist/vendor/pi-agent-core/agent.js +0 -402
  31. package/dist/vendor/pi-agent-core/agent.js.map +0 -1
  32. package/dist/vendor/pi-agent-core/harness/agent-harness.d.ts +0 -85
  33. package/dist/vendor/pi-agent-core/harness/agent-harness.d.ts.map +0 -1
  34. package/dist/vendor/pi-agent-core/harness/agent-harness.js +0 -728
  35. package/dist/vendor/pi-agent-core/harness/agent-harness.js.map +0 -1
  36. package/dist/vendor/pi-agent-core/harness/compaction/branch-summarization.d.ts +0 -88
  37. package/dist/vendor/pi-agent-core/harness/compaction/branch-summarization.d.ts.map +0 -1
  38. package/dist/vendor/pi-agent-core/harness/compaction/branch-summarization.js +0 -243
  39. package/dist/vendor/pi-agent-core/harness/compaction/branch-summarization.js.map +0 -1
  40. package/dist/vendor/pi-agent-core/harness/compaction/compaction.d.ts +0 -122
  41. package/dist/vendor/pi-agent-core/harness/compaction/compaction.d.ts.map +0 -1
  42. package/dist/vendor/pi-agent-core/harness/compaction/compaction.js +0 -616
  43. package/dist/vendor/pi-agent-core/harness/compaction/compaction.js.map +0 -1
  44. package/dist/vendor/pi-agent-core/harness/compaction/utils.d.ts +0 -38
  45. package/dist/vendor/pi-agent-core/harness/compaction/utils.d.ts.map +0 -1
  46. package/dist/vendor/pi-agent-core/harness/compaction/utils.js +0 -153
  47. package/dist/vendor/pi-agent-core/harness/compaction/utils.js.map +0 -1
  48. package/dist/vendor/pi-agent-core/harness/env/nodejs.d.ts +0 -44
  49. package/dist/vendor/pi-agent-core/harness/env/nodejs.d.ts.map +0 -1
  50. package/dist/vendor/pi-agent-core/harness/env/nodejs.js +0 -348
  51. package/dist/vendor/pi-agent-core/harness/env/nodejs.js.map +0 -1
  52. package/dist/vendor/pi-agent-core/harness/execution-env.d.ts +0 -4
  53. package/dist/vendor/pi-agent-core/harness/execution-env.d.ts.map +0 -1
  54. package/dist/vendor/pi-agent-core/harness/execution-env.js +0 -3
  55. package/dist/vendor/pi-agent-core/harness/execution-env.js.map +0 -1
  56. package/dist/vendor/pi-agent-core/harness/messages.d.ts +0 -51
  57. package/dist/vendor/pi-agent-core/harness/messages.d.ts.map +0 -1
  58. package/dist/vendor/pi-agent-core/harness/messages.js +0 -102
  59. package/dist/vendor/pi-agent-core/harness/messages.js.map +0 -1
  60. package/dist/vendor/pi-agent-core/harness/prompt-templates.d.ts +0 -45
  61. package/dist/vendor/pi-agent-core/harness/prompt-templates.d.ts.map +0 -1
  62. package/dist/vendor/pi-agent-core/harness/prompt-templates.js +0 -200
  63. package/dist/vendor/pi-agent-core/harness/prompt-templates.js.map +0 -1
  64. package/dist/vendor/pi-agent-core/harness/session/repo/jsonl.d.ts +0 -20
  65. package/dist/vendor/pi-agent-core/harness/session/repo/jsonl.d.ts.map +0 -1
  66. package/dist/vendor/pi-agent-core/harness/session/repo/jsonl.js +0 -92
  67. package/dist/vendor/pi-agent-core/harness/session/repo/jsonl.js.map +0 -1
  68. package/dist/vendor/pi-agent-core/harness/session/repo/memory.d.ts +0 -18
  69. package/dist/vendor/pi-agent-core/harness/session/repo/memory.d.ts.map +0 -1
  70. package/dist/vendor/pi-agent-core/harness/session/repo/memory.js +0 -42
  71. package/dist/vendor/pi-agent-core/harness/session/repo/memory.js.map +0 -1
  72. package/dist/vendor/pi-agent-core/harness/session/repo/shared.d.ts +0 -10
  73. package/dist/vendor/pi-agent-core/harness/session/repo/shared.d.ts.map +0 -1
  74. package/dist/vendor/pi-agent-core/harness/session/repo/shared.js +0 -31
  75. package/dist/vendor/pi-agent-core/harness/session/repo/shared.js.map +0 -1
  76. package/dist/vendor/pi-agent-core/harness/session/session.d.ts +0 -32
  77. package/dist/vendor/pi-agent-core/harness/session/session.d.ts.map +0 -1
  78. package/dist/vendor/pi-agent-core/harness/session/session.js +0 -196
  79. package/dist/vendor/pi-agent-core/harness/session/session.js.map +0 -1
  80. package/dist/vendor/pi-agent-core/harness/session/storage/jsonl.d.ts +0 -30
  81. package/dist/vendor/pi-agent-core/harness/session/storage/jsonl.d.ts.map +0 -1
  82. package/dist/vendor/pi-agent-core/harness/session/storage/jsonl.js +0 -170
  83. package/dist/vendor/pi-agent-core/harness/session/storage/jsonl.js.map +0 -1
  84. package/dist/vendor/pi-agent-core/harness/session/storage/memory.d.ts +0 -26
  85. package/dist/vendor/pi-agent-core/harness/session/storage/memory.d.ts.map +0 -1
  86. package/dist/vendor/pi-agent-core/harness/session/storage/memory.js +0 -90
  87. package/dist/vendor/pi-agent-core/harness/session/storage/memory.js.map +0 -1
  88. package/dist/vendor/pi-agent-core/harness/session/uuid.d.ts +0 -2
  89. package/dist/vendor/pi-agent-core/harness/session/uuid.d.ts.map +0 -1
  90. package/dist/vendor/pi-agent-core/harness/session/uuid.js +0 -40
  91. package/dist/vendor/pi-agent-core/harness/session/uuid.js.map +0 -1
  92. package/dist/vendor/pi-agent-core/harness/skills.d.ts +0 -41
  93. package/dist/vendor/pi-agent-core/harness/skills.d.ts.map +0 -1
  94. package/dist/vendor/pi-agent-core/harness/skills.js +0 -259
  95. package/dist/vendor/pi-agent-core/harness/skills.js.map +0 -1
  96. package/dist/vendor/pi-agent-core/harness/system-prompt.d.ts +0 -3
  97. package/dist/vendor/pi-agent-core/harness/system-prompt.d.ts.map +0 -1
  98. package/dist/vendor/pi-agent-core/harness/system-prompt.js +0 -30
  99. package/dist/vendor/pi-agent-core/harness/system-prompt.js.map +0 -1
  100. package/dist/vendor/pi-agent-core/harness/types.d.ts +0 -525
  101. package/dist/vendor/pi-agent-core/harness/types.d.ts.map +0 -1
  102. package/dist/vendor/pi-agent-core/harness/types.js +0 -16
  103. package/dist/vendor/pi-agent-core/harness/types.js.map +0 -1
  104. package/dist/vendor/pi-agent-core/harness/utils/shell-output.d.ts +0 -14
  105. package/dist/vendor/pi-agent-core/harness/utils/shell-output.d.ts.map +0 -1
  106. package/dist/vendor/pi-agent-core/harness/utils/shell-output.js +0 -97
  107. package/dist/vendor/pi-agent-core/harness/utils/shell-output.js.map +0 -1
  108. package/dist/vendor/pi-agent-core/harness/utils/truncate.d.ts +0 -70
  109. package/dist/vendor/pi-agent-core/harness/utils/truncate.d.ts.map +0 -1
  110. package/dist/vendor/pi-agent-core/harness/utils/truncate.js +0 -205
  111. package/dist/vendor/pi-agent-core/harness/utils/truncate.js.map +0 -1
  112. package/dist/vendor/pi-agent-core/index.d.ts +0 -21
  113. package/dist/vendor/pi-agent-core/index.d.ts.map +0 -1
  114. package/dist/vendor/pi-agent-core/index.js +0 -26
  115. package/dist/vendor/pi-agent-core/index.js.map +0 -1
  116. package/dist/vendor/pi-agent-core/proxy.d.ts +0 -69
  117. package/dist/vendor/pi-agent-core/proxy.d.ts.map +0 -1
  118. package/dist/vendor/pi-agent-core/proxy.js +0 -278
  119. package/dist/vendor/pi-agent-core/proxy.js.map +0 -1
  120. package/dist/vendor/pi-agent-core/types.d.ts +0 -386
  121. package/dist/vendor/pi-agent-core/types.d.ts.map +0 -1
  122. package/dist/vendor/pi-agent-core/types.js +0 -2
  123. package/dist/vendor/pi-agent-core/types.js.map +0 -1
  124. package/src/vendor/pi-agent-core/LICENSE +0 -21
  125. package/src/vendor/pi-agent-core/README.md +0 -15
@@ -1,38 +0,0 @@
1
- /**
2
- * Shared utilities for compaction and branch summarization.
3
- */
4
- import type { Message } from "@earendil-works/pi-ai";
5
- import type { AgentMessage } from "../../types.js";
6
- export interface FileOperations {
7
- read: Set<string>;
8
- written: Set<string>;
9
- edited: Set<string>;
10
- }
11
- export declare function createFileOps(): FileOperations;
12
- /**
13
- * Extract file operations from tool calls in an assistant message.
14
- */
15
- export declare function extractFileOpsFromMessage(message: AgentMessage, fileOps: FileOperations): void;
16
- /**
17
- * Compute final file lists from file operations.
18
- * Returns readFiles (files only read, not modified) and modifiedFiles.
19
- */
20
- export declare function computeFileLists(fileOps: FileOperations): {
21
- readFiles: string[];
22
- modifiedFiles: string[];
23
- };
24
- /**
25
- * Format file operations as XML tags for summary.
26
- */
27
- export declare function formatFileOperations(readFiles: string[], modifiedFiles: string[]): string;
28
- /**
29
- * Serialize LLM messages to text for summarization.
30
- * This prevents the model from treating it as a conversation to continue.
31
- * Call convertToLlm() first to handle custom message types.
32
- *
33
- * Tool results are truncated to keep the summarization request within
34
- * reasonable token budgets. Full content is not needed for summarization.
35
- */
36
- export declare function serializeConversation(messages: Message[]): string;
37
- export declare const SUMMARIZATION_SYSTEM_PROMPT = "You are a context summarization assistant. Your task is to read a conversation between a user and an AI coding assistant, then produce a structured summary following the exact format specified.\n\nDo NOT continue the conversation. Do NOT respond to any questions in the conversation. ONLY output the structured summary.";
38
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/vendor/pi-agent-core/harness/compaction/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAMnD,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAClB,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACrB,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACpB;AAED,wBAAgB,aAAa,IAAI,cAAc,CAM9C;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI,CA2B9F;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAA;CAAE,CAK1G;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,MAAM,CAUzF;AAmBD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAqDjE;AAMD,eAAO,MAAM,2BAA2B,oUAEmF,CAAC"}
@@ -1,153 +0,0 @@
1
- /**
2
- * Shared utilities for compaction and branch summarization.
3
- */
4
- export function createFileOps() {
5
- return {
6
- read: new Set(),
7
- written: new Set(),
8
- edited: new Set(),
9
- };
10
- }
11
- /**
12
- * Extract file operations from tool calls in an assistant message.
13
- */
14
- export function extractFileOpsFromMessage(message, fileOps) {
15
- if (message.role !== "assistant")
16
- return;
17
- if (!("content" in message) || !Array.isArray(message.content))
18
- return;
19
- for (const block of message.content) {
20
- if (typeof block !== "object" || block === null)
21
- continue;
22
- if (!("type" in block) || block.type !== "toolCall")
23
- continue;
24
- if (!("arguments" in block) || !("name" in block))
25
- continue;
26
- const args = block.arguments;
27
- if (!args)
28
- continue;
29
- const path = typeof args.path === "string" ? args.path : undefined;
30
- if (!path)
31
- continue;
32
- switch (block.name) {
33
- case "read":
34
- fileOps.read.add(path);
35
- break;
36
- case "write":
37
- fileOps.written.add(path);
38
- break;
39
- case "edit":
40
- fileOps.edited.add(path);
41
- break;
42
- }
43
- }
44
- }
45
- /**
46
- * Compute final file lists from file operations.
47
- * Returns readFiles (files only read, not modified) and modifiedFiles.
48
- */
49
- export function computeFileLists(fileOps) {
50
- const modified = new Set([...fileOps.edited, ...fileOps.written]);
51
- const readOnly = [...fileOps.read].filter((f) => !modified.has(f)).sort();
52
- const modifiedFiles = [...modified].sort();
53
- return { readFiles: readOnly, modifiedFiles };
54
- }
55
- /**
56
- * Format file operations as XML tags for summary.
57
- */
58
- export function formatFileOperations(readFiles, modifiedFiles) {
59
- const sections = [];
60
- if (readFiles.length > 0) {
61
- sections.push(`<read-files>\n${readFiles.join("\n")}\n</read-files>`);
62
- }
63
- if (modifiedFiles.length > 0) {
64
- sections.push(`<modified-files>\n${modifiedFiles.join("\n")}\n</modified-files>`);
65
- }
66
- if (sections.length === 0)
67
- return "";
68
- return `\n\n${sections.join("\n\n")}`;
69
- }
70
- // ============================================================================
71
- // Message Serialization
72
- // ============================================================================
73
- /** Maximum characters for a tool result in serialized summaries. */
74
- const TOOL_RESULT_MAX_CHARS = 2000;
75
- /**
76
- * Truncate text to a maximum character length for summarization.
77
- * Keeps the beginning and appends a truncation marker.
78
- */
79
- function truncateForSummary(text, maxChars) {
80
- if (text.length <= maxChars)
81
- return text;
82
- const truncatedChars = text.length - maxChars;
83
- return `${text.slice(0, maxChars)}\n\n[... ${truncatedChars} more characters truncated]`;
84
- }
85
- /**
86
- * Serialize LLM messages to text for summarization.
87
- * This prevents the model from treating it as a conversation to continue.
88
- * Call convertToLlm() first to handle custom message types.
89
- *
90
- * Tool results are truncated to keep the summarization request within
91
- * reasonable token budgets. Full content is not needed for summarization.
92
- */
93
- export function serializeConversation(messages) {
94
- const parts = [];
95
- for (const msg of messages) {
96
- if (msg.role === "user") {
97
- const content = typeof msg.content === "string"
98
- ? msg.content
99
- : msg.content
100
- .filter((c) => c.type === "text")
101
- .map((c) => c.text)
102
- .join("");
103
- if (content)
104
- parts.push(`[User]: ${content}`);
105
- }
106
- else if (msg.role === "assistant") {
107
- const textParts = [];
108
- const thinkingParts = [];
109
- const toolCalls = [];
110
- for (const block of msg.content) {
111
- if (block.type === "text") {
112
- textParts.push(block.text);
113
- }
114
- else if (block.type === "thinking") {
115
- thinkingParts.push(block.thinking);
116
- }
117
- else if (block.type === "toolCall") {
118
- const args = block.arguments;
119
- const argsStr = Object.entries(args)
120
- .map(([k, v]) => `${k}=${JSON.stringify(v)}`)
121
- .join(", ");
122
- toolCalls.push(`${block.name}(${argsStr})`);
123
- }
124
- }
125
- if (thinkingParts.length > 0) {
126
- parts.push(`[Assistant thinking]: ${thinkingParts.join("\n")}`);
127
- }
128
- if (textParts.length > 0) {
129
- parts.push(`[Assistant]: ${textParts.join("\n")}`);
130
- }
131
- if (toolCalls.length > 0) {
132
- parts.push(`[Assistant tool calls]: ${toolCalls.join("; ")}`);
133
- }
134
- }
135
- else if (msg.role === "toolResult") {
136
- const content = msg.content
137
- .filter((c) => c.type === "text")
138
- .map((c) => c.text)
139
- .join("");
140
- if (content) {
141
- parts.push(`[Tool result]: ${truncateForSummary(content, TOOL_RESULT_MAX_CHARS)}`);
142
- }
143
- }
144
- }
145
- return parts.join("\n\n");
146
- }
147
- // ============================================================================
148
- // Summarization System Prompt
149
- // ============================================================================
150
- export const SUMMARIZATION_SYSTEM_PROMPT = `You are a context summarization assistant. Your task is to read a conversation between a user and an AI coding assistant, then produce a structured summary following the exact format specified.
151
-
152
- Do NOT continue the conversation. Do NOT respond to any questions in the conversation. ONLY output the structured summary.`;
153
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/vendor/pi-agent-core/harness/compaction/utils.ts"],"names":[],"mappings":"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"}
@@ -1,44 +0,0 @@
1
- import { type ExecutionEnv, type FileInfo } from "../types.js";
2
- export declare class NodeExecutionEnv implements ExecutionEnv {
3
- cwd: string;
4
- private shellPath?;
5
- private shellEnv?;
6
- constructor(options: {
7
- cwd: string;
8
- shellPath?: string;
9
- shellEnv?: NodeJS.ProcessEnv;
10
- });
11
- exec(command: string, options?: {
12
- cwd?: string;
13
- env?: Record<string, string>;
14
- timeout?: number;
15
- signal?: AbortSignal;
16
- onStdout?: (chunk: string) => void;
17
- onStderr?: (chunk: string) => void;
18
- }): Promise<{
19
- stdout: string;
20
- stderr: string;
21
- exitCode: number;
22
- }>;
23
- readTextFile(path: string): Promise<string>;
24
- readBinaryFile(path: string): Promise<Uint8Array>;
25
- writeFile(path: string, content: string | Uint8Array): Promise<void>;
26
- fileInfo(path: string): Promise<FileInfo>;
27
- listDir(path: string): Promise<FileInfo[]>;
28
- realPath(path: string): Promise<string>;
29
- exists(path: string): Promise<boolean>;
30
- createDir(path: string, options?: {
31
- recursive?: boolean;
32
- }): Promise<void>;
33
- remove(path: string, options?: {
34
- recursive?: boolean;
35
- force?: boolean;
36
- }): Promise<void>;
37
- createTempDir(prefix?: string): Promise<string>;
38
- createTempFile(options?: {
39
- prefix?: string;
40
- suffix?: string;
41
- }): Promise<string>;
42
- cleanup(): Promise<void>;
43
- }
44
- //# sourceMappingURL=nodejs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodejs.d.ts","sourceRoot":"","sources":["../../../../../src/vendor/pi-agent-core/harness/env/nodejs.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,YAAY,EAAa,KAAK,QAAQ,EAAiB,MAAM,aAAa,CAAC;AAmKzF,qBAAa,gBAAiB,YAAW,YAAY;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAoB;gBAEzB,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE;IAMhF,IAAI,CACT,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACT,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;QACnC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;KACnC,GACC,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IA4E1D,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS3C,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IASjD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IASzC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAoB1C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASvC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAUtC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IASvF,aAAa,CAAC,MAAM,GAAE,MAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,cAAc,CAAC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAO/E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
@@ -1,348 +0,0 @@
1
- import { spawn } from "node:child_process";
2
- import { randomUUID } from "node:crypto";
3
- import { constants } from "node:fs";
4
- import { access, lstat, mkdir, mkdtemp, readdir, readFile, realpath, rm, writeFile } from "node:fs/promises";
5
- import { tmpdir } from "node:os";
6
- import { isAbsolute, join, resolve } from "node:path";
7
- import { FileError } from "../types.js";
8
- function resolvePath(cwd, path) {
9
- return isAbsolute(path) ? path : resolve(cwd, path);
10
- }
11
- function fileKindFromStats(stats) {
12
- if (stats.isFile())
13
- return "file";
14
- if (stats.isDirectory())
15
- return "directory";
16
- if (stats.isSymbolicLink())
17
- return "symlink";
18
- throw new FileError("invalid", "Unsupported file type");
19
- }
20
- function fileInfoFromStats(path, stats) {
21
- return {
22
- name: path.replace(/\/+$/, "").split("/").pop() ?? path,
23
- path,
24
- kind: fileKindFromStats(stats),
25
- size: stats.size,
26
- mtimeMs: stats.mtimeMs,
27
- };
28
- }
29
- function isNodeError(error) {
30
- return error instanceof Error && "code" in error;
31
- }
32
- function toFileError(error, path) {
33
- if (error instanceof FileError)
34
- return error;
35
- if (isNodeError(error)) {
36
- const message = error.message;
37
- switch (error.code) {
38
- case "ENOENT":
39
- return new FileError("not_found", message, path, { cause: error });
40
- case "EACCES":
41
- case "EPERM":
42
- return new FileError("permission_denied", message, path, { cause: error });
43
- case "ENOTDIR":
44
- return new FileError("not_directory", message, path, { cause: error });
45
- case "EISDIR":
46
- return new FileError("is_directory", message, path, { cause: error });
47
- case "EINVAL":
48
- return new FileError("invalid", message, path, { cause: error });
49
- }
50
- }
51
- return new FileError("unknown", error instanceof Error ? error.message : String(error), path, { cause: error });
52
- }
53
- async function pathExists(path) {
54
- try {
55
- await access(path, constants.F_OK);
56
- return true;
57
- }
58
- catch {
59
- return false;
60
- }
61
- }
62
- async function runCommand(command, args, timeoutMs) {
63
- return await new Promise((resolve) => {
64
- let stdout = "";
65
- const child = spawn(command, args, { stdio: ["ignore", "pipe", "ignore"] });
66
- const timeout = setTimeout(() => {
67
- if (child.pid)
68
- killProcessTree(child.pid);
69
- }, timeoutMs);
70
- child.stdout?.setEncoding("utf8");
71
- child.stdout?.on("data", (chunk) => {
72
- stdout += chunk;
73
- });
74
- child.on("error", () => {
75
- clearTimeout(timeout);
76
- resolve({ stdout: "", status: null });
77
- });
78
- child.on("close", (status) => {
79
- clearTimeout(timeout);
80
- resolve({ stdout, status });
81
- });
82
- });
83
- }
84
- async function findBashOnPath() {
85
- const result = process.platform === "win32"
86
- ? await runCommand("where", ["bash.exe"], 5000)
87
- : await runCommand("which", ["bash"], 5000);
88
- if (result.status !== 0 || !result.stdout)
89
- return null;
90
- const firstMatch = result.stdout.trim().split(/\r?\n/)[0];
91
- return firstMatch && (await pathExists(firstMatch)) ? firstMatch : null;
92
- }
93
- async function getShellConfig(customShellPath) {
94
- if (customShellPath) {
95
- if (await pathExists(customShellPath)) {
96
- return { shell: customShellPath, args: ["-c"] };
97
- }
98
- throw new Error(`Custom shell path not found: ${customShellPath}`);
99
- }
100
- if (process.platform === "win32") {
101
- const candidates = [];
102
- const programFiles = process.env.ProgramFiles;
103
- if (programFiles)
104
- candidates.push(`${programFiles}\\Git\\bin\\bash.exe`);
105
- const programFilesX86 = process.env["ProgramFiles(x86)"];
106
- if (programFilesX86)
107
- candidates.push(`${programFilesX86}\\Git\\bin\\bash.exe`);
108
- for (const candidate of candidates) {
109
- if (await pathExists(candidate)) {
110
- return { shell: candidate, args: ["-c"] };
111
- }
112
- }
113
- const bashOnPath = await findBashOnPath();
114
- if (bashOnPath) {
115
- return { shell: bashOnPath, args: ["-c"] };
116
- }
117
- throw new Error("No bash shell found");
118
- }
119
- if (await pathExists("/bin/bash")) {
120
- return { shell: "/bin/bash", args: ["-c"] };
121
- }
122
- const bashOnPath = await findBashOnPath();
123
- if (bashOnPath) {
124
- return { shell: bashOnPath, args: ["-c"] };
125
- }
126
- return { shell: "sh", args: ["-c"] };
127
- }
128
- function getShellEnv(baseEnv, extraEnv) {
129
- return {
130
- ...process.env,
131
- ...baseEnv,
132
- ...extraEnv,
133
- };
134
- }
135
- function killProcessTree(pid) {
136
- if (process.platform === "win32") {
137
- try {
138
- spawn("taskkill", ["/F", "/T", "/PID", String(pid)], {
139
- stdio: "ignore",
140
- detached: true,
141
- });
142
- }
143
- catch {
144
- // Ignore errors.
145
- }
146
- return;
147
- }
148
- try {
149
- process.kill(-pid, "SIGKILL");
150
- }
151
- catch {
152
- try {
153
- process.kill(pid, "SIGKILL");
154
- }
155
- catch {
156
- // Process already dead.
157
- }
158
- }
159
- }
160
- export class NodeExecutionEnv {
161
- cwd;
162
- shellPath;
163
- shellEnv;
164
- constructor(options) {
165
- this.cwd = options.cwd;
166
- this.shellPath = options.shellPath;
167
- this.shellEnv = options.shellEnv;
168
- }
169
- async exec(command, options) {
170
- const cwd = options?.cwd ? resolvePath(this.cwd, options.cwd) : this.cwd;
171
- const { shell, args } = await getShellConfig(this.shellPath);
172
- return await new Promise((resolvePromise, reject) => {
173
- let stdout = "";
174
- let stderr = "";
175
- let settled = false;
176
- let timedOut = false;
177
- const child = spawn(shell, [...args, command], {
178
- cwd,
179
- detached: process.platform !== "win32",
180
- env: getShellEnv(this.shellEnv, options?.env),
181
- stdio: ["ignore", "pipe", "pipe"],
182
- });
183
- const timeoutId = typeof options?.timeout === "number"
184
- ? setTimeout(() => {
185
- timedOut = true;
186
- if (child.pid) {
187
- killProcessTree(child.pid);
188
- }
189
- }, options.timeout * 1000)
190
- : undefined;
191
- const onAbort = () => {
192
- if (child.pid) {
193
- killProcessTree(child.pid);
194
- }
195
- };
196
- if (options?.signal) {
197
- if (options.signal.aborted) {
198
- onAbort();
199
- }
200
- else {
201
- options.signal.addEventListener("abort", onAbort, { once: true });
202
- }
203
- }
204
- child.stdout?.setEncoding("utf8");
205
- child.stderr?.setEncoding("utf8");
206
- child.stdout?.on("data", (chunk) => {
207
- stdout += chunk;
208
- options?.onStdout?.(chunk);
209
- });
210
- child.stderr?.on("data", (chunk) => {
211
- stderr += chunk;
212
- options?.onStderr?.(chunk);
213
- });
214
- child.on("error", (error) => {
215
- if (timeoutId)
216
- clearTimeout(timeoutId);
217
- if (options?.signal)
218
- options.signal.removeEventListener("abort", onAbort);
219
- if (settled)
220
- return;
221
- settled = true;
222
- reject(error);
223
- });
224
- child.on("close", (code) => {
225
- if (timeoutId)
226
- clearTimeout(timeoutId);
227
- if (options?.signal)
228
- options.signal.removeEventListener("abort", onAbort);
229
- if (settled)
230
- return;
231
- settled = true;
232
- if (options?.signal?.aborted) {
233
- reject(new Error("aborted"));
234
- return;
235
- }
236
- if (timedOut) {
237
- reject(new Error(`timeout:${options?.timeout}`));
238
- return;
239
- }
240
- resolvePromise({ stdout, stderr, exitCode: code ?? 0 });
241
- });
242
- });
243
- }
244
- async readTextFile(path) {
245
- const resolved = resolvePath(this.cwd, path);
246
- try {
247
- return await readFile(resolved, "utf8");
248
- }
249
- catch (error) {
250
- throw toFileError(error, resolved);
251
- }
252
- }
253
- async readBinaryFile(path) {
254
- const resolved = resolvePath(this.cwd, path);
255
- try {
256
- return await readFile(resolved);
257
- }
258
- catch (error) {
259
- throw toFileError(error, resolved);
260
- }
261
- }
262
- async writeFile(path, content) {
263
- const resolved = resolvePath(this.cwd, path);
264
- try {
265
- await mkdir(resolve(resolved, ".."), { recursive: true });
266
- await writeFile(resolved, content);
267
- }
268
- catch (error) {
269
- throw toFileError(error, resolved);
270
- }
271
- }
272
- async fileInfo(path) {
273
- const resolved = resolvePath(this.cwd, path);
274
- try {
275
- return fileInfoFromStats(resolved, await lstat(resolved));
276
- }
277
- catch (error) {
278
- throw toFileError(error, resolved);
279
- }
280
- }
281
- async listDir(path) {
282
- const resolved = resolvePath(this.cwd, path);
283
- try {
284
- const entries = await readdir(resolved, { withFileTypes: true });
285
- const infos = [];
286
- for (const entry of entries) {
287
- const entryPath = resolve(resolved, entry.name);
288
- try {
289
- infos.push(fileInfoFromStats(entryPath, await lstat(entryPath)));
290
- }
291
- catch (error) {
292
- if (error instanceof FileError && error.code === "invalid")
293
- continue;
294
- throw error;
295
- }
296
- }
297
- return infos;
298
- }
299
- catch (error) {
300
- throw toFileError(error, resolved);
301
- }
302
- }
303
- async realPath(path) {
304
- const resolved = resolvePath(this.cwd, path);
305
- try {
306
- return await realpath(resolved);
307
- }
308
- catch (error) {
309
- throw toFileError(error, resolved);
310
- }
311
- }
312
- async exists(path) {
313
- try {
314
- await this.fileInfo(path);
315
- return true;
316
- }
317
- catch (error) {
318
- if (error instanceof FileError && error.code === "not_found")
319
- return false;
320
- throw error;
321
- }
322
- }
323
- async createDir(path, options) {
324
- await mkdir(resolvePath(this.cwd, path), { recursive: options?.recursive });
325
- }
326
- async remove(path, options) {
327
- const resolved = resolvePath(this.cwd, path);
328
- try {
329
- await rm(resolved, { recursive: options?.recursive ?? false, force: options?.force ?? false });
330
- }
331
- catch (error) {
332
- throw toFileError(error, resolved);
333
- }
334
- }
335
- async createTempDir(prefix = "tmp-") {
336
- return await mkdtemp(join(tmpdir(), prefix));
337
- }
338
- async createTempFile(options) {
339
- const dir = await this.createTempDir("tmp-");
340
- const filePath = join(dir, `${options?.prefix ?? ""}${randomUUID()}${options?.suffix ?? ""}`);
341
- await writeFile(filePath, "");
342
- return filePath;
343
- }
344
- async cleanup() {
345
- // nothing to clean up for the local node implementation
346
- }
347
- }
348
- //# sourceMappingURL=nodejs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nodejs.js","sourceRoot":"","sources":["../../../../../src/vendor/pi-agent-core/harness/env/nodejs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export { NodeExecutionEnv } from "./env/nodejs.js";
2
- export type { ExecutionEnv, ExecutionEnvExecOptions, FileErrorCode, FileInfo, FileKind } from "./types.js";
3
- export { FileError } from "./types.js";
4
- //# sourceMappingURL=execution-env.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execution-env.d.ts","sourceRoot":"","sources":["../../../../src/vendor/pi-agent-core/harness/execution-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,YAAY,EAAE,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3G,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
@@ -1,3 +0,0 @@
1
- export { NodeExecutionEnv } from "./env/nodejs.js";
2
- export { FileError } from "./types.js";
3
- //# sourceMappingURL=execution-env.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"execution-env.js","sourceRoot":"","sources":["../../../../src/vendor/pi-agent-core/harness/execution-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}