vibe-coder-mcp
Version:
Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.
80 lines • 3.17 kB
TypeScript
import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
import { JobDetails } from './jobStatusMessage.js';
import { TimeoutOperation } from '../../tools/vibe-task-manager/utils/timeout-manager.js';
import { JobExecutionAdapter } from './execution-adapter.js';
import { ExecutionCoordinator } from '../../tools/vibe-task-manager/services/execution-coordinator.js';
export declare enum JobStatus {
PENDING = "pending",
RUNNING = "running",
COMPLETED = "completed",
FAILED = "failed"
}
export interface Job {
id: string;
toolName: string;
params: Record<string, unknown>;
status: JobStatus;
createdAt: number;
updatedAt: number;
progressMessage?: string;
progressPercentage?: number;
result?: CallToolResult;
details?: JobDetails;
lastAccessTime?: number;
accessCount?: number;
fingerprint?: string;
timeoutOperation?: TimeoutOperation;
timeoutMs?: number;
startedAt?: number;
abortController?: AbortController;
}
declare class JobManager {
private static instance;
private jobs;
private jobsByFingerprint;
private timeoutManager;
private executionAdapter;
private timeoutConfigManager;
private constructor();
private initializeTimeoutConfig;
static getInstance(): JobManager;
initializeExecutionAdapter(executionCoordinator: ExecutionCoordinator): void;
isExecutionAdapterInitialized(): boolean;
getExecutionAdapter(): JobExecutionAdapter | null;
private generateJobFingerprint;
private findExistingActiveJob;
private startTimeoutTimer;
private clearTimeoutTimer;
getMinimumWaitTime(jobId: string): number;
updateJobAccess(jobId: string): void;
getJobWithRateLimit(jobId: string, updateAccess?: boolean): {
job: Job | undefined;
waitTime: number;
shouldWait: boolean;
};
createJob(toolName: string, params: Record<string, unknown>): string;
createJobWithId(jobId: string, toolName: string, params: Record<string, unknown>): string;
getJob(jobId: string, updateAccess?: boolean): Job | undefined;
updateJobStatus(jobId: string, status: JobStatus, progressMessage?: string, progressPercentage?: number, details?: JobDetails): boolean;
setJobResult(jobId: string, result: CallToolResult): boolean;
isJobTimedOut(jobId: string): boolean;
getJobAbortSignal(jobId: string): AbortSignal | undefined;
cancelJob(jobId: string, reason?: string): Promise<boolean>;
setJobTimeout(jobId: string, timeoutOperation: TimeoutOperation, customTimeoutMs?: number): boolean;
private cleanupOrphanedJobs;
cleanupOldJobs(maxAgeMs?: number): number;
clearAllJobs(): void;
getJobStats(): {
totalJobs: number;
pendingJobs: number;
runningJobs: number;
completedJobs: number;
failedJobs: number;
oldestJobAge: number;
averageJobAge: number;
};
}
export declare const jobManager: JobManager;
export { JobExecutionAdapter } from './execution-adapter.js';
export type { TimeoutOperation } from '../../tools/vibe-task-manager/utils/timeout-manager.js';
//# sourceMappingURL=index.d.ts.map