@farazirfan/costar-server-executor 1.7.65 → 1.7.67

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.
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/agent/pi-embedded-runner/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAI7F;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,GAAG,EAAE,CAuC9D;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,CAAC,EAAE,YAAY,EACvB,OAAO,CAAC,EAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,gBAAgB,CAAA;CAAE,GAC1E,GAAG,EAAE,CAMP"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/agent/pi-embedded-runner/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAS7F;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,GAAG,EAAE,CAoD9D;AAgDD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,CAAC,EAAE,YAAY,EACvB,OAAO,CAAC,EAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,gBAAgB,CAAA;CAAE,GAC1E,GAAG,EAAE,CAMP"}
@@ -6,12 +6,18 @@
6
6
  * Both executors (client + server) read/write the same files — no sync layer needed.
7
7
  */
8
8
  import { getAllTools } from "../../tools/index.js";
9
+ import { detectNewFiles, buildFileSection, constructS3Url } from "../../utils/file-tracker.js";
10
+ import { getS3FileWatcher } from "../../services/s3-file-watcher.js";
11
+ /** Tools that can create/modify files in /home/user/task/ */
12
+ const FILE_TOOLS = new Set(["exec", "write"]);
9
13
  // ---------- Tool definitions ----------
10
14
  /**
11
15
  * Convert CoStar tools to ToolDefinition format (same as OpenClaw's toToolDefinitions)
12
16
  * Note: Using 'any' for type compatibility between different pi-* module versions
13
17
  */
14
18
  export function toToolDefinitions(tools) {
19
+ // Quick check: is S3 file tracking possible?
20
+ const s3Ready = !!(process.env.AWS_BUCKET_NAME && (process.env.SANDBOX_ID || process.env.COSTAR_SANDBOX_ID));
15
21
  return tools.map((tool) => {
16
22
  const name = tool.name || "tool";
17
23
  return {
@@ -21,9 +27,17 @@ export function toToolDefinitions(tools) {
21
27
  // biome-ignore lint/suspicious/noExplicitAny: TypeBox schema type differences
22
28
  parameters: tool.parameters,
23
29
  execute: async (toolCallId, params, _onUpdate, _ctx, signal) => {
30
+ const startTime = s3Ready && FILE_TOOLS.has(name) ? Date.now() : 0;
24
31
  // Execute the CoStar tool (simplified adapter)
25
32
  try {
26
33
  const result = await tool.execute(toolCallId, params);
34
+ // Enrich file-creating tools with S3 URLs (fast, non-blocking)
35
+ if (startTime > 0) {
36
+ try {
37
+ appendFileUrls(name, params, result, startTime);
38
+ }
39
+ catch { /* never break tool execution */ }
40
+ }
27
41
  return result;
28
42
  }
29
43
  catch (err) {
@@ -45,6 +59,46 @@ export function toToolDefinitions(tools) {
45
59
  };
46
60
  });
47
61
  }
62
+ /**
63
+ * Append S3 URLs to tool result for newly created files.
64
+ * - write: constructs URL from known path (instant)
65
+ * - exec: mtime scan of /home/user/task/ depth 2 (<10ms typical)
66
+ * Fire-and-forget S3 upload — doesn't block the tool result.
67
+ */
68
+ function appendFileUrls(toolName, params, result, startTime) {
69
+ const textBlock = result?.content?.[0];
70
+ if (!textBlock || textBlock.type !== "text")
71
+ return;
72
+ if (toolName === "write") {
73
+ const filePath = params.path;
74
+ if (!filePath)
75
+ return;
76
+ const s3Url = constructS3Url(filePath);
77
+ if (!s3Url)
78
+ return; // not under /home/user/task/
79
+ // Fire-and-forget upload
80
+ const watcher = getS3FileWatcher();
81
+ if (watcher)
82
+ void watcher.uploadImmediate([filePath]);
83
+ const name = filePath.split("/").pop();
84
+ textBlock.text += `\n\n[File URL]\n- ${name} → ${s3Url}`;
85
+ return;
86
+ }
87
+ if (toolName === "exec") {
88
+ // Skip background/running/failed commands
89
+ if (result?.details?.status !== "completed")
90
+ return;
91
+ // Fast mtime scan (depth 2, skips node_modules etc.)
92
+ const newFiles = detectNewFiles(startTime, 2);
93
+ if (newFiles.length === 0)
94
+ return;
95
+ // Fire-and-forget upload
96
+ const watcher = getS3FileWatcher();
97
+ if (watcher)
98
+ void watcher.uploadImmediate(newFiles.map((f) => f.localPath));
99
+ textBlock.text += buildFileSection(newFiles);
100
+ }
101
+ }
48
102
  /**
49
103
  * Get all CoStar tools converted to ToolDefinition format.
50
104
  * Following OpenClaw's pattern: tools are created inside the runner with full context.
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/agent/pi-embedded-runner/tools.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,WAAW,EAA4C,MAAM,sBAAsB,CAAC;AAE7F,yCAAyC;AAEzC;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAqB;IACrD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC;QACjC,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,IAAI;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,8EAA8E;YAC9E,UAAU,EAAE,IAAI,CAAC,UAAiB;YAClC,OAAO,EAAE,KAAK,EACZ,UAAkB,EAClB,MAAe,EACf,SAAe,EACf,IAAU,EACV,MAAoB,EACN,EAAE;gBAChB,+CAA+C;gBAC/C,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,MAAiC,CAAC,CAAC;oBACjF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,gBAAgB;oBAChB,IAAI,MAAM,EAAE,OAAO;wBAAE,MAAM,GAAG,CAAC;oBAC/B,MAAM,OAAO,GACX,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG;wBAC7C,CAAC,CAAC,MAAM,CAAE,GAA0B,CAAC,IAAI,CAAC;wBAC1C,CAAC,CAAC,EAAE,CAAC;oBACT,IAAI,OAAO,KAAK,YAAY;wBAAE,MAAM,GAAG,CAAC;oBAExC,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjE,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,YAAY,OAAO,EAAE,CAAC,CAAC;oBAEpD,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;qBAC5G,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAuB,EACvB,OAA2E;IAE3E,IAAI,WAAW,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC/D,IAAI,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAChC,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,iBAAiB,CAAC,WAAW,CAAC,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/agent/pi-embedded-runner/tools.ts"],"names":[],"mappings":"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"}
@@ -24,11 +24,8 @@ export type UploadRecord = {
24
24
  s3Url: string;
25
25
  uploadedAt: number;
26
26
  };
27
- /**
28
- * S3 File Watcher watches a directory and uploads changed files to S3.
29
- *
30
- * Uses dynamic import for chokidar (ESM-only since v4).
31
- */
27
+ /** Get the global S3FileWatcher instance (null if not initialized) */
28
+ export declare function getS3FileWatcher(): S3FileWatcher | null;
32
29
  export declare class S3FileWatcher {
33
30
  private config;
34
31
  private watcher;
@@ -59,6 +56,12 @@ export declare class S3FileWatcher {
59
56
  * Upload a single file to S3 via aws cli.
60
57
  */
61
58
  private uploadFile;
59
+ /**
60
+ * Trigger immediate upload for specific files (bypasses debounce).
61
+ * Used by tool result enrichment to ensure files are on S3 ASAP
62
+ * after a command creates them.
63
+ */
64
+ uploadImmediate(filePaths: string[]): Promise<void>;
62
65
  /**
63
66
  * Get recent uploads since a timestamp.
64
67
  * Used by sandbox-ops to report changed_files in execute response.
@@ -1 +1 @@
1
- {"version":3,"file":"s3-file-watcher.d.ts","sourceRoot":"","sources":["../../src/services/s3-file-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,MAAM,MAAM,mBAAmB,GAAG;IAChC,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAoBF;;;;GAIG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgC;IAE9C,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,gBAAgB,CAAO;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAIX;gBAEU,MAAM,EAAE,mBAAmB;IAOvC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqC5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;YACW,YAAY;IAoB1B;;OAEG;IACH,OAAO,CAAC,UAAU;IAwClB;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;IAI/C;;OAEG;IACH,SAAS,IAAI;QACX,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACtB;CAUF"}
1
+ {"version":3,"file":"s3-file-watcher.d.ts","sourceRoot":"","sources":["../../src/services/s3-file-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,MAAM,MAAM,mBAAmB,GAAG;IAChC,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AA8CF,sEAAsE;AACtE,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,IAAI,CAEvD;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAgC;IAE9C,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,gBAAgB,CAAO;IAC/B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,KAAK,CAIX;gBAEU,MAAM,EAAE,mBAAmB;IASvC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqC5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;YACW,YAAY;IAoB1B;;OAEG;IACH,OAAO,CAAC,UAAU;IA4ClB;;;;OAIG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IASzD;;;OAGG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;IAI/C;;OAEG;IACH,SAAS,IAAI;QACX,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACtB;CAUF"}
@@ -10,28 +10,53 @@
10
10
  import { exec } from "node:child_process";
11
11
  import path from "node:path";
12
12
  import fs from "node:fs";
13
- /** Ignore patterns directories/files to skip */
14
- const IGNORE_PATTERNS = [
15
- "**/node_modules/**",
16
- "**/.bin/**",
17
- "**/.git/**",
18
- "**/__pycache__/**",
19
- "**/dist/**",
20
- "**/.next/**",
21
- "**/.cache/**",
22
- "**/.venv/**",
23
- "**/venv/**",
24
- "**/*.pyc",
25
- "**/.DS_Store",
26
- "**/package-lock.json",
27
- "**/yarn.lock",
28
- "**/pnpm-lock.yaml",
29
- ];
13
+ /** Directory names to ignore (matched against every path segment) */
14
+ const IGNORE_DIRS = new Set([
15
+ "node_modules",
16
+ ".bin",
17
+ ".git",
18
+ "__pycache__",
19
+ "dist",
20
+ ".next",
21
+ ".cache",
22
+ ".venv",
23
+ "venv",
24
+ ]);
25
+ /** File names to ignore */
26
+ const IGNORE_FILES = new Set([
27
+ "package-lock.json",
28
+ "yarn.lock",
29
+ "pnpm-lock.yaml",
30
+ ".DS_Store",
31
+ ]);
32
+ /**
33
+ * Function-based ignore for chokidar — more reliable than glob patterns
34
+ * which can miss nested paths in chokidar v4.
35
+ */
36
+ function shouldIgnore(filePath) {
37
+ const segments = filePath.split("/");
38
+ for (const seg of segments) {
39
+ if (IGNORE_DIRS.has(seg))
40
+ return true;
41
+ }
42
+ const name = segments[segments.length - 1];
43
+ if (IGNORE_FILES.has(name))
44
+ return true;
45
+ if (name.endsWith(".pyc"))
46
+ return true;
47
+ return false;
48
+ }
30
49
  /**
31
50
  * S3 File Watcher — watches a directory and uploads changed files to S3.
32
51
  *
33
52
  * Uses dynamic import for chokidar (ESM-only since v4).
34
53
  */
54
+ // Module-level singleton for access from tools
55
+ let _instance = null;
56
+ /** Get the global S3FileWatcher instance (null if not initialized) */
57
+ export function getS3FileWatcher() {
58
+ return _instance;
59
+ }
35
60
  export class S3FileWatcher {
36
61
  config;
37
62
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -51,6 +76,8 @@ export class S3FileWatcher {
51
76
  ...config,
52
77
  debounceMs: config.debounceMs ?? 5000,
53
78
  };
79
+ // Register as singleton
80
+ _instance = this;
54
81
  }
55
82
  /**
56
83
  * Start watching for file changes.
@@ -65,7 +92,7 @@ export class S3FileWatcher {
65
92
  // Dynamic import for chokidar (ESM)
66
93
  const { watch } = await import("chokidar");
67
94
  this.watcher = watch(watchDir, {
68
- ignored: IGNORE_PATTERNS,
95
+ ignored: shouldIgnore,
69
96
  persistent: true,
70
97
  ignoreInitial: true, // Don't upload everything on startup
71
98
  followSymlinks: false,
@@ -145,7 +172,10 @@ export class S3FileWatcher {
145
172
  const s3Key = `${this.config.sandboxId}/${relativePath}`;
146
173
  const s3Url = `https://${this.config.bucketName}.s3.${this.config.region}.amazonaws.com/${s3Key}`;
147
174
  const command = `aws s3 cp "${filePath}" "s3://${this.config.bucketName}/${s3Key}" --region ${this.config.region}`;
148
- exec(command, { timeout: 30_000 }, (error) => {
175
+ // Pass AWS credentials from process.env so aws CLI finds them
176
+ // regardless of which HOME directory it reads ~/.aws/credentials from
177
+ const env = { ...process.env };
178
+ exec(command, { timeout: 30_000, env }, (error) => {
149
179
  if (error) {
150
180
  console.error(`[S3-WATCHER] Upload failed: ${relativePath} — ${error.message}`);
151
181
  this.stats.totalErrors++;
@@ -168,6 +198,19 @@ export class S3FileWatcher {
168
198
  });
169
199
  });
170
200
  }
201
+ /**
202
+ * Trigger immediate upload for specific files (bypasses debounce).
203
+ * Used by tool result enrichment to ensure files are on S3 ASAP
204
+ * after a command creates them.
205
+ */
206
+ async uploadImmediate(filePaths) {
207
+ const uploadPromises = filePaths.map((fp) => {
208
+ // Remove from pending queue (avoid double upload)
209
+ this.pendingUploads.delete(fp);
210
+ return this.uploadFile(fp);
211
+ });
212
+ await Promise.allSettled(uploadPromises);
213
+ }
171
214
  /**
172
215
  * Get recent uploads since a timestamp.
173
216
  * Used by sandbox-ops to report changed_files in execute response.
@@ -1 +1 @@
1
- {"version":3,"file":"s3-file-watcher.js","sourceRoot":"","sources":["../../src/services/s3-file-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AAqBzB,kDAAkD;AAClD,MAAM,eAAe,GAAG;IACtB,oBAAoB;IACpB,YAAY;IACZ,YAAY;IACZ,mBAAmB;IACnB,YAAY;IACZ,aAAa;IACb,cAAc;IACd,aAAa;IACb,YAAY;IACZ,UAAU;IACV,cAAc;IACd,sBAAsB;IACtB,cAAc;IACd,mBAAmB;CACpB,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,aAAa;IAChB,MAAM,CAAgC;IAC9C,8DAA8D;IACtD,OAAO,GAAQ,IAAI,CAAC;IACpB,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,aAAa,GAAyC,IAAI,CAAC;IAC3D,aAAa,GAAmB,EAAE,CAAC;IACnC,gBAAgB,GAAG,GAAG,CAAC;IACvB,WAAW,GAAG,KAAK,CAAC;IACpB,KAAK,GAAG;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,CAAC;KAChB,CAAC;IAEF,YAAY,MAA2B;QACrC,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,MAAM;YACT,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;SACtC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QAEjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,gDAAgD,QAAQ,EAAE,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,oCAAoC;YACpC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YAE3C,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE;gBAC7B,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,IAAI,EAAE,qCAAqC;gBAC1D,cAAc,EAAE,KAAK;gBACrB,gBAAgB,EAAE;oBAChB,kBAAkB,EAAE,IAAI;oBACxB,YAAY,EAAE,GAAG;iBAClB;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YACzE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC5E,sEAAsE;YAEtE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAY,EAAE,EAAE;gBACxC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,yBAAyB,QAAQ,cAAc,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACtB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,QAAgB;QAClC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,uBAAuB;QACvB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3B,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,YAAY;QACxB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAE/D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAE5B,OAAO,CAAC,GAAG,CAAC,0BAA0B,aAAa,CAAC,MAAM,mBAAmB,CAAC,CAAC;QAE/E,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClF,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAEzC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAEzB,kDAAkD;QAClD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACjC,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,QAAgB;QACjC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,gCAAgC;YAChC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACnE,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,YAAY,EAAE,CAAC;YACzD,MAAM,KAAK,GAAG,WAAW,IAAI,CAAC,MAAM,CAAC,UAAU,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,kBAAkB,KAAK,EAAE,CAAC;YAElG,MAAM,OAAO,GAAG,cAAc,QAAQ,WAAW,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,KAAK,cAAc,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAEnH,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC3C,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,KAAK,CAAC,+BAA+B,YAAY,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBAChF,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;oBAC1B,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBAErC,uBAAuB;oBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;wBACtB,IAAI,EAAE,QAAQ;wBACd,KAAK;wBACL,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;qBACvB,CAAC,CAAC;oBAEH,oBAAoB;oBACpB,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;wBACtD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;oBACxE,CAAC;gBACH,CAAC;gBAED,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,KAAa;QAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,SAAS;QAQP,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI;YAC/B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI;YACxC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;YACrC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW;YACnC,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;SACtC,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"s3-file-watcher.js","sourceRoot":"","sources":["../../src/services/s3-file-watcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/startup/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2BH;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD/E;AAMD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsB1E;AAiED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6CrE;AAMD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CA+CrD;AAMD;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6F/E;AAMD;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE/E;AAMD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE7E;AAMD;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYxE"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/startup/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA2BH;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD/E;AAMD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAsB1E;AAiED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6CrE;AAMD;;;;;;;;GAQG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAmDrD;AAMD;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6F/E;AAMD;;;;;GAKG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE/E;AAMD;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqE7E;AAMD;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYxE"}
@@ -233,48 +233,68 @@ export async function ensureSandboxId(userId) {
233
233
  * This reads the values from .bashrc and persists them to .env.
234
234
  */
235
235
  export async function ensureAwsConfig() {
236
- const bucketName = process.env.AWS_BUCKET_NAME || "";
237
- const region = process.env.AWS_REGION || "";
238
- if (bucketName && region) {
239
- console.log(`[MIGRATE] AWS config: already set (bucket=${bucketName}, region=${region})`);
240
- return;
241
- }
242
- // Try to read from .bashrc (where costar-backend writes them)
243
- try {
244
- const bashrcPath = "/home/user/.bashrc";
245
- if (!fs.existsSync(bashrcPath)) {
246
- console.log("[MIGRATE] AWS config: no .bashrc found — skipping");
247
- return;
248
- }
249
- const bashrc = fs.readFileSync(bashrcPath, "utf-8");
250
- const envUpdates = {};
251
- if (!bucketName) {
252
- const bucketMatch = bashrc.match(/export AWS_BUCKET_NAME="([^"]+)"/);
253
- if (bucketMatch) {
254
- process.env.AWS_BUCKET_NAME = bucketMatch[1];
255
- envUpdates.AWS_BUCKET_NAME = bucketMatch[1];
256
- console.log(`[MIGRATE] AWS_BUCKET_NAME: detected from .bashrc → ${bucketMatch[1]}`);
236
+ const envUpdates = {};
237
+ // --- Bucket name & region (from .bashrc) ---
238
+ if (!process.env.AWS_BUCKET_NAME || !process.env.AWS_REGION) {
239
+ try {
240
+ const bashrcPath = "/home/user/.bashrc";
241
+ if (fs.existsSync(bashrcPath)) {
242
+ const bashrc = fs.readFileSync(bashrcPath, "utf-8");
243
+ if (!process.env.AWS_BUCKET_NAME) {
244
+ const m = bashrc.match(/export AWS_BUCKET_NAME="([^"]+)"/);
245
+ if (m) {
246
+ process.env.AWS_BUCKET_NAME = m[1];
247
+ envUpdates.AWS_BUCKET_NAME = m[1];
248
+ }
249
+ }
250
+ if (!process.env.AWS_REGION) {
251
+ const m = bashrc.match(/export AWS_REGION="([^"]+)"/);
252
+ if (m) {
253
+ process.env.AWS_REGION = m[1];
254
+ envUpdates.AWS_REGION = m[1];
255
+ }
256
+ }
257
257
  }
258
258
  }
259
- if (!region) {
260
- const regionMatch = bashrc.match(/export AWS_REGION="([^"]+)"/);
261
- if (regionMatch) {
262
- process.env.AWS_REGION = regionMatch[1];
263
- envUpdates.AWS_REGION = regionMatch[1];
264
- console.log(`[MIGRATE] AWS_REGION: detected from .bashrc → ${regionMatch[1]}`);
259
+ catch { /* non-fatal */ }
260
+ }
261
+ // --- Access key & secret (from ~/.aws/credentials or /root/.aws/credentials) ---
262
+ if (!process.env.AWS_ACCESS_KEY_ID || !process.env.AWS_SECRET_ACCESS_KEY) {
263
+ const credsPaths = ["/home/user/.aws/credentials", "/root/.aws/credentials"];
264
+ for (const credsPath of credsPaths) {
265
+ if (!fs.existsSync(credsPath))
266
+ continue;
267
+ try {
268
+ const creds = fs.readFileSync(credsPath, "utf-8");
269
+ if (!process.env.AWS_ACCESS_KEY_ID) {
270
+ const m = creds.match(/aws_access_key_id\s*=\s*(.+)/);
271
+ if (m) {
272
+ process.env.AWS_ACCESS_KEY_ID = m[1].trim();
273
+ envUpdates.AWS_ACCESS_KEY_ID = m[1].trim();
274
+ }
275
+ }
276
+ if (!process.env.AWS_SECRET_ACCESS_KEY) {
277
+ const m = creds.match(/aws_secret_access_key\s*=\s*(.+)/);
278
+ if (m) {
279
+ process.env.AWS_SECRET_ACCESS_KEY = m[1].trim();
280
+ envUpdates.AWS_SECRET_ACCESS_KEY = m[1].trim();
281
+ }
282
+ }
283
+ if (process.env.AWS_ACCESS_KEY_ID && process.env.AWS_SECRET_ACCESS_KEY)
284
+ break;
265
285
  }
266
- }
267
- if (Object.keys(envUpdates).length > 0) {
268
- writeGlobalEnv(envUpdates);
269
- console.log("[MIGRATE] AWS config: persisted to ~/.costar/.env");
270
- }
271
- else {
272
- console.log("[MIGRATE] AWS config: not found in .bashrc");
286
+ catch { /* non-fatal */ }
273
287
  }
274
288
  }
275
- catch (err) {
276
- console.warn("[MIGRATE] AWS config: auto-detection failed (non-fatal):", err);
289
+ if (Object.keys(envUpdates).length > 0) {
290
+ writeGlobalEnv(envUpdates);
291
+ console.log(`[MIGRATE] AWS config: persisted ${Object.keys(envUpdates).join(", ")} to .env`);
277
292
  }
293
+ // Log final state
294
+ const bucket = process.env.AWS_BUCKET_NAME || "";
295
+ const hasKey = !!process.env.AWS_ACCESS_KEY_ID;
296
+ const hasSecret = !!process.env.AWS_SECRET_ACCESS_KEY;
297
+ console.log(`[MIGRATE] AWS config: bucket=${bucket || "unset"}, key=${hasKey ? "set" : "unset"}, secret=${hasSecret ? "set" : "unset"}`);
278
298
  }
279
299
  // ═══════════════════════════════════════════════════════
280
300
  // ACTIVITY MIGRATION: Supabase → Local SQLite
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/startup/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/startup/migrate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * File Tracker — Detect new/modified files and construct S3 URLs
3
+ *
4
+ * Used by tool result enrichment to automatically include S3 URLs
5
+ * when tools create files in /home/user/task/.
6
+ * This ensures the LLM always has correct S3 URLs available,
7
+ * rather than guessing local paths or sandbox:/ prefixes.
8
+ */
9
+ export type TrackedFile = {
10
+ localPath: string;
11
+ relativePath: string;
12
+ s3Url: string;
13
+ size: number;
14
+ };
15
+ /**
16
+ * Construct an S3 URL from a local file path.
17
+ * Returns null if the file is not under TASK_DIR or env vars are missing.
18
+ */
19
+ export declare function constructS3Url(localPath: string): string | null;
20
+ /**
21
+ * Detect files in /home/user/task/ that were created or modified after `sinceMs`.
22
+ * Scans up to `maxDepth` levels deep (default 3) to limit cost.
23
+ * Returns files with S3 URLs.
24
+ */
25
+ export declare function detectNewFiles(sinceMs: number, maxDepth?: number): TrackedFile[];
26
+ /**
27
+ * Build the [Created Files] section to append to tool results.
28
+ * Returns empty string if no new files were found.
29
+ */
30
+ export declare function buildFileSection(files: TrackedFile[]): string;
31
+ //# sourceMappingURL=file-tracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-tracker.d.ts","sourceRoot":"","sources":["../../src/utils/file-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA2BH,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU/D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI,GAAG,WAAW,EAAE,CAkD3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM,CAc7D"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * File Tracker — Detect new/modified files and construct S3 URLs
3
+ *
4
+ * Used by tool result enrichment to automatically include S3 URLs
5
+ * when tools create files in /home/user/task/.
6
+ * This ensures the LLM always has correct S3 URLs available,
7
+ * rather than guessing local paths or sandbox:/ prefixes.
8
+ */
9
+ import fs from "node:fs";
10
+ import path from "node:path";
11
+ const TASK_DIR = "/home/user/task";
12
+ /** Ignore patterns for file scanning */
13
+ const IGNORE_DIRS = new Set([
14
+ "node_modules",
15
+ ".git",
16
+ "__pycache__",
17
+ "dist",
18
+ ".next",
19
+ ".cache",
20
+ ".venv",
21
+ "venv",
22
+ ".bin",
23
+ ]);
24
+ const IGNORE_FILES = new Set([
25
+ "package-lock.json",
26
+ "yarn.lock",
27
+ "pnpm-lock.yaml",
28
+ ".DS_Store",
29
+ ]);
30
+ /**
31
+ * Construct an S3 URL from a local file path.
32
+ * Returns null if the file is not under TASK_DIR or env vars are missing.
33
+ */
34
+ export function constructS3Url(localPath) {
35
+ const bucket = process.env.AWS_BUCKET_NAME;
36
+ const region = process.env.AWS_REGION || "us-east-2";
37
+ const sandboxId = process.env.SANDBOX_ID || process.env.COSTAR_SANDBOX_ID;
38
+ if (!bucket || !sandboxId)
39
+ return null;
40
+ if (!localPath.startsWith(TASK_DIR))
41
+ return null;
42
+ const relativePath = path.relative(TASK_DIR, localPath);
43
+ return `https://${bucket}.s3.${region}.amazonaws.com/${sandboxId}/${relativePath}`;
44
+ }
45
+ /**
46
+ * Detect files in /home/user/task/ that were created or modified after `sinceMs`.
47
+ * Scans up to `maxDepth` levels deep (default 3) to limit cost.
48
+ * Returns files with S3 URLs.
49
+ */
50
+ export function detectNewFiles(sinceMs, maxDepth = 3) {
51
+ const bucket = process.env.AWS_BUCKET_NAME;
52
+ const region = process.env.AWS_REGION || "us-east-2";
53
+ const sandboxId = process.env.SANDBOX_ID || process.env.COSTAR_SANDBOX_ID;
54
+ if (!bucket || !sandboxId)
55
+ return [];
56
+ if (!fs.existsSync(TASK_DIR))
57
+ return [];
58
+ const results = [];
59
+ function scan(dir, depth) {
60
+ if (depth > maxDepth)
61
+ return;
62
+ let entries;
63
+ try {
64
+ entries = fs.readdirSync(dir, { withFileTypes: true });
65
+ }
66
+ catch {
67
+ return;
68
+ }
69
+ for (const entry of entries) {
70
+ if (entry.isDirectory()) {
71
+ if (IGNORE_DIRS.has(entry.name))
72
+ continue;
73
+ scan(path.join(dir, entry.name), depth + 1);
74
+ }
75
+ else if (entry.isFile()) {
76
+ if (IGNORE_FILES.has(entry.name))
77
+ continue;
78
+ const fullPath = path.join(dir, entry.name);
79
+ try {
80
+ const stat = fs.statSync(fullPath);
81
+ // Check if modified after sinceMs (use max of mtime and birthtime)
82
+ const fileTime = Math.max(stat.mtimeMs, stat.birthtimeMs);
83
+ if (fileTime >= sinceMs) {
84
+ const relativePath = path.relative(TASK_DIR, fullPath);
85
+ results.push({
86
+ localPath: fullPath,
87
+ relativePath,
88
+ s3Url: `https://${bucket}.s3.${region}.amazonaws.com/${sandboxId}/${relativePath}`,
89
+ size: stat.size,
90
+ });
91
+ }
92
+ }
93
+ catch {
94
+ // Skip files we can't stat
95
+ }
96
+ }
97
+ }
98
+ }
99
+ scan(TASK_DIR, 0);
100
+ return results;
101
+ }
102
+ /**
103
+ * Build the [Created Files] section to append to tool results.
104
+ * Returns empty string if no new files were found.
105
+ */
106
+ export function buildFileSection(files) {
107
+ if (files.length === 0)
108
+ return "";
109
+ const lines = ["\n\n[Created/Modified Files]"];
110
+ for (const f of files) {
111
+ const sizeKb = Math.round(f.size / 1024);
112
+ lines.push(`- ${f.relativePath} (${sizeKb}KB) → ${f.s3Url}`);
113
+ }
114
+ lines.push("", "Use these S3 URLs when sharing files with the user (in messages or complete_task content blocks).", 'Example content block: {"type": "file", "data": {"url": "<S3_URL>", "name": "<filename>"}}');
115
+ return lines.join("\n");
116
+ }
117
+ //# sourceMappingURL=file-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-tracker.js","sourceRoot":"","sources":["../../src/utils/file-tracker.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@farazirfan/costar-server-executor",
3
- "version": "1.7.65",
3
+ "version": "1.7.67",
4
4
  "description": "CoStar Server Executor - 24/7 autonomous agent in TypeScript (cloned from OpenClaw)",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",