Systematic first principles thinking for any problem domain. Use when the user says "analyze from first principles", "第一性原理", "从根本分析", "从零开始思考", "think from scratch", "question this design", "is this the right approach", "challenge assumptions", "挑战假设", "为什么要这样做", "有没有更好的方案", "why are we doing it this way", or needs to evaluate decisions, designs, or strategies without relying on analogies, conventions, or "best practices". Also triggers on "这个设计合理吗", "从本质上看", "回到基本面", "what's really true here", "what are we assuming", or any request to decompose a problem to its fundamentals.
71
87%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
A systematic approach to decomposing complex problems into irreducible truths and reasoning upward from there — avoiding the trap of reasoning by analogy, convention, or "best practice".
Before analyzing anything, define the irreducible truths that constrain this domain.
Axioms = facts that are independently verifiable, cannot be further decomposed, and violating them definitely causes failure.
How to identify axioms:
Gate: Must produce ≥3 axioms before proceeding. Each axiom stated in one sentence with a "why irreducible" justification.
### Axioms
1. [Axiom] — [Why this cannot be further decomposed]
2. [Axiom] — [Why this is provably true]
3. [Axiom] — [Why violating this causes failure]Deep methodology:
references/axiom-based-reasoning.md
Strip away implementation details to find the core problem.
Key questions:
Gate: Must produce a one-sentence problem statement + measurable success criteria.
This is the highest-leverage phase. Most "best practices" are assumptions disguised as facts.
Minimum: Produce an assumption table with ≥5 rows.
| Assumption | Why Question It | Axiom(s) Used | Verdict |
|---|---|---|---|
| "We need X" | [Challenge] | A1, A2 | Keep / Discard / Modify |
Red flags (likely false assumptions):
Depth standard: Each row must include why you're questioning it and which axiom informs the verdict. "Maybe not needed" without reasoning = not deep enough.
Gate: ≥5 assumptions challenged with verdicts. Each verdict must reference at least one axiom.
Deep methodology:
references/axiom-based-reasoning.md§ "Identify and Challenge Assumptions"
From the wreckage of challenged assumptions, identify what IS irreducibly true for this specific problem.
Ground Truth test:
Gate: Must produce ≥3 ground truths. Each must be specific and falsifiable — not generic truisms.
❌ "Users need fast response times" (too vague)
✅ "P99 latency must be < 200ms per SLA contract §3.2" (specific, verifiable)
❌ "The team is small" (relative)
✅ "Team is 3 engineers, no new hires possible before Q3" (concrete constraint)Build solutions from ground truths only. Each layer must justify its existence.
Ground Truth → Minimal Solution → Justified Additions → Final Design
↑ ↑ ↑
(proven) (sufficient) (each defended)Gate: Must produce a reasoning chain where every step traces to a ground truth.
### Reasoning Chain
GT#1 (latency < 200ms) + GT#3 (3-person team) → Eliminate distributed architecture
GT#2 (read-heavy 95%) + GT#1 → Add read cache with 30s TTL
→ Conclusion: Monolith + in-memory cacheEnsure the reasoning is sound before acting.
Three validation questions (Completion Gate):
| # | Question | What Failure Means |
|---|---|---|
| 1 | Can every conclusion trace back to a ground truth? (Traceability) | You've introduced unjustified assumptions in Phase 4 |
| 2 | Is every ground truth covered by at least one conclusion? (Completeness) | Your solution ignores a constraint — it will fail there |
| 3 | Were any phases skipped or done shallowly? (Honesty) | Go back and finish them |
Stress-test with complementary models:
| Model | Question to Ask | When It Adds Value |
|---|---|---|
| Pre-Mortem | "It's 12 months later and this failed. Why?" | When you're excited about the solution |
| Second-Order | "If this works, what happens next? And after that?" | When solution has systemic effects |
| Inversion | "What would guarantee failure? Are we doing any of that?" | When you need to find blind spots |
| OODA Act | "What's the smallest test we can run right now?" | When analysis paralysis sets in |
Full model toolkit:
references/thinking-models-toolkit.md
Gate: All 3 validation questions answered "yes". At least one stress-test model applied.
Problem: AI tends to skip steps, get distracted mid-analysis, or do each step shallowly.
| Phase | Must Produce | Min Depth |
|---|---|---|
| 0: Frame | ≥3 axioms with justifications | Each axiom: 1 sentence + why irreducible |
| 1: Essence | Problem statement + success criteria | Specific and measurable |
| 2: Assumptions | Assumption table ≥5 rows | Each row: challenge + axiom reference + verdict |
| 3: Ground Truths | ≥3 ground truths | Each: specific, falsifiable, not a truism |
| 4: Reason Up | Reasoning chain with GT references | Every step traces to a GT |
| 5: Validate | 3 validation answers + 1 stress test | All answers = "yes" |
No artifact → no next phase. If a gate is not met, stop and complete it.
Maintain a running checklist throughout the analysis. After each phase completion, output:
## 🧭 FP Progress
- [x] Phase 0: Frame — ✅ 3 axioms
- [x] Phase 1: Essence — ✅ "..."
- [→] Phase 2: Assumptions — 3/6 checked
- [ ] Phase 3: Ground Truths
- [ ] Phase 4: Reason Upward
- [ ] Phase 5: ValidateIf conversation drifts (user asks a tangent, discussion expands on a side topic), after addressing it, immediately output:
📍 Returning to FP analysis: Phase N has M items remaining. Continuing.
| Phase | Shallow (Fail) | Deep (Pass) |
|---|---|---|
| Assumptions | "Maybe we don't need this" | Table row with challenge reason + axiom reference + verdict |
| Ground Truths | "Users want fast" | "P99 < 200ms per SLA §3.2" |
| Reasoning | "So we should use X" | "GT#2 + GT#3 → eliminates Y → X is minimal solution" |
When used within a Trellis-managed project, the analysis artifacts integrate with the task system.
.trellis/tasks/{MM-DD-slug}/
├── task.json # Existing
├── prd.md # Existing — FP feeds into this
├── fp-analysis.md # ← FP analysis output (Phases 0-5)
├── fp-progress.md # ← Phase progress tracker (anti-drift)
├── implement.jsonl # Existing — fp-analysis.md auto-added
├── check.jsonl # Existing — fp-analysis.md auto-added
└── ...During /trellis:brainstorm, when the task is classified as "Complex":
fp-analysis.md in task directorydesign.mdAfter FP analysis completes, add to context files:
python3 ./.trellis/scripts/task.py add-context "$TASK_DIR" implement "fp-analysis.md" "Ground truths and reasoning chain"
python3 ./.trellis/scripts/task.py add-context "$TASK_DIR" check "fp-analysis.md" "Verify implementation traces to ground truths"After Phase 5, update task.json:
{
"fp_analysis": {
"completed": true,
"axioms_count": 3,
"assumptions_challenged": 6,
"ground_truths_count": 5,
"validation_passed": true
}
}When applying first principles thinking, structure the final output as:
## First Principles Analysis: [Topic]
### Axioms
1. [Axiom 1] — [Why irreducible]
2. [Axiom 2] — [Why irreducible]
3. [Axiom 3] — [Why irreducible]
### Problem Essence
**Core problem:** [One sentence]
**Success criteria:** [Measurable outcomes]
### Assumptions Challenged
| Assumption | Challenge | Axiom(s) | Verdict |
|------------|-----------|----------|---------|
| ... | ... | A1, A2 | Keep/Discard/Modify |
### Ground Truths
1. [Specific, falsifiable fact]
2. [Specific, falsifiable fact]
3. [Specific, falsifiable fact]
### Reasoning Chain
GT#1 + GT#3 → [Inference] → [Step] → [Conclusion]
### Conclusion
**Recommended approach:** [Description]
**Key insight:** [What FP analysis revealed that convention missed]
**Trade-offs acknowledged:** [What we accept and why]
### Validation
- [x] Every conclusion traces to a ground truth
- [x] Every ground truth is covered
- [x] No phases skipped
- [x] Stress-tested with: [model name]Symptom: Solution is more complex than the problem warrants. FP Check: Remove one component — does it still solve the core problem? If yes, that component wasn't essential. Repeat.
Symptom: "Company X does it this way, so we should too." FP Check: What problem was Company X solving? Is ours identical in all relevant dimensions? What constraints differ?
Symptom: Maintaining compatibility with decisions that no longer serve us. FP Check: What was the original reason? Do those conditions still exist? What's the true cost of change vs. cost of maintaining?
More patterns and case studies:
references/case-studies.md
| Tool | Key Question | Best Combined With Phase |
|---|---|---|
| Inversion | "What guarantees failure?" | Phase 2 (find hidden assumptions) |
| Second-Order | "Then what? And then?" | Phase 5 (stress-test conclusions) |
| 5 Whys | "Why? Why? Why? Why? Why?" | Phase 1 (find real problem) |
| Pre-Mortem | "It failed. Why?" | Phase 5 (stress-test) |
| OODA Loop | "What's the smallest test?" | Phase 5 (move to action) |
| Via Negativa | "What should we remove?" | Phase 4 (simplify solution) |
| Bayesian Update | "What new evidence changes this?" | Phase 3 (validate ground truths) |
| Reversibility Filter | "One-way or two-way door?" | Phase 4 (calibrate decision depth) |
Full toolkit with examples:
references/thinking-models-toolkit.md
The 5 most dangerous biases for first-principles analysis:
| Bias | How It Corrupts FP | Quick Debias |
|---|---|---|
| Confirmation | You "find" ground truths that confirm your preferred solution | Seek disconfirming evidence first |
| Anchoring | Conventional approach becomes mental anchor even when thinking "fresh" | Generate 3 alternatives before evaluating |
| Sunk Cost | Legacy decisions feel like ground truths | "If starting from zero today, would we choose this?" |
| Status Quo | "How it works now" feels like a constraint when it's a choice | Separate true constraints from current choices |
| Overconfidence | Treat assumptions as ground truths without testing | Assign confidence % to each assumption |
Full 12-bias catalog with debiasing:
references/bias-and-debiasing.md
Before applying FP to a complex problem, you may need to decompose it first. Quick selection:
| Problem Type | Best Framework |
|---|---|
| Diagnostic (why is X happening?) | Issue Tree or Fishbone |
| Financial (revenue/cost) | Profitability Tree |
| Strategic (what should we do?) | Hypothesis Tree |
| Operational (what's broken?) | Process Flow + 5 Whys |
| Complex adaptive system | Systems Map |
Full 15-framework catalog:
references/decomposition-frameworks.md
| File | Content | When to Read |
|---|---|---|
references/axiom-based-reasoning.md | Deep methodology for establishing axioms, challenging assumptions, and deriving conclusions | When you need rigorous derivation, not just analysis |
references/thinking-models-toolkit.md | 4-quadrant framework + 12 mental models + model selection guide + 5 Whys deep dive | When you need complementary thinking tools |
references/case-studies.md | 5 software engineering cases + 2 SpaceX/Tesla cases + templates | When you want concrete examples of FP in action |
references/bias-and-debiasing.md | 12 cognitive biases that corrupt FP thinking + debiasing strategies | When validating your analysis for blind spots |
references/decomposition-frameworks.md | 15 problem decomposition methods (MECE, Issue Tree, etc.) | When the problem is too big to analyze directly |
12e279a
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.