@theihtisham/agent-shadow-brain 1.2.0 → 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 +837 -73
- package/dist/adapters/aider.d.ts +11 -0
- package/dist/adapters/aider.d.ts.map +1 -0
- package/dist/adapters/aider.js +149 -0
- package/dist/adapters/aider.js.map +1 -0
- package/dist/adapters/index.d.ts +3 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +5 -3
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/roo-code.d.ts +14 -0
- package/dist/adapters/roo-code.d.ts.map +1 -0
- package/dist/adapters/roo-code.js +186 -0
- package/dist/adapters/roo-code.js.map +1 -0
- package/dist/brain/adr-engine.d.ts +58 -0
- package/dist/brain/adr-engine.d.ts.map +1 -0
- package/dist/brain/adr-engine.js +400 -0
- package/dist/brain/adr-engine.js.map +1 -0
- package/dist/brain/code-similarity.d.ts +43 -0
- package/dist/brain/code-similarity.d.ts.map +1 -0
- package/dist/brain/code-similarity.js +227 -0
- package/dist/brain/code-similarity.js.map +1 -0
- package/dist/brain/context-completion.d.ts +39 -0
- package/dist/brain/context-completion.d.ts.map +1 -0
- package/dist/brain/context-completion.js +851 -0
- package/dist/brain/context-completion.js.map +1 -0
- package/dist/brain/dependency-graph.d.ts +35 -0
- package/dist/brain/dependency-graph.d.ts.map +1 -0
- package/dist/brain/dependency-graph.js +310 -0
- package/dist/brain/dependency-graph.js.map +1 -0
- package/dist/brain/learning-engine.d.ts +54 -0
- package/dist/brain/learning-engine.d.ts.map +1 -0
- package/dist/brain/learning-engine.js +855 -0
- package/dist/brain/learning-engine.js.map +1 -0
- package/dist/brain/mcp-server.d.ts +30 -0
- package/dist/brain/mcp-server.d.ts.map +1 -0
- package/dist/brain/mcp-server.js +408 -0
- package/dist/brain/mcp-server.js.map +1 -0
- package/dist/brain/multi-project.d.ts +13 -0
- package/dist/brain/multi-project.d.ts.map +1 -0
- package/dist/brain/multi-project.js +163 -0
- package/dist/brain/multi-project.js.map +1 -0
- package/dist/brain/neural-mesh.d.ts +69 -0
- package/dist/brain/neural-mesh.d.ts.map +1 -0
- package/dist/brain/neural-mesh.js +677 -0
- package/dist/brain/neural-mesh.js.map +1 -0
- package/dist/brain/orchestrator.d.ts +111 -1
- package/dist/brain/orchestrator.d.ts.map +1 -1
- package/dist/brain/orchestrator.js +302 -0
- package/dist/brain/orchestrator.js.map +1 -1
- package/dist/brain/perf-profiler.d.ts +14 -0
- package/dist/brain/perf-profiler.d.ts.map +1 -0
- package/dist/brain/perf-profiler.js +289 -0
- package/dist/brain/perf-profiler.js.map +1 -0
- package/dist/brain/semantic-analyzer.d.ts +46 -0
- package/dist/brain/semantic-analyzer.d.ts.map +1 -0
- package/dist/brain/semantic-analyzer.js +496 -0
- package/dist/brain/semantic-analyzer.js.map +1 -0
- package/dist/brain/team-mode.d.ts +27 -0
- package/dist/brain/team-mode.d.ts.map +1 -0
- package/dist/brain/team-mode.js +262 -0
- package/dist/brain/team-mode.js.map +1 -0
- package/dist/brain/type-safety.d.ts +13 -0
- package/dist/brain/type-safety.d.ts.map +1 -0
- package/dist/brain/type-safety.js +217 -0
- package/dist/brain/type-safety.js.map +1 -0
- package/dist/cli.js +593 -3
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +228 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"neural-mesh.js","sourceRoot":"","sources":["../../src/brain/neural-mesh.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,9 @@ import { EventEmitter } from 'events';
|
|
|
2
2
|
import { HealthScore } from './health-score.js';
|
|
3
3
|
import { FixSuggestion } from './smart-fix.js';
|
|
4
4
|
import { UpdateCheck } from './auto-update.js';
|
|
5
|
-
import {
|
|
5
|
+
import { MultiProjectManager } from './multi-project.js';
|
|
6
|
+
import { NeuralMesh } from './neural-mesh.js';
|
|
7
|
+
import { BrainConfig, BrainInsight, BrainSession, FileChange, CodeMetrics, VulnResult, CustomRule, ProjectConfig, PRDescription, CommitMessage, SymbolInfo, DependencyGraphResult, DuplicateGroup, ADRDecision, PerfInsight, ProjectKnowledge, TeamInsight, TeamStats, AggregatedHealth, MCPServerOptions, CrossSessionInsight, MeshState } from '../types.js';
|
|
6
8
|
export declare class Orchestrator extends EventEmitter {
|
|
7
9
|
private config;
|
|
8
10
|
private llmClient;
|
|
@@ -21,6 +23,18 @@ export declare class Orchestrator extends EventEmitter {
|
|
|
21
23
|
private metricsEngine;
|
|
22
24
|
private projectConfigLoader;
|
|
23
25
|
private vulnScanner;
|
|
26
|
+
private semanticAnalyzer;
|
|
27
|
+
private depGraphBuilder;
|
|
28
|
+
private codeSimilarity;
|
|
29
|
+
private adrEngine;
|
|
30
|
+
private typeSafety;
|
|
31
|
+
private perfProfiler;
|
|
32
|
+
private contextCompletion;
|
|
33
|
+
private learningEngine;
|
|
34
|
+
private mcpServer;
|
|
35
|
+
private teamMode;
|
|
36
|
+
private multiProject;
|
|
37
|
+
private neuralMesh;
|
|
24
38
|
private running;
|
|
25
39
|
private analyzing;
|
|
26
40
|
private pendingChanges;
|
|
@@ -32,6 +46,12 @@ export declare class Orchestrator extends EventEmitter {
|
|
|
32
46
|
private lastMetrics;
|
|
33
47
|
private lastVulns;
|
|
34
48
|
private updateCheck;
|
|
49
|
+
private lastSymbols;
|
|
50
|
+
private lastDepGraph;
|
|
51
|
+
private lastDuplicates;
|
|
52
|
+
private lastADRs;
|
|
53
|
+
private lastPerfInsights;
|
|
54
|
+
private lastKnowledge;
|
|
35
55
|
constructor(config: BrainConfig);
|
|
36
56
|
start(): Promise<void>;
|
|
37
57
|
stop(): Promise<void>;
|
|
@@ -76,8 +96,89 @@ export declare class Orchestrator extends EventEmitter {
|
|
|
76
96
|
}[]>;
|
|
77
97
|
getProjectConfig(): ProjectConfig;
|
|
78
98
|
saveProjectConfig(config: ProjectConfig): void;
|
|
99
|
+
/** Semantic analysis — extract symbols, find unused exports, dead code */
|
|
100
|
+
getSemanticInsights(maxFiles?: number): Promise<{
|
|
101
|
+
symbols: Map<string, SymbolInfo[]>;
|
|
102
|
+
unusedExports: SymbolInfo[];
|
|
103
|
+
deadCode: SymbolInfo[];
|
|
104
|
+
}>;
|
|
105
|
+
/** Dependency graph — imports, cycles, orphans, hubs */
|
|
106
|
+
getDependencyGraph(): Promise<DependencyGraphResult>;
|
|
107
|
+
/** Get dependency analysis details */
|
|
108
|
+
getDependencyDetails(result: DependencyGraphResult): {
|
|
109
|
+
orphans: string[];
|
|
110
|
+
cycles: string[][];
|
|
111
|
+
hubs: Array<{
|
|
112
|
+
file: string;
|
|
113
|
+
dependents: number;
|
|
114
|
+
risk: string;
|
|
115
|
+
}>;
|
|
116
|
+
};
|
|
117
|
+
/** Detect duplicate/near-duplicate code blocks */
|
|
118
|
+
detectDuplicates(minSimilarity?: number): Promise<DuplicateGroup[]>;
|
|
119
|
+
/** Get Architecture Decision Records */
|
|
120
|
+
getADRs(): Promise<ADRDecision[]>;
|
|
121
|
+
/** Save a new ADR */
|
|
122
|
+
saveADR(adr: ADRDecision): Promise<void>;
|
|
123
|
+
/** Detect architectural decisions from file changes */
|
|
124
|
+
detectADRs(changes: Array<{
|
|
125
|
+
path: string;
|
|
126
|
+
diff?: string;
|
|
127
|
+
}>): Promise<ADRDecision[]>;
|
|
128
|
+
/** Type safety analysis for TypeScript projects */
|
|
129
|
+
analyzeTypeSafety(maxFiles?: number): Promise<BrainInsight[]>;
|
|
130
|
+
/** Performance profiling across project */
|
|
131
|
+
profilePerformance(maxFiles?: number): Promise<PerfInsight[]>;
|
|
132
|
+
/** Build and persist project knowledge */
|
|
133
|
+
buildKnowledge(): Promise<ProjectKnowledge>;
|
|
134
|
+
/** Get context gaps — missing documentation, configs, etc. */
|
|
135
|
+
getContextGaps(): Promise<BrainInsight[]>;
|
|
136
|
+
/** Run the learning engine to extract patterns and lessons */
|
|
137
|
+
runLearningCycle(): Promise<void>;
|
|
138
|
+
/** Get learned lessons */
|
|
139
|
+
getLearnedLessons(): Promise<Array<{
|
|
140
|
+
category: string;
|
|
141
|
+
pattern: string;
|
|
142
|
+
lesson: string;
|
|
143
|
+
confidence: number;
|
|
144
|
+
}>>;
|
|
145
|
+
/** Start the MCP server for tool integration */
|
|
146
|
+
startMCPServer(options?: MCPServerOptions): Promise<void>;
|
|
147
|
+
/** Stop the MCP server */
|
|
148
|
+
stopMCPServer(): Promise<void>;
|
|
149
|
+
/** Enable team mode with shared insights */
|
|
150
|
+
enableTeamMode(userName?: string): void;
|
|
151
|
+
/** Share an insight with the team */
|
|
152
|
+
shareTeamInsight(insight: BrainInsight): Promise<TeamInsight | null>;
|
|
153
|
+
/** Get team insights */
|
|
154
|
+
getTeamInsights(limit?: number): Promise<TeamInsight[]>;
|
|
155
|
+
/** Get team stats */
|
|
156
|
+
getTeamStats(): Promise<TeamStats | null>;
|
|
157
|
+
/** Get the multi-project manager */
|
|
158
|
+
getMultiProjectManager(): MultiProjectManager;
|
|
159
|
+
/** Get aggregated health across all registered projects */
|
|
160
|
+
getAggregatedHealth(): Promise<AggregatedHealth>;
|
|
161
|
+
/** Scan a parent directory for all git repos */
|
|
162
|
+
scanForProjects(parentDir: string): Promise<string[]>;
|
|
163
|
+
/** Enable the neural mesh for cross-session intelligence sharing */
|
|
164
|
+
enableNeuralMesh(): Promise<NeuralMesh>;
|
|
165
|
+
/** Disable the neural mesh */
|
|
166
|
+
disableNeuralMesh(): Promise<void>;
|
|
167
|
+
/** Get the neural mesh instance (null if not enabled) */
|
|
168
|
+
getNeuralMesh(): NeuralMesh | null;
|
|
169
|
+
/** Get cross-session insights from other Shadow Brain instances */
|
|
170
|
+
getCrossSessionInsights(limit?: number): CrossSessionInsight[];
|
|
171
|
+
/** Get the current mesh state */
|
|
172
|
+
getMeshState(): MeshState | null;
|
|
173
|
+
/** Get shared knowledge from all connected nodes */
|
|
174
|
+
getSharedKnowledge(limit?: number): import('../types.js').MeshKnowledge[];
|
|
175
|
+
/** Get aggregated insights across all mesh projects */
|
|
176
|
+
getAggregatedInsights(): ReturnType<NeuralMesh['getAggregatedInsights']> | null;
|
|
177
|
+
/** Get all connected mesh nodes */
|
|
178
|
+
getConnectedNodes(): import('../types.js').MeshNode[];
|
|
79
179
|
getStatus(): {
|
|
80
180
|
running: boolean;
|
|
181
|
+
version: string;
|
|
81
182
|
agents: string[];
|
|
82
183
|
insightsGenerated: number;
|
|
83
184
|
filesReviewed: number;
|
|
@@ -94,6 +195,15 @@ export declare class Orchestrator extends EventEmitter {
|
|
|
94
195
|
customRuleCount: number;
|
|
95
196
|
updateAvailable: boolean;
|
|
96
197
|
latestVersion: string | null;
|
|
198
|
+
duplicateCount: number;
|
|
199
|
+
adrCount: number;
|
|
200
|
+
perfInsightCount: number;
|
|
201
|
+
mcpServerRunning: boolean;
|
|
202
|
+
teamModeEnabled: boolean;
|
|
203
|
+
symbolCount: number;
|
|
204
|
+
neuralMeshEnabled: boolean;
|
|
205
|
+
meshNodeId: string | null;
|
|
206
|
+
meshNodeCount: number;
|
|
97
207
|
};
|
|
98
208
|
private setupWatchers;
|
|
99
209
|
private scheduleAnalysis;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/brain/orchestrator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/brain/orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
// src/brain/orchestrator.ts — Central brain loop: watchers → analyzer → adapters
|
|
2
|
+
// v2.0.0 — Super-Intelligence Edition
|
|
2
3
|
import { EventEmitter } from 'events';
|
|
3
4
|
import * as crypto from 'crypto';
|
|
4
5
|
import { LLMClient } from './llm-client.js';
|
|
@@ -16,6 +17,18 @@ import { CodeMetricsEngine } from './code-metrics.js';
|
|
|
16
17
|
import { ProjectConfigLoader } from './project-config.js';
|
|
17
18
|
import { VulnScanner } from './vuln-scanner.js';
|
|
18
19
|
import { checkForUpdate, formatUpdateNotice } from './auto-update.js';
|
|
20
|
+
import { SemanticAnalyzer } from './semantic-analyzer.js';
|
|
21
|
+
import { DependencyGraphBuilder } from './dependency-graph.js';
|
|
22
|
+
import { CodeSimilarityDetector } from './code-similarity.js';
|
|
23
|
+
import { ADREngine } from './adr-engine.js';
|
|
24
|
+
import { TypeSafetyAnalyzer } from './type-safety.js';
|
|
25
|
+
import { PerformanceProfiler } from './perf-profiler.js';
|
|
26
|
+
import { ContextCompletionEngine } from './context-completion.js';
|
|
27
|
+
import { LearningEngine } from './learning-engine.js';
|
|
28
|
+
import { MCPServer } from './mcp-server.js';
|
|
29
|
+
import { TeamMode } from './team-mode.js';
|
|
30
|
+
import { MultiProjectManager } from './multi-project.js';
|
|
31
|
+
import { NeuralMesh } from './neural-mesh.js';
|
|
19
32
|
import { FileWatcher } from '../watchers/file-watcher.js';
|
|
20
33
|
import { GitWatcher } from '../watchers/git-watcher.js';
|
|
21
34
|
import { createAdapter, detectRunningAgents } from '../adapters/index.js';
|
|
@@ -24,6 +37,11 @@ export class Orchestrator extends EventEmitter {
|
|
|
24
37
|
super();
|
|
25
38
|
this.adapters = [];
|
|
26
39
|
this.notifier = null;
|
|
40
|
+
this.mcpServer = null;
|
|
41
|
+
this.teamMode = null;
|
|
42
|
+
this.multiProject = null;
|
|
43
|
+
// v2.1.0 Quantum Neural Mesh
|
|
44
|
+
this.neuralMesh = null;
|
|
27
45
|
this.running = false;
|
|
28
46
|
this.analyzing = false;
|
|
29
47
|
this.pendingChanges = [];
|
|
@@ -35,6 +53,12 @@ export class Orchestrator extends EventEmitter {
|
|
|
35
53
|
this.lastMetrics = null;
|
|
36
54
|
this.lastVulns = [];
|
|
37
55
|
this.updateCheck = null;
|
|
56
|
+
this.lastSymbols = null;
|
|
57
|
+
this.lastDepGraph = null;
|
|
58
|
+
this.lastDuplicates = [];
|
|
59
|
+
this.lastADRs = [];
|
|
60
|
+
this.lastPerfInsights = [];
|
|
61
|
+
this.lastKnowledge = null;
|
|
38
62
|
this.config = config;
|
|
39
63
|
this.llmClient = new LLMClient({
|
|
40
64
|
provider: config.provider,
|
|
@@ -54,6 +78,15 @@ export class Orchestrator extends EventEmitter {
|
|
|
54
78
|
this.vulnScanner = new VulnScanner(config.projectDir);
|
|
55
79
|
this.fileWatcher = new FileWatcher(config.projectDir);
|
|
56
80
|
this.gitWatcher = new GitWatcher(config.projectDir);
|
|
81
|
+
// v2.0.0 Super-Intelligence Modules
|
|
82
|
+
this.semanticAnalyzer = new SemanticAnalyzer(config.projectDir);
|
|
83
|
+
this.depGraphBuilder = new DependencyGraphBuilder(config.projectDir);
|
|
84
|
+
this.codeSimilarity = new CodeSimilarityDetector(config.projectDir);
|
|
85
|
+
this.adrEngine = new ADREngine(config.projectDir, this.llmClient);
|
|
86
|
+
this.typeSafety = new TypeSafetyAnalyzer(config.projectDir);
|
|
87
|
+
this.perfProfiler = new PerformanceProfiler(config.projectDir);
|
|
88
|
+
this.contextCompletion = new ContextCompletionEngine(config.projectDir);
|
|
89
|
+
this.learningEngine = new LearningEngine(config.projectDir, this.llmClient);
|
|
57
90
|
// Load project config and setup notifier if configured
|
|
58
91
|
const projectConfig = this.projectConfigLoader.load();
|
|
59
92
|
if (projectConfig.notifications) {
|
|
@@ -139,6 +172,9 @@ export class Orchestrator extends EventEmitter {
|
|
|
139
172
|
catch { /* ignore */ }
|
|
140
173
|
await this.patternMemory.save();
|
|
141
174
|
await this.healthEngine.save();
|
|
175
|
+
if (this.neuralMesh) {
|
|
176
|
+
await this.neuralMesh.disconnect().catch(() => { });
|
|
177
|
+
}
|
|
142
178
|
this.emit('stopped');
|
|
143
179
|
}
|
|
144
180
|
async reviewOnce() {
|
|
@@ -219,6 +255,15 @@ export class Orchestrator extends EventEmitter {
|
|
|
219
255
|
this.currentSession.filesReviewed += changes.length;
|
|
220
256
|
}
|
|
221
257
|
this.emit('insights', { insights });
|
|
258
|
+
// ── v2.1.0: Neural Mesh Broadcasting (one-shot) ──────────────────
|
|
259
|
+
if (this.neuralMesh && this.neuralMesh.isRunning()) {
|
|
260
|
+
for (const insight of insights.filter(i => i.priority === 'critical' || i.priority === 'high')) {
|
|
261
|
+
this.neuralMesh.broadcastInsight(insight);
|
|
262
|
+
}
|
|
263
|
+
if (healthScore.overall !== undefined) {
|
|
264
|
+
this.neuralMesh.broadcastHealth(healthScore.overall);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
222
267
|
return insights;
|
|
223
268
|
}
|
|
224
269
|
/** Generate a full report (HTML/markdown/JSON) */
|
|
@@ -333,9 +378,192 @@ export class Orchestrator extends EventEmitter {
|
|
|
333
378
|
saveProjectConfig(config) {
|
|
334
379
|
this.projectConfigLoader.save(config);
|
|
335
380
|
}
|
|
381
|
+
// ── v2.0.0: Super-Intelligence Methods ────────────────────────────────
|
|
382
|
+
/** Semantic analysis — extract symbols, find unused exports, dead code */
|
|
383
|
+
async getSemanticInsights(maxFiles) {
|
|
384
|
+
const result = await this.semanticAnalyzer.analyzeProject();
|
|
385
|
+
this.lastSymbols = result.symbols;
|
|
386
|
+
return result;
|
|
387
|
+
}
|
|
388
|
+
/** Dependency graph — imports, cycles, orphans, hubs */
|
|
389
|
+
async getDependencyGraph() {
|
|
390
|
+
const result = await this.depGraphBuilder.build();
|
|
391
|
+
this.lastDepGraph = result;
|
|
392
|
+
return result;
|
|
393
|
+
}
|
|
394
|
+
/** Get dependency analysis details */
|
|
395
|
+
getDependencyDetails(result) {
|
|
396
|
+
const details = this.depGraphBuilder.getDependencyDetails(result);
|
|
397
|
+
return {
|
|
398
|
+
orphans: details.orphans,
|
|
399
|
+
cycles: details.cycles,
|
|
400
|
+
hubs: details.hubs,
|
|
401
|
+
};
|
|
402
|
+
}
|
|
403
|
+
/** Detect duplicate/near-duplicate code blocks */
|
|
404
|
+
async detectDuplicates(minSimilarity) {
|
|
405
|
+
this.lastDuplicates = await this.codeSimilarity.detectDuplicates(minSimilarity);
|
|
406
|
+
return this.lastDuplicates;
|
|
407
|
+
}
|
|
408
|
+
/** Get Architecture Decision Records */
|
|
409
|
+
async getADRs() {
|
|
410
|
+
this.lastADRs = await this.adrEngine.loadADRs();
|
|
411
|
+
return this.lastADRs;
|
|
412
|
+
}
|
|
413
|
+
/** Save a new ADR */
|
|
414
|
+
async saveADR(adr) {
|
|
415
|
+
await this.adrEngine.saveADR(adr);
|
|
416
|
+
}
|
|
417
|
+
/** Detect architectural decisions from file changes */
|
|
418
|
+
async detectADRs(changes) {
|
|
419
|
+
return this.adrEngine.detectDecisions(changes);
|
|
420
|
+
}
|
|
421
|
+
/** Type safety analysis for TypeScript projects */
|
|
422
|
+
async analyzeTypeSafety(maxFiles) {
|
|
423
|
+
return this.typeSafety.analyzeProject(maxFiles);
|
|
424
|
+
}
|
|
425
|
+
/** Performance profiling across project */
|
|
426
|
+
async profilePerformance(maxFiles) {
|
|
427
|
+
this.lastPerfInsights = await this.perfProfiler.analyzeProject(maxFiles);
|
|
428
|
+
return this.lastPerfInsights;
|
|
429
|
+
}
|
|
430
|
+
/** Build and persist project knowledge */
|
|
431
|
+
async buildKnowledge() {
|
|
432
|
+
const knowledge = await this.contextCompletion.buildKnowledge();
|
|
433
|
+
this.lastKnowledge = knowledge;
|
|
434
|
+
await this.contextCompletion.saveKnowledge(knowledge);
|
|
435
|
+
return knowledge;
|
|
436
|
+
}
|
|
437
|
+
/** Get context gaps — missing documentation, configs, etc. */
|
|
438
|
+
async getContextGaps() {
|
|
439
|
+
const knowledge = await this.contextCompletion.buildKnowledge();
|
|
440
|
+
return this.contextCompletion.getContextGaps(knowledge);
|
|
441
|
+
}
|
|
442
|
+
/** Run the learning engine to extract patterns and lessons */
|
|
443
|
+
async runLearningCycle() {
|
|
444
|
+
await this.learningEngine.learnFromProject();
|
|
445
|
+
}
|
|
446
|
+
/** Get learned lessons */
|
|
447
|
+
async getLearnedLessons() {
|
|
448
|
+
return this.learningEngine.getLessons();
|
|
449
|
+
}
|
|
450
|
+
// ── v2.0.0: MCP Server ──────────────────────────────────────────────
|
|
451
|
+
/** Start the MCP server for tool integration */
|
|
452
|
+
async startMCPServer(options) {
|
|
453
|
+
this.mcpServer = new MCPServer(this, options);
|
|
454
|
+
await this.mcpServer.start();
|
|
455
|
+
this.emit('info', `MCP server started on port ${options?.port || 7342}`);
|
|
456
|
+
}
|
|
457
|
+
/** Stop the MCP server */
|
|
458
|
+
async stopMCPServer() {
|
|
459
|
+
if (this.mcpServer) {
|
|
460
|
+
await this.mcpServer.stop();
|
|
461
|
+
this.mcpServer = null;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
// ── v2.0.0: Team Mode ───────────────────────────────────────────────
|
|
465
|
+
/** Enable team mode with shared insights */
|
|
466
|
+
enableTeamMode(userName) {
|
|
467
|
+
this.teamMode = new TeamMode(this.config.projectDir, userName);
|
|
468
|
+
}
|
|
469
|
+
/** Share an insight with the team */
|
|
470
|
+
async shareTeamInsight(insight) {
|
|
471
|
+
if (!this.teamMode)
|
|
472
|
+
return null;
|
|
473
|
+
return this.teamMode.shareInsight(insight);
|
|
474
|
+
}
|
|
475
|
+
/** Get team insights */
|
|
476
|
+
async getTeamInsights(limit) {
|
|
477
|
+
if (!this.teamMode)
|
|
478
|
+
return [];
|
|
479
|
+
return this.teamMode.getTeamInsights(limit);
|
|
480
|
+
}
|
|
481
|
+
/** Get team stats */
|
|
482
|
+
async getTeamStats() {
|
|
483
|
+
if (!this.teamMode)
|
|
484
|
+
return null;
|
|
485
|
+
return this.teamMode.getStats();
|
|
486
|
+
}
|
|
487
|
+
// ── v2.0.0: Multi-Project ──────────────────────────────────────────
|
|
488
|
+
/** Get the multi-project manager */
|
|
489
|
+
getMultiProjectManager() {
|
|
490
|
+
if (!this.multiProject) {
|
|
491
|
+
this.multiProject = new MultiProjectManager();
|
|
492
|
+
}
|
|
493
|
+
return this.multiProject;
|
|
494
|
+
}
|
|
495
|
+
/** Get aggregated health across all registered projects */
|
|
496
|
+
async getAggregatedHealth() {
|
|
497
|
+
const mgr = this.getMultiProjectManager();
|
|
498
|
+
return mgr.getAggregatedHealth();
|
|
499
|
+
}
|
|
500
|
+
/** Scan a parent directory for all git repos */
|
|
501
|
+
async scanForProjects(parentDir) {
|
|
502
|
+
const mgr = this.getMultiProjectManager();
|
|
503
|
+
return mgr.scanDirectory(parentDir);
|
|
504
|
+
}
|
|
505
|
+
// ── v2.1.0: Quantum Neural Mesh ─────────────────────────────────────
|
|
506
|
+
/** Enable the neural mesh for cross-session intelligence sharing */
|
|
507
|
+
async enableNeuralMesh() {
|
|
508
|
+
if (this.neuralMesh)
|
|
509
|
+
return this.neuralMesh;
|
|
510
|
+
this.neuralMesh = new NeuralMesh(this.config.projectDir, this.config.brainPersonality);
|
|
511
|
+
// Wire mesh events into orchestrator
|
|
512
|
+
this.neuralMesh.on('node-discovered', (node) => {
|
|
513
|
+
this.emit('info', `[Mesh] Node discovered: ${node.projectName} (${node.personality})`);
|
|
514
|
+
});
|
|
515
|
+
this.neuralMesh.on('broadcast', (msg) => {
|
|
516
|
+
this.emit('info', `[Mesh] ${msg.type} from ${msg.fromNode.slice(0, 8)}`);
|
|
517
|
+
});
|
|
518
|
+
await this.neuralMesh.connect();
|
|
519
|
+
this.emit('info', `[Mesh] Connected as node ${this.neuralMesh.getNodeId().slice(0, 8)}`);
|
|
520
|
+
return this.neuralMesh;
|
|
521
|
+
}
|
|
522
|
+
/** Disable the neural mesh */
|
|
523
|
+
async disableNeuralMesh() {
|
|
524
|
+
if (this.neuralMesh) {
|
|
525
|
+
await this.neuralMesh.disconnect();
|
|
526
|
+
this.neuralMesh = null;
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
/** Get the neural mesh instance (null if not enabled) */
|
|
530
|
+
getNeuralMesh() {
|
|
531
|
+
return this.neuralMesh;
|
|
532
|
+
}
|
|
533
|
+
/** Get cross-session insights from other Shadow Brain instances */
|
|
534
|
+
getCrossSessionInsights(limit) {
|
|
535
|
+
if (!this.neuralMesh)
|
|
536
|
+
return [];
|
|
537
|
+
return this.neuralMesh.getCrossSessionInsights(limit);
|
|
538
|
+
}
|
|
539
|
+
/** Get the current mesh state */
|
|
540
|
+
getMeshState() {
|
|
541
|
+
if (!this.neuralMesh)
|
|
542
|
+
return null;
|
|
543
|
+
return this.neuralMesh.getMeshState();
|
|
544
|
+
}
|
|
545
|
+
/** Get shared knowledge from all connected nodes */
|
|
546
|
+
getSharedKnowledge(limit) {
|
|
547
|
+
if (!this.neuralMesh)
|
|
548
|
+
return [];
|
|
549
|
+
return this.neuralMesh.getSharedKnowledge(limit);
|
|
550
|
+
}
|
|
551
|
+
/** Get aggregated insights across all mesh projects */
|
|
552
|
+
getAggregatedInsights() {
|
|
553
|
+
if (!this.neuralMesh)
|
|
554
|
+
return null;
|
|
555
|
+
return this.neuralMesh.getAggregatedInsights();
|
|
556
|
+
}
|
|
557
|
+
/** Get all connected mesh nodes */
|
|
558
|
+
getConnectedNodes() {
|
|
559
|
+
if (!this.neuralMesh)
|
|
560
|
+
return [];
|
|
561
|
+
return this.neuralMesh.getConnectedNodes();
|
|
562
|
+
}
|
|
336
563
|
getStatus() {
|
|
337
564
|
return {
|
|
338
565
|
running: this.running,
|
|
566
|
+
version: '2.1.0',
|
|
339
567
|
agents: this.adapters.map(a => `${a.displayName} (${a.name})`),
|
|
340
568
|
insightsGenerated: this.currentSession?.insights.length || 0,
|
|
341
569
|
filesReviewed: this.currentSession?.filesReviewed || 0,
|
|
@@ -352,6 +580,17 @@ export class Orchestrator extends EventEmitter {
|
|
|
352
580
|
customRuleCount: this.customRulesEngine.getRules().length,
|
|
353
581
|
updateAvailable: this.updateCheck?.hasUpdate ?? false,
|
|
354
582
|
latestVersion: this.updateCheck?.latest ?? null,
|
|
583
|
+
// v2.0.0
|
|
584
|
+
duplicateCount: this.lastDuplicates.length,
|
|
585
|
+
adrCount: this.lastADRs.length,
|
|
586
|
+
perfInsightCount: this.lastPerfInsights.length,
|
|
587
|
+
mcpServerRunning: this.mcpServer !== null,
|
|
588
|
+
teamModeEnabled: this.teamMode !== null,
|
|
589
|
+
symbolCount: this.lastSymbols ? Array.from(this.lastSymbols.values()).reduce((sum, s) => sum + s.length, 0) : 0,
|
|
590
|
+
// v2.1.0
|
|
591
|
+
neuralMeshEnabled: this.neuralMesh !== null,
|
|
592
|
+
meshNodeId: this.neuralMesh?.getNodeId()?.slice(0, 8) ?? null,
|
|
593
|
+
meshNodeCount: this.neuralMesh?.getConnectedNodes()?.length ?? 0,
|
|
355
594
|
};
|
|
356
595
|
}
|
|
357
596
|
setupWatchers() {
|
|
@@ -444,6 +683,54 @@ export class Orchestrator extends EventEmitter {
|
|
|
444
683
|
for (const insight of insights) {
|
|
445
684
|
this.patternMemory.recordErrorPattern(insight);
|
|
446
685
|
}
|
|
686
|
+
// ── v2.0.0: Super-Intelligence Enhancements ────────────────────
|
|
687
|
+
// Type safety analysis on changed TypeScript files
|
|
688
|
+
const tsFiles = changes.filter(c => c.path.endsWith('.ts') || c.path.endsWith('.tsx'));
|
|
689
|
+
if (tsFiles.length > 0) {
|
|
690
|
+
try {
|
|
691
|
+
for (const f of tsFiles.slice(0, 10)) {
|
|
692
|
+
const typeInsights = this.typeSafety.analyzeFile(f.path);
|
|
693
|
+
insights.push(...typeInsights);
|
|
694
|
+
}
|
|
695
|
+
}
|
|
696
|
+
catch { /* skip type analysis failures */ }
|
|
697
|
+
}
|
|
698
|
+
// Performance profiling on changed files
|
|
699
|
+
try {
|
|
700
|
+
for (const change of changes.slice(0, 20)) {
|
|
701
|
+
if (change.content) {
|
|
702
|
+
const perfInsights = this.perfProfiler.analyzeFile(change.path, change.content);
|
|
703
|
+
for (const pi of perfInsights) {
|
|
704
|
+
insights.push({
|
|
705
|
+
type: 'suggestion',
|
|
706
|
+
priority: pi.severity,
|
|
707
|
+
title: `[Perf] ${pi.description}`,
|
|
708
|
+
content: `${pi.suggestion} (Impact: ${pi.estimatedImpact})`,
|
|
709
|
+
files: [change.path],
|
|
710
|
+
timestamp: new Date(),
|
|
711
|
+
});
|
|
712
|
+
}
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
catch { /* skip perf analysis failures */ }
|
|
717
|
+
// ADR detection on changes
|
|
718
|
+
try {
|
|
719
|
+
const newADRs = await this.adrEngine.detectDecisions(changes);
|
|
720
|
+
if (newADRs.length > 0) {
|
|
721
|
+
for (const adr of newADRs) {
|
|
722
|
+
await this.adrEngine.saveADR(adr);
|
|
723
|
+
}
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
catch { /* skip ADR detection failures */ }
|
|
727
|
+
// Learning engine — record insights as lessons
|
|
728
|
+
try {
|
|
729
|
+
for (const insight of insights.filter(i => i.priority === 'critical' || i.priority === 'high')) {
|
|
730
|
+
await this.learningEngine.recordInsight(insight).catch(() => { });
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
catch { /* skip learning failures */ }
|
|
447
734
|
for (const insight of insights) {
|
|
448
735
|
insight.timestamp = new Date();
|
|
449
736
|
}
|
|
@@ -469,6 +756,21 @@ export class Orchestrator extends EventEmitter {
|
|
|
469
756
|
}
|
|
470
757
|
}
|
|
471
758
|
this.emit('insights', { insights });
|
|
759
|
+
// ── v2.1.0: Neural Mesh Broadcasting ────────────────────────────
|
|
760
|
+
if (this.neuralMesh && this.neuralMesh.isRunning()) {
|
|
761
|
+
// Broadcast high-priority insights to mesh
|
|
762
|
+
for (const insight of insights.filter(i => i.priority === 'critical' || i.priority === 'high')) {
|
|
763
|
+
this.neuralMesh.broadcastInsight(insight);
|
|
764
|
+
}
|
|
765
|
+
// Broadcast health score
|
|
766
|
+
if (healthScore.overall !== undefined) {
|
|
767
|
+
this.neuralMesh.broadcastHealth(healthScore.overall);
|
|
768
|
+
}
|
|
769
|
+
// Broadcast patterns from learning engine
|
|
770
|
+
for (const insight of insights.filter(i => i.type === 'pattern')) {
|
|
771
|
+
this.neuralMesh.broadcastPattern(insight.title, insight.type);
|
|
772
|
+
}
|
|
773
|
+
}
|
|
472
774
|
}
|
|
473
775
|
catch (err) {
|
|
474
776
|
this.emit('error', { error: err });
|