sema-core 1.0.11 → 1.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -11
- package/dist/core/Conversation.d.ts +6 -1
- package/dist/core/Conversation.d.ts.map +1 -1
- package/dist/core/Conversation.js +72 -28
- package/dist/core/Conversation.js.map +1 -1
- package/dist/core/RunTools.d.ts.map +1 -1
- package/dist/core/RunTools.js +1 -1
- package/dist/core/RunTools.js.map +1 -1
- package/dist/core/SemaCore.d.ts +16 -0
- package/dist/core/SemaCore.d.ts.map +1 -1
- package/dist/core/SemaCore.js +30 -3
- package/dist/core/SemaCore.js.map +1 -1
- package/dist/core/SemaEngine.d.ts +2 -18
- package/dist/core/SemaEngine.d.ts.map +1 -1
- package/dist/core/SemaEngine.js +101 -131
- package/dist/core/SemaEngine.js.map +1 -1
- package/dist/events/EventSystem.d.ts.map +1 -1
- package/dist/events/EventSystem.js +6 -2
- package/dist/events/EventSystem.js.map +1 -1
- package/dist/events/types.d.ts +60 -13
- package/dist/events/types.d.ts.map +1 -1
- package/dist/events/types.js +0 -1
- package/dist/events/types.js.map +1 -1
- package/dist/manager/ConfManager.d.ts.map +1 -1
- package/dist/manager/ConfManager.js +3 -1
- package/dist/manager/ConfManager.js.map +1 -1
- package/dist/manager/CronManager.d.ts +52 -0
- package/dist/manager/CronManager.d.ts.map +1 -0
- package/dist/manager/CronManager.js +426 -0
- package/dist/manager/CronManager.js.map +1 -0
- package/dist/manager/PermissionManager.d.ts +1 -1
- package/dist/manager/PermissionManager.d.ts.map +1 -1
- package/dist/manager/PermissionManager.js +63 -12
- package/dist/manager/PermissionManager.js.map +1 -1
- package/dist/manager/StateManager.d.ts +79 -11
- package/dist/manager/StateManager.d.ts.map +1 -1
- package/dist/manager/StateManager.js +287 -4
- package/dist/manager/StateManager.js.map +1 -1
- package/dist/manager/TaskManager.d.ts +106 -0
- package/dist/manager/TaskManager.d.ts.map +1 -0
- package/dist/manager/TaskManager.js +664 -0
- package/dist/manager/TaskManager.js.map +1 -0
- package/dist/services/agents/defaultBuiltInAgentsConfs.js +3 -3
- package/dist/services/agents/defaultBuiltInAgentsConfs.js.map +1 -1
- package/dist/services/agents/systemReminder.d.ts.map +1 -1
- package/dist/services/agents/systemReminder.js +8 -118
- package/dist/services/agents/systemReminder.js.map +1 -1
- package/dist/services/api/adapt/anthropic.js +2 -2
- package/dist/services/api/adapt/anthropic.js.map +1 -1
- package/dist/services/api/adapt/openai.js +2 -2
- package/dist/services/api/adapt/openai.js.map +1 -1
- package/dist/services/api/adapt/util.d.ts +1 -1
- package/dist/services/api/adapt/util.d.ts.map +1 -1
- package/dist/services/api/adapt/util.js +2 -2
- package/dist/services/api/adapt/util.js.map +1 -1
- package/dist/services/api/cache.d.ts.map +1 -1
- package/dist/services/api/cache.js +1 -3
- package/dist/services/api/cache.js.map +1 -1
- package/dist/services/api/queryLLM.d.ts.map +1 -1
- package/dist/services/api/queryLLM.js +5 -0
- package/dist/services/api/queryLLM.js.map +1 -1
- package/dist/services/commands/runCommand.d.ts.map +1 -1
- package/dist/services/commands/runCommand.js +12 -0
- package/dist/services/commands/runCommand.js.map +1 -1
- package/dist/services/mcp/MCPManager.d.ts.map +1 -1
- package/dist/services/mcp/MCPManager.js +6 -1
- package/dist/services/mcp/MCPManager.js.map +1 -1
- package/dist/services/plugins/pluginsManager.d.ts.map +1 -1
- package/dist/services/plugins/pluginsManager.js +8 -1
- package/dist/services/plugins/pluginsManager.js.map +1 -1
- package/dist/services/rules/rulesManager.d.ts +51 -0
- package/dist/services/rules/rulesManager.d.ts.map +1 -0
- package/dist/services/rules/rulesManager.js +192 -0
- package/dist/services/rules/rulesManager.js.map +1 -0
- package/dist/tools/Agent/Agent.d.ts +19 -11
- package/dist/tools/Agent/Agent.d.ts.map +1 -1
- package/dist/tools/Agent/Agent.js +249 -72
- package/dist/tools/Agent/Agent.js.map +1 -1
- package/dist/tools/Agent/prompt.d.ts.map +1 -1
- package/dist/tools/Agent/prompt.js +7 -9
- package/dist/tools/Agent/prompt.js.map +1 -1
- package/dist/tools/Bash/Bash.d.ts +21 -11
- package/dist/tools/Bash/Bash.d.ts.map +1 -1
- package/dist/tools/Bash/Bash.js +74 -17
- package/dist/tools/Bash/Bash.js.map +1 -1
- package/dist/tools/Bash/prompt.d.ts.map +1 -1
- package/dist/tools/Bash/prompt.js +53 -70
- package/dist/tools/Bash/prompt.js.map +1 -1
- package/dist/tools/Bash/utils.d.ts +5 -1
- package/dist/tools/Bash/utils.d.ts.map +1 -1
- package/dist/tools/Bash/utils.js +24 -4
- package/dist/tools/Bash/utils.js.map +1 -1
- package/dist/tools/CronCreate/CronCreate.d.ts +68 -0
- package/dist/tools/CronCreate/CronCreate.d.ts.map +1 -0
- package/dist/tools/CronCreate/CronCreate.js +75 -0
- package/dist/tools/CronCreate/CronCreate.js.map +1 -0
- package/dist/tools/CronCreate/prompt.d.ts +3 -0
- package/dist/tools/CronCreate/prompt.d.ts.map +1 -0
- package/dist/tools/CronCreate/prompt.js +41 -0
- package/dist/tools/CronCreate/prompt.js.map +1 -0
- package/dist/tools/CronDelete/CronDelete.d.ts +45 -0
- package/dist/tools/CronDelete/CronDelete.d.ts.map +1 -0
- package/dist/tools/CronDelete/CronDelete.js +51 -0
- package/dist/tools/CronDelete/CronDelete.js.map +1 -0
- package/dist/tools/CronDelete/prompt.d.ts +3 -0
- package/dist/tools/CronDelete/prompt.d.ts.map +1 -0
- package/dist/tools/CronDelete/prompt.js +6 -0
- package/dist/tools/CronDelete/prompt.js.map +1 -0
- package/dist/tools/CronList/CronList.d.ts +33 -0
- package/dist/tools/CronList/CronList.d.ts.map +1 -0
- package/dist/tools/CronList/CronList.js +55 -0
- package/dist/tools/CronList/CronList.js.map +1 -0
- package/dist/tools/CronList/prompt.d.ts +3 -0
- package/dist/tools/CronList/prompt.d.ts.map +1 -0
- package/dist/tools/CronList/prompt.js +6 -0
- package/dist/tools/CronList/prompt.js.map +1 -0
- package/dist/tools/Edit/Edit.d.ts.map +1 -1
- package/dist/tools/Edit/Edit.js +7 -3
- package/dist/tools/Edit/Edit.js.map +1 -1
- package/dist/tools/Edit/utils.d.ts.map +1 -1
- package/dist/tools/Edit/utils.js +14 -5
- package/dist/tools/Edit/utils.js.map +1 -1
- package/dist/tools/Grep/Grep.d.ts +4 -4
- package/dist/tools/NotebookEdit/NotebookEdit.js +1 -1
- package/dist/tools/NotebookEdit/NotebookEdit.js.map +1 -1
- package/dist/tools/Read/Read.d.ts +74 -3
- package/dist/tools/Read/Read.d.ts.map +1 -1
- package/dist/tools/Read/Read.js +188 -18
- package/dist/tools/Read/Read.js.map +1 -1
- package/dist/tools/Read/prompt.d.ts +1 -1
- package/dist/tools/Read/prompt.d.ts.map +1 -1
- package/dist/tools/Read/prompt.js +2 -1
- package/dist/tools/Read/prompt.js.map +1 -1
- package/dist/tools/Skill/Skill.d.ts +2 -1
- package/dist/tools/Skill/Skill.d.ts.map +1 -1
- package/dist/tools/Skill/Skill.js +3 -2
- package/dist/tools/Skill/Skill.js.map +1 -1
- package/dist/tools/TaskCreate/TaskCreate.d.ts +54 -0
- package/dist/tools/TaskCreate/TaskCreate.d.ts.map +1 -0
- package/dist/tools/TaskCreate/TaskCreate.js +51 -0
- package/dist/tools/TaskCreate/TaskCreate.js.map +1 -0
- package/dist/tools/TaskCreate/prompt.d.ts +3 -0
- package/dist/tools/TaskCreate/prompt.d.ts.map +1 -0
- package/dist/tools/TaskCreate/prompt.js +45 -0
- package/dist/tools/TaskCreate/prompt.js.map +1 -0
- package/dist/tools/TaskGet/TaskGet.d.ts +34 -0
- package/dist/tools/TaskGet/TaskGet.d.ts.map +1 -0
- package/dist/tools/TaskGet/TaskGet.js +57 -0
- package/dist/tools/TaskGet/TaskGet.js.map +1 -0
- package/dist/tools/TaskGet/prompt.d.ts +3 -0
- package/dist/tools/TaskGet/prompt.d.ts.map +1 -0
- package/dist/tools/TaskGet/prompt.js +26 -0
- package/dist/tools/TaskGet/prompt.js.map +1 -0
- package/dist/tools/TaskList/TaskList.d.ts +27 -0
- package/dist/tools/TaskList/TaskList.d.ts.map +1 -0
- package/dist/tools/TaskList/TaskList.js +56 -0
- package/dist/tools/TaskList/TaskList.js.map +1 -0
- package/dist/tools/TaskList/prompt.d.ts +3 -0
- package/dist/tools/TaskList/prompt.d.ts.map +1 -0
- package/dist/tools/TaskList/prompt.js +25 -0
- package/dist/tools/TaskList/prompt.js.map +1 -0
- package/dist/tools/TaskOutput/TaskOutput.d.ts +58 -0
- package/dist/tools/TaskOutput/TaskOutput.d.ts.map +1 -0
- package/dist/tools/TaskOutput/TaskOutput.js +95 -0
- package/dist/tools/TaskOutput/TaskOutput.js.map +1 -0
- package/dist/tools/TaskStop/TaskStop.d.ts +50 -0
- package/dist/tools/TaskStop/TaskStop.d.ts.map +1 -0
- package/dist/tools/TaskStop/TaskStop.js +69 -0
- package/dist/tools/TaskStop/TaskStop.js.map +1 -0
- package/dist/tools/TaskUpdate/TaskUpdate.d.ts +88 -0
- package/dist/tools/TaskUpdate/TaskUpdate.d.ts.map +1 -0
- package/dist/tools/TaskUpdate/TaskUpdate.js +115 -0
- package/dist/tools/TaskUpdate/TaskUpdate.js.map +1 -0
- package/dist/tools/TaskUpdate/prompt.d.ts +3 -0
- package/dist/tools/TaskUpdate/prompt.d.ts.map +1 -0
- package/dist/tools/TaskUpdate/prompt.js +80 -0
- package/dist/tools/TaskUpdate/prompt.js.map +1 -0
- package/dist/tools/WebFetch/WebFetch.d.ts +62 -0
- package/dist/tools/WebFetch/WebFetch.d.ts.map +1 -0
- package/dist/tools/WebFetch/WebFetch.js +143 -0
- package/dist/tools/WebFetch/WebFetch.js.map +1 -0
- package/dist/tools/WebFetch/prompt.d.ts +4 -0
- package/dist/tools/WebFetch/prompt.d.ts.map +1 -0
- package/dist/tools/WebFetch/prompt.js +38 -0
- package/dist/tools/WebFetch/prompt.js.map +1 -0
- package/dist/tools/WebFetch/utils.d.ts +20 -0
- package/dist/tools/WebFetch/utils.d.ts.map +1 -0
- package/dist/tools/WebFetch/utils.js +223 -0
- package/dist/tools/WebFetch/utils.js.map +1 -0
- package/dist/tools/Write/Write.js +1 -1
- package/dist/tools/Write/Write.js.map +1 -1
- package/dist/tools/base/Tool.d.ts +1 -0
- package/dist/tools/base/Tool.d.ts.map +1 -1
- package/dist/tools/base/tools.d.ts +4 -2
- package/dist/tools/base/tools.d.ts.map +1 -1
- package/dist/tools/base/tools.js +61 -14
- package/dist/tools/base/tools.js.map +1 -1
- package/dist/types/cron.d.ts +21 -0
- package/dist/types/cron.d.ts.map +1 -0
- package/dist/types/cron.js +6 -0
- package/dist/types/cron.js.map +1 -0
- package/dist/types/index.d.ts +9 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +4 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/rule.d.ts +8 -0
- package/dist/types/rule.d.ts.map +1 -0
- package/dist/types/rule.js +3 -0
- package/dist/types/rule.js.map +1 -0
- package/dist/types/task.d.ts +93 -0
- package/dist/types/task.d.ts.map +1 -0
- package/dist/types/task.js +3 -0
- package/dist/types/task.js.map +1 -0
- package/dist/types/todoTask.d.ts +29 -0
- package/dist/types/todoTask.d.ts.map +1 -0
- package/dist/types/todoTask.js +6 -0
- package/dist/types/todoTask.js.map +1 -0
- package/dist/util/assembleTools.d.ts +6 -0
- package/dist/util/assembleTools.d.ts.map +1 -0
- package/dist/util/assembleTools.js +17 -0
- package/dist/util/assembleTools.js.map +1 -0
- package/dist/util/btw.d.ts +6 -0
- package/dist/util/btw.d.ts.map +1 -0
- package/dist/util/btw.js +80 -0
- package/dist/util/btw.js.map +1 -0
- package/dist/util/compact.d.ts +16 -4
- package/dist/util/compact.d.ts.map +1 -1
- package/dist/util/compact.js +12 -18
- package/dist/util/compact.js.map +1 -1
- package/dist/util/cron.d.ts +17 -0
- package/dist/util/cron.d.ts.map +1 -0
- package/dist/util/cron.js +82 -0
- package/dist/util/cron.js.map +1 -0
- package/dist/util/file.d.ts +16 -0
- package/dist/util/file.d.ts.map +1 -1
- package/dist/util/file.js +55 -0
- package/dist/util/file.js.map +1 -1
- package/dist/util/fileReference.d.ts.map +1 -1
- package/dist/util/fileReference.js +10 -1
- package/dist/util/fileReference.js.map +1 -1
- package/dist/util/format.d.ts +6 -0
- package/dist/util/format.d.ts.map +1 -1
- package/dist/util/format.js +17 -0
- package/dist/util/format.js.map +1 -1
- package/dist/util/history.d.ts +4 -1
- package/dist/util/history.d.ts.map +1 -1
- package/dist/util/history.js +9 -5
- package/dist/util/history.js.map +1 -1
- package/dist/util/inputQueue.d.ts +19 -0
- package/dist/util/inputQueue.d.ts.map +1 -0
- package/dist/util/inputQueue.js +30 -0
- package/dist/util/inputQueue.js.map +1 -0
- package/dist/util/message.d.ts +4 -0
- package/dist/util/message.d.ts.map +1 -1
- package/dist/util/message.js +27 -0
- package/dist/util/message.js.map +1 -1
- package/dist/util/pdf.d.ts +83 -0
- package/dist/util/pdf.d.ts.map +1 -0
- package/dist/util/pdf.js +472 -0
- package/dist/util/pdf.js.map +1 -0
- package/dist/util/process.d.ts +10 -0
- package/dist/util/process.d.ts.map +1 -0
- package/dist/util/process.js +88 -0
- package/dist/util/process.js.map +1 -0
- package/dist/util/savePath.d.ts +0 -11
- package/dist/util/savePath.d.ts.map +1 -1
- package/dist/util/savePath.js +0 -17
- package/dist/util/savePath.js.map +1 -1
- package/dist/util/shell.d.ts +10 -1
- package/dist/util/shell.d.ts.map +1 -1
- package/dist/util/shell.js +89 -34
- package/dist/util/shell.js.map +1 -1
- package/dist/util/topic.d.ts +7 -0
- package/dist/util/topic.d.ts.map +1 -1
- package/dist/util/topic.js +40 -0
- package/dist/util/topic.js.map +1 -1
- package/package.json +2 -1
- package/dist/services/command/customCommands.d.ts +0 -1
- package/dist/services/command/customCommands.d.ts.map +0 -1
- package/dist/services/command/customCommands.js +0 -197
- package/dist/services/command/customCommands.js.map +0 -1
- package/dist/services/command/runCommand.d.ts +0 -18
- package/dist/services/command/runCommand.d.ts.map +0 -1
- package/dist/services/command/runCommand.js +0 -147
- package/dist/services/command/runCommand.js.map +0 -1
- package/dist/services/plugins/customCommands.d.ts +0 -29
- package/dist/services/plugins/customCommands.d.ts.map +0 -1
- package/dist/services/plugins/customCommands.js +0 -227
- package/dist/services/plugins/customCommands.js.map +0 -1
- package/dist/services/skill/skillLoader.d.ts +0 -17
- package/dist/services/skill/skillLoader.d.ts.map +0 -1
- package/dist/services/skill/skillLoader.js +0 -122
- package/dist/services/skill/skillLoader.js.map +0 -1
- package/dist/services/skill/skillParser.d.ts +0 -15
- package/dist/services/skill/skillParser.d.ts.map +0 -1
- package/dist/services/skill/skillParser.js +0 -66
- package/dist/services/skill/skillParser.js.map +0 -1
- package/dist/services/skill/skillRegistry.d.ts +0 -34
- package/dist/services/skill/skillRegistry.d.ts.map +0 -1
- package/dist/services/skill/skillRegistry.js +0 -98
- package/dist/services/skill/skillRegistry.js.map +0 -1
- package/dist/services/skill/skillsManager.d.ts +0 -79
- package/dist/services/skill/skillsManager.d.ts.map +0 -1
- package/dist/services/skill/skillsManager.js +0 -289
- package/dist/services/skill/skillsManager.js.map +0 -1
- package/dist/tools/Task/Task.d.ts +0 -59
- package/dist/tools/Task/Task.d.ts.map +0 -1
- package/dist/tools/Task/Task.js +0 -212
- package/dist/tools/Task/Task.js.map +0 -1
- package/dist/tools/Task/prompt.d.ts +0 -6
- package/dist/tools/Task/prompt.d.ts.map +0 -1
- package/dist/tools/Task/prompt.js +0 -75
- package/dist/tools/Task/prompt.js.map +0 -1
- package/dist/util/frontmatter.d.ts +0 -35
- package/dist/util/frontmatter.d.ts.map +0 -1
- package/dist/util/frontmatter.js +0 -119
- package/dist/util/frontmatter.js.map +0 -1
- package/dist/util/rules.d.ts +0 -6
- package/dist/util/rules.d.ts.map +0 -1
- package/dist/util/rules.js +0 -162
- package/dist/util/rules.js.map +0 -1
- package/dist/util/systemReminder.d.ts +0 -10
- package/dist/util/systemReminder.d.ts.map +0 -1
- package/dist/util/systemReminder.js +0 -177
- package/dist/util/systemReminder.js.map +0 -1
|
@@ -2,49 +2,57 @@ import { z } from 'zod';
|
|
|
2
2
|
declare const inputSchema: z.ZodObject<{
|
|
3
3
|
description: z.ZodString;
|
|
4
4
|
prompt: z.ZodString;
|
|
5
|
-
subagent_type: z.ZodString
|
|
5
|
+
subagent_type: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
6
|
+
run_in_background: z.ZodOptional<z.ZodBoolean>;
|
|
6
7
|
}, "strict", z.ZodTypeAny, {
|
|
7
|
-
prompt: string;
|
|
8
8
|
description: string;
|
|
9
|
+
prompt: string;
|
|
9
10
|
subagent_type: string;
|
|
11
|
+
run_in_background?: boolean | undefined;
|
|
10
12
|
}, {
|
|
11
|
-
prompt: string;
|
|
12
13
|
description: string;
|
|
13
|
-
|
|
14
|
+
prompt: string;
|
|
15
|
+
run_in_background?: boolean | undefined;
|
|
16
|
+
subagent_type?: string | undefined;
|
|
14
17
|
}>;
|
|
15
18
|
type Output = {
|
|
16
19
|
agentType: string;
|
|
17
20
|
result: string;
|
|
18
21
|
durationMs: number;
|
|
19
22
|
};
|
|
20
|
-
export declare const
|
|
23
|
+
export declare const AgentTool: {
|
|
21
24
|
name: string;
|
|
22
25
|
description(): string;
|
|
23
26
|
inputSchema: z.ZodObject<{
|
|
24
27
|
description: z.ZodString;
|
|
25
28
|
prompt: z.ZodString;
|
|
26
|
-
subagent_type: z.ZodString
|
|
29
|
+
subagent_type: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
30
|
+
run_in_background: z.ZodOptional<z.ZodBoolean>;
|
|
27
31
|
}, "strict", z.ZodTypeAny, {
|
|
28
|
-
prompt: string;
|
|
29
32
|
description: string;
|
|
33
|
+
prompt: string;
|
|
30
34
|
subagent_type: string;
|
|
35
|
+
run_in_background?: boolean | undefined;
|
|
31
36
|
}, {
|
|
32
|
-
prompt: string;
|
|
33
37
|
description: string;
|
|
34
|
-
|
|
38
|
+
prompt: string;
|
|
39
|
+
run_in_background?: boolean | undefined;
|
|
40
|
+
subagent_type?: string | undefined;
|
|
35
41
|
}>;
|
|
36
42
|
isReadOnly(): false;
|
|
43
|
+
canRunConcurrently(): true;
|
|
37
44
|
genToolResultMessage({ agentType, result }: Output): {
|
|
38
45
|
title: string;
|
|
39
46
|
summary: string;
|
|
40
47
|
content: string;
|
|
41
48
|
};
|
|
42
49
|
getDisplayTitle(input: {
|
|
43
|
-
prompt: string;
|
|
44
50
|
description: string;
|
|
51
|
+
prompt: string;
|
|
45
52
|
subagent_type: string;
|
|
53
|
+
run_in_background?: boolean | undefined;
|
|
46
54
|
} | undefined): string;
|
|
47
|
-
call({ description, prompt, subagent_type }: z.infer<typeof inputSchema
|
|
55
|
+
call({ description, prompt, subagent_type, run_in_background }: z.infer<typeof inputSchema>, agentContext: any): AsyncGenerator<{
|
|
48
56
|
type: "result";
|
|
49
57
|
data: {
|
|
50
58
|
agentType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/tools/Agent/Agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../../src/tools/Agent/Agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAuBvB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;EAKf,CAAA;AAEF,KAAK,MAAM,GAAG;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oEAwBuE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,gBAAgB,GAAG;;;;;;;;;kCAyU3G,MAAM;CAGM,CAAA"}
|
|
@@ -1,11 +1,46 @@
|
|
|
1
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
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
36
|
+
exports.AgentTool = void 0;
|
|
37
|
+
const fs = __importStar(require("fs"));
|
|
4
38
|
const zod_1 = require("zod");
|
|
5
39
|
const nanoid_1 = require("nanoid");
|
|
6
40
|
const prompt_1 = require("./prompt");
|
|
7
41
|
const defaultBuiltInAgentsConfs_1 = require("../../services/agents/defaultBuiltInAgentsConfs");
|
|
8
42
|
const tools_1 = require("../base/tools");
|
|
43
|
+
const MCPManager_1 = require("../../services/mcp/MCPManager");
|
|
9
44
|
const Conversation_1 = require("../../core/Conversation");
|
|
10
45
|
const message_1 = require("../../util/message");
|
|
11
46
|
const agentsManager_1 = require("../../services/agents/agentsManager");
|
|
@@ -16,12 +51,15 @@ const errors_1 = require("../../types/errors");
|
|
|
16
51
|
const agentStats_1 = require("../../util/agentStats");
|
|
17
52
|
const genSystemPrompt_1 = require("../../services/agents/genSystemPrompt");
|
|
18
53
|
const systemReminder_1 = require("../../services/agents/systemReminder");
|
|
54
|
+
const TaskManager_1 = require("../../manager/TaskManager");
|
|
55
|
+
const ConfManager_1 = require("../../manager/ConfManager");
|
|
19
56
|
const inputSchema = zod_1.z.strictObject({
|
|
20
57
|
description: zod_1.z.string().describe('A short (3-5 word) description of the task'),
|
|
21
58
|
prompt: zod_1.z.string().describe('The task for the agent to perform'),
|
|
22
|
-
subagent_type: zod_1.z.string().describe('The type of specialized agent to use for this task'),
|
|
59
|
+
subagent_type: zod_1.z.string().optional().default('general-purpose').describe('The type of specialized agent to use for this task'),
|
|
60
|
+
run_in_background: zod_1.z.boolean().optional().describe(`Set to true to run this agent in the background. You will be notified when it completes.`),
|
|
23
61
|
});
|
|
24
|
-
exports.
|
|
62
|
+
exports.AgentTool = {
|
|
25
63
|
name: prompt_1.TOOL_NAME_FOR_PROMPT,
|
|
26
64
|
description() {
|
|
27
65
|
return (0, prompt_1.getDescription)();
|
|
@@ -31,17 +69,21 @@ exports.TaskTool = {
|
|
|
31
69
|
// 子代理可能会执行写操作,所以标记为非只读
|
|
32
70
|
return false;
|
|
33
71
|
},
|
|
72
|
+
canRunConcurrently() {
|
|
73
|
+
// 多个 Agent 实例之间互相独立,可并发执行
|
|
74
|
+
return true;
|
|
75
|
+
},
|
|
34
76
|
genToolResultMessage({ agentType, result }) {
|
|
35
77
|
return {
|
|
36
|
-
title: `${agentType}
|
|
37
|
-
summary:
|
|
38
|
-
content:
|
|
78
|
+
title: `${agentType}`,
|
|
79
|
+
summary: '',
|
|
80
|
+
content: ''
|
|
39
81
|
};
|
|
40
82
|
},
|
|
41
83
|
getDisplayTitle(input) {
|
|
42
84
|
return input?.description || prompt_1.TOOL_NAME_FOR_PROMPT;
|
|
43
85
|
},
|
|
44
|
-
async *call({ description, prompt, subagent_type }) {
|
|
86
|
+
async *call({ description, prompt, subagent_type = 'general-purpose', run_in_background }, agentContext) {
|
|
45
87
|
const start = Date.now();
|
|
46
88
|
const taskId = (0, nanoid_1.nanoid)();
|
|
47
89
|
const eventBus = (0, EventSystem_1.getEventBus)();
|
|
@@ -60,32 +102,31 @@ exports.TaskTool = {
|
|
|
60
102
|
return;
|
|
61
103
|
}
|
|
62
104
|
(0, log_1.logDebug)(`Starting ${agentConfig.name} agent with prompt: ${prompt}`);
|
|
63
|
-
// 2. 发送 task:agent:start 事件
|
|
64
|
-
const startEventData = {
|
|
65
|
-
taskId,
|
|
66
|
-
subagent_type: agentConfig.name,
|
|
67
|
-
description,
|
|
68
|
-
prompt,
|
|
69
|
-
};
|
|
70
|
-
eventBus.emit('task:agent:start', startEventData);
|
|
71
105
|
// 3. 准备子代理的系统提示(包含 agentConfig.prompt + notes + env + gitStatus)
|
|
72
106
|
const systemPromptContent = await (0, genSystemPrompt_1.buildAgentSystemPrompt)(agentConfig.prompt);
|
|
73
|
-
// 4. 获取子代理允许使用的工具(排除
|
|
107
|
+
// 4. 获取子代理允许使用的工具(排除 任务与代理 工具,防止嵌套)
|
|
74
108
|
let subagentTools;
|
|
75
109
|
if (!agentConfig.tools || agentConfig.tools === '*') {
|
|
76
|
-
subagentTools = (0, tools_1.
|
|
110
|
+
subagentTools = (0, tools_1.getAvailableBuiltinTools)().filter(t => !tools_1.SUBAGENT_EXCLUDED_TOOLS.has(t.name));
|
|
77
111
|
}
|
|
78
112
|
else {
|
|
79
|
-
subagentTools = (0, tools_1.
|
|
113
|
+
subagentTools = (0, tools_1.getAvailableBuiltinTools)(agentConfig.tools).filter(t => !tools_1.SUBAGENT_EXCLUDED_TOOLS.has(t.name));
|
|
114
|
+
}
|
|
115
|
+
// 子代理的 Bash 工具不支持后台执行:omit run_in_background,模型不可见此字段
|
|
116
|
+
subagentTools = subagentTools.map(t => {
|
|
117
|
+
if (t.name === 'Bash') {
|
|
118
|
+
return { ...t, inputSchema: t.inputSchema.omit({ run_in_background: true }) };
|
|
119
|
+
}
|
|
120
|
+
return t;
|
|
121
|
+
});
|
|
122
|
+
// 加入 MCP 工具
|
|
123
|
+
const mcpTools = (0, MCPManager_1.getMCPManager)().getMCPTools();
|
|
124
|
+
if (mcpTools.length > 0) {
|
|
125
|
+
subagentTools = [...subagentTools, ...mcpTools];
|
|
80
126
|
}
|
|
81
127
|
(0, log_1.logDebug)(`Subagent ${agentConfig.name} has ${subagentTools.length} tools available`);
|
|
82
|
-
// 5. 创建用户消息(包含
|
|
128
|
+
// 5. 创建用户消息(包含 rules 信息)
|
|
83
129
|
const additionalReminders = [];
|
|
84
|
-
// 添加 skills 信息(仅当子代理包含 Skill 工具时)
|
|
85
|
-
if (subagentTools.some(t => t.name === 'Skill')) {
|
|
86
|
-
const skillsReminders = (0, systemReminder_1.generateSkillsReminder)();
|
|
87
|
-
additionalReminders.push(...skillsReminders);
|
|
88
|
-
}
|
|
89
130
|
// 添加 rules 信息
|
|
90
131
|
const rulesReminders = (0, systemReminder_1.generateRulesReminders)();
|
|
91
132
|
additionalReminders.push(...rulesReminders);
|
|
@@ -93,7 +134,68 @@ exports.TaskTool = {
|
|
|
93
134
|
...additionalReminders,
|
|
94
135
|
{ type: 'text', text: prompt }
|
|
95
136
|
]);
|
|
96
|
-
|
|
137
|
+
const disableBackground = (0, ConfManager_1.getConfManager)().getCoreConfig()?.disableBackgroundTasks ?? false;
|
|
138
|
+
// 6. 后台模式:独立 AbortController,立即返回(禁用后台任务时跳过)
|
|
139
|
+
if (run_in_background && !disableBackground) {
|
|
140
|
+
const taskManager = (0, TaskManager_1.getTaskManager)();
|
|
141
|
+
const toolUseId = agentContext?.currentToolUseID || '';
|
|
142
|
+
const agentModel = (agentConfig.model === 'quick' || agentConfig.model === 'haiku') ? 'quick' : 'main';
|
|
143
|
+
eventBus.emit('task:agent:start', { taskId, subagent_type: agentConfig.name, description, prompt, run_in_background: true });
|
|
144
|
+
taskManager.spawnAgentTask(taskId, description, toolUseId, async (bgAbortController) => {
|
|
145
|
+
const bgContext = {
|
|
146
|
+
agentId: taskId,
|
|
147
|
+
abortController: bgAbortController,
|
|
148
|
+
tools: subagentTools,
|
|
149
|
+
model: agentModel,
|
|
150
|
+
};
|
|
151
|
+
const bgResultMessages = [];
|
|
152
|
+
try {
|
|
153
|
+
for await (const message of (0, Conversation_1.query)([userMessage], systemPromptContent, bgContext)) {
|
|
154
|
+
bgResultMessages.push(message);
|
|
155
|
+
}
|
|
156
|
+
const isInterrupted = bgAbortController.signal.aborted;
|
|
157
|
+
const stats = (0, agentStats_1.calculateStats)(bgResultMessages, start);
|
|
158
|
+
const summary = (0, agentStats_1.formatSummary)(stats, isInterrupted ? 'interrupted' : 'completed');
|
|
159
|
+
eventBus.emit('task:agent:end', {
|
|
160
|
+
taskId,
|
|
161
|
+
status: isInterrupted ? 'interrupted' : 'completed',
|
|
162
|
+
content: summary,
|
|
163
|
+
});
|
|
164
|
+
return {
|
|
165
|
+
result: (0, agentStats_1.extractResultText)(bgResultMessages),
|
|
166
|
+
usage: {
|
|
167
|
+
totalTokens: stats.totalTokens,
|
|
168
|
+
toolUses: stats.toolUseCount,
|
|
169
|
+
durationMs: stats.durationMs,
|
|
170
|
+
},
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
catch (error) {
|
|
174
|
+
const isInterrupted = (0, errors_1.isInterruptedException)(error) || bgAbortController.signal.aborted;
|
|
175
|
+
const stats = (0, agentStats_1.calculateStats)(bgResultMessages, start);
|
|
176
|
+
const summary = isInterrupted
|
|
177
|
+
? (0, agentStats_1.formatSummary)(stats, 'interrupted')
|
|
178
|
+
: `Error: ${error instanceof Error ? error.message : String(error)}`;
|
|
179
|
+
eventBus.emit('task:agent:end', {
|
|
180
|
+
taskId,
|
|
181
|
+
status: isInterrupted ? 'interrupted' : 'failed',
|
|
182
|
+
content: summary,
|
|
183
|
+
});
|
|
184
|
+
throw error;
|
|
185
|
+
}
|
|
186
|
+
finally {
|
|
187
|
+
stateManager.forAgent(taskId).clearAllState();
|
|
188
|
+
}
|
|
189
|
+
}, agentConfig.name);
|
|
190
|
+
const launchMsg = `Async agent launched successfully.\nagentId: ${taskId} (internal ID - do not mention to user.)\nThe agent is working in the background. You will be notified automatically when it completes.\nDo not duplicate this agent's work — avoid working with the same files or topics it is using. Work on non-overlapping tasks, or briefly tell the user what you launched and end your response.`;
|
|
191
|
+
yield {
|
|
192
|
+
type: 'result',
|
|
193
|
+
data: { agentType: agentConfig.name, result: launchMsg, durationMs: Date.now() - start },
|
|
194
|
+
resultForAssistant: launchMsg,
|
|
195
|
+
};
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
// 7. 创建独立 AbortController,联动主 AC
|
|
97
199
|
const sharedAbortController = stateManager.currentAbortController;
|
|
98
200
|
if (!sharedAbortController) {
|
|
99
201
|
const errorMsg = 'No active AbortController found. Cannot start subagent.';
|
|
@@ -104,68 +206,109 @@ exports.TaskTool = {
|
|
|
104
206
|
};
|
|
105
207
|
return;
|
|
106
208
|
}
|
|
107
|
-
|
|
209
|
+
const subAbortController = new AbortController();
|
|
210
|
+
// 联动:主AC abort → 子AC abort
|
|
211
|
+
const onMainAbort = () => subAbortController.abort();
|
|
212
|
+
sharedAbortController.signal.addEventListener('abort', onMainAbort);
|
|
213
|
+
const unlinkAbort = () => {
|
|
214
|
+
sharedAbortController.signal.removeEventListener('abort', onMainAbort);
|
|
215
|
+
};
|
|
216
|
+
// 如果主AC已经abort了,立刻abort子AC
|
|
217
|
+
if (sharedAbortController.signal.aborted) {
|
|
218
|
+
subAbortController.abort();
|
|
219
|
+
}
|
|
220
|
+
// 8. 构建子代理上下文(使用独立AC)
|
|
108
221
|
const subagentContext = {
|
|
109
222
|
agentId: taskId,
|
|
110
|
-
abortController:
|
|
223
|
+
abortController: subAbortController,
|
|
111
224
|
tools: subagentTools,
|
|
112
225
|
model: (agentConfig.model === 'quick' || agentConfig.model === 'haiku') ? 'quick' : 'main'
|
|
113
226
|
};
|
|
114
|
-
//
|
|
115
|
-
const
|
|
116
|
-
|
|
227
|
+
// 9. 注册前台任务到 TaskManager 和 StateManager
|
|
228
|
+
const taskManager = (0, TaskManager_1.getTaskManager)();
|
|
229
|
+
const toolUseId = agentContext?.currentToolUseID || '';
|
|
230
|
+
taskManager.registerForegroundAgent(taskId, description, toolUseId, subAbortController, unlinkAbort, agentConfig.name);
|
|
231
|
+
stateManager.addForegroundAgent(taskId);
|
|
232
|
+
// 10. 发送 task:agent:start 事件
|
|
233
|
+
eventBus.emit('task:agent:start', { taskId, subagent_type: agentConfig.name, description, prompt, run_in_background: false });
|
|
234
|
+
// 11. 将 generator 消费放入独立 async 函数
|
|
117
235
|
const resultMessages = [];
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
236
|
+
const executionPromise = (async () => {
|
|
237
|
+
try {
|
|
238
|
+
for await (const message of (0, Conversation_1.query)([userMessage], systemPromptContent, subagentContext)) {
|
|
239
|
+
resultMessages.push(message);
|
|
240
|
+
}
|
|
241
|
+
const isInterrupted = subAbortController.signal.aborted;
|
|
242
|
+
const stats = (0, agentStats_1.calculateStats)(resultMessages, start);
|
|
243
|
+
const summary = (0, agentStats_1.formatSummary)(stats, isInterrupted ? 'interrupted' : 'completed');
|
|
244
|
+
eventBus.emit('task:agent:end', {
|
|
245
|
+
taskId,
|
|
246
|
+
status: isInterrupted ? 'interrupted' : 'completed',
|
|
247
|
+
content: summary,
|
|
248
|
+
});
|
|
249
|
+
return {
|
|
250
|
+
result: (0, agentStats_1.extractResultText)(resultMessages),
|
|
251
|
+
usage: {
|
|
252
|
+
totalTokens: stats.totalTokens,
|
|
253
|
+
toolUses: stats.toolUseCount,
|
|
254
|
+
durationMs: stats.durationMs,
|
|
255
|
+
},
|
|
256
|
+
};
|
|
122
257
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
258
|
+
catch (error) {
|
|
259
|
+
const isInterrupted = (0, errors_1.isInterruptedException)(error) || subAbortController.signal.aborted;
|
|
260
|
+
const stats = (0, agentStats_1.calculateStats)(resultMessages, start);
|
|
261
|
+
const summary = isInterrupted
|
|
262
|
+
? (0, agentStats_1.formatSummary)(stats, 'interrupted')
|
|
263
|
+
: `Error: ${error instanceof Error ? error.message : String(error)}`;
|
|
264
|
+
eventBus.emit('task:agent:end', {
|
|
265
|
+
taskId,
|
|
266
|
+
status: isInterrupted ? 'interrupted' : 'failed',
|
|
267
|
+
content: summary,
|
|
268
|
+
});
|
|
269
|
+
throw error;
|
|
270
|
+
}
|
|
271
|
+
finally {
|
|
272
|
+
stateManager.forAgent(taskId).clearAllState();
|
|
273
|
+
stateManager.removeForegroundAgent(taskId);
|
|
274
|
+
}
|
|
275
|
+
})();
|
|
276
|
+
// 12. Promise.race:等执行完成 or 等转后台信号(禁用后台任务时不注册转后台)
|
|
277
|
+
let transferResolve = null;
|
|
278
|
+
const transferSignal = new Promise(resolve => {
|
|
279
|
+
transferResolve = resolve;
|
|
280
|
+
});
|
|
281
|
+
if (!disableBackground) {
|
|
282
|
+
taskManager.setTransferResolve(taskId, transferResolve);
|
|
283
|
+
}
|
|
284
|
+
// 创建统一处理 resolve/reject 的派生 Promise
|
|
285
|
+
const completionPromise = executionPromise.then(res => ({ type: 'completed', res }), err => ({ type: 'error', err }));
|
|
286
|
+
const raceResult = await Promise.race([
|
|
287
|
+
completionPromise,
|
|
288
|
+
transferSignal.then(() => ({ type: 'transferred' })),
|
|
289
|
+
]);
|
|
290
|
+
// 13. 根据 race 结果处理
|
|
291
|
+
if (raceResult.type === 'completed') {
|
|
292
|
+
const { res } = raceResult;
|
|
293
|
+
taskManager.finalizeTask(taskId, 0, res.result, res.usage);
|
|
140
294
|
const output = {
|
|
141
295
|
agentType: agentConfig.name,
|
|
142
|
-
result:
|
|
143
|
-
durationMs: Date.now() - start
|
|
296
|
+
result: res.result,
|
|
297
|
+
durationMs: Date.now() - start,
|
|
144
298
|
};
|
|
145
299
|
yield {
|
|
146
300
|
type: 'result',
|
|
147
301
|
data: output,
|
|
148
|
-
resultForAssistant:
|
|
302
|
+
resultForAssistant: res.result,
|
|
149
303
|
};
|
|
150
304
|
}
|
|
151
|
-
|
|
152
|
-
|
|
305
|
+
else if (raceResult.type === 'error') {
|
|
306
|
+
const { err } = raceResult;
|
|
307
|
+
const isInterrupted = (0, errors_1.isInterruptedException)(err) || subAbortController.signal.aborted;
|
|
153
308
|
const stats = (0, agentStats_1.calculateStats)(resultMessages, start);
|
|
154
|
-
|
|
155
|
-
const subagentState = stateManager.forAgent(taskId);
|
|
156
|
-
subagentState.clearAllState();
|
|
157
|
-
// 发送 task:agent:end 失败事件
|
|
158
|
-
const isInterrupted = (0, errors_1.isInterruptedException)(error);
|
|
159
|
-
const summary = isInterrupted
|
|
160
|
-
? (0, agentStats_1.formatSummary)(stats, 'interrupted')
|
|
161
|
-
: `Error: ${error instanceof Error ? error.message : String(error)}`;
|
|
162
|
-
const endEventData = {
|
|
163
|
-
taskId,
|
|
164
|
-
status: 'failed',
|
|
165
|
-
content: summary,
|
|
166
|
-
};
|
|
167
|
-
eventBus.emit('task:agent:end', endEventData);
|
|
309
|
+
taskManager.finalizeTask(taskId, isInterrupted ? 0 : 1);
|
|
168
310
|
if (isInterrupted) {
|
|
311
|
+
const summary = (0, agentStats_1.formatSummary)(stats, 'interrupted');
|
|
169
312
|
(0, log_1.logDebug)(`Subagent ${agentConfig.name} was interrupted`);
|
|
170
313
|
yield {
|
|
171
314
|
type: 'result',
|
|
@@ -174,7 +317,7 @@ exports.TaskTool = {
|
|
|
174
317
|
};
|
|
175
318
|
}
|
|
176
319
|
else {
|
|
177
|
-
const errorMsg = `Subagent execution failed: ${
|
|
320
|
+
const errorMsg = `Subagent execution failed: ${err instanceof Error ? err.message : String(err)}`;
|
|
178
321
|
(0, log_1.logError)(errorMsg);
|
|
179
322
|
yield {
|
|
180
323
|
type: 'result',
|
|
@@ -183,10 +326,44 @@ exports.TaskTool = {
|
|
|
183
326
|
};
|
|
184
327
|
}
|
|
185
328
|
}
|
|
329
|
+
else {
|
|
330
|
+
// 转后台:executionPromise 仍在运行,只是前台不再等待
|
|
331
|
+
const record = taskManager.getTask(taskId);
|
|
332
|
+
if (record) {
|
|
333
|
+
record._promise = completionPromise.then((result) => {
|
|
334
|
+
if (result.type === 'completed') {
|
|
335
|
+
try {
|
|
336
|
+
fs.writeFileSync(record.filepath, result.res.result);
|
|
337
|
+
}
|
|
338
|
+
catch { }
|
|
339
|
+
taskManager.finalizeTask(taskId, 0, result.res.result, result.res.usage);
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
const isAborted = subAbortController.signal.aborted;
|
|
343
|
+
const msg = isAborted
|
|
344
|
+
? '[Agent interrupted]'
|
|
345
|
+
: `[Agent error: ${result.err instanceof Error ? result.err.message : String(result.err)}]`;
|
|
346
|
+
if (!record.output)
|
|
347
|
+
record.output = msg;
|
|
348
|
+
try {
|
|
349
|
+
fs.appendFileSync(record.filepath, msg);
|
|
350
|
+
}
|
|
351
|
+
catch { }
|
|
352
|
+
taskManager.finalizeTask(taskId, isAborted ? 0 : 1);
|
|
353
|
+
}
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
const transferMsg = `Agent has been transferred to background.\nagentId: ${taskId}\nThe agent continues working in the background. You will be notified when it completes.`;
|
|
357
|
+
yield {
|
|
358
|
+
type: 'result',
|
|
359
|
+
data: { agentType: agentConfig.name, result: transferMsg, durationMs: Date.now() - start },
|
|
360
|
+
resultForAssistant: transferMsg,
|
|
361
|
+
};
|
|
362
|
+
}
|
|
186
363
|
}
|
|
187
364
|
catch (error) {
|
|
188
365
|
// 外层错误(配置错误等)
|
|
189
|
-
const errorMsg = `
|
|
366
|
+
const errorMsg = `AgentTool error: ${error instanceof Error ? error.message : String(error)}`;
|
|
190
367
|
(0, log_1.logError)(errorMsg);
|
|
191
368
|
// 清理子代理状态(防止内存泄漏)
|
|
192
369
|
const subagentState = stateManager.forAgent(taskId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/tools/Agent/Agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../../src/tools/Agent/Agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/tools/Agent/prompt.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,UAAU,CAAA;AAE3C;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/tools/Agent/prompt.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,UAAU,CAAA;AAE3C;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAgEvC"}
|
|
@@ -16,10 +16,10 @@ The Agent tool launches specialized agents (subprocesses) that autonomously hand
|
|
|
16
16
|
Available agent types and the tools they have access to:
|
|
17
17
|
${agentTypesDesc}
|
|
18
18
|
|
|
19
|
-
When using the Agent tool,
|
|
19
|
+
When using the Agent tool, specify a subagent_type parameter to select which agent type to use. If omitted, the general-purpose agent is used.
|
|
20
20
|
|
|
21
21
|
When NOT to use the Agent tool:
|
|
22
|
-
- If you want to read a specific file path, use the Read or Glob tool instead of the Agent tool, to find the match more quickly
|
|
22
|
+
- If you want to read a specific file path, use the Read tool or the Glob tool instead of the Agent tool, to find the match more quickly
|
|
23
23
|
- If you are searching for a specific class definition like "class Foo", use the Glob tool instead, to find the match more quickly
|
|
24
24
|
- If you are searching for code within a specific file or set of 2-3 files, use the Read tool instead of the Agent tool, to find the match more quickly
|
|
25
25
|
- Other tasks that are not related to the agent descriptions above
|
|
@@ -27,9 +27,10 @@ When NOT to use the Agent tool:
|
|
|
27
27
|
|
|
28
28
|
Usage notes:
|
|
29
29
|
- Always include a short description (3-5 words) summarizing what the agent will do
|
|
30
|
-
-
|
|
30
|
+
- Launch multiple agents concurrently whenever possible, to maximize performance; to do that, use a single message with multiple tool uses
|
|
31
31
|
- When the agent is done, it will return a single message back to you. The result returned by the agent is not visible to the user. To show the user the result, you should send a text message back to the user with a concise summary of the result.
|
|
32
|
-
-
|
|
32
|
+
- You can optionally run agents in the background using the run_in_background parameter. When an agent runs in the background, you will be automatically notified when it completes — do NOT sleep, poll, or proactively check on its progress. Continue with other work or respond to the user instead.
|
|
33
|
+
- **Foreground vs background**: Use foreground (default) when you need the agent's results before you can proceed — e.g., research agents whose findings inform your next steps. Use background when you have genuinely independent work to do in parallel.
|
|
33
34
|
- Provide clear, detailed prompts so the agent can work autonomously and return exactly the information you need.
|
|
34
35
|
- The agent's outputs should generally be trusted
|
|
35
36
|
- Clearly tell the agent whether you expect it to write code or just to do research (search, file reads, web fetches, etc.), since it is not aware of the user's intent
|
|
@@ -40,13 +41,11 @@ Example usage:
|
|
|
40
41
|
|
|
41
42
|
<example_agent_descriptions>
|
|
42
43
|
"test-runner": use this agent after you are done writing code to run tests
|
|
43
|
-
"greeting-responder": use this agent
|
|
44
|
-
</
|
|
44
|
+
"greeting-responder": use this agent to respond to user greetings with a friendly joke
|
|
45
|
+
</example_agent_descriptions>
|
|
45
46
|
|
|
46
47
|
<example>
|
|
47
48
|
user: "Please write a function that checks if a number is prime"
|
|
48
|
-
assistant: Sure let me write a function that checks if a number is prime
|
|
49
|
-
assistant: First let me use the Write tool to write a function that checks if a number is prime
|
|
50
49
|
assistant: I'm going to use the Write tool to write the following code:
|
|
51
50
|
<code>
|
|
52
51
|
function isPrime(n) {
|
|
@@ -60,7 +59,6 @@ function isPrime(n) {
|
|
|
60
59
|
<commentary>
|
|
61
60
|
Since a significant piece of code was written and the task was completed, now use the test-runner agent to run the tests
|
|
62
61
|
</commentary>
|
|
63
|
-
assistant: Now let me use the test-runner agent to run the tests
|
|
64
62
|
assistant: Uses the Agent tool to launch the test-runner agent
|
|
65
63
|
</example>
|
|
66
64
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tools/Agent/prompt.ts"],"names":[],"mappings":";;;AAOA,
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tools/Agent/prompt.ts"],"names":[],"mappings":";;;AAOA,wCAgEC;AAvED,uEAA8E;AAEjE,QAAA,oBAAoB,GAAG,OAAO,CAAA;AAE3C;;GAEG;AACH,SAAgB,cAAc;IAC5B,MAAM,cAAc,GAAG,IAAA,wCAAwB,GAAE,CAAA;IAEjD,OAAO;;;;;EAKP,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAsDL,CAAA;AAEX,CAAC"}
|