@markusylisiurunen/tau 0.2.17 → 0.2.18
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/README.md +11 -2
- package/dist/core/commands/registry.js +6 -6
- package/dist/core/commands/registry.js.map +1 -1
- package/dist/core/prompts.js +3 -1
- package/dist/core/prompts.js.map +1 -1
- package/dist/core/tools/bash.js +114 -130
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.js +11 -17
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/execution_backend.js +31 -59
- package/dist/core/tools/execution_backend.js.map +1 -1
- package/dist/core/tools/grep.js +36 -87
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/list.js +20 -45
- package/dist/core/tools/list.js.map +1 -1
- package/dist/core/tools/read.js +35 -55
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/registry.js.map +1 -1
- package/dist/core/tools/sandbox/docker_sandbox.js +2 -0
- package/dist/core/tools/sandbox/docker_sandbox.js.map +1 -1
- package/dist/core/tools/send_input_to_agent.js +1 -0
- package/dist/core/tools/send_input_to_agent.js.map +1 -1
- package/dist/core/tools/spawn_agent.js +1 -0
- package/dist/core/tools/spawn_agent.js.map +1 -1
- package/dist/core/tools/subagent_ui.js +5 -2
- package/dist/core/tools/subagent_ui.js.map +1 -1
- package/dist/core/tools/terminate_agent.js +1 -0
- package/dist/core/tools/terminate_agent.js.map +1 -1
- package/dist/core/tools/view_image.js +10 -16
- package/dist/core/tools/view_image.js.map +1 -1
- package/dist/core/tools/wait_for_agent.js +32 -35
- package/dist/core/tools/wait_for_agent.js.map +1 -1
- package/dist/core/tools/web_fetch.js +21 -8
- package/dist/core/tools/web_fetch.js.map +1 -1
- package/dist/core/tools/web_search.js +21 -8
- package/dist/core/tools/web_search.js.map +1 -1
- package/dist/core/tools/write.js +9 -21
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/utils/spawn_capture.js +60 -15
- package/dist/core/utils/spawn_capture.js.map +1 -1
- package/dist/core/utils/tool_preview.js +32 -4
- package/dist/core/utils/tool_preview.js.map +1 -1
- package/dist/core/utils/truncate.js +87 -48
- package/dist/core/utils/truncate.js.map +1 -1
- package/dist/core/version.js +1 -1
- package/dist/tui/chat_controller.js +6 -7
- package/dist/tui/chat_controller.js.map +1 -1
- package/dist/tui/ui/tool_ui_registry.js +2 -0
- package/dist/tui/ui/tool_ui_registry.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -282,8 +282,8 @@ tau supports slash commands for common actions:
|
|
|
282
282
|
| `/checkpoint` | save a checkpoint file for loading later |
|
|
283
283
|
| `/reload` | reload personas, prompts, skills, and themes from disk |
|
|
284
284
|
| `/cd <path>` | change the working directory |
|
|
285
|
-
| `/compact:only-summary`
|
|
286
|
-
| `/compact:with-last-turn`
|
|
285
|
+
| `/compact:only-summary [prompt]` | compress history and continue with a summary |
|
|
286
|
+
| `/compact:with-last-turn [prompt]` | compress history but keep the last exchange |
|
|
287
287
|
| `/prune:earliest-first [fraction]` | prune tool results from the start of the session |
|
|
288
288
|
| `/prune:largest-first [fraction]` | prune largest tool results first |
|
|
289
289
|
| `/persona:<id>` | switch to a different persona |
|
|
@@ -490,6 +490,15 @@ the model sees your messages, any file contents you've shared, and the results o
|
|
|
490
490
|
|
|
491
491
|
tool calls are displayed in the UI so you can see exactly what the model is doing. use `ctrl+o` to toggle between compact and detailed views.
|
|
492
492
|
|
|
493
|
+
## tool output truncation
|
|
494
|
+
|
|
495
|
+
tool output is truncated using a `bytes / 6` token heuristic (shown as `…N tokens truncated…`).
|
|
496
|
+
|
|
497
|
+
- **bash (assistant)**: 4,096 token limit. if output exceeds this and `maxOutputTokens` is unset, output is middle-truncated to a 512-token gated preview. re-run with `maxOutputTokens` set to 4,096-16,384; if the user explicitly requests more, it may be set up to 65,536 (user requests are checked). bash captures the last 1MB of output.
|
|
498
|
+
- **bash (user `!`)**: 65,536 token limit.
|
|
499
|
+
- **read/grep**: capture the first 1MB of output, then cap to 8,192 tokens by keeping the start and truncating the tail, with a note to read smaller chunks or narrow the search.
|
|
500
|
+
- **web_search/web_fetch**: large responses are middle-truncated to their token limits (8,192 / 16,384 tokens).
|
|
501
|
+
|
|
493
502
|
## creating a release
|
|
494
503
|
|
|
495
504
|
publishing to npm happens automatically via github actions when a github release is published.
|
|
@@ -187,7 +187,7 @@ export function createCommandRegistry() {
|
|
|
187
187
|
});
|
|
188
188
|
registry.register({
|
|
189
189
|
id: "compactOnlySummary",
|
|
190
|
-
usage: "/compact:only-summary",
|
|
190
|
+
usage: "/compact:only-summary [prompt]",
|
|
191
191
|
description: "summarize and start new session",
|
|
192
192
|
autocompleteDescription: "compact history to a summary",
|
|
193
193
|
argument: "none",
|
|
@@ -202,7 +202,7 @@ export function createCommandRegistry() {
|
|
|
202
202
|
});
|
|
203
203
|
registry.register({
|
|
204
204
|
id: "compactSummaryAndLastTurn",
|
|
205
|
-
usage: "/compact:with-last-turn",
|
|
205
|
+
usage: "/compact:with-last-turn [prompt]",
|
|
206
206
|
description: "summarize and include previous last turn",
|
|
207
207
|
autocompleteDescription: "compact history, keep last turn",
|
|
208
208
|
argument: "none",
|
|
@@ -217,7 +217,7 @@ export function createCommandRegistry() {
|
|
|
217
217
|
});
|
|
218
218
|
registry.register({
|
|
219
219
|
id: "pruneEarliestFirst",
|
|
220
|
-
usage: "/prune:earliest-first [
|
|
220
|
+
usage: "/prune:earliest-first [frac]",
|
|
221
221
|
description: "prune earliest tool results from context",
|
|
222
222
|
autocompleteDescription: "prune earliest tool results",
|
|
223
223
|
argument: "none",
|
|
@@ -232,7 +232,7 @@ export function createCommandRegistry() {
|
|
|
232
232
|
});
|
|
233
233
|
registry.register({
|
|
234
234
|
id: "pruneLargestFirst",
|
|
235
|
-
usage: "/prune:largest-first [
|
|
235
|
+
usage: "/prune:largest-first [frac]",
|
|
236
236
|
description: "prune largest tool results from context",
|
|
237
237
|
autocompleteDescription: "prune largest tool results",
|
|
238
238
|
argument: "none",
|
|
@@ -248,8 +248,8 @@ export function createCommandRegistry() {
|
|
|
248
248
|
registry.register({
|
|
249
249
|
id: "reload",
|
|
250
250
|
usage: "/reload",
|
|
251
|
-
description: "reload prompts, skills, themes, bash commands, and AGENTS.md
|
|
252
|
-
autocompleteDescription: "reload prompts, skills, themes, bash commands, and AGENTS.md
|
|
251
|
+
description: "reload prompts, skills, themes, bash commands, and AGENTS.md",
|
|
252
|
+
autocompleteDescription: "reload prompts, skills, themes, bash commands, and AGENTS.md",
|
|
253
253
|
argument: "none",
|
|
254
254
|
section: "base",
|
|
255
255
|
parse: (raw) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/commands/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/core/commands/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/core/prompts.js
CHANGED
|
@@ -152,6 +152,8 @@ What to review: {{review_scope}}
|
|
|
152
152
|
|
|
153
153
|
Read the diff carefully. When you need more context (surrounding code, related functions, type definitions), use additional commands: \`cat\`, \`rg\`, \`sed -n '<start>,<end>p'\`, or similar. Fetch only what you need to evaluate the change. If referenced code falls outside what you can access, note that gap; a missing expected change often indicates a bug.
|
|
154
154
|
|
|
155
|
+
When you run the diff command, set the bash tool's max output tokens limit to 32768. Large diffs are expected here.
|
|
156
|
+
|
|
155
157
|
## What to flag
|
|
156
158
|
|
|
157
159
|
Flag an issue only when it meets all of these criteria:
|
|
@@ -210,7 +212,7 @@ function getCodeReviewTemplateWithScope(scope) {
|
|
|
210
212
|
}
|
|
211
213
|
const TEMPLATE_COMMIT = [
|
|
212
214
|
"Please commit my staged changes.",
|
|
213
|
-
"Run `git diff --staged` to see what's there, and if nothing is staged, just tell me and stop.",
|
|
215
|
+
"Run `git diff --staged` (set max output tokens to 32768) to see what's there, and if nothing is staged, just tell me and stop.",
|
|
214
216
|
"Write a commit message that uses imperative mood, stays lowercase except for proper nouns, skips trailing punctuation, and omits conventional prefixes like `feat:` or `fix:`.",
|
|
215
217
|
"Keep it to a single line under 90 characters that summarizes everything staged.",
|
|
216
218
|
'Run `git commit -m "<message>"` immediately after.',
|
package/dist/core/prompts.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/core/prompts.ts"],"names":[],"mappings":"AAOA,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoF/B,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDrB,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,oBAAoB,GAAG
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/core/prompts.ts"],"names":[],"mappings":"AAOA,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoF/B,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDrB,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,oBAAoB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqE5B,CAAC,IAAI,EAAE,CAAC;AAET,SAAS,8BAA8B,CAAC,KAAa;IACnD,OAAO,oBAAoB,CAAC,UAAU,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,eAAe,GAAG;IACtB,kCAAkC;IAClC,gIAAgI;IAChI,gLAAgL;IAChL,iFAAiF;IACjF,oDAAoD;IACpD,0EAA0E;IAC1E,+CAA+C;CAChD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,MAAM,CAAC,MAAM,OAAO,GAAqB;IACvC;QACE,EAAE,EAAE,QAAQ;QACZ,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,uEAAuE;QACpF,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,gCAAgC;QACvC,WAAW,EAAE,6BAA6B;QAC1C,QAAQ,EAAE,uBAAuB;KAClC;IACD;QACE,EAAE,EAAE,MAAM;QACV,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,iEAAiE;QAC9E,QAAQ,EAAE,aAAa;KACxB;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,KAAK,EAAE,gCAAgC;QACvC,WAAW,EAAE,wDAAwD;QACrE,QAAQ,EAAE,8BAA8B,CAAC,qBAAqB,CAAC;KAChE;IACD;QACE,EAAE,EAAE,eAAe;QACnB,KAAK,EAAE,+BAA+B;QACtC,WAAW,EAAE,uDAAuD;QACpE,QAAQ,EAAE,8BAA8B,CAAC,oBAAoB,CAAC;KAC/D;IACD;QACE,EAAE,EAAE,oBAAoB;QACxB,KAAK,EAAE,mCAAmC;QAC1C,WAAW,EAAE,2DAA2D;QACxE,QAAQ,EAAE,8BAA8B,CAAC,wBAAwB,CAAC;KACnE;CACF,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AAC1C,CAAC"}
|
package/dist/core/tools/bash.js
CHANGED
|
@@ -2,19 +2,40 @@ import { Type } from "@sinclair/typebox";
|
|
|
2
2
|
import stripAnsi from "strip-ansi";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { createToolError, createToolResult } from "../utils/messages.js";
|
|
5
|
-
import { formatTokenEstimate } from "../utils/token.js";
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
5
|
+
import { bytesToTokens, formatTokenEstimate } from "../utils/token.js";
|
|
6
|
+
import { buildHeadTailPreviewLines } from "../utils/tool_preview.js";
|
|
7
|
+
import { formatBytes, TRUNCATION_MARKER, truncateForTokens, } from "../utils/truncate.js";
|
|
8
|
+
const BASH_MODEL_DEFAULT_MAX_TOKENS = 4096;
|
|
9
|
+
const BASH_MODEL_DEFAULT_PREVIEW_TOKENS = 512;
|
|
10
|
+
const BASH_MODEL_MAX_AUTONOMOUS_TOKENS = 16384;
|
|
11
|
+
const BASH_MAX_OUTPUT_TOKENS = 65536;
|
|
12
|
+
const BASH_USER_MAX_TOKENS = BASH_MAX_OUTPUT_TOKENS;
|
|
13
|
+
const BASH_MODEL_DEFAULT_POLICY = {
|
|
14
|
+
maxTokens: BASH_MODEL_DEFAULT_MAX_TOKENS,
|
|
15
|
+
gateOnExcess: true,
|
|
16
|
+
previewTokens: BASH_MODEL_DEFAULT_PREVIEW_TOKENS,
|
|
17
|
+
};
|
|
18
|
+
const BASH_USER_POLICY = {
|
|
19
|
+
maxTokens: BASH_USER_MAX_TOKENS,
|
|
20
|
+
};
|
|
21
|
+
function clampOutputTokens(value) {
|
|
22
|
+
if (value === undefined || !Number.isFinite(value))
|
|
23
|
+
return undefined;
|
|
24
|
+
return Math.min(Math.max(value, BASH_MODEL_DEFAULT_MAX_TOKENS), BASH_MAX_OUTPUT_TOKENS);
|
|
25
|
+
}
|
|
26
|
+
export function getBashOutputPolicy(args) {
|
|
27
|
+
if (args.mode === "user") {
|
|
28
|
+
return BASH_USER_POLICY;
|
|
29
|
+
}
|
|
30
|
+
if (args.hasMaxOutputTokens) {
|
|
31
|
+
const maxTokens = clampOutputTokens(args.maxOutputTokens) ?? BASH_MODEL_DEFAULT_MAX_TOKENS;
|
|
32
|
+
return { maxTokens };
|
|
33
|
+
}
|
|
34
|
+
return BASH_MODEL_DEFAULT_POLICY;
|
|
35
|
+
}
|
|
15
36
|
export const BASH_DEFAULT_TIMEOUT_MS = 60_000;
|
|
16
37
|
const BASH_DESCRIPTION = [
|
|
17
|
-
"Execute a shell command in the current working directory and return
|
|
38
|
+
"Execute a shell command in the current working directory and return its output.",
|
|
18
39
|
"Interactive commands are not supported (no TTY/stdin); commands that prompt or open editors will hang or fail.",
|
|
19
40
|
"CRITICAL: Always evaluate and provide an accurate safetyLevel assessment.",
|
|
20
41
|
].join(" ");
|
|
@@ -28,6 +49,13 @@ const BASH_SAFETY_LEVEL_DESCRIPTION = [
|
|
|
28
49
|
].join(" ");
|
|
29
50
|
const BASH_WORKING_DIRECTORY_DESCRIPTION = "Working directory for the command. If omitted, uses the current working directory. Prefer this over `cd` in the command.";
|
|
30
51
|
const BASH_TIMEOUT_DESCRIPTION = "Timeout in milliseconds. If omitted, defaults to 60 seconds. Use a longer timeout for known slow operations like builds or large clones.";
|
|
52
|
+
const BASH_MAX_OUTPUT_TOKENS_DESCRIPTION = [
|
|
53
|
+
"Optional maximum number of output tokens to return to the model.",
|
|
54
|
+
`Leave unset by default. If more output is needed, set a value between ${BASH_MODEL_DEFAULT_MAX_TOKENS} and ${BASH_MODEL_MAX_AUTONOMOUS_TOKENS}.`,
|
|
55
|
+
`Only exceed ${BASH_MODEL_MAX_AUTONOMOUS_TOKENS} when the user explicitly requests more output, up to ${BASH_MAX_OUTPUT_TOKENS}.`,
|
|
56
|
+
`User requests are checked by the system, so do not exceed ${BASH_MODEL_MAX_AUTONOMOUS_TOKENS} autonomously.`,
|
|
57
|
+
`If unset and output exceeds ${BASH_MODEL_DEFAULT_MAX_TOKENS} tokens, the tool returns a ${BASH_MODEL_DEFAULT_PREVIEW_TOKENS}-token preview with a gating notice.`,
|
|
58
|
+
].join(" ");
|
|
31
59
|
export const BASH_TOOL = {
|
|
32
60
|
name: "bash",
|
|
33
61
|
description: BASH_DESCRIPTION,
|
|
@@ -45,63 +73,50 @@ export const BASH_TOOL = {
|
|
|
45
73
|
timeout: Type.Optional(Type.Number({
|
|
46
74
|
description: BASH_TIMEOUT_DESCRIPTION,
|
|
47
75
|
})),
|
|
76
|
+
maxOutputTokens: Type.Optional(Type.Integer({
|
|
77
|
+
description: BASH_MAX_OUTPUT_TOKENS_DESCRIPTION,
|
|
78
|
+
minimum: 1,
|
|
79
|
+
maximum: BASH_MAX_OUTPUT_TOKENS,
|
|
80
|
+
})),
|
|
48
81
|
}, { additionalProperties: false }),
|
|
49
82
|
};
|
|
50
|
-
export function prepareBashOutput(
|
|
51
|
-
const
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
maxTokens: limits.stdout.maxTokens,
|
|
56
|
-
});
|
|
57
|
-
const stderrTrunc = truncateMiddleForModel(cleanStderr, {
|
|
58
|
-
maxLines: limits.stderr.maxLines,
|
|
59
|
-
maxTokens: limits.stderr.maxTokens,
|
|
83
|
+
export function prepareBashOutput(output, captureTruncated, policy) {
|
|
84
|
+
const cleanOutput = stripAnsi(output);
|
|
85
|
+
const maxTruncation = truncateForTokens(cleanOutput, {
|
|
86
|
+
maxTokens: policy.maxTokens,
|
|
87
|
+
strategy: "middle",
|
|
60
88
|
});
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const stderrRawHasOutput = cleanStderr.trim().length > 0;
|
|
74
|
-
if (stdoutRawHasOutput) {
|
|
75
|
-
combinedTotalParts.push(cleanStdout);
|
|
89
|
+
if (policy.gateOnExcess && maxTruncation.truncated) {
|
|
90
|
+
const previewTokens = policy.previewTokens ?? BASH_MODEL_DEFAULT_PREVIEW_TOKENS;
|
|
91
|
+
const previewTruncation = truncateForTokens(cleanOutput, {
|
|
92
|
+
maxTokens: previewTokens,
|
|
93
|
+
strategy: "middle",
|
|
94
|
+
});
|
|
95
|
+
return {
|
|
96
|
+
output: previewTruncation.content,
|
|
97
|
+
model: previewTruncation,
|
|
98
|
+
captureTruncated,
|
|
99
|
+
gated: true,
|
|
100
|
+
};
|
|
76
101
|
}
|
|
77
|
-
if (stderrRawHasOutput) {
|
|
78
|
-
combinedTotalParts.push(`[stderr]\n${cleanStderr}`);
|
|
79
|
-
}
|
|
80
|
-
const combinedTotal = combinedTotalParts.join("\n");
|
|
81
|
-
const modelTruncation = {
|
|
82
|
-
content: combined,
|
|
83
|
-
truncated: stdoutTrunc.truncated || stderrTrunc.truncated,
|
|
84
|
-
truncatedBy: (stdoutTrunc.truncatedBy || stderrTrunc.truncatedBy),
|
|
85
|
-
totalLines: combinedTotal === "" ? 0 : combinedTotal.split("\n").length,
|
|
86
|
-
totalBytes: Buffer.byteLength(combinedTotal, "utf-8"),
|
|
87
|
-
outputLines: combined === "" ? 0 : combined.split("\n").length,
|
|
88
|
-
outputBytes: Buffer.byteLength(combined, "utf-8"),
|
|
89
|
-
maxLines: limits.stdout.maxLines + limits.stderr.maxLines,
|
|
90
|
-
maxTokens: limits.stdout.maxTokens + limits.stderr.maxTokens,
|
|
91
|
-
};
|
|
92
102
|
return {
|
|
93
|
-
output:
|
|
94
|
-
|
|
95
|
-
model: modelTruncation,
|
|
103
|
+
output: maxTruncation.content,
|
|
104
|
+
model: maxTruncation,
|
|
96
105
|
captureTruncated,
|
|
97
106
|
};
|
|
98
107
|
}
|
|
99
108
|
export function formatBashToolResultText(args) {
|
|
100
109
|
const { truncationInfo, exitCode } = args;
|
|
101
|
-
const { model, captureTruncated } = truncationInfo;
|
|
110
|
+
const { model, captureTruncated, gated } = truncationInfo;
|
|
111
|
+
if (gated) {
|
|
112
|
+
const preview = model.content.trimEnd() || "(no output)";
|
|
113
|
+
const gateNote = `\n\n[output gated: this command already ran and any side effects have persisted. if the large output was expected, re-run this bash tool call with maxOutputTokens set (${BASH_MODEL_DEFAULT_MAX_TOKENS}-${BASH_MODEL_MAX_AUTONOMOUS_TOKENS}; up to ${BASH_MAX_OUTPUT_TOKENS} only when the user explicitly requests it). user requests are checked by the system, so do not exceed ${BASH_MODEL_MAX_AUTONOMOUS_TOKENS} autonomously.]`;
|
|
114
|
+
const exitNote = exitCode !== null && exitCode !== 0 ? `\n(exit ${exitCode})` : "";
|
|
115
|
+
return `${preview}${gateNote}${exitNote}`;
|
|
116
|
+
}
|
|
102
117
|
const outputForContext = model.content.trimEnd() || "(no output)";
|
|
103
118
|
const truncNote = model.truncated || captureTruncated
|
|
104
|
-
? `\n\n[output truncated for context: ${model.outputLines} lines / ${model.outputBytes}
|
|
119
|
+
? `\n\n[output truncated for context: ${model.outputLines} lines / ${formatBytes(model.outputBytes)} shown of ${model.totalLines} lines / ${formatBytes(model.totalBytes)} (~${bytesToTokens(model.totalBytes)} tokens)]`
|
|
105
120
|
: "";
|
|
106
121
|
const exitNote = exitCode !== null && exitCode !== 0 ? `\n(exit ${exitCode})` : "";
|
|
107
122
|
return `${outputForContext}${truncNote}${exitNote}`;
|
|
@@ -111,38 +126,13 @@ export function formatBashUserMessageText(args) {
|
|
|
111
126
|
const { model, captureTruncated } = truncationInfo;
|
|
112
127
|
const outputForContext = model.content.trimEnd() || "(no output)";
|
|
113
128
|
const truncNote = model.truncated || captureTruncated
|
|
114
|
-
? `\n\n[output truncated for context: ${model.outputLines} lines / ${model.outputBytes}
|
|
129
|
+
? `\n\n[output truncated for context: ${model.outputLines} lines / ${formatBytes(model.outputBytes)} shown of ${model.totalLines} lines / ${formatBytes(model.totalBytes)} (~${bytesToTokens(model.totalBytes)} tokens)]`
|
|
115
130
|
: "";
|
|
116
131
|
const bashContextText = `$ ${command}\n${outputForContext}${truncNote}`;
|
|
117
132
|
return `Bash command output:\n${bashContextText}`;
|
|
118
133
|
}
|
|
119
134
|
const COMPACT_OUTPUT_HEAD_LINES = 3;
|
|
120
135
|
const COMPACT_OUTPUT_TAIL_LINES = 3;
|
|
121
|
-
const BASH_UI_MAX_LINE_LENGTH = 256;
|
|
122
|
-
function truncateLineToMax(line) {
|
|
123
|
-
if (BASH_UI_MAX_LINE_LENGTH <= 0)
|
|
124
|
-
return "";
|
|
125
|
-
const chars = Array.from(line);
|
|
126
|
-
if (chars.length <= BASH_UI_MAX_LINE_LENGTH)
|
|
127
|
-
return line;
|
|
128
|
-
if (BASH_UI_MAX_LINE_LENGTH === 1)
|
|
129
|
-
return "…";
|
|
130
|
-
return `${chars.slice(0, BASH_UI_MAX_LINE_LENGTH - 1).join("")}…`;
|
|
131
|
-
}
|
|
132
|
-
function buildCompactOutputLines(output, headCount = COMPACT_OUTPUT_HEAD_LINES, tailCount = COMPACT_OUTPUT_TAIL_LINES) {
|
|
133
|
-
const cleaned = output.replace(/\n+$/, "");
|
|
134
|
-
if (cleaned.trim().length === 0)
|
|
135
|
-
return [];
|
|
136
|
-
const lines = cleaned.split("\n");
|
|
137
|
-
const total = lines.length;
|
|
138
|
-
if (total <= headCount + tailCount)
|
|
139
|
-
return lines.map(truncateLineToMax);
|
|
140
|
-
const head = lines.slice(0, headCount).map(truncateLineToMax);
|
|
141
|
-
const tail = lines.slice(Math.max(total - tailCount, headCount)).map(truncateLineToMax);
|
|
142
|
-
const remaining = Math.max(0, total - head.length - tail.length);
|
|
143
|
-
const label = remaining === 1 ? "line" : "lines";
|
|
144
|
-
return [...head, `…${remaining} more ${label}…`, ...tail];
|
|
145
|
-
}
|
|
146
136
|
function formatDurationMs(durationMs) {
|
|
147
137
|
if (durationMs === null || durationMs === undefined || !Number.isFinite(durationMs)) {
|
|
148
138
|
return "?ms";
|
|
@@ -154,54 +144,36 @@ function formatDurationMs(durationMs) {
|
|
|
154
144
|
return `${(ms / 1000).toFixed(1)}s`;
|
|
155
145
|
return `${Math.round(ms / 1000)}s`;
|
|
156
146
|
}
|
|
157
|
-
function formatSizeSummary(lines, bytes) {
|
|
158
|
-
return `${lines} lines (${formatTokenEstimate(bytes)} · ${formatBytes(bytes)})`;
|
|
159
|
-
}
|
|
160
147
|
export function buildBashUiText(args) {
|
|
161
148
|
const { truncationInfo, exitCode, durationMs } = args;
|
|
162
149
|
const { model, captureTruncated } = truncationInfo;
|
|
163
150
|
const previewSource = truncationInfo.output;
|
|
164
|
-
const outputLinesPreview =
|
|
151
|
+
const outputLinesPreview = buildHeadTailPreviewLines(previewSource, {
|
|
152
|
+
headLines: args.previewLines?.head ?? COMPACT_OUTPUT_HEAD_LINES,
|
|
153
|
+
tailLines: args.previewLines?.tail ?? COMPACT_OUTPUT_TAIL_LINES,
|
|
154
|
+
});
|
|
165
155
|
const previewLines = outputLinesPreview.map((line) => ({
|
|
166
156
|
text: line,
|
|
167
157
|
}));
|
|
168
|
-
const
|
|
169
|
-
const
|
|
170
|
-
const
|
|
171
|
-
const outputBytes = showTotals ? model.totalBytes : model.outputBytes;
|
|
158
|
+
const outputLines = model.outputLines;
|
|
159
|
+
const outputBytes = model.outputBytes;
|
|
160
|
+
const hasOutput = outputBytes > 0;
|
|
172
161
|
const exitSummary = exitCode === null ? "exit ?" : `exit ${exitCode}`;
|
|
173
162
|
const durationLabel = formatDurationMs(durationMs);
|
|
174
163
|
const lineLabel = hasOutput ? `${outputLines} line${outputLines === 1 ? "" : "s"}` : "no output";
|
|
175
|
-
const bytesLabel = hasOutput ? formatBytes(outputBytes)
|
|
176
|
-
const tokenLabel = hasOutput ? formatTokenEstimate(outputBytes) :
|
|
177
|
-
const
|
|
178
|
-
? [durationLabel, lineLabel, tokenLabel, bytesLabel]
|
|
179
|
-
: [durationLabel, lineLabel];
|
|
180
|
-
const infoText = infoParts.join(" · ");
|
|
181
|
-
const summaryLine = `${exitSummary} · ${infoText}`;
|
|
182
|
-
const fullLines = [];
|
|
183
|
-
const pushSection = (text) => {
|
|
184
|
-
if (!text)
|
|
185
|
-
return;
|
|
186
|
-
if (fullLines.length > 0) {
|
|
187
|
-
fullLines.push({ text: "" });
|
|
188
|
-
}
|
|
189
|
-
for (const line of text.split("\n")) {
|
|
190
|
-
fullLines.push({ text: line });
|
|
191
|
-
}
|
|
192
|
-
};
|
|
193
|
-
const rawOutput = truncationInfo.rawOutput.trimEnd();
|
|
194
|
-
if (rawOutput) {
|
|
195
|
-
pushSection(rawOutput);
|
|
196
|
-
}
|
|
164
|
+
const bytesLabel = hasOutput ? formatBytes(outputBytes) : undefined;
|
|
165
|
+
const tokenLabel = hasOutput ? formatTokenEstimate(outputBytes) : undefined;
|
|
166
|
+
const summaryParts = [];
|
|
197
167
|
if (model.truncated || captureTruncated) {
|
|
198
|
-
|
|
199
|
-
const total = formatSizeSummary(model.totalLines, model.totalBytes);
|
|
200
|
-
pushSection(`truncated for model: ${shown} of ${total}`);
|
|
168
|
+
summaryParts.push(TRUNCATION_MARKER);
|
|
201
169
|
}
|
|
202
|
-
|
|
203
|
-
|
|
170
|
+
summaryParts.push(exitSummary, durationLabel, lineLabel);
|
|
171
|
+
if (tokenLabel && bytesLabel) {
|
|
172
|
+
summaryParts.push(tokenLabel, bytesLabel);
|
|
204
173
|
}
|
|
174
|
+
const summaryLine = summaryParts.join(" · ");
|
|
175
|
+
const fullText = args.fullText?.trimEnd() ?? "";
|
|
176
|
+
const fullLines = fullText ? fullText.split("\n").map((text) => ({ text })) : [];
|
|
205
177
|
return {
|
|
206
178
|
previewLines,
|
|
207
179
|
statusLine: summaryLine,
|
|
@@ -222,6 +194,7 @@ const bashArgsSchema = z.object({
|
|
|
222
194
|
safetyLevel: z.enum(["read", "write"]).optional().catch(undefined),
|
|
223
195
|
workingDirectory: z.string().trim().optional().catch(undefined),
|
|
224
196
|
timeout: z.number().positive().optional().catch(undefined),
|
|
197
|
+
maxOutputTokens: z.number().int().positive().optional().catch(undefined),
|
|
225
198
|
});
|
|
226
199
|
function parseBashArgs(raw) {
|
|
227
200
|
const parsed = bashArgsSchema.safeParse(raw);
|
|
@@ -231,14 +204,24 @@ function parseBashArgs(raw) {
|
|
|
231
204
|
: undefined;
|
|
232
205
|
const workingDirectory = parsed.success ? parsed.data.workingDirectory : undefined;
|
|
233
206
|
const timeout = parsed.success ? parsed.data.timeout : undefined;
|
|
207
|
+
const maxOutputTokens = parsed.success ? parsed.data.maxOutputTokens : undefined;
|
|
208
|
+
const hasMaxOutputTokens = typeof raw === "object" && raw !== null && "maxOutputTokens" in raw;
|
|
234
209
|
const commandForDisplay = command || "(missing command)";
|
|
235
|
-
return {
|
|
210
|
+
return {
|
|
211
|
+
command,
|
|
212
|
+
safetyLevel,
|
|
213
|
+
workingDirectory,
|
|
214
|
+
timeout,
|
|
215
|
+
maxOutputTokens: clampOutputTokens(maxOutputTokens),
|
|
216
|
+
hasMaxOutputTokens,
|
|
217
|
+
commandForDisplay,
|
|
218
|
+
};
|
|
236
219
|
}
|
|
237
220
|
export function createBashToolDefinition(backend) {
|
|
238
221
|
return {
|
|
239
222
|
schema: BASH_TOOL,
|
|
240
223
|
async dispatch(toolCall, riskLevel, signal) {
|
|
241
|
-
const { command, safetyLevel, workingDirectory, timeout, commandForDisplay } = parseBashArgs(toolCall.arguments);
|
|
224
|
+
const { command, safetyLevel, workingDirectory, timeout, maxOutputTokens, hasMaxOutputTokens, commandForDisplay, } = parseBashArgs(toolCall.arguments);
|
|
242
225
|
const headerTarget = commandForDisplay.split(/\r?\n/)[0] ?? commandForDisplay;
|
|
243
226
|
const blocked = (reason) => {
|
|
244
227
|
const toolResult = createToolError(toolCall, reason);
|
|
@@ -276,25 +259,26 @@ export function createBashToolDefinition(backend) {
|
|
|
276
259
|
run: (async () => {
|
|
277
260
|
try {
|
|
278
261
|
const startedAt = Date.now();
|
|
279
|
-
const {
|
|
262
|
+
const { output, exitCode, truncated: captureTruncated, } = await backend.runBash(command, {
|
|
280
263
|
signal,
|
|
281
264
|
timeoutMs: timeout ?? BASH_DEFAULT_TIMEOUT_MS,
|
|
282
265
|
cwd: workingDirectory,
|
|
283
266
|
});
|
|
284
267
|
const durationMs = Math.max(0, Date.now() - startedAt);
|
|
285
|
-
const
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
},
|
|
290
|
-
stderr: {
|
|
291
|
-
maxLines: BASH_TOOL_MAX_STDERR_LINES,
|
|
292
|
-
maxTokens: BASH_TOOL_MAX_STDERR_TOKENS,
|
|
293
|
-
},
|
|
268
|
+
const outputPolicy = getBashOutputPolicy({
|
|
269
|
+
mode: "model",
|
|
270
|
+
maxOutputTokens,
|
|
271
|
+
hasMaxOutputTokens,
|
|
294
272
|
});
|
|
273
|
+
const truncationInfo = prepareBashOutput(output, captureTruncated, outputPolicy);
|
|
295
274
|
const toolText = formatBashToolResultText({ truncationInfo, exitCode });
|
|
296
275
|
const isError = exitCode === null || exitCode !== 0;
|
|
297
|
-
const uiText = buildBashUiText({
|
|
276
|
+
const uiText = buildBashUiText({
|
|
277
|
+
truncationInfo,
|
|
278
|
+
exitCode,
|
|
279
|
+
durationMs,
|
|
280
|
+
fullText: toolText,
|
|
281
|
+
});
|
|
298
282
|
const toolResult = createToolResult(toolCall, toolText, isError);
|
|
299
283
|
const uiEvent = {
|
|
300
284
|
type: "bash_execution",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../src/core/tools/bash.ts"],"names":[],"mappings":"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"}
|
package/dist/core/tools/edit.js
CHANGED
|
@@ -155,9 +155,11 @@ function buildLineDiff(oldText, newText) {
|
|
|
155
155
|
}
|
|
156
156
|
return { lines, added, removed };
|
|
157
157
|
}
|
|
158
|
+
function formatEditToolResultText(args) {
|
|
159
|
+
return args.summaryLine;
|
|
160
|
+
}
|
|
158
161
|
function buildEditUiText(args) {
|
|
159
|
-
const {
|
|
160
|
-
const { lines: diffLines, added, removed } = buildLineDiff(oldText, newText);
|
|
162
|
+
const { summaryLine, statusLine, diffLines } = args;
|
|
161
163
|
const formatLine = (line) => {
|
|
162
164
|
const text = line;
|
|
163
165
|
if (line.startsWith("+ "))
|
|
@@ -167,10 +169,6 @@ function buildEditUiText(args) {
|
|
|
167
169
|
return { text };
|
|
168
170
|
};
|
|
169
171
|
const previewLines = diffLines.map((line) => formatLine(line));
|
|
170
|
-
const sizeDiff = newLength - oldLength;
|
|
171
|
-
const diffStr = sizeDiff === 0 ? "same size" : sizeDiff > 0 ? `+${sizeDiff} chars` : `${sizeDiff} chars`;
|
|
172
|
-
const summaryLine = `replaced ${oldLength} → ${newLength} chars (${diffStr})`;
|
|
173
|
-
const statusLine = `+${added}, -${removed} · ${summaryLine}`;
|
|
174
172
|
const fullLines = [{ text: summaryLine }];
|
|
175
173
|
if (diffLines.length > 0) {
|
|
176
174
|
fullLines.push({ text: "" }, ...diffLines.map((line) => formatLine(line)));
|
|
@@ -250,18 +248,14 @@ export function createEditToolDefinition(backend) {
|
|
|
250
248
|
const newContent = content.replace(oldText, () => newText);
|
|
251
249
|
try {
|
|
252
250
|
await backend.writeFile(path, newContent);
|
|
253
|
-
const
|
|
254
|
-
const
|
|
255
|
-
const
|
|
256
|
-
const
|
|
257
|
-
const
|
|
251
|
+
const { lines: diffLines, added, removed } = buildLineDiff(oldText, newText);
|
|
252
|
+
const sizeDiff = newText.length - oldText.length;
|
|
253
|
+
const sizeDiffStr = sizeDiff === 0 ? "same size" : sizeDiff > 0 ? `+${sizeDiff} chars` : `${sizeDiff} chars`;
|
|
254
|
+
const summaryLine = `successfully edited ${path}: ${oldText.length} → ${newText.length} chars (${sizeDiffStr})`;
|
|
255
|
+
const statusLine = `+${added}, -${removed} · ${oldText.length} → ${newText.length} chars (${sizeDiffStr})`;
|
|
256
|
+
const resultText = formatEditToolResultText({ summaryLine });
|
|
258
257
|
const toolResult = createToolSuccess(toolCall, resultText);
|
|
259
|
-
const uiText = buildEditUiText({
|
|
260
|
-
oldLength: oldText.length,
|
|
261
|
-
newLength: newText.length,
|
|
262
|
-
oldText,
|
|
263
|
-
newText,
|
|
264
|
-
});
|
|
258
|
+
const uiText = buildEditUiText({ summaryLine, statusLine, diffLines });
|
|
265
259
|
const uiEvent = {
|
|
266
260
|
type: "edit_success",
|
|
267
261
|
path,
|