ljg-map: Ecological Terrain Map Card
Input an industry, output an overlookable ecological terrain — how value flows, where it gets stuck, where money piles up like treasure, and where future battles will be fought.
Ideological Foundation: Reference Frame Theory (A Thousand Brains)
Hawkins' core idea: The brain understands anything by pinning its features to positions on a reference frame (a map), learning through movement and prediction. Looking at an industry works the same way. Without a map, an industry is just a blurry list of companies in your mind; once laid out as an ecological terrain — with the river of value flowing through landscapes, each link as a piece of terrain — previously invisible structures become instantly visible: where value flows, where it constricts, and where profits accumulate.
This is not decorative scenery, but structured terrain. Every position on the terrain must have a justifiable reason — who is upstream/downstream, where the river narrows into a bottleneck, where treasure piles up (value capture). Only when positions have geometric/ecological justifications is it a terrain map; pretty islands alone = no reference frame established.
Thesis statement (must appear on the card): Only when you lay out an industry as an ecological terrain can you see — where the river narrows (bottlenecks) and where gold accumulates (value capture). And these two spots are often not the same.
Soul: Two Annotations + Their Misalignment/Alignment
The lifeblood of the entire card is to mark these two spots clearly at a glance on the terrain, and reveal their misalignment or alignment. First, deep research identifies these two spots accurately (recognition signals remain unchanged), then translates them into terrain.
Bottlenecks (River narrows here → drawn as pass/dam/one-lane bridge)
The stuck links in the industry — capacity, flow, and control constrict here. Recognition signals:
- Scarce capacity: Expansion takes years and huge capital (wafer fabs, lithium mines).
- Single-point control: Controlled by one or two players, unavoidable (ASML lithography machines, Google search entry).
- License/patent/standard gate: Barriers set by laws or technical standards (pharmaceutical approval, CUDA ecosystem).
- Physical/cognitive limits: Bandwidth, latency, attention, trust — unavoidable ceilings.
One-sentence test: "Which link gets stuck first when the industry wants to expand output?" That link → drawn as a narrow pass/dam/one-lane bridge on the terrain, marked with a red sign "Bottleneck".
Value Capture Points (Profits accumulate here → drawn as treasure piles/vaults)
Links where money actually stays. Note: Creating value ≠ Capturing value. Recognition signals:
- Bargaining power: Upstream and downstream have to rely on it, it calls the shots (operating systems, platform rent collection).
- High and sustained gross margin: High profit margins that can be maintained (brands, patented drugs, network effects).
- Winner-takes-all: Scale/network effects allow the top players to capture most profits.
One-sentence test: "Where does the money earned in this industry finally settle?" That link → drawn as a gold treasure pile/vault on the terrain, marked with a gold sign "Value Capture".
Misalignment / Alignment — The Full Power of the Terrain
Bottlenecks and value capture are two independent variables, and they often do not fall on the same terrain:
- Alignment: The bottleneck is where the money is made (ASML, TSMC) — treasure piles right next to the pass, power and profit come from the same source.
- Misalignment: Value-creating links hold thin margins, while profits are siphoned off elsewhere (creator villages vs. platform port treasures; hardware fields vs. NVIDIA's gold mountain on the dam).
The caption uses one sentence to point out the power structure of the terrain (e.g., "Dual rent extraction: Two treasure piles one after another, the middle village only farms but doesn't collect money"). This is the sharpest realization of reference frame theory: Power structures become visible gold mountains and thin fields on the terrain.
Three Big Questions
Extract exactly
three "big questions" that determine the industry's future — unresolved tensions, undecided answers, which will rewrite the landscape once answered. They often lie on the frontier of the terrain: Will the pass be bypassed by a new road? Will the treasure move to another terrain? Which new player is redirecting the river? Each is a sharp, debatable sentence pointing to the future; the three do not overlap. Criteria are in
.
Base Rate: Scale of the Terrain
The terrain gives you structure, but without a scale you'll be misled by individual cases — seeing a unicorn and thinking gold is everywhere.
Base rate is the scale ruler of this terrain: The baseline values of the three most critical indicators for this industry (Bayesian prior, antidote to individual cases). The three-piece reference frame set:
Terrain = Structure (where)、
Base rate = Scale (how much/how likely)、
Three Big Questions = Frontier (what's next). Order on the card: Look at the terrain first, calibrate with the scale, then ask forward-looking questions. Each base rate has three fields:
Indicator name + Value (range/percentage, large font) + One sentence "This means" (points out individual case illusions). Criteria: Decision-relevant / Counterintuitive / Verifiable (real numbers, no fabrication). See
for details.
Style Mold
| mold | Parameter | Style |
|---|
| Animal Crossing | (default) | Warm and cute, cream/green/wood/yellow, rounded soft cartoon, island terrain, wooden sign text |
| pixel + cyber-hacker | | Dark neon, 16-bit pixel terrain, CRT/glitch, terminal text |
Both are generated by
assets/gen_illustration.py --mold a|c
; Jigang Ji always stands as the little surveyor overlooking the terrain (generated from ink image references, recognizable).
Process
Input: Industry/domain name (can attach user's judgment) [+ -a/-c to select mold, default -a]
↓
1. Deep research: Value chain structure, key links, profit distribution, bottlenecks, unresolved issues + three key indicator base rates (see references/research.md — what to research, how to expand, how to review)
2. Locate two spots: 🔴 Bottleneck (the link that first restricts output) + 🟡 Value Capture (the link where money finally settles); check if they are misaligned or aligned
3. Translate research into terrain frame (English): How the river of value flows, what landscape each link is, bottleneck = which pass/dam, value capture = which treasure pile, where Jigang the surveyor stands, 3-6 Chinese place names (see references/visual.md + example.md)
4. Generate image: python3 assets/gen_illustration.py --mold a --frame "<...>" --out /tmp/ljg_map_{slug}_terrain.png
5. Extract three base rates (indicator + value + this means)
6. Extract three big questions
7. Select accent color (warm/green for Animal Crossing, see visual.md)
8. Fill placeholder variables in assets/map_template.html ({{MAP_IMG}} = file://generated image, {{ACCENT}} replaced at the end)
9. Render (capture.js, fullpage adaptive height)
10. Self-inspection (Ecological terrain map: Bottleneck pass🔴 and Value Capture treasure🟡 are clearly distinguishable, value river flow is clear, Jigang the surveyor is recognizable, Chinese place names are correct and clear, consistent with thesis/caption; three base rate indicators + three big questions are on the card); adjust frame and regenerate if not qualified → Deliver
Visual Specifications
Before generating,
read first — light glass card body (homologous to ljg-* card family), ecological terrain frame specifications, two mold styles, how to translate "value chain + bottleneck + value capture" into terrain frame, accent color palette, pitfalls. Then read
— a verified AI film and television ecological terrain example (dual rent extraction), frame can be modified and reused.
Research Specifications
Before execution,
read first — list of questions to ask when researching an industry, recognition signals for bottlenecks and value capture, extraction standards for three big questions and base rates, research agent expansion discipline (synchronous return, batch staggered, ID sampling review before finalizing). Fabricated links will fail the review of "whether this link is really a bottleneck / profitable".
Template Variables (map_template.html)
| Variable | Content |
|---|
| Card accent color hex (warm/green for Animal Crossing, e.g., ; neon color for cyber) |
| | Industry Chinese name / English name |
| 3-4 core links/concept tags for the industry, each <span class="tag">…</span>
|
| Reference frame thesis sentence: One sentence highlighting "only laying out as ecological terrain can you see bottlenecks and value capture, which are often misaligned", key words wrapped in |
| absolute path of the ecological terrain map (generated by gen_illustration.py --mold a|c
) |
| Small note below the terrain: One sentence pointing out the misalignment/power structure of the terrain |
| HTML for three base rates: Each <div class="brate"><div class="blabel">Indicator name</div><div class="bval">Value</div><div class="bmean">This means…</div></div>
|
| | Three big questions, each a sharp, debatable sentence |
Rendering
bash
node ~/.claude/skills/ljg-card/assets/capture.js \
/tmp/ljg_map_{name}.html ~/Downloads/{name}-生态地形图.png 1080 1440 fullpage
Reuse ljg-card's capture.js (playwright already installed).
Must use . When casting multiple cards in parallel, use
unique file names (with industry slug, do not share fixed names) for temporary HTML + generated images.
Delivery
- Read and inspect the output PNG in person, zoom in on the terrain map: Bottleneck pass🔴 and Value Capture treasure🟡 are clearly distinguishable ✓, value river flow is clear ✓, misalignment/alignment is readable ✓, Jigang the surveyor is recognizable ✓, Chinese place names are correct and clear ✓, consistent with thesis/caption ✓, three base rate indicators + three big questions are on the card ✓, no blank space on the right or bottom ✓. If unsatisfied with the generated image (blurry place names / unclear bottleneck/value capture labels / unrecognizable Jigang), adjust the frame and regenerate.
- Report the file path + one sentence pointing out the sharpest finding of this terrain (usually the misalignment between bottleneck and value capture) + which mold was used.
Red Lines (Must Pass Each)
- It's ecological terrain, not decorative scenery — Every position on the terrain must have an ecological/geometric justification (upstream/downstream, how the river flows, who blocks whom, where gold piles up); pretty islands alone = no reference frame established, go back and retranslate.
- Two spots must be marked and distinguishable — 🔴 Bottleneck (pass/dam, red sign), 🟡 Value Capture (treasure pile, gold sign), clearly distinguishable at a glance.
- Misalignment/alignment must be pointed out — The caption must reveal the terrain's power structure (separate spots = misalignment / same spot = alignment).
- Exactly three big questions — Unresolved tension, forward-looking, non-overlapping.
- Deep research cannot rely on impressions — Value chain structure, profit distribution, bottlenecks must be verified online, not fabricated based on impressions; see research.md for expansion discipline. Fabricated links will fail the review of "whether this link is really a bottleneck / profitable".
- Base rates must be verified, not fabricated — Baseline values of three indicators must be verified through deep research, ranges are allowed, fabrication is not; each includes "This means" to point out individual case illusions.
- Generated images must be inspected — AI generation is non-deterministic + occasionally blurry Chinese text / unclear labels / unrecognizable Jigang — must inspect in person, adjust frame and regenerate if needed (short place names, clear definition of bottleneck=pass/value capture=treasure are most reliable). Precise details (base rate numbers, three big questions) are placed in the card's text block, not piled into the image (the image only carries terrain + two annotations + a few place names).
- Real rendering and inspection — Must render with capture.js, must inspect the PNG in person; no illusion of "already generated".
- Anti-translation腔 + No cutting-style rhetoric — Prose and caption on the card must pass the silent reading check; avoid self-rhetoric like "this cut", "sharp" (as meta-description), "pin down", "solidify".
- Homologous house style — Light glass card body + embedded AI-generated ecological terrain map, part of the ljg-library family.
Gotchas (Must Avoid)
- Degenerate into decorative scenery: The most common mistake. Criterion — Can you explain "where the river flows, who is upstream, who the pass blocks, where gold piles up"? If not = no reference frame established, it's a pretty empty island.
- Default assumption that bottleneck = value capture: Assuming they are aligned is wrong. First find them independently, then see where they fall on the terrain — misalignment is the insight.
- Draw links as companies: Terrain landscapes = functional positions (wafer foundry mountain, model training valley, distribution port), companies are just current occupants, written as small place names. Even if occupants change, the landscape remains.
- Don't pile precise details into the image: AI-generated images blur multiple labels + long numbers. Only place terrain + 🔴bottleneck/🟡value capture + 3-6 short place names in the image; base rate numbers and three big questions are in the card's text block (precise content belongs to HTML).
- Must inspect generated images: Non-deterministic + occasionally blurry Chinese text / unclear labels / unrecognizable Jigang — must inspect in person, adjust frame and regenerate if needed.
- Accent is the card body color: Pick warm/green from Animal Crossing palette (neon for cyber); the image background is built into the generated map, no cross-contamination.
- /tmp file name competition: Use unique names (with industry slug) for temporary HTML + generated images when casting cards in parallel.
- Batch pipeline: directly calls marswave, bypasses listenhub interaction gatekeeping, can be integrated into batch processing; but each card requires one round of online research + API calls + image inspection.
- Research expansion hangs: Concurrent research agents must be set to return synchronously, batch staggered, and ID sampling review before finalizing (feedback_research_agent_fanout_synchronous).