discovery

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Discovery Workflow Skill

Discovery Workflow Skill(发现工作流技能)

A workflow type for tasks whose deliverable is a document, not code. Explicitly exempt from the Iron Law (no failing test requirement) because there is nothing to test.
这是一种面向交付物为文档而非代码的任务的工作流类型。明确不受Iron Law(铁律)约束(无失败测试要求),因为没有可测试的内容。

When to Use

适用场景

  • Competitive analyses and market research
  • Architecture comparisons and ADR scaffolding
  • Literature reviews and vendor evaluations
  • Design research that does NOT feed into implementation planning
  • 竞品分析与市场调研
  • 架构对比与ADR框架搭建
  • 文献综述与供应商评估
  • 不直接为实施规划提供输入的设计研究

When NOT to Use

不适用场景

  • If the deliverable includes code changes → use
    /exarchos:oneshot
    or
    /exarchos:ideate
  • If you need TDD enforcement → use any other workflow type
  • If the research feeds directly into implementation → use
    /exarchos:ideate
    (which includes a design phase)
  • 若交付物包含代码变更 → 使用
    /exarchos:oneshot
    /exarchos:ideate
  • 若需要TDD强制要求 → 使用其他任何工作流类型
  • 若研究结果直接为实施提供输入 → 使用
    /exarchos:ideate
    (包含设计阶段)

Phases

阶段划分

Phase 1: Gathering (initial)

阶段1:收集(初始阶段)

Collect sources, references, and raw material for the deliverable.
  1. Define the research question or deliverable scope
  2. Identify and collect sources (URLs, documents, code references)
  3. Record sources in workflow state:
typescript
mcp__exarchos__exarchos_workflow({
  action: "set", featureId: "<id>",
  updates: { "artifacts.sources": ["<source1>", "<source2>", "..."] }
})
  1. Create an outline of the deliverable
Transition: When
artifacts.sources
is a non-empty array →
synthesizing
为交付物收集来源、参考资料和原始素材。
  1. 定义研究问题或交付物范围
  2. 识别并收集来源(URL、文档、代码参考)
  3. 在工作流状态中记录来源:
typescript
mcp__exarchos__exarchos_workflow({
  action: "set", featureId: "<id>",
  updates: { "artifacts.sources": ["<source1>", "<source2>", "..."] }
})
  1. 创建交付物的大纲
阶段转换:
artifacts.sources
为非空数组时 → 进入
整合
阶段

Phase 2: Synthesizing

阶段2:整合

Draft the deliverable document from gathered sources.
  1. Write the document based on gathered sources and outline
  2. Commit the document to the repo (typically under
    docs/research/
    or
    docs/designs/
    )
  3. Record the report path:
typescript
mcp__exarchos__exarchos_workflow({
  action: "set", featureId: "<id>",
  updates: { "artifacts.report": "<path-to-document>" }
})
Transition: When
artifacts.report
is set →
completed
根据收集到的来源起草交付文档。
  1. 基于收集的来源和大纲撰写文档
  2. 将文档提交到代码仓库(通常放在
    docs/research/
    docs/designs/
    目录下)
  3. 记录报告路径:
typescript
mcp__exarchos__exarchos_workflow({
  action: "set", featureId: "<id>",
  updates: { "artifacts.report": "<path-to-document>" }
})
阶段转换:
artifacts.report
设置完成后 → 进入
完成
阶段

Optional: Escalation to Implementation

可选:升级至实施阶段

If discovery surfaces an implementation need:
  1. Note the finding in the report
  2. After completing the discovery workflow, start a new workflow:
    bash
    /ideate <implementation-topic>
    Reference the discovery report as design input.
若发现工作流揭示了实施需求:
  1. 在报告中记录该发现
  2. 完成发现工作流后,启动新的工作流:
    bash
    /ideate <implementation-topic>
    将发现报告作为设计输入进行参考。

Event Emissions

事件推送

Optionally emit events at key moments for observability:
typescript
mcp__exarchos__exarchos_event({
  action: "append", stream: "<featureId>",
  event: { type: "discovery.sources_collected", data: { sourceCount: N } }
})
typescript
mcp__exarchos__exarchos_event({
  action: "append", stream: "<featureId>",
  event: { type: "discovery.report_committed", data: { path: "<report-path>" } }
})
可在关键节点推送事件以实现可观测性:
typescript
mcp__exarchos__exarchos_event({
  action: "append", stream: "<featureId>",
  event: { type: "discovery.sources_collected", data: { sourceCount: N } }
})
typescript
mcp__exarchos__exarchos_event({
  action: "append", stream: "<featureId>",
  event: { type: "discovery.report_committed", data: { path: "<report-path>" } }
})