skills/predict/SKILL.md
Record an explicit predicted observation before a side-effecting tool call. Use whenever you are about to run a command, edit a file, or invoke any tool whose outcome you have not already observed. Upholds the predict-before-act invariant.
npx skillsauth add jason-hchsieh/predictive-mind predictInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Before running the next side-effecting tool call, write down what you expect to observe. The prediction is recorded in the belief-store and reconciled with the actual observation after the tool runs.
Bash, Edit, Write, NotebookEdit, or any tool
with side effects.Read / Grep / Glob if the expected content
materially affects your plan (e.g. "I expect this file to contain
function foo"). For pure exploration reads, skip.action — short description ("Edit src/auth.ts: add null-check on line 42")expected — the specific, FALSIFIABLE observation you predictconfidence — 0..1, ordinal (not probabilistic)belief-store.store_prediction MCP tool with those fields,
plus:
task_id — the current task card's id (from the Cartographer)tool_name — the exact tool name you will invoke ("Bash", "Edit", …)tool_input_hash — optional; lets the hook disambiguate when
multiple predictions target the same toolThe PostToolUse hook automatically reconciles your prediction with the
actual result and computes a surprise score. You do NOT need to call
record_observation yourself.
| Bad (unfalsifiable) | Good (falsifiable) |
|---|---|
| "The tests will pass." | "pytest -q prints 14 passed and exits 0 in under 5s." |
| "The file will have my changes." | "grep -n 'null-check' src/auth.ts matches line 42." |
| "It should work." | "tsc --noEmit prints no errors." |
| "Something will be returned." | "The function returns {ok: true, id: string} with id length 36." |
If you cannot state a falsifiable prediction, your confidence should be
low and you should consider /probe first to ground the belief before
committing to the action.
$ARGUMENTS — the action you are about to take (free text).Your response should:
belief-store.store_prediction with the structured fields.action_id so downstream reconciliation can cite it.tools
Surprise-triggered reflection. When a PostToolUse hook reports high prediction error (surprise >= 0.6), invoke /reflect to update beliefs via the belief-reviser and decide whether to continue, replan, reclarify, or ask the user.
testing
Run a cheap, reversible real probe to ground a belief instead of hallucinating. Use when dreamer confidence is low or when you catch yourself guessing about repository state.
development
Given a goal and a set of candidate next actions, rank them by Expected Free Energy (pragmatic + epistemic value) using past similar episodes, and pick the winner. Delegates scoring to the policy-selector subagent.
testing
Snapshot the current belief state (and optionally git-stash the working tree) under a label, so a risky action can be rolled back if it produces high surprise or breaks acceptance tests.