# Execute Task

> 当一个软件开发任务的目标、范围与验收已经明确，需要组织该任务的执行时使用。

- Skill: `qianchengjie/execute-task` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add qianchengjie/execute-task`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qianchengjie/execute-task/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: qianchengjie (https://skillmd.com/u/qianchengjie)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/qianchengjie/execute-task

---


# 任务执行

## 定位

接收一个已经明确的单个软件开发任务，组织其实现、审查与必要返修，并将执行结果返回 Caller。

不负责定义或拆分任务，也不负责后续集成。

## 角色

- **Caller**：提供已经明确的任务，并接收执行结果或需要进一步决定的问题。
- **Controller**：组织任务执行，协调 Implementer、Reviewer、复审者与返修循环。
- **Implementer**：唯一的业务代码修改者，负责实现任务和处理返修。
- **Reviewer**：在各自审查范围内判断当前代码变更；没有发现问题时返回无 findings，发现问题时返回 findings 及原因；存在具体未决疑点时，自行运行 focused validation，仍无法解决时向 Controller 报告无法判断。
  - **General Reviewer**：分别审查需求正确性和实现设计：判断任务要求的结果是否正确、完整地实现以及本次变更是否造成需求层面的回归；判断本次变更形成的实现方案是否合理。
  - **Rules Reviewer**：通过 `rules-review` 审查分配的 caller-defined code scope 是否违反适用的项目 Rules；可以读取必要的范围外 evidence context，但 finding 必须引用具体 Rule 并锚定 scope 内代码。
- **复审者**：独立裁决 finding 是否成立并适用于原任务；适用性须有原任务中的正向证据，否则返回无法判断。

当前执行 `execute-task` 的 agent 承担 Controller。Controller 分别派发 Implementer subagent，以及相互独立且不继承既有会话上下文的 General Reviewer 和 Rules Reviewer subagent；返修继续交给原 Implementer。

## 执行约束

Implementer 不得将本任务范围外的既有修改纳入本任务提交。

Reviewer 的代码审查对象只包含已提交范围。Implementer 完成实现或返修并通过验证后提交本轮变更；一轮可包含多个 commits。无法继续时将原因返回 Controller。

参与复审的 Reviewer 指当前任务中已经完成过审查的 Reviewer。

## 主流程

1. Caller 将已经明确的任务交给 Controller。
2. Controller 记录当前 HEAD 为 BASE，将原始任务和 Caller 已提供的相关上下文交给 Implementer。
3. Implementer 完成实现，将结果返回 Controller。
4. Controller 以原始任务和 BASE..HEAD 为输入，按 General Reviewer、Rules Reviewer 的顺序启动 Full Review；Rules Reviewer 的 judgment scope 是该 BASE..HEAD 代码变更，读取的上下文不扩大 finding scope。
5. 当前 Reviewer 没有发现问题且没有无法验证项时进入下一项审查；发现问题时进入问题复审与返修循环；存在 `cannot_verify` 时，即使同时已有 findings，Controller 也保留两类事实并将未决疑点和当前结果返回 Caller。恢复后，原 Reviewer 继续处理原未决疑点。两项审查均无 findings 和无法验证项后，Controller 将执行结果返回 Caller。

## 问题复审与返修循环

1. Reviewer 将发现的问题及原因返回 Controller；再次提出复审确定的不修改项时，还说明此前不修改原因错误在哪里。
2. Controller 派发不继承既有会话上下文的复审者 Subagent，并向其提供原始任务、BASE..HEAD 及 Reviewer 本轮全部 findings 和原因；同一 finding 再次提出时，还提供此前不修改原因及原 Reviewer 对该原因错误之处的说明。
3. 复审者向 Controller 逐项返回 finding 的成立性、适用性及依据；同一 finding 再次提出且结论不变时，还回应原 Reviewer 对此前结论的异议。复审者对某个 finding 返回无法判断时，Controller 保留本轮其他结论，将该 finding、无法判断原因和当前结果返回 Caller；Caller 补充后继续本轮。
4. 对复审确认成立且适用的 findings，返修不需 Caller 补充任务或合同决定时，Controller 记录当前 HEAD 为 FIX_BASE，并将 findings 及原因交给 Implementer；否则保留 findings 并返回 Caller。
5. 发生返修时，Implementer 完成返修，将处理结果返回 Controller。
6. Controller 发起本轮复审：本轮发生修改时，将 FIX_BASE..HEAD 交给参与复审的 Reviewer；将各 finding 的复审结论及处理结果交给所属 Reviewer。本轮复审完成后仍有 findings 时继续本循环。
7. 主流程中的 Full Review 不计数。复审者完成判断后，Controller 继续自动推进本轮 findings 的处理与复审时，计为启动 1 次自动处理轮次，本轮所有 findings 合计 1 次；因返回 Caller 而未继续自动推进时不计数。最多启动 3 次自动处理轮次；第 3 次结束后仍有 findings 时，Controller 将未收敛的问题和当前结果返回 Caller。

## 返回 Caller

任务完成时，Controller 向 Caller 说明：

- 完成的实现；
- 发生变化的文件；
- 执行过的验证及其结果；
- 各 Reviewer 的审查结果；
- 仍需关注的风险。

任务无法继续时，Controller 返回已经完成的部分、无法继续的原因，以及下一步需要 Caller 决定或补充的内容。

任务完成或明确无法继续时，Controller 返回 Caller 后，`execute-task` 结束。

问题复审与返修循环返回 Caller 时，本次 `execute-task` 仅停止自动推进，等待 Caller 决定。Caller 补充决定未改变原任务的目标、范围或验收时，继续本次 `execute-task`，复用原 Controller、Implementer 和各 Reviewer，自动处理轮次从 0 重新计数；发生变化时结束当前执行，由 Caller 重新发起任务。

