propose-hypotheses

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Propose Hypotheses Workflow

假设提出工作流

Execute the First Principles Framework (FPF) cycle: generate competing hypotheses, verify logic, validate evidence, audit trust, and produce a decision.
执行第一性原理框架(FPF)周期:生成竞争性假设、验证逻辑、验证证据、审核可信度并得出决策。

User Input

用户输入

text
Problem Statement: $ARGUMENTS
text
问题陈述: $ARGUMENTS

Workflow Execution

工作流执行

Step 1a: Create Directory Structure (Main Agent)

步骤1a:创建目录结构(主Agent)

Create
.fpf/
directory structure if it does not exist:
bash
mkdir -p .fpf/{evidence,decisions,sessions,knowledge/{L0,L1,L2,invalid}}
touch .fpf/{evidence,decisions,sessions,knowledge/{L0,L1,L2,invalid}}/.gitkeep
Postcondition:
.fpf/
directory scaffold exists.

如果不存在则创建
.fpf/
目录结构:
bash
mkdir -p .fpf/{evidence,decisions,sessions,knowledge/{L0,L1,L2,invalid}}
touch .fpf/{evidence,decisions,sessions,knowledge/{L0,L1,L2,invalid}}/.gitkeep
后置条件
.fpf/
目录框架已存在。

Step 1b: Initialize Context (FPF Agent)

步骤1b:初始化上下文(FPF Agent)

Launch fpf-agent with sonnet[1m] model:
  • Description: "Initialize FPF context"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/init-context.md and execute.
    
    Problem Statement: $ARGUMENTS
    
    **Write**: Context summary to `.fpf/context.md`**

使用sonnet[1m]模型启动fpf-agent:
  • 描述:"初始化FPF上下文"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/init-context.md并执行。
    
    问题陈述: $ARGUMENTS
    
    **写入**:将上下文摘要写入`.fpf/context.md`

Step 2: Generate Hypotheses (FPF Agent)

步骤2:生成假设(FPF Agent)

Launch fpf-agent with sonnet[1m] model:
  • Description: "Generate L0 hypotheses"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/generate-hypotheses.md and execute.
    
    Problem Statement: $ARGUMENTS
    Context: <summary from Step 1b>
    
    **Write**: List of hypothesis IDs and titles to `.fpf/knowledge/L0/`
    
    Reply with summary table in markdown format:
    
      | ID | Title | Kind | Scope |
      |----|-------|------|-------|
      | ... | ... | ... | ... |

使用sonnet[1m]模型启动fpf-agent:
  • 描述:"生成L0假设"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/generate-hypotheses.md并执行。
    
    问题陈述: $ARGUMENTS
    上下文: <步骤1b的摘要>
    
    **写入**:将假设ID和标题列表写入`.fpf/knowledge/L0/`
    
    以markdown格式回复摘要表格:
    
      | ID | 标题 | 类型 | 范围 |
      |----|-------|------|-------|
      | ... | ... | ... | ... |

Step 3: Present Summary (Main Agent)

步骤3:呈现摘要(主Agent)

  1. Read all L0 hypothesis files from
    .fpf/knowledge/L0/
  2. Present summary table from agent response.
  3. Ask user: "Would you like to add any hypotheses of your own? (yes/no)"

  1. 读取
    .fpf/knowledge/L0/
    中的所有L0假设文件
  2. 呈现Agent返回的摘要表格
  3. 询问用户:"是否要添加您自己的假设?(是/否)"

Step 4: Add User Hypothesis (FPF Agent, Conditional Loop)

步骤4:添加用户假设(FPF Agent,条件循环)

Condition: User says yes to adding hypotheses.
Launch fpf-agent with sonnet[1m] model:
  • Description: "Add user hypothesis"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/add-user-hypothesis.md and execute.
    
    User Hypothesis Description: <get from user>
    
    **Write**: User hypothesis to `.fpf/knowledge/L0/`
Loop: Return to Step 3 after hypothesis is added.
Exit: When user says no or declines to add more.

条件:用户同意添加假设。
使用sonnet[1m]模型启动fpf-agent:
  • 描述:"添加用户假设"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/add-user-hypothesis.md并执行。
    
    用户假设描述: <从用户处获取>
    
    **写入**:将用户假设写入`.fpf/knowledge/L0/`
循环:添加假设后返回步骤3。
退出:当用户说否或拒绝添加更多假设时。

Step 5: Verify Logic (Parallel Sub-Agents)

步骤5:验证逻辑(并行子Agent)

Condition: User finished adding hypotheses.
For EACH L0 hypothesis file in
.fpf/knowledge/L0/
, launch parallel fpf-agent with sonnet[1m] model:
  • Description: "Verify hypothesis: <hypothesis-id>"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/verify-logic.md and execute.
    
    Hypothesis ID: <hypothesis-id>
    Hypothesis File: .fpf/knowledge/L0/<hypothesis-id>.md
    
    **Move**: After you complete verification, move the file to `.fpf/knowledge/L1/` or `.fpf/knowledge/invalid/`.
Wait for all agents, then check that files are moved to
.fpf/knowledge/L1/
or
.fpf/knowledge/invalid/
.

条件:用户完成假设添加。
对于
.fpf/knowledge/L0/
中的每个L0假设文件,并行启动使用sonnet[1m]模型的fpf-agent:
  • 描述:"验证假设: <hypothesis-id>"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/verify-logic.md并执行。
    
    假设ID: <hypothesis-id>
    假设文件: .fpf/knowledge/L0/<hypothesis-id>.md
    
    **移动**:完成验证后,将文件移动到`.fpf/knowledge/L1/`或`.fpf/knowledge/invalid/`。
等待所有Agent完成,然后检查文件是否已移动到
.fpf/knowledge/L1/
.fpf/knowledge/invalid/

Step 6: Validate Evidence (Parallel Sub-Agents)

步骤6:验证证据(并行子Agent)

For EACH L1 hypothesis file in
.fpf/knowledge/L1/
, launch parallel fpf-agent with sonnet[1m] model:
  • Description: "Validate hypothesis: <hypothesis-id>"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/validate-evidence.md and execute.
    
    Hypothesis ID: <hypothesis-id>
    Hypothesis File: .fpf/knowledge/L1/<hypothesis-id>.md
    
    **Move**: After you complete validation, move the file to `.fpf/knowledge/L2/` or `.fpf/knowledge/invalid/`.
Wait for all agents, then check that files are moved to
.fpf/knowledge/L2/
or
.fpf/knowledge/invalid/
.

对于
.fpf/knowledge/L1/
中的每个L1假设文件,并行启动使用sonnet[1m]模型的fpf-agent:
  • 描述:"验证假设: <hypothesis-id>"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/validate-evidence.md并执行。
    
    假设ID: <hypothesis-id>
    假设文件: .fpf/knowledge/L1/<hypothesis-id>.md
    
    **移动**:完成验证后,将文件移动到`.fpf/knowledge/L2/`或`.fpf/knowledge/invalid/`。
等待所有Agent完成,然后检查文件是否已移动到
.fpf/knowledge/L2/
.fpf/knowledge/invalid/

Step 7: Audit Trust (Parallel Sub-Agents)

步骤7:审核可信度(并行子Agent)

For EACH L2 hypothesis file in
.fpf/knowledge/L2/
, launch parallel fpf-agent with sonnet[1m] model:
  • Description: "Audit trust: <hypothesis-id>"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/audit-trust.md and execute.
    
    Hypothesis ID: <hypothesis-id>
    Hypothesis File: .fpf/knowledge/L2/<hypothesis-id>.md
    
    **Write**: Audit report to `.fpf/evidence/audit-{hypothesis-id}-{YYYY-MM-DD}.md`
    
    **Reply**: with R_eff score and weakest link
Wait for all agents, then check that audit reports are created in
.fpf/evidence/
.

对于
.fpf/knowledge/L2/
中的每个L2假设文件,并行启动使用sonnet[1m]模型的fpf-agent:
  • 描述:"审核可信度: <hypothesis-id>"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/audit-trust.md并执行。
    
    假设ID: <hypothesis-id>
    假设文件: .fpf/knowledge/L2/<hypothesis-id>.md
    
    **写入**:将审核报告写入`.fpf/evidence/audit-{hypothesis-id}-{YYYY-MM-DD}.md`
    
    **回复**:提供R_eff分数和最薄弱环节
等待所有Agent完成,然后检查
.fpf/evidence/
中是否已创建审核报告。

Step 8: Make Decision (FPF Agent)

步骤8:做出决策(FPF Agent)

Launch fpf-agent with sonnet[1m] model:
  • Description: "Create decision record"
  • Prompt:
    Read ${CLAUDE_PLUGIN_ROOT}/tasks/decide.md and execute.
    
    Problem Statement: $ARGUMENTS
    L2 Hypotheses Directory: .fpf/knowledge/L2/
    Audit Reports: .fpf/evidence/
    
    **Write**: Decision record to `.fpf/decisions/`
    
    **Reply**: with decision record summary in markdown format:
    
    | Hypothesis | R_eff | Weakest Link | Status |
    |------------|-------|--------------|--------|
    | ... | ... | ... | ... |
    
    **Recommended Decision**: <hypothesis title>
    
    **Rationale**: <brief explanation>

Wait for agent, then check that decision record is created in
.fpf/decisions/
.

使用sonnet[1m]模型启动fpf-agent:
  • 描述:"创建决策记录"
  • 提示
    读取${CLAUDE_PLUGIN_ROOT}/tasks/decide.md并执行。
    
    问题陈述: $ARGUMENTS
    L2假设目录: .fpf/knowledge/L2/
    审核报告: .fpf/evidence/
    
    **写入**:将决策记录写入`.fpf/decisions/`
    
    以markdown格式回复决策记录摘要:
    
    | 假设 | R_eff | 最薄弱环节 | 状态 |
    |------------|-------|--------------|--------|
    | ... | ... | ... | ... |
    
    **推荐决策**: <假设标题>
    
    **理由**: <简要说明>

等待Agent完成,然后检查
.fpf/decisions/
中是否已创建决策记录。

Step 9: Present Final Summary (Main Agent)

步骤9:呈现最终摘要(主Agent)

  1. Read the DRR from
    .fpf/decisions/
  2. Present results from agent response.
  3. Present next steps:
    • Implement the selected hypothesis
    • Use
      /fpf:status
      to check FPF state
    • Use
      /fpf:actualize
      if codebase changes
  4. Ask user if he agree with the decision, if not launch fpf-agent at step 8 with instruction to modify the decision as user wants.

  1. 读取
    .fpf/decisions/
    中的DRR(设计理由记录)
  2. 呈现Agent返回的结果
  3. 呈现后续步骤:
    • 实施选定的假设
    • 使用
      /fpf:status
      检查FPF状态
    • 如果代码库有变更,使用
      /fpf:actualize
  4. 询问用户是否同意该决策,如果不同意,则从步骤8启动fpf-agent,并指示其按照用户要求修改决策。

Completion

完成

Workflow complete when:
  • .fpf/
    directory structure exists
  • Context recorded in
    .fpf/context.md
  • Hypotheses generated, verified, validated, and audited
  • DRR created in
    .fpf/decisions/
  • Final summary presented to user
Artifacts Created:
  • .fpf/context.md
    - Problem context
  • .fpf/knowledge/L0/*.md
    - Initial hypotheses
  • .fpf/knowledge/L1/*.md
    - Verified hypotheses
  • .fpf/knowledge/L2/*.md
    - Validated hypotheses
  • .fpf/knowledge/invalid/*.md
    - Rejected hypotheses
  • .fpf/evidence/*.md
    - Evidence files
  • .fpf/decisions/*.md
    - Design Rationale Record
满足以下条件时工作流完成:
  • .fpf/
    目录结构已存在
  • 上下文已记录在
    .fpf/context.md
  • 假设已生成、验证、确认并审核
  • DRR已创建在
    .fpf/decisions/
  • 已向用户呈现最终摘要
生成的工件
  • .fpf/context.md
    - 问题上下文
  • .fpf/knowledge/L0/*.md
    - 初始假设
  • .fpf/knowledge/L1/*.md
    - 已验证假设
  • .fpf/knowledge/L2/*.md
    - 已确认假设
  • .fpf/knowledge/invalid/*.md
    - 已拒绝假设
  • .fpf/evidence/*.md
    - 证据文件
  • .fpf/decisions/*.md
    - 设计理由记录(DRR)