免费获取学习方案
ARTICLE DETAIL

资讯详情

深耕编程基础知识与建站技术分享的一线实战洞察。

Task Master 命令参考指南:AI 驱动的任务管理 CLI 全命令详解

Task Master 命令参考指南:AI 驱动的任务管理 CLI 全命令详解 Task Master 命令参考指南AI 驱动的任务管理 CLI 全命令详解【免费下载链接】claude-task-masterAn AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-task-master导读Task Master 是一个可以直接嵌入 Cursor、Lovable、Windsurf、Roo 等 AI 编码环境中的 AI 驱动任务管理系统。本文以项目官方文档 docs/command-reference.md 为主体系统梳理task-masterCLI 的全部命令族从 PRD 解析、任务增删改查、依赖管理、复杂度分析到标签隔离、模型配置与联网研究并深入仓库源码验证各命令的真实行为与底层调用链。读完本文你将掌握每个命令的完整参数、适用场景与最佳实践能够独立上手完成从 PRD 到任务落地、从状态推进到跨标签协作的完整工作流。一、命令总览与架构背景Task Master 的命令体系分为任务管理、认证上下文、工具类与开发工作流四类。在 apps/cli/src/command-registry.ts 中CommandRegistry以集中式注册表统一管理所有命令并通过registerAll(program)一次性注册到 Commander 程序实例上任务类命令list、show、next、start、set-status、export、export-tag、tags开发类命令autopilotTDD 编排、loop循环批处理认证与上下文命令auth、login、logout、context、briefs工具类命令generate并非所有命令都会触发 AI 处理。在 src/constants/commands.js 中定义了一组AI_COMMAND_NAMESadd-task、analyze-complexity、expand-task、parse-prd、research、research-save、update-subtask、update-task、update-tasks。这些命令会调用底层 LLM 生成或改写任务内容其余命令则多为纯本地文件操作。二、任务生成从 PRD 到结构化任务Parse PRD解析产品需求文档parse-prd命令读取一个 PRD 文本文件由 AI 自动提取出结构化任务列表是任务流水线的起点# 解析 PRD 文件并生成任务 task-master parse-prd prd-file.txt # 限制生成的任务数量默认 10 个 task-master parse-prd prd-file.txt --num-tasks5 # 允许 Task Master 根据复杂度自行决定任务数量 task-master parse-prd prd-file.txt --num-tasks0关键参数--num-tasks默认值为 10设置为 0 时系统将依据 PRD 内容的复杂度动态决定任务数量适合大型需求文档。该命令由 scripts/modules/task-manager/parse-prd/ 目录下的模块实现支持流式解析与进度跟踪。List Tasks列表查询# 列出所有任务 task-master list # 按状态筛选 task-master list --statusstatus # 列出任务及子任务 task-master list --with-subtasks # 组合按状态筛选并展开子任务 task-master list --statusstatus --with-subtasksstatus的合法取值由 src/constants/task-status.js 中的TASK_STATUS_OPTIONS定义共 6 种pending等待开始、done已完成、in-progress进行中、review已完成待评审、deferred延期/暂停、cancelled已取消。在 apps/cli/src/commands/list.command.ts 的实现中list还支持更多筛选与展示选项list all等价于展开全部子任务--ready只显示依赖已满足的可执行任务--blocking只显示阻塞其他任务的任务--all-tags跨标签汇总--json/--compact/-c切换输出格式-w / --watch进入监听模式自动刷新--no-header隐藏头部。命令内部通过buildBlocksMap构建任务阻塞关系并基于filterReadyTasks、filterBlockingTasks实现就绪与阻塞过滤。Show Next Task推荐下一个任务# 基于依赖关系和状态显示下一个待执行任务 task-master nextnext的推荐逻辑并非随机从 apps/cli/src/commands/list.command.ts 的findNextTask实现可见其排序优先级为——先考虑进行中父任务内未完成的子任务再回退到顶层任务按优先级criticalhighmediumlow降序、依赖数量升序、ID 升序综合排序同时过滤掉依赖未满足的任务。这一逻辑与 scripts/modules/task-manager/find-next-task.js 保持一致。Show Specific Task查看任务详情# 查看单个任务详情 task-master show id # 或 task-master show --idid # 用逗号分隔查看多个任务 task-master show 1,3,5 task-master show 44,55 # 查看指定子任务如任务 1 的子任务 2 task-master show 1.2 # 混合父任务与子任务 task-master show 44,44.1,55,55.2多任务展示模式单个 ID显示完整任务详情视图含完整实现说明多个 ID显示紧凑摘要表格并附带交互式操作菜单操作菜单提供可直接复制粘贴的批量操作命令——全部标记为 in-progress/done、显示下一个可用任务、展开所有任务生成子任务、查看依赖关系、生成任务文件。三、任务更新与状态流转Update Tasks批量更新任务# 从指定 ID 开始更新任务并提供上下文 task-master update --fromid --promptprompt # 使用研究角色进行更新 task-master update --fromid --promptprompt --researchUpdate a Specific Task更新单个任务# 用新信息更新单个任务 task-master update-task --idid --promptprompt # 研究支撑的更新 task-master update-task --idid --promptprompt --researchUpdate a Subtask追加子任务信息# 向指定子任务追加信息 task-master update-subtask --idparentId.subtaskId --promptprompt # 示例向任务 5 的子任务 2 追加 API 限流细节 task-master update-subtask --id5.2 --promptAdd rate limiting of 100 requests per minute # 研究支撑的更新 task-master update-subtask --idparentId.subtaskId --promptprompt --research关键区别与update-task的替换语义不同update-subtask是追加语义——新信息会被追加到已有子任务详情中并打上时间戳。这对于在保留原始内容的前提下迭代增强子任务非常有用。Set Task Status设置任务状态# 设置单个任务状态 task-master set-status --idid --statusstatus # 批量设置多个任务状态 task-master set-status --id1,2,3 --statusstatus # 设置子任务状态 task-master set-status --id1.1,1.2 --statusstatus级联规则当把任务标记为done时其所有子任务也会被自动标记为done。状态的合法性校验由 src/constants/task-status.js 中的isValidTaskStatus函数保证。四、任务分解与复杂度管理Expand Tasks展开子任务# 为指定任务生成子任务 task-master expand --idid --numnumber # 动态数量展开忽略复杂度报告 task-master expand --idid --num0 # 携带额外上下文展开 task-master expand --idid --promptcontext # 展开所有 pending 任务 task-master expand --all # 对已有子任务的任务强制重新生成 task-master expand --all --force # 研究支撑的子任务生成单任务 task-master expand --idid --research # 研究支撑的全量生成 task-master expand --all --research--num0表示让系统基于复杂度报告动态决定子任务数量--force用于覆盖已有子任务重新生成。对应的底层实现位于 scripts/modules/task-manager/expand-task.js其 LLM 调用由 src/prompts/expand-task.json 定义的提示模板驱动。Clear Subtasks清空子任务# 清空指定任务的子任务 task-master clear-subtasks --idid # 清空多个任务的子任务 task-master clear-subtasks --id1,2,3 # 清空所有任务的子任务 task-master clear-subtasks --allAnalyze Task Complexity复杂度分析# 分析所有任务的复杂度 task-master analyze-complexity # 将报告保存到自定义位置 task-master analyze-complexity --outputmy-report.json # 指定 LLM 模型 task-master analyze-complexity --modelclaude-3-opus-20240229 # 设置自定义复杂度阈值1-10 task-master analyze-complexity --threshold6 # 使用替代任务文件 task-master analyze-complexity --filecustom-tasks.json # 使用 Perplexity AI 进行研究支撑的复杂度分析 task-master analyze-complexity --research--threshold取值范围 1-10用于界定高复杂度任务的分界线复杂度分析结果会作为后续expand动态决策的输入。报告默认路径由 src/constants/paths.js 中的COMPLEXITY_REPORT_FILE定义为.taskmaster/reports/task-complexity-report.json。View Complexity Report查看复杂度报告# 显示复杂度分析报告 task-master complexity-report # 查看自定义位置的报告 task-master complexity-report --filemy-report.json五、依赖管理# 为任务添加依赖 task-master add-dependency --idid --depends-onid # 移除任务依赖 task-master remove-dependency --idid --depends-onid # 校验依赖不修复 task-master validate-dependencies # 自动查找并修复无效依赖 task-master fix-dependencies依赖是 Task Master 调度逻辑的核心next命令只会推荐依赖已全部完成的任务list --ready同理。依赖校验与修复的详细逻辑可在 scripts/modules/task-manager/is-task-dependent.js 与 scripts/modules/task-manager/validate-dependencies.js 中查看。六、任务重排与新增Move Tasks移动任务# 将任务或子任务移动到新位置 task-master move --fromid --toid # 示例将任务移动为另一个任务的子任务 task-master move --from5 --to7 # 将子任务提升为独立任务 task-master move --from5.2 --to7 # 将子任务迁移到另一个父任务下 task-master move --from5.2 --to7.3 # 在同一父任务内重排子任务顺序 task-master move --from5.2 --to5.4 # 移动到新的 ID 位置若不存在则创建占位 task-master move --from5 --to25 # 批量移动from 与 to 的 ID 数量必须相等 task-master move --from10,11,12 --to16,17,18move支持四种典型场景任务转子任务、子任务提升为顶层任务、子任务跨父级迁移、同级子任务重排。实现位于 scripts/modules/task-manager/move-task.js。Add a New Task新增任务# 使用 AI主角色新增任务 task-master add-task --promptDescription of the new task # 使用研究角色新增任务 task-master add-task --promptDescription of the new task --research # 新增带依赖的任务 task-master add-task --promptDescription --dependencies1,2,3 # 新增指定优先级的任务 task-master add-task --promptDescription --priorityhigh--priority的合法取值定义在 src/constants/task-priority.js 中high需立即处理的关键任务、medium标准优先级也是默认值、low可延后或锦上添花的任务。新增任务的 AI 输出结构由 src/schemas/add-task.js 定义并校验。七、标签管理多上下文任务隔离Task Master 支持带标签的任务列表用于多上下文任务管理。每个标签代表一个独立、隔离的任务上下文任务之间互不干扰。# 列出所有标签含任务数与状态 task-master tags # 带元数据详细列出标签 task-master tags --show-metadata # 创建新的空标签 task-master add-tag tag-name # 创建带描述的标签 task-master add-tag tag-name --descriptionFeature development tasks # 基于当前 git 分支名创建标签 task-master add-tag --from-branch # 复制当前标签的任务创建新标签 task-master add-tag new-tag --copy-from-current # 从指定标签复制任务创建新标签 task-master add-tag new-tag --copy-fromsource-tag # 切换到不同标签上下文 task-master use-tag tag-name # 重命名已有标签 task-master rename-tag old-name new-name # 复制整个标签以创建新标签 task-master copy-tag source-tag target-tag # 带描述复制标签 task-master copy-tag source-tag target-tag --descriptionCopied for testing # 删除标签及其全部任务带确认 task-master delete-tag tag-name # 跳过确认直接删除标签 task-master delete-tag tag-name --yes标签上下文规则所有任务操作list、show、add、update 等都在当前激活标签内执行大多数命令支持--tagname标志可在指定标签上下文中操作标签提供完全隔离——不同标签中的任务互不干扰。从 scripts/modules/task-manager/tag-management.js 的实现可以补充几个关键细节命名约束标签名仅允许字母、数字、连字符和下划线正则^[a-zA-Z0-9_-]$保留名称master、main、default为保留标签名不可创建、重命名或删除master删除保护删除含任务的标签时即使使用 CLI 也会先弹出黄色警告框要求双重确认先确认再输入标签名删除当前激活标签后会自动切回master数据组织带标签的tasks.json采用{ tagName: { tasks, metadata } }结构metadata记录创建时间与描述切换标签的状态保存在.taskmaster/state.json中。八、项目初始化与规则管理Initialize a Project初始化项目# 使用 Task Master 结构初始化新项目 task-master init # 初始化时应用指定规则 task-master init --rules cursor,windsurf,vscode--rules标志用于指定一个或多个规则配置文件如cursor、roo、windsurf、cline在初始化时应用若省略该标志默认安装全部可用规则配置claude、cline、codex、cursor、roo、trae、vscode、windsurf单个命令中可使用逗号分隔多个配置。Manage Rules规则管理# 向项目添加规则配置如 .roo/rules、.windsurf/rules task-master rules add profile1,profile2,... # 从项目移除规则集 task-master rules remove profile1,profile2,... # 绕过安全检查移除规则集危险操作 task-master rules remove profile1,profile2,... --force # 启动交互式规则选择 # 不会重新初始化项目或询问 shell 别名 task-master rules setup添加规则会创建对应的配置与规则目录如.roo/rules并复制/初始化规则文件移除规则会删除配置、规则目录及关联的 MCP 配置安全检查尝试移除规则配置时会触发严重警告并要求确认使用--force可绕过单条命令可同时处理多个逗号分隔的规则setup动作启动交互式提示来选择要应用的规则可选列表始终与可用配置保持同步无需手动更新该命令不会重新初始化项目或影响 shell 别名只负责交互式管理规则。示例task-master rules add windsurf,roo,vscode task-master rules remove windsurf task-master rules setup交互式规则设置task-master rules setup该命令会打开提示界面让你选择要向项目添加的规则配置如 Cursor、Roo、Windsurf。它不会重新初始化项目或询问 shell 别名仅管理规则。适用于项目创建后的交互式补充且init在未通过--rules指定配置时也会复用同一个交互式提示。九、AI 模型配置Configure AI Models配置 AI 模型# 查看当前 AI 模型配置与 API key 状态 task-master models # 设置主模型若已知则自动推断 provider task-master models --set-mainclaude-3-opus-20240229 # 设置研究模型 task-master models --set-researchsonar-pro # 设置回退模型 task-master models --set-fallbackclaude-3-haiku-20240307 # 为主角色设置自定义 Ollama 模型 task-master models --set-mainmy-local-llama --ollama # 为研究角色设置自定义 OpenRouter 模型 task-master models --set-researchgoogle/gemini-pro --openrouter # 为主角色设置 Codex CLI 模型通过 OAuth 使用 ChatGPT 订阅 task-master models --set-maingpt-5-codex --codex-cli # 为回退角色设置 Codex CLI 模型 task-master models --set-fallbackgpt-5 --codex-cli # 运行交互式配置含自定义模型 task-master models --setup配置存储配置保存在项目根目录的.taskmaster/config.json中旧版.taskmasterconfig文件会自动迁移。API key 仍通过.env或 MCP 配置管理。不带任何标志运行task-master models可查看内置可用模型--setup提供引导式配置体验。状态存储状态保存在项目根目录的.taskmaster/state.json中维护当前标签等关键信息。请勿手动编辑此文件。从 scripts/modules/task-manager/models.js 的实现可以补充的细节三角色体系main生成/更新主模型、research研究模型如 Perplexity 的 sonar-pro、fallback回退模型在主模型不可用时兜底自定义 provider 提示--ollama、--openrouter、--codex-cli等标志本质上是在告诉系统跳过内置模型库匹配直接走自定义校验流程——Ollama 会实时请求本地http://localhost:11434/api/tags验证模型是否已拉取OpenRouter 会实时请求其公开模型列表验证 IDAzure、Vertex、LM Studio、OpenAI-compatible 等则按各自约定处理如 OpenRouter 的:free模型会有限流/上下文警告回写行为设置模型时会同步写入maxTokens若内置模型数据中存在并正确处理各 provider 的baseURL保留与清理角色校验role必须是main、research、fallback三者之一否则返回INVALID_ROLE错误。所有路径常量.taskmaster/config.json、.taskmaster/state.json、.taskmaster/tasks/tasks.json等统一定义于 src/constants/paths.js并兼容旧版布局如tasks/tasks.json、scripts/prd.txt。十、Research联网研究新鲜信息# 执行 AI 研究获取新鲜、最新的信息 task-master research What are the latest best practices for JWT authentication in Node.js? # 携带任务上下文进行研究 task-master research How to implement OAuth 2.0? --id15,16 # 携带文件上下文进行代码感知建议 task-master research How can I optimize this API implementation? --filessrc/api.js,src/auth.js # 携带自定义上下文与项目树 task-master research Best practices for error handling --contextWere using Express.js --tree # 使用不同详细程度 task-master research React Query v5 migration guide --detailhigh # 禁用交互式追问适合脚本化也是 MCP 的默认行为 # 使用自定义任务文件位置 task-master research How to implement this feature? --filecustom-tasks.json # 在指定标签上下文中研究 task-master research Database optimization strategies --tagfeature-branch # 将研究对话保存到 .taskmaster/docs/research/ 目录供后续参考 task-master research Database optimization techniques --save-file # 将关键结论直接保存到任务或子任务推荐用于可执行洞察 task-master research How to implement OAuth? --save-to15 task-master research API optimization strategies --save-to15.2 # 组合上下文收集与自动保存结论 task-master research Best practices for this implementation --id15,16 --filessrc/auth.js --save-to15.3research 命令是强大的探索工具提供超出 AI 知识截止时间的新鲜信息来自任务与文件的项目感知上下文基于模糊搜索的自动任务发现多种详细程度low、medium、highToken 计数与成本追踪用于深入探索的交互式追问灵活的保存选项将结论提交到任务或保留对话通过持续提问与精炼实现的迭代式发现。建议高频使用 research 的场景实现功能前获取当前最佳实践研究新技术与库为复杂问题寻找解决方案验证实现方案跟进最新的安全建议。CLI 交互特性追问保持对话上下文支持深度探索保存菜单研究过程中或结束后提供灵活选项保存到任务/子任务提交关键结论与可执行洞察推荐保存到文件保留完整对话供后续参考继续探索提出更多追问以深入挖掘自动文件命名保存对话时使用时间戳与基于查询的 slug 自动生成文件名。十一、最佳实践小结从 PRD 开始task-master parse-prd是标准入口先让 AI 把需求转化为结构化任务再手动微调善用--num-tasks0不确定任务粒度时让系统根据复杂度自行决策避免人工拍脑袋依赖先行add-dependency与next配合使用让系统自动推荐现在该做什么减少上下文切换成本标签做隔离多个功能分支并行时用add-tag --from-branch建立独立上下文用list --all-tags --ready跨标签聚合可执行任务研究驱动实现写代码前用research --save-totaskId把关键结论落回任务实现时直接参考定期复杂度巡检analyze-complexitycomplexity-report识别高风险任务优先拆分与排期配置持久化模型配置集中维护在.taskmaster/config.json状态文件.taskmaster/state.json不要手动编辑。延伸阅读任务结构规范了解 tasks.json 的数据结构与子任务 ID 规则配置指南完整的 config.json 参数说明与 provider 配置Task Master 命令参考MDX 版包含list --watch、generate、autopilot、loop等进阶命令TDD 工作流Autopilotautopilot驱动的 RED → GREEN → COMMIT 循环跨标签任务移动标签隔离场景下的任务迁移细节【免费下载链接】claude-task-masterAn AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-task-master创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表