@jmkim85/dev-flow-mcp
Version:
MCP-based Dev Flow - AI-powered development workflow management with 13 essential tools for TDD and context management
62 lines • 2.85 kB
JavaScript
/**
* Global Variables and Initialization Module
* Manages global state and component initialization for Dev Flow MCP
*/
import { StateManager } from './state-manager.js';
import { TDDValidator } from './tdd-validator.js';
import { MistakeLearner } from './mistake-learner.js';
import { RewardHackingDetector } from './reward-hacking-detector.js';
import { UnifiedContextManager } from './unified-context-manager.js';
import { SimpleWorkflowManager } from './simple-workflow.js';
import { TemplateManager } from './template-manager.js';
// Global component instances (will be set in initializeComponents function)
export let stateManager;
export let tddValidator;
export let mistakeLearner;
export let rewardHackingDetector;
export let unifiedContextManager;
export let simpleWorkflowManager;
export let templateManager;
export let PROJECT_ROOT;
// Get package version dynamically (deprecated - use version-manager.ts)
export async function getPackageVersion() {
try {
// Import the centralized version manager
const { getVersion } = await import('./version-manager.js');
return await getVersion();
}
catch (error) {
console.error('Warning: Could not read package version:', error);
return '0.0.0-error'; // Fallback version indicating error
}
}
// Initialize all components with the project root
export function initializeComponents(projectRoot) {
PROJECT_ROOT = projectRoot;
stateManager = new StateManager(PROJECT_ROOT);
tddValidator = new TDDValidator(PROJECT_ROOT);
mistakeLearner = new MistakeLearner(PROJECT_ROOT);
rewardHackingDetector = new RewardHackingDetector(PROJECT_ROOT);
unifiedContextManager = new UnifiedContextManager(PROJECT_ROOT);
simpleWorkflowManager = new SimpleWorkflowManager(PROJECT_ROOT);
templateManager = new TemplateManager(PROJECT_ROOT);
}
// Debug environment variables
export function logDebugInfo() {
console.error('=== Dev Flow MCP Debug Info ===');
console.error(`Current Working Directory: ${process.cwd()}`);
console.error(`DEV_FLOW_PROJECT_ROOT: ${process.env.DEV_FLOW_PROJECT_ROOT || 'not set'}`);
console.error(`VSCODE_WORKSPACE_FOLDER: ${process.env.VSCODE_WORKSPACE_FOLDER || 'not set'}`);
console.error(`VSCODE_CWD: ${process.env.VSCODE_CWD || 'not set'}`);
console.error(`SSH_CLIENT: ${process.env.SSH_CLIENT || 'not set'}`);
console.error(`SSH_CONNECTION: ${process.env.SSH_CONNECTION || 'not set'}`);
}
// Log server startup info
export async function logServerInfo(toolCount) {
const version = await getPackageVersion();
console.error(`Dev Flow MCP v${version} Server running`);
console.error(`Available Tools: ${toolCount}`);
console.error(`Project Root: ${PROJECT_ROOT}`);
console.error('===============================');
}
//# sourceMappingURL=globals.js.map