@markusylisiurunen/tau 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +44 -21
  2. package/dist/app.js +135 -31
  3. package/dist/app.js.map +1 -1
  4. package/dist/bash_commands.js +37 -16
  5. package/dist/bash_commands.js.map +1 -1
  6. package/dist/cli.js +23 -7
  7. package/dist/cli.js.map +1 -1
  8. package/dist/commands.js +86 -13
  9. package/dist/commands.js.map +1 -1
  10. package/dist/config.js +27 -15
  11. package/dist/config.js.map +1 -1
  12. package/dist/content_loader.js +225 -97
  13. package/dist/content_loader.js.map +1 -1
  14. package/dist/debug.js +149 -0
  15. package/dist/debug.js.map +1 -0
  16. package/dist/main.js +35 -0
  17. package/dist/main.js.map +1 -1
  18. package/dist/personas.js +29 -8
  19. package/dist/personas.js.map +1 -1
  20. package/dist/session/session_engine.js +3 -10
  21. package/dist/session/session_engine.js.map +1 -1
  22. package/dist/subagents/registry.js +4 -1
  23. package/dist/subagents/registry.js.map +1 -1
  24. package/dist/subagents/subagent_engine.js +22 -7
  25. package/dist/subagents/subagent_engine.js.map +1 -1
  26. package/dist/subagents/web.js +58 -0
  27. package/dist/subagents/web.js.map +1 -0
  28. package/dist/tools/bash.js +9 -4
  29. package/dist/tools/bash.js.map +1 -1
  30. package/dist/tools/edit.js +8 -5
  31. package/dist/tools/edit.js.map +1 -1
  32. package/dist/tools/parallel_api.js +30 -0
  33. package/dist/tools/parallel_api.js.map +1 -0
  34. package/dist/tools/registry.js.map +1 -1
  35. package/dist/tools/task.js +8 -5
  36. package/dist/tools/task.js.map +1 -1
  37. package/dist/tools/web_fetch.js +241 -0
  38. package/dist/tools/web_fetch.js.map +1 -0
  39. package/dist/tools/web_search.js +229 -0
  40. package/dist/tools/web_search.js.map +1 -0
  41. package/dist/tools/write.js +7 -4
  42. package/dist/tools/write.js.map +1 -1
  43. package/dist/types.js +5 -1
  44. package/dist/types.js.map +1 -1
  45. package/dist/ui/bash_execution.js +26 -0
  46. package/dist/ui/bash_execution.js.map +1 -1
  47. package/dist/ui/custom_editor.js +13 -0
  48. package/dist/ui/custom_editor.js.map +1 -1
  49. package/dist/ui/session_summary.js +1 -10
  50. package/dist/ui/session_summary.js.map +1 -1
  51. package/dist/ui/slash_autocomplete.js +6 -3
  52. package/dist/ui/slash_autocomplete.js.map +1 -1
  53. package/dist/ui/task_execution.js +15 -0
  54. package/dist/ui/task_execution.js.map +1 -1
  55. package/dist/utils/context.js +31 -0
  56. package/dist/utils/context.js.map +1 -1
  57. package/dist/utils/project_files.js +144 -3
  58. package/dist/utils/project_files.js.map +1 -1
  59. package/dist/utils/streaming_settings.js +15 -0
  60. package/dist/utils/streaming_settings.js.map +1 -0
  61. package/dist/utils/zod.js +9 -0
  62. package/dist/utils/zod.js.map +1 -0
  63. package/package.json +6 -4
package/dist/debug.js ADDED
@@ -0,0 +1,149 @@
1
+ import { homedir } from "node:os";
2
+ import { formatSubagentsForPrompt } from "./subagents/registry.js";
3
+ import { buildBaseSystemPrompt, buildEnvironmentTag, buildProjectContextBlock, buildSkillsIndexBlock, } from "./utils/context.js";
4
+ function section(title) {
5
+ console.log(`\n${"=".repeat(60)}`);
6
+ console.log(` ${title}`);
7
+ console.log("=".repeat(60));
8
+ }
9
+ function formatPersona(p) {
10
+ const lines = [
11
+ ` id: ${p.id}`,
12
+ ` label: ${p.label}`,
13
+ ` model: ${p.model.provider}:${p.model.id}`,
14
+ ];
15
+ if (p.description)
16
+ lines.push(` description: ${p.description}`);
17
+ if (p.settings.reasoning)
18
+ lines.push(` reasoning: ${p.settings.reasoning}`);
19
+ if (p.allowedReasoningLevels) {
20
+ lines.push(` allowedReasoningLevels: ${p.allowedReasoningLevels.join(", ")}`);
21
+ }
22
+ if (p.skills) {
23
+ lines.push(` skills: ${p.skills === "*" ? "*" : p.skills.join(", ")}`);
24
+ }
25
+ if (p.subagents) {
26
+ const names = Object.keys(p.subagents).join(", ");
27
+ lines.push(` subagents: ${names}`);
28
+ }
29
+ if (p.tools && p.tools.length > 0) {
30
+ lines.push(` tools: ${p.tools.map((t) => t.name).join(", ")}`);
31
+ }
32
+ return lines.join("\n");
33
+ }
34
+ function formatPrompt(p) {
35
+ const lines = [` id: ${p.id}`];
36
+ if (p.label)
37
+ lines.push(` label: ${p.label}`);
38
+ if (p.description)
39
+ lines.push(` description: ${p.description}`);
40
+ lines.push(` template: ${p.template.length} chars`);
41
+ return lines.join("\n");
42
+ }
43
+ function formatBashCommand(cmd) {
44
+ const lines = [` id: ${cmd.id}`, ` cmd: ${cmd.cmd}`];
45
+ if (cmd.description)
46
+ lines.push(` description: ${cmd.description}`);
47
+ return lines.join("\n");
48
+ }
49
+ function formatSkill(s) {
50
+ return [` name: ${s.name}`, ` description: ${s.description}`, ` path: ${s.path}`].join("\n");
51
+ }
52
+ function formatToolSchema(tool) {
53
+ const lines = [` name: ${tool.name}`];
54
+ lines.push(` description: ${tool.description}`);
55
+ lines.push(` parameters: ${JSON.stringify(tool.parameters, null, 4).split("\n").join("\n ")}`);
56
+ return lines.join("\n");
57
+ }
58
+ function getActiveSkills(persona, skills) {
59
+ if (!persona.skills)
60
+ return [];
61
+ if (persona.skills === "*")
62
+ return skills;
63
+ const enabledNames = new Set(persona.skills.map((s) => s.toLowerCase()));
64
+ return skills.filter((s) => enabledNames.has(s.name.toLowerCase()));
65
+ }
66
+ export function printDebugInfo(args) {
67
+ const { personas, prompts, bashCommands, skills, selectedPersona, withContext } = args;
68
+ console.log("tau debug info");
69
+ console.log(`cwd: ${process.cwd()}`);
70
+ // Personas
71
+ section(`Personas (${personas.length})`);
72
+ for (const p of personas) {
73
+ console.log(`\n- ${p.id}${p.id === selectedPersona.id ? " [SELECTED]" : ""}`);
74
+ console.log(formatPersona(p));
75
+ }
76
+ // Prompts
77
+ section(`Prompts (${prompts.length})`);
78
+ if (prompts.length === 0) {
79
+ console.log("\n (none)");
80
+ }
81
+ else {
82
+ for (const p of prompts) {
83
+ console.log(`\n- ${p.id}`);
84
+ console.log(formatPrompt(p));
85
+ }
86
+ }
87
+ // Bash commands
88
+ section(`Bash commands (${bashCommands.length})`);
89
+ if (bashCommands.length === 0) {
90
+ console.log("\n (none)");
91
+ }
92
+ else {
93
+ for (const cmd of bashCommands) {
94
+ console.log(`\n- ${cmd.id}`);
95
+ console.log(formatBashCommand(cmd));
96
+ }
97
+ }
98
+ // Skills
99
+ section(`Skills (${skills.length})`);
100
+ if (skills.length === 0) {
101
+ console.log("\n (none)");
102
+ }
103
+ else {
104
+ const activeSkills = getActiveSkills(selectedPersona, skills);
105
+ const activeNames = new Set(activeSkills.map((s) => s.name));
106
+ for (const s of skills) {
107
+ const isActive = activeNames.has(s.name);
108
+ console.log(`\n- ${s.name}${isActive ? " [ACTIVE]" : ""}`);
109
+ console.log(formatSkill(s));
110
+ }
111
+ }
112
+ // Selected persona details
113
+ section(`Selected persona: ${selectedPersona.id}`);
114
+ console.log(formatPersona(selectedPersona));
115
+ // Build and print full system prompt
116
+ section("Full system prompt");
117
+ const activeSkills = getActiveSkills(selectedPersona, skills);
118
+ const skillsBlock = buildSkillsIndexBlock(activeSkills);
119
+ const projectContextBlock = withContext
120
+ ? buildProjectContextBlock({ cwd: process.cwd(), home: homedir() })
121
+ : undefined;
122
+ const environmentTag = buildEnvironmentTag({
123
+ riskLevel: "read-only",
124
+ cwd: process.cwd(),
125
+ datetime: new Date().toISOString(),
126
+ });
127
+ const baseSystemPrompt = buildBaseSystemPrompt({
128
+ personaSystemPrompt: selectedPersona.systemPrompt,
129
+ skillsBlock,
130
+ projectContextBlock,
131
+ environmentTag,
132
+ });
133
+ const subagentsBlock = formatSubagentsForPrompt(selectedPersona);
134
+ const fullSystemPrompt = subagentsBlock ? baseSystemPrompt + subagentsBlock : baseSystemPrompt;
135
+ console.log(`\n${fullSystemPrompt}`);
136
+ // Tools
137
+ const tools = selectedPersona.tools ?? [];
138
+ section(`Active tools (${tools.length})`);
139
+ if (tools.length === 0) {
140
+ console.log("\n (none)");
141
+ }
142
+ else {
143
+ for (const tool of tools) {
144
+ console.log(`\n- ${tool.name}`);
145
+ console.log(formatToolSchema(tool));
146
+ }
147
+ }
148
+ }
149
+ //# sourceMappingURL=debug.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../src/debug.ts"],"names":[],"mappings":"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"}
package/dist/main.js CHANGED
@@ -4,6 +4,7 @@ import { loadBashCommands } from "./bash_commands.js";
4
4
  import { CliError, parseCliArgs, parsePersonaString, printHelp } from "./cli.js";
5
5
  import { loadConfig } from "./config.js";
6
6
  import { loadAllContent } from "./content_loader.js";
7
+ import { printDebugInfo } from "./debug.js";
7
8
  // Load configuration from file
8
9
  const config = loadConfig();
9
10
  const bashCommands = loadBashCommands(process.cwd()).commands;
@@ -20,10 +21,12 @@ async function readPipedStdin() {
20
21
  // Load built-in and user content
21
22
  let personas;
22
23
  let prompts;
24
+ let skills;
23
25
  try {
24
26
  const content = await loadAllContent();
25
27
  personas = content.personas;
26
28
  prompts = content.prompts;
29
+ skills = content.skills;
27
30
  }
28
31
  catch (err) {
29
32
  // Safeguard: loadAllContent should not throw, but wrap to ensure tau --help works
@@ -36,6 +39,7 @@ catch (err) {
36
39
  const { prompts: builtinPrompts } = await import("./prompts.js");
37
40
  personas = builtinPersonas;
38
41
  prompts = builtinPrompts;
42
+ skills = [];
39
43
  }
40
44
  let cli;
41
45
  try {
@@ -56,6 +60,36 @@ if (cli.help) {
56
60
  printHelp(personas);
57
61
  process.exit(0);
58
62
  }
63
+ if (cli.debug) {
64
+ let debugPersonaId;
65
+ let debugReasoningOverride;
66
+ if (cli.personaId) {
67
+ debugPersonaId = cli.personaId;
68
+ }
69
+ else if (config.defaultPersona) {
70
+ const parsed = parsePersonaString(config.defaultPersona, personas);
71
+ debugPersonaId = parsed.personaId;
72
+ debugReasoningOverride = parsed.reasoning;
73
+ }
74
+ if (cli.reasoningOverride !== undefined) {
75
+ debugReasoningOverride = cli.reasoningOverride;
76
+ }
77
+ const debugPersona = debugPersonaId
78
+ ? (personas.find((p) => p.id === debugPersonaId) ?? personas[0])
79
+ : personas[0];
80
+ if (debugReasoningOverride !== undefined) {
81
+ debugPersona.settings.reasoning = debugReasoningOverride;
82
+ }
83
+ printDebugInfo({
84
+ personas,
85
+ prompts,
86
+ bashCommands,
87
+ skills,
88
+ selectedPersona: debugPersona,
89
+ withContext: cli.withContext,
90
+ });
91
+ process.exit(0);
92
+ }
59
93
  let initialPersonaId;
60
94
  let reasoningOverride = cli.reasoningOverride;
61
95
  if (cli.personaId) {
@@ -79,6 +113,7 @@ const initialUserMessage = await readPipedStdin();
79
113
  const app = new ChatApp({
80
114
  personas,
81
115
  prompts,
116
+ skills,
82
117
  bashCommands,
83
118
  initialPersonaId,
84
119
  initialUserMessage,
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
package/dist/personas.js CHANGED
@@ -202,17 +202,37 @@ function pickExploreReasoning(allowed) {
202
202
  function buildPersona(spec, variant) {
203
203
  const config = VARIANT_CONFIG[variant];
204
204
  const displaySuffix = config.suffix ? `-${variant}` : "";
205
+ const skills = variant === "raw" ? spec.skills : "*";
206
+ const settings = structuredClone(spec.settings);
205
207
  let subagents;
206
- if (variant === "coder" && spec.subagents?.explore) {
207
- const exploreSpec = spec.subagents.explore;
208
- const exploreModel = exploreSpec.model ?? spec.model;
209
- const exploreEffort = exploreSpec.reasoning ?? pickExploreReasoning(spec.allowedReasoningLevels);
210
- subagents = {
211
- explore: {
208
+ if (variant !== "raw") {
209
+ const next = {};
210
+ if (variant === "coder" && spec.subagents?.explore) {
211
+ const exploreSpec = spec.subagents.explore;
212
+ const exploreModel = exploreSpec.model ?? spec.model;
213
+ const exploreEffort = exploreSpec.reasoning ?? pickExploreReasoning(spec.allowedReasoningLevels);
214
+ next.explore = {
212
215
  model: exploreModel,
213
216
  settings: exploreEffort === "none" ? {} : { reasoning: exploreEffort },
214
- },
217
+ };
218
+ }
219
+ const webSpec = spec.subagents?.web ?? {};
220
+ const webModel = webSpec.model ?? spec.model;
221
+ const { reasoning, ...rest } = settings;
222
+ const inheritedSettings = {
223
+ ...rest,
224
+ ...(reasoning && reasoning !== "none" ? { reasoning } : {}),
225
+ };
226
+ const webSettings = webSpec.reasoning !== undefined
227
+ ? webSpec.reasoning === "none"
228
+ ? {}
229
+ : { reasoning: webSpec.reasoning }
230
+ : inheritedSettings;
231
+ next.web = {
232
+ model: webModel,
233
+ settings: webSettings,
215
234
  };
235
+ subagents = next;
216
236
  }
217
237
  const tools = subagents ? [...BASE_TOOLS, TASK_TOOL] : BASE_TOOLS;
218
238
  return {
@@ -222,7 +242,8 @@ function buildPersona(spec, variant) {
222
242
  model: spec.model,
223
243
  systemPrompt: config.systemPrompt,
224
244
  allowedReasoningLevels: spec.allowedReasoningLevels,
225
- settings: spec.settings,
245
+ settings,
246
+ ...(skills && { skills }),
226
247
  ...(subagents && { subagents }),
227
248
  tools,
228
249
  };
@@ -1 +1 @@
1
- {"version":3,"file":"personas.js","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"personas.js","sourceRoot":"","sources":["../src/personas.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@ import { streamSimple } from "@mariozechner/pi-ai";
2
2
  import { getApiKeyForProvider } from "../config.js";
3
3
  import { formatSubagentsForPrompt } from "../subagents/registry.js";
4
4
  import { createToolError } from "../utils/messages.js";
5
+ import { parseStreamingSettings } from "../utils/streaming_settings.js";
5
6
  import { MessageAccumulator } from "./message_accumulator.js";
6
- const MAX_ASSISTANT_SUBTURNS = 64;
7
+ const MAX_ASSISTANT_SUBTURNS = 128;
7
8
  export class SessionEngine {
8
9
  persona;
9
10
  baseSystemPrompt;
@@ -43,15 +44,7 @@ export class SessionEngine {
43
44
  }
44
45
  getStreamingSettings(persona) {
45
46
  const merged = { ...persona.settings };
46
- const reasoning = persona.settings.reasoning;
47
- // pi-ai uses undefined for "no reasoning".
48
- if (reasoning === undefined || reasoning === "none") {
49
- delete merged.reasoning;
50
- }
51
- else {
52
- merged.reasoning = reasoning;
53
- }
54
- return merged;
47
+ return parseStreamingSettings(merged);
55
48
  }
56
49
  async *processTurn(signal) {
57
50
  let subturns = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"session_engine.js","sourceRoot":"","sources":["../../src/session/session_engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session_engine.js","sourceRoot":"","sources":["../../src/session/session_engine.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
1
  import { EXPLORE_DEFINITION } from "./explore.js";
2
+ import { WEB_DEFINITION } from "./web.js";
2
3
  export function isSubagentName(value) {
3
- return value === "explore";
4
+ return value === "explore" || value === "web";
4
5
  }
5
6
  export function getSubagentDefinition(name) {
6
7
  switch (name) {
7
8
  case "explore":
8
9
  return EXPLORE_DEFINITION;
10
+ case "web":
11
+ return WEB_DEFINITION;
9
12
  }
10
13
  }
11
14
  export function getSubagentDefinitionFromString(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/subagents/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGlD,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,KAAK,SAAS,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAkB;IACtD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,kBAAkB,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,IAAY;IAEZ,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,aAAa,GAAG,OAAO;SAC1B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE;QACd,MAAM,GAAG,GAAG,+BAA+B,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,GAAG,EAAE,WAAW,IAAI,kBAAkB,CAAC;QAC3D,OAAO,OAAO,IAAI,OAAO,WAAW,EAAE,CAAC;IACzC,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,mFAAmF,aAAa,EAAE,CAAC;AAC5G,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/subagents/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAkB;IACtD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,SAAS;YACZ,OAAO,kBAAkB,CAAC;QAC5B,KAAK,KAAK;YACR,OAAO,cAAc,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,IAAY;IAEZ,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAgB;IACvD,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAC3E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,aAAa,GAAG,OAAO;SAC1B,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE;QACd,MAAM,GAAG,GAAG,+BAA+B,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,GAAG,EAAE,WAAW,IAAI,kBAAkB,CAAC;QAC3D,OAAO,OAAO,IAAI,OAAO,WAAW,EAAE,CAAC;IACzC,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,mFAAmF,aAAa,EAAE,CAAC;AAC5G,CAAC"}
@@ -2,22 +2,27 @@ import { streamSimple } from "@mariozechner/pi-ai";
2
2
  import { getApiKeyForProvider } from "../config.js";
3
3
  import { createBashToolDefinition } from "../tools/bash.js";
4
4
  import { ToolRegistry } from "../tools/registry.js";
5
+ import { createWebFetchToolDefinition } from "../tools/web_fetch.js";
6
+ import { createWebSearchToolDefinition } from "../tools/web_search.js";
5
7
  import { createToolError, extractAssistantText } from "../utils/messages.js";
8
+ import { parseStreamingSettings } from "../utils/streaming_settings.js";
6
9
  function getStreamingSettings(settings) {
7
10
  const merged = { ...(settings ?? {}) };
8
- const reasoning = merged.reasoning;
9
- if (reasoning === undefined || reasoning === "none") {
10
- delete merged.reasoning;
11
- }
12
- return merged;
11
+ return parseStreamingSettings(merged);
13
12
  }
14
- function buildToolRegistryForAllowedTools(allowedTools) {
13
+ function buildToolRegistryForAllowedTools(allowedTools, config) {
15
14
  const definitions = [];
16
15
  for (const tool of allowedTools) {
17
16
  switch (tool) {
18
17
  case "bash":
19
18
  definitions.push(createBashToolDefinition());
20
19
  break;
20
+ case "web_search":
21
+ definitions.push(createWebSearchToolDefinition(config));
22
+ break;
23
+ case "web_fetch":
24
+ definitions.push(createWebFetchToolDefinition(config));
25
+ break;
21
26
  }
22
27
  }
23
28
  return new ToolRegistry(definitions);
@@ -26,6 +31,10 @@ function formatToolUiEventForProgress(uiEvent) {
26
31
  switch (uiEvent.type) {
27
32
  case "bash_started":
28
33
  return `bash running: ${uiEvent.command.replace(/\n/g, " ")}`;
34
+ case "web_search_started":
35
+ return `web search: ${uiEvent.objective}`;
36
+ case "web_fetch_started":
37
+ return `web fetch: ${uiEvent.url}`;
29
38
  default:
30
39
  return undefined;
31
40
  }
@@ -43,7 +52,7 @@ function isPhased(result) {
43
52
  }
44
53
  export async function runSubagentToCompletion(options) {
45
54
  const { definition, personaConfig, prompt, config, signal, onProgress } = options;
46
- const toolRegistry = buildToolRegistryForAllowedTools(definition.allowedTools);
55
+ const toolRegistry = buildToolRegistryForAllowedTools(definition.allowedTools, config);
47
56
  const messages = [
48
57
  {
49
58
  role: "user",
@@ -118,6 +127,12 @@ export async function runSubagentToCompletion(options) {
118
127
  const handleUi = (uiEvent) => {
119
128
  if (!uiEvent)
120
129
  return;
130
+ if ((uiEvent.type === "web_search_finished" || uiEvent.type === "web_fetch_finished") &&
131
+ typeof uiEvent.costUsd === "number" &&
132
+ Number.isFinite(uiEvent.costUsd) &&
133
+ uiEvent.costUsd > 0) {
134
+ costTotal += uiEvent.costUsd;
135
+ }
121
136
  const text = formatToolUiEventForProgress(uiEvent);
122
137
  if (text)
123
138
  emit(text);
@@ -1 +1 @@
1
- {"version":3,"file":"subagent_engine.js","sourceRoot":"","sources":["../../src/subagents/subagent_engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent_engine.js","sourceRoot":"","sources":["../../src/subagents/subagent_engine.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAO5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAmBxE,SAAS,oBAAoB,CAAC,QAA2C;IACvE,MAAM,MAAM,GAAG,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAA6B,CAAC;IAClE,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,gCAAgC,CACvC,YAAuC,EACvC,MAAc;IAEd,MAAM,WAAW,GAAqB,EAAE,CAAC;IAEzC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM;gBACT,WAAW,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,YAAY;gBACf,WAAW,CAAC,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC,CAAC;gBACxD,MAAM;YACR,KAAK,WAAW;gBACd,WAAW,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvD,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,4BAA4B,CAAC,OAAoB;IACxD,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,cAAc;YACjB,OAAO,iBAAiB,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;QAChE,KAAK,oBAAoB;YACvB,OAAO,eAAe,OAAO,CAAC,SAAS,EAAE,CAAC;QAC5C,KAAK,mBAAmB;YACtB,OAAO,cAAc,OAAO,CAAC,GAAG,EAAE,CAAC;QACrC;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,SAAS,+BAA+B,CAAC,OAAyB;IAChE,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,OAAO,SAAS,CAAC,CAAC,CAAC,UAAU,SAAS,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,UAAU,CAAC,KAA0C;IAC5D,OAAO,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC;AACnC,CAAC;AAED,SAAS,QAAQ,CACf,MAAyD;IAEzD,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC;AAClC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,OAO7C;IACC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAElF,MAAM,YAAY,GAAG,gCAAgC,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvF,MAAM,QAAQ,GAAc;QAC1B;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YACzC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB;KACF,CAAC;IAEF,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC;IAEjD,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE;QAC5B,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC;QAC3E,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAY;YACvB,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,QAAQ;YACR,KAAK,EAAE,YAAY,CAAC,OAAO;SAC5B,CAAC;QAEF,MAAM,MAAM,GAAG,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC,KAAK,CAAC,QAAyB,CAAC,CAAC;QAC3F,MAAM,MAAM,GAAG,YAAY,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE;YACxD,GAAG,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC;YAC/C,MAAM;YACN,GAAG,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,CAAC;SAC1B,CAAC,CAAC;QAEH,IAAI,YAA8B,CAAC;QACnC,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAClC,IAAI,MAAM,CAAC,OAAO;oBAAE,MAAM;YAC5B,CAAC;YACD,YAAY,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,KAAK,EAAE,CAAC;QACR,SAAS,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;QAElD,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACjE,SAAS,IAAI,gBAAgB,CAAC,MAAM,CAAC;QAErC,iCAAiC;QACjC,MAAM,SAAS,GAAG,+BAA+B,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,CAAC,SAAS,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO,EAAE,SAAS,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;QAC7E,CAAC;QAED,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,CAAC;YACb,OAAO,EAAE,SAAS,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC;QAC7E,CAAC;QAED,MAAM,SAAS,GAAG,UAAU,CAAC,SAAsB,CAAC;QAEpD,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM;YAE1B,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,SAAS,IAAI,CAAC,IAAI,uCAAuC,CAAC;gBACtE,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;gBAC7B,SAAS;YACX,CAAC;YAED,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAEvE,MAAM,QAAQ,GAAG,CAAC,OAAgC,EAAE,EAAE;gBACpD,IAAI,CAAC,OAAO;oBAAE,OAAO;gBAErB,IACE,CAAC,OAAO,CAAC,IAAI,KAAK,qBAAqB,IAAI,OAAO,CAAC,IAAI,KAAK,oBAAoB,CAAC;oBACjF,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;oBACnC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;oBAChC,OAAO,CAAC,OAAO,GAAG,CAAC,EACnB,CAAC;oBACD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;gBAC/B,CAAC;gBAED,MAAM,IAAI,GAAG,4BAA4B,CAAC,OAAO,CAAC,CAAC;gBACnD,IAAI,IAAI;oBAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC,CAAC;YAEF,IAAI,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC7B,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;gBAExC,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAC5B,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;wBACpD,IAAI,MAAM,CAAC,OAAO;4BAAE,MAAM;wBAC1B,QAAQ,CAAC,OAAO,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;gBAED,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC;gBACzD,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC1B,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YACzC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,uBAAuB,WAAW,YAAY,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAEnE,CAAC;IAEd,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC;AACnG,CAAC"}
@@ -0,0 +1,58 @@
1
+ const WEB_SYSTEM_PROMPT = `
2
+ You are "web", a focused sub-agent for researching public web sources.
3
+
4
+ Your job: find and extract relevant information from technical documentation, bug reports, changelogs, and other authoritative sources, then answer the user's prompt.
5
+
6
+ ### Rules
7
+
8
+ - You may ONLY use: web_search, web_fetch, and bash.
9
+ - Every bash call MUST use safetyLevel="read" and therefore be a read-only operation.
10
+ - Do not run commands that modify files, install packages, or otherwise change system state.
11
+ - This is a non-interactive session. You cannot ask for clarification or additional input. You must complete the task immediately with the information available.
12
+
13
+ ### Tools
14
+
15
+ - **web_search**: Search the web for relevant sources. Returns a list of URLs with snippets.
16
+ - **web_fetch**: Fetch a URL's content, pre-processed to plain text (HTML tags, scripts, ads stripped).
17
+ - **curl via bash**: Fetch raw data directly. Prefer this for structured formats (JSON, XML, Markdown) or when web_fetch falls short. Keep in mind that curl may return LOTS of data; use bash commands to filter or limit output as needed.
18
+ - **bash**: Run read-only shell commands to process data, extract information, or transform formats. May be combined with curl to handle complex fetches.
19
+
20
+ ### LLM-friendly sources
21
+
22
+ Many technical sites now offer machine-readable paths, often as Markdown. Prefer these when available:
23
+
24
+ - **llms.txt**: A growing convention for LLM-optimized content. Check paths like \`/llms.txt\` or \`/llms-full.txt\` on documentation sites (e.g. \`https://linear.app/llms.txt\`, \`https://developers.cloudflare.com/llms.txt\`).
25
+ - **.md suffix**: Some documentation serves Markdown when you append \`.md\` to the URL path (e.g. \`https://docs.example.com/guide/setup.md\`).
26
+
27
+ Fetch these via curl when you spot them. Keep in mind that some sites may require a path prefix before the \`llms.txt\` or \`.md\` (e.g. \`https://example.com/docs/llms.txt\`).
28
+
29
+ ### Efficiency
30
+
31
+ - Start with web_search to find candidates. Scan snippets before fetching.
32
+ - Fetch only the most promising URLs; don't retrieve speculatively.
33
+ - Make parallel fetch calls when evaluating independent sources.
34
+ - If a fetch fails or returns irrelevant content, move on.
35
+ - Stop once you have enough to answer confidently.
36
+
37
+ ### Output
38
+
39
+ Return only the answer to the user's prompt. Summarize rather than quote at length.
40
+ Be direct and concise. No meta commentary about your exploration process or tool usage.
41
+ Cite sources as URLs when you used them.
42
+ If you encountered blockers, made assumptions, or found conflicting information, note them briefly at the end.
43
+ `.trim();
44
+ export const WEB_DEFINITION = {
45
+ name: "web",
46
+ description: [
47
+ "Sub-agent for multi-step web research: technical docs, bug reports, changelogs, release notes.",
48
+ "Use when the question needs current information, authoritative sources, or context not available locally.",
49
+ "Examples: 'what's new in React 19', 'is this a known issue in package X',",
50
+ "'what do the docs say about Y', 'how do I configure Z in library W'.",
51
+ "Skip when general knowledge or local context suffices: concepts, well-established patterns, things you know confidently.",
52
+ ].join(" "),
53
+ systemPrompt: WEB_SYSTEM_PROMPT,
54
+ allowedTools: ["web_search", "web_fetch", "bash"],
55
+ riskLevel: "read-only",
56
+ maxSubturns: 32,
57
+ };
58
+ //# sourceMappingURL=web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/subagents/web.ts"],"names":[],"mappings":"AAEA,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CzB,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,MAAM,cAAc,GAA8B;IACvD,IAAI,EAAE,KAAK;IACX,WAAW,EAAE;QACX,gGAAgG;QAChG,2GAA2G;QAC3G,2EAA2E;QAC3E,sEAAsE;QACtE,0HAA0H;KAC3H,CAAC,IAAI,CAAC,GAAG,CAAC;IACX,YAAY,EAAE,iBAAiB;IAC/B,YAAY,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,MAAM,CAAC;IACjD,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,EAAE;CAChB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { spawn } from "node:child_process";
2
2
  import { Type } from "@sinclair/typebox";
3
+ import { z } from "zod";
3
4
  import { createToolError, createToolResult } from "../utils/messages.js";
4
5
  import { truncateMiddle, truncateMiddleForModel, truncateToBytesFromStart, } from "../utils/truncate.js";
5
6
  export const BASH_MAX_CAPTURE_BYTES = 2 * 1024 * 1024; // 2MB
@@ -256,11 +257,15 @@ function getMissingArgsMessage(command, safetyLevel) {
256
257
  }
257
258
  return "bash tool call missing a valid 'safetyLevel' value ('read' or 'write').";
258
259
  }
260
+ const bashArgsSchema = z.object({
261
+ command: z.string().trim().catch(""),
262
+ safetyLevel: z.enum(["read", "write"]).optional().catch(undefined),
263
+ });
259
264
  function parseBashArgs(raw) {
260
- const args = raw;
261
- const command = typeof args?.command === "string" ? args.command.trim() : "";
262
- const safetyLevel = args?.safetyLevel === "read" || args?.safetyLevel === "write"
263
- ? args.safetyLevel
265
+ const parsed = bashArgsSchema.safeParse(raw);
266
+ const command = parsed.success ? parsed.data.command : "";
267
+ const safetyLevel = parsed.success
268
+ ? parsed.data.safetyLevel
264
269
  : undefined;
265
270
  const commandForDisplay = command || "(missing command)";
266
271
  return { command, safetyLevel, commandForDisplay };