azerclaw 1.6.1 โ 2.1.0
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 +66 -175
- package/bin/azerclaw.ts +93 -2
- package/dist/bin/azerclaw.js +75 -2
- package/dist/bin/azerclaw.js.map +1 -1
- package/dist/src/agents/builtin.d.ts +1 -0
- package/dist/src/agents/builtin.d.ts.map +1 -1
- package/dist/src/agents/builtin.js +24 -14
- package/dist/src/agents/builtin.js.map +1 -1
- package/dist/src/agents/loader.d.ts.map +1 -1
- package/dist/src/agents/loader.js +1 -0
- package/dist/src/agents/loader.js.map +1 -1
- package/dist/src/channels/adapter.d.ts.map +1 -1
- package/dist/src/channels/adapter.js +6 -1
- package/dist/src/channels/adapter.js.map +1 -1
- package/dist/src/cli/animations/fish.d.ts +1 -0
- package/dist/src/cli/animations/fish.d.ts.map +1 -1
- package/dist/src/cli/animations/fish.js +53 -6
- package/dist/src/cli/animations/fish.js.map +1 -1
- package/dist/src/cli/commands/bot.d.ts +8 -0
- package/dist/src/cli/commands/bot.d.ts.map +1 -0
- package/dist/src/cli/commands/bot.js +42 -0
- package/dist/src/cli/commands/bot.js.map +1 -0
- package/dist/src/cli/commands/chat.d.ts +1 -1
- package/dist/src/cli/commands/chat.d.ts.map +1 -1
- package/dist/src/cli/commands/chat.js +197 -74
- package/dist/src/cli/commands/chat.js.map +1 -1
- package/dist/src/cli/commands/config.js +1 -1
- package/dist/src/cli/commands/config.js.map +1 -1
- package/dist/src/cli/commands/doctor.d.ts.map +1 -1
- package/dist/src/cli/commands/doctor.js +18 -3
- package/dist/src/cli/commands/doctor.js.map +1 -1
- package/dist/src/cli/commands/export.d.ts +6 -0
- package/dist/src/cli/commands/export.d.ts.map +1 -0
- package/dist/src/cli/commands/export.js +126 -0
- package/dist/src/cli/commands/export.js.map +1 -0
- package/dist/src/cli/commands/mcp.d.ts +8 -0
- package/dist/src/cli/commands/mcp.d.ts.map +1 -0
- package/dist/src/cli/commands/mcp.js +117 -0
- package/dist/src/cli/commands/mcp.js.map +1 -0
- package/dist/src/cli/commands/onboard.js +1 -1
- package/dist/src/cli/commands/onboard.js.map +1 -1
- package/dist/src/cli/commands/plugins.d.ts +7 -0
- package/dist/src/cli/commands/plugins.d.ts.map +1 -0
- package/dist/src/cli/commands/plugins.js +128 -0
- package/dist/src/cli/commands/plugins.js.map +1 -0
- package/dist/src/cli/commands/run.d.ts.map +1 -1
- package/dist/src/cli/commands/run.js +11 -3
- package/dist/src/cli/commands/run.js.map +1 -1
- package/dist/src/cli/commands/settings.js +1 -1
- package/dist/src/cli/commands/settings.js.map +1 -1
- package/dist/src/cli/commands/share.d.ts +6 -0
- package/dist/src/cli/commands/share.d.ts.map +1 -0
- package/dist/src/cli/commands/share.js +113 -0
- package/dist/src/cli/commands/share.js.map +1 -0
- package/dist/src/cli/commands/tui.d.ts.map +1 -1
- package/dist/src/cli/commands/tui.js +23 -3
- package/dist/src/cli/commands/tui.js.map +1 -1
- package/dist/src/config/manager.d.ts.map +1 -1
- package/dist/src/config/manager.js +4 -2
- package/dist/src/config/manager.js.map +1 -1
- package/dist/src/config/schema.d.ts +98 -2
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +17 -5
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/core/gateway.d.ts.map +1 -1
- package/dist/src/core/gateway.js +21 -0
- package/dist/src/core/gateway.js.map +1 -1
- package/dist/src/core/runtime.d.ts +11 -2
- package/dist/src/core/runtime.d.ts.map +1 -1
- package/dist/src/core/runtime.js +115 -10
- package/dist/src/core/runtime.js.map +1 -1
- package/dist/src/mcp-servers/antigravity/index.d.ts +2 -0
- package/dist/src/mcp-servers/antigravity/index.d.ts.map +1 -0
- package/dist/src/mcp-servers/antigravity/index.js +136 -0
- package/dist/src/mcp-servers/antigravity/index.js.map +1 -0
- package/dist/src/memory/store.d.ts +20 -2
- package/dist/src/memory/store.d.ts.map +1 -1
- package/dist/src/memory/store.js +44 -2
- package/dist/src/memory/store.js.map +1 -1
- package/dist/src/providers/base.d.ts +6 -1
- package/dist/src/providers/base.d.ts.map +1 -1
- package/dist/src/providers/base.js.map +1 -1
- package/dist/src/providers/router.d.ts.map +1 -1
- package/dist/src/providers/router.js +25 -3
- package/dist/src/providers/router.js.map +1 -1
- package/dist/src/server/hq.d.ts +21 -0
- package/dist/src/server/hq.d.ts.map +1 -0
- package/dist/src/server/hq.js +70 -0
- package/dist/src/server/hq.js.map +1 -0
- package/dist/src/tools/index.d.ts.map +1 -1
- package/dist/src/tools/index.js +21 -1
- package/dist/src/tools/index.js.map +1 -1
- package/dist/src/tools/index_memory.d.ts +14 -0
- package/dist/src/tools/index_memory.d.ts.map +1 -0
- package/dist/src/tools/index_memory.js +134 -0
- package/dist/src/tools/index_memory.js.map +1 -0
- package/dist/src/tools/mcp.d.ts +19 -0
- package/dist/src/tools/mcp.d.ts.map +1 -0
- package/dist/src/tools/mcp.js +94 -0
- package/dist/src/tools/mcp.js.map +1 -0
- package/dist/src/tools/specialized.d.ts +31 -0
- package/dist/src/tools/specialized.d.ts.map +1 -0
- package/dist/src/tools/specialized.js +159 -0
- package/dist/src/tools/specialized.js.map +1 -0
- package/dist/src/tools/visual.d.ts +7 -0
- package/dist/src/tools/visual.d.ts.map +1 -0
- package/dist/src/tools/visual.js +59 -0
- package/dist/src/tools/visual.js.map +1 -0
- package/package.json +9 -2
|
@@ -95,12 +95,34 @@ class ProviderRouter {
|
|
|
95
95
|
const provider = this.providers.get(providerName);
|
|
96
96
|
if (!provider)
|
|
97
97
|
continue;
|
|
98
|
-
let currentOptions = options;
|
|
98
|
+
let currentOptions = { ...options };
|
|
99
|
+
// Auto-model selection: if model is 'auto', find the best available model
|
|
100
|
+
if (options.model === 'auto') {
|
|
101
|
+
try {
|
|
102
|
+
const models = await provider.listModels();
|
|
103
|
+
// Calculate required context window
|
|
104
|
+
const contentLen = options.messages.reduce((acc, m) => acc + m.content.length, 0);
|
|
105
|
+
const estimatedTokens = Math.ceil(contentLen / 4) + (options.maxTokens || 4096) + 1000; // Buffer
|
|
106
|
+
// Find models that fit
|
|
107
|
+
const fittingModels = models.filter(m => m.contextWindow >= estimatedTokens);
|
|
108
|
+
if (fittingModels.length > 0) {
|
|
109
|
+
// Sort by context window (prefer smaller ones for speed/cost if they fit)
|
|
110
|
+
fittingModels.sort((a, b) => a.contextWindow - b.contextWindow);
|
|
111
|
+
currentOptions.model = fittingModels[0].id;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
// Fallback to largest available
|
|
115
|
+
models.sort((a, b) => b.contextWindow - a.contextWindow);
|
|
116
|
+
currentOptions.model = models[0].id;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
catch { /* fallback to provider default */ }
|
|
120
|
+
}
|
|
99
121
|
// If we fallback to openrouter, rewrite the system identity to DEEP Ocean 1.0
|
|
100
122
|
if (providerName === 'openrouter') {
|
|
101
123
|
currentOptions = {
|
|
102
|
-
...
|
|
103
|
-
messages:
|
|
124
|
+
...currentOptions,
|
|
125
|
+
messages: currentOptions.messages.map(m => m.role === 'system'
|
|
104
126
|
? { ...m, content: m.content.replace(/Azertron X1\.0/gi, 'DEEP Ocean 1.0').replace(/AZERTRON X1\.0/gi, 'DEEP Ocean 1.0') }
|
|
105
127
|
: m)
|
|
106
128
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/providers/router.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"router.js","sourceRoot":"","sources":["../../../src/providers/router.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ๐ข VOUGHT HQ Dashboard Server
|
|
3
|
+
* Broadcasts agent events via WebSocket and serves the web dashboard.
|
|
4
|
+
*/
|
|
5
|
+
import { AgentEvent } from '../core/runtime';
|
|
6
|
+
export declare class VoughtHQ {
|
|
7
|
+
private app;
|
|
8
|
+
private server;
|
|
9
|
+
private wss;
|
|
10
|
+
private port;
|
|
11
|
+
private clients;
|
|
12
|
+
constructor(port?: number);
|
|
13
|
+
start(): void;
|
|
14
|
+
/**
|
|
15
|
+
* Broadcast an agent event to all connected dashboard clients.
|
|
16
|
+
*/
|
|
17
|
+
broadcast(event: AgentEvent): void;
|
|
18
|
+
stop(): void;
|
|
19
|
+
}
|
|
20
|
+
export declare function getVoughtHQ(): VoughtHQ;
|
|
21
|
+
//# sourceMappingURL=hq.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hq.d.ts","sourceRoot":"","sources":["../../../src/server/hq.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,qBAAa,QAAQ;IACnB,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,GAAG,CAAgD;IAC3D,OAAO,CAAC,IAAI,CAAgB;IAC5B,OAAO,CAAC,OAAO,CAA6B;gBAEhC,IAAI,GAAE,MAAa;IAY/B,KAAK,IAAI,IAAI;IAgBb;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAYlC,IAAI,IAAI,IAAI;CAIb;AAGD,wBAAgB,WAAW,IAAI,QAAQ,CAGtC"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ๐ข VOUGHT HQ Dashboard Server
|
|
4
|
+
* Broadcasts agent events via WebSocket and serves the web dashboard.
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.VoughtHQ = void 0;
|
|
11
|
+
exports.getVoughtHQ = getVoughtHQ;
|
|
12
|
+
const ws_1 = require("ws");
|
|
13
|
+
const express_1 = __importDefault(require("express"));
|
|
14
|
+
const http_1 = require("http");
|
|
15
|
+
const path_1 = __importDefault(require("path"));
|
|
16
|
+
class VoughtHQ {
|
|
17
|
+
app = (0, express_1.default)();
|
|
18
|
+
server = (0, http_1.createServer)(this.app);
|
|
19
|
+
wss = new ws_1.WebSocketServer({ server: this.server });
|
|
20
|
+
port = 8443;
|
|
21
|
+
clients = new Set();
|
|
22
|
+
constructor(port = 8443) {
|
|
23
|
+
this.port = port;
|
|
24
|
+
// Serve static dashboard files (to be built)
|
|
25
|
+
this.app.use(express_1.default.static(path_1.default.join(process.cwd(), 'dist/dashboard')));
|
|
26
|
+
// Fallback for SPA
|
|
27
|
+
this.app.get('*', (req, res) => {
|
|
28
|
+
res.sendFile(path_1.default.join(process.cwd(), 'dist/dashboard/index.html'));
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
start() {
|
|
32
|
+
this.server.listen(this.port, () => {
|
|
33
|
+
console.log(`[HQ] Vought HQ active at http://localhost:${this.port}`);
|
|
34
|
+
console.log(`[HQ] WebSocket broadcast on ws://localhost:${this.port}`);
|
|
35
|
+
});
|
|
36
|
+
this.wss.on('connection', (ws) => {
|
|
37
|
+
this.clients.add(ws);
|
|
38
|
+
ws.send(JSON.stringify({ type: 'sys', content: 'Connected to Vought HQ' }));
|
|
39
|
+
ws.on('close', () => {
|
|
40
|
+
this.clients.delete(ws);
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Broadcast an agent event to all connected dashboard clients.
|
|
46
|
+
*/
|
|
47
|
+
broadcast(event) {
|
|
48
|
+
const data = JSON.stringify({
|
|
49
|
+
...event,
|
|
50
|
+
timestamp: new Date().toISOString(),
|
|
51
|
+
});
|
|
52
|
+
for (const client of this.clients) {
|
|
53
|
+
if (client.readyState === ws_1.WebSocket.OPEN) {
|
|
54
|
+
client.send(data);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
stop() {
|
|
59
|
+
this.wss.close();
|
|
60
|
+
this.server.close();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
exports.VoughtHQ = VoughtHQ;
|
|
64
|
+
let instance = null;
|
|
65
|
+
function getVoughtHQ() {
|
|
66
|
+
if (!instance)
|
|
67
|
+
instance = new VoughtHQ();
|
|
68
|
+
return instance;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=hq.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hq.js","sourceRoot":"","sources":["../../../src/server/hq.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;AAiEH,kCAGC;AAlED,2BAAgD;AAChD,sDAA8B;AAC9B,+BAAoC;AACpC,gDAAwB;AAGxB,MAAa,QAAQ;IACX,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAChB,MAAM,GAAG,IAAA,mBAAY,EAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChC,GAAG,GAAG,IAAI,oBAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,IAAI,GAAW,IAAI,CAAC;IACpB,OAAO,GAAmB,IAAI,GAAG,EAAE,CAAC;IAE5C,YAAY,OAAe,IAAI;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,6CAA6C;QAC7C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAO,CAAC,MAAM,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAEzE,mBAAmB;QACnB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC7B,GAAG,CAAC,QAAQ,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,2BAA2B,CAAC,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;YACjC,OAAO,CAAC,GAAG,CAAC,6CAA6C,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,8CAA8C,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE;YAC/B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC;YAE5E,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;gBAClB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAiB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,GAAG,KAAK;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC,CAAC;QACH,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,UAAU,KAAK,cAAS,CAAC,IAAI,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CACF;AAtDD,4BAsDC;AAED,IAAI,QAAQ,GAAoB,IAAI,CAAC;AACrC,SAAgB,WAAW;IACzB,IAAI,CAAC,QAAQ;QAAE,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;IACzC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAeH;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0CtD"}
|
package/dist/src/tools/index.js
CHANGED
|
@@ -43,7 +43,11 @@ const loader_1 = require("./loader");
|
|
|
43
43
|
const shell_1 = require("./shell");
|
|
44
44
|
const filesystem_1 = require("./filesystem");
|
|
45
45
|
const advanced_1 = require("./advanced");
|
|
46
|
+
const specialized_1 = require("./specialized");
|
|
47
|
+
const index_memory_1 = require("./index_memory");
|
|
48
|
+
const visual_1 = require("./visual");
|
|
46
49
|
const memory_1 = require("./memory");
|
|
50
|
+
const mcp_1 = require("./mcp");
|
|
47
51
|
const path = __importStar(require("path"));
|
|
48
52
|
const os = __importStar(require("os"));
|
|
49
53
|
/**
|
|
@@ -60,8 +64,24 @@ async function registerAllTools() {
|
|
|
60
64
|
registry.register(advanced_1.spawnSubAgentTool);
|
|
61
65
|
registry.register(advanced_1.webSearchTool);
|
|
62
66
|
registry.register(advanced_1.codeAnalysisTool);
|
|
67
|
+
registry.register(specialized_1.reverseEngineerTool);
|
|
68
|
+
registry.register(specialized_1.stealthAuditTool);
|
|
69
|
+
registry.register(specialized_1.patternSpotterTool);
|
|
70
|
+
registry.register(specialized_1.analyzeErrorTool);
|
|
71
|
+
registry.register(specialized_1.applyFixTool);
|
|
72
|
+
registry.register(index_memory_1.indexProjectTool);
|
|
73
|
+
registry.register(index_memory_1.semanticSearchTool);
|
|
74
|
+
registry.register(visual_1.generateImageTool);
|
|
63
75
|
registry.register(memory_1.memoryTool);
|
|
64
|
-
// 2.
|
|
76
|
+
// 2. Initialize MCP Tools
|
|
77
|
+
try {
|
|
78
|
+
const mcp = (0, mcp_1.getMCPManager)();
|
|
79
|
+
await mcp.initialize();
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
console.warn(`[MCP] Failed to initialize: ${error.message}`);
|
|
83
|
+
}
|
|
84
|
+
// 3. Load External Plugins
|
|
65
85
|
const loader = (0, loader_1.getToolLoader)();
|
|
66
86
|
// Standard plugin locations
|
|
67
87
|
const pluginPaths = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBH,4CA0CC;AA1DD,yCAA6C;AAC7C,qCAAyC;AACzC,mCAAoC;AACpC,6CAAyF;AACzF,yCAAgF;AAChF,+CAA0H;AAC1H,iDAAsE;AACtE,qCAA6C;AAC7C,qCAAsC;AACtC,+BAAsC;AACtC,2CAA6B;AAC7B,uCAAyB;AAEzB;;GAEG;AACI,KAAK,UAAU,gBAAgB;IACpC,MAAM,QAAQ,GAAG,IAAA,0BAAe,GAAE,CAAC;IAEnC,6BAA6B;IAC7B,QAAQ,CAAC,QAAQ,CAAC,iBAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,yBAAY,CAAC,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,0BAAa,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,wBAAW,CAAC,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,4BAAe,CAAC,CAAC;IACnC,QAAQ,CAAC,QAAQ,CAAC,4BAAiB,CAAC,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,wBAAa,CAAC,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,2BAAgB,CAAC,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,iCAAmB,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,CAAC,8BAAgB,CAAC,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,gCAAkB,CAAC,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,8BAAgB,CAAC,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,0BAAY,CAAC,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,+BAAgB,CAAC,CAAC;IACpC,QAAQ,CAAC,QAAQ,CAAC,iCAAkB,CAAC,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,0BAAiB,CAAC,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,mBAAU,CAAC,CAAC;IAE9B,0BAA0B;IAC1B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAA,mBAAa,GAAE,CAAC;QAC5B,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,2BAA2B;IAC3B,MAAM,MAAM,GAAG,IAAA,sBAAa,GAAE,CAAC;IAE/B,4BAA4B;IAC5B,MAAM,WAAW,GAAG;QAClB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC;KAChD,CAAC;IAEF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,MAAM,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ๐ง Deep Project Memory Tool
|
|
3
|
+
* Uses flexsearch for high-performance local indexing of the workspace.
|
|
4
|
+
*/
|
|
5
|
+
import { Tool } from './registry';
|
|
6
|
+
/**
|
|
7
|
+
* SISTER SAGE: index_project
|
|
8
|
+
*/
|
|
9
|
+
export declare const indexProjectTool: Tool;
|
|
10
|
+
/**
|
|
11
|
+
* SISTER SAGE: semantic_search
|
|
12
|
+
*/
|
|
13
|
+
export declare const semanticSearchTool: Tool;
|
|
14
|
+
//# sourceMappingURL=index_memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index_memory.d.ts","sourceRoot":"","sources":["../../../src/tools/index_memory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AA0B9C;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,IAwC9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAyBhC,CAAC"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ๐ง Deep Project Memory Tool
|
|
4
|
+
* Uses flexsearch for high-performance local indexing of the workspace.
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.semanticSearchTool = exports.indexProjectTool = void 0;
|
|
41
|
+
const fs = __importStar(require("fs/promises"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
const os = __importStar(require("os"));
|
|
44
|
+
const { Index } = require('flexsearch');
|
|
45
|
+
const INDEX_FILE = path.join(os.homedir(), '.azerclaw', 'memory', 'project_index.json');
|
|
46
|
+
let searchIndex = null;
|
|
47
|
+
async function getIndex() {
|
|
48
|
+
if (searchIndex)
|
|
49
|
+
return searchIndex;
|
|
50
|
+
searchIndex = new Index({
|
|
51
|
+
tokenize: "forward",
|
|
52
|
+
});
|
|
53
|
+
try {
|
|
54
|
+
const data = await fs.readFile(INDEX_FILE, 'utf-8');
|
|
55
|
+
const json = JSON.parse(data);
|
|
56
|
+
// Note: flexsearch import/export is a bit complex in commonjs,
|
|
57
|
+
// for now we re-index if not loaded or just store keys.
|
|
58
|
+
}
|
|
59
|
+
catch { /* fresh index */ }
|
|
60
|
+
return searchIndex;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* SISTER SAGE: index_project
|
|
64
|
+
*/
|
|
65
|
+
exports.indexProjectTool = {
|
|
66
|
+
name: 'index_project',
|
|
67
|
+
version: '2.1.0',
|
|
68
|
+
description: 'Recursively index all text/code files in the current workspace for instant retrieval.',
|
|
69
|
+
parameters: {
|
|
70
|
+
type: 'object',
|
|
71
|
+
properties: {
|
|
72
|
+
directory: { type: 'string', description: 'Root directory to index (default: current)' },
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
async execute(args) {
|
|
76
|
+
const rootDir = args.directory || process.cwd();
|
|
77
|
+
const index = await getIndex();
|
|
78
|
+
let fileCount = 0;
|
|
79
|
+
async function scan(dir) {
|
|
80
|
+
const entries = await fs.readdir(dir, { withFileTypes: true });
|
|
81
|
+
for (const entry of entries) {
|
|
82
|
+
const fullPath = path.join(dir, entry.name);
|
|
83
|
+
if (entry.isDirectory()) {
|
|
84
|
+
if (entry.name === 'node_modules' || entry.name === '.git' || entry.name === 'dist')
|
|
85
|
+
continue;
|
|
86
|
+
await scan(fullPath);
|
|
87
|
+
}
|
|
88
|
+
else if (entry.isFile()) {
|
|
89
|
+
const ext = path.extname(entry.name);
|
|
90
|
+
if (['.ts', '.js', '.md', '.json', '.txt', '.py', '.go', '.rs'].includes(ext)) {
|
|
91
|
+
const content = await fs.readFile(fullPath, 'utf-8');
|
|
92
|
+
index.add(fullPath, content.slice(0, 10000)); // Index first 10k chars
|
|
93
|
+
fileCount++;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
try {
|
|
99
|
+
await scan(rootDir);
|
|
100
|
+
return { success: true, output: `Successfully indexed ${fileCount} files in ${rootDir}.` };
|
|
101
|
+
}
|
|
102
|
+
catch (e) {
|
|
103
|
+
return { success: false, output: '', error: e.message };
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* SISTER SAGE: semantic_search
|
|
109
|
+
*/
|
|
110
|
+
exports.semanticSearchTool = {
|
|
111
|
+
name: 'semantic_search',
|
|
112
|
+
version: '2.1.0',
|
|
113
|
+
description: 'Search the project index for relevant code snippets or documentation.',
|
|
114
|
+
parameters: {
|
|
115
|
+
type: 'object',
|
|
116
|
+
properties: {
|
|
117
|
+
query: { type: 'string', description: 'The search query or code snippet to find' },
|
|
118
|
+
limit: { type: 'number', default: 5 },
|
|
119
|
+
},
|
|
120
|
+
required: ['query'],
|
|
121
|
+
},
|
|
122
|
+
async execute(args) {
|
|
123
|
+
const index = await getIndex();
|
|
124
|
+
const results = index.search(args.query, { limit: args.limit });
|
|
125
|
+
if (results.length === 0) {
|
|
126
|
+
return { success: true, output: 'No matching files found in index. Try running index_project first.' };
|
|
127
|
+
}
|
|
128
|
+
return {
|
|
129
|
+
success: true,
|
|
130
|
+
output: `Found ${results.length} matches:\n\n${results.join('\n')}`,
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
//# sourceMappingURL=index_memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index_memory.js","sourceRoot":"","sources":["../../../src/tools/index_memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ๐ AZERCLAW MCP Client
|
|
3
|
+
* Implements the Model Context Protocol (MCP) to connect to external tool servers.
|
|
4
|
+
*/
|
|
5
|
+
export declare class MCPManager {
|
|
6
|
+
private clients;
|
|
7
|
+
private registry;
|
|
8
|
+
/**
|
|
9
|
+
* Initialize all enabled MCP servers from the configuration.
|
|
10
|
+
*/
|
|
11
|
+
initialize(): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Connect to a single MCP server and register its tools.
|
|
14
|
+
*/
|
|
15
|
+
connectToServer(name: string, config: any): Promise<void>;
|
|
16
|
+
shutdown(): Promise<void>;
|
|
17
|
+
}
|
|
18
|
+
export declare function getMCPManager(): MCPManager;
|
|
19
|
+
//# sourceMappingURL=mcp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,QAAQ,CAAqB;IAErC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAejC;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDzD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAOhC;AAGD,wBAAgB,aAAa,IAAI,UAAU,CAG1C"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ๐ AZERCLAW MCP Client
|
|
4
|
+
* Implements the Model Context Protocol (MCP) to connect to external tool servers.
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.MCPManager = void 0;
|
|
8
|
+
exports.getMCPManager = getMCPManager;
|
|
9
|
+
const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
|
|
10
|
+
const stdio_js_1 = require("@modelcontextprotocol/sdk/client/stdio.js");
|
|
11
|
+
const registry_1 = require("./registry");
|
|
12
|
+
const manager_1 = require("../config/manager");
|
|
13
|
+
class MCPManager {
|
|
14
|
+
clients = new Map();
|
|
15
|
+
registry = (0, registry_1.getToolRegistry)();
|
|
16
|
+
/**
|
|
17
|
+
* Initialize all enabled MCP servers from the configuration.
|
|
18
|
+
*/
|
|
19
|
+
async initialize() {
|
|
20
|
+
const config = (0, manager_1.getConfigManager)().getAll();
|
|
21
|
+
const servers = config.mcpServers || {};
|
|
22
|
+
for (const [name, serverConfig] of Object.entries(servers)) {
|
|
23
|
+
if (!serverConfig.enabled)
|
|
24
|
+
continue;
|
|
25
|
+
try {
|
|
26
|
+
await this.connectToServer(name, serverConfig);
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
console.error(`[MCP] Failed to connect to server "${name}":`, error.message);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Connect to a single MCP server and register its tools.
|
|
35
|
+
*/
|
|
36
|
+
async connectToServer(name, config) {
|
|
37
|
+
const transport = new stdio_js_1.StdioClientTransport({
|
|
38
|
+
command: config.command,
|
|
39
|
+
args: config.args,
|
|
40
|
+
env: { ...process.env, ...(config.env || {}) },
|
|
41
|
+
});
|
|
42
|
+
const client = new index_js_1.Client({ name: 'Azertron-X1-Client', version: '1.0.0' }, { capabilities: { tools: {} } });
|
|
43
|
+
await client.connect(transport);
|
|
44
|
+
// List available tools from the server
|
|
45
|
+
const { tools } = await client.listTools();
|
|
46
|
+
for (const mcpTool of tools) {
|
|
47
|
+
const toolWrapper = {
|
|
48
|
+
name: mcpTool.name,
|
|
49
|
+
description: mcpTool.description || `MCP Tool from ${name} server`,
|
|
50
|
+
version: 'mcp-1.0.0',
|
|
51
|
+
author: name,
|
|
52
|
+
parameters: mcpTool.inputSchema,
|
|
53
|
+
execute: async (args) => {
|
|
54
|
+
try {
|
|
55
|
+
const result = await client.callTool({
|
|
56
|
+
name: mcpTool.name,
|
|
57
|
+
arguments: args,
|
|
58
|
+
});
|
|
59
|
+
return {
|
|
60
|
+
success: !result.isError,
|
|
61
|
+
output: JSON.stringify(result.content, null, 2),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
catch (error) {
|
|
65
|
+
return {
|
|
66
|
+
success: false,
|
|
67
|
+
output: `MCP Error: ${error.message}`,
|
|
68
|
+
error: error.message,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
this.registry.register(toolWrapper);
|
|
74
|
+
}
|
|
75
|
+
this.clients.set(name, client);
|
|
76
|
+
console.log(`[MCP] Connected to "${name}" and registered ${tools.length} tools.`);
|
|
77
|
+
}
|
|
78
|
+
async shutdown() {
|
|
79
|
+
for (const client of this.clients.values()) {
|
|
80
|
+
try {
|
|
81
|
+
await client.close();
|
|
82
|
+
}
|
|
83
|
+
catch { /* ignore */ }
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.MCPManager = MCPManager;
|
|
88
|
+
let instance = null;
|
|
89
|
+
function getMCPManager() {
|
|
90
|
+
if (!instance)
|
|
91
|
+
instance = new MCPManager();
|
|
92
|
+
return instance;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=mcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/tools/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ๐งช Compound V Specialized Tools
|
|
3
|
+
* High-power tools designed for specific members of the Pantheon.
|
|
4
|
+
*/
|
|
5
|
+
import { Tool } from './registry';
|
|
6
|
+
/**
|
|
7
|
+
* FRENCHIE: reverse_engineer
|
|
8
|
+
* Deep analysis of binaries or complex JS.
|
|
9
|
+
*/
|
|
10
|
+
export declare const reverseEngineerTool: Tool;
|
|
11
|
+
/**
|
|
12
|
+
* BLACK NOIR: stealth_audit
|
|
13
|
+
* Silent security probes.
|
|
14
|
+
*/
|
|
15
|
+
export declare const stealthAuditTool: Tool;
|
|
16
|
+
/**
|
|
17
|
+
* SISTER SAGE: pattern_spotter
|
|
18
|
+
* Large scale data processing.
|
|
19
|
+
*/
|
|
20
|
+
export declare const patternSpotterTool: Tool;
|
|
21
|
+
/**
|
|
22
|
+
* RECOVERY: analyze_error
|
|
23
|
+
* Help the agent understand why a command failed.
|
|
24
|
+
*/
|
|
25
|
+
export declare const analyzeErrorTool: Tool;
|
|
26
|
+
/**
|
|
27
|
+
* RECOVERY: apply_fix
|
|
28
|
+
* Automatically fix a common error.
|
|
29
|
+
*/
|
|
30
|
+
export declare const applyFixTool: Tool;
|
|
31
|
+
//# sourceMappingURL=specialized.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specialized.d.ts","sourceRoot":"","sources":["../../../src/tools/specialized.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAc,MAAM,YAAY,CAAC;AAG9C;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,IA4BjC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,IAyB9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,IAyBhC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,IAoB9B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,IAwB1B,CAAC"}
|