Safe-to-fail experiment for Complex domain problems where cause-effect is only visible in retrospect. Two-phase: foreground qualify → background probe → sense result. Use when: probe, safe-to-fail, test hypothesis, experiment with hypothesis, Complex domain with hypothesis. NOT for brainstorming (use brainstorm) or known cause-effect (use investigate).
84%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Safe-to-fail experiment in Complex domain. Cause-effect only visible in retrospect — probe to sense patterns, not to prove.
Probing: $ARGUMENTS
Check for handoff context: if $ARGUMENTS references a probe-to-probe-llm.md file, load it before Phase 1 — carried context accelerates qualification.
CRITICAL: After EVERY AskUserQuestion call, check if answers are empty/blank. Known harness bug: outside Plan Mode, AskUserQuestion silently returns empty answers without showing UI.
If answers are empty: DO NOT proceed with assumptions. Instead:
ENTRY GATE: Phase 2 does not start until Phase 1 is complete. No bypass path exists.
Extract from $ARGUMENTS or handoff context:
If no hypothesis present: AskUserQuestion — ask user to state the hypothesis. Do not proceed without one.
Bounds without prescribing path:
Carry forward from prior cycles unchanged unless explicitly updated.
Before running: define observable signals. For each criterion:
Criteria must be defined before Phase 2 executes. Gate on this.
Output:
🔬 Probe → [constraints] → [steps] → [expected patterns] → [confirm/refute criteria] → GATEProbe type (see references/reference.md): architecture | library | prompt | integration | design
AskUserQuestion — one call:
On confirm: Phase 2 executes. On anything else: loop back to 1.1–1.4.
Configuration: isolation: worktree + run_in_background: true
Runs only after Phase 1 entry gate passes.
Run the experiment as defined in Phase 1. Prefer minimal, reversible actions. Gate frequency is SPARSE — enabling constraints bound the agent, not human micromanagement.
Observe results against confirm/refute criteria:
MUST execute before exit gate. DO NOT skip. DO NOT wait for user to ask.
Write probe result to a thinking artifact file in your configured workspace (e.g., thinking/probes/{project}/{date}-{slug}-llm.md).
{project} = current project folder name. Create the directory if missing.
Collision handling: If filename exists, append sequence: {date}-{slug}-2-llm.md, {date}-{slug}-3-llm.md, etc. First write gets clean name.
thinking/probes/{project}/{date}-{slug}-llm.md
thinking/probes/{project}/{date}-{slug}-2-llm.mdGuard: If workspace root is not configured, warn user and skip artifact persistence.
Content: hypothesis + enabling constraints + steps taken + observations + sensed patterns + result classification.
Classify result: confirmed | refuted | partial | surprise
Produce B4-compatible handoff:
| Result | When | Transition | Template |
|---|---|---|---|
| confirmed | Hypothesis holds | Complex → Complicated | references/probe-to-investigate-llm.md |
| partial (enough signal) | Some evidence, ready for expert analysis | Complex → Complicated | references/probe-to-investigate-llm.md |
| partial (need another angle) | Some evidence, hypothesis needs sharpening | Complex → Complex (re-probe) | references/probe-to-probe-llm.md |
| refuted / surprise | Hypothesis failed or unexpected result | Complex → Complex (brainstorm) | references/probe-to-brainstorm-llm.md |
Handoff token budget: target 300 tokens inline, flex 200-500, hard cap 600. References to thinking files do not count toward cap.
Self-transition: if result is partial and hypothesis can be sharpened, re-invoke probe via references/probe-to-probe-llm.md with accumulated context. Prior cycles compressed to 200 tokens at 800-token accumulated cap.
partial or surprise and you need to sharpen the hypothesis before escalating to expert analysis.WHY: The value of a probe is learning at low cost; exposing real users to experimental code defeats this.
BAD: Route 10% of live customer requests to the experimental code path. GOOD: Shadow the calls or run against staging with synthetic data.
WHY: Complex domains resist confirmation; one successful probe is a weak signal, not a decision.
BAD: "It worked once in isolation, so the approach scales."
GOOD: Record the result as confirmed and hand it to investigate for expert analysis.
WHY: Reversibility is the core property that makes probing safe; irreversible probes transfer all risk back to the team.
BAD: Run a destructive schema migration on shared data to see what happens. GOOD: Use a staging branch or feature flag that can be rolled back.
WHY: Without pre-defined criteria, confirmation bias dominates and results are interpreted to fit the hypothesis rather than test it.
BAD: Start executing steps before confirm/refute criteria exist. GOOD: Pass the Phase 1 entry gate with constraints and criteria agreed first.
WHY: Re-running the same experiment expecting different results is wishful thinking, not probing.
BAD: Re-probe a refuted hypothesis with a slightly bigger sample. GOOD: Revise the hypothesis, or route to brainstorm, before the next probe.
WHY: An empty answer means the question was never shown, so any assumption replaces the user's decision.
BAD: Treat blank answers as "Yes" and start Phase 2. GOOD: Present the options as a numbered text list and wait for the reply.
WHY: The artifact is the durable record that makes handoffs and later cycles possible; without it the learning is lost.
BAD: Go straight to the exit gate because the result seems obvious. GOOD: Write the artifact in the configured workspace before classifying and handing off.
WHY: A probe without a falsifiable statement has nothing to confirm or refute, so it produces noise.
BAD: Begin exploring because the topic "feels risky". GOOD: Ask the user to state the hypothesis and do not proceed until one exists.
WHY: The transition encodes what the evidence supports; misrouting sends the next phase down the wrong path.
BAD: Send a refuted or surprise result to investigate.
GOOD: Send refuted and surprise to brainstorm, confirmed and sufficient partial to investigate, and partial needing another angle to probe.
Probing a new caching strategy:
# Problem: unknown whether Redis or Memcached fits the read pattern
# Probe: run both on 1% of traffic for 24h, measure hit rate + latency
# Reversible: yes (feature flag)Probing a service extraction:
# Problem: unclear if extracting auth into a microservice reduces coupling
# Probe: shadow the auth calls for 48h without routing real trafficProbing an LLM prompt strategy:
# Problem: uncertain whether chain-of-thought prompting improves accuracy for this task
# Probe: run 50 test cases through both zero-shot and CoT variants
# Confirm: CoT accuracy >= zero-shot + 10% on held-out eval set
# Refute: no measurable difference, or CoT latency cost exceeds acceptable threshold
# Reversible: yes (eval harness only, no production change)Probing a database schema migration approach:
# Hypothesis: adding a surrogate UUID primary key reduces join complexity in reporting queries
# Step 1: create a staging branch with the new schema
# Step 2: run the existing reporting query suite against staging
./scripts/run-query-benchmarks.sh --env staging --compare main
# Step 3: compare execution plans and latency — confirm/refute threshold: >=20% reduction
# Reversible: yes (staging only, main schema untouched)| Topic | Reference | When to Use |
|---|---|---|
| Probe types and observability | references/reference.md | Classifying the probe type and recording observations |
| Probe to investigate | references/probe-to-investigate-llm.md | Result is confirmed or partial with enough signal |
| Probe to brainstorm | references/probe-to-brainstorm-llm.md | Result is refuted or surprise |
| Probe to probe | references/probe-to-probe-llm.md | Result is partial and the hypothesis needs another angle |
pantheon-org/tekhne
c8416e9
Also appears in
last in sync Aug 28, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.