vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
172 lines • 4.68 kB
TypeScript
export type TaskStatus = 'pending' | 'in_progress' | 'completed' | 'blocked' | 'cancelled' | 'failed';
export type TaskPriority = 'low' | 'medium' | 'high' | 'critical';
export type TaskType = 'development' | 'testing' | 'documentation' | 'research' | 'deployment' | 'review';
export type FunctionalArea = 'authentication' | 'user-management' | 'content-management' | 'data-management' | 'integration' | 'admin' | 'ui-components' | 'performance' | 'frontend' | 'backend' | 'database';
export interface AtomicTask {
id: string;
title: string;
description: string;
status: TaskStatus;
priority: TaskPriority;
type: TaskType;
functionalArea: FunctionalArea;
estimatedHours: number;
actualHours?: number;
epicId: string;
projectId: string;
dependencies: string[];
dependents: string[];
filePaths: string[];
acceptanceCriteria: string[];
testingRequirements: {
unitTests: string[];
integrationTests: string[];
performanceTests: string[];
coverageTarget: number;
};
performanceCriteria: {
responseTime?: string;
memoryUsage?: string;
throughput?: string;
};
qualityCriteria: {
codeQuality: string[];
documentation: string[];
typeScript: boolean;
eslint: boolean;
};
integrationCriteria: {
compatibility: string[];
patterns: string[];
};
validationMethods: {
automated: string[];
manual: string[];
};
assignedAgent?: string;
executionContext?: {
sessionId: string;
startTime?: Date;
endTime?: Date;
logs: string[];
errors: string[];
};
createdAt: Date;
updatedAt: Date;
startedAt?: Date;
completedAt?: Date;
createdBy: string;
tags: string[];
metadata: {
createdAt: Date;
updatedAt: Date;
createdBy: string;
tags: string[];
};
}
export interface Epic {
id: string;
title: string;
description: string;
status: TaskStatus;
priority: TaskPriority;
functionalArea: FunctionalArea;
projectId: string;
estimatedHours: number;
taskIds: string[];
dependencies: string[];
dependents: string[];
metadata: {
createdAt: Date;
updatedAt: Date;
createdBy: string;
tags: string[];
};
}
export interface Project {
id: string;
name: string;
description: string;
status: TaskStatus;
config: ProjectConfig;
epicIds: string[];
rootPath: string;
techStack: {
languages: string[];
frameworks: string[];
tools: string[];
};
metadata: {
createdAt: Date;
updatedAt: Date;
createdBy: string;
tags: string[];
version: string;
};
}
export interface ProjectConfig {
maxConcurrentTasks: number;
defaultTaskTemplate: string;
agentConfig: {
maxAgents: number;
defaultAgent: string;
agentCapabilities: Record<string, string[] | boolean>;
};
performanceTargets: {
maxResponseTime: number;
maxMemoryUsage: number;
minTestCoverage: number;
};
integrationSettings: {
codeMapEnabled: boolean;
researchEnabled: boolean;
notificationsEnabled: boolean;
};
fileSystemSettings: {
cacheSize: number;
cacheTTL: number;
backupEnabled: boolean;
};
}
export interface TaskTemplate {
id: string;
name: string;
description: string;
taskType: TaskType;
template: {
title: string;
description: string;
estimatedHours: number;
acceptanceCriteria: string[];
testingRequirements: AtomicTask['testingRequirements'];
performanceCriteria: AtomicTask['performanceCriteria'];
qualityCriteria: AtomicTask['qualityCriteria'];
integrationCriteria: AtomicTask['integrationCriteria'];
validationMethods: AtomicTask['validationMethods'];
};
parameters: {
name: string;
type: 'string' | 'number' | 'boolean' | 'array';
description: string;
required: boolean;
defaultValue?: unknown;
}[];
}
export interface DecompositionResult {
sourceId: string;
atomicTasks: AtomicTask[];
epics?: Epic[];
dependencies: {
from: string;
to: string;
type: 'blocks' | 'enables' | 'requires';
}[];
metadata: {
decomposedAt: Date;
decomposedBy: string;
method: 'llm' | 'template' | 'manual';
confidence: number;
atomicityScore: number;
};
}
//# sourceMappingURL=task.d.ts.map