From dstoic
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).
npx claudepluginhub digital-stoic-org/agent-skills --plugin dstoicThis skill is limited to using the following tools:
Safe-to-fail experiment in Complex domain. Cause-effect only visible in retrospect — probe to sense patterns, not to prove.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
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 Claude Code 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] → GATE
Probe type (see 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 $THINKING_DIR/probes/{project}/{date}-{slug}-llm.md.
{project} = current project folder name (e.g., agent-skills, gtd-pcm). Create $THINKING_DIR/probes/{project}/ 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.
Guard: If $THINKING_DIR is unset, warn user and skip artifact persistence: ⚠️ $THINKING_DIR not set — artifact not persisted. Set via: export THINKING_DIR="$HOME/dev/praxis/thinking"
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 | probe-to-investigate-llm.md |
| partial (enough signal) | Some evidence, ready for expert analysis | Complex → Complicated | probe-to-investigate-llm.md |
| partial (need another angle) | Some evidence, hypothesis needs sharpening | Complex → Complex (re-probe) | probe-to-probe-llm.md |
| refuted / surprise | Hypothesis failed or unexpected result | Complex → Complex (brainstorm) | probe-to-brainstorm-llm.md |
Handoff token budget: target 300 tokens inline, flex 200-500, hard cap 600. References to $THINKING_DIR files do not count toward cap.
Self-transition: if result is partial and hypothesis can be sharpened, re-invoke /probe via probe-to-probe-llm.md with accumulated context. Prior cycles compressed to 200 tokens at 800-token accumulated cap.
reference.md — probe types, observability format, input quality tableprobe-to-investigate-llm.md — handoff: confirmed/partial → Complicatedprobe-to-brainstorm-llm.md — handoff: refuted/surprise → Complex (brainstorm)probe-to-probe-llm.md — handoff: partial → Complex (self-transition)