@tyvm/knowhow 0.0.127 → 0.0.128
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.
package/package.json
CHANGED
|
@@ -271,6 +271,20 @@ export async function execCommand(
|
|
|
271
271
|
const toolService = (
|
|
272
272
|
this instanceof ToolsService ? this : services().Tools
|
|
273
273
|
) as ToolsService;
|
|
274
|
+
|
|
275
|
+
// Detect suspiciously small timeout values — agents often pass seconds instead of ms.
|
|
276
|
+
// Any value < 100 is almost certainly a mistake (100ms is still very fast for a shell cmd).
|
|
277
|
+
// We auto-correct to seconds and include a warning in the output so the agent learns.
|
|
278
|
+
let correctedTimeout = timeout;
|
|
279
|
+
let timeoutWarning = "";
|
|
280
|
+
if (timeout !== undefined && timeout !== -1 && timeout < 100) {
|
|
281
|
+
correctedTimeout = timeout * 1000;
|
|
282
|
+
timeoutWarning =
|
|
283
|
+
`⚠️ Warning: timeout was ${timeout}ms which is extremely small and likely a mistake. ` +
|
|
284
|
+
`The timeout unit is milliseconds, not seconds. ` +
|
|
285
|
+
`Auto-corrected to ${correctedTimeout}ms (${timeout}s).\n\n`;
|
|
286
|
+
}
|
|
287
|
+
|
|
274
288
|
const context = toolService.getContext();
|
|
275
289
|
|
|
276
290
|
// Emit pre-run blocking event — handlers can throw to block the command
|
|
@@ -285,7 +299,7 @@ export async function execCommand(
|
|
|
285
299
|
|
|
286
300
|
const { stdout, stderr, timedOut, killed, pid, logPath } =
|
|
287
301
|
await execWithTimeout(command, {
|
|
288
|
-
timeout,
|
|
302
|
+
timeout: correctedTimeout,
|
|
289
303
|
continueInBackground,
|
|
290
304
|
logFileName,
|
|
291
305
|
});
|
|
@@ -302,8 +316,8 @@ export async function execCommand(
|
|
|
302
316
|
})`
|
|
303
317
|
: "";
|
|
304
318
|
|
|
305
|
-
const lines = output.split("\n");
|
|
306
319
|
/*
|
|
320
|
+
*const lines = output.split("\n");
|
|
307
321
|
*const maxLines = 1000;
|
|
308
322
|
*const maxChars = 40000;
|
|
309
323
|
*const trimmed = (lines.length > maxLines ? lines.slice(0, maxLines) : lines)
|
|
@@ -342,5 +356,5 @@ export async function execCommand(
|
|
|
342
356
|
"\n\nAdditional Information:\n" + JSON.stringify(eventResults, null, 2);
|
|
343
357
|
}
|
|
344
358
|
|
|
345
|
-
return result + eventResultsText;
|
|
359
|
+
return timeoutWarning + result + eventResultsText;
|
|
346
360
|
};
|
package/ts_build/package.json
CHANGED
|
@@ -232,6 +232,15 @@ async function execCommand(command, timeout, continueInBackground, logFileName)
|
|
|
232
232
|
throw new Error("Invalid command. We received a non-string value. Please ensure you are sending strings of 4k tokens or less.");
|
|
233
233
|
}
|
|
234
234
|
const toolService = (this instanceof services_1.ToolsService ? this : (0, services_1.services)().Tools);
|
|
235
|
+
let correctedTimeout = timeout;
|
|
236
|
+
let timeoutWarning = "";
|
|
237
|
+
if (timeout !== undefined && timeout !== -1 && timeout < 100) {
|
|
238
|
+
correctedTimeout = timeout * 1000;
|
|
239
|
+
timeoutWarning =
|
|
240
|
+
`⚠️ Warning: timeout was ${timeout}ms which is extremely small and likely a mistake. ` +
|
|
241
|
+
`The timeout unit is milliseconds, not seconds. ` +
|
|
242
|
+
`Auto-corrected to ${correctedTimeout}ms (${timeout}s).\n\n`;
|
|
243
|
+
}
|
|
235
244
|
const context = toolService.getContext();
|
|
236
245
|
if (context.Events) {
|
|
237
246
|
await context.Events.emitBlocking("exec:pre-run", {
|
|
@@ -242,7 +251,7 @@ async function execCommand(command, timeout, continueInBackground, logFileName)
|
|
|
242
251
|
});
|
|
243
252
|
}
|
|
244
253
|
const { stdout, stderr, timedOut, killed, pid, logPath } = await execWithTimeout(command, {
|
|
245
|
-
timeout,
|
|
254
|
+
timeout: correctedTimeout,
|
|
246
255
|
continueInBackground,
|
|
247
256
|
logFileName,
|
|
248
257
|
});
|
|
@@ -256,7 +265,6 @@ async function execCommand(command, timeout, continueInBackground, logFileName)
|
|
|
256
265
|
? " (killed due to timeout)"
|
|
257
266
|
: ` (timed out, still running${pid ? `, pid=${pid}` : ""}${logPath ? `, logs=${logPath}` : ""})`
|
|
258
267
|
: "";
|
|
259
|
-
const lines = output.split("\n");
|
|
260
268
|
const result = `$ ${command}${statusMsg}\n${output}`;
|
|
261
269
|
let eventResults = [];
|
|
262
270
|
if (context.Events) {
|
|
@@ -279,7 +287,7 @@ async function execCommand(command, timeout, continueInBackground, logFileName)
|
|
|
279
287
|
eventResultsText =
|
|
280
288
|
"\n\nAdditional Information:\n" + JSON.stringify(eventResults, null, 2);
|
|
281
289
|
}
|
|
282
|
-
return result + eventResultsText;
|
|
290
|
+
return timeoutWarning + result + eventResultsText;
|
|
283
291
|
}
|
|
284
292
|
;
|
|
285
293
|
//# sourceMappingURL=execCommand.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execCommand.js","sourceRoot":"","sources":["../../../../src/agents/tools/execCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmQA,
|
|
1
|
+
{"version":3,"file":"execCommand.js","sourceRoot":"","sources":["../../../../src/agents/tools/execCommand.ts"],"names":[],"mappings":"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"}
|