When the user wants to explore alternative interfaces for a chosen deepening candidate, use this parallel sub-agent pattern. Based on "Design It Twice" (Ousterhout) — your first idea is unlikely to be the best.
当用户想为选定的加深候选项探索替代接口时,使用这个并行子代理模式。基于"设计两次"(Ousterhout)——你的第一个想法不太可能是最好的。
Uses the vocabulary in SKILL.md — module, interface, seam, adapter, leverage.
使用 SKILL.md 中的词汇——模块、接口、接缝、适配器、杠杆收益。
Before spawning sub-agents, write a user-facing explanation of the problem space for the chosen candidate:
在生成子代理之前,为所选候选项写一份面向用户的问题空间说明:
Show this to the user, then immediately proceed to Step 2. The user reads and thinks while the sub-agents work in parallel.
向用户展示这些内容,然后立即进入步骤 2。用户在阅读和思考的同时,子代理并行工作。
Spawn 3+ sub-agents in parallel using the Agent tool. Each must produce a radically different interface for the deepened module.
使用 Agent 工具并行生成 3 个以上的子代理。每个子代理必须为加深后的模块生成一个截然不同的接口。
Prompt each sub-agent with a separate technical brief (file paths, coupling details, dependency category from DEEPENING.md, what sits behind the seam). The brief is independent of the user-facing problem-space explanation in Step 1. Give each agent a different design constraint:
为每个子代理提供单独的技术简报(文件路径、耦合细节、来自 DEEPENING.md 的依赖类别、接缝背后的内容)。简报独立于步骤 1 中面向用户的问题空间说明。给每个代理不同的设计约束:
Include both SKILL.md vocabulary and CONTEXT.md vocabulary in the brief so each sub-agent names things consistently with the architecture language and the project's domain language.
在简报中同时包含 SKILL.md 词汇和 CONTEXT.md 词汇,使每个子代理的命名与架构语言和项目的领域语言保持一致。
Each sub-agent outputs:
每个子代理输出以下内容:
Present designs sequentially so the user can absorb each one, then compare them in prose. Contrast by depth (leverage at the interface), locality (where change concentrates), and seam placement.
依次展示设计,让用户逐一消化,然后用文字进行比较。按深度(接口处的杠杆收益)、局部性(变更集中的地方)和接缝位置进行对比。
After comparing, give your own recommendation: which design you think is strongest and why. If elements from different designs would combine well, propose a hybrid. Be opinionated — the user wants a strong read, not a menu.
比较之后,给出你自己的推荐:你认为哪个设计最强以及为什么。如果不同设计的元素可以很好地组合,提出一个混合方案。要有主见——用户想要的是有力的判断,而不是一个菜单。