with one click
plan-discover
// Run the discovery phase of Hypo-Workflow planning when the user needs requirement clarification, constraint gathering, and repo context analysis.
// Run the discovery phase of Hypo-Workflow planning when the user needs requirement clarification, constraint gathering, and repo context analysis.
[HINT] Download the complete skill directory including SKILL.md and all related files
| name | plan-discover |
| description | Run the discovery phase of Hypo-Workflow planning when the user needs requirement clarification, constraint gathering, and repo context analysis. |
📌 输出语言规则: 读取 config.yaml → output.language
Use this skill for P1 Discover only.
P1 Discover begins only after P0 Configure has been run or explicitly reused for the current Cycle. P0 Configure runs after cycle new and before P1 Discover; it asks about automation, Subagent authorization, acceptance mode, PR/MR remote write confirmation, full regression, analysis boundaries, and worker separation. Reuse follows cycle_explicit -> previous_cycle_snapshot -> project_config -> global_config -> built_in_default and must be auditable.
For /hw:plan --batch, this phase becomes Batch Discover. Batch Discover covers multiple Feature candidates in one interview, but it keeps the same interactive hard gates as ordinary Discover.
P0 Configure is the required pre-discover stage for new Cycle planning. It runs after cycle new and before P1 Discover; it can be completed by asking the user or by an explicit reuse decision. The stage covers automation, Subagent authorization, acceptance mode, PR/MR remote write policy, full regression, analysis boundaries, and worker separation. Reuse sources are resolved in order: cycle_explicit, previous_cycle_snapshot, project_config, global_config, built_in_default.
Before diving into details, start with three broad questions:
Only after these are clear should the Agent go deeper into assumptions, ambiguities, tradeoffs, and validation criteria.
The verification question must ask for the 真实测试方法 / real test method, not just "what tests should run". Capture the exact command, tool, scenario, observable pass/fail signal, independent validator, and whether audit must reject pseudo tests.
Discover must also ask for the worker separation / 三权分立 policy before decomposition. Apply platform-specific behavior:
/hw:start and /hw:resume whenever persisted authorization scope is missing, even if execution.worker_separation.mode is already recommended or strictrecommended or strict, what objective unavailability evidence allows degradation, and whether audit can block acceptance when the test worker violates the real test contract/hw:start until authorization is granted, or explicitly confirm switching to the fastest single-agent lane by setting execution.worker_separation.mode=offsubcodex or subclaude, then ask for recommended, strict, or explicit offrecommended, strict, or explicit offFor Codex only: do not default missing authorization to recommended, and do not silently downgrade to off. Missing authorization must produce one explicit P1 outcome before decomposition: authorized recommended, authorized strict, start-blocking gate, or explicit user-confirmed fast/off single-agent mode. P1 must not enter P2 while the Codex execution subworker authorization gate is unresolved.
Also classify the workflow lane in structured notes:
workflow_kind: build | analysis | showcaseworkflow_kind=analysis, set analysis_kind: root_cause | metric | repo_systemUse root_cause for debugging or difference analysis, metric for trends or quantitative comparison, and repo_system for codebase/system investigation. This taxonomy selects the workflow lane; Test Profiles still select validation policy.
Category-specific follow-up:
webapp: ask for E2E path, browser interaction, and visual evidenceagent-service: ask for CLI shape, shared core, and CLI scenarioresearch: ask for baseline, expected direction, validation script, and environment constraintsFor any testable delivery task, Discover must also pin down the closed-loop test plan:
For agent-service work, the real scenario may be outside the repository. If the user says the only valid test is "use NapCat to simulate the main account sending a message to the agent", persist that exact method. A test worker that only runs unit mocks, synthetic fake messages, or a non-user-equivalent path has produced pseudo evidence; the audit worker should reject it.
After the broad questions are answered, decide whether the task needs deep Grill-Me design-concept alignment. Use light Discover for low-risk patches, small incremental features, and narrow docs/config requests.
Escalate to deep Grill-Me only when one or more risk signals are present:
Deep Grill-Me should align concepts before P2 decomposition. It should ask focused questions about:
Do not force deep Grill-Me for every small task.
When Discover confirms durable design concepts, write or update these layers during or after Generate:
.pipeline/design-concepts.yaml: machine-readable concept records with id, term, definition, boundaries, source_of_truth, state_transitions, decision_refs, and prompt_hints..pipeline/glossary.md: human-readable terms, examples, non-examples, and common misunderstandings.Keep layers separate:
.pipeline/architecture.mdKnowledge Ledger indexes design decisions and references; it must not copy full design-concepts or glossary bodies into every context.
interactive: ask questions in rounds and wait for user answersauto: infer from repo context and user prompt without pausing unless blockedlow
medium
high
If plan.interactive.min_rounds is set, use it as an additional floor after resolving interaction_depth. Default interactive depth is medium and default floor is 3 rounds.
❓ 最少提问轮数:
❌ 绝对禁止:
✅ 必须做到:
🚨 进入 P2 的唯一条件: 用户明确表示「够了」「开始吧」「可以了」等结束信号。 如果用户只是回答了你的问题,你应该继续提问,不应该理解为「可以开始了」。
/hw:plan --context <sources> and cycle.yaml context_sources can preload P1 with existing evidence. Supported sources:
audit: read the newest report under .pipeline/audits/patches: read all open Patch files under .pipeline/patches/deferred: read every .pipeline/archives/*/deferred.yaml; also read .pipeline/archives/cycle-0-legacy/summary.md when presentdebug: read the newest report under .pipeline/debug/explore:E001: read .pipeline/explorations/E001-*/summary.md, notes.md, and exploration.yamlContext injection behavior:
Example opening:
基于审计报告 + 3 个 open patch,我看到这些问题:…… 你想全部处理还是只修 Critical?还有其他想加的吗?
When --batch is present:
build, analysis, or showcaseroot_cause, metric, or repo_systemauto or confirmdecompose_mode: upfront or just_in_time.pipeline/feature-queue.yaml until queue confirmation.Required Batch Discover output:
.plan-state/batch-discover.yamlplan/PLAN-SKILL.md — Discover phase baselinereferences/commands-spec.md — command routingSKILL.md — full system context