본문으로 건너뛰기
cccskills
무료GitHub에 공개

thinking-scientific-method

When a symptom has several plausible causes, rank falsifiable hypotheses and run the cheapest discriminating observation first; prefer least-assumptive survivors only after evidence fit.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Scientific Method (Hypothesis Differential)

When a symptom could come from several places, enumerate competing falsifiable hypotheses and spend the cheapest observation on the one that best discriminates among them. After each observation, keep only hypotheses that still fit, then prefer the survivor with the fewest unsupported assumptions as the working explanation.

When to Use

  • A bug, incident, or anomaly has more than one plausible cause.
  • You can observe code, logs, diffs, traces, tests, configs, or data now.
  • You must localize the faulty file, function, branch, config, or invariant before fixing.
  • Competing explanations fit the same surface facts and you need a discriminating check.

When NOT to Use

  • Cause is already obvious from a single stack, failing test, or recent diff — fix directly.
  • Only one plausible hypothesis exists — test it; do not invent rivals for ritual.
  • No observation is possible yet — obtain access first; do not speculate a localization.
  • Multi-week experiments, product A/B tests, or policy trials — this skill is for agent-now checks.
  • Fault is already localized and you need systemic root/prevention depth — use five-whys-plus.
  • Selective "only these objects/times" defects better suited to IS/IS-NOT comparison — use Kepner-Tregoe.
  • Representation (doc/dashboard) may be stale versus reality — verify territory with map-territory first, then resume hypotheses.

Procedure

  1. State the symptom precisely. Capture failing behavior, scope, timing, environment, and constraints. Separate observation from interpretation.
  2. Enumerate 2–5 competing hypotheses. Name specific files, functions, configs, input conditions, or invariants. Reject vague buckets ("backend issue"). If no serious alternative remains after a deliberate check, exit this differential and test or fix the sole evidenced cause directly; never fabricate a rival to continue the procedure.
  3. Name falsifiers and cheap observations before looking. For each hypothesis: what result drops it, and what read/grep/diff/log/test check can you run now. Prefer observations available immediately over deploys, canaries, or long waits.
  4. Rank observations by discrimination × cheapness. Run the cheapest check that best separates the top contenders. Do not deep-dive the favorite first if a cheap cross-check would kill alternatives.
  5. Update after each observation. Drop falsified hypotheses. Among survivors that still fit all evidence, prefer the one with the fewest independent unsupported assumptions (extra components, rare timing, external dependencies). Parsimony ranks survivors after fit; it never rescues a leaner hypothesis that evidence already contradicts. Escalate complexity only when simpler survivors are ruled out.
  6. Localize and stop. When one hypothesis has direct supporting evidence and key alternatives are ruled out, name the file/function/config to change and the evidence that localizes it. Stop analyzing once localization is direct.

Output

Symptom: <specific failing behavior, scope, timing>
Hypotheses:
  H1: <specific cause> | Why plausible | Observation | Falsified if
  H2: ...
  H3: ...
Test order: <cheapest discriminating checks>
Results: <what each observation showed>
Survivors: <remaining Hs; least-assumptive working pick among fit>
Localized fault: <file/function/config + supporting evidence>
Ruled out: <Hs dropped and why>

Verification

  • Falsify the differential conclusion if you continued with fewer than two serious hypotheses, if no pre-stated falsifier existed, if a cheaper discriminating check was skipped, or if a "simpler" story was kept after evidence contradicted it.
  • Stop when the fault is directly localized and alternatives that matter are ruled out; do not continue theorizing.
  • Over-application guard: do not narrate observe→question without competing causes; do not treat fewest assumptions as proof; do not run this skill when a single obvious cause is already evidenced.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Use when search or investigation could run forever. Set an explicit good-enough threshold first, then stop at the first option that clears it.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

Use when a specific claim may lack grounding. Check evidence boundary, size wrongness cost, then answer, fetch, or abstain — never confabulate.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

When the right response mode is unclear, classify the cause-effect domain first; decompose disorder.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

Under genuine uncertainty with no reliable forecast, inventory means, cap downside at affordable loss, act for commitments, and let goals emerge from controllable moves.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

When a constraint is treated as fixed, separate physics from convention, keep only independently supported primitives, and rebuild the simplest solution that satisfies real constraints.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

When a fault is localized and the proximate cause is known but the systemic root is not, chain evidence-linked whys with a counterfactual stop and a countermeasure.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

tjboudreaux/cc-thinking-skills1.7천2026년 8월 8일 업데이트

tjboudreaux의 스킬 모두 보기

이 스킬의 문제 신고