fpf:propose-hypotheses▌
neolabhq/context-engineering-kit · updated Apr 8, 2026
Execute the First Principles Framework (FPF) cycle: generate competing hypotheses, verify logic, validate evidence, audit trust, and produce a decision.
Propose Hypotheses Workflow
Execute the First Principles Framework (FPF) cycle: generate competing hypotheses, verify logic, validate evidence, audit trust, and produce a decision.
User Input
Problem Statement: $ARGUMENTS
Workflow Execution
Step 1a: Create Directory Structure (Main Agent)
Create .fpf/ directory structure if it does not exist:
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.
Step 1b: Initialize Context (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`**
Step 2: Generate Hypotheses (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 | |----|-------|------|-------| | ... | ... | ... | ... |
Step 3: Present Summary (Main Agent)
- Read all L0 hypothesis files from
.fpf/knowledge/L0/ - Present summary table from agent response.
- Ask user: "Would you like to add any hypotheses of your own? (yes/no)"
Step 4: Add User Hypothesis (FPF Agent, Conditional Loop)
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.
Step 5: Verify Logic (Parallel Sub-Agents)
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: "
- 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/.
Step 6: Validate Evidence (Parallel Sub-Agents)
For EACH L1 hypothesis file in .fpf/knowledge/L1/, launch parallel fpf-agent with sonnet[1m] model:
- Description: "Validate hypothesis: "
- 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/.
Step 7: Audit Trust (Parallel Sub-Agents)
For EACH L2 hypothesis file in .fpf/knowledge/L2/, launch parallel fpf-agent with sonnet[1m] model:
- Description: "Audit trust: "
- 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/.
Step 8: Make Decision (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/.
Step 9: Present Final Summary (Main Agent)
- Read the DRR from
.fpf/decisions/ - Present results from agent response.
- Present next steps:
- Implement the selected hypothesis
- Use
/fpf:statusto check FPF state - Use
/fpf:actualizeif codebase changes
- 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.
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
Ratings
4.5★★★★★10 reviews- ★★★★★Shikha Mishra· Oct 10, 2024
fpf:propose-hypotheses is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
- ★★★★★Piyush G· Sep 9, 2024
Keeps context tight: fpf:propose-hypotheses is the kind of skill you can hand to a new teammate without a long onboarding doc.
- ★★★★★Chaitanya Patil· Aug 8, 2024
Registry listing for fpf:propose-hypotheses matched our evaluation — installs cleanly and behaves as described in the markdown.
- ★★★★★Sakshi Patil· Jul 7, 2024
fpf:propose-hypotheses reduced setup friction for our internal harness; good balance of opinion and flexibility.
- ★★★★★Ganesh Mohane· Jun 6, 2024
I recommend fpf:propose-hypotheses for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
- ★★★★★Oshnikdeep· May 5, 2024
Useful defaults in fpf:propose-hypotheses — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
- ★★★★★Dhruvi Jain· Apr 4, 2024
fpf:propose-hypotheses has been reliable in day-to-day use. Documentation quality is above average for community skills.
- ★★★★★Rahul Santra· Mar 3, 2024
Solid pick for teams standardizing on skills: fpf:propose-hypotheses is focused, and the summary matches what you get after install.
- ★★★★★Pratham Ware· Feb 2, 2024
We added fpf:propose-hypotheses from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
- ★★★★★Yash Thakker· Jan 1, 2024
fpf:propose-hypotheses fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.