taskflow-ai
Version:
TaskFlow AI - 智能PRD文档解析与任务管理助手,支持多模型AI协同、MCP编辑器集成,专为开发团队设计的CLI工具
658 lines (657 loc) • 15.9 kB
TypeScript
import { FileType, ParseOptions, PlanningOptions, ServiceResponse } from '../types/model';
import { TaskFilter, TaskUpdateData } from '../core/task/task-manager';
import { ModelType } from '../types/config';
import { PRDParseResult } from '../core/parser/prd-parser';
/**
* TaskFlow AI MCP 服务类
*/
export declare class TaskFlowService {
private configManager;
private logger;
private modelCoordinator;
private prdParser;
private taskPlanner;
private taskManager;
/**
* 创建TaskFlow AI MCP服务实例
*/
constructor();
/**
* 解析PRD文档内容
* @param content PRD文档内容
* @param fileType 文件类型
* @param options 解析选项
*/
parsePRD(content: string, fileType?: FileType, options?: ParseOptions): Promise<ServiceResponse<PRDParseResult>>;
/**
* 从文件解析PRD
* @param filePath PRD文件路径
* @param options 解析选项
*/
parsePRDFromFile(filePath: string, options?: ParseOptions): Promise<{
success: boolean;
data: import("..").ParsedPRD;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 根据PRD生成任务计划
* @param prdResult PRD解析结果
* @param options 规划选项
*/
generateTaskPlan(prdResult: any, options?: PlanningOptions): Promise<{
success: boolean;
data: import("..").TaskPlan;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 保存任务计划
* @param taskPlan 任务计划
* @param outputPath 输出路径
*/
saveTaskPlan(taskPlan: any, outputPath: string): Promise<{
success: boolean;
error?: undefined;
} | {
success: boolean;
error: string;
}>;
/**
* 加载任务计划
* @param filePath 任务计划文件路径
*/
loadTaskPlan(filePath: string): Promise<{
success: boolean;
data: import("..").TaskPlan;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取所有任务
*/
getAllTasks(): {
success: boolean;
data: import("..").Task[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 根据ID获取任务
* @param id 任务ID
*/
getTaskById(id: string): {
success: boolean;
error: string;
data?: undefined;
} | {
success: boolean;
data: import("..").Task;
error?: undefined;
};
/**
* 过滤任务
* @param filter 过滤条件
*/
filterTasks(filter: TaskFilter): {
success: boolean;
data: import("..").Task[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 更新任务
* @param id 任务ID
* @param data 更新数据
*/
updateTask(id: string, data: TaskUpdateData): {
success: boolean;
error: string;
data?: undefined;
} | {
success: boolean;
data: import("..").Task;
error?: undefined;
};
/**
* 获取下一个要处理的任务
*/
getNextTasks(): {
success: boolean;
data: import("..").Task[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 使用聊天模型进行对话
* @param messages 消息数组
* @param modelType 模型类型
* @param options 调用选项
*/
chat(messages: any[], modelType?: ModelType, options?: any): Promise<{
success: boolean;
data: import("../types/model").ModelResponse;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取所有可用的模型类型
*/
getAvailableModelTypes(): {
success: boolean;
data: ModelType[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 验证指定类型模型的API密钥
* @param modelType 模型类型
*/
validateModelApiKey(modelType: ModelType): Promise<{
success: boolean;
data: {
valid: boolean;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 更新配置
* @param config 配置对象
* @param isProjectLevel 是否为项目级配置
*/
updateConfig(config: any, isProjectLevel?: boolean): {
success: boolean;
error?: undefined;
} | {
success: boolean;
error: string;
};
/**
* 获取完整配置
*/
getConfig(): {
success: boolean;
data: {
[x: string]: unknown;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 获取任务状态概览
*/
getTaskStatus(): {
success: boolean;
data: {
total: number;
pending: number;
in_progress: number;
completed: number;
cancelled: number;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 更新任务状态
* @param taskId 任务ID
* @param status 新状态
* @param data 额外数据
*/
updateTaskStatus(taskId: string, status: string, data?: any): {
success: boolean;
error: string;
data?: undefined;
} | {
success: boolean;
data: import("..").Task;
error?: undefined;
};
/**
* 获取推荐任务
*/
getRecommendedTask(): {
success: boolean;
data: import("..").Task | null;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
};
/**
* 生成可视化
* @param type 可视化类型
* @param options 选项
*/
generateVisualization(type: string, options?: any): Promise<{
success: boolean;
data: {
type: string;
data: import("..").Task[];
options: any;
generatedAt: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 创建项目
* @param projectData 项目数据
*/
createProject(projectData: any): Promise<{
success: boolean;
data: any;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取项目列表
* @param options 查询选项
*/
getProjects(options?: any): Promise<{
success: boolean;
data: {
id: string;
name: string;
description: string;
status: string;
createdAt: string;
}[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取项目详情
* @param id 项目ID
*/
getProject(id: string): Promise<{
success: boolean;
data: {
id: string;
name: string;
description: string;
status: string;
createdAt: string;
tasks: import("..").Task[];
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 更新项目
* @param id 项目ID
* @param updateData 更新数据
*/
updateProject(id: string, updateData: any): Promise<{
success: boolean;
data: any;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 删除项目
* @param id 项目ID
*/
deleteProject(id: string): Promise<{
success: boolean;
message: string;
error?: undefined;
} | {
success: boolean;
error: string;
message?: undefined;
}>;
/**
* 获取项目任务
* @param id 项目ID
* @param options 查询选项
*/
getProjectTasks(id: string, options?: any): Promise<{
success: boolean;
data: import("..").Task[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取项目统计
* @param id 项目ID
*/
getProjectStats(id: string): Promise<{
success: boolean;
data: {
totalTasks: number;
completedTasks: number;
inProgressTasks: number;
pendingTasks: number;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 生成任务
* @param req 请求对象
* @param res 响应对象
*/
generateTasks(req: any, res: any): Promise<{
success: boolean;
data: {
id: string;
title: string;
description: string;
status: string;
priority: string;
}[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 编排任务
* @param req 请求对象
* @param res 响应对象
*/
orchestrateTasks(req: any, res: any): Promise<{
success: boolean;
data: any;
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 生成文档
* @param req 请求对象
* @param res 响应对象
*/
generateDocuments(req: any, res: any): Promise<{
success: boolean;
data: {
type: any;
content: string;
generatedAt: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 生成图表
* @param req 请求对象
* @param res 响应对象
*/
generateCharts(req: any, res: any): Promise<{
success: boolean;
data: {
type: any;
data: any;
options: any;
generatedAt: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 聊天流式响应
* @param req 请求对象
* @param res 响应对象
*/
chatStream(req: any, res: any): Promise<void>;
/**
* 获取模型列表
* @param req 请求对象
* @param res 响应对象
*/
getModels(req: any, res: any): Promise<{
success: boolean;
data: ModelType[];
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取模型状态
* @param req 请求对象
* @param res 响应对象
*/
getModelStatus(req: any, res: any): Promise<{
success: boolean;
data: {
modelType: any;
status: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 验证需求
* @param req 请求对象
* @param res 响应对象
*/
validateRequirements(req: any, res: any): Promise<{
success: boolean;
data: {
valid: boolean;
issues: never[];
suggestions: string[];
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 估算工作量
* @param req 请求对象
* @param res 响应对象
*/
estimateEffort(req: any, res: any): Promise<{
success: boolean;
data: {
totalHours: number;
breakdown: any;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 获取使用统计
* @param req 请求对象
* @param res 响应对象
*/
getUsageStats(req: any, res: any): Promise<{
success: boolean;
data: {
totalRequests: number;
successfulRequests: number;
failedRequests: number;
averageResponseTime: number;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 归档项目
* @param req 请求对象
* @param res 响应对象
*/
archiveProject(req: any, res: any): Promise<{
success: boolean;
data: {
id: any;
status: string;
archivedAt: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 恢复项目
* @param id 项目ID
*/
restoreProject(id: string): Promise<any>;
/**
* 恢复项目
* @param req 请求对象
* @param res 响应对象
*/
restoreProject(req: any, res: any): Promise<any>;
/**
* 生成项目报告
* @param id 项目ID
* @param options 报告选项
*/
generateProjectReport(id: string, options?: any): Promise<{
success: boolean;
data: {
project: {
id: string;
name: string;
description: string;
status: string;
createdAt: string;
tasks: import("..").Task[];
} | undefined;
tasks: import("..").Task[];
statistics: {
totalTasks: number;
completedTasks: number;
inProgressTasks: number;
pendingTasks: number;
} | undefined;
generatedAt: string;
format: any;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 导出项目
* @param id 项目ID
* @param format 导出格式
*/
exportProject(id: string, format: string): Promise<{
success: boolean;
data: {
project: {
id: string;
name: string;
description: string;
status: string;
createdAt: string;
tasks: import("..").Task[];
} | undefined;
tasks: import("..").Task[];
exportedAt: string;
format: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
/**
* 克隆项目
* @param id 项目ID
* @param options 克隆选项
*/
cloneProject(id: string, options: any): Promise<{
success: boolean;
data: {
id: string;
name: any;
description: any;
clonedFrom: string;
createdAt: string;
};
error?: undefined;
} | {
success: boolean;
error: string;
data?: undefined;
}>;
}
export declare const taskFlowService: TaskFlowService;
export declare const yasiService: TaskFlowService;