wave-agent-sdk 0.6.5 → 0.7.1
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/dist/agent.d.ts +8 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +49 -240
- package/dist/constants/tools.d.ts +0 -2
- package/dist/constants/tools.d.ts.map +1 -1
- package/dist/constants/tools.js +0 -2
- package/dist/core/plugin.d.ts +86 -0
- package/dist/core/plugin.d.ts.map +1 -0
- package/dist/core/plugin.js +164 -0
- package/dist/core/session.d.ts +3 -0
- package/dist/core/session.d.ts.map +1 -0
- package/dist/core/session.js +1 -0
- package/dist/index.d.ts +2 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -10
- package/dist/managers/MemoryRuleManager.d.ts +3 -1
- package/dist/managers/MemoryRuleManager.d.ts.map +1 -1
- package/dist/managers/MemoryRuleManager.js +2 -1
- package/dist/managers/aiManager.d.ts +13 -23
- package/dist/managers/aiManager.d.ts.map +1 -1
- package/dist/managers/aiManager.js +60 -32
- package/dist/managers/backgroundTaskManager.d.ts +3 -1
- package/dist/managers/backgroundTaskManager.d.ts.map +1 -1
- package/dist/managers/backgroundTaskManager.js +2 -1
- package/dist/managers/bashManager.d.ts +4 -4
- package/dist/managers/bashManager.d.ts.map +1 -1
- package/dist/managers/bashManager.js +5 -2
- package/dist/managers/foregroundTaskManager.d.ts +3 -0
- package/dist/managers/foregroundTaskManager.d.ts.map +1 -1
- package/dist/managers/foregroundTaskManager.js +2 -1
- package/dist/managers/hookManager.d.ts +3 -3
- package/dist/managers/hookManager.d.ts.map +1 -1
- package/dist/managers/hookManager.js +20 -19
- package/dist/managers/liveConfigManager.d.ts +6 -13
- package/dist/managers/liveConfigManager.d.ts.map +1 -1
- package/dist/managers/liveConfigManager.js +50 -45
- package/dist/managers/lspManager.d.ts +4 -5
- package/dist/managers/lspManager.d.ts.map +1 -1
- package/dist/managers/lspManager.js +13 -12
- package/dist/managers/mcpManager.d.ts +3 -2
- package/dist/managers/mcpManager.d.ts.map +1 -1
- package/dist/managers/mcpManager.js +16 -15
- package/dist/managers/messageManager.d.ts +5 -7
- package/dist/managers/messageManager.d.ts.map +1 -1
- package/dist/managers/messageManager.js +12 -7
- package/dist/managers/permissionManager.d.ts +6 -4
- package/dist/managers/permissionManager.d.ts.map +1 -1
- package/dist/managers/permissionManager.js +39 -63
- package/dist/managers/planManager.d.ts +4 -6
- package/dist/managers/planManager.d.ts.map +1 -1
- package/dist/managers/planManager.js +18 -4
- package/dist/managers/pluginManager.d.ts +10 -22
- package/dist/managers/pluginManager.d.ts.map +1 -1
- package/dist/managers/pluginManager.js +27 -14
- package/dist/managers/reversionManager.d.ts +4 -3
- package/dist/managers/reversionManager.d.ts.map +1 -1
- package/dist/managers/reversionManager.js +5 -2
- package/dist/managers/skillManager.d.ts +3 -2
- package/dist/managers/skillManager.d.ts.map +1 -1
- package/dist/managers/skillManager.js +15 -14
- package/dist/managers/slashCommandManager.d.ts +9 -16
- package/dist/managers/slashCommandManager.d.ts.map +1 -1
- package/dist/managers/slashCommandManager.js +21 -10
- package/dist/managers/subagentManager.d.ts +7 -17
- package/dist/managers/subagentManager.d.ts.map +1 -1
- package/dist/managers/subagentManager.js +41 -34
- package/dist/managers/toolManager.d.ts +15 -38
- package/dist/managers/toolManager.d.ts.map +1 -1
- package/dist/managers/toolManager.js +67 -56
- package/dist/prompts/index.d.ts +6 -2
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +8 -4
- package/dist/services/MarketplaceService.d.ts.map +1 -1
- package/dist/services/MarketplaceService.js +13 -0
- package/dist/services/aiService.d.ts +4 -0
- package/dist/services/aiService.d.ts.map +1 -1
- package/dist/services/aiService.js +47 -7
- package/dist/services/configurationService.d.ts.map +1 -1
- package/dist/services/configurationService.js +30 -11
- package/dist/services/taskManager.d.ts +3 -1
- package/dist/services/taskManager.d.ts.map +1 -1
- package/dist/services/taskManager.js +3 -2
- package/dist/tools/bashTool.d.ts.map +1 -1
- package/dist/tools/bashTool.js +19 -4
- package/dist/tools/editTool.d.ts.map +1 -1
- package/dist/tools/editTool.js +16 -4
- package/dist/tools/readTool.d.ts.map +1 -1
- package/dist/tools/readTool.js +2 -2
- package/dist/tools/skillTool.d.ts +2 -4
- package/dist/tools/skillTool.d.ts.map +1 -1
- package/dist/tools/skillTool.js +61 -61
- package/dist/tools/taskOutputTool.d.ts.map +1 -1
- package/dist/tools/taskOutputTool.js +3 -2
- package/dist/tools/taskTool.d.ts +2 -4
- package/dist/tools/taskTool.d.ts.map +1 -1
- package/dist/tools/taskTool.js +192 -187
- package/dist/tools/types.d.ts +12 -1
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/writeTool.d.ts.map +1 -1
- package/dist/tools/writeTool.js +5 -2
- package/dist/types/core.d.ts +2 -0
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/marketplace.d.ts +8 -0
- package/dist/types/marketplace.d.ts.map +1 -1
- package/dist/types/messaging.d.ts +1 -0
- package/dist/types/messaging.d.ts.map +1 -1
- package/dist/types/permissions.d.ts +3 -1
- package/dist/types/permissions.d.ts.map +1 -1
- package/dist/types/permissions.js +1 -3
- package/dist/types/skills.d.ts +0 -2
- package/dist/types/skills.d.ts.map +1 -1
- package/dist/types/tools.d.ts +0 -15
- package/dist/types/tools.d.ts.map +1 -1
- package/dist/utils/container.d.ts +31 -0
- package/dist/utils/container.d.ts.map +1 -0
- package/dist/utils/container.js +79 -0
- package/dist/utils/containerSetup.d.ts +26 -0
- package/dist/utils/containerSetup.d.ts.map +1 -0
- package/dist/utils/containerSetup.js +187 -0
- package/dist/utils/editUtils.d.ts +0 -3
- package/dist/utils/editUtils.d.ts.map +1 -1
- package/dist/utils/editUtils.js +4 -3
- package/dist/utils/hookMatcher.d.ts +1 -1
- package/dist/utils/hookMatcher.d.ts.map +1 -1
- package/dist/utils/hookMatcher.js +2 -2
- package/dist/utils/messageOperations.d.ts +2 -1
- package/dist/utils/messageOperations.d.ts.map +1 -1
- package/dist/utils/messageOperations.js +4 -1
- package/dist/utils/openaiClient.js +2 -2
- package/dist/utils/stringUtils.d.ts +6 -0
- package/dist/utils/stringUtils.d.ts.map +1 -1
- package/dist/utils/stringUtils.js +8 -0
- package/package.json +1 -1
- package/src/agent.ts +60 -282
- package/src/constants/tools.ts +0 -2
- package/src/core/plugin.ts +224 -0
- package/src/core/session.ts +6 -0
- package/src/index.ts +2 -11
- package/src/managers/MemoryRuleManager.ts +6 -1
- package/src/managers/aiManager.ts +84 -58
- package/src/managers/backgroundTaskManager.ts +5 -1
- package/src/managers/bashManager.ts +9 -4
- package/src/managers/foregroundTaskManager.ts +3 -0
- package/src/managers/hookManager.ts +21 -23
- package/src/managers/liveConfigManager.ts +57 -53
- package/src/managers/lspManager.ts +14 -19
- package/src/managers/mcpManager.ts +20 -20
- package/src/managers/messageManager.ts +19 -12
- package/src/managers/permissionManager.ts +45 -70
- package/src/managers/planManager.ts +26 -7
- package/src/managers/pluginManager.ts +37 -33
- package/src/managers/reversionManager.ts +5 -3
- package/src/managers/skillManager.ts +19 -20
- package/src/managers/slashCommandManager.ts +30 -25
- package/src/managers/subagentManager.ts +53 -53
- package/src/managers/toolManager.ts +93 -90
- package/src/prompts/index.ts +13 -5
- package/src/services/MarketplaceService.ts +13 -0
- package/src/services/aiService.ts +61 -15
- package/src/services/configurationService.ts +34 -13
- package/src/services/taskManager.ts +6 -2
- package/src/tools/bashTool.ts +19 -4
- package/src/tools/editTool.ts +17 -4
- package/src/tools/readTool.ts +2 -2
- package/src/tools/skillTool.ts +75 -71
- package/src/tools/taskOutputTool.ts +3 -2
- package/src/tools/taskTool.ts +224 -225
- package/src/tools/types.ts +14 -1
- package/src/tools/writeTool.ts +5 -2
- package/src/types/core.ts +2 -0
- package/src/types/marketplace.ts +9 -0
- package/src/types/messaging.ts +1 -0
- package/src/types/permissions.ts +2 -4
- package/src/types/skills.ts +0 -3
- package/src/types/tools.ts +0 -17
- package/src/utils/container.ts +92 -0
- package/src/utils/containerSetup.ts +279 -0
- package/src/utils/editUtils.ts +4 -3
- package/src/utils/hookMatcher.ts +2 -2
- package/src/utils/messageOperations.ts +5 -0
- package/src/utils/openaiClient.ts +2 -2
- package/src/utils/stringUtils.ts +9 -0
- package/dist/tools/deleteFileTool.d.ts +0 -6
- package/dist/tools/deleteFileTool.d.ts.map +0 -1
- package/dist/tools/deleteFileTool.js +0 -100
- package/dist/tools/multiEditTool.d.ts +0 -6
- package/dist/tools/multiEditTool.d.ts.map +0 -1
- package/dist/tools/multiEditTool.js +0 -246
- package/src/tools/deleteFileTool.ts +0 -127
- package/src/tools/multiEditTool.ts +0 -306
package/dist/agent.d.ts
CHANGED
|
@@ -43,6 +43,13 @@ export interface AgentOptions {
|
|
|
43
43
|
lspManager?: ILspManager;
|
|
44
44
|
/**Optional local plugins to load */
|
|
45
45
|
plugins?: PluginConfig[];
|
|
46
|
+
/**
|
|
47
|
+
* Optional list of tool names to enable.
|
|
48
|
+
* - undefined: Enable all built-in tools and plugins (default).
|
|
49
|
+
* - []: Disable all tools.
|
|
50
|
+
* - string[]: Enable only the tools with the specified names.
|
|
51
|
+
*/
|
|
52
|
+
tools?: string[];
|
|
46
53
|
}
|
|
47
54
|
export interface AgentCallbacks extends MessageManagerCallbacks, BackgroundTaskManagerCallbacks, McpManagerCallbacks, SubagentManagerCallbacks {
|
|
48
55
|
onTasksChange?: (tasks: BackgroundTask[]) => void;
|
|
@@ -72,6 +79,7 @@ export declare class Agent {
|
|
|
72
79
|
private liveConfigManager;
|
|
73
80
|
private taskManager;
|
|
74
81
|
private foregroundTaskManager;
|
|
82
|
+
private container;
|
|
75
83
|
private configurationService;
|
|
76
84
|
private workdir;
|
|
77
85
|
private systemPrompt?;
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAc,KAAK,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAGhF,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/agent.js
CHANGED
|
@@ -1,30 +1,12 @@
|
|
|
1
|
-
import { ForegroundTaskManager } from "./managers/foregroundTaskManager.js";
|
|
2
|
-
import { MessageManager, } from "./managers/messageManager.js";
|
|
3
|
-
import { AIManager } from "./managers/aiManager.js";
|
|
4
|
-
import { ToolManager } from "./managers/toolManager.js";
|
|
5
|
-
import { SubagentManager, } from "./managers/subagentManager.js";
|
|
6
|
-
import { McpManager } from "./managers/mcpManager.js";
|
|
7
1
|
import { LspManager } from "./managers/lspManager.js";
|
|
8
|
-
import { BashManager } from "./managers/bashManager.js";
|
|
9
|
-
import { BackgroundTaskManager, } from "./managers/backgroundTaskManager.js";
|
|
10
|
-
import { SlashCommandManager } from "./managers/slashCommandManager.js";
|
|
11
|
-
import { PluginManager } from "./managers/pluginManager.js";
|
|
12
|
-
import { HookManager } from "./managers/hookManager.js";
|
|
13
|
-
import { ReversionManager } from "./managers/reversionManager.js";
|
|
14
|
-
import { ReversionService } from "./services/reversionService.js";
|
|
15
|
-
import { PermissionManager } from "./managers/permissionManager.js";
|
|
16
|
-
import { PlanManager } from "./managers/planManager.js";
|
|
17
|
-
import { MemoryRuleManager } from "./managers/MemoryRuleManager.js";
|
|
18
|
-
import { LiveConfigManager } from "./managers/liveConfigManager.js";
|
|
19
2
|
import { configValidator } from "./utils/configValidator.js";
|
|
20
|
-
import { SkillManager } from "./managers/skillManager.js";
|
|
21
|
-
import { TaskManager } from "./services/taskManager.js";
|
|
22
3
|
import { loadSessionFromJsonl, handleSessionRestoration, } from "./services/session.js";
|
|
23
4
|
import { setGlobalLogger } from "./utils/globalLogger.js";
|
|
24
5
|
import { ConfigurationService } from "./services/configurationService.js";
|
|
25
6
|
import * as fs from "fs/promises";
|
|
26
7
|
import path from "path";
|
|
27
8
|
import os from "os";
|
|
9
|
+
import { setupAgentContainer } from "./utils/containerSetup.js";
|
|
28
10
|
export class Agent {
|
|
29
11
|
// Dynamic configuration getter methods
|
|
30
12
|
getGatewayConfig() {
|
|
@@ -54,7 +36,7 @@ export class Agent {
|
|
|
54
36
|
// Memory content storage
|
|
55
37
|
this._projectMemoryContent = "";
|
|
56
38
|
this._userMemoryContent = "";
|
|
57
|
-
const {
|
|
39
|
+
const { logger, workdir, systemPrompt, stream = true } = options;
|
|
58
40
|
// Set working directory early as we need it for loading configuration
|
|
59
41
|
this.workdir = workdir || process.cwd();
|
|
60
42
|
// Initialize configuration service
|
|
@@ -64,201 +46,57 @@ export class Agent {
|
|
|
64
46
|
this.stream = stream; // Save streaming mode flag
|
|
65
47
|
// Store options for dynamic configuration resolution
|
|
66
48
|
this.options = options;
|
|
67
|
-
this.
|
|
68
|
-
|
|
69
|
-
this.memoryRuleManager = new MemoryRuleManager({
|
|
49
|
+
this.container = setupAgentContainer({
|
|
50
|
+
options,
|
|
70
51
|
workdir: this.workdir,
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
onSessionIdChange: (sessionId) => {
|
|
77
|
-
// When session ID changes (e.g. due to compression),
|
|
78
|
-
// we update the task manager to use the root session ID
|
|
79
|
-
// to ensure the task list remains consistent.
|
|
80
|
-
this.taskManager.setTaskListId(this.messageManager.getRootSessionId());
|
|
81
|
-
callbacks.onSessionIdChange?.(sessionId);
|
|
82
|
-
},
|
|
52
|
+
configurationService: this.configurationService,
|
|
53
|
+
systemPrompt: this.systemPrompt,
|
|
54
|
+
stream: this.stream,
|
|
55
|
+
onSessionIdChange: () => {
|
|
56
|
+
this.taskManager.setTaskListId(this.messageManager.getRootSessionId());
|
|
83
57
|
},
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
memoryRuleManager: this.memoryRuleManager,
|
|
87
|
-
});
|
|
88
|
-
// Resolve taskListId once during construction to ensure stability
|
|
89
|
-
const resolvedTaskListId = this.configurationService.getEnvironmentVars().WAVE_TASK_LIST_ID ||
|
|
90
|
-
process.env.WAVE_TASK_LIST_ID ||
|
|
91
|
-
this.messageManager.getRootSessionId();
|
|
92
|
-
this.taskManager = new TaskManager(resolvedTaskListId);
|
|
93
|
-
this.taskManager.on("tasksChange", async () => {
|
|
94
|
-
const tasks = await this.taskManager.listTasks();
|
|
95
|
-
this.options.callbacks?.onSessionTasksChange?.(tasks);
|
|
96
|
-
});
|
|
97
|
-
// Initialize BackgroundTaskManager
|
|
98
|
-
this.backgroundTaskManager = new BackgroundTaskManager({
|
|
99
|
-
callbacks: {
|
|
100
|
-
...callbacks,
|
|
101
|
-
onTasksChange: (tasks) => {
|
|
102
|
-
callbacks.onTasksChange?.(tasks);
|
|
103
|
-
},
|
|
58
|
+
onSessionTasksChange: (tasks) => {
|
|
59
|
+
this.options.callbacks?.onSessionTasksChange?.(tasks);
|
|
104
60
|
},
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
this.mcpManager = new McpManager({ callbacks, logger: this.logger }); // Initialize MCP manager
|
|
108
|
-
this.lspManager =
|
|
109
|
-
options.lspManager || new LspManager({ logger: this.logger }); // Initialize LSP manager
|
|
110
|
-
// Initialize permission manager
|
|
111
|
-
this.permissionManager = new PermissionManager({
|
|
112
|
-
logger: this.logger,
|
|
113
|
-
workdir: this.workdir,
|
|
114
|
-
});
|
|
115
|
-
this.permissionManager.setOnConfiguredDefaultModeChange((mode) => {
|
|
116
|
-
this.handlePlanModeTransition(mode);
|
|
117
|
-
this.options.callbacks?.onPermissionModeChange?.(mode);
|
|
118
|
-
});
|
|
119
|
-
// Initialize plan manager
|
|
120
|
-
this.planManager = new PlanManager(this.logger);
|
|
121
|
-
// Initialize configuration service and hooks manager
|
|
122
|
-
this.hookManager = new HookManager(this.workdir, undefined, this.logger); // Initialize hooks manager
|
|
123
|
-
// Initialize skill manager
|
|
124
|
-
this.skillManager = new SkillManager({
|
|
125
|
-
logger: this.logger,
|
|
126
|
-
workdir: this.workdir,
|
|
127
|
-
});
|
|
128
|
-
// ReversionManager depends on MessageManager
|
|
129
|
-
this.reversionManager = new ReversionManager(new ReversionService(this.messageManager.getTranscriptPath()));
|
|
130
|
-
// Create a wrapper for canUseTool that triggers notification hooks
|
|
131
|
-
const canUseToolWithNotification = options.canUseTool
|
|
132
|
-
? async (context) => {
|
|
133
|
-
try {
|
|
134
|
-
// Trigger notification hooks before calling the original callback
|
|
135
|
-
const notificationMessage = `Claude needs your permission to use ${context.toolName}`;
|
|
136
|
-
await this.hookManager.executeHooks("Notification", {
|
|
137
|
-
event: "Notification",
|
|
138
|
-
projectDir: this.workdir,
|
|
139
|
-
timestamp: new Date(),
|
|
140
|
-
sessionId: this.sessionId,
|
|
141
|
-
transcriptPath: this.messageManager.getTranscriptPath(),
|
|
142
|
-
cwd: this.workdir,
|
|
143
|
-
message: notificationMessage,
|
|
144
|
-
notificationType: "permission_prompt",
|
|
145
|
-
env: this.configurationService.getEnvironmentVars(), // Include configuration environment variables
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
catch (error) {
|
|
149
|
-
this.logger?.warn("Failed to execute notification hooks", {
|
|
150
|
-
toolName: context.toolName,
|
|
151
|
-
error: error instanceof Error ? error.message : String(error),
|
|
152
|
-
});
|
|
153
|
-
// Continue with permission check even if hooks fail
|
|
154
|
-
}
|
|
155
|
-
// Call the original callback
|
|
156
|
-
const decision = await options.canUseTool(context);
|
|
157
|
-
// Handle state changes from decision
|
|
158
|
-
if (decision.newPermissionMode) {
|
|
159
|
-
this.setPermissionMode(decision.newPermissionMode);
|
|
160
|
-
}
|
|
161
|
-
if (decision.newPermissionRule) {
|
|
162
|
-
await this.addPermissionRule(decision.newPermissionRule);
|
|
163
|
-
}
|
|
164
|
-
return decision;
|
|
165
|
-
}
|
|
166
|
-
: undefined;
|
|
167
|
-
// Initialize tool manager with permission context
|
|
168
|
-
this.toolManager = new ToolManager({
|
|
169
|
-
mcpManager: this.mcpManager,
|
|
170
|
-
lspManager: this.lspManager,
|
|
171
|
-
logger: this.logger,
|
|
172
|
-
permissionManager: this.permissionManager,
|
|
173
|
-
reversionManager: this.reversionManager,
|
|
174
|
-
permissionMode: options.permissionMode, // Let PermissionManager handle defaultMode resolution
|
|
175
|
-
canUseToolCallback: canUseToolWithNotification,
|
|
176
|
-
taskManager: this.taskManager,
|
|
177
|
-
backgroundTaskManager: this.backgroundTaskManager,
|
|
178
|
-
foregroundTaskManager: this.foregroundTaskManager,
|
|
179
|
-
}); // Initialize tool registry with permission support
|
|
180
|
-
this.liveConfigManager = new LiveConfigManager({
|
|
181
|
-
workdir: this.workdir,
|
|
182
|
-
logger: this.logger,
|
|
183
|
-
hookManager: this.hookManager,
|
|
184
|
-
permissionManager: this.permissionManager,
|
|
185
|
-
configurationService: this.configurationService,
|
|
186
|
-
}); // Initialize live configuration manager
|
|
187
|
-
// Initialize subagent manager with all dependencies in constructor
|
|
188
|
-
// IMPORTANT: Must be initialized AFTER MessageManager
|
|
189
|
-
this.subagentManager = new SubagentManager({
|
|
190
|
-
workdir: this.workdir,
|
|
191
|
-
parentToolManager: this.toolManager,
|
|
192
|
-
callbacks: {
|
|
193
|
-
onSubagentUserMessageAdded: callbacks.onSubagentUserMessageAdded,
|
|
194
|
-
onSubagentAssistantMessageAdded: callbacks.onSubagentAssistantMessageAdded,
|
|
195
|
-
onSubagentAssistantContentUpdated: callbacks.onSubagentAssistantContentUpdated,
|
|
196
|
-
onSubagentAssistantReasoningUpdated: callbacks.onSubagentAssistantReasoningUpdated,
|
|
197
|
-
onSubagentToolBlockUpdated: callbacks.onSubagentToolBlockUpdated,
|
|
198
|
-
onSubagentMessagesChange: callbacks.onSubagentMessagesChange,
|
|
199
|
-
onSubagentLatestTotalTokensChange: callbacks.onSubagentLatestTotalTokensChange,
|
|
200
|
-
}, // Pass subagent callbacks for forwarding
|
|
201
|
-
logger: this.logger,
|
|
202
|
-
getGatewayConfig: () => this.getGatewayConfig(),
|
|
203
|
-
getModelConfig: () => this.getModelConfig(),
|
|
204
|
-
getMaxInputTokens: () => this.getMaxInputTokens(),
|
|
205
|
-
getLanguage: () => this.getLanguage(),
|
|
206
|
-
hookManager: this.hookManager,
|
|
207
|
-
onUsageAdded: (usage) => this.addUsage(usage),
|
|
208
|
-
backgroundTaskManager: this.backgroundTaskManager,
|
|
209
|
-
taskManager: this.taskManager,
|
|
210
|
-
memoryRuleManager: this.memoryRuleManager,
|
|
211
|
-
});
|
|
212
|
-
// Initialize AI manager with resolved configuration
|
|
213
|
-
this.aiManager = new AIManager({
|
|
214
|
-
messageManager: this.messageManager,
|
|
215
|
-
toolManager: this.toolManager,
|
|
216
|
-
taskManager: this.taskManager,
|
|
217
|
-
logger: this.logger,
|
|
218
|
-
backgroundTaskManager: this.backgroundTaskManager,
|
|
219
|
-
hookManager: this.hookManager,
|
|
220
|
-
permissionManager: this.permissionManager,
|
|
221
|
-
callbacks: {
|
|
222
|
-
...callbacks,
|
|
223
|
-
onUsageAdded: (usage) => {
|
|
224
|
-
this.addUsage(usage);
|
|
225
|
-
},
|
|
61
|
+
onTasksChange: (tasks) => {
|
|
62
|
+
this.options.callbacks?.onTasksChange?.(tasks);
|
|
226
63
|
},
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
64
|
+
onPermissionModeChange: (mode) => {
|
|
65
|
+
this.options.callbacks?.onPermissionModeChange?.(mode);
|
|
66
|
+
},
|
|
67
|
+
handlePlanModeTransition: (mode) => {
|
|
68
|
+
this.handlePlanModeTransition(mode);
|
|
69
|
+
},
|
|
70
|
+
setPermissionMode: (mode) => {
|
|
71
|
+
this.setPermissionMode(mode);
|
|
72
|
+
},
|
|
73
|
+
addPermissionRule: (rule) => this.addPermissionRule(rule),
|
|
74
|
+
addUsage: (usage) => this.addUsage(usage),
|
|
231
75
|
getGatewayConfig: () => this.getGatewayConfig(),
|
|
232
76
|
getModelConfig: () => this.getModelConfig(),
|
|
233
77
|
getMaxInputTokens: () => this.getMaxInputTokens(),
|
|
234
78
|
getLanguage: () => this.getLanguage(),
|
|
235
|
-
getEnvironmentVars: () => this.configurationService.getEnvironmentVars(), // Provide access to configuration environment variables
|
|
236
|
-
});
|
|
237
|
-
// Initialize command manager
|
|
238
|
-
this.slashCommandManager = new SlashCommandManager({
|
|
239
|
-
messageManager: this.messageManager,
|
|
240
|
-
aiManager: this.aiManager,
|
|
241
|
-
backgroundTaskManager: this.backgroundTaskManager,
|
|
242
|
-
taskManager: this.taskManager,
|
|
243
|
-
workdir: this.workdir,
|
|
244
|
-
logger: this.logger,
|
|
245
|
-
});
|
|
246
|
-
// Initialize plugin manager
|
|
247
|
-
this.pluginManager = new PluginManager({
|
|
248
|
-
workdir: this.workdir,
|
|
249
|
-
logger: this.logger,
|
|
250
|
-
slashCommandManager: this.slashCommandManager,
|
|
251
|
-
mcpManager: this.mcpManager,
|
|
252
|
-
lspManager: this.lspManager instanceof LspManager ? this.lspManager : undefined,
|
|
253
|
-
hookManager: this.hookManager,
|
|
254
|
-
skillManager: this.skillManager,
|
|
255
|
-
configurationService: this.configurationService,
|
|
256
|
-
});
|
|
257
|
-
// Initialize bash manager
|
|
258
|
-
this.bashManager = new BashManager({
|
|
259
|
-
messageManager: this.messageManager,
|
|
260
|
-
workdir: this.workdir,
|
|
261
79
|
});
|
|
80
|
+
// Retrieve managers from container
|
|
81
|
+
this.foregroundTaskManager = this.container.get("ForegroundTaskManager");
|
|
82
|
+
this.memoryRuleManager = this.container.get("MemoryRuleManager");
|
|
83
|
+
this.messageManager = this.container.get("MessageManager");
|
|
84
|
+
this.taskManager = this.container.get("TaskManager");
|
|
85
|
+
this.backgroundTaskManager = this.container.get("BackgroundTaskManager");
|
|
86
|
+
this.mcpManager = this.container.get("McpManager");
|
|
87
|
+
this.lspManager = this.container.get("LspManager");
|
|
88
|
+
this.permissionManager = this.container.get("PermissionManager");
|
|
89
|
+
this.planManager = this.container.get("PlanManager");
|
|
90
|
+
this.hookManager = this.container.get("HookManager");
|
|
91
|
+
this.skillManager = this.container.get("SkillManager");
|
|
92
|
+
this.reversionManager = this.container.get("ReversionManager");
|
|
93
|
+
this.toolManager = this.container.get("ToolManager");
|
|
94
|
+
this.liveConfigManager = this.container.get("LiveConfigManager");
|
|
95
|
+
this.subagentManager = this.container.get("SubagentManager");
|
|
96
|
+
this.aiManager = this.container.get("AIManager");
|
|
97
|
+
this.slashCommandManager = this.container.get("SlashCommandManager");
|
|
98
|
+
this.pluginManager = this.container.get("PluginManager");
|
|
99
|
+
this.bashManager = this.container.get("BashManager");
|
|
262
100
|
// Set initial permission mode if provided
|
|
263
101
|
if (options.permissionMode) {
|
|
264
102
|
this.setPermissionMode(options.permissionMode);
|
|
@@ -419,11 +257,11 @@ export class Agent {
|
|
|
419
257
|
await this.skillManager.initialize();
|
|
420
258
|
// Initialize SubagentManager (load and cache configurations)
|
|
421
259
|
await this.subagentManager.initialize();
|
|
422
|
-
//
|
|
423
|
-
this.
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
260
|
+
// Register managers in container for tool access
|
|
261
|
+
this.container.register("SubagentManager", this.subagentManager);
|
|
262
|
+
this.container.register("SkillManager", this.skillManager);
|
|
263
|
+
// Initialize built-in tools
|
|
264
|
+
this.toolManager.initializeBuiltInTools();
|
|
427
265
|
// Initialize plugins
|
|
428
266
|
await this.pluginManager.loadPlugins(this.options.plugins || []);
|
|
429
267
|
}
|
|
@@ -474,35 +312,6 @@ export class Agent {
|
|
|
474
312
|
this.logger?.debug("Initializing live configuration reload...");
|
|
475
313
|
await this.liveConfigManager.initialize();
|
|
476
314
|
this.logger?.debug("Live configuration reload initialized successfully");
|
|
477
|
-
// Update permission manager with configuration-based defaultMode
|
|
478
|
-
const currentConfig = this.liveConfigManager.getCurrentConfiguration();
|
|
479
|
-
if (currentConfig?.permissions?.defaultMode) {
|
|
480
|
-
this.logger?.debug("Applying configured defaultMode to PermissionManager", {
|
|
481
|
-
defaultMode: currentConfig.permissions.defaultMode,
|
|
482
|
-
});
|
|
483
|
-
this.permissionManager.updateConfiguredDefaultMode(currentConfig.permissions.defaultMode);
|
|
484
|
-
}
|
|
485
|
-
// Update permission manager with configuration-based allowed rules
|
|
486
|
-
if (currentConfig?.permissions?.allow) {
|
|
487
|
-
this.logger?.debug("Applying configured allowed rules to PermissionManager", {
|
|
488
|
-
count: currentConfig.permissions.allow.length,
|
|
489
|
-
});
|
|
490
|
-
this.permissionManager.updateAllowedRules(currentConfig.permissions.allow);
|
|
491
|
-
}
|
|
492
|
-
// Update permission manager with configuration-based denied rules
|
|
493
|
-
if (currentConfig?.permissions?.deny) {
|
|
494
|
-
this.logger?.debug("Applying configured denied rules to PermissionManager", {
|
|
495
|
-
count: currentConfig.permissions.deny.length,
|
|
496
|
-
});
|
|
497
|
-
this.permissionManager.updateDeniedRules(currentConfig.permissions.deny);
|
|
498
|
-
}
|
|
499
|
-
// Update permission manager with configuration-based additionalDirectories
|
|
500
|
-
if (currentConfig?.permissions?.additionalDirectories) {
|
|
501
|
-
this.logger?.debug("Applying configured additionalDirectories to PermissionManager", {
|
|
502
|
-
count: currentConfig.permissions.additionalDirectories.length,
|
|
503
|
-
});
|
|
504
|
-
this.permissionManager.updateAdditionalDirectories(currentConfig.permissions.additionalDirectories);
|
|
505
|
-
}
|
|
506
315
|
}
|
|
507
316
|
catch (error) {
|
|
508
317
|
this.logger?.error("Failed to initialize live configuration reload:", error);
|
|
@@ -2,14 +2,12 @@ export declare const ASK_USER_QUESTION_TOOL_NAME = "AskUserQuestion";
|
|
|
2
2
|
export declare const BASH_TOOL_NAME = "Bash";
|
|
3
3
|
export declare const TASK_OUTPUT_TOOL_NAME = "TaskOutput";
|
|
4
4
|
export declare const TASK_STOP_TOOL_NAME = "TaskStop";
|
|
5
|
-
export declare const DELETE_FILE_TOOL_NAME = "Delete";
|
|
6
5
|
export declare const EDIT_TOOL_NAME = "Edit";
|
|
7
6
|
export declare const EXIT_PLAN_MODE_TOOL_NAME = "ExitPlanMode";
|
|
8
7
|
export declare const GLOB_TOOL_NAME = "Glob";
|
|
9
8
|
export declare const GREP_TOOL_NAME = "Grep";
|
|
10
9
|
export declare const LSP_TOOL_NAME = "LSP";
|
|
11
10
|
export declare const LS_TOOL_NAME = "LS";
|
|
12
|
-
export declare const MULTI_EDIT_TOOL_NAME = "MultiEdit";
|
|
13
11
|
export declare const READ_TOOL_NAME = "Read";
|
|
14
12
|
export declare const SKILL_TOOL_NAME = "Skill";
|
|
15
13
|
export declare const TASK_TOOL_NAME = "Task";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAC7D,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAClD,eAAO,MAAM,mBAAmB,aAAa,CAAC;AAC9C,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/constants/tools.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAC7D,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAClD,eAAO,MAAM,mBAAmB,aAAa,CAAC;AAC9C,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AACvD,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,aAAa,QAAQ,CAAC;AACnC,eAAO,MAAM,YAAY,OAAO,CAAC;AACjC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,eAAe,UAAU,CAAC;AACvC,eAAO,MAAM,cAAc,SAAS,CAAC;AACrC,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAClD,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAC5C,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAClD,eAAO,MAAM,mBAAmB,aAAa,CAAC;AAC9C,eAAO,MAAM,eAAe,UAAU,CAAC"}
|
package/dist/constants/tools.js
CHANGED
|
@@ -2,14 +2,12 @@ export const ASK_USER_QUESTION_TOOL_NAME = "AskUserQuestion";
|
|
|
2
2
|
export const BASH_TOOL_NAME = "Bash";
|
|
3
3
|
export const TASK_OUTPUT_TOOL_NAME = "TaskOutput";
|
|
4
4
|
export const TASK_STOP_TOOL_NAME = "TaskStop";
|
|
5
|
-
export const DELETE_FILE_TOOL_NAME = "Delete";
|
|
6
5
|
export const EDIT_TOOL_NAME = "Edit";
|
|
7
6
|
export const EXIT_PLAN_MODE_TOOL_NAME = "ExitPlanMode";
|
|
8
7
|
export const GLOB_TOOL_NAME = "Glob";
|
|
9
8
|
export const GREP_TOOL_NAME = "Grep";
|
|
10
9
|
export const LSP_TOOL_NAME = "LSP";
|
|
11
10
|
export const LS_TOOL_NAME = "LS";
|
|
12
|
-
export const MULTI_EDIT_TOOL_NAME = "MultiEdit";
|
|
13
11
|
export const READ_TOOL_NAME = "Read";
|
|
14
12
|
export const SKILL_TOOL_NAME = "Skill";
|
|
15
13
|
export const TASK_TOOL_NAME = "Task";
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { Scope, InstalledPlugin, KnownMarketplace, MarketplaceManifest, InstalledPluginsRegistry, MarketplacePluginStatus } from "../types/index.js";
|
|
2
|
+
/**
|
|
3
|
+
* PluginCore
|
|
4
|
+
*
|
|
5
|
+
* Encapsulates plugin management logic, providing a high-level API for
|
|
6
|
+
* installing, uninstalling, enabling, and disabling plugins.
|
|
7
|
+
*/
|
|
8
|
+
export declare class PluginCore {
|
|
9
|
+
private container;
|
|
10
|
+
private pluginManager;
|
|
11
|
+
private pluginScopeManager;
|
|
12
|
+
private marketplaceService;
|
|
13
|
+
private configurationService;
|
|
14
|
+
private workdir;
|
|
15
|
+
constructor(workdir?: string);
|
|
16
|
+
/**
|
|
17
|
+
* Installs a plugin from a marketplace
|
|
18
|
+
*/
|
|
19
|
+
installPlugin(pluginId: string, scope?: Scope): Promise<InstalledPlugin>;
|
|
20
|
+
/**
|
|
21
|
+
* Uninstalls a plugin and removes it from all configuration scopes
|
|
22
|
+
*/
|
|
23
|
+
uninstallPlugin(pluginId: string): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Enables a plugin in the specified scope. If no scope is provided, it tries to find
|
|
26
|
+
* the scope where the plugin is already configured, or defaults to "user".
|
|
27
|
+
*/
|
|
28
|
+
enablePlugin(pluginId: string, scope?: Scope): Promise<Scope>;
|
|
29
|
+
/**
|
|
30
|
+
* Disables a plugin in the specified scope. If no scope is provided, it tries to find
|
|
31
|
+
* the scope where the plugin is already configured, or defaults to "user".
|
|
32
|
+
*/
|
|
33
|
+
disablePlugin(pluginId: string, scope?: Scope): Promise<Scope>;
|
|
34
|
+
/**
|
|
35
|
+
* Updates an installed plugin to the latest version from its marketplace
|
|
36
|
+
*/
|
|
37
|
+
updatePlugin(pluginId: string): Promise<InstalledPlugin>;
|
|
38
|
+
/**
|
|
39
|
+
* Lists all plugins from all registered marketplaces with their installation and enabled status
|
|
40
|
+
*/
|
|
41
|
+
listPlugins(): Promise<{
|
|
42
|
+
plugins: MarketplacePluginStatus[];
|
|
43
|
+
mergedEnabled: Record<string, boolean>;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Adds a new marketplace
|
|
47
|
+
*/
|
|
48
|
+
addMarketplace(input: string): Promise<KnownMarketplace>;
|
|
49
|
+
/**
|
|
50
|
+
* Removes a marketplace by name
|
|
51
|
+
*/
|
|
52
|
+
removeMarketplace(name: string): Promise<void>;
|
|
53
|
+
/**
|
|
54
|
+
* Updates a specific marketplace or all marketplaces
|
|
55
|
+
*/
|
|
56
|
+
updateMarketplace(name?: string): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Lists all registered marketplaces
|
|
59
|
+
*/
|
|
60
|
+
listMarketplaces(): Promise<KnownMarketplace[]>;
|
|
61
|
+
/**
|
|
62
|
+
* Gets the registry of all installed plugins
|
|
63
|
+
*/
|
|
64
|
+
getInstalledPlugins(): Promise<InstalledPluginsRegistry>;
|
|
65
|
+
/**
|
|
66
|
+
* Gets the merged enabled state of all plugins across all scopes
|
|
67
|
+
*/
|
|
68
|
+
getMergedEnabledPlugins(): Record<string, boolean>;
|
|
69
|
+
/**
|
|
70
|
+
* Loads a marketplace manifest from a local path
|
|
71
|
+
*/
|
|
72
|
+
loadMarketplaceManifest(marketplacePath: string): Promise<MarketplaceManifest>;
|
|
73
|
+
/**
|
|
74
|
+
* Resolves the local path for a marketplace
|
|
75
|
+
*/
|
|
76
|
+
getMarketplacePath(marketplace: KnownMarketplace): string;
|
|
77
|
+
/**
|
|
78
|
+
* Finds the scope where a plugin is currently enabled/disabled
|
|
79
|
+
*/
|
|
80
|
+
findPluginScope(pluginId: string): Scope | null;
|
|
81
|
+
/**
|
|
82
|
+
* Removes a plugin from the enabled plugins in the specified scope
|
|
83
|
+
*/
|
|
84
|
+
removeEnabledPlugin(scope: Scope, pluginId: string): Promise<void>;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/core/plugin.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B;;;;;GAKG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAsB;IAoB3C;;OAEG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,KAAK,GACZ,OAAO,CAAC,eAAe,CAAC;IAS3B;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtD;;;OAGG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAMnE;;;OAGG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAMpE;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAI9D;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,OAAO,EAAE,uBAAuB,EAAE,CAAC;QACnC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACxC,CAAC;IA0CF;;OAEG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI9D;;OAEG;IACG,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;OAEG;IACG,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAIrD;;OAEG;IACG,mBAAmB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAI9D;;OAEG;IACH,uBAAuB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIlD;;OAEG;IACG,uBAAuB,CAC3B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,mBAAmB,CAAC;IAM/B;;OAEG;IACH,kBAAkB,CAAC,WAAW,EAAE,gBAAgB,GAAG,MAAM;IAIzD;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAI/C;;OAEG;IACG,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAOzE"}
|