sema-core 1.0.12 → 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.map +1 -1
- package/dist/core/Conversation.js +1 -9
- package/dist/core/Conversation.js.map +1 -1
- package/dist/core/SemaCore.d.ts +6 -0
- package/dist/core/SemaCore.d.ts.map +1 -1
- package/dist/core/SemaCore.js +9 -1
- package/dist/core/SemaCore.js.map +1 -1
- package/dist/core/SemaEngine.d.ts.map +1 -1
- package/dist/core/SemaEngine.js +18 -3
- 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 +10 -9
- 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 +1 -0
- 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/StateManager.d.ts +37 -9
- package/dist/manager/StateManager.d.ts.map +1 -1
- package/dist/manager/StateManager.js +215 -1
- package/dist/manager/StateManager.js.map +1 -1
- package/dist/services/agents/defaultBuiltInAgentsConfs.js +2 -2
- package/dist/services/agents/defaultBuiltInAgentsConfs.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/tools/Agent/Agent.d.ts +6 -6
- package/dist/tools/Agent/Agent.d.ts.map +1 -1
- package/dist/tools/Agent/Agent.js +5 -6
- package/dist/tools/Agent/Agent.js.map +1 -1
- package/dist/tools/Bash/prompt.js +2 -2
- 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/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/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.map +1 -1
- package/dist/tools/WebFetch/WebFetch.js +28 -3
- package/dist/tools/WebFetch/WebFetch.js.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 +49 -12
- 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 +2 -0
- package/dist/types/index.d.ts.map +1 -1
- 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 +1 -1
- package/dist/util/assembleTools.d.ts.map +1 -1
- package/dist/util/assembleTools.js +2 -6
- package/dist/util/assembleTools.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/history.d.ts +3 -1
- package/dist/util/history.d.ts.map +1 -1
- package/dist/util/history.js +5 -3
- package/dist/util/history.js.map +1 -1
- package/package.json +2 -1
- package/dist/core/InjectPendingInputs.d.ts +0 -8
- package/dist/core/InjectPendingInputs.d.ts.map +0 -1
- package/dist/core/InjectPendingInputs.js +0 -58
- package/dist/core/InjectPendingInputs.js.map +0 -1
- package/dist/core/btw.d.ts +0 -6
- package/dist/core/btw.d.ts.map +0 -1
- package/dist/core/btw.js +0 -79
- package/dist/core/btw.js.map +0 -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
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
declare const inputSchema: z.ZodObject<{
|
|
3
|
+
taskId: z.ZodString;
|
|
4
|
+
subject: z.ZodOptional<z.ZodString>;
|
|
5
|
+
description: z.ZodOptional<z.ZodString>;
|
|
6
|
+
activeForm: z.ZodOptional<z.ZodString>;
|
|
7
|
+
status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed", "deleted"]>>;
|
|
8
|
+
addBlocks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
9
|
+
addBlockedBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
10
|
+
owner: z.ZodOptional<z.ZodString>;
|
|
11
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
12
|
+
}, "strict", z.ZodTypeAny, {
|
|
13
|
+
taskId: string;
|
|
14
|
+
status?: "pending" | "in_progress" | "completed" | "deleted" | undefined;
|
|
15
|
+
subject?: string | undefined;
|
|
16
|
+
description?: string | undefined;
|
|
17
|
+
activeForm?: string | undefined;
|
|
18
|
+
metadata?: Record<string, unknown> | undefined;
|
|
19
|
+
addBlocks?: string[] | undefined;
|
|
20
|
+
addBlockedBy?: string[] | undefined;
|
|
21
|
+
owner?: string | undefined;
|
|
22
|
+
}, {
|
|
23
|
+
taskId: string;
|
|
24
|
+
status?: "pending" | "in_progress" | "completed" | "deleted" | undefined;
|
|
25
|
+
subject?: string | undefined;
|
|
26
|
+
description?: string | undefined;
|
|
27
|
+
activeForm?: string | undefined;
|
|
28
|
+
metadata?: Record<string, unknown> | undefined;
|
|
29
|
+
addBlocks?: string[] | undefined;
|
|
30
|
+
addBlockedBy?: string[] | undefined;
|
|
31
|
+
owner?: string | undefined;
|
|
32
|
+
}>;
|
|
33
|
+
type Out = {
|
|
34
|
+
success: boolean;
|
|
35
|
+
taskId: string;
|
|
36
|
+
updatedFields: string[];
|
|
37
|
+
statusChange?: {
|
|
38
|
+
from: string;
|
|
39
|
+
to: string;
|
|
40
|
+
};
|
|
41
|
+
error?: string;
|
|
42
|
+
};
|
|
43
|
+
export declare const TaskUpdateTool: {
|
|
44
|
+
name: string;
|
|
45
|
+
description(): string;
|
|
46
|
+
inputSchema: z.ZodObject<{
|
|
47
|
+
taskId: z.ZodString;
|
|
48
|
+
subject: z.ZodOptional<z.ZodString>;
|
|
49
|
+
description: z.ZodOptional<z.ZodString>;
|
|
50
|
+
activeForm: z.ZodOptional<z.ZodString>;
|
|
51
|
+
status: z.ZodOptional<z.ZodEnum<["pending", "in_progress", "completed", "deleted"]>>;
|
|
52
|
+
addBlocks: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
53
|
+
addBlockedBy: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
54
|
+
owner: z.ZodOptional<z.ZodString>;
|
|
55
|
+
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
56
|
+
}, "strict", z.ZodTypeAny, {
|
|
57
|
+
taskId: string;
|
|
58
|
+
status?: "pending" | "in_progress" | "completed" | "deleted" | undefined;
|
|
59
|
+
subject?: string | undefined;
|
|
60
|
+
description?: string | undefined;
|
|
61
|
+
activeForm?: string | undefined;
|
|
62
|
+
metadata?: Record<string, unknown> | undefined;
|
|
63
|
+
addBlocks?: string[] | undefined;
|
|
64
|
+
addBlockedBy?: string[] | undefined;
|
|
65
|
+
owner?: string | undefined;
|
|
66
|
+
}, {
|
|
67
|
+
taskId: string;
|
|
68
|
+
status?: "pending" | "in_progress" | "completed" | "deleted" | undefined;
|
|
69
|
+
subject?: string | undefined;
|
|
70
|
+
description?: string | undefined;
|
|
71
|
+
activeForm?: string | undefined;
|
|
72
|
+
metadata?: Record<string, unknown> | undefined;
|
|
73
|
+
addBlocks?: string[] | undefined;
|
|
74
|
+
addBlockedBy?: string[] | undefined;
|
|
75
|
+
owner?: string | undefined;
|
|
76
|
+
}>;
|
|
77
|
+
isReadOnly(): false;
|
|
78
|
+
canRunConcurrently(): true;
|
|
79
|
+
genResultForAssistant(data: Out): string;
|
|
80
|
+
getDisplayTitle(input: any): string;
|
|
81
|
+
call({ taskId, subject, description, activeForm, status, addBlocks, addBlockedBy, metadata }: z.infer<typeof inputSchema>, agentContext: any): AsyncGenerator<{
|
|
82
|
+
type: "result";
|
|
83
|
+
data: Out;
|
|
84
|
+
resultForAssistant: string;
|
|
85
|
+
}, void, unknown>;
|
|
86
|
+
};
|
|
87
|
+
export {};
|
|
88
|
+
//# sourceMappingURL=TaskUpdate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskUpdate.d.ts","sourceRoot":"","sources":["../../../src/tools/TaskUpdate/TaskUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUf,CAAA;AAEF,KAAK,GAAG,GAAG;IACT,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,EAAE,CAAA;IACvB,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAOD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAYG,GAAG;2BAGR,GAAG;kGAIiE,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,gBACtG,GAAG;;;;;CAgFoB,CAAA"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TaskUpdateTool = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const prompt_1 = require("./prompt");
|
|
6
|
+
const StateManager_1 = require("../../manager/StateManager");
|
|
7
|
+
const TaskStatusEnum = zod_1.z.enum(['pending', 'in_progress', 'completed', 'deleted']);
|
|
8
|
+
const inputSchema = zod_1.z.strictObject({
|
|
9
|
+
taskId: zod_1.z.string().describe('The ID of the task to update'),
|
|
10
|
+
subject: zod_1.z.string().optional().describe('New subject for the task'),
|
|
11
|
+
description: zod_1.z.string().optional().describe('New description for the task'),
|
|
12
|
+
activeForm: zod_1.z.string().optional().describe("Present continuous form shown in spinner when in_progress (e.g., \"Running tests\")"),
|
|
13
|
+
status: TaskStatusEnum.optional().describe('New status for the task'),
|
|
14
|
+
addBlocks: zod_1.z.array(zod_1.z.string()).optional().describe('Task IDs that this task blocks'),
|
|
15
|
+
addBlockedBy: zod_1.z.array(zod_1.z.string()).optional().describe('Task IDs that block this task'),
|
|
16
|
+
owner: zod_1.z.string().optional().describe('New owner for the task'),
|
|
17
|
+
metadata: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional().describe('Metadata keys to merge into the task. Set a key to null to delete it.'),
|
|
18
|
+
});
|
|
19
|
+
function formatResult(data) {
|
|
20
|
+
if (!data.success)
|
|
21
|
+
return data.error || `Task #${data.taskId} not found`;
|
|
22
|
+
return `Updated task #${data.taskId} ${data.updatedFields.join(', ')}`;
|
|
23
|
+
}
|
|
24
|
+
exports.TaskUpdateTool = {
|
|
25
|
+
name: prompt_1.TOOL_NAME_FOR_PROMPT,
|
|
26
|
+
description() {
|
|
27
|
+
return prompt_1.DESCRIPTION;
|
|
28
|
+
},
|
|
29
|
+
inputSchema,
|
|
30
|
+
isReadOnly() {
|
|
31
|
+
return false;
|
|
32
|
+
},
|
|
33
|
+
canRunConcurrently() {
|
|
34
|
+
return true;
|
|
35
|
+
},
|
|
36
|
+
genResultForAssistant(data) {
|
|
37
|
+
return formatResult(data);
|
|
38
|
+
},
|
|
39
|
+
getDisplayTitle(input) {
|
|
40
|
+
return `TaskUpdate: ${input?.taskId ?? ''}`;
|
|
41
|
+
},
|
|
42
|
+
async *call({ taskId, subject, description, activeForm, status, addBlocks, addBlockedBy, metadata }, agentContext) {
|
|
43
|
+
const stateManager = (0, StateManager_1.getStateManager)();
|
|
44
|
+
const agentState = stateManager.forAgent(agentContext.agentId);
|
|
45
|
+
// 查找任务
|
|
46
|
+
const existing = agentState.getTodoTask(taskId);
|
|
47
|
+
if (!existing) {
|
|
48
|
+
const data = { success: false, taskId, updatedFields: [], error: 'Task not found' };
|
|
49
|
+
yield { type: 'result', data, resultForAssistant: formatResult(data) };
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
// 删除
|
|
53
|
+
if (status === 'deleted') {
|
|
54
|
+
const deleted = agentState.deleteTodoTask(taskId);
|
|
55
|
+
const data = {
|
|
56
|
+
success: deleted,
|
|
57
|
+
taskId,
|
|
58
|
+
updatedFields: deleted ? ['deleted'] : [],
|
|
59
|
+
statusChange: deleted ? { from: existing.status, to: 'deleted' } : undefined,
|
|
60
|
+
error: deleted ? undefined : 'Failed to delete task',
|
|
61
|
+
};
|
|
62
|
+
yield { type: 'result', data, resultForAssistant: formatResult(data) };
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
// 收集变更
|
|
66
|
+
const updates = {};
|
|
67
|
+
const updatedFields = [];
|
|
68
|
+
if (subject !== undefined && subject !== existing.subject) {
|
|
69
|
+
updates.subject = subject;
|
|
70
|
+
updatedFields.push('subject');
|
|
71
|
+
}
|
|
72
|
+
if (description !== undefined && description !== existing.description) {
|
|
73
|
+
updates.description = description;
|
|
74
|
+
updatedFields.push('description');
|
|
75
|
+
}
|
|
76
|
+
if (activeForm !== undefined && activeForm !== existing.activeForm) {
|
|
77
|
+
updates.activeForm = activeForm;
|
|
78
|
+
updatedFields.push('activeForm');
|
|
79
|
+
}
|
|
80
|
+
if (status !== undefined && status !== existing.status) {
|
|
81
|
+
updates.status = status;
|
|
82
|
+
updatedFields.push('status');
|
|
83
|
+
}
|
|
84
|
+
if (metadata !== undefined) {
|
|
85
|
+
updates.metadata = metadata;
|
|
86
|
+
updatedFields.push('metadata');
|
|
87
|
+
}
|
|
88
|
+
if (Object.keys(updates).length > 0) {
|
|
89
|
+
agentState.updateTodoTask(taskId, updates);
|
|
90
|
+
}
|
|
91
|
+
// 建立阻塞关系(双向写入)
|
|
92
|
+
if (addBlocks && addBlocks.length > 0) {
|
|
93
|
+
for (const blockId of addBlocks) {
|
|
94
|
+
agentState.blockTask(taskId, blockId);
|
|
95
|
+
}
|
|
96
|
+
updatedFields.push('addBlocks');
|
|
97
|
+
}
|
|
98
|
+
if (addBlockedBy && addBlockedBy.length > 0) {
|
|
99
|
+
for (const blockerId of addBlockedBy) {
|
|
100
|
+
agentState.blockTask(blockerId, taskId);
|
|
101
|
+
}
|
|
102
|
+
updatedFields.push('addBlockedBy');
|
|
103
|
+
}
|
|
104
|
+
const data = {
|
|
105
|
+
success: true,
|
|
106
|
+
taskId,
|
|
107
|
+
updatedFields,
|
|
108
|
+
statusChange: updates.status !== undefined
|
|
109
|
+
? { from: existing.status, to: updates.status }
|
|
110
|
+
: undefined,
|
|
111
|
+
};
|
|
112
|
+
yield { type: 'result', data, resultForAssistant: formatResult(data) };
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=TaskUpdate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskUpdate.js","sourceRoot":"","sources":["../../../src/tools/TaskUpdate/TaskUpdate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const TOOL_NAME_FOR_PROMPT = "TaskUpdate";
|
|
2
|
+
export declare const DESCRIPTION = "Use this tool to update a task in the task list.\n\n## When to Use This Tool\n\n**Mark tasks as resolved:**\n- When you have completed the work described in a task\n- When a task is no longer needed or has been superseded\n- IMPORTANT: Always mark your assigned tasks as resolved when you finish them\n- After resolving, call TaskList to find your next task\n\n- ONLY mark a task as completed when you have FULLY accomplished it\n- If you encounter errors, blockers, or cannot finish, keep the task as in_progress\n- When blocked, create a new task describing what needs to be resolved\n- Never mark a task as completed if:\n - Tests are failing\n - Implementation is partial\n - You encountered unresolved errors\n - You couldn't find necessary files or dependencies\n\n**Delete tasks:**\n- When a task is no longer relevant or was created in error\n- Setting status to `deleted` permanently removes the task\n\n**Update task details:**\n- When requirements change or become clearer\n- When establishing dependencies between tasks\n\n## Fields You Can Update\n\n- **status**: The task status (see Status Workflow below)\n- **subject**: Change the task title (imperative form, e.g., \"Run tests\")\n- **description**: Change the task description\n- **activeForm**: Present continuous form shown in spinner when in_progress (e.g., \"Running tests\")\n- **owner**: Change the task owner (agent name)\n- **metadata**: Merge metadata keys into the task (set a key to null to delete it)\n- **addBlocks**: Mark tasks that cannot start until this one completes\n- **addBlockedBy**: Mark tasks that must complete before this one can start\n\n## Status Workflow\n\nStatus progresses: `pending` \u2192 `in_progress` \u2192 `completed`\n\nUse `deleted` to permanently remove a task.\n\n## Staleness\n\nMake sure to read a task's latest state using `TaskGet` before updating it.\n\n## Examples\n\nMark task as in progress when starting work:\n```json\n{\"taskId\": \"1\", \"status\": \"in_progress\"}\n```\n\nMark task as completed after finishing work:\n```json\n{\"taskId\": \"1\", \"status\": \"completed\"}\n```\n\nDelete a task:\n```json\n{\"taskId\": \"1\", \"status\": \"deleted\"}\n```\n\nClaim a task by setting owner:\n```json\n{\"taskId\": \"1\", \"owner\": \"my-name\"}\n```\n\nSet up task dependencies:\n```json\n{\"taskId\": \"2\", \"addBlockedBy\": [\"1\"]}\n```\n";
|
|
3
|
+
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/tools/TaskUpdate/prompt.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,eAAe,CAAA;AAEhD,eAAO,MAAM,WAAW,w0EA0EvB,CAAA"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DESCRIPTION = exports.TOOL_NAME_FOR_PROMPT = void 0;
|
|
4
|
+
exports.TOOL_NAME_FOR_PROMPT = 'TaskUpdate';
|
|
5
|
+
exports.DESCRIPTION = `Use this tool to update a task in the task list.
|
|
6
|
+
|
|
7
|
+
## When to Use This Tool
|
|
8
|
+
|
|
9
|
+
**Mark tasks as resolved:**
|
|
10
|
+
- When you have completed the work described in a task
|
|
11
|
+
- When a task is no longer needed or has been superseded
|
|
12
|
+
- IMPORTANT: Always mark your assigned tasks as resolved when you finish them
|
|
13
|
+
- After resolving, call TaskList to find your next task
|
|
14
|
+
|
|
15
|
+
- ONLY mark a task as completed when you have FULLY accomplished it
|
|
16
|
+
- If you encounter errors, blockers, or cannot finish, keep the task as in_progress
|
|
17
|
+
- When blocked, create a new task describing what needs to be resolved
|
|
18
|
+
- Never mark a task as completed if:
|
|
19
|
+
- Tests are failing
|
|
20
|
+
- Implementation is partial
|
|
21
|
+
- You encountered unresolved errors
|
|
22
|
+
- You couldn't find necessary files or dependencies
|
|
23
|
+
|
|
24
|
+
**Delete tasks:**
|
|
25
|
+
- When a task is no longer relevant or was created in error
|
|
26
|
+
- Setting status to \`deleted\` permanently removes the task
|
|
27
|
+
|
|
28
|
+
**Update task details:**
|
|
29
|
+
- When requirements change or become clearer
|
|
30
|
+
- When establishing dependencies between tasks
|
|
31
|
+
|
|
32
|
+
## Fields You Can Update
|
|
33
|
+
|
|
34
|
+
- **status**: The task status (see Status Workflow below)
|
|
35
|
+
- **subject**: Change the task title (imperative form, e.g., "Run tests")
|
|
36
|
+
- **description**: Change the task description
|
|
37
|
+
- **activeForm**: Present continuous form shown in spinner when in_progress (e.g., "Running tests")
|
|
38
|
+
- **owner**: Change the task owner (agent name)
|
|
39
|
+
- **metadata**: Merge metadata keys into the task (set a key to null to delete it)
|
|
40
|
+
- **addBlocks**: Mark tasks that cannot start until this one completes
|
|
41
|
+
- **addBlockedBy**: Mark tasks that must complete before this one can start
|
|
42
|
+
|
|
43
|
+
## Status Workflow
|
|
44
|
+
|
|
45
|
+
Status progresses: \`pending\` → \`in_progress\` → \`completed\`
|
|
46
|
+
|
|
47
|
+
Use \`deleted\` to permanently remove a task.
|
|
48
|
+
|
|
49
|
+
## Staleness
|
|
50
|
+
|
|
51
|
+
Make sure to read a task's latest state using \`TaskGet\` before updating it.
|
|
52
|
+
|
|
53
|
+
## Examples
|
|
54
|
+
|
|
55
|
+
Mark task as in progress when starting work:
|
|
56
|
+
\`\`\`json
|
|
57
|
+
{"taskId": "1", "status": "in_progress"}
|
|
58
|
+
\`\`\`
|
|
59
|
+
|
|
60
|
+
Mark task as completed after finishing work:
|
|
61
|
+
\`\`\`json
|
|
62
|
+
{"taskId": "1", "status": "completed"}
|
|
63
|
+
\`\`\`
|
|
64
|
+
|
|
65
|
+
Delete a task:
|
|
66
|
+
\`\`\`json
|
|
67
|
+
{"taskId": "1", "status": "deleted"}
|
|
68
|
+
\`\`\`
|
|
69
|
+
|
|
70
|
+
Claim a task by setting owner:
|
|
71
|
+
\`\`\`json
|
|
72
|
+
{"taskId": "1", "owner": "my-name"}
|
|
73
|
+
\`\`\`
|
|
74
|
+
|
|
75
|
+
Set up task dependencies:
|
|
76
|
+
\`\`\`json
|
|
77
|
+
{"taskId": "2", "addBlockedBy": ["1"]}
|
|
78
|
+
\`\`\`
|
|
79
|
+
`;
|
|
80
|
+
//# sourceMappingURL=prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tools/TaskUpdate/prompt.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,YAAY,CAAA;AAEnC,QAAA,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0E1B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebFetch.d.ts","sourceRoot":"","sources":["../../../src/tools/WebFetch/WebFetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"WebFetch.d.ts","sourceRoot":"","sources":["../../../src/tools/WebFetch/WebFetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAkBvB,KAAK,MAAM,GAAG;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;+BAqBI,MAAM;;;;;6BASR;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;;4BAMhC;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE;0BAQX;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,gBAAgB,GAAG;;;;;kCA0FjD,MAAM;CAGM,CAAA"}
|
|
@@ -4,6 +4,8 @@ exports.WebFetchTool = void 0;
|
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
const prompt_1 = require("./prompt");
|
|
6
6
|
const utils_1 = require("./utils");
|
|
7
|
+
const EventSystem_1 = require("../../events/EventSystem");
|
|
8
|
+
const StateManager_1 = require("../../manager/StateManager");
|
|
7
9
|
const inputSchema = zod_1.z.strictObject({
|
|
8
10
|
url: zod_1.z.string().url().describe('The URL to fetch content from'),
|
|
9
11
|
prompt: zod_1.z.string().describe('The prompt to run on the fetched content'),
|
|
@@ -32,15 +34,16 @@ exports.WebFetchTool = {
|
|
|
32
34
|
},
|
|
33
35
|
genToolResultMessage(data) {
|
|
34
36
|
const sizeKB = (data.bytes / 1024).toFixed(1);
|
|
37
|
+
const maxContentLength = 5000;
|
|
35
38
|
return {
|
|
36
39
|
title: data.url,
|
|
37
|
-
summary:
|
|
38
|
-
content: data.result.slice(0,
|
|
40
|
+
summary: '',
|
|
41
|
+
content: data.result.slice(0, maxContentLength) + (data.result.length > maxContentLength ? '...' : ''),
|
|
39
42
|
};
|
|
40
43
|
},
|
|
41
44
|
genToolPermission(input) {
|
|
42
45
|
return {
|
|
43
|
-
title: '
|
|
46
|
+
title: '',
|
|
44
47
|
content: input.url,
|
|
45
48
|
};
|
|
46
49
|
},
|
|
@@ -57,6 +60,26 @@ exports.WebFetchTool = {
|
|
|
57
60
|
async *call({ url, prompt }, agentContext) {
|
|
58
61
|
const start = Date.now();
|
|
59
62
|
const { abortController } = agentContext;
|
|
63
|
+
const isMainAgent = agentContext.agentId === StateManager_1.MAIN_AGENT_ID;
|
|
64
|
+
const timeTag = () => {
|
|
65
|
+
const now = new Date();
|
|
66
|
+
const h = String(now.getHours()).padStart(2, '0');
|
|
67
|
+
const m = String(now.getMinutes()).padStart(2, '0');
|
|
68
|
+
const s = String(now.getSeconds()).padStart(2, '0');
|
|
69
|
+
return `[${h}:${m}:${s}]`;
|
|
70
|
+
};
|
|
71
|
+
const emitChunk = isMainAgent ? (content) => {
|
|
72
|
+
const chunkData = {
|
|
73
|
+
agentId: agentContext.agentId,
|
|
74
|
+
toolId: agentContext.currentToolUseID || '',
|
|
75
|
+
toolName: prompt_1.TOOL_NAME_FOR_PROMPT,
|
|
76
|
+
title: url,
|
|
77
|
+
summary: '',
|
|
78
|
+
content,
|
|
79
|
+
};
|
|
80
|
+
(0, EventSystem_1.getEventBus)().emit('tool:execution:chunk', chunkData);
|
|
81
|
+
} : undefined;
|
|
82
|
+
emitChunk?.(`${timeTag()}Fetching content...\n`);
|
|
60
83
|
const response = await (0, utils_1.getURLMarkdownContent)(url, abortController);
|
|
61
84
|
// 跨域重定向:通知 LLM 重新请求
|
|
62
85
|
if ('type' in response && response.type === 'redirect') {
|
|
@@ -89,6 +112,8 @@ To complete your request, I need to fetch content from the redirected URL. Pleas
|
|
|
89
112
|
return;
|
|
90
113
|
}
|
|
91
114
|
const { content, bytes, code, codeText, contentType } = response;
|
|
115
|
+
const sizeKB = (bytes / 1024).toFixed(1);
|
|
116
|
+
emitChunk?.(`${timeTag()}Fetched ${sizeKB}KB (HTTP ${code}), processing with LLM...\n`);
|
|
92
117
|
let result;
|
|
93
118
|
// 对于小型 markdown 内容直接返回,无需 LLM 处理
|
|
94
119
|
if (contentType.includes('text/markdown') && content.length < utils_1.MAX_MARKDOWN_LENGTH) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebFetch.js","sourceRoot":"","sources":["../../../src/tools/WebFetch/WebFetch.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AAEvB,qCAA4D;AAC5D,mCAKgB;
|
|
1
|
+
{"version":3,"file":"WebFetch.js","sourceRoot":"","sources":["../../../src/tools/WebFetch/WebFetch.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import Anthropic from '@anthropic-ai/sdk';
|
|
2
2
|
import { Tool } from './Tool';
|
|
3
3
|
import { ToolInfo } from '../../types/index';
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const SUBAGENT_EXCLUDED_TOOLS: Set<string>;
|
|
5
|
+
export declare const getAllBuiltinToolInfos: () => ToolInfo[];
|
|
5
6
|
export declare const getBuiltinTools: () => Tool[];
|
|
6
|
-
export declare const
|
|
7
|
+
export declare const getAvailableBuiltinTools: ((useTools?: string[] | null) => Tool[]) & import("lodash").MemoizedFunction;
|
|
8
|
+
export declare function getAvailableTools(): Tool[];
|
|
7
9
|
export declare const buildTools: ((tools: Tool[]) => Anthropic.Tool[]) & import("lodash").MemoizedFunction;
|
|
8
10
|
export declare function getToolDescription(tool: Tool): string;
|
|
9
11
|
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/base/tools.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/tools/base/tools.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,mBAAmB,CAAA;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AA0B7B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAO5C,eAAO,MAAM,uBAAuB,aAGlC,CAAA;AAOF,eAAO,MAAM,sBAAsB,QAAO,QAAQ,EAOjD,CAAA;AAGD,eAAO,MAAM,eAAe,QAAO,IAAI,EAwBtC,CAAA;AAGD,eAAO,MAAM,wBAAwB,eACvB,MAAM,EAAE,GAAG,IAAI,KAAG,IAAI,EAAE,qCAerC,CAAA;AAGD,wBAAgB,iBAAiB,IAAI,IAAI,EAAE,CAO1C;AAwBD,eAAO,MAAM,UAAU,WACb,IAAI,EAAE,KAAG,SAAS,CAAC,IAAI,EAAE,qCAgClC,CAAA;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAKrD"}
|
package/dist/tools/base/tools.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildTools = exports.
|
|
3
|
+
exports.buildTools = exports.getAvailableBuiltinTools = exports.getBuiltinTools = exports.getAllBuiltinToolInfos = exports.SUBAGENT_EXCLUDED_TOOLS = void 0;
|
|
4
|
+
exports.getAvailableTools = getAvailableTools;
|
|
4
5
|
exports.getToolDescription = getToolDescription;
|
|
5
6
|
const Bash_1 = require("../Bash/Bash");
|
|
6
7
|
const Edit_1 = require("../Edit/Edit");
|
|
@@ -9,16 +10,35 @@ const Write_1 = require("../Write/Write");
|
|
|
9
10
|
const Glob_1 = require("../Glob/Glob");
|
|
10
11
|
const Grep_1 = require("../Grep/Grep");
|
|
11
12
|
const NotebookEdit_1 = require("../NotebookEdit/NotebookEdit");
|
|
12
|
-
const TodoWrite_1 = require("../TodoWrite/TodoWrite");
|
|
13
13
|
const Skill_1 = require("../Skill/Skill");
|
|
14
14
|
const Agent_1 = require("../Agent/Agent");
|
|
15
15
|
const AskUserQuestion_1 = require("../AskUserQuestion/AskUserQuestion");
|
|
16
16
|
const ExitPlanMode_1 = require("../ExitPlanMode/ExitPlanMode");
|
|
17
|
+
const TaskOutput_1 = require("../TaskOutput/TaskOutput");
|
|
18
|
+
const TaskStop_1 = require("../TaskStop/TaskStop");
|
|
19
|
+
const TaskCreate_1 = require("../TaskCreate/TaskCreate");
|
|
20
|
+
const TaskGet_1 = require("../TaskGet/TaskGet");
|
|
21
|
+
const TaskList_1 = require("../TaskList/TaskList");
|
|
22
|
+
const TaskUpdate_1 = require("../TaskUpdate/TaskUpdate");
|
|
23
|
+
const CronCreate_1 = require("../CronCreate/CronCreate");
|
|
24
|
+
const CronDelete_1 = require("../CronDelete/CronDelete");
|
|
25
|
+
const CronList_1 = require("../CronList/CronList");
|
|
26
|
+
const WebFetch_1 = require("../WebFetch/WebFetch");
|
|
27
|
+
const MCPManager_1 = require("../../services/mcp/MCPManager");
|
|
17
28
|
const ConfManager_1 = require("../../manager/ConfManager");
|
|
18
29
|
const zod_to_json_schema_1 = require("zod-to-json-schema");
|
|
19
30
|
const lodash_es_1 = require("lodash-es");
|
|
20
|
-
|
|
21
|
-
const
|
|
31
|
+
const log_1 = require("../../util/log");
|
|
32
|
+
const BG_TOOLS = new Set(['Bash', 'Agent']);
|
|
33
|
+
// 子代理中禁用的工具(防止嵌套调用、任务管理等)
|
|
34
|
+
exports.SUBAGENT_EXCLUDED_TOOLS = new Set([
|
|
35
|
+
'Agent', 'TaskOutput', 'TaskStop', 'AskUserQuestion', 'ExitPlanMode',
|
|
36
|
+
'TaskCreate', 'TaskGet', 'TaskList', 'TaskUpdate'
|
|
37
|
+
]);
|
|
38
|
+
// 将工具对象安全转换为 Tool 类型(各工具的字面量类型与 Tool 泛型不完全匹配)
|
|
39
|
+
const asTool = (tool) => tool;
|
|
40
|
+
// 获取全部内置工具信息(含启用/禁用状态)
|
|
41
|
+
const getAllBuiltinToolInfos = () => {
|
|
22
42
|
const useTools = (0, ConfManager_1.getConfManager)().getCoreConfig()?.useTools;
|
|
23
43
|
return (0, exports.getBuiltinTools)().map(tool => ({
|
|
24
44
|
name: tool.name,
|
|
@@ -26,8 +46,8 @@ const getToolInfos = () => {
|
|
|
26
46
|
status: (!useTools || useTools.includes(tool.name)) ? 'enable' : 'disable'
|
|
27
47
|
}));
|
|
28
48
|
};
|
|
29
|
-
exports.
|
|
30
|
-
//
|
|
49
|
+
exports.getAllBuiltinToolInfos = getAllBuiltinToolInfos;
|
|
50
|
+
// 获取全部内置工具
|
|
31
51
|
const getBuiltinTools = () => {
|
|
32
52
|
return [
|
|
33
53
|
Bash_1.BashTool,
|
|
@@ -36,17 +56,26 @@ const getBuiltinTools = () => {
|
|
|
36
56
|
Read_1.FileReadTool,
|
|
37
57
|
Write_1.FileWriteTool,
|
|
38
58
|
Edit_1.FileEditTool,
|
|
39
|
-
|
|
59
|
+
WebFetch_1.WebFetchTool,
|
|
60
|
+
Agent_1.AgentTool,
|
|
61
|
+
TaskOutput_1.TaskOutputTool,
|
|
62
|
+
TaskStop_1.TaskStopTool,
|
|
40
63
|
Skill_1.SkillTool,
|
|
41
|
-
Agent_1.TaskTool,
|
|
42
64
|
NotebookEdit_1.NotebookEditTool,
|
|
43
65
|
AskUserQuestion_1.AskUserQuestionTool,
|
|
44
66
|
ExitPlanMode_1.ExitPlanModeTool,
|
|
45
|
-
|
|
67
|
+
TaskCreate_1.TaskCreateTool,
|
|
68
|
+
TaskGet_1.TaskGetTool,
|
|
69
|
+
TaskList_1.TaskListTool,
|
|
70
|
+
TaskUpdate_1.TaskUpdateTool,
|
|
71
|
+
CronCreate_1.CronCreateTool,
|
|
72
|
+
CronDelete_1.CronDeleteTool,
|
|
73
|
+
CronList_1.CronListTool,
|
|
74
|
+
].map(asTool);
|
|
46
75
|
};
|
|
47
76
|
exports.getBuiltinTools = getBuiltinTools;
|
|
48
|
-
//
|
|
49
|
-
exports.
|
|
77
|
+
// 获取可用内置工具(按 useTools 配置过滤)
|
|
78
|
+
exports.getAvailableBuiltinTools = (0, lodash_es_1.memoize)((useTools) => {
|
|
50
79
|
const allTools = (0, exports.getBuiltinTools)();
|
|
51
80
|
if (!useTools) {
|
|
52
81
|
return allTools;
|
|
@@ -58,6 +87,15 @@ exports.getTools = (0, lodash_es_1.memoize)((useTools) => {
|
|
|
58
87
|
}
|
|
59
88
|
return useTools.sort().join(',');
|
|
60
89
|
});
|
|
90
|
+
// 获取可用内置工具 + MCP 工具
|
|
91
|
+
function getAvailableTools() {
|
|
92
|
+
const useTools = (0, ConfManager_1.getConfManager)().getCoreConfig()?.useTools;
|
|
93
|
+
const builtinTools = (0, exports.getAvailableBuiltinTools)(useTools);
|
|
94
|
+
const mcpTools = (0, MCPManager_1.getMCPManager)().getMCPTools();
|
|
95
|
+
const tools = [...builtinTools, ...mcpTools];
|
|
96
|
+
(0, log_1.logInfo)(`tools len: ${tools.length} (builtin: ${builtinTools.length}, mcp: ${mcpTools.length})`);
|
|
97
|
+
return tools;
|
|
98
|
+
}
|
|
61
99
|
// 从 zod schema 中提取 required 字段
|
|
62
100
|
function extractRequiredFields(schema) {
|
|
63
101
|
if (!schema || typeof schema !== 'object')
|
|
@@ -75,7 +113,6 @@ function extractRequiredFields(schema) {
|
|
|
75
113
|
}
|
|
76
114
|
return [];
|
|
77
115
|
}
|
|
78
|
-
const BG_TOOLS = new Set(['Bash', 'Agent']);
|
|
79
116
|
// 使用 memoize 优化的 buildTools 函数
|
|
80
117
|
exports.buildTools = (0, lodash_es_1.memoize)((tools) => {
|
|
81
118
|
const disableBackgroundTasks = (0, ConfManager_1.getConfManager)().getCoreConfig()?.disableBackgroundTasks ?? false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/tools/base/tools.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/tools/base/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cron 定时任务类型定义
|
|
3
|
+
*/
|
|
4
|
+
export interface CronTask {
|
|
5
|
+
id: string;
|
|
6
|
+
cron: string;
|
|
7
|
+
prompt: string;
|
|
8
|
+
recurring: boolean;
|
|
9
|
+
durable: boolean;
|
|
10
|
+
status: boolean;
|
|
11
|
+
filePath?: string;
|
|
12
|
+
createdAt: number;
|
|
13
|
+
cronToHuman: string;
|
|
14
|
+
activatedAt: number;
|
|
15
|
+
lastFiredAt?: number;
|
|
16
|
+
nextFireAt: number[];
|
|
17
|
+
}
|
|
18
|
+
export interface CronTaskFile {
|
|
19
|
+
tasks: Pick<CronTask, 'id' | 'cron' | 'prompt' | 'recurring' | 'createdAt' | 'lastFiredAt'>[];
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=cron.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../src/types/cron.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAGD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,aAAa,CAAC,EAAE,CAAA;CAC9F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/types/cron.ts"],"names":[],"mappings":";AAAA;;GAEG"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -102,4 +102,6 @@ export type { MCPServerConfig, MCPServerInfo } from './mcp';
|
|
|
102
102
|
export type { MemoryConfig } from './memory';
|
|
103
103
|
export type { RuleScope, RuleConfig } from './rule';
|
|
104
104
|
export type { TaskStatus, TaskRecord, TaskListItem } from './task';
|
|
105
|
+
export type { TodoItem, TodoTaskStatus, TodoTask, } from './todoTask';
|
|
106
|
+
export type { CronTask, CronTaskFile, } from './cron';
|
|
105
107
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|