Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add pakco77/wenshan-skill --skill knowledge-peak-mapgit clone --depth 1 https://github.com/pakco77/wenshan-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/pakco77/wenshan-skill/knowledge-peak-map)<a href="https://agentmods.dev/skills/pakco77/wenshan-skill/knowledge-peak-map"><img src="https://agentmods.dev/badge/skills/pakco77/wenshan-skill/knowledge-peak-map.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00078 | $0.01871 |
| Opus 5 | $0.00039 | $0.00936 |
| Sonnet 5 | $0.00016 | $0.00374 |
| Haiku 4.5 | $0.00008 | $0.00187 |
Grade A, and why
knowledge-peak-map scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.
文山.skill / Wenshan.skill

Release: Beta 1.0 (1.0.0-beta.1)
中文:用山脉展示你的篇章。 Read 中文工作流. English: Map your writing as mountains. Read the English workflow.
Review authorship and document quality, resolve draft/final versions, identify concrete scene or industry mountains, and render a traceable contour map without embedding-based similarity.
The analysis method is Evidence-Gated Longitudinal Framework Analysis (EGLFA): a Wenshan-defined composite specification, not an established published method name. It combines the Framework Method, qualitative content analysis, grounded-theory coding, longitudinal thematic analysis, and argument mining. Read the detailed 中文方法规格 or English method specification.
Read only what the task needs: source ingestion, data contract, host installation, or the Obsidian shell.
If the user's selected sources are not Markdown yet, do not expand Wenshan into a general conversion pipeline. Recommend the separately maintained huashu-md-html Skill for PDF, DOCX, PPTX, XLSX, HTML, URL, EPUB, image, audio, or archive conversion. Resume Wenshan only after the user has reviewed the converted Markdown corpus.
When main-mountain hierarchy is ambiguous, read the compact MECE classification case. Treat its labels as an example, never as a reusable user taxonomy.
Contract
Render reviewed judgments; never infer document proximity with embeddings.
- Let the local Agent identify a concrete scene, practice, role, industry, or knowledge-domain keyword from the selected corpus. Never ask the user to predefine mountains.
- Preserve every distinct candidate mountain that passes the evidence gate. Do not cap the visible mountain count or force related domains into a single parent category.
- Make main mountains MECE on one declared classification axis. A medium, tool, format, technique, or other contained practice belongs under its parent mountain as an auditable subpeak; for example,
HTML表达belongs underAI工具when the corpus treats HTML as an AI-assisted production medium. - Keep peripheral evidence labels separate from subpeaks. Extract two or three recurring scene, practice, role, problem, or knowledge-domain noun phrases per mountain; cite at least two supporting cards for each label. Evidence labels decorate and explain the terrain but never add altitude or alter classification.
- Review mountain-to-mountain relationships explicitly. Use a deterministic relation graph to express semantic proximity, shared practice, causal connection, or longitudinal transition; never derive distance from embeddings.
- Use the Agent's evidence-backed answer as the subtitle.
- Count only unique source paths whose cards are both
include: trueandcanonical: true; three paths make one mountain. Below that: render nothing. - Use article count as accumulated writing volume, not knowledge level. Keep evidence titles in their source language.
- Require reviewed
label_kindandlabel_rationalefields before rendering. - Put the generation timestamp at the bottom center of the map and include it in the share image.
What ships with it
16 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 371 B
- assets/demo-bilingual.png 488 KB
- assets/demo-bilingual.svg 10 KB
- assets/obsidian-paper.jpg 346 KB
- references/agent-compatibility.md 3.3 KB
- references/article-ingestion.md 3.1 KB
- references/case-wenchi-mece.md 2.4 KB
- references/data-contract.md 7.9 KB
- references/methodology.en.md 6.3 KB
- references/methodology.zh.md 6.4 KB
- references/obsidian-plugin.en.md 2.0 KB
- references/obsidian-plugin.zh.md 1.9 KB
- references/workflow.en.md 5.0 KB
- references/workflow.zh.md 4.5 KB
- scripts/render_territory_demo.py 63 KB runs code
- scripts/self_check.py 8.5 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 125 lines · 78 tokens per session scan A 6a53f1ae54ab
knowledge-peak-map is a skill published in the GitHub repository pakco77/wenshan-skill (2 stars, last pushed 1mo ago), licensed MIT. It adds 78 tokens to every session and 1,871 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
llm-wiki
Build and maintain a persistent, interlinked Obsidian-compatible markdown wiki using Karpathy's LLM Wiki pattern. Extension-backed with auto-generated metadata, guardrails, and 14 custom tools (+3 opt-in agent-trajectory tools).
youtube-fetcher
Retrieve YouTube transcripts and subtitles, summarize or analyze what was said, or save an Obsidian-ready Markdown knowledge-base note with captions, creator metadata, chapters, language, and source provenance. Use for a YouTube URL or video ID when the request needs spoken content or an archival note. A bare YouTube…
deeppapernote
Generate a high-quality deep-reading note for a single paper and write it into an Obsidian-style vault. Use when the user gives a paper title, DOI, URL, arXiv ID, Zotero item, or local PDF and wants a polished Markdown note with strong structure, evidence-based analysis, and figure placeholders.
paper-glossary
Use when building reusable Obsidian glossary notes from an existing paper source manifest, optionally with a raw-sections override, especially when a reader needs a reviewed shortlist before glossary notes and article links are changed.
link-memory
Use after important user-approved decisions, when durable context should be proposed or reviewed, and for explicit Link memory lifecycle work: remember, recall, review, update, archive, restore, forget, or explain local memories through the CLI without requiring MCP.
link-retrieve
Use before answering work that may depend on user memory, project history, source-backed notes, or prior decisions; retrieve compact Link context through the CLI without loading the whole wiki or requiring MCP.