From fable5-methodology
Verifies version-sensitive and time-changing facts (APIs, configs, CLI flags, pricing, model IDs) against installed environment and current docs before relying on training memory.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fable5-methodology:research-and-verificationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Training knowledge is a snapshot with a cutoff date. For anything that changes over time, that
Training knowledge is a snapshot with a cutoff date. For anything that changes over time, that snapshot is a HYPOTHESIS, not a fact — and a confident-outdated answer is indistinguishable from a confident-correct one to the reader. That indistinguishability is the whole danger. Verify, or label the guess as a guess.
Must verify (changes over time):
Safe from knowledge (verify only if high-stakes): language fundamentals and syntax, established algorithms and data structures, mathematics, frozen format/protocol standards (HTTP semantics, JSON grammar, SQL basics), general engineering principles.
The tell you're in "must verify": the detail is specific (an exact flag, an exact parameter name, an exact version) and your basis is "it's usually like this". Specific + unsourced = verify or flag.
pip show X / npm ls X / cargo tree; the source in node_modules/
site-packages/vendor; .d.ts type definitions; --help / man. This is ground truth for
THIS project. A grep of existing call sites shows how the API is actually used here.Stop at the first rung that answers the question authoritatively. For "how is this called in our code", rung 1 wins. For "what changed in v3", rung 2–3.
Do not fake confidence. State it as: "unverified training knowledge, may be outdated past my
cutoff", mark it an assumption to confirm, and hand over the exact check: "confirm the flag
with tool --help" / "check the signature in node_modules/x/index.d.ts". A labeled guess is
honest and useful; an unlabeled guess presented as fact is the failure this skill exists to
prevent.
Task: "Configure the retry behavior on our HTTP client."
client.retries = 3 and retry_backoff=2.0. (Plausible, specific,
unsourced — the option is named max_retries in the installed version and backoff is
configured via a transport object; the guess fails at runtime.)httpx==0.27.0. (2) grep the repo → an existing client is built in
http/client.py; it already sets timeouts, showing the construction pattern here. (3) fetch
httpx 0.27 docs → retries are set via httpx.HTTPTransport(retries=3) passed to the client,
and backoff isn't a built-in option (needs a wrapper). Deliver using the repo's pattern +
the transport, and state: "httpx 0.27 has no built-in backoff; retries=3 via HTTPTransport
(verified against 0.27 docs). For exponential backoff we'd add tenacity or a small wrapper
— say the word."Every version-sensitive fact in the deliverable was checked against rung 1 or 2 of the hierarchy this session, or is explicitly labeled unverified-training-knowledge with the exact check the user can run; the installed version was confirmed before applying any docs; and nothing states a specific API/flag/version/price as fact without a source you actually opened.
npx claudepluginhub unpaidattention/fable5-methodologyVerifies version-sensitive facts (APIs, versions, pricing, model IDs, CLI flags, config) against current sources instead of training data. Activates on any question about dates, versions, deprecations, or latest recommendations.
Helps developers classify factual knowledge into verified, confident recall, or plausible reconstruction, providing a verification ladder to prevent hallucinated API usage.
Fetches source-grounded, current docs for library/framework/API implementation details, with fallback strategies for multiple sources.