paseo-epic
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChinesePaseo Epic
Paseo Epic
Heavy-ceremony orchestrator. Runs research → plan → implement → deliver as one resumable flow. The plan file at is the source of truth and survives compaction.
~/.paseo/plans/<slug>.mdUser's request: $ARGUMENTS
重型流程编排器。将调研→规划→实施→交付作为一个可恢复的流程运行。位于的计划文件是唯一可信来源,且在压缩后仍会保留。
~/.paseo/plans/<slug>.md用户请求: $ARGUMENTS
Prerequisites
前置条件
Read the paseo skill — it carries the surface (worktrees, agents, waiting, scheduling, preferences). Every agent you spawn reads it too.
The role and phase-type vocabulary lives in the roles reference shipped with this skill ().
references/roles.md阅读paseo技能文档——它涵盖了基础内容(worktrees、agents、等待机制、调度、偏好设置)。你启动的每个Agent都会读取该文档。
角色和阶段类型的术语定义包含在本技能附带的角色参考文档中()。
references/roles.mdModes
模式
- Default: conversational. Grills, gates between phases, ask before deliver.
- : no grills, no gates, run through deliver. For all-night work.
--autopilot - : isolate the work in a new worktree.
--worktree - : skip clarifying questions; keep gates.
--no-grill
- 默认模式:对话式。各阶段间包含质询(Grill)和关卡(Gate),交付前会询问用户。
- :无质询、无关卡,直接运行至交付阶段。适用于整夜运行的工作。
--autopilot - :在新的worktree中隔离工作内容。
--worktree - :跳过澄清问题;保留关卡机制。
--no-grill
Hard rules
硬性规则
- The plan file is the source of truth. Re-read before every phase.
- You are the only writer to the plan file. Agents don't touch it.
- Provider for every agent comes from orchestration preferences — match the role's category.
- Worktrees only via Paseo. Never run yourself.
git worktree add - Agents do not commit. Delivery happens in the deliver phase.
- Describe problems, not solutions. Tell agents what's broken or needed; let them decide how. No specific line numbers or code snippets in prompts.
- One agent per phase. If a phase needs two, the planner split it wrong.
- Don't poll agents. Wait for them properly.
- 计划文件是唯一可信来源:每个阶段开始前都要重新读取。
- 你是唯一可编辑计划文件的角色:Agents不得修改该文件。
- 每个Agent的提供者来自编排偏好设置——需匹配角色所属类别。
- 仅通过Paseo创建worktree:禁止自行执行命令。
git worktree add - Agents不得提交代码:交付操作仅在交付阶段执行。
- 描述问题,而非解决方案:告知Agents需要修复的问题或需求;由他们决定实现方式。提示中不得包含具体行号或代码片段。
- 每个阶段仅分配一个Agent:若某阶段需要两个Agent,说明规划者拆分有误。
- 不得轮询Agents:需正确等待Agent完成任务。
Flow
流程
[Worktree] → Research → [Grill] → Plan → Adversarial review → [Confirm] → Implement → Deliver
^^^^^^^ ^^^^^^^^^
default mode default mode[Worktree] → 调研 → [质询] → 规划 → 对抗性评审 → [确认] → 实施 → 交付
^^^^^^^ ^^^^^^^^^
默认模式 默认模式1. Research yourself
1. 自行开展调研
Read the code first. Grep the relevant area, read 2–4 key files, understand the current shape.
For ≥3 packages or architectural change, spawn one or two researcher agents — each scoped to one area. Provider from the preference. Tell each researcher to read the roles reference for its mandate, read the area you've assigned, and report files / types / patterns / gotchas. No solutions. No edits.
researchState your own understanding to the user in 2–3 sentences.
首先阅读代码。搜索相关区域,阅读2-4个关键文件,理解当前代码结构。
若涉及≥3个包或架构变更,启动1-2个researcher agents——每个Agent负责一个特定领域。提供者来自偏好设置。告知每个researcher阅读角色参考文档中的职责说明、你分配的领域内容,并汇报文件/类型/模式/潜在问题。不得提供解决方案,不得编辑代码。
research用2-3句话向用户说明你自己的理解。
2. Worktree (if --worktree
)
--worktree2. 创建Worktree(若使用--worktree
)
--worktreeCreate a worktree via Paseo. Record the returned path and branch — they go into the plan frontmatter.
通过Paseo创建worktree。记录返回的路径和分支——它们将被写入计划文件的前置元数据中。
3. Grill (unless --no-grill
or --autopilot
)
--no-grill--autopilot3. 质询环节(除非使用--no-grill
或--autopilot
)
--no-grill--autopilotUse . One at a time, recommended option stated, branches resolved depth-first. Never ask code-answerable questions. Every 3–4 questions, summarize resolved decisions.
AskUserQuestionStop when branches are resolved or the user says "go".
使用工具。每次提出一个问题,给出推荐选项,按深度优先原则解决分支问题。禁止询问可通过代码找到答案的问题。每提出3-4个问题后,总结已确定的决策。
AskUserQuestion当分支问题全部解决或用户说“继续”时停止。
4. Plan with adversarial review
4. 规划与对抗性评审
Spawn a planner
启动planner agent
Persistent — keep iterating, do not archive after the first response. Provider from the preference.
planningPrompt it to:
- Read the roles reference for vocabulary.
- Take the objective and resolved decisions from grill as input.
- Think refactor-first: if existing code doesn't accommodate the change, plan the reshape before the feature. Phases like "wire up", "glue", "integrate" usually mean an upstream refactor was missed.
- Reply terse, one line per phase, in chat — not to disk.
该Agent需保持持久化——持续迭代,不得在首次响应后归档。提供者来自偏好设置。
planning提示内容:
- 阅读角色参考文档中的术语定义。
- 将目标和质询环节确定的决策作为输入。
- 优先考虑重构:若现有代码无法适配变更,需先规划重构,再实现功能。类似“连接”“粘合”“集成”的阶段通常意味着遗漏了上游重构步骤。
- 回复需简洁,每个阶段用一行文字,在对话中回复——不得写入磁盘。
Challenge it
挑战planner的方案
Send follow-ups. Push on edge cases, alternative orderings, smallest shippable slice, bolt-on phases that should be a refactor instead. Iterate until the plan is sharp.
发送跟进问题。针对边缘情况、备选顺序、最小可交付版本、应改为重构的附加阶段提出质疑。迭代直至规划方案精准可行。
Spawn a plan-reviewer
启动plan-reviewer agent
Provider from the preference. Prompt it to:
planning- Read the roles reference.
- Read the planner's draft.
- Challenge it: bolt-ons, missing edge cases, over-engineering, wrong ordering, hidden dependencies. Push for alternatives. Force tradeoffs.
提供者来自偏好设置。提示内容:
planning- 阅读角色参考文档。
- 阅读planner的草稿方案。
- 提出质疑:附加阶段、遗漏的边缘情况、过度设计、错误的顺序、隐藏的依赖关系。推动备选方案,强制权衡取舍。
Surface tradeoffs to the user
向用户呈现权衡选项
Never present raw planner output. Surface the choice:
Planner wants A → B → C (working slice fastest, defers refactor). Reviewer argued for B → A → C (refactor first, slower but cleaner). Which?
Use . Iterate the planner if the user picks differently.
AskUserQuestionArchive the planner and plan-reviewer once the plan is locked.
不得直接展示planner的原始输出。需呈现选择:
Planner建议顺序为A → B → C(最快产出可用版本,推迟重构)。 Reviewer主张顺序为B → A → C(先重构,速度较慢但代码更整洁)。 选择哪种方案?
使用工具。若用户选择不同方案,需让planner重新迭代。
AskUserQuestion规划方案锁定后,归档planner和plan-reviewer agents。
5. Write the plan
5. 编写计划文件
Persist to :
~/.paseo/plans/<slug>.mdmarkdown
---
task: <slug>
status: not-started
worktree: <abs path or null>
branch: <branch or null>
pr: null
created: <ISO>
updated: <ISO>
---将内容持久化至:
~/.paseo/plans/<slug>.mdmarkdown
---
task: <slug>
status: not-started
worktree: <绝对路径或null>
branch: <分支名或null>
pr: null
created: <ISO格式时间>
updated: <ISO格式时间>
---<Title>
<标题>
Objective
目标
<one paragraph>
<一段文字>
Notes
备注
- <ISO> orchestrator: <freeform>
- <ISO格式时间> orchestrator: <自由格式内容>
Phases
阶段
-
Phase 1 · <type> · <short name> Acceptance: <one line>
-
Phase N · gate · user smoke test
-
Phase N+1 · deliver · <commit | PR + merge | cherry-pick>
Phase types: `refactor`, `implement`, `verify`, `gate`, `deliver`. Verify variants written inline: `verify · unslop`, `verify · qa`, `verify · spec`, `verify · review`. See the roles reference.
Status markers: `[ ]` not started, `[~]` in progress, `[x]` done, `[!]` blocked.-
阶段1 · <类型> · <简短名称> 验收标准: <一行文字>
-
阶段N · gate · 用户冒烟测试
-
阶段N+1 · deliver · <commit | PR + merge | cherry-pick>
阶段类型:`refactor`、`implement`、`verify`、`gate`、`deliver`。`verify`的变体需内联写入:`verify · unslop`、`verify · qa`、`verify · spec`、`verify · review`。详情见角色参考文档。
状态标记:`[ ]` 未开始,`[~]` 进行中,`[x]` 已完成,`[!]` 阻塞。6. Confirm (default mode)
6. 确认环节(默认模式)
Show the phase list (not the file contents — they'll read it). 2–3 sentences. Wait.
If : skip.
--autopilot展示阶段列表(无需展示文件内容——用户会自行查看)。用2-3句话说明。等待用户确认。
若使用:跳过此环节。
--autopilot7. Implement
7. 实施阶段
Loop: find next undone phase → mark → dispatch by type → wait → verify → mark → repeat.
[~][x]Stop when: a phase is reached, all phases , or a phase is blocked and you can't unblock it.
gate[x][!]循环流程:找到下一个未完成阶段 → 标记为 → 按类型分配任务 → 等待完成 → 验证 → 标记为 → 重复。
[~][x]停止条件:到达阶段、所有阶段标记为,或某阶段标记为且无法解除阻塞。
gate[x][!]Dispatch by phase type
按阶段类型分配任务
refactor
refactor(重构)
Spawn a refactorer. Provider from (or for styling-only reshapes). cwd = the worktree path if set. Tell it to:
implui- Read the roles reference and load the skills it names.
- Read the plan file. Scope is Phase N; acceptance is pinned there.
- Reshape, not feature: behavior identical before and after. Existing tests stay green. Add a parity test if missing.
- When done: typecheck pass + relevant tests green. Do not commit. Do not update the plan.
启动refactorer agent。提供者来自(若仅涉及样式重构则来自)。工作目录(cwd)= 已设置的worktree路径。提示内容:
implui- 阅读角色参考文档并加载指定的技能。
- 阅读计划文件。范围为第N阶段;验收标准以文件中为准。
- 仅重构,不添加功能:重构前后行为完全一致。现有测试需保持通过。若缺少对等测试需补充。
- 完成标准:类型检查通过 + 相关测试全部通过。不得提交代码。不得更新计划文件。
implement
implement(实现)
Spawn an impl agent. Provider from (or for styling-only). cwd = the worktree path if set. Tell it to:
implui- Read the roles reference and load the skills it names.
- Read the plan file. Scope is Phase N.
- Read any plan-relevant repo docs by path.
- TDD: failing test first, then make it pass.
- If the existing shape doesn't accommodate the change, push back instead of bolting on — a refactor phase should have come first.
- When done: typecheck + every test it touched green. Do not commit. Do not update the plan.
启动impl agent。提供者来自(若仅涉及样式实现则来自)。工作目录(cwd)= 已设置的worktree路径。提示内容:
implui- 阅读角色参考文档并加载指定的技能。
- 阅读计划文件。范围为第N阶段。
- 阅读计划相关的仓库文档(按路径指定)。
- 采用TDD:先编写失败的测试,再实现代码使其通过。
- 若现有代码结构无法适配变更,需提出反馈而非强行添加——说明应先执行重构阶段。
- 完成标准:类型检查通过 + 所有涉及的测试全部通过。不得提交代码。不得更新计划文件。
verify
verify(验证)
Spawn an auditor matching the variant after . Provider from . The roles reference's variant table tells the auditor what to load and what to output. Read-only — no edits.
verify ·audit启动与后变体匹配的auditor agent。提供者来自。角色参考文档中的变体表会告知auditor需加载的内容和输出要求。仅读取——不得编辑。
verify ·auditgate
gate(关卡)
No agent. Yield to the user.
- Mark this phase .
[x] - Compose handoff: worktree path (if set), what to test (next phase's acceptance, or this phase's Notes), how to resume (once satisfied, or edit the plan first).
/epic <slug> - Exit cleanly. Don't launch the next phase. Don't poll.
无需Agent。将控制权交还给用户。
- 将此阶段标记为。
[x] - 编写交接内容:worktree路径(若已设置)、需测试的内容(下一阶段的验收标准,或此阶段的备注)、恢复方式(满意后执行,或先编辑计划文件)。
/epic <slug> - 干净退出。不得启动下一阶段。不得轮询。
deliver
deliver(交付)
Inline — see Section 8.
内联处理——见第8节。
Verifying agent output
验证Agent输出
For and :
refactorimplement- Read the agent's final activity.
- Confirm acceptance: typecheck + tests green, what was touched matches the phase.
- Wrong → send a follow-up to the same agent. Don't launch a new one for course-corrections.
- OK → archive.
For :
verify- Green → mark the audited phase , advance.
[x] - Issues → append findings to Notes. Do not mark the phase done. Either send the impl agent the findings as new acceptance, or surface to the user if ambiguous.
对于和阶段:
refactorimplement- 阅读Agent的最终活动记录。
- 确认验收标准:类型检查通过 + 测试全部通过,修改内容与阶段范围匹配。
- 不符合要求 → 向同一Agent发送跟进提示。不得为修正问题启动新的Agent。
- 符合要求 → 归档Agent。
对于阶段:
verify- 验证通过 → 将被审计的阶段标记为,进入下一阶段。
[x] - 发现问题 → 将结果追加至备注。不得标记阶段为已完成。要么将发现的问题作为新的验收标准发送给impl agent,若存在歧义则告知用户。
When the user interjects
用户中途干预时的处理
- Feedback on a running agent → forward to it.
- Plan change → edit the plan file (add/remove/reorder), tell them what changed, continue.
- "Stop" / "kill" → archive running agents, summarize state, wait.
- New question → answer briefly, continue.
The plan file lets a fresh orchestrator pick up if the user kills you and reinvokes — write everything important to Notes immediately.
- 对运行中Agent的反馈 → 转发给该Agent。
- 修改计划 → 编辑计划文件(添加/删除/重新排序阶段),告知用户变更内容,继续执行。
- 「停止」/「终止」 → 归档运行中的Agent,总结当前状态,等待用户指令。
- 新问题 → 简要回答,继续执行。
若用户终止并重新调用,新的编排器可通过计划文件恢复任务——需立即将所有重要内容写入备注。
8. Deliver
8. 交付阶段
Read frontmatter to choose mode:
worktree: null → Mode A: main commit
worktree: <path> → Mode B (PR) or Mode C (cherry-pick); ask if not specifiedNever push to main directly. Never force-push without explicit permission. Never merge before CI is green. Archive worktrees via Paseo, never .
git worktree remove读取前置元数据选择交付模式:
worktree: null → 模式A:主分支提交
worktree: <路径> → 模式B(PR)或模式C(cherry-pick);若未指定则询问用户禁止直接推送到主分支。禁止未经明确许可强行推送。CI未通过前禁止合并。仅通过Paseo归档worktrees,禁止使用。
git worktree removeMode A — main commit
模式A — 主分支提交
- — confirm related changes.
git status - — review.
git diff - Draft a commit message: title <70 chars imperative; body 1–3 sentences why; match repo style ().
git log --oneline -20 - — never
git add <specific files>or-A.. - (HEREDOC).
git commit -m "..." - Update plan: . Append a Notes line.
status: delivered - Tell user: hash + summary. Ask about push.
- — 确认相关变更。
git status - — 审查变更内容。
git diff - 编写提交信息:标题(≤70字符,祈使语气);正文(1-3句话说明原因);匹配仓库风格(可参考)。
git log --oneline -20 - — 禁止使用
git add <指定文件>或-A。. - (使用HEREDOC格式)。
git commit -m "..." - 更新计划文件:。在备注中追加一行记录。
status: delivered - 告知用户:提交哈希 + 摘要。询问是否推送。
Mode B — worktree → PR + merge
模式B — worktree → PR + 合并
- Commit cleanly in the worktree. One tidy commit per logical change. Match repo style.
- Rebase if behind main. Spawn an agent that loads the rebase skill. Provider from . Tell it to rebase onto origin/main, resolve conflicts by intent (never blanket-accept one side), confirm typecheck and tests still pass, do not push.
impl - Push the branch — .
git -C <worktree> push -u origin <branch-from-frontmatter> - Open the PR — with summary from plan Objective + Phases and test plan from acceptance lines. Capture URL → frontmatter
gh pr create. Status →pr:.pr-open - Monitor CI. Either watch directly (), or spawn a fix-build agent that loads the fix-build skill. Provider from
gh pr checks <n> --watch. Tell it to drive the PR to green: when checks fail, read failure logs, fix, push, repeat. Don't merge — your call. When green: append Notes, frontmatterimpl.status: ready-to-merge - Merge when green — ask the user (: squash / rebase / merge / wait). Read repo convention from recent merged PRs (
AskUserQuestion).gh pr list --state merged -L 5 --json mergeCommit,titlebashgh pr merge <n> --squash --delete-branch - Archive the worktree via Paseo. Frontmatter: ,
status: delivered. Append a Notes line.worktree: null
- 在worktree中干净提交:每个逻辑变更对应一个整洁的提交。匹配仓库风格。
- 若落后于主分支则进行Rebase:启动加载rebase技能的Agent。提供者来自。提示内容:基于origin/main进行rebase,根据意图解决冲突(不得单方面接受某一方的内容),确认类型检查和测试仍全部通过,不得推送。
impl - 推送分支 — 。
git -C <worktree> push -u origin <前置元数据中的分支名> - 创建PR — 使用,摘要来自计划文件的目标和阶段,测试计划来自验收标准行。记录URL → 写入前置元数据
gh pr create。状态更新为pr:。pr-open - 监控CI:要么直接监控(),要么启动加载fix-build技能的fix-build agent。提供者来自
gh pr checks <n> --watch。提示内容:推动PR至CI通过:当检查失败时,读取失败日志,修复问题,推送,重复此过程。禁止合并——由你决定时机。 CI通过后:追加备注,前置元数据impl。status: ready-to-merge - CI通过后合并 — 询问用户(:压缩合并/重定基合并/普通合并/等待)。从最近合并的PR中读取仓库惯例(
AskUserQuestion)。gh pr list --state merged -L 5 --json mergeCommit,titlebashgh pr merge <n> --squash --delete-branch - 通过Paseo归档worktree。前置元数据:,
status: delivered。在备注中追加一行记录。worktree: null
Mode C — worktree → cherry-pick
模式C — worktree → cherry-pick
- Commit cleanly in the worktree (single clean commit per logical change).
- From the main checkout (don't ):
cd. For multiple:git cherry-pick <sha>.git cherry-pick <oldest>..<newest> - Conflicts → stop, tell the user. Don't auto-resolve.
- Archive the worktree via Paseo. Frontmatter: ,
status: delivered. Ask about push.worktree: null
- 在worktree中干净提交(每个逻辑变更对应一个整洁的提交)。
- 在主分支检出目录中执行(无需):
cd。多个提交则使用:git cherry-pick <提交哈希>。git cherry-pick <最早提交>..<最新提交> - 若出现冲突 → 停止操作,告知用户。禁止自动解决冲突。
- 通过Paseo归档worktree。前置元数据:,
status: delivered。询问是否推送。worktree: null
Resumability
可恢复性
The user can interrupt or kill at any phase. New invocation:
- Find the plan by slug (or most recently updated).
- Read frontmatter and the first non-done phase.
status - Resume from the matching phase.
Mid-deliver resumption:
- +
status: pr-open→ resume CI monitoring.pr: <url> - → ask the user to merge again.
status: ready-to-merge - +
status: delivered→ worktree wasn't archived, do that.worktree: <path>
用户可在任意阶段中断或终止任务。重新调用时:
- 通过slug查找计划文件(或使用最近更新的文件)。
- 读取前置元数据中的和第一个未完成阶段。
status - 从对应阶段恢复任务。
交付阶段中途恢复:
- +
status: pr-open→ 恢复CI监控。pr: <URL> - → 再次询问用户是否合并。
status: ready-to-merge - +
status: delivered→ worktree未归档,执行归档操作。worktree: <路径>
Failure modes
失败模式
- Treating phases as a checklist to grind through. They're gates. Verify before advancing.
- Forgetting to set the agent's cwd to the worktree path in worktree mode.
- Re-explaining the plan to the user. They wrote it with you. Reference phases by number.
- Polling agents instead of waiting properly.
- Editing code yourself. You orchestrate. Agents implement.
- Marking before the worktree is actually archived.
status: delivered - Pushing to main directly.
- 将阶段视为需快速完成的清单:阶段是关卡,推进前必须验证。
- 在worktree模式下忘记将Agent的工作目录设置为worktree路径。
- 向用户重复解释计划:计划是与用户共同制定的,只需通过阶段编号引用即可。
- 轮询Agents而非正确等待。
- 自行编辑代码:你的职责是编排,由Agents负责实现。
- worktree实际未归档前就标记。
status: delivered - 直接推送到主分支。