nexus-prime 0.2.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.
Files changed (134) hide show
  1. package/README.md +253 -0
  2. package/dist/agents/adapters/mcp.d.ts +21 -0
  3. package/dist/agents/adapters/mcp.d.ts.map +1 -0
  4. package/dist/agents/adapters/mcp.js +447 -0
  5. package/dist/agents/adapters/mcp.js.map +1 -0
  6. package/dist/agents/adapters.d.ts +57 -0
  7. package/dist/agents/adapters.d.ts.map +1 -0
  8. package/dist/agents/adapters.js +151 -0
  9. package/dist/agents/adapters.js.map +1 -0
  10. package/dist/agents/coordinator.d.ts +75 -0
  11. package/dist/agents/coordinator.d.ts.map +1 -0
  12. package/dist/agents/coordinator.js +339 -0
  13. package/dist/agents/coordinator.js.map +1 -0
  14. package/dist/agents/core/types.d.ts +157 -0
  15. package/dist/agents/core/types.d.ts.map +1 -0
  16. package/dist/agents/core/types.js +5 -0
  17. package/dist/agents/core/types.js.map +1 -0
  18. package/dist/agents/learner.d.ts +25 -0
  19. package/dist/agents/learner.d.ts.map +1 -0
  20. package/dist/agents/learner.js +88 -0
  21. package/dist/agents/learner.js.map +1 -0
  22. package/dist/cli.d.ts +6 -0
  23. package/dist/cli.d.ts.map +1 -0
  24. package/dist/cli.js +237 -0
  25. package/dist/cli.js.map +1 -0
  26. package/dist/config.d.ts +74 -0
  27. package/dist/config.d.ts.map +1 -0
  28. package/dist/config.js +73 -0
  29. package/dist/config.js.map +1 -0
  30. package/dist/core/evolution.d.ts +122 -0
  31. package/dist/core/evolution.d.ts.map +1 -0
  32. package/dist/core/evolution.js +319 -0
  33. package/dist/core/evolution.js.map +1 -0
  34. package/dist/core/memory.d.ts +96 -0
  35. package/dist/core/memory.d.ts.map +1 -0
  36. package/dist/core/memory.js +304 -0
  37. package/dist/core/memory.js.map +1 -0
  38. package/dist/core/optimize.d.ts +100 -0
  39. package/dist/core/optimize.d.ts.map +1 -0
  40. package/dist/core/optimize.js +263 -0
  41. package/dist/core/optimize.js.map +1 -0
  42. package/dist/core/types.d.ts +155 -0
  43. package/dist/core/types.d.ts.map +1 -0
  44. package/dist/core/types.js +5 -0
  45. package/dist/core/types.js.map +1 -0
  46. package/dist/core/wave.d.ts +55 -0
  47. package/dist/core/wave.d.ts.map +1 -0
  48. package/dist/core/wave.js +119 -0
  49. package/dist/core/wave.js.map +1 -0
  50. package/dist/engines/benchmark.d.ts +76 -0
  51. package/dist/engines/benchmark.d.ts.map +1 -0
  52. package/dist/engines/benchmark.js +167 -0
  53. package/dist/engines/benchmark.js.map +1 -0
  54. package/dist/engines/cache-manager.d.ts +75 -0
  55. package/dist/engines/cache-manager.d.ts.map +1 -0
  56. package/dist/engines/cache-manager.js +200 -0
  57. package/dist/engines/cache-manager.js.map +1 -0
  58. package/dist/engines/context.d.ts +50 -0
  59. package/dist/engines/context.d.ts.map +1 -0
  60. package/dist/engines/context.js +99 -0
  61. package/dist/engines/context.js.map +1 -0
  62. package/dist/engines/embedder.d.ts +55 -0
  63. package/dist/engines/embedder.d.ts.map +1 -0
  64. package/dist/engines/embedder.js +223 -0
  65. package/dist/engines/embedder.js.map +1 -0
  66. package/dist/engines/guardrails-bridge.d.ts +64 -0
  67. package/dist/engines/guardrails-bridge.d.ts.map +1 -0
  68. package/dist/engines/guardrails-bridge.js +251 -0
  69. package/dist/engines/guardrails-bridge.js.map +1 -0
  70. package/dist/engines/index.d.ts +14 -0
  71. package/dist/engines/index.d.ts.map +1 -0
  72. package/dist/engines/index.js +14 -0
  73. package/dist/engines/index.js.map +1 -0
  74. package/dist/engines/memory.d.ts +76 -0
  75. package/dist/engines/memory.d.ts.map +1 -0
  76. package/dist/engines/memory.js +431 -0
  77. package/dist/engines/memory.js.map +1 -0
  78. package/dist/engines/meta-learner.d.ts +87 -0
  79. package/dist/engines/meta-learner.d.ts.map +1 -0
  80. package/dist/engines/meta-learner.js +214 -0
  81. package/dist/engines/meta-learner.js.map +1 -0
  82. package/dist/engines/orchestrator.d.ts +69 -0
  83. package/dist/engines/orchestrator.d.ts.map +1 -0
  84. package/dist/engines/orchestrator.js +175 -0
  85. package/dist/engines/orchestrator.js.map +1 -0
  86. package/dist/engines/pod-network.d.ts +31 -0
  87. package/dist/engines/pod-network.d.ts.map +1 -0
  88. package/dist/engines/pod-network.js +108 -0
  89. package/dist/engines/pod-network.js.map +1 -0
  90. package/dist/engines/token-optimizer.d.ts +53 -0
  91. package/dist/engines/token-optimizer.d.ts.map +1 -0
  92. package/dist/engines/token-optimizer.js +115 -0
  93. package/dist/engines/token-optimizer.js.map +1 -0
  94. package/dist/engines/token-supremacy.d.ts +86 -0
  95. package/dist/engines/token-supremacy.d.ts.map +1 -0
  96. package/dist/engines/token-supremacy.js +403 -0
  97. package/dist/engines/token-supremacy.js.map +1 -0
  98. package/dist/index.d.ts +99 -0
  99. package/dist/index.d.ts.map +1 -0
  100. package/dist/index.js +302 -0
  101. package/dist/index.js.map +1 -0
  102. package/dist/nexus-prime.d.ts +15 -0
  103. package/dist/nexus-prime.d.ts.map +1 -0
  104. package/dist/nexus-prime.js +15 -0
  105. package/dist/nexus-prime.js.map +1 -0
  106. package/dist/phantom/index.d.ts +135 -0
  107. package/dist/phantom/index.d.ts.map +1 -0
  108. package/dist/phantom/index.js +286 -0
  109. package/dist/phantom/index.js.map +1 -0
  110. package/dist/phantom/merge-oracle.d.ts +35 -0
  111. package/dist/phantom/merge-oracle.d.ts.map +1 -0
  112. package/dist/phantom/merge-oracle.js +189 -0
  113. package/dist/phantom/merge-oracle.js.map +1 -0
  114. package/dist/phantom/phase4-orchestrator.d.ts +14 -0
  115. package/dist/phantom/phase4-orchestrator.d.ts.map +1 -0
  116. package/dist/phantom/phase4-orchestrator.js +488 -0
  117. package/dist/phantom/phase4-orchestrator.js.map +1 -0
  118. package/dist/verify-guardrails.d.ts +2 -0
  119. package/dist/verify-guardrails.d.ts.map +1 -0
  120. package/dist/verify-guardrails.js +48 -0
  121. package/dist/verify-guardrails.js.map +1 -0
  122. package/dist/verify-pod-sync.d.ts +2 -0
  123. package/dist/verify-pod-sync.d.ts.map +1 -0
  124. package/dist/verify-pod-sync.js +41 -0
  125. package/dist/verify-pod-sync.js.map +1 -0
  126. package/dist/verify-substrate.d.ts +2 -0
  127. package/dist/verify-substrate.d.ts.map +1 -0
  128. package/dist/verify-substrate.js +41 -0
  129. package/dist/verify-substrate.js.map +1 -0
  130. package/dist/verify-token-scoring.d.ts +2 -0
  131. package/dist/verify-token-scoring.d.ts.map +1 -0
  132. package/dist/verify-token-scoring.js +37 -0
  133. package/dist/verify-token-scoring.js.map +1 -0
  134. package/package.json +80 -0
@@ -0,0 +1,447 @@
1
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ import { CallToolRequestSchema, ErrorCode, ListToolsRequestSchema, McpError, } from '@modelcontextprotocol/sdk/types.js';
4
+ import { statSync, readdirSync, readFileSync } from 'fs';
5
+ import * as path from 'path';
6
+ import { fileURLToPath } from 'url';
7
+ import { TokenSupremacyEngine, formatReadingPlan } from '../../engines/token-supremacy.js';
8
+ import { GhostPass, PhantomWorker } from '../../phantom/index.js';
9
+ import { MergeOracle } from '../../phantom/merge-oracle.js';
10
+ import { GuardrailEngine } from '../../engines/guardrails-bridge.js';
11
+ const tokenEngine = new TokenSupremacyEngine();
12
+ const guardrailEngine = new GuardrailEngine();
13
+ // Derive project root from this file's location (dist/agents/adapters/mcp.js → project root)
14
+ const __filename = fileURLToPath(import.meta.url);
15
+ const PROJECT_ROOT = path.resolve(path.dirname(__filename), '..', '..', '..');
16
+ /** Session-level telemetry tracker */
17
+ class SessionTelemetry {
18
+ startTime = Date.now();
19
+ callCount = 0;
20
+ tokensOptimized = 0;
21
+ memoriesStored = 0;
22
+ memoriesRecalled = 0;
23
+ recordCall() { this.callCount++; }
24
+ recordTokens(saved) { this.tokensOptimized += saved; }
25
+ recordStore() { this.memoriesStored++; }
26
+ recordRecall(count) { this.memoriesRecalled += count; }
27
+ format(memStats) {
28
+ const uptime = Math.round((Date.now() - this.startTime) / 1000);
29
+ const uptimeStr = uptime < 60 ? `${uptime}s` : `${Math.round(uptime / 60)}m`;
30
+ const parts = [
31
+ `${this.callCount} calls`,
32
+ this.tokensOptimized > 0 ? `${(this.tokensOptimized / 1000).toFixed(1)}k tokens saved` : null,
33
+ this.memoriesStored > 0 ? `${this.memoriesStored} stored` : null,
34
+ this.memoriesRecalled > 0 ? `${this.memoriesRecalled} recalled` : null,
35
+ memStats ? `${memStats.totalLinks} Zettel links` : null,
36
+ ].filter(Boolean);
37
+ // Grain-inspired semantic structure
38
+ return `\n<state type="telemetry" engine="nexus-prime" uptime="${uptimeStr}">\n${parts.join(' │ ')}\n</state>`;
39
+ }
40
+ }
41
+ export class MCPAdapter {
42
+ name = 'mcp';
43
+ type = 'mcp';
44
+ connected = false;
45
+ agents = [];
46
+ server;
47
+ nexusRef;
48
+ telemetry = new SessionTelemetry();
49
+ constructor() {
50
+ this.server = new Server({ name: 'nexus-prime-mcp', version: '0.2.0' }, { capabilities: { tools: {} } });
51
+ this.setupToolHandlers();
52
+ }
53
+ setNexusRef(nexus) {
54
+ this.nexusRef = nexus;
55
+ }
56
+ setupToolHandlers() {
57
+ this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
58
+ tools: [
59
+ // ── Memory ────────────────────────────────────────────────────────
60
+ {
61
+ name: 'nexus_store_memory',
62
+ description: 'Store a finding, insight, or memory into Nexus Prime. Use after discovering bugs, architecture decisions, or patterns. Priority 0-1 (1.0 = critical). High-priority items auto-fission to long-term memory.',
63
+ inputSchema: {
64
+ type: 'object',
65
+ properties: {
66
+ content: { type: 'string', description: 'The knowledge to store' },
67
+ priority: { type: 'number', description: 'Priority 0-1 (default 0.7). Use 1.0 for critical insights.' },
68
+ tags: { type: 'array', items: { type: 'string' }, description: 'Tags e.g. bug, architecture, decision' }
69
+ },
70
+ required: ['content'],
71
+ },
72
+ },
73
+ {
74
+ name: 'nexus_recall_memory',
75
+ description: 'Retrieve relevant context from Nexus Prime. Call at the START of each session to recover prior knowledge. Also call mid-session when encountering a topic that may have been researched before.',
76
+ inputSchema: {
77
+ type: 'object',
78
+ properties: {
79
+ query: { type: 'string', description: 'What are you trying to remember or find?' },
80
+ k: { type: 'number', description: 'Number of results (default 5)' }
81
+ },
82
+ required: ['query'],
83
+ },
84
+ },
85
+ {
86
+ name: 'nexus_memory_stats',
87
+ description: 'Get stats about what Nexus Prime knows: tier counts, top tags, Zettelkasten links. Call at session start after recall to gauge available knowledge depth.',
88
+ inputSchema: { type: 'object', properties: {}, required: [] },
89
+ },
90
+ // ── Token optimization ────────────────────────────────────────────
91
+ {
92
+ name: 'nexus_optimize_tokens',
93
+ description: 'Generate a token-efficient file reading plan BEFORE reading files. MANDATORY when reading 3+ files. Returns which files to read fully, outline-only, or skip. Typically saves 50-90% tokens per session.',
94
+ inputSchema: {
95
+ type: 'object',
96
+ properties: {
97
+ task: { type: 'string', description: 'Task description' },
98
+ files: { type: 'array', items: { type: 'string' }, description: 'File paths to analyze. If omitted, auto-scans src/' },
99
+ budget: { type: 'number', description: 'Token budget override' }
100
+ },
101
+ required: ['task'],
102
+ },
103
+ },
104
+ // ── Mindkit ──────────────────────────────────────────────────────
105
+ {
106
+ name: 'nexus_mindkit_check',
107
+ description: 'Check an action against Mindkit guardrails before executing. MANDATORY before destructive operations (deleting files, installing packages, modifying production configs). Returns PASS/FAIL with score 0-100, violations, and suggestions.',
108
+ inputSchema: {
109
+ type: 'object',
110
+ properties: {
111
+ action: {
112
+ type: 'string',
113
+ description: 'The action or prompt to validate'
114
+ },
115
+ tokenCount: {
116
+ type: 'number',
117
+ description: 'Estimated token count of current context'
118
+ },
119
+ filesToModify: {
120
+ type: 'array',
121
+ items: { type: 'string' },
122
+ description: 'Files that will be modified'
123
+ },
124
+ isDestructive: {
125
+ type: 'boolean',
126
+ description: 'True if operation could cause data loss'
127
+ }
128
+ },
129
+ required: ['action']
130
+ }
131
+ },
132
+ {
133
+ name: 'nexus_ghost_pass',
134
+ description: 'Read-only pre-flight analysis. Call BEFORE modifying 3+ interrelated files. Returns risk areas, optimal reading plan, and whether to use Phantom Workers. If it suggests parallel approaches, follow up with nexus_spawn_workers.',
135
+ inputSchema: {
136
+ type: 'object',
137
+ properties: {
138
+ goal: { type: 'string', description: 'What you want to accomplish' },
139
+ files: { type: 'array', items: { type: 'string' }, description: 'Relevant file paths' }
140
+ },
141
+ required: ['goal'],
142
+ },
143
+ },
144
+ {
145
+ name: 'nexus_spawn_workers',
146
+ description: 'Spawn parallel Phantom Workers when modifying 3+ interrelated files OR when Ghost Pass recommends parallel exploration. Each worker gets an isolated git worktree to independently analyze the goal. Workers sync via POD Network. Returns a synthesized merge decision with confidence score and recommended approach.',
147
+ inputSchema: {
148
+ type: 'object',
149
+ properties: {
150
+ goal: { type: 'string', description: 'The overall goal for the swarm' },
151
+ files: { type: 'array', items: { type: 'string' }, description: 'Files relevant to the task' }
152
+ },
153
+ required: ['goal', 'files'],
154
+ },
155
+ },
156
+ {
157
+ name: 'nexus_audit_evolution',
158
+ description: 'Identify recurring failure patterns, file hotspots, and code areas needing refactoring. Call at sprint boundaries, after major bug fixes, or when the same files keep breaking. Returns prioritized recommendations.',
159
+ inputSchema: {
160
+ type: 'object',
161
+ properties: {},
162
+ },
163
+ },
164
+ ],
165
+ }));
166
+ this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
167
+ if (!this.nexusRef) {
168
+ throw new McpError(ErrorCode.InternalError, 'NexusPrime reference not set in MCP adapter.');
169
+ }
170
+ this.telemetry.recordCall();
171
+ const result = await this.handleToolCall(request);
172
+ // Inject telemetry footer into every response
173
+ const memStats = this.nexusRef.memory.getStats();
174
+ const footer = this.telemetry.format(memStats);
175
+ if (result.content && Array.isArray(result.content) && result.content.length > 0) {
176
+ const last = result.content[result.content.length - 1];
177
+ if (last && typeof last === 'object' && 'text' in last) {
178
+ last.text += footer;
179
+ }
180
+ }
181
+ return result;
182
+ });
183
+ }
184
+ async handleToolCall(request) {
185
+ if (!this.nexusRef) {
186
+ throw new McpError(ErrorCode.InternalError, 'NexusPrime reference not set.');
187
+ }
188
+ switch (request.params.name) {
189
+ case 'nexus_store_memory': {
190
+ const content = String(request.params.arguments?.content ?? '');
191
+ const priority = Number(request.params.arguments?.priority ?? 0.7);
192
+ const tags = Array.isArray(request.params.arguments?.tags)
193
+ ? request.params.arguments.tags.map(String)
194
+ : [];
195
+ const id = this.nexusRef.storeMemory(content, priority, tags);
196
+ this.telemetry.recordStore();
197
+ return {
198
+ content: [{
199
+ type: 'text',
200
+ text: `✅ Stored in Nexus memory (id: ${id}, priority: ${priority})\nTags: ${tags.join(', ') || 'none'}`,
201
+ }],
202
+ };
203
+ }
204
+ case 'nexus_recall_memory': {
205
+ const query = String(request.params.arguments?.query ?? '');
206
+ const k = Number(request.params.arguments?.k ?? 5);
207
+ const memories = await this.nexusRef.recallMemory(query, k);
208
+ this.telemetry.recordRecall(memories.length);
209
+ return {
210
+ content: [{
211
+ type: 'text',
212
+ text: memories.length > 0
213
+ ? `🧠 ${memories.length} memories recalled for "${query}":\n\n${memories.map((m, i) => `${i + 1}. ${m}`).join('\n\n')}`
214
+ : `No memories found for "${query}". Fresh session or new topic.`,
215
+ }],
216
+ };
217
+ }
218
+ case 'nexus_memory_stats': {
219
+ const stats = this.nexusRef.getMemoryStats();
220
+ return {
221
+ content: [{
222
+ type: 'text',
223
+ text: [
224
+ '🧠 Nexus Prime Memory',
225
+ ` Prefrontal (working): ${stats.prefrontal} items`,
226
+ ` Hippocampus (recent): ${stats.hippocampus} items`,
227
+ ` Cortex (long-term): ${stats.cortex} items`,
228
+ ` Zettelkasten links: ${stats.totalLinks}`,
229
+ ` Top tags: ${stats.topTags.join(', ') || 'none yet'}`,
230
+ stats.oldestEntry
231
+ ? ` Oldest entry: ${new Date(stats.oldestEntry).toLocaleDateString()}`
232
+ : ' No memories yet.'
233
+ ].join('\n'),
234
+ }],
235
+ };
236
+ }
237
+ case 'nexus_optimize_tokens': {
238
+ const task = String(request.params.arguments?.task ?? '');
239
+ const rawFiles = Array.isArray(request.params.arguments?.files)
240
+ ? request.params.arguments.files.map(String)
241
+ : null;
242
+ const filePaths = rawFiles ?? this.scanSourceFiles(PROJECT_ROOT);
243
+ const files = filePaths.map(p => {
244
+ // Resolve relative paths to absolute using project root
245
+ const resolved = path.isAbsolute(p) ? p : path.join(PROJECT_ROOT, p);
246
+ try {
247
+ const stat = statSync(resolved);
248
+ return { path: resolved, sizeBytes: stat.size, lastModified: stat.mtimeMs };
249
+ }
250
+ catch {
251
+ return { path: resolved, sizeBytes: 0 };
252
+ }
253
+ });
254
+ const plan = tokenEngine.plan(task, files);
255
+ const formatted = formatReadingPlan(plan);
256
+ // Persist the decision
257
+ this.nexusRef.storeMemory(`Token plan for "${task.slice(0, 80)}": ` +
258
+ `${plan.files.filter(a => a.action === 'full').length} full reads, ` +
259
+ `saved ~${plan.savings.toLocaleString()} tokens.`, 0.5, ['#token-plan']);
260
+ this.telemetry.recordTokens(plan.savings);
261
+ return { content: [{ type: 'text', text: formatted }] };
262
+ }
263
+ case 'nexus_mindkit_check': {
264
+ const args = request.params.arguments ?? {};
265
+ const ctx = {
266
+ action: String(args?.action ?? ''),
267
+ tokenCount: args?.tokenCount,
268
+ filesToModify: args?.filesToModify,
269
+ isDestructive: args?.isDestructive,
270
+ };
271
+ const result = guardrailEngine.check(ctx);
272
+ // Store violations in Nexus memory
273
+ if (result.violations.length > 0) {
274
+ this.nexusRef.storeMemory(`[GUARDRAIL BLOCK] ${ctx.action.slice(0, 80)} — ${result.violations.map(v => v.id).join(', ')}`, 0.7, ['#guardrail', '#mindkit']);
275
+ }
276
+ return {
277
+ content: [{
278
+ type: 'text', text: JSON.stringify({
279
+ passed: result.passed,
280
+ score: Math.round(result.score * 100),
281
+ violations: result.violations,
282
+ warnings: result.warnings,
283
+ summary: guardrailEngine.format(result)
284
+ }, null, 2)
285
+ }]
286
+ };
287
+ }
288
+ case 'nexus_ghost_pass': {
289
+ const goal = String(request.params.arguments?.goal ?? '');
290
+ const rawFiles = Array.isArray(request.params.arguments?.files)
291
+ ? request.params.arguments.files.map(String)
292
+ : [];
293
+ const files = rawFiles.map(p => {
294
+ try {
295
+ const stat = statSync(p);
296
+ return { path: p, sizeBytes: stat.size, lastModified: stat.mtimeMs };
297
+ }
298
+ catch {
299
+ return { path: p, sizeBytes: 0 };
300
+ }
301
+ });
302
+ const ghost = new GhostPass(process.cwd());
303
+ const report = await ghost.analyze(goal, files);
304
+ const text = [
305
+ `👻 Ghost Pass — "${goal}"`,
306
+ `Task ID: ${report.taskId}`,
307
+ `Est. tokens: ${report.totalEstimatedTokens.toLocaleString()}`,
308
+ '',
309
+ `⚠️ Risks: ${report.riskAreas.length > 0 ? report.riskAreas.join(' | ') : 'none detected'}`,
310
+ '',
311
+ formatReadingPlan(report.readingPlan),
312
+ '',
313
+ `🔀 Worker Approaches:`,
314
+ ...report.workerAssignments.map((w, i) => ` ${i + 1}. "${w.approach}" — budget: ${w.tokenBudget.toLocaleString()} tokens`),
315
+ ].join('\n');
316
+ this.nexusRef.storeMemory(`Ghost pass for "${goal.slice(0, 80)}": ${report.riskAreas.length} risks identified.`, 0.6, ['#ghost-pass']);
317
+ return { content: [{ type: 'text', text }] };
318
+ }
319
+ case 'nexus_spawn_workers': {
320
+ const goal = String(request.params.arguments?.goal ?? '');
321
+ const rawFiles = Array.isArray(request.params.arguments?.files)
322
+ ? request.params.arguments.files.map(String)
323
+ : [];
324
+ const files = rawFiles.map(p => {
325
+ try {
326
+ const stat = statSync(p);
327
+ return { path: p, sizeBytes: stat.size, lastModified: stat.mtimeMs };
328
+ }
329
+ catch {
330
+ return { path: p, sizeBytes: 0 };
331
+ }
332
+ });
333
+ const ghost = new GhostPass(process.cwd());
334
+ const report = await ghost.analyze(goal, files);
335
+ // Multi-process dispatch with worktree-isolated execution
336
+ const workerPromises = report.workerAssignments.map(async (assign) => {
337
+ const worker = new PhantomWorker(process.cwd());
338
+ return worker.spawn(assign, async (worktreeDir, task, w) => {
339
+ const learnings = [];
340
+ // Read relevant files in the worktree to build context
341
+ for (const file of task.files.slice(0, 5)) {
342
+ try {
343
+ const fullPath = path.join(worktreeDir, file.path);
344
+ const content = readFileSync(fullPath, 'utf-8').slice(0, 500);
345
+ learnings.push(`[${task.approach}] Read ${file.path}: ${content.length} chars`);
346
+ }
347
+ catch {
348
+ learnings.push(`[${task.approach}] Could not read ${file.path}`);
349
+ }
350
+ }
351
+ // Broadcast discovery to POD network for cross-worker learning
352
+ w.broadcast(`Worker ${w.id} (${task.approach}): analyzed ${task.files.length} files`, 0.7, ['#phantom-swarm', `#approach-${task.approach}`]);
353
+ // Check what other workers found
354
+ const peerFindings = w.receive(['#phantom-swarm']);
355
+ if (peerFindings.length > 0) {
356
+ learnings.push(`Received ${peerFindings.length} findings from peer workers`);
357
+ }
358
+ return {
359
+ learnings,
360
+ confidence: learnings.length > 0 ? 0.75 : 0.5,
361
+ };
362
+ });
363
+ });
364
+ const results = await Promise.all(workerPromises);
365
+ // Synthesis
366
+ const oracle = new MergeOracle(this.nexusRef.memory);
367
+ const decision = await oracle.merge(results);
368
+ this.nexusRef.storeMemory(`Phantom Swarm executed: ${results.length} workers, action=${decision.action}, confidence=${decision.confidence.toFixed(2)}`, 0.8, ['#phantom-swarm', '#decision']);
369
+ // NEW: Agent Learning Loop
370
+ await this.nexusRef.analyzeLearning(goal, decision);
371
+ return {
372
+ content: [{
373
+ type: 'text',
374
+ text: [
375
+ `🐝 Phantom Swarm Complete — ${results.length} workers synchronized.`,
376
+ '',
377
+ `🎯 Goal: ${goal}`,
378
+ '',
379
+ `🧩 Synthesized Decision:`,
380
+ decision.synthesized || 'No changes made.',
381
+ '',
382
+ `📝 Conflicts: ${decision.conflicts.length > 0 ? decision.conflicts.join(', ') : 'None'}`,
383
+ `📈 Strategy: ${decision.recommendedStrategy}`
384
+ ].join('\n')
385
+ }]
386
+ };
387
+ }
388
+ case 'nexus_audit_evolution': {
389
+ const { candidates, hotspots, recommendations } = await this.nexusRef.auditEvolution();
390
+ const lines = ['🧬 Evolution Audit Report', ''];
391
+ // Recommendations first (most actionable)
392
+ if (recommendations.length > 0) {
393
+ lines.push('## Recommendations');
394
+ for (const rec of recommendations)
395
+ lines.push(` ${rec}`);
396
+ lines.push('');
397
+ }
398
+ // Hotspots
399
+ if (hotspots.size > 0) {
400
+ lines.push('## File Hotspots (conflict frequency)');
401
+ for (const [file, count] of [...hotspots.entries()].sort((a, b) => b[1] - a[1])) {
402
+ lines.push(` ${count}x ${file}`);
403
+ }
404
+ lines.push('');
405
+ }
406
+ // Raw candidates count
407
+ lines.push(`📊 ${candidates.length} evolution candidate(s) in memory.`);
408
+ return {
409
+ content: [{ type: 'text', text: lines.join('\n') }]
410
+ };
411
+ }
412
+ default:
413
+ throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${request.params.name}`);
414
+ }
415
+ }
416
+ scanSourceFiles(cwd) {
417
+ const srcDir = path.join(cwd, 'src');
418
+ try {
419
+ const walk = (dir) => readdirSync(dir, { withFileTypes: true }).flatMap(entry => {
420
+ const full = path.join(dir, entry.name);
421
+ if (entry.isDirectory() && !entry.name.startsWith('.'))
422
+ return walk(full);
423
+ if (entry.isFile() && /\.[jt]s$/.test(entry.name))
424
+ return [full];
425
+ return [];
426
+ });
427
+ return walk(srcDir).slice(0, 30);
428
+ }
429
+ catch {
430
+ return [];
431
+ }
432
+ }
433
+ async connect() {
434
+ const transport = new StdioServerTransport();
435
+ await this.server.connect(transport);
436
+ this.connected = true;
437
+ console.error('[MCP Adapter] Connected — 8 tools active');
438
+ }
439
+ async disconnect() {
440
+ await this.server.close();
441
+ this.connected = false;
442
+ console.error('[MCP Adapter] Disconnected');
443
+ }
444
+ async send(_message) { }
445
+ receive(_message) { }
446
+ }
447
+ //# sourceMappingURL=mcp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/agents/adapters/mcp.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Adapters for different agent platforms
3
+ */
4
+ import { Adapter, NetworkMessage } from './core/types';
5
+ export { Adapter } from './core/types';
6
+ export declare class OpenClawAdapter implements Adapter {
7
+ name: string;
8
+ type: "openclaw";
9
+ connected: boolean;
10
+ agents: string[];
11
+ connect(): Promise<void>;
12
+ disconnect(): Promise<void>;
13
+ send(message: NetworkMessage): Promise<void>;
14
+ receive(message: NetworkMessage): void;
15
+ spawnAgent(type: string, config?: unknown): Promise<string>;
16
+ }
17
+ export declare class ClaudeCodeAdapter implements Adapter {
18
+ name: string;
19
+ type: "claude-code";
20
+ connected: boolean;
21
+ agents: string[];
22
+ connect(): Promise<void>;
23
+ disconnect(): Promise<void>;
24
+ send(message: NetworkMessage): Promise<void>;
25
+ receive(message: NetworkMessage): void;
26
+ spawnAgent(type: string, config?: unknown): Promise<string>;
27
+ }
28
+ export declare class RufloAdapter implements Adapter {
29
+ name: string;
30
+ type: "ruflo";
31
+ connected: boolean;
32
+ agents: string[];
33
+ connect(): Promise<void>;
34
+ disconnect(): Promise<void>;
35
+ send(message: NetworkMessage): Promise<void>;
36
+ receive(message: NetworkMessage): void;
37
+ spawnAgent(type: string, config?: unknown): Promise<string>;
38
+ }
39
+ export declare class CustomAdapter implements Adapter {
40
+ name: string;
41
+ type: "custom";
42
+ connected: boolean;
43
+ agents: string[];
44
+ private sendHandler?;
45
+ private receiveHandler?;
46
+ constructor(name: string);
47
+ connect(): Promise<void>;
48
+ disconnect(): Promise<void>;
49
+ send(message: NetworkMessage): Promise<void>;
50
+ receive(message: NetworkMessage): void;
51
+ setSendHandler(handler: (message: NetworkMessage) => Promise<void>): void;
52
+ setReceiveHandler(handler: (message: NetworkMessage) => void): void;
53
+ spawnAgent(type: string, config?: unknown): Promise<string>;
54
+ }
55
+ export type AdapterType = 'openclaw' | 'claude-code' | 'ruflo' | 'langchain' | 'autogen' | 'custom' | 'mcp';
56
+ export declare function createAdapter(type: AdapterType, customName?: string): Adapter;
57
+ //# sourceMappingURL=adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/agents/adapters.ts"],"names":[],"mappings":"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"}