UNPKG

taskflow-ai

Version:

TaskFlow AI - 智能PRD文档解析与任务管理助手,支持多模型AI协同、MCP编辑器集成,专为开发团队设计的CLI工具

658 lines (657 loc) 15.9 kB
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;