vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
60 lines • 2.38 kB
TypeScript
import { PathValidationResult, SanitizationResult, LockAcquisitionResult, LockId } from '../core/unified-security-engine.js';
import { CommandExecutionContext } from '../nl/command-handlers.js';
export interface SecurityValidationResult {
valid: boolean;
sanitizedData?: unknown;
pathValidation?: PathValidationResult;
sanitizationResult?: SanitizationResult<unknown>;
lockResult?: LockAcquisitionResult;
violations: SecurityViolation[];
performanceMetrics: {
totalTime: number;
pathValidationTime?: number;
sanitizationTime?: number;
lockAcquisitionTime?: number;
};
}
export interface SecurityViolation {
type: 'path' | 'sanitization' | 'access' | 'performance';
severity: 'low' | 'medium' | 'high' | 'critical';
description: string;
field?: string;
originalValue?: unknown;
sanitizedValue?: unknown;
context?: Record<string, unknown>;
}
export interface SecurityMiddlewareConfig {
enablePathValidation: boolean;
enableInputSanitization: boolean;
enableConcurrentAccess: boolean;
performanceThresholdMs: number;
strictMode: boolean;
logViolations: boolean;
blockOnCriticalViolations: boolean;
}
export interface SecurityOperationContext {
operation: string;
resource?: string;
sessionId?: string;
userId?: string;
filePaths?: string[];
requiresLock?: boolean;
lockTimeout?: number;
}
export declare class SecurityMiddleware {
private static instance;
private securityEngine;
private config;
private constructor();
static getInstance(config?: Partial<SecurityMiddlewareConfig>): SecurityMiddleware;
private mapSeverity;
validateCommandSecurity(data: unknown, context: CommandExecutionContext, operationContext: SecurityOperationContext): Promise<SecurityValidationResult>;
releaseLocks(lockIds: (string | LockId)[]): Promise<void>;
private createValidationResult;
getConfig(): SecurityMiddlewareConfig;
updateConfig(config: Partial<SecurityMiddlewareConfig>): void;
shutdown(): void;
}
export declare function validateCommandSecurity(data: unknown, context: CommandExecutionContext, operationContext: SecurityOperationContext): Promise<SecurityValidationResult>;
export declare function releaseLocks(lockIds: string[]): Promise<void>;
//# sourceMappingURL=security-middleware.d.ts.map