smart-thinking-mcp
Version:
Un serveur MCP avancé pour le raisonnement multi-dimensionnel, adaptatif et collaboratif
74 lines • 3.16 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getSmartThinkingEnvironment = getSmartThinkingEnvironment;
const path_1 = __importDefault(require("path"));
const fs_1 = require("fs");
const feature_flags_1 = require("../feature-flags");
const memory_manager_1 = require("../memory-manager");
const metrics_calculator_1 = require("../metrics-calculator");
const quality_evaluator_1 = require("../quality-evaluator");
const reasoning_orchestrator_1 = require("../reasoning-orchestrator");
const similarity_engine_1 = require("../similarity-engine");
const tool_integrator_1 = require("../tool-integrator");
const verification_memory_1 = require("../verification-memory");
const service_container_1 = require("../services/service-container");
const visualizer_1 = require("../visualizer");
let sharedEnvironment = null;
function loadPackageVersion() {
try {
const packageJsonPath = path_1.default.join(__dirname, '..', '..', 'package.json');
const data = (0, fs_1.readFileSync)(packageJsonPath, 'utf8');
const parsed = JSON.parse(data);
return parsed.version ?? '0.0.0';
}
catch {
return '0.0.0';
}
}
function buildEnvironment() {
if (feature_flags_1.FeatureFlags.externalEmbeddingEnabled) {
console.warn('FeatureFlags.externalEmbeddingEnabled est activé mais aucun fournisseur externe n\'est disponible.');
}
const similarityEngine = new similarity_engine_1.SimilarityEngine();
const metricsCalculator = new metrics_calculator_1.MetricsCalculator();
const qualityEvaluator = new quality_evaluator_1.QualityEvaluator();
const toolIntegrator = new tool_integrator_1.ToolIntegrator();
const visualizer = new visualizer_1.Visualizer();
const memoryManager = new memory_manager_1.MemoryManager(similarityEngine);
const verificationMemory = verification_memory_1.VerificationMemory.getInstance();
verificationMemory.setSimilarityEngine(similarityEngine);
const serviceContainer = service_container_1.ServiceContainer.getInstance();
serviceContainer.initializeServices(toolIntegrator, metricsCalculator, similarityEngine);
const verificationService = serviceContainer.getVerificationService();
qualityEvaluator.setVerificationService(verificationService);
const orchestrator = new reasoning_orchestrator_1.ReasoningOrchestrator({
similarityEngine,
qualityEvaluator,
verificationService,
toolIntegrator,
metricsCalculator,
visualizer,
memoryManager
});
return {
similarityEngine,
metricsCalculator,
qualityEvaluator,
toolIntegrator,
visualizer,
memoryManager,
verificationMemory,
orchestrator,
version: loadPackageVersion()
};
}
function getSmartThinkingEnvironment() {
if (!sharedEnvironment) {
sharedEnvironment = buildEnvironment();
}
return sharedEnvironment;
}
//# sourceMappingURL=environment.js.map