pi-agent-flow 2.2.32 → 2.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.
- package/agents/craft.md +2 -1
- package/agents/debug.md +2 -1
- package/agents/ideas.md +2 -1
- package/agents/scout.md +1 -0
- package/dist/batch/apply-patch.d.ts.map +1 -1
- package/dist/batch/apply-patch.js +22 -0
- package/dist/batch/apply-patch.js.map +1 -1
- package/dist/batch/batch-bash.d.ts +5 -3
- package/dist/batch/batch-bash.d.ts.map +1 -1
- package/dist/batch/batch-bash.js +6 -13
- package/dist/batch/batch-bash.js.map +1 -1
- package/dist/batch/constants.d.ts +4 -0
- package/dist/batch/constants.d.ts.map +1 -1
- package/dist/batch/constants.js +1 -0
- package/dist/batch/constants.js.map +1 -1
- package/dist/batch/execute.d.ts.map +1 -1
- package/dist/batch/execute.js +117 -4
- package/dist/batch/execute.js.map +1 -1
- package/dist/batch/format-directory-listing.d.ts +26 -0
- package/dist/batch/format-directory-listing.d.ts.map +1 -0
- package/dist/batch/format-directory-listing.js +89 -0
- package/dist/batch/format-directory-listing.js.map +1 -0
- package/dist/batch/fuzzy-edit.d.ts +1 -1
- package/dist/batch/fuzzy-edit.d.ts.map +1 -1
- package/dist/batch/fuzzy-edit.js +53 -17
- package/dist/batch/fuzzy-edit.js.map +1 -1
- package/dist/batch/index.d.ts +6 -68
- package/dist/batch/index.d.ts.map +1 -1
- package/dist/batch/index.js +7 -494
- package/dist/batch/index.js.map +1 -1
- package/dist/batch/summary.d.ts.map +1 -1
- package/dist/batch/summary.js +146 -0
- package/dist/batch/summary.js.map +1 -1
- package/dist/cli/batch-read.d.ts +20 -0
- package/dist/cli/batch-read.d.ts.map +1 -0
- package/dist/cli/batch-read.js +267 -0
- package/dist/cli/batch-read.js.map +1 -0
- package/dist/cli/batch.d.ts +20 -0
- package/dist/cli/batch.d.ts.map +1 -0
- package/dist/cli/batch.js +252 -0
- package/dist/cli/batch.js.map +1 -0
- package/dist/cli/chain.d.ts +24 -0
- package/dist/cli/chain.d.ts.map +1 -0
- package/dist/cli/chain.js +166 -0
- package/dist/cli/chain.js.map +1 -0
- package/dist/cli/exec/bash.d.ts +11 -0
- package/dist/cli/exec/bash.d.ts.map +1 -0
- package/dist/cli/exec/bash.js +63 -0
- package/dist/cli/exec/bash.js.map +1 -0
- package/dist/cli/exec/delete.d.ts +10 -0
- package/dist/cli/exec/delete.d.ts.map +1 -0
- package/dist/cli/exec/delete.js +21 -0
- package/dist/cli/exec/delete.js.map +1 -0
- package/dist/cli/exec/edit.d.ts +10 -0
- package/dist/cli/exec/edit.d.ts.map +1 -0
- package/dist/cli/exec/edit.js +47 -0
- package/dist/cli/exec/edit.js.map +1 -0
- package/dist/cli/exec/index.d.ts +10 -0
- package/dist/cli/exec/index.d.ts.map +1 -0
- package/dist/cli/exec/index.js +10 -0
- package/dist/cli/exec/index.js.map +1 -0
- package/dist/cli/exec/patch.d.ts +10 -0
- package/dist/cli/exec/patch.d.ts.map +1 -0
- package/dist/cli/exec/patch.js +23 -0
- package/dist/cli/exec/patch.js.map +1 -0
- package/dist/cli/exec/poll.d.ts +12 -0
- package/dist/cli/exec/poll.d.ts.map +1 -0
- package/dist/cli/exec/poll.js +59 -0
- package/dist/cli/exec/poll.js.map +1 -0
- package/dist/cli/exec/read.d.ts +10 -0
- package/dist/cli/exec/read.d.ts.map +1 -0
- package/dist/cli/exec/read.js +54 -0
- package/dist/cli/exec/read.js.map +1 -0
- package/dist/cli/exec/rg.d.ts +10 -0
- package/dist/cli/exec/rg.d.ts.map +1 -0
- package/dist/cli/exec/rg.js +32 -0
- package/dist/cli/exec/rg.js.map +1 -0
- package/dist/cli/exec/web.d.ts +13 -0
- package/dist/cli/exec/web.d.ts.map +1 -0
- package/dist/cli/exec/web.js +47 -0
- package/dist/cli/exec/web.js.map +1 -0
- package/dist/cli/exec/write.d.ts +10 -0
- package/dist/cli/exec/write.d.ts.map +1 -0
- package/dist/cli/exec/write.js +26 -0
- package/dist/cli/exec/write.js.map +1 -0
- package/dist/cli/flags/bash.d.ts +3 -0
- package/dist/cli/flags/bash.d.ts.map +1 -0
- package/dist/cli/flags/bash.js +6 -0
- package/dist/cli/flags/bash.js.map +1 -0
- package/dist/cli/flags/delete.d.ts +3 -0
- package/dist/cli/flags/delete.d.ts.map +1 -0
- package/dist/cli/flags/delete.js +2 -0
- package/dist/cli/flags/delete.js.map +1 -0
- package/dist/cli/flags/edit.d.ts +3 -0
- package/dist/cli/flags/edit.d.ts.map +1 -0
- package/dist/cli/flags/edit.js +7 -0
- package/dist/cli/flags/edit.js.map +1 -0
- package/dist/cli/flags/index.d.ts +10 -0
- package/dist/cli/flags/index.d.ts.map +1 -0
- package/dist/cli/flags/index.js +10 -0
- package/dist/cli/flags/index.js.map +1 -0
- package/dist/cli/flags/patch.d.ts +3 -0
- package/dist/cli/flags/patch.d.ts.map +1 -0
- package/dist/cli/flags/patch.js +4 -0
- package/dist/cli/flags/patch.js.map +1 -0
- package/dist/cli/flags/poll.d.ts +3 -0
- package/dist/cli/flags/poll.d.ts.map +1 -0
- package/dist/cli/flags/poll.js +4 -0
- package/dist/cli/flags/poll.js.map +1 -0
- package/dist/cli/flags/read.d.ts +3 -0
- package/dist/cli/flags/read.d.ts.map +1 -0
- package/dist/cli/flags/read.js +6 -0
- package/dist/cli/flags/read.js.map +1 -0
- package/dist/cli/flags/rg.d.ts +3 -0
- package/dist/cli/flags/rg.d.ts.map +1 -0
- package/dist/cli/flags/rg.js +9 -0
- package/dist/cli/flags/rg.js.map +1 -0
- package/dist/cli/flags/web.d.ts +3 -0
- package/dist/cli/flags/web.d.ts.map +1 -0
- package/dist/cli/flags/web.js +6 -0
- package/dist/cli/flags/web.js.map +1 -0
- package/dist/cli/flags/write.d.ts +3 -0
- package/dist/cli/flags/write.d.ts.map +1 -0
- package/dist/cli/flags/write.js +4 -0
- package/dist/cli/flags/write.js.map +1 -0
- package/dist/cli/flow.d.ts +33 -0
- package/dist/cli/flow.d.ts.map +1 -0
- package/dist/cli/flow.js +345 -0
- package/dist/cli/flow.js.map +1 -0
- package/dist/cli/format.d.ts +12 -0
- package/dist/cli/format.d.ts.map +1 -0
- package/dist/cli/format.js +29 -0
- package/dist/cli/format.js.map +1 -0
- package/dist/cli/help.d.ts +14 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +31 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/parse.d.ts +24 -0
- package/dist/cli/parse.d.ts.map +1 -0
- package/dist/cli/parse.js +165 -0
- package/dist/cli/parse.js.map +1 -0
- package/dist/cli/register.d.ts +73 -0
- package/dist/cli/register.d.ts.map +1 -0
- package/dist/cli/register.js +105 -0
- package/dist/cli/register.js.map +1 -0
- package/dist/cli/tokenize.d.ts +9 -0
- package/dist/cli/tokenize.d.ts.map +1 -0
- package/dist/cli/tokenize.js +80 -0
- package/dist/cli/tokenize.js.map +1 -0
- package/dist/core2/snapshot.d.ts.map +1 -1
- package/dist/core2/snapshot.js +22 -0
- package/dist/core2/snapshot.js.map +1 -1
- package/dist/flow/agents.d.ts +2 -0
- package/dist/flow/agents.d.ts.map +1 -1
- package/dist/flow/agents.js +2 -0
- package/dist/flow/agents.js.map +1 -1
- package/dist/flow/executor.d.ts.map +1 -1
- package/dist/flow/executor.js +1 -0
- package/dist/flow/executor.js.map +1 -1
- package/dist/flow/flow-args.d.ts.map +1 -1
- package/dist/flow/flow-args.js +1 -0
- package/dist/flow/flow-args.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +159 -214
- package/dist/index.js.map +1 -1
- package/dist/steering/flow-prompt.js +2 -2
- package/dist/steering/flow-prompt.js.map +1 -1
- package/dist/steering/sliding-prompt.d.ts.map +1 -1
- package/dist/steering/sliding-prompt.js +9 -20
- package/dist/steering/sliding-prompt.js.map +1 -1
- package/dist/tools/ask-user.d.ts +1 -4
- package/dist/tools/ask-user.d.ts.map +1 -1
- package/dist/tools/ask-user.js +7 -33
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/trace.d.ts +12 -6
- package/dist/tools/trace.d.ts.map +1 -1
- package/dist/tools/trace.js +157 -163
- package/dist/tools/trace.js.map +1 -1
- package/dist/tools/web-ops.d.ts +40 -0
- package/dist/tools/web-ops.d.ts.map +1 -1
- package/dist/tools/web-ops.js +2 -2
- package/dist/tools/web-ops.js.map +1 -1
- package/package.json +1 -1
package/dist/tools/trace.js
CHANGED
|
@@ -1,171 +1,112 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Trace tool — standalone quick verbatim reads and checks.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
* nested dispatch ops as siblings in the `flow[]` array instead of inside
|
|
6
|
-
* a task object. Trace is self-defining (agents/trace.md already
|
|
7
|
-
* contains the full mission), so it needs zero required fields.
|
|
4
|
+
* Bash-style CLI: single `cmd` field with optional flags and pre-flight dispatch.
|
|
8
5
|
*/
|
|
9
6
|
import { Type } from "@sinclair/typebox";
|
|
10
7
|
import { runFlowWithLiveSession } from "../flow/flow-live.js";
|
|
11
|
-
import { discoverFlows
|
|
8
|
+
import { discoverFlows } from "../flow/agents.js";
|
|
12
9
|
import { buildSnapshotWithCompression, parseSharedContext } from "../core2/snapshot.js";
|
|
13
10
|
import { resolveFlowModelCandidates, resolveModelContextWindow, selectFlowModelStrategy, } from "../config/config.js";
|
|
14
11
|
import { renderFlowCall, renderFlowResult } from "../tui/render.js";
|
|
15
12
|
import { getFlowLiveState } from "../tui/flow-live-state.js";
|
|
16
13
|
import { DEFAULT_FLOW_COLORS } from "../tui/flow-colors.js";
|
|
17
14
|
import { getFlowOutput } from "../types/flow.js";
|
|
18
|
-
import { executeOperations } from "../batch/execute.js";
|
|
19
|
-
import { runBashWithLimits } from "../batch/batch-bash.js";
|
|
20
15
|
import { logWarn } from "../config/log.js";
|
|
21
|
-
import { runWebOps } from "./web-ops.js";
|
|
22
|
-
import { BASH_DEFAULT_TIMEOUT_MS } from "../batch/constants.js";
|
|
23
16
|
import { extractTraceStructuredOutput, resolveToolEvidence } from "../snapshot/trace-output.js";
|
|
17
|
+
import { runBatchCli } from "../cli/batch.js";
|
|
18
|
+
import { splitOnDoubleDash } from "../cli/chain.js";
|
|
19
|
+
import { tokenize } from "../cli/tokenize.js";
|
|
20
|
+
import { parseCommand, CliError } from "../cli/parse.js";
|
|
24
21
|
// ---------------------------------------------------------------------------
|
|
25
|
-
//
|
|
26
|
-
// circular imports with src/index.ts).
|
|
22
|
+
// Help text
|
|
27
23
|
// ---------------------------------------------------------------------------
|
|
28
|
-
const
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
if (signal?.aborted)
|
|
71
|
-
break;
|
|
72
|
-
const toolCallId = `pre_dispatch_${group.tool}_${toolCallIndex++}`;
|
|
73
|
-
let resultString = "";
|
|
74
|
-
try {
|
|
75
|
-
if (group.tool === "batch") {
|
|
76
|
-
const fileOps = group.ops.filter((op) => op.o !== "bash");
|
|
77
|
-
const bashOps = group.ops.filter((op) => op.o === "bash");
|
|
78
|
-
const subParts = [];
|
|
79
|
-
if (fileOps.length > 0) {
|
|
80
|
-
const fileOutput = await executeOperations(fileOps, cwd, signal, { includeLimitWarnings: true });
|
|
81
|
-
subParts.push(fileOutput.contentText);
|
|
82
|
-
}
|
|
83
|
-
if (bashOps.length > 0) {
|
|
84
|
-
for (const op of bashOps) {
|
|
85
|
-
const { stdout, stderr, exitCode } = await runBashWithLimits(op.c ?? "", op.h ?? cwd, op.t ?? BASH_DEFAULT_TIMEOUT_MS, signal);
|
|
86
|
-
subParts.push(`stdout:\n${stdout}${stderr ? `\nstderr:\n${stderr}` : ""}${exitCode !== 0 ? `\nexitCode: ${exitCode}` : ""}`);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
resultString = subParts.join("\n\n");
|
|
90
|
-
parts.push(`### batch (file ops)\n\ntool_call_id: ${toolCallId}\n\n${resultString}`);
|
|
91
|
-
}
|
|
92
|
-
else if (group.tool === "bash") {
|
|
93
|
-
const subParts = [];
|
|
94
|
-
for (const cmd of group.ops) {
|
|
95
|
-
const { stdout, stderr, exitCode } = await runBashWithLimits(cmd.c, cmd.h ?? cwd, cmd.t ?? BASH_DEFAULT_TIMEOUT_MS, signal);
|
|
96
|
-
subParts.push(`stdout:\n${stdout}${stderr ? `\nstderr:\n${stderr}` : ""}${exitCode !== 0 ? `\nexitCode: ${exitCode}` : ""}`);
|
|
97
|
-
}
|
|
98
|
-
resultString = subParts.join("\n\n");
|
|
99
|
-
parts.push(`### bash\n\ntool_call_id: ${toolCallId}\n\n${resultString}`);
|
|
100
|
-
}
|
|
101
|
-
else if (group.tool === "web") {
|
|
102
|
-
const webOutput = await runWebOps({ op: group.ops }, ctx, signal);
|
|
103
|
-
resultString = webOutput.content[0].text;
|
|
104
|
-
parts.push(`### web\n\ntool_call_id: ${toolCallId}\n\n${resultString}`);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
catch (err) {
|
|
108
|
-
resultString = `Error: ${err instanceof Error ? err.message : String(err)}`;
|
|
109
|
-
parts.push(`### ${group.tool}\n\ntool_call_id: ${toolCallId}\n\n${resultString}`);
|
|
110
|
-
}
|
|
111
|
-
// Add mock messages
|
|
112
|
-
messages.push({
|
|
113
|
-
role: "assistant",
|
|
114
|
-
content: [
|
|
115
|
-
{
|
|
116
|
-
type: "toolCall",
|
|
117
|
-
toolCallId,
|
|
118
|
-
name: group.tool,
|
|
119
|
-
arguments: group.tool === "batch"
|
|
120
|
-
? { o: group.ops }
|
|
121
|
-
: group.tool === "bash"
|
|
122
|
-
? { ops: group.ops }
|
|
123
|
-
: { op: group.ops },
|
|
124
|
-
}
|
|
125
|
-
]
|
|
126
|
-
});
|
|
127
|
-
messages.push({
|
|
128
|
-
role: "tool",
|
|
129
|
-
toolCallId,
|
|
130
|
-
content: [
|
|
131
|
-
{
|
|
132
|
-
type: "text",
|
|
133
|
-
text: resultString,
|
|
134
|
-
}
|
|
135
|
-
]
|
|
136
|
-
});
|
|
24
|
+
const TRACE_HELP = `trace — read-first investigation tool
|
|
25
|
+
|
|
26
|
+
USAGE:
|
|
27
|
+
trace [flags] [-- <batch-dispatch>]
|
|
28
|
+
|
|
29
|
+
FLAGS:
|
|
30
|
+
--intent <text> Mission override. Default: trace agent's built-in description.
|
|
31
|
+
--cwd <path> Working directory override. Default: session cwd.
|
|
32
|
+
--complexity <level> snap | simple | moderate | complex | intricate. Default: simple.
|
|
33
|
+
--help, -h Show this help text.
|
|
34
|
+
|
|
35
|
+
DISPATCH:
|
|
36
|
+
Everything after the first top-level \`--\` is a batch-style command.
|
|
37
|
+
Examples:
|
|
38
|
+
trace -- batch read src/index.ts
|
|
39
|
+
trace --intent "verify auth" -- batch read src/auth.ts; batch rg -q "password" src/
|
|
40
|
+
|
|
41
|
+
EXAMPLES:
|
|
42
|
+
trace # default mission, no dispatch
|
|
43
|
+
trace --intent "verify auth" # override mission
|
|
44
|
+
trace --cwd /tmp # override cwd
|
|
45
|
+
trace --complexity moderate # override budget
|
|
46
|
+
trace -- batch read foo.txt # pre-flight read
|
|
47
|
+
trace help # show this help
|
|
48
|
+
`;
|
|
49
|
+
// ---------------------------------------------------------------------------
|
|
50
|
+
// Flag spec
|
|
51
|
+
// ---------------------------------------------------------------------------
|
|
52
|
+
const TRACE_FLAG_SPEC = {
|
|
53
|
+
intent: { short: "i", type: "string", description: "Mission override" },
|
|
54
|
+
cwd: { type: "string", description: "Working directory override" },
|
|
55
|
+
complexity: { short: "c", type: "string", description: "Budget level: snap, simple, moderate, complex, intricate" },
|
|
56
|
+
help: { short: "h", type: "boolean", description: "Show help" },
|
|
57
|
+
};
|
|
58
|
+
const VALID_COMPLEXITY = ["snap", "simple", "moderate", "complex", "intricate"];
|
|
59
|
+
// ---------------------------------------------------------------------------
|
|
60
|
+
// Command parser
|
|
61
|
+
// ---------------------------------------------------------------------------
|
|
62
|
+
export function parseTraceCmd(cmd) {
|
|
63
|
+
const trimmed = cmd.trim();
|
|
64
|
+
if (trimmed.length === 0 || trimmed === "help" || trimmed === "--help" || trimmed === "-h") {
|
|
65
|
+
return { flags: {}, dispatch: "", help: true };
|
|
137
66
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
67
|
+
const { pre, post } = splitOnDoubleDash(trimmed);
|
|
68
|
+
let tokens = tokenize(pre);
|
|
69
|
+
if (tokens[0] === "trace") {
|
|
70
|
+
tokens.shift();
|
|
71
|
+
}
|
|
72
|
+
if (tokens.length > 0 && (tokens[0] === "help" || tokens[0] === "--help" || tokens[0] === "-h")) {
|
|
73
|
+
return { flags: {}, dispatch: "", help: true };
|
|
74
|
+
}
|
|
75
|
+
if (tokens.length === 0) {
|
|
76
|
+
return { flags: {}, dispatch: post.trim(), help: false };
|
|
77
|
+
}
|
|
78
|
+
// Prepend dummy subcommand so parseCommand can parse flags
|
|
79
|
+
tokens.unshift("trace");
|
|
80
|
+
const parsed = parseCommand(tokens, TRACE_FLAG_SPEC);
|
|
81
|
+
if (parsed.flags.help) {
|
|
82
|
+
return { flags: {}, dispatch: "", help: true };
|
|
83
|
+
}
|
|
84
|
+
const flags = {};
|
|
85
|
+
if (parsed.flags.intent) {
|
|
86
|
+
flags.intent = String(parsed.flags.intent);
|
|
87
|
+
}
|
|
88
|
+
if (parsed.flags.cwd) {
|
|
89
|
+
flags.cwd = String(parsed.flags.cwd);
|
|
90
|
+
}
|
|
91
|
+
if (parsed.flags.complexity) {
|
|
92
|
+
flags.complexity = String(parsed.flags.complexity);
|
|
93
|
+
}
|
|
94
|
+
if (flags.complexity && !VALID_COMPLEXITY.includes(flags.complexity)) {
|
|
95
|
+
throw new CliError(`Invalid complexity: ${flags.complexity}`, `Valid levels: ${VALID_COMPLEXITY.join(", ")}`);
|
|
96
|
+
}
|
|
97
|
+
return { flags, dispatch: post.trim(), help: false };
|
|
142
98
|
}
|
|
143
99
|
// ---------------------------------------------------------------------------
|
|
144
|
-
//
|
|
100
|
+
// Schema
|
|
145
101
|
// ---------------------------------------------------------------------------
|
|
146
|
-
export const
|
|
147
|
-
|
|
148
|
-
description: "Optional
|
|
149
|
-
})
|
|
150
|
-
dispatch: Type.Optional(Type.Array(DispatchOpSchema, {
|
|
151
|
-
description: "Tools to run before the trace starts (results injected into prompt).",
|
|
152
|
-
})),
|
|
153
|
-
cwd: Type.Optional(Type.String({ description: "Working directory override." })),
|
|
154
|
-
complexity: Type.Optional(Type.Union([
|
|
155
|
-
Type.Literal("snap"),
|
|
156
|
-
Type.Literal("simple"),
|
|
157
|
-
Type.Literal("moderate"),
|
|
158
|
-
Type.Literal("complex"),
|
|
159
|
-
Type.Literal("intricate"),
|
|
160
|
-
], { description: "Budget level. Default: simple." })),
|
|
161
|
-
}, {
|
|
162
|
-
title: "TraceToolParams",
|
|
163
|
-
description: "Activate trace mode — read files verbatim, run checks, explore codebase. All fields optional.",
|
|
164
|
-
examples: [
|
|
165
|
-
{},
|
|
166
|
-
{ dispatch: [{ tool: "batch", ops: [{ o: "read", p: "src/main.ts" }] }] },
|
|
167
|
-
],
|
|
102
|
+
export const TraceCliParams = Type.Object({
|
|
103
|
+
cmd: Type.String({
|
|
104
|
+
description: "Trace command. Optional flags (--intent, --cwd, --complexity) followed by optional pre-flight dispatch after `--`. Run with `cmd: 'help'` for the man page.",
|
|
105
|
+
}),
|
|
168
106
|
});
|
|
107
|
+
// ---------------------------------------------------------------------------
|
|
108
|
+
// Runtime resolution
|
|
109
|
+
// ---------------------------------------------------------------------------
|
|
169
110
|
function resolveTraceRuntime(opts, traceFlow, ctx, toolCallId, intent) {
|
|
170
111
|
const tier = (traceFlow.tier ?? "lite");
|
|
171
112
|
let selectedStrategy;
|
|
@@ -185,8 +126,6 @@ function resolveTraceRuntime(opts, traceFlow, ctx, toolCallId, intent) {
|
|
|
185
126
|
const maxContextTokens = resolveModelContextWindow(resolvedModel);
|
|
186
127
|
const { snapshot: forkSessionSnapshotJsonl, stats: compressionStats } = buildSnapshotWithCompression(ctx.sessionManager, {
|
|
187
128
|
activeToolCallId: toolCallId,
|
|
188
|
-
tier: traceFlow.tier ?? getFlowTier("trace"),
|
|
189
|
-
compressionProfile: traceFlow.contextProfile,
|
|
190
129
|
compressionLevel: opts.getSettings?.()?.contextCompression,
|
|
191
130
|
}, maxContextTokens);
|
|
192
131
|
const sharedContext = parseSharedContext(forkSessionSnapshotJsonl);
|
|
@@ -202,19 +141,23 @@ function resolveTraceRuntime(opts, traceFlow, ctx, toolCallId, intent) {
|
|
|
202
141
|
intent,
|
|
203
142
|
};
|
|
204
143
|
}
|
|
144
|
+
// ---------------------------------------------------------------------------
|
|
145
|
+
// Tool factory
|
|
146
|
+
// ---------------------------------------------------------------------------
|
|
205
147
|
export function createTraceTool(opts = {}) {
|
|
206
148
|
let lastResolvedModel;
|
|
207
149
|
let lastResolvedMaxCtx;
|
|
150
|
+
let lastResolvedIntent;
|
|
208
151
|
return {
|
|
209
152
|
name: "trace",
|
|
210
153
|
label: "Trace",
|
|
211
154
|
promptSnippet: "Quick verbatim reads, checks, and exploration. All fields optional.",
|
|
212
155
|
promptGuidelines: [
|
|
213
156
|
"All fields optional — the trace agent infers its mission from context.",
|
|
214
|
-
"Optional
|
|
157
|
+
"Optional pre-flight dispatch runs batch-style commands before the trace starts.",
|
|
215
158
|
],
|
|
216
|
-
description: "
|
|
217
|
-
parameters:
|
|
159
|
+
description: "Spawn the `trace` agent for read-first investigation. Pass flags (`--intent`, `--cwd`, `--complexity`) and optional pre-flight ops after `--`. Examples: `trace` • `trace --intent \"verify auth\"` • `trace -- batch read src/auth.ts`. NOT a shell. Defaults to `simple` budget. Use for code investigation, exploration, and verification. Pass [cmd]: \"help\" for the man page.",
|
|
160
|
+
parameters: TraceCliParams,
|
|
218
161
|
async execute(toolCallId, params, signal, onUpdate, ctx) {
|
|
219
162
|
if (!opts.getSettings?.()) {
|
|
220
163
|
throw new Error("Error: session not initialized");
|
|
@@ -222,14 +165,40 @@ export function createTraceTool(opts = {}) {
|
|
|
222
165
|
const depthConfig = opts.getDepthConfig?.();
|
|
223
166
|
const parentDepth = depthConfig?.currentDepth ?? 0;
|
|
224
167
|
const parentFlowStack = depthConfig?.ancestorFlowStack ?? [];
|
|
225
|
-
const maxDepth = 0;
|
|
168
|
+
const maxDepth = 0;
|
|
226
169
|
const preventCycles = depthConfig?.preventCycles ?? true;
|
|
227
170
|
const discovery = discoverFlows(ctx.cwd, "all");
|
|
228
171
|
const traceFlow = discovery.flows.find(f => f.name === "trace");
|
|
229
172
|
if (!traceFlow) {
|
|
230
173
|
throw new Error("Trace agent not found. Expected agents/trace.md to be present.");
|
|
231
174
|
}
|
|
232
|
-
|
|
175
|
+
// Parse the trace command
|
|
176
|
+
let parsed;
|
|
177
|
+
try {
|
|
178
|
+
parsed = parseTraceCmd(params.cmd ?? "");
|
|
179
|
+
}
|
|
180
|
+
catch (err) {
|
|
181
|
+
if (err instanceof CliError) {
|
|
182
|
+
const text = err.hint ? `${err.message} (hint: ${err.hint})` : err.message;
|
|
183
|
+
return {
|
|
184
|
+
content: [{ type: "text", text }],
|
|
185
|
+
details: undefined,
|
|
186
|
+
failed: true,
|
|
187
|
+
_toolCallId: toolCallId,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
throw err;
|
|
191
|
+
}
|
|
192
|
+
// Help response
|
|
193
|
+
if (parsed.help) {
|
|
194
|
+
return {
|
|
195
|
+
content: [{ type: "text", text: TRACE_HELP }],
|
|
196
|
+
details: undefined,
|
|
197
|
+
failed: false,
|
|
198
|
+
_toolCallId: toolCallId,
|
|
199
|
+
};
|
|
200
|
+
}
|
|
201
|
+
const intent = parsed.flags.intent ?? traceFlow.description;
|
|
233
202
|
const runtime = resolveTraceRuntime(opts, traceFlow, ctx, toolCallId, intent);
|
|
234
203
|
const { resolvedModel, maxContextTokens, forkSessionSnapshotJsonl, sharedContext, compressionStats, } = runtime;
|
|
235
204
|
const makeDetails = (results) => ({
|
|
@@ -241,11 +210,37 @@ export function createTraceTool(opts = {}) {
|
|
|
241
210
|
});
|
|
242
211
|
lastResolvedModel = resolvedModel;
|
|
243
212
|
lastResolvedMaxCtx = maxContextTokens;
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
const
|
|
248
|
-
const
|
|
213
|
+
lastResolvedIntent = intent;
|
|
214
|
+
// Pre-flight dispatch via batch CLI
|
|
215
|
+
let preDispatchResults;
|
|
216
|
+
const preDispatchMessages = [];
|
|
217
|
+
const resolvedCwd = parsed.flags.cwd ?? ctx.cwd;
|
|
218
|
+
if (parsed.dispatch.length > 0) {
|
|
219
|
+
const dispatchResult = await runBatchCli(parsed.dispatch, resolvedCwd, undefined, ctx.sessionManager, signal);
|
|
220
|
+
preDispatchResults = dispatchResult.text;
|
|
221
|
+
const preDispatchToolCallId = "pre_dispatch_batch_0";
|
|
222
|
+
preDispatchMessages.push({
|
|
223
|
+
role: "assistant",
|
|
224
|
+
content: [
|
|
225
|
+
{
|
|
226
|
+
type: "toolCall",
|
|
227
|
+
toolCallId: preDispatchToolCallId,
|
|
228
|
+
name: "batch",
|
|
229
|
+
arguments: { cmd: parsed.dispatch },
|
|
230
|
+
},
|
|
231
|
+
],
|
|
232
|
+
});
|
|
233
|
+
preDispatchMessages.push({
|
|
234
|
+
role: "tool",
|
|
235
|
+
toolCallId: preDispatchToolCallId,
|
|
236
|
+
content: [
|
|
237
|
+
{
|
|
238
|
+
type: "text",
|
|
239
|
+
text: dispatchResult.text,
|
|
240
|
+
},
|
|
241
|
+
],
|
|
242
|
+
});
|
|
243
|
+
}
|
|
249
244
|
const result = await runFlowWithLiveSession(toolCallId, {
|
|
250
245
|
sharedContext,
|
|
251
246
|
model: resolvedModel,
|
|
@@ -258,7 +253,7 @@ export function createTraceTool(opts = {}) {
|
|
|
258
253
|
flowName: "trace",
|
|
259
254
|
intent,
|
|
260
255
|
aim: "",
|
|
261
|
-
taskCwd:
|
|
256
|
+
taskCwd: parsed.flags.cwd,
|
|
262
257
|
forkSessionSnapshotJsonl,
|
|
263
258
|
parentDepth,
|
|
264
259
|
parentFlowStack,
|
|
@@ -266,7 +261,7 @@ export function createTraceTool(opts = {}) {
|
|
|
266
261
|
preventCycles,
|
|
267
262
|
toolOptimize: opts.getSettings?.()?.toolOptimize,
|
|
268
263
|
structuredOutput: opts.getSettings?.()?.structuredOutput,
|
|
269
|
-
complexity:
|
|
264
|
+
complexity: (parsed.flags.complexity ?? "simple"),
|
|
270
265
|
model: resolvedModel,
|
|
271
266
|
maxContextTokens,
|
|
272
267
|
compressionStats,
|
|
@@ -282,7 +277,6 @@ export function createTraceTool(opts = {}) {
|
|
|
282
277
|
if (evidence) {
|
|
283
278
|
outputText += "\n\n" + evidence;
|
|
284
279
|
}
|
|
285
|
-
// Inject enriched evidence into messages so renderer shows it after completion.
|
|
286
280
|
result.messages.push({
|
|
287
281
|
role: "assistant",
|
|
288
282
|
content: [{ type: "text", text: outputText }],
|
|
@@ -308,7 +302,7 @@ export function createTraceTool(opts = {}) {
|
|
|
308
302
|
flow: [
|
|
309
303
|
{
|
|
310
304
|
type: "trace",
|
|
311
|
-
intent:
|
|
305
|
+
intent: lastResolvedIntent || "Trace mode",
|
|
312
306
|
aim: "",
|
|
313
307
|
model: live?.model ?? lastResolvedModel,
|
|
314
308
|
maxContextTokens: live?.maxContextTokens ?? lastResolvedMaxCtx,
|
package/dist/tools/trace.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../../src/tools/trace.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trace.js","sourceRoot":"","sources":["../../src/tools/trace.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/web-ops.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
type SearchResult = {
|
|
2
|
+
title: string;
|
|
3
|
+
url: string;
|
|
4
|
+
snippet: string;
|
|
5
|
+
source: "brave" | "duckduckgo";
|
|
6
|
+
};
|
|
1
7
|
export type WebOpInput = {
|
|
2
8
|
o: "search";
|
|
3
9
|
q: string;
|
|
@@ -22,6 +28,39 @@ export declare function runWebOps(params: WebOpsParams, ctx: {
|
|
|
22
28
|
ops: Record<string, unknown>[];
|
|
23
29
|
};
|
|
24
30
|
}>;
|
|
31
|
+
export declare function runWebSearch(params: {
|
|
32
|
+
query: string;
|
|
33
|
+
}, signal?: AbortSignal): Promise<{
|
|
34
|
+
content: {
|
|
35
|
+
type: "text";
|
|
36
|
+
text: string;
|
|
37
|
+
}[];
|
|
38
|
+
details: {
|
|
39
|
+
query: string;
|
|
40
|
+
results: SearchResult[];
|
|
41
|
+
errors: string[] | undefined;
|
|
42
|
+
};
|
|
43
|
+
}>;
|
|
44
|
+
export declare function runWebFetch(params: {
|
|
45
|
+
url: string;
|
|
46
|
+
format?: string;
|
|
47
|
+
}, ctx: {
|
|
48
|
+
sessionManager: {
|
|
49
|
+
getSessionDir(): string;
|
|
50
|
+
};
|
|
51
|
+
}, signal?: AbortSignal): Promise<{
|
|
52
|
+
content: {
|
|
53
|
+
type: "text";
|
|
54
|
+
text: string;
|
|
55
|
+
}[];
|
|
56
|
+
details: {
|
|
57
|
+
url: string;
|
|
58
|
+
title: string;
|
|
59
|
+
filePath: string;
|
|
60
|
+
contentLength: number;
|
|
61
|
+
format: string;
|
|
62
|
+
};
|
|
63
|
+
}>;
|
|
25
64
|
export declare function extractSnippet(raw: string, title: string): string;
|
|
26
65
|
export declare function validateFetchUrl(url: string): void;
|
|
27
66
|
export declare function htmlToMarkdown(html: string, baseUrl: string): {
|
|
@@ -33,4 +72,5 @@ export declare function stripMarkdownFormatting(markdown: string): string;
|
|
|
33
72
|
export declare function urlToHash(url: string): string;
|
|
34
73
|
export declare function looksLikeUrlPrompt(prompt: string | undefined): boolean;
|
|
35
74
|
export declare function looksLikeWebSearchPrompt(prompt: string | undefined): boolean;
|
|
75
|
+
export {};
|
|
36
76
|
//# sourceMappingURL=web-ops.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-ops.d.ts","sourceRoot":"","sources":["../../src/tools/web-ops.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"web-ops.d.ts","sourceRoot":"","sources":["../../src/tools/web-ops.ts"],"names":[],"mappings":"AAaA,KAAK,YAAY,GAAG;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,YAAY,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,UAAU,GACnB;IAAE,CAAC,EAAE,QAAQ,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1B;IAAE,CAAC,EAAE,OAAO,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,MAAM,MAAM,YAAY,GAAG;IAC1B,EAAE,EAAE,UAAU,EAAE,CAAC;CACjB,CAAC;AAuBF,wBAAsB,SAAS,CAC9B,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE;IAAE,cAAc,EAAE;QAAE,aAAa,IAAI,MAAM,CAAA;KAAE,CAAA;CAAE,EACpD,MAAM,CAAC,EAAE,WAAW;;;;;;;;GA4CpB;AAMD,wBAAsB,YAAY,CACjC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EACzB,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;GA4BpB;AA2JD,wBAAsB,WAAW,CAChC,MAAM,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EACxC,GAAG,EAAE;IAAE,cAAc,EAAE;QAAE,aAAa,IAAI,MAAM,CAAA;KAAE,CAAA;CAAE,EACpD,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;GAqEpB;AAmFD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAMjE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CA6BlD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAyCjG;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAY5E;AAOD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CA4BhE;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7C;AA6BD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAGtE;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAkB5E"}
|
package/dist/tools/web-ops.js
CHANGED
|
@@ -72,7 +72,7 @@ export async function runWebOps(params, ctx, signal) {
|
|
|
72
72
|
// ---------------------------------------------------------------------------
|
|
73
73
|
// Search
|
|
74
74
|
// ---------------------------------------------------------------------------
|
|
75
|
-
async function runWebSearch(params, signal) {
|
|
75
|
+
export async function runWebSearch(params, signal) {
|
|
76
76
|
const { results, errors } = await searchKeyless(params.query, signal);
|
|
77
77
|
let text;
|
|
78
78
|
if (results.length > 0) {
|
|
@@ -222,7 +222,7 @@ async function duckDuckGoHtmlSearch(query, signal) {
|
|
|
222
222
|
// ---------------------------------------------------------------------------
|
|
223
223
|
// Fetch
|
|
224
224
|
// ---------------------------------------------------------------------------
|
|
225
|
-
async function runWebFetch(params, ctx, signal) {
|
|
225
|
+
export async function runWebFetch(params, ctx, signal) {
|
|
226
226
|
validateFetchUrl(params.url);
|
|
227
227
|
const format = params.format ?? "markdown";
|
|
228
228
|
const html = await fetchHtml(params.url, signal);
|