← ClaudeAtlas

cancel-tasklisted

取消不再需要的任务并转移。 当某个任务不再需要、应从 active 工作中撤下时使用。 仅当对话包含可解析的任务引用时才可自动调用本技能。
fitlab-ai/agent-infra · ★ 83 · AI & Automation · score 80
Install: claude install-skill fitlab-ai/agent-infra
# 取消任务 > `--agent` 取值见 `.agents/rules/task-management.md`「合作者 token 规范」。 ## 行为边界 / 关键规则 - 本命令用于终止一个不再需要继续执行的任务,并转移到 `completed/` - 只有在确认该任务无需继续实现、审查或修复时才可取消 - 有效 `issue_number` 存在时,Issue 同步属于必做项 版本戳规则:创建或更新 `task.md` frontmatter 时,先读取 `.agents/rules/version-stamp.md`,并写入或刷新 `agent_infra_version`。 ## 任务上下文解析 > 入口可省略 task ref;显式 task scope 仅接受 `--task <ref>` 或 `-t <ref>`,不再解释位置 task ref。保留其余业务操作数后调用 `agent-infra-internal task-context resolve {task-scope}`;`{task-scope}` 为空或 task flag 之一。只读取结构化结果的 `taskId`,后续把 `{task-id}` 绑定为完整 `TASK-YYYYMMDD-HHMMSS`。解析失败时透传非零退出码,不自行扫描任务。 > 解析任务引用,并确认任务位于本技能支持的状态或目录且存在 `task.md`;无法定位时按未找到任务处理并停止。 ## 步骤开始:本地生命周期边界 确认前置条件后,由步骤 3 的单次 lifecycle intent 原子完成基础元数据、started/done 日志、目录转移和短号处理;不得提前手工写入局部状态。 ## 执行步骤 ### 1. 验证任务存在 依次检查以下目录: - `.agents/workspace/active/{task-id}/` - `.agents/workspace/blocked/{task-id}/` - `.agents/workspace/completed/{task-id}/` 处理规则: - 如果在 `active/` 或 `blocked/` 中找到:继续 - 如果只在 `completed/` 中找到:告知用户任务已转移,停止 - 如果都不存在:提示 `Task {task-id} not found` ### 2. 判断取消标签 根据取消原因推断 Issue 关闭标签: - `status: superseded`:原因包含“重复”、“替代”、“合并到”、“已由 #123 / PR 替代”等语义 - `status: invalid`:原因包含“误报”、“不存在”、“无法复现”、“排查后无问题”等语义 - `status: declined`:原因包含“不做”、“暂不实现”、“优先级调整”、“方案否决”等语义 - 以上都不匹配:回退到 `status: declined` 后续同步到 Issue 时,使用最终推断结果替换现有 `status:` labels。 ### 3. 执行本地生命周期意图 ```bash agent-infra-internal task-lifecycle {task-id} cancel --agent {standard-agent-token} --reason "{一行取消原因}" ``` 仅 `status=applied|no-op` 视为本地取消完成。`status=failed` 时展