@tyvm/knowhow 0.0.138 → 0.0.141

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 (173) hide show
  1. package/autodoc/chat-guide.md +1 -0
  2. package/package.json +5 -2
  3. package/scripts/build-for-node.sh +4 -4
  4. package/src/agents/base/base.ts +254 -29
  5. package/src/agents/patcher/patcher.ts +1 -1
  6. package/src/agents/researcher/researcher.ts +2 -2
  7. package/src/agents/tools/agentCall.ts +6 -0
  8. package/src/agents/tools/connectAgent.ts +353 -0
  9. package/src/agents/tools/index.ts +6 -0
  10. package/src/agents/tools/list.ts +48 -0
  11. package/src/agents/tools/observe.ts +245 -0
  12. package/src/agents/tools/replyToParent.ts +122 -0
  13. package/src/agents/tools/runGenerate.ts +209 -0
  14. package/src/agents/tools/sendAgentMessage.ts +138 -0
  15. package/src/agents/tools/startAgentTask.ts +92 -5
  16. package/src/agents/tools/waitForAgentCompleted.ts +269 -0
  17. package/src/ai.ts +1 -0
  18. package/src/chat/modules/AgentModule.ts +89 -27
  19. package/src/chat/modules/SessionsModule.ts +6 -10
  20. package/src/clients/contextLimits.ts +26 -0
  21. package/src/clients/pricing/anthropic.ts +12 -0
  22. package/src/commands/agent.ts +22 -0
  23. package/src/commands/agents.ts +83 -0
  24. package/src/commands/misc.ts +6 -0
  25. package/src/commands/modules.ts +159 -7
  26. package/src/commands/services.ts +14 -0
  27. package/src/generate.ts +25 -3
  28. package/src/services/AgentService.ts +21 -3
  29. package/src/services/AgentSyncFs.ts +56 -0
  30. package/src/services/AgentSyncKnowhowWeb.ts +1 -1
  31. package/src/services/EventService.ts +4 -1
  32. package/src/services/KnowhowClient.ts +7 -0
  33. package/src/services/LazyToolsService.ts +7 -3
  34. package/src/services/MinimalToolsService.ts +15 -7
  35. package/src/services/SyncedAgentWatcher.ts +2 -0
  36. package/src/services/SyncerService.ts +35 -6
  37. package/src/services/Tools.ts +43 -3
  38. package/src/services/modules/index.ts +127 -46
  39. package/src/types.ts +5 -0
  40. package/tests/agents/interrupt.test.ts +11 -18
  41. package/tests/agents/observe-base.test.ts +183 -0
  42. package/tests/agents/tools/connectAgent.test.ts +138 -0
  43. package/tests/agents/tools/observe.test.ts +179 -0
  44. package/tests/agents/tools/replyToParent.test.ts +125 -0
  45. package/tests/agents/tools/sendAgentMessage.test.ts +99 -0
  46. package/tests/agents/tools/waitForAgentCompleted.test.ts +147 -0
  47. package/tests/chat/detach-attach-rendering.test.ts +315 -0
  48. package/tests/clients/contextLimits.test.ts +23 -1
  49. package/tests/clients/pricing.test.ts +20 -1
  50. package/tests/services/Tools.test.ts +172 -9
  51. package/tests/unit/modules/moduleLoading.test.ts +69 -0
  52. package/ts_build/package.json +5 -2
  53. package/ts_build/src/agents/base/base.d.ts +24 -1
  54. package/ts_build/src/agents/base/base.js +111 -16
  55. package/ts_build/src/agents/base/base.js.map +1 -1
  56. package/ts_build/src/agents/patcher/patcher.js +1 -1
  57. package/ts_build/src/agents/patcher/patcher.js.map +1 -1
  58. package/ts_build/src/agents/researcher/researcher.js +2 -2
  59. package/ts_build/src/agents/researcher/researcher.js.map +1 -1
  60. package/ts_build/src/agents/tools/agentCall.js.map +1 -1
  61. package/ts_build/src/agents/tools/connectAgent.d.ts +21 -0
  62. package/ts_build/src/agents/tools/connectAgent.js +284 -0
  63. package/ts_build/src/agents/tools/connectAgent.js.map +1 -0
  64. package/ts_build/src/agents/tools/index.d.ts +6 -0
  65. package/ts_build/src/agents/tools/index.js +6 -0
  66. package/ts_build/src/agents/tools/index.js.map +1 -1
  67. package/ts_build/src/agents/tools/list.js +40 -0
  68. package/ts_build/src/agents/tools/list.js.map +1 -1
  69. package/ts_build/src/agents/tools/observe.d.ts +20 -0
  70. package/ts_build/src/agents/tools/observe.js +144 -0
  71. package/ts_build/src/agents/tools/observe.js.map +1 -0
  72. package/ts_build/src/agents/tools/replyToParent.d.ts +4 -0
  73. package/ts_build/src/agents/tools/replyToParent.js +118 -0
  74. package/ts_build/src/agents/tools/replyToParent.js.map +1 -0
  75. package/ts_build/src/agents/tools/runGenerate.d.ts +19 -0
  76. package/ts_build/src/agents/tools/runGenerate.js +138 -0
  77. package/ts_build/src/agents/tools/runGenerate.js.map +1 -0
  78. package/ts_build/src/agents/tools/sendAgentMessage.d.ts +11 -0
  79. package/ts_build/src/agents/tools/sendAgentMessage.js +118 -0
  80. package/ts_build/src/agents/tools/sendAgentMessage.js.map +1 -0
  81. package/ts_build/src/agents/tools/startAgentTask.d.ts +7 -0
  82. package/ts_build/src/agents/tools/startAgentTask.js +53 -6
  83. package/ts_build/src/agents/tools/startAgentTask.js.map +1 -1
  84. package/ts_build/src/agents/tools/waitForAgentCompleted.d.ts +10 -0
  85. package/ts_build/src/agents/tools/waitForAgentCompleted.js +229 -0
  86. package/ts_build/src/agents/tools/waitForAgentCompleted.js.map +1 -0
  87. package/ts_build/src/ai.d.ts +1 -0
  88. package/ts_build/src/ai.js.map +1 -1
  89. package/ts_build/src/chat/modules/AgentModule.d.ts +3 -1
  90. package/ts_build/src/chat/modules/AgentModule.js +46 -21
  91. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  92. package/ts_build/src/chat/modules/SessionsModule.js +1 -6
  93. package/ts_build/src/chat/modules/SessionsModule.js.map +1 -1
  94. package/ts_build/src/clients/contextLimits.js +21 -0
  95. package/ts_build/src/clients/contextLimits.js.map +1 -1
  96. package/ts_build/src/clients/pricing/anthropic.d.ts +2 -0
  97. package/ts_build/src/clients/pricing/anthropic.js +9 -0
  98. package/ts_build/src/clients/pricing/anthropic.js.map +1 -1
  99. package/ts_build/src/commands/agent.js +11 -0
  100. package/ts_build/src/commands/agent.js.map +1 -1
  101. package/ts_build/src/commands/agents.js +61 -0
  102. package/ts_build/src/commands/agents.js.map +1 -1
  103. package/ts_build/src/commands/misc.js +2 -0
  104. package/ts_build/src/commands/misc.js.map +1 -1
  105. package/ts_build/src/commands/modules.js +86 -7
  106. package/ts_build/src/commands/modules.js.map +1 -1
  107. package/ts_build/src/commands/services.js +10 -0
  108. package/ts_build/src/commands/services.js.map +1 -1
  109. package/ts_build/src/generate.d.ts +2 -0
  110. package/ts_build/src/generate.js +11 -3
  111. package/ts_build/src/generate.js.map +1 -1
  112. package/ts_build/src/services/AgentService.d.ts +4 -1
  113. package/ts_build/src/services/AgentService.js +9 -2
  114. package/ts_build/src/services/AgentService.js.map +1 -1
  115. package/ts_build/src/services/AgentSyncFs.d.ts +2 -0
  116. package/ts_build/src/services/AgentSyncFs.js +35 -0
  117. package/ts_build/src/services/AgentSyncFs.js.map +1 -1
  118. package/ts_build/src/services/AgentSyncKnowhowWeb.d.ts +1 -1
  119. package/ts_build/src/services/EventService.d.ts +4 -1
  120. package/ts_build/src/services/EventService.js.map +1 -1
  121. package/ts_build/src/services/KnowhowClient.js +3 -0
  122. package/ts_build/src/services/KnowhowClient.js.map +1 -1
  123. package/ts_build/src/services/LazyToolsService.d.ts +2 -2
  124. package/ts_build/src/services/LazyToolsService.js +2 -2
  125. package/ts_build/src/services/LazyToolsService.js.map +1 -1
  126. package/ts_build/src/services/MinimalToolsService.d.ts +2 -2
  127. package/ts_build/src/services/MinimalToolsService.js +6 -6
  128. package/ts_build/src/services/MinimalToolsService.js.map +1 -1
  129. package/ts_build/src/services/SyncedAgentWatcher.d.ts +1 -0
  130. package/ts_build/src/services/SyncedAgentWatcher.js.map +1 -1
  131. package/ts_build/src/services/SyncerService.d.ts +2 -1
  132. package/ts_build/src/services/SyncerService.js +8 -2
  133. package/ts_build/src/services/SyncerService.js.map +1 -1
  134. package/ts_build/src/services/Tools.d.ts +6 -1
  135. package/ts_build/src/services/Tools.js +9 -3
  136. package/ts_build/src/services/Tools.js.map +1 -1
  137. package/ts_build/src/services/modules/index.d.ts +1 -1
  138. package/ts_build/src/services/modules/index.js +67 -27
  139. package/ts_build/src/services/modules/index.js.map +1 -1
  140. package/ts_build/src/types.d.ts +3 -0
  141. package/ts_build/src/types.js.map +1 -1
  142. package/ts_build/tests/agents/interrupt.test.d.ts +0 -1
  143. package/ts_build/tests/agents/interrupt.test.js +3 -13
  144. package/ts_build/tests/agents/interrupt.test.js.map +1 -1
  145. package/ts_build/tests/agents/observe-base.test.d.ts +1 -0
  146. package/ts_build/tests/agents/observe-base.test.js +149 -0
  147. package/ts_build/tests/agents/observe-base.test.js.map +1 -0
  148. package/ts_build/tests/agents/tools/connectAgent.test.d.ts +1 -0
  149. package/ts_build/tests/agents/tools/connectAgent.test.js +142 -0
  150. package/ts_build/tests/agents/tools/connectAgent.test.js.map +1 -0
  151. package/ts_build/tests/agents/tools/observe.test.d.ts +1 -0
  152. package/ts_build/tests/agents/tools/observe.test.js +148 -0
  153. package/ts_build/tests/agents/tools/observe.test.js.map +1 -0
  154. package/ts_build/tests/agents/tools/replyToParent.test.d.ts +1 -0
  155. package/ts_build/tests/agents/tools/replyToParent.test.js +116 -0
  156. package/ts_build/tests/agents/tools/replyToParent.test.js.map +1 -0
  157. package/ts_build/tests/agents/tools/sendAgentMessage.test.d.ts +1 -0
  158. package/ts_build/tests/agents/tools/sendAgentMessage.test.js +112 -0
  159. package/ts_build/tests/agents/tools/sendAgentMessage.test.js.map +1 -0
  160. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.d.ts +1 -0
  161. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js +147 -0
  162. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js.map +1 -0
  163. package/ts_build/tests/chat/detach-attach-rendering.test.d.ts +1 -0
  164. package/ts_build/tests/chat/detach-attach-rendering.test.js +168 -0
  165. package/ts_build/tests/chat/detach-attach-rendering.test.js.map +1 -0
  166. package/ts_build/tests/clients/contextLimits.test.js +11 -1
  167. package/ts_build/tests/clients/contextLimits.test.js.map +1 -1
  168. package/ts_build/tests/clients/pricing.test.js +10 -1
  169. package/ts_build/tests/clients/pricing.test.js.map +1 -1
  170. package/ts_build/tests/services/Tools.test.js +126 -8
  171. package/ts_build/tests/services/Tools.test.js.map +1 -1
  172. package/ts_build/tests/unit/modules/moduleLoading.test.js +84 -0
  173. package/ts_build/tests/unit/modules/moduleLoading.test.js.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sendAgentMessage.js","sourceRoot":"","sources":["../../../../src/agents/tools/sendAgentMessage.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,19 @@ export interface StartAgentTaskParams {
5
5
  taskId?: string;
6
6
  resume?: boolean;
7
7
  prompt: string;
8
+ syncRemote?: boolean;
8
9
  provider?: string;
9
10
  model?: string;
10
11
  agentName?: string;
11
12
  maxTimeLimit?: number;
12
13
  maxSpendLimit?: number;
13
14
  waitForCompletion?: boolean;
15
+ parentTaskId?: string;
16
+ _ctx?: {
17
+ caller?: any;
18
+ taskId?: string;
19
+ [key: string]: any;
20
+ };
14
21
  }
15
22
  export declare function startAgentTask(params: StartAgentTaskParams): Promise<string>;
16
23
  export declare const startAgentTaskDefinition: Tool;
@@ -52,21 +52,50 @@ function generateTaskId(prompt) {
52
52
  const fullId = `${epochSeconds}-${wordPart}`;
53
53
  return fullId.slice(0, 80);
54
54
  }
55
+ function subagentCapabilitiesNote() {
56
+ const lines = [
57
+ "",
58
+ "---",
59
+ "SUBAGENT ORCHESTRATION CAPABILITIES:",
60
+ "You are running as a knowhow agent with a synchronized task directory. In addition to your tools,",
61
+ "you can shell out (via execCommand) to the `knowhow agents` CLI to coordinate and inspect other agents:",
62
+ " • knowhow agents list — list running/recent agent tasks (with row indexes)",
63
+ " • knowhow agents status <id|-i N> — status, cost, last tool/message for a task",
64
+ " • knowhow agents tail <id|-i N> [-f] — read recent messages (read-only; -f to follow live)",
65
+ " • knowhow agents answer <id|-i N> — print the final answer of a COMPLETED task",
66
+ " • knowhow agents attach <id|-i N> — open the interactive chat attached to a running task",
67
+ "You can spawn more subagents with the startAgentTask tool, or run whole pipelines with the runGenerate tool",
68
+ "(supports dependsOn ordering, per-source agents, and concurrency for map/reduce fan-out).",
69
+ "To coordinate spawned subagents from your tools: use waitForAgentCompleted (join a subagent and",
70
+ "get a structured { status, costUsd, finalAnswer } result) and observe (stream a tool's results",
71
+ "back to yourself on an interval, e.g. observe waitForAgentCompleted or `agents status`).",
72
+ "To communicate with running agents: use sendAgentMessage (send a message or /poke to a child/peer/parent),",
73
+ "replyToParent (report back to whoever spawned you), and connectAgent (wire agents together with an ARRAY",
74
+ "of { listener, speaker } connections — enables bidirectional, pipeline, star, and mesh topologies in one call).",
75
+ ];
76
+ lines.push("---", "");
77
+ return lines.join("\n");
78
+ }
55
79
  async function startAgentTask(params) {
56
- const { messageId, prompt, taskId: providedTaskId, resume, syncFs, provider, model, agentName, maxTimeLimit, maxSpendLimit, waitForCompletion, } = params;
80
+ const { messageId, prompt, taskId: providedTaskId, resume, syncFs, syncRemote, provider, model, agentName, maxTimeLimit, maxSpendLimit, waitForCompletion, parentTaskId: explicitParentTaskId, _ctx, } = params;
57
81
  if (!prompt) {
58
82
  throw new Error("prompt is required to create a chat task");
59
83
  }
84
+ const useSyncFs = syncFs !== false && !messageId;
60
85
  const taskId = providedTaskId ?? generateTaskId(prompt);
61
86
  const agentTaskDir = path.join(AGENTS_DIR, taskId);
87
+ const parentTaskId = explicitParentTaskId ?? _ctx?.taskId ?? _ctx?.caller?.currentTaskId;
62
88
  const args = ["agent"];
63
89
  if (messageId) {
64
90
  args.push("--message-id", messageId);
65
91
  }
66
- else if (syncFs) {
92
+ else if (useSyncFs) {
67
93
  args.push("--sync-fs");
68
94
  }
69
- if (syncFs || providedTaskId) {
95
+ if (syncRemote) {
96
+ args.push("--sync-remote");
97
+ }
98
+ if (useSyncFs || providedTaskId) {
70
99
  args.push("--task-id", taskId);
71
100
  }
72
101
  if (provider) {
@@ -84,6 +113,9 @@ async function startAgentTask(params) {
84
113
  if (maxSpendLimit !== undefined) {
85
114
  args.push("--max-spend-limit", String(maxSpendLimit));
86
115
  }
116
+ if (parentTaskId) {
117
+ args.push("--parent-task-id", parentTaskId);
118
+ }
87
119
  if (resume) {
88
120
  args.push("--resume");
89
121
  }
@@ -102,7 +134,10 @@ async function startAgentTask(params) {
102
134
  });
103
135
  const pid = child.pid;
104
136
  fs.writeSync(fd, `PID: ${pid}\n`);
105
- child.stdin.write(prompt, "utf8");
137
+ const promptWithCaps = resume
138
+ ? prompt
139
+ : prompt + subagentCapabilitiesNote();
140
+ child.stdin.write(promptWithCaps, "utf8");
106
141
  child.stdin.end();
107
142
  return new Promise((resolve) => {
108
143
  let settled = false;
@@ -119,7 +154,7 @@ async function startAgentTask(params) {
119
154
  child.once("error", (e) => {
120
155
  done(`Failed to start agent: ${String(e)}\nLogs: ${logPath}`);
121
156
  });
122
- const syncFsNote = syncFs
157
+ const syncFsNote = useSyncFs
123
158
  ? `\nTask ID: ${taskId}\nAgent dir: ${agentTaskDir}\n` +
124
159
  `To send agent messages, write to: ${agentTaskDir}/input.txt\n` +
125
160
  `To check status, read: ${agentTaskDir}/status.txt\n`
@@ -159,7 +194,14 @@ exports.startAgentTaskDefinition = {
159
194
  },
160
195
  syncFs: {
161
196
  type: "boolean",
162
- description: "Enable filesystem-based synchronization for the task. Use this when no messageId is available.",
197
+ description: "Filesystem-based synchronization for the task. Defaults to true (enabled) when no messageId is given, " +
198
+ "so the spawned agent always appears in `knowhow agents list` and can be attached/tailed. Pass false to opt out.",
199
+ },
200
+ syncRemote: {
201
+ type: "boolean",
202
+ description: "Push this agent's work to a remote Knowhow task identified by taskId (in addition to fs sync). " +
203
+ "Use this to sync a spawned subagent's progress to an already-created remote task. " +
204
+ "If messageId is given instead, a fresh remote task is created from that message.",
163
205
  },
164
206
  prompt: {
165
207
  type: "string",
@@ -193,6 +235,11 @@ exports.startAgentTaskDefinition = {
193
235
  type: "boolean",
194
236
  description: "Resume a previously started task from where it left off. Must be used together with taskId which identifies the task to resume.",
195
237
  },
238
+ parentTaskId: {
239
+ type: "string",
240
+ description: "The taskId of the parent that should be notified by this child (e.g. via replyToParent). " +
241
+ "If omitted, it is auto-populated from the spawning agent's own taskId.",
242
+ },
196
243
  },
197
244
  required: ["prompt"],
198
245
  },
@@ -1 +1 @@
1
- {"version":3,"file":"startAgentTask.js","sourceRoot":"","sources":["../../../../src/agents/tools/startAgentTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"startAgentTask.js","sourceRoot":"","sources":["../../../../src/agents/tools/startAgentTask.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Tool } from "../../clients/types";
2
+ import { ToolCallContext } from "../../services/Tools";
3
+ export interface WaitForAgentCompletedParams {
4
+ taskId: string;
5
+ timeoutMs?: number;
6
+ pollIntervalMs?: number;
7
+ _ctx?: ToolCallContext;
8
+ }
9
+ export declare function waitForAgentCompleted(params: WaitForAgentCompletedParams): Promise<string>;
10
+ export declare const waitForAgentCompletedDefinition: Tool;
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.waitForAgentCompletedDefinition = void 0;
37
+ exports.waitForAgentCompleted = waitForAgentCompleted;
38
+ const fs = __importStar(require("fs"));
39
+ const path = __importStar(require("path"));
40
+ function agentsDir() {
41
+ return path.join(process.cwd(), ".knowhow", "processes", "agents");
42
+ }
43
+ const TERMINAL_STATUSES = new Set([
44
+ "completed",
45
+ "failed",
46
+ "killed",
47
+ "error",
48
+ "done",
49
+ ]);
50
+ function readMeta(taskId) {
51
+ try {
52
+ const metaPath = path.join(agentsDir(), taskId, "metadata.json");
53
+ if (!fs.existsSync(metaPath))
54
+ return null;
55
+ return JSON.parse(fs.readFileSync(metaPath, "utf8"));
56
+ }
57
+ catch {
58
+ return null;
59
+ }
60
+ }
61
+ function readStatusFile(taskId) {
62
+ try {
63
+ const statusPath = path.join(agentsDir(), taskId, "status.txt");
64
+ if (!fs.existsSync(statusPath))
65
+ return null;
66
+ return fs.readFileSync(statusPath, "utf8").trim();
67
+ }
68
+ catch {
69
+ return null;
70
+ }
71
+ }
72
+ function resolveStatus(meta, statusFile) {
73
+ if (meta?.status)
74
+ return meta.status;
75
+ if (statusFile)
76
+ return statusFile;
77
+ if (meta && meta.inProgress === false)
78
+ return "completed";
79
+ return "unknown";
80
+ }
81
+ function lastAssistantText(threads) {
82
+ if (!threads)
83
+ return undefined;
84
+ let messages = [];
85
+ if (Array.isArray(threads)) {
86
+ if (threads.length && Array.isArray(threads[0])) {
87
+ messages = threads.flat();
88
+ }
89
+ else {
90
+ messages = threads;
91
+ }
92
+ }
93
+ for (let i = messages.length - 1; i >= 0; i--) {
94
+ const msg = messages[i];
95
+ if (msg?.role === "assistant") {
96
+ if (typeof msg.content === "string" && msg.content.trim()) {
97
+ return msg.content.trim();
98
+ }
99
+ if (Array.isArray(msg.content)) {
100
+ const text = msg.content
101
+ .filter((c) => c?.type === "text")
102
+ .map((c) => c.text)
103
+ .join("\n")
104
+ .trim();
105
+ if (text)
106
+ return text;
107
+ }
108
+ }
109
+ }
110
+ return undefined;
111
+ }
112
+ function pidAlive(pid) {
113
+ try {
114
+ process.kill(pid, 0);
115
+ return true;
116
+ }
117
+ catch (e) {
118
+ return e?.code === "EPERM";
119
+ }
120
+ }
121
+ function metaPid(meta) {
122
+ const pid = meta?.pid ?? meta?.processId;
123
+ return typeof pid === "number" ? pid : undefined;
124
+ }
125
+ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
126
+ async function waitForAgentCompleted(params) {
127
+ const { taskId, timeoutMs = 30 * 60 * 1000, pollIntervalMs = 2000, } = params;
128
+ if (!taskId) {
129
+ return JSON.stringify({
130
+ taskId,
131
+ status: "error",
132
+ costUsd: 0,
133
+ error: "taskId is required for waitForAgentCompleted",
134
+ });
135
+ }
136
+ const taskDir = path.join(agentsDir(), taskId);
137
+ if (!fs.existsSync(taskDir)) {
138
+ return JSON.stringify({
139
+ taskId,
140
+ status: "error",
141
+ costUsd: 0,
142
+ error: `No agent task directory found for taskId: ${taskId}`,
143
+ });
144
+ }
145
+ const start = Date.now();
146
+ const interval = Math.max(250, pollIntervalMs);
147
+ let missingProcessPolls = 0;
148
+ while (true) {
149
+ const meta = readMeta(taskId);
150
+ const statusFile = readStatusFile(taskId);
151
+ const status = resolveStatus(meta, statusFile);
152
+ if (TERMINAL_STATUSES.has(status)) {
153
+ const finalAnswer = meta?.result ?? lastAssistantText(meta?.threads);
154
+ const result = {
155
+ taskId,
156
+ status,
157
+ costUsd: meta?.totalCostUsd ?? 0,
158
+ finalAnswer,
159
+ artifacts: meta?.artifacts,
160
+ elapsedMs: Date.now() - start,
161
+ };
162
+ return JSON.stringify(result);
163
+ }
164
+ const pid = metaPid(meta);
165
+ if (pid !== undefined && !pidAlive(pid)) {
166
+ missingProcessPolls++;
167
+ if (missingProcessPolls >= 2) {
168
+ const finalAnswer = meta?.result ?? lastAssistantText(meta?.threads);
169
+ return JSON.stringify({
170
+ taskId,
171
+ status: meta?.result ? "completed" : "failed",
172
+ costUsd: meta?.totalCostUsd ?? 0,
173
+ finalAnswer,
174
+ artifacts: meta?.artifacts,
175
+ elapsedMs: Date.now() - start,
176
+ error: meta?.result
177
+ ? undefined
178
+ : "Agent process exited without writing a terminal status",
179
+ });
180
+ }
181
+ }
182
+ else {
183
+ missingProcessPolls = 0;
184
+ }
185
+ if (Date.now() - start >= timeoutMs) {
186
+ return JSON.stringify({
187
+ taskId,
188
+ status,
189
+ costUsd: meta?.totalCostUsd ?? 0,
190
+ finalAnswer: meta?.result ?? lastAssistantText(meta?.threads),
191
+ artifacts: meta?.artifacts,
192
+ elapsedMs: Date.now() - start,
193
+ timedOut: true,
194
+ });
195
+ }
196
+ await sleep(interval);
197
+ }
198
+ }
199
+ exports.waitForAgentCompletedDefinition = {
200
+ type: "function",
201
+ function: {
202
+ name: "waitForAgentCompleted",
203
+ description: "Block until a spawned agent task (started via startAgentTask or runGenerate) reaches a " +
204
+ "terminal status (completed/failed/killed), then return a structured JSON result with " +
205
+ "{ status, costUsd, finalAnswer, artifacts, elapsedMs }. This is the native way to 'join' a " +
206
+ "subagent — prefer it over shell polling loops with sleep. Returns immediately if the task is " +
207
+ "already finished, and gives up with timedOut:true after timeoutMs.",
208
+ parameters: {
209
+ type: "object",
210
+ positional: false,
211
+ properties: {
212
+ taskId: {
213
+ type: "string",
214
+ description: "The taskId of the agent task to wait for (as returned/used by startAgentTask).",
215
+ },
216
+ timeoutMs: {
217
+ type: "number",
218
+ description: "Maximum time to wait in milliseconds before returning with timedOut:true. Default: 1800000 (30 min).",
219
+ },
220
+ pollIntervalMs: {
221
+ type: "number",
222
+ description: "How often to poll the task status in milliseconds. Default: 2000.",
223
+ },
224
+ },
225
+ required: ["taskId"],
226
+ },
227
+ },
228
+ };
229
+ //# sourceMappingURL=waitForAgentCompleted.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"waitForAgentCompleted.js","sourceRoot":"","sources":["../../../../src/agents/tools/waitForAgentCompleted.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export type AgentOptions = {
2
2
  syncFs?: boolean;
3
+ syncRemote?: boolean;
3
4
  taskId?: string;
4
5
  maxTimeLimit?: number;
5
6
  maxSpendLimit?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../../src/ai.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ export declare class AgentModule extends BaseChatModule {
56
56
  input: string;
57
57
  messageId?: string;
58
58
  syncFs?: boolean;
59
- existingKnowhowTaskId?: string;
59
+ syncRemote?: boolean;
60
60
  provider?: string;
61
61
  model?: string;
62
62
  maxTimeLimit?: number;
@@ -64,6 +64,7 @@ export declare class AgentModule extends BaseChatModule {
64
64
  chatHistory?: ChatInteraction[];
65
65
  run?: boolean;
66
66
  taskId?: string;
67
+ parentTaskId?: string;
67
68
  }): Promise<{
68
69
  agent: BaseAgent;
69
70
  taskId: string;
@@ -78,6 +79,7 @@ export declare class AgentModule extends BaseChatModule {
78
79
  threads: Message[][];
79
80
  messageId?: string;
80
81
  taskId?: string;
82
+ interactive?: boolean;
81
83
  }): Promise<{
82
84
  taskCompleted: Promise<string>;
83
85
  }>;
@@ -129,6 +129,23 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
129
129
  }
130
130
  },
131
131
  },
132
+ {
133
+ name: "compact",
134
+ description: "Force the attached agent to compact (summarize) its conversation now, dropping back to a much cheaper context size",
135
+ modes: ["agent:attached"],
136
+ handler: async (_args) => {
137
+ if (!this.attachedAgent) {
138
+ console.log("No attached agent to compact.");
139
+ return;
140
+ }
141
+ if (typeof this.attachedAgent.requestCompact !== "function") {
142
+ console.log("This agent does not support manual compaction (remote/watcher-backed agents compact automatically).");
143
+ return;
144
+ }
145
+ this.attachedAgent.requestCompact();
146
+ console.log("🗜 Compaction requested — the agent will summarize and shrink its context on the next step.");
147
+ },
148
+ },
132
149
  {
133
150
  name: "reasoning_effort",
134
151
  description: "Set the reasoning effort for the agent (none, low, medium, high). Use 'none' to disable thinking on models that support it.",
@@ -462,7 +479,6 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
462
479
  agentName,
463
480
  input: resumePrompt,
464
481
  messageId: session.knowhowMessageId,
465
- existingKnowhowTaskId: session.knowhowTaskId,
466
482
  chatHistory: [],
467
483
  run: false,
468
484
  });
@@ -528,7 +544,7 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
528
544
  let taskInfo = {
529
545
  taskId,
530
546
  knowhowMessageId: options.messageId,
531
- knowhowTaskId: options.existingKnowhowTaskId,
547
+ knowhowTaskId: options.syncRemote ? taskId : undefined,
532
548
  agentName,
533
549
  agent,
534
550
  initialInput: input,
@@ -545,8 +561,9 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
545
561
  prompt: input,
546
562
  messageId: options.messageId,
547
563
  syncFs: options.syncFs,
548
- existingKnowhowTaskId: options.existingKnowhowTaskId,
564
+ syncRemote: options.syncRemote,
549
565
  agentName,
566
+ parentTaskId: options.parentTaskId,
550
567
  });
551
568
  const webTaskId = syncer.getCreatedWebTaskId();
552
569
  knowhowTaskId = webTaskId;
@@ -652,29 +669,20 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
652
669
  role: "assistant",
653
670
  });
654
671
  };
655
- if (agent.eventTypes.toolCall) {
656
- agent.agentEvents.on(agent.eventTypes.toolCall, toolCallHandler);
657
- }
658
- if (agent.eventTypes.toolUsed) {
659
- agent.agentEvents.on(agent.eventTypes.toolUsed, toolResultHandler);
660
- }
661
- if (agent.eventTypes.agentSay) {
662
- agent.agentEvents.on(agent.eventTypes.agentSay, agentSayHandler);
663
- }
664
- this.renderer.setActiveTaskId(taskId);
665
- this.activeAgentTaskId = taskId;
666
- const taskCompleted = new Promise((resolve) => {
672
+ if (options.run) {
667
673
  if (agent.eventTypes.toolCall) {
668
- agent.agentEvents.removeListener(agent.eventTypes.toolCall, toolCallHandler);
674
+ agent.agentEvents.on(agent.eventTypes.toolCall, toolCallHandler);
669
675
  }
670
676
  if (agent.eventTypes.toolUsed) {
671
- agent.agentEvents.removeListener(agent.eventTypes.toolUsed, toolResultHandler);
677
+ agent.agentEvents.on(agent.eventTypes.toolUsed, toolResultHandler);
672
678
  }
673
679
  if (agent.eventTypes.agentSay) {
674
- agent.agentEvents.removeListener(agent.eventTypes.agentSay, agentSayHandler);
680
+ agent.agentEvents.on(agent.eventTypes.agentSay, agentSayHandler);
675
681
  }
676
- this.renderer.setActiveTaskId(undefined);
677
- this.activeAgentTaskId = undefined;
682
+ }
683
+ this.renderer.setActiveTaskId(taskId);
684
+ this.activeAgentTaskId = taskId;
685
+ const taskCompleted = new Promise((resolve) => {
678
686
  agent.agentEvents.once(agent.eventTypes.done, async (doneMsg) => {
679
687
  console.log("🎯 [AgentModule] Task Completed");
680
688
  done = true;
@@ -683,6 +691,17 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
683
691
  agent.agentEvents.removeListener(agent.eventTypes.agentLog, agentLogHandler);
684
692
  agent.agentEvents.removeListener(agent.eventTypes.agentStatus, agentStatusHandler);
685
693
  taskInfo = this.taskRegistry.get(taskId);
694
+ if (agent.eventTypes.toolCall) {
695
+ agent.agentEvents.removeListener(agent.eventTypes.toolCall, toolCallHandler);
696
+ }
697
+ if (agent.eventTypes.toolUsed) {
698
+ agent.agentEvents.removeListener(agent.eventTypes.toolUsed, toolResultHandler);
699
+ }
700
+ if (agent.eventTypes.agentSay) {
701
+ agent.agentEvents.removeListener(agent.eventTypes.agentSay, agentSayHandler);
702
+ }
703
+ this.renderer.setActiveTaskId(undefined);
704
+ this.activeAgentTaskId = undefined;
686
705
  await syncer.waitForFinalization();
687
706
  if (taskInfo) {
688
707
  taskInfo.status = "completed";
@@ -793,9 +812,15 @@ class AgentModule extends BaseChatModule_1.BaseChatModule {
793
812
  agentName,
794
813
  input: resumePrompt,
795
814
  messageId,
796
- existingKnowhowTaskId: taskId,
815
+ taskId,
816
+ syncRemote: !messageId && !!taskId,
797
817
  run: false,
798
818
  });
819
+ if (options.interactive) {
820
+ await this.attachedAgentChatLoop(result.taskId, result.agent, resumePrompt, resumeMessages);
821
+ return { taskCompleted: result.taskCompleted };
822
+ }
823
+ this.wireAgentRendering(result.taskId, result.agent.agentEvents, result.agent.eventTypes, result.agent.name);
799
824
  result.agent.call(resumePrompt, resumeMessages);
800
825
  return { taskCompleted: result.taskCompleted };
801
826
  }