body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:850px;margin:0 auto;padding:2rem;line-height:1.7;color:#e0e0e0;background:#0a0a0a} h1{font-size:2rem;border-bottom:2px solid #3b82f6;padding-bottom:.5rem;color:#fff} h2{font-size:1.5rem;color:#3b82f6;margin-top:2.5rem} h3{font-size:1.15rem;color:#60a5fa;margin-top:1.5rem} .fw{background:#111827;border:1px solid #1e3a5f;border-radius:12px;padding:1.5rem;margin:1.5rem 0} .fw h3{margin-top:0;color:#fff;font-size:1.2rem} .fw-meta{display:flex;gap:1rem;flex-wrap:wrap;margin:.75rem 0;font-size:.85rem} .fw-meta span{background:#1a1a2e;padding:3px 10px;border-radius:20px;color:#a5b4fc} .principle{color:#f59e0b;font-weight:600} .cascade{color:#10b981} .usage{background:#0d1117;border-left:3px solid #3b82f6;padding:.75rem 1rem;margin:.75rem 0;border-radius:0 6px 6px 0;font-size:.95rem} table{width:100%;border-collapse:collapse;margin:1rem 0} th,td{padding:.6rem;text-align:left;border-bottom:1px solid #2a2a3e;font-size:.95rem} th{background:#1a1a2e;color:#3b82f6} hr{border:none;border-top:1px solid #2a2a3e;margin:2rem 0} .intro{font-size:1.05rem;color:#94a3b8} code{background:#1a1a2e;padding:2px 6px;border-radius:3px;font-size:.9em;color:#a5b4fc}

Thinking Frameworks — Extracted April 2026

Jason MacDonald's Thinking Frameworks

12 codified thinking patterns extracted from 3 months of building Forge — an autonomous AI operating system. Each framework is a repeatable decision tool. Combined, they form the governance layer of how Jason thinks, builds, and operates.

Use these as: prompts for AI assistants, decision checklists for teams, skill definitions for agent clones, or standalone thinking tools.


1. Domino Thinking

DecisionPriorityStrategy

First Principle: Not all tasks are equal. Most are noise. Find the 4% that produces 64%.

Before working on anything, ask: "Is this a domino or a tile?" A domino unlocks other tasks when it falls. A tile is unlocked BY other tasks — it's downstream. Always find and push the domino first.

Cascade: Push domino → 3-5 tiles become trivial or irrelevant → time saved compounds → you work on fewer, higher-leverage things → output per hour increases exponentially.

Prompt: "Before I start, what's the ONE thing that would make 3+ of these other items unnecessary or trivially easy? That's the domino. Everything else waits."
Without ThisWith This
Work on 10 tasks in priority orderWork on 1 task that eliminates 6 of the 10
Feel productive clearing a backlogActually move the needle by pushing what compounds

2. Abstraction Climbing

DebuggingRoot CauseProblem Solving

First Principle: Never fix at the same level twice. If the fix didn't hold, you're at the wrong abstraction level.

When a problem recurs despite being "fixed," trace UP through abstraction layers. The symptom is at Level 5. The fix is usually at Level 1 or 2. Each level asks "WHY does the level above happen?"

Cascade: Fix at source → entire CLASS of problems eliminated → downstream patches become unnecessary → system gets simpler, not more complex → maintenance cost drops to near zero for that class.

Prompt: "This is the 2nd time this has happened. Before fixing it again, trace UP: what CREATES the input that causes this failure? Fix the creator, not the cleanup."
LevelExample
5 (symptom)Tasks stuck as "running" in the database
4 (mechanism)Processes die without updating status
3 (design)Spawner exits without monitoring the process
2 (input quality)Tasks are too vague for the agent to execute
1 (the domino)Decomposer creates tasks without reading the project spec

3. Core Truth Anchoring

VisionAlignmentDrift Prevention

First Principle: Every project needs a 5-line anchor that states WHY it exists and WHAT it must achieve. Every agent, every task, every decision references this anchor.

Before any work begins, extract: (1) First Principle — why this exists, (2) The Problem — what pain it solves, (3) Desired Cascade — the 2nd/3rd order effects wanted, (4) Anti-Goals — what it must NOT become, (5) The Test — measurable success criterion.

Cascade: Core Truth written → every builder knows WHY → drift detected instantly (output doesn't match anchor) → corrections are precise (measure against anchor, not opinion) → compound over time as the anchor refines.

Prompt: "Before building: FIRST PRINCIPLE (why?) — THE PROBLEM (what pain?) — DESIRED CASCADE (2nd order effects?) — ANTI-GOALS (what must this NOT become?) — THE TEST (how do we know it worked?)"

4. The Decision Gate (6 Binary Checks)

DecisionPrioritizationGo/No-Go

First Principle: Decisions are binary, not scored. Don't rate 1-5 on a rubric. Answer 6 yes/no questions.

For any decision to advance, invest, or build:

#CheckOutcomes
1Domino? Does this unlock other things?YES → advance. NO → deprioritize. UNSURE → surface.
2Cascade? Can you trace 3 steps forward?YES → advance. CAN'T TRACE → surface.
3Root cause? Is this the right next step, or is something upstream broken?CLEAR → advance. BLOCKER → fix upstream first.
4Inversion? What breaks if you DON'T do this for 30 days?NOTHING → deprioritize. THINGS BREAK → advance.
5Confidence? Do you have enough info to decide?YES → advance. NO → surface the specific gap.
6Reversible? Can you undo it if wrong?YES → advance. NO → get approval first.
Prompt: "Run the 6-check gate: Domino? Cascade forward 3 steps? Root cause clear? What breaks if we skip 30 days? Do I have enough info? Reversible?"

5. The Antifragile Loop (3-Strike Escalation)

Error HandlingLearningSelf-Improvement

First Principle: Every failure is a compound investment. The system MUST get stronger from breaking, not just survive.

StrikeResponseOutput
1Document + patch + add to wikiInstance fixed. Class documented.
2Trace UP one abstraction level. Fix the SOURCE.Structural gate. Class prevented.
3Full lifecycle redesign on the fix itself.Architecture change. Class eliminated.
5+Circuit breaker. Publish white paper. Ask for help.Honest admission + 3 angles to try.
Prompt: "This is strike [N]. Strike 1 = patch. Strike 2 = trace up to source. Strike 3 = redesign. Strike 5 = stop and publish what I've learned. Which strike am I on?"

6. Surface Everything

UXVisibilityAccountability

First Principle: If the user can't see it, it doesn't exist. Every build must answer: where does this surface?

Before marking any work "done," answer: (1) WHERE does the user see this? (2) HOW do they find it? (3) WHAT can they DO with it? (4) Would they find it without being told where to look?

Cascade: Everything visible → user trusts the system → user makes faster decisions → feedback loop tightens → system improves faster from better feedback.

Prompt: "If Jason opens his phone at 6am, can he find what was built overnight within 30 seconds? If not, surfacing failed."

7. Right-Size It (V1/V2/V3 Never)

ScopeExecutionShipping

First Principle: V1 = dirty and working. V2 = clean and solid. V3 = never. Match effort to stakes.

The first version of anything should be the minimum that proves the concept. Don't write the PRD before you know the idea works. Don't automate before you've done it by hand 3 times.

Prompt: "Am I accidentally proposing V3 when V1 would prove the concept? What's the cheapest way to get signal on whether this matters?"

8. Cascade Mapping (Nothing Is Binary)

StrategyPlanning2nd Order Effects

First Principle: Every action triggers a chain of 2nd-order effects. Never decide based on the immediate outcome alone.

Before any action, trace forward: Step 1 (immediate) → Step 2 (what Step 1 enables) → Step 3 (compound effect). Also trace the INVERSE: what happens if you DON'T do this?

Prompt: "Trace the cascade: [This action] → enables [what?] → which compounds into [what?]. Now invert: if we DON'T do this for 30 days, what breaks?"

9. No Dead Ends

OperationsProcessResilience

First Principle: Every failure must be OWNED within 30 minutes. Retry, recover, or escalate. No orphans. No idle failures.

Nothing may enter a terminal state (failed, stuck, orphaned) without someone or something owning the next action. The test: can you query for items stuck longer than 30 minutes? The answer must be zero.

Prompt: "Is there anything stuck right now that nobody is working on? Who owns it? If nobody — that's the first thing to fix."

10. Fix at Source, Not Symptom

DebuggingArchitectureRoot Cause

First Principle: A factory that produces defective parts doesn't need better inspectors. It needs to fix the machine.

When something fails repeatedly: don't improve the cleanup. Ask "what CREATES the input that fails?" and fix THAT. The fix that makes the previous fix unnecessary is the right fix.

Prompt: "I've fixed this twice. Both fixes addressed [level X]. What level above X is the thing that CREATES the problem? Fix there instead."

11. Smoke Test Before Pipeline

ValidationEfficiencyRisk

First Principle: There is ALWAYS a solution, but never chase wild geese. Check the simple proof points FIRST.

Before committing resources down a pipeline, validate cheaply at the entry point. If the basics aren't true, the rest doesn't matter. This applies to debugging (check the obvious first), feature builds (validate the assumption), and escalations (confirm the symptom).

Prompt: "Before building the full solution: what's the cheapest check that proves this is even the right problem to solve? Run that first."

12. The Meta-Climb

StrategyInnovationLeverage

First Principle: Don't solve the problem at the level it presents. Extract UP to the level where one action eliminates a CLASS of problems.

"Don't fix the bug — build the system that finds and fixes all bugs." "Don't write content — build the content machine." Every suggestion should pass: "is there a level above this where we solve the whole category?"

Prompt: "I'm about to solve one instance of [X]. Is there a level above this where I could solve ALL instances of [X] with one move? What would that look like?"

How These Combine

The frameworks aren't independent. They form a decision loop:

NEW WORK arrives
  → Core Truth Anchoring (WHY are we doing this?)
  → Domino Thinking (is this the RIGHT thing?)
  → Decision Gate (6 checks — advance/surface/deprioritize?)
  → Right-Size It (V1 first)
  → Cascade Mapping (trace 2nd order effects)
  → Build...
  → Surface Everything (can the user see it?)
  → Smoke Test (does it do what Core Truth says?)

FAILURE occurs
  → Antifragile Loop (which strike?)
  → Abstraction Climbing (am I at the right level?)
  → Fix at Source (what creates the failing input?)
  → Meta-Climb (can I eliminate the whole class?)
  → No Dead Ends (owned within 30 min)

Using These as Expert Clone Prompts

Each framework becomes a skill in an AI assistant. The combination creates a "Jason clone" that thinks the way Jason thinks:

SituationFramework(s) to Load
"What should I work on?"Domino Thinking + Decision Gate
"This keeps breaking"Antifragile Loop + Abstraction Climbing + Fix at Source
"Should we build this?"Core Truth + Cascade Mapping + Right-Size It
"Something failed"No Dead Ends + Smoke Test + Antifragile Loop
"Is this done?"Surface Everything + Core Truth (does it match?)
"How do we scale this?"Meta-Climb + Cascade Mapping + Domino Thinking

Source: Extracted from Forge governance layer — 35 PROB entries, 10+ governance rules, 3 months of building. These frameworks are the codified thinking behind an autonomous AI operating system.
Author: Jason MacDonald | jason@jasondmacdonald.com
Built with: Forge + Claude | April 2026

]]>