thinking-map-territory
Skill2 starsChanged 9 months agoMITView on GitHub
Recognize limits of mental models and diagrams. Use when models diverge from reality, debugging expectation mismatches, or questioning abstraction accuracy.
In this repository38 other files it gives its agents.
- thinking-archetypesSkill
- thinking-bayesianSkill
- thinking-bounded-rationalitySkill
- thinking-circle-of-competenceSkill
- thinking-cynefinSkill
- thinking-debiasingSkill
- thinking-dual-processSkill
- thinking-effectuationSkill
- thinking-feedback-loopsSkill
- thinking-fermi-estimationSkill
- thinking-first-principlesSkill
- thinking-five-whys-plusSkill
- thinking-inversionSkill
- thinking-jobs-to-be-doneSkill
- thinking-kepner-tregoeSkill
- thinking-leverage-pointsSkill
- thinking-lindy-effectSkill
- thinking-margin-of-safetySkill
- thinking-model-combinationSkill
- thinking-model-routerSkill
- thinking-model-selectionSkill
- thinking-occams-razorSkill
- thinking-oodaSkill
- thinking-opportunity-costSkill
- thinking-pre-mortemSkill
- thinking-probabilisticSkill
- thinking-red-teamSkill
- thinking-regret-minimizationSkill
- thinking-reversibilitySkill
- thinking-scientific-methodSkill
- thinking-second-orderSkill
- thinking-socraticSkill
- thinking-steel-manningSkill
- thinking-systemsSkill
- thinking-theory-of-constraintsSkill
- thinking-thought-experimentSkill
- thinking-trizSkill
- thinking-via-negativaSkill
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 6 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Core Principle: All models are wrong; some are useful.
- Distinctive: line 20
When a "perfect plan" meets messy reality
- Distinctive: line 36
Every representation omits details:
- Distinctive: line 66
When we mistake the map for the territory:
- Distinctive: line 232
No validation feedback loop
- Distinctive: line 284
When the map and territory diverge, update the map or change your navigation—but never insist the territory is wrong because your map says …
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Map-Territory Thinking
Overview
Map-Territory thinking, originated by Alfred Korzybski and popularized in general semantics, reminds us that "the map is not the territory." Every representation—mental model, diagram, metric, specification, or abstraction—is a simplified view that necessarily loses information. Confusing the map with the territory leads to flawed decisions, debugging dead-ends, and misaligned expectations.
Core Principle: All models are wrong; some are useful. The question is: how wrong, and useful for what?
When to Use
- Debugging when behavior doesn't match expectations
- Evaluating whether documentation/specs match implementation
- Questioning metrics that seem to tell the "full story"
- Architecture decisions based on diagrams or models
- When a "perfect plan" meets messy reality
- Resolving disagreements where parties hold different mental models
- Analyzing why estimates consistently miss reality
Decision flow:
Expectation ≠ Reality? → yes → Are you trusting a model/abstraction? → yes → CHECK MAP-TERRITORY FIT
↘ no → Model exists but isn't explicit
↘ no → Model may be accurate (verify anyway)Key Concepts
1. Maps Are Abstractions
Every representation omits details:
| Territory (Reality) | Map (Representation) | What's Lost |
| Running code | Architecture diagram | Timing, error paths, state |
| User behavior | Analytics dashboard | Context, emotion, edge cases |
| System performance | SLO metrics | Tail latencies, correlations |
| Team dynamics | Org chart | Informal influence, trust |
| Customer need | User story | Nuance, unstated assumptions |
2. Multiple Maps, One Territory
The same reality can have many valid representations:
Territory: E-commerce checkout flow
Maps:
├── Sequence diagram (shows interactions)
├── State machine (shows transitions)
├── User journey (shows experience)
├── Data flow (shows information movement)
├── Code (shows implementation)
└── Metrics (shows performance)
Each map reveals AND conceals different aspects3. Map-Territory Confusion
When we mistake the map for the territory:
Confusion: "The tests pass, so the code works"
Reality: Tests are a map of expected behavior, not the territory of all behavior
Confusion: "The architecture diagram shows this is simple"
Reality: The diagram omits error handling, edge cases, and race conditions
Confusion: "Our metrics show users are happy"
Reality: Metrics measure what we chose to measure, not satisfaction itself4. Abstraction Leakage
Even good abstractions eventually break:
Abstraction: "The network is reliable"
Leak: Timeout, partition, packet loss
Abstraction: "Memory is infinite"
Leak: OOM, cache eviction, GC pause
Abstraction: "The database is ACID"
Leak: Connection pool exhaustion, replication lagThe Map-Territory Alignment Process
Step 1: Identify Your Maps
List all representations you're relying on:
Decision: Scaling the payment service
Maps in use:
- Architecture diagram (last updated 6 months ago)
- Performance benchmarks (from staging, not prod)
- Capacity planning spreadsheet (based on assumptions)
- Team's mental model (from building v1)Step 2: Assess Map Freshness
For each map, determine:
| Map | Last Updated | Created From | Drift Risk |
| Arch diagram | 6 months | Original design | High |
| Benchmarks | 2 months | Staging env | Medium |
| Capacity sheet | 1 month | Extrapolation | High |
| Mental model | 2 years | Building v1 | Very High |
Step 3: Check Correspondence
For critical maps, verify against territory:
Test: Does the architecture diagram match the code?
Method: Trace a request through actual code, compare to diagram
Test: Do benchmarks reflect production?
Method: Run production traffic sample through benchmark setup
Test: Do metrics capture what matters?
Method: Interview users, compare their experience to metric storyStep 4: Identify Missing Maps
What aspects of the territory have no map?
Existing maps: Sequence diagrams, API specs, test coverage
Missing maps:
- Failure modes and recovery paths
- Implicit dependencies
- Performance under contention
- Operational runbooksStep 5: Calibrate Confidence
Adjust trust in maps based on verification:
Map: Test suite
Verification: Tests pass, but manual testing found 3 bugs
Calibration: Tests cover happy path, not edge cases
Action: Add edge case tests, reduce confidence in "green = good"Map-Territory Mismatches by Domain
Documentation vs. Code
Map: README says "run npm install"
Territory: Requires Node 18+, specific npm version, env vars
Mismatch: Documentation abstracts away prerequisites
Verification: Try setup from scratch on clean machine
Fix: Document actual requirements, automate verificationSpecs vs. Implementation
Map: Spec says "API returns user object"
Territory: Sometimes returns 404, sometimes 500, sometimes times out
Mismatch: Spec describes happy path only
Verification: Test error cases, edge cases, failure modes
Fix: Spec error responses, add contract testsMetrics vs. Outcomes
Map: "DAU increased 20%"
Territory: Users signing up but churning within a week
Mismatch: DAU doesn't capture retention quality
Verification: Add cohort retention, engagement depth metrics
Fix: Choose metrics closer to actual business outcomesEstimates vs. Reality
Map: "This will take 2 weeks"
Territory: Took 6 weeks due to unforeseen complexity
Mismatch: Estimate was based on mental model, not investigation
Verification: Time-box investigation before estimating
Fix: Add uncertainty buffers, track estimate accuracyMental Models vs. Systems
Map: "The cache makes reads fast"
Territory: Cache has 30% hit rate, most reads hit DB
Mismatch: Mental model assumed better cache performance
Verification: Measure actual cache hit rates
Fix: Update mental model, improve caching strategyMap Quality Indicators
Signs of a Good Map
- Explicitly states what it omits
- Has a clear purpose and audience
- Recently verified against territory
- Includes uncertainty ranges
- Acknowledged as a model, not truth
Signs of a Dangerous Map
- Treated as complete truth
- No update mechanism
- Created by someone who never saw the territory
- Optimistic without error cases
- No validation feedback loop
Integration with Systems Thinking
Map-Territory thinking complements systems thinking:
Systems Thinking asks: What are the feedback loops and emergent behaviors?
Map-Territory asks: Is my systems diagram actually capturing those dynamics?
Combined approach:
1. Draw the system map (feedback loops, stocks, flows)
2. Verify: Does measured behavior match predicted behavior?
3. Iterate: Where does the map fail? What's the territory really doing?
4. Update: Refine the map or accept its limitationsVerification Checklist
- Listed all maps/models being relied upon
- Assessed freshness of each map
- Identified highest-risk map-territory gaps
- Verified at least one critical map against reality
- Acknowledged what the maps don't capture
- Calibrated confidence based on verification results
- Documented map limitations for others
Key Questions
- "What representation am I trusting here?"
- "When was this model last verified against reality?"
- "What does this abstraction hide from me?"
- "How would I know if this map is wrong?"
- "What would I see if I looked at the territory directly?"
- "Who created this map, and did they see the actual territory?"
- "What happens in the territory that this map can't represent?"
Korzybski's Reminders
- The map is not the territory — The word "water" won't quench thirst
- The map doesn't cover all the territory — No model is complete
- The map is self-reflexive — We can make maps of maps (meta-models)
Practical Mantras
- "All models are wrong, some are useful" — George Box
- "The menu is not the meal"
- "The org chart is not the organization"
- "The test suite is not correctness"
- "The metric is not the goal"
- "The estimate is not the timeline"
When the map and territory diverge, update the map or change your navigation—but never insist the territory is wrong because your map says so.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

