taskflow-ai
Version:
TaskFlow AI - 智能PRD文档解析与任务管理助手,支持多模型AI协同、MCP编辑器集成,专为开发团队设计的CLI工具
153 lines (152 loc) • 3.39 kB
TypeScript
/**
* TaskFlow AI 核心服务
* 整合 PRD 解析、任务管理和 AI 编排功能
*/
import { Logger } from '../infra/logger';
import { Task, TaskPriority } from '../types/task';
/**
* 任务创建参数
*/
export interface TaskCreateParams {
title: string;
description: string;
priority?: 'high' | 'medium' | 'low';
assignee?: string;
}
/**
* 任务查询参数
*/
export interface TaskQueryParams {
status?: string;
priority?: string;
assignee?: string;
}
/**
* AI 查询选项
*/
export interface AIQueryOptions {
model?: string;
context?: string;
temperature?: number;
}
/**
* PRD 解析结果
*/
export interface PRDParseResult {
title: string;
description: string;
tasks: Array<{
title: string;
description: string;
priority: TaskPriority;
estimatedHours?: number;
dependencies?: string[];
}>;
metadata: {
parsedAt: string;
model: string;
confidence: number;
};
}
/**
* 代码分析结果
*/
export interface CodeAnalysisResult {
quality: {
score: number;
issues: Array<{
type: 'error' | 'warning' | 'info';
message: string;
line?: number;
column?: number;
}>;
};
structure: {
complexity: number;
maintainability: number;
testability: number;
};
suggestions: string[];
}
/**
* TaskFlow 核心服务类
*/
export declare class TaskFlowCore {
private logger;
private config;
private taskManager;
private modelCoordinator;
private initialized;
constructor(logger: Logger);
/**
* 初始化核心服务
*/
initialize(): Promise<void>;
/**
* 解析 PRD 文档
* @param content PRD 内容
* @param format 文档格式
* @param model AI 模型
* @returns 解析结果
*/
parsePRD(content: string, format?: string, model?: string): Promise<PRDParseResult>;
/**
* 创建任务
* @param params 任务参数
* @returns 创建的任务
*/
createTask(params: TaskCreateParams): Promise<Task>;
/**
* 获取任务列表
* @param params 查询参数
* @returns 任务列表
*/
getTasks(params?: TaskQueryParams): Promise<Task[]>;
/**
* 分析代码
* @param code 代码内容
* @param language 编程语言
* @param analysisType 分析类型
* @returns 分析结果
*/
analyzeCode(code: string, language?: string, analysisType?: string): Promise<CodeAnalysisResult>;
/**
* AI 查询
* @param prompt 查询提示
* @param options 查询选项
* @returns AI 响应
*/
queryAI(prompt: string, options?: AIQueryOptions): Promise<string>;
/**
* 确保服务已初始化
*/
private ensureInitialized;
/**
* 转换优先级
*/
private convertPriority;
/**
* 转换状态
*/
private convertStatus;
/**
* 智能选择模型
*/
private selectModel;
/**
* 转换模型名称为ModelType
*/
private convertToModelType;
/**
* 从PRD章节中提取任务
*/
private extractTasksFromSections;
/**
* 确定任务优先级
*/
private determinePriority;
/**
* 估算任务工时
*/
private estimateHours;
}