concept-map
Skill6 starsChanged 7 months agoMITView on GitHub
Turn a topic, chapter, or pasted source into a visual graph — mind maps, concept maps, prerequisite trees, cause-effect networks, taxonomies, process flows, or timelines. Triggers on student phrasings like "mind map of the french revolution", "concept map for photosynthesis", "show me how these ideas relate", "visualize this chapter", "map out the relationships in this reading", "map my notes", and on teacher phrasings like "diagram of this chapter for my 7th graders", "prerequisite tree for calculus", "cause and effect map of WWI", "draw a taxonomy of vertebrates", "flowchart the scientific method", "timeline of the civil rights movement", "markmap of these notes". Emits Mermaid (default), Graphviz DOT, or Markmap syntax plus an optional rendered PNG/SVG via the bundled renderer — falls back to syntax + install hints when renderers are missing. Calibrates node count and vocabulary to grade level.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- itzcull/thinking-skillstheir own version, first seen May 9, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- itzcull/thinking-skills★ 3same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository6 other files it gives its agents.
- arts-craftsSkill
- circle-timeSkill
- lecture-to-study-guideSkill
- lesson-planSkill
- rubricSkill
- socratic-tutorSkill
The file
We split this skill into the rules it gives an agent
11 rules. About 0 are common, 10 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 61
If both topic AND format are missing, ask ONE clarifying question in this exact shape:
- Distinctive: line 65
Do not stack questions. Once the user answers, proceed straight to generation.
- Distinctive: line 124
Run the bundled script from the skill root:
- Very specific: line 135
If the required CLI is missing, render.py exits 0 (non-fatal), prints platform-specific install commands, and points at …
- Distinctive: line 150
Every generated graph must satisfy:
- Distinctive: line 157
No hallucinated concepts when a source text is provided — each node maps to a substring or close paraphrase in the source.
- Distinctive: line 162
Do not emit a graph with > 50 nodes — cluster lowest-importance concepts into parent groups and report what was collapsed.
- Distinctive: line 163
Do not leave edges unlabeled in concept maps for grades 6+.
- Distinctive: line 164
Do not silently pick one direction when source text supports both (A causes B *and* B causes A) — emit both with distinct labels.
- Distinctive: line 165
Do not fail hard when renderers are missing — always fall back gracefully and keep the syntax file.
- Distinctive: line 166
Do not ask more than one clarifying question.
≈ “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
concept-map
Turn a topic string or source text into a legible graph that shows structure at a glance. Default output is Mermaid syntax (renders in GitHub, Notion, Obsidian, and Claude Code with zero install) plus a PNG/SVG when a renderer is available.
When to trigger
Activate on any phrasing that asks to visualize relationships between ideas. Examples:
Student phrasings
- "mind map of the french revolution"
- "concept map for photosynthesis"
- "show me how these ideas relate"
- "visualize this chapter as a graph"
- "map my notes on cell biology"
- "I need a mind map to study for my exam"
Teacher phrasings
- "diagram of this chapter for my 7th graders"
- "prerequisite tree for calculus"
- "cause and effect map of WWI"
- "draw a taxonomy of vertebrates"
- "flowchart the scientific method"
- "timeline of the civil rights movement"
- "markmap of my unit notes"
Anti-triggers — DO NOT invoke
- "write me a summary of X" → plain prose, not a graph.
- "give me a flowchart for this React component" → code-diagramming, out of scope.
- "draw a picture of a cell" → labeled illustration, not a concept graph.
Inputs
- Topic string (required OR source) — "the French Revolution", "photosynthesis", "derivatives".
- Source text (required OR topic) — pasted chapter, notes, or article paragraphs.
- Graph type (optional) —
tree,concept-map,flow,timeline,mindmap. Inferred if omitted (see table below). - Format (optional) —
mermaid(default),dot,markmap, orall. - Grade / level (optional) — K-2, 3-5, 6-8, 9-12, college, grad. Drives node count + vocabulary.
- Max nodes (optional) — integer, default 20, hard cap 50.
- Render (optional, default true) — auto-invoke
scripts/render.pyto produce PNG/SVG.
Inferring graph type from phrasing (before asking)
Pick the graph type from the user's wording — do NOT ask unless both topic and format are absent.
| Phrasing cue | Graph type | Mermaid directive |
| "timeline of", "history of", "events leading up to", "chronology" | timeline | timeline |
| "parts of a ___", "anatomy of", "taxonomy of", "types of", "classification" | tree (hierarchical) | graph TD |
| "prerequisite tree", "what do I need before", "dependency graph" | tree (bottom-up DAG) | graph BT or DOT rankdir=BT |
| "causes of ___", "cause and effect", "what led to" | concept map with labeled edges | graph LR with edge labels |
| "how does ___ work", "process of", "steps in", "scientific method" | flow (process) | flowchart LR |
| "mind map of", "brainstorm", "everything about ___", "map my notes" | radial mindmap | mindmap |
| "concept map", "how these ideas relate", "relationships between" | Novak concept map | graph TD with labeled edges + cross-links |
| "markmap", "outline of my notes", "heading tree" | Markmap | Markdown headings |
If both topic AND format are missing, ask ONE clarifying question in this exact shape:
Quick check — what topic, and which flavor? (e.g. mind map of the French Revolution · concept map for photosynthesis · prerequisite tree for calculus · timeline of WWII)
Do not stack questions. Once the user answers, proceed straight to generation.
Grade / level calibration
| Level | Nodes | Structure | Edge labels |
| K-2 | 3-5 | Simple radial mindmap | None (lines only) |
| 3-5 | 6-10 | Hierarchical tree | Simple ("is a", "has") |
| 6-8 | 10-15 | Tree or concept map | Verbs ("causes", "requires") |
| 9-12 | 15-25 | Concept map with cross-links | Full labeled propositions |
| College | 20-40 | Concept map, multiple clusters | Rich labels |
| Grad | Up to 50 | Concept map + subgraphs / process flows | Precise terminology |
Vocabulary tracks level: K-2 uses common words, grad uses domain-precise terms.
Workflow
- Parse the request — extract topic OR source, graph type, format, grade.
- Infer graph type from the table above if not specified. Default format is Mermaid.
- Extract 10-30 candidate key concepts. Respect
max-nodes. - Cluster related concepts; pick the root / central concept.
- Draft relationships. For concept maps, label every edge with a verb or preposition ("causes", "is-a", "requires", "leads to"). See
references/novak-concept-maps.md. - Emit syntax — write the chosen format to disk (
concept-map.mmdby default). - Render — if
render: true, invokescripts/render.py --input concept-map.mmd --output concept-map.png. Script falls back to install hints if the CLI is missing; the syntax file is always preserved. - Summarize — return root concept, node count, edge count, and file paths.
Locked defaults
| Setting | Default |
| Format | Mermaid (graph TD or per inference table) |
| Render | Auto-invoke scripts/render.py when the user asks for a rendered image; otherwise emit syntax + one-line render instructions |
| Max nodes | 20 (hard cap 50) |
| Cross-links | Enabled for grades 9-12 and above |
| Edge labels | Required for concept maps, optional for trees, off for K-2 mindmaps |
| Output bundle | .mmd + .png + render instructions |
Micro-example
User: "concept map for photosynthesis, 7th grade"
Inferred: grade 7, concept map with labeled edges, Mermaid graph TD, ~10 nodes.
graph TD
P[Photosynthesis] -->|"needs"| L[Light energy]
P -->|"needs"| W[Water]
P -->|"needs"| C[CO₂]
P -->|"happens in"| CH[Chloroplasts]
P -->|"produces"| G[Glucose]
P -->|"produces"| O[Oxygen]
CH -->|"contain"| CL[Chlorophyll]
CL -->|"absorbs"| L6 core nodes + 2 supporting nodes, every edge labeled, root is the central concept. Emit the raw Mermaid above as concept-map.mmd, then run scripts/render.py for a PNG.
Rendering
Run the bundled script from the skill root:
python3 scripts/render.py --input concept-map.mmd --output concept-map.pngDispatch by file extension:
.mmd/.mermaid→mmdc(Mermaid CLI).dot/.gv→dot(Graphviz).md→markmap-cli(Markmap)
If the required CLI is missing, render.py exits 0 (non-fatal), prints platform-specific install commands, and points at https://mermaid.live/edit as a zero-install fallback. The syntax file is always preserved.
References (load on demand)
references/graph-type-guide.md— decision tree for picking tree / concept-map / flow / timeline / mindmap.references/mermaid-cheatsheet.md—graph TD,flowchart LR,mindmap,timeline, node shapes, edge labels, subgraphs, styling.references/dot-cheatsheet.md— DOT syntax,digraph,rankdir, clusters,dot/neato/fdplayouts.references/markmap-syntax.md— Markdown-heading-driven mind maps, frontmatter options.references/novak-concept-maps.md— Novak & Cañas theory: propositions (concept-link-concept), focus questions, cross-links, hierarchical layout.references/node-labeling.md— label length, noun-nodes / verb-edges, reading-level calibration.
Load a reference only when its topic is active — never preload.
Quality bar
Every generated graph must satisfy:
- Syntax parses in its target renderer (no Mermaid parse errors, valid DOT, valid Markmap).
- Root / central concept is unambiguous and matches the user's topic.
- Node count matches the grade calibration (±20%).
- For concept maps at grades 6+, every edge carries a verb or preposition label.
- Labels are ≤ 3 words where possible; nouns for nodes, verbs for edges.
- No hallucinated concepts when a source text is provided — each node maps to a substring or close paraphrase in the source.
- Rendered image is non-empty OR install hints are surfaced with a zero-install fallback URL.
What NOT to do
- Do not emit a graph with > 50 nodes — cluster lowest-importance concepts into parent groups and report what was collapsed.
- Do not leave edges unlabeled in concept maps for grades 6+.
- Do not silently pick one direction when source text supports both (A causes B and B causes A) — emit both with distinct labels.
- Do not fail hard when renderers are missing — always fall back gracefully and keep the syntax file.
- Do not ask more than one clarifying question.
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.

