Install any skill in seconds. Free to start, no credit card required.
Get Started Free →INTERNAL SUBROUTINE — used by h-diagnose for parallel rival-hypothesis generation. Manual invocation possible but the right user-facing entry point is almost always h-diagnose (which uses h-abduct internally with parallel testing). Generates ≥3 typed rival explanations for an observed signal per FPF B.5.2 abductive cycle. Do not auto-select this skill — when failure investigation is needed, select h-diagnose; when problem framing is needed, select h-frame.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -4% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 1% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 29% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -2% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 49% | 0% |
You are running the B.5.2 abductive four-step micro-cycle: frame the prompt → generate candidates → apply plausibility filters → select prime hypothesis. Per CC-B.5.2-2 rivals stay visible; per CC-B.5.2-1 every run starts from a declared typed AbductivePrompt.
Explicit-only — disable-model-invocation: true. The skill is invoked manually when the operator wants the discipline without the parallel-test overhead of h-diagnose.
State the initiating prompt precisely. Per B.5.2.0 the typed species are:
Capture the prompt in writing before generating candidates — otherwise the abduction floats.
Per CC-B.5.2-2 at least one rival required. Aim for 3-5 candidates that differ in kind, not degree. Each candidate states:
If all candidates trend in one direction (all blame the same component), force a rival from a structurally different direction (data flow, race condition, environmental, configuration, infrastructure, etc.).
For each candidate, evaluate against explicit filters. Typical:
Pick at least two filters and apply them. Record the rationale.
Pick one candidate for downstream work. Per CC-B.5.2-1 publish:
U.Episteme at AssuranceLevel:L0In haft kernel this translates to either:
mcp__haft__haft_solution(
action="explore",
problem_ref="<prob-... if existing or framed>",
variants=[
// 3-5 variants, prime hypothesis marked in description
],
no_stepping_stone_rationale="<if no stepping stone among candidates>"
)OR (lighter — just record the abductive cycle without portfolio):
mcp__haft__haft_problem(
action="frame",
signal="<prime hypothesis statement>",
problem_type="diagnosis",
acceptance="prime hypothesis confirmed or falsified by <discriminating probe>",
mode="tactical"
)The lighter path is for exploratory abduction where the operator doesn't yet want full portfolio comparison. The heavier path is when subsequent /h-compare is expected.
Surface to operator:
/h-verify if the prime hypothesis is verifiable against existing evidence/h-explore if rivals deserve deeper variant exploration before commitment/h-decide (manual-only) if the prime is binding and ready to commitLook up via mcp__haft__haft_query(action="fpf", query="B.5.2").
Other measured skills in the registry, with their headline benchmark lift.