
Scientific Method
FreeA structured approach to problem-solving using the scientific method.
Free Β· Opens the source repo
What Scientific Method does
The Scientific Method skill applies a rigorous, structured approach to problem-solving based on the principles of the scientific method. It emphasizes defining clear goals, generating multiple competing hypotheses, designing experiments that can fail, and measuring outcomes honestly. This skill provides a framework that scales from small tasks like test-driven development (TDD) to larger projects such as minimum viable product (MVP) launches. By following this method, users can ensure they are not just guessing but are instead making informed decisions based on data and analysis.
The skill includes seven core workflows that guide users through the problem-solving cycle: defining the goal, generating hypotheses, designing experiments, measuring results, analyzing data, iterating based on findings, and executing a full cycle of investigation. Additionally, it offers two diagnostic workflows for quick debugging and structured investigations, making it versatile for various scenarios. This is particularly useful for developers, researchers, and product managers who need to validate ideas and optimize solutions systematically.
In practice, the skill helps users avoid common pitfalls of confirmation bias and vague goal-setting. By mandating a minimum of three hypotheses before testing, it encourages a more thorough exploration of potential solutions. The structured cycle ensures that users can iterate effectively, learning from each round of testing and refining their approaches based on measurable outcomes. This disciplined methodology fosters a culture of experimentation and continuous improvement, which is crucial in fast-paced development environments.
Whether you're troubleshooting a specific issue or working on a broader project, the Scientific Method skill equips you with the tools needed to make data-driven decisions and achieve your objectives efficiently. It is an essential resource for anyone looking to enhance their problem-solving capabilities using a scientific approach.
When to use it
Use this skill when you need to define goals, generate hypotheses, and conduct experiments to validate ideas.
When not to use it
This skill is not suitable for situations requiring multi-angle analysis or when quick, iterative testing is needed without structured hypotheses.
What you can build with it
Defining Project Goals
Use the DefineGoal workflow to clarify what success looks like for your project before starting any work.
Testing New Features
Employ the GenerateHypotheses and DesignExperiment workflows to systematically test new features and validate their effectiveness.
Conducting Research
Utilize the AnalyzeResults and Iterate workflows to refine your research approach based on data collected from experiments.
How to install Scientific Method
View source1. Install with the skills CLI
npx skills add danielmiessler/lifeos/Science --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by danielmiesslerCustomization
Before executing, check for user customizations at:
~/.claude/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Science/
If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.
π¨ MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)
You MUST send this notification BEFORE doing anything else when this skill is invoked.
-
Send voice notification:
curl -s -X POST http://localhost:31337/notify \ -H "Content-Type: application/json" \ -d '{"message": "Running the WORKFLOWNAME workflow in the Science skill to ACTION"}' \ > /dev/null 2>&1 & -
Output text notification:
Running the **WorkflowName** workflow in the **Science** skill to ACTION...
This is not optional. Execute this curl command immediately upon skill invocation.
Science - The Universal Algorithm
What It Does
Applies the scientific method as a general problem-solving algorithm: define the goal first, generate multiple hypotheses, design experiments that can fail, measure honestly, analyze against the goal, iterate. Seven core workflows plus two diagnostic shortcuts (quick 15-minute debugging and structured multi-factor investigation). It scales from micro (TDD) to meso (feature validation) to macro (MVP launch).
The Problem
Most problem-solving is guessing dressed up as work. You pick the first idea that comes to mind, change something, and call it done when it "seems better" β which is confirmation bias, not progress. Without a clear definition of success you can't tell whether a change helped, so you keep tweaking forever or stop too early. Single-hypothesis thinking means you only ever test the idea you already believed. This skill forces the discipline that fixes all of that: a stated goal, at least three competing hypotheses, falsifiable tests, and measurement that compares to the goal rather than to your hopes.
How It Works
The whole thing is one repeating cycle, and the goal anchors it β without clear success criteria you cannot judge results:
GOAL -----> What does success look like?
|
OBSERVE --> What is the current state?
|
HYPOTHESIZE -> What might work? (Generate MULTIPLE)
|
EXPERIMENT -> Design and run the test
|
MEASURE --> What happened? (Data collection)
|
ANALYZE --> How does it compare to the goal?
|
ITERATE --> Adjust hypothesis and repeat
|
+------> Back to HYPOTHESIZE
The answer emerges from the cycle, not from guessing.
Workflow Routing
Output when executing: Running the **WorkflowName** workflow in the **Science** skill to ACTION...
Core Workflows
| Workflow | Trigger | File |
|---|---|---|
| DefineGoal | "define the goal", "what are we trying to achieve" | Workflows/DefineGoal.md |
| GenerateHypotheses | "what might work", "ideas", "hypotheses" | Workflows/GenerateHypotheses.md |
| DesignExperiment | "how do we test", "experiment design" | Workflows/DesignExperiment.md |
| MeasureResults | "what happened", "measure", "results" | Workflows/MeasureResults.md |
| AnalyzeResults | "analyze", "compare to goal" | Workflows/AnalyzeResults.md |
| Iterate | "iterate", "try again", "next cycle" | Workflows/Iterate.md |
| FullCycle | Full structured cycle | Workflows/FullCycle.md |
Diagnostic Workflows
| Workflow | Trigger | File |
|---|---|---|
| QuickDiagnosis | Quick debugging (15-min rule) | Workflows/QuickDiagnosis.md |
| StructuredInvestigation | Complex investigation | Workflows/StructuredInvestigation.md |
Resource Index
| Resource | Description |
|---|---|
Methodology.md | Deep dive into each phase |
Protocol.md | How skills implement Science |
Templates.md | Goal, Hypothesis, Experiment, Results templates |
Examples.md | Worked examples across scales |
Domain Applications
| Domain | Manifestation | Related Skill |
|---|---|---|
| Coding | TDD (Red-Green-Refactor) | Development |
| Products | MVP -> Measure -> Iterate | Development |
| Research | Question -> Study -> Analyze | Research |
| Prompts | Prompt -> Eval -> Iterate | Evals |
| Decisions | Options -> Council -> Choose | Council |
Scale of Application
| Level | Cycle Time | Example |
|---|---|---|
| Micro | Minutes | TDD: test, code, refactor |
| Meso | Hours-Days | Feature: spec, implement, validate |
| Macro | Weeks-Months | Product: MVP, launch, measure PMF |
Integration Points
| Phase | Skills to Invoke |
|---|---|
| Goal | Council for validation |
| Observe | Research for context |
| Hypothesize | Council for ideas, RedTeam for stress-test |
| Experiment | Development (Worktrees) for parallel tests |
| Measure | Evals for structured measurement |
| Analyze | Council for multi-perspective analysis |
Anti-Patterns
| Bad | Good |
|---|---|
| "Make it better" | "Reduce load time from 3s to 1s" |
| "I think X will work" | "Here are 3 approaches: X, Y, Z" |
| "Prove I'm right" | "Design test that could disprove" |
| "Pretend failure didn't happen" | "What did we learn?" |
| "Keep experimenting forever" | "Ship and learn from production" |
Gotchas
- Minimum 3 hypotheses before testing. Single-hypothesis testing is confirmation bias β going straight to a single test is trial-and-error, not science.
- Measurements must be specific and reproducible. "It seems better" is not a measurement.
- Full cycle is for systematic investigation. For quick debugging, use quick diagnosis mode.
Examples
Example 1: Quick diagnosis
User: "figure out why Surface time filters show stale items"
β Quick diagnosis mode
β Hypothesis: timestamp format mismatch in D1
β Test: query D1 for actual stored format
β Analyze: compare stored vs expected format
β Result: ISO string vs Unix timestamp mismatch
Example 2: Full systematic investigation
User: "experiment with different prompt structures for better output"
β Full cycle mode
β 3+ hypotheses generated
β Controlled experiments with measurements
β Analysis identifies winning approach
β Iterates until convergence
Execution Log
After completing any workflow, append a single JSONL entry:
echo '{"ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","skill":"Science","workflow":"WORKFLOW_USED","input":"8_WORD_SUMMARY","status":"ok|error","duration_s":SECONDS}' >> ~/.claude/LIFEOS/MEMORY/SKILLS/execution.jsonl
Replace WORKFLOW_USED with the workflow executed, 8_WORD_SUMMARY with a brief input description, and SECONDS with approximate wall-clock time. Log status: "error" if the workflow failed.
Frequently asked questions about Scientific Method
Similar skills
Spring Boot Testing
Master testing techniques for Spring Boot 4 applications.
GitHub Issues
Manage GitHub issues efficiently with MCP tools.
Geofeed Tuner
Optimize your IP geolocation feeds in CSV format.
Batch Files
Master Windows batch scripting for automation and task management.
Adobe Illustrator Scripting
Automate your Illustrator workflows with ExtendScript.
Plugin Structure
Create and organize Claude Code plugins effectively.
