Domain learn
Skill shangjunyang1986/ai-learning-skills/skills/domain-learn
Research an open topic / field across the web and turn it into an offline, visual, beginner-to-hands-on learning page — a single self-contained HTML file with a left table of contents, a learning roadmap, sourced explanations, the field's real images and videos downloaded locally, and (when the topic admits it) an interactive in-browser demo that teaches the core intuition. Use this whenever the user wants to LEARN, STUDY, RESEARCH, "get into", or "做个从入门到实践的教程" for a TOPIC or FIELD that is NOT a single GitHub repo — e.g. "我想学习 3DGS / 帮我研究下扩散模型 / 给我做个 RAG 从入门到实践的 学习教程 / I want to get up to speed on reinforcement learning / explain CRDTs end to end". Triggers on a topic name + intent to learn/understand it, even without the words "website" or "HTML". Distinguish from siblings: a GitHub URL → use github-project-learn; a specific book/PDF → use textbook-learn; a bare topic/field → THIS skill. Not for: answering a quick factual question (just answer it), or building generic web apps.From its SKILL.md
npx -y skills add shangjunyang1986/ai-learning-skills --skill domain-learnAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 1 command, including `scripts/fetch-media.sh`.
SKILL.md
5.4 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
domain-learn
Turn an open topic (a research field, a technique, a concept) into a single, offline-openable learning page that takes someone from intuition → theory → hands-on → frontier. Left = table of contents, right = a learning roadmap and sourced content, with the field's own diagrams and videos downloaded locally and — when the topic is visual or algorithmic — one interactive in-browser demo that makes the core idea click.
This is the family's sibling to github-project-learn. The output shell is the same; what
differs is the source (the open web, not one repo), the research rigor (everything
sourced — the web is fuzzy and we must not fabricate), the pedagogy (a beginner→frontier
roadmap), and the interactivity (a teaching demo, not just a code walkthrough).
When to use
The description covers triggering. In short: a topic/field name + any "I want to learn / research / understand this" intent, where the subject is not a single GitHub repo or a specific book. Examples: "学习 3DGS", "研究下扩散模型", "RAG 从入门到实践", "explain CRDTs".
Output shape
A folder (default <topic>-learn/) containing:
index.html— self-contained (inline CSS+JS), double-click to open, fully offlineassets/— the field's real images/diagrams/video covers, downloaded
Workflow (high level)
- Scope the topic with the user. Confirm the exact subject and the depth (a quick orientation vs a thorough入门→前沿 treatment). Tell them you'll build a single self-contained offline page.
- Research rigorously, in parallel. Fan out (subagents when available) over three
angles: (a) fundamentals + the seminal work, (b) the ecosystem / tools / key
implementations, (c) learning resources + videos + a suggested path. Every non-obvious
claim, number, and link must come from a real fetch and carry a source. Flag anything
you can't verify rather than guessing. See
references/research-sourcing.md— this is the make-or-break difference for an open topic. - Design the learning roadmap (入门 → 进阶 → 实践 → 前沿) and map resources to each stage.
- Build one interactive demo if the topic admits a clean visual/algorithmic intuition
— a self-contained, offline canvas/SVG/WebGL playground with controls that teaches ONE
core concept. If the topic has no clean visual, skip it rather than forcing one. See
references/interactive-demos.md. - Download media with
scripts/fetch-media.shintoassets/(handles Git LFS and blocked hosts; drops broken/placeholder covers automatically). - Generate the page by copying
assets/template.html(a complete worked example — the 3D Gaussian Splatting page) and replacing its content, keeping the CSS, the JavaScript (lightbox, scroll-spy, glossary search, copy buttons, video cards), and the section scaffolding.
Read references/workflow.md for step-by-step detail, references/page-design.md for the
section list + components, references/research-sourcing.md before researching, and
references/interactive-demos.md before building the demo.
Bundled resources
assets/template.html— the proven page (a worked 3D Gaussian Splatting example). Copy it, keep its CSS + JS (lightbox, scroll-spy, searchable glossary, copy buttons, video cards, and the interactive-demo pattern), replace all content.scripts/fetch-media.sh—./fetch-media.sh <out>/assets name1=url1 …. Auto-fixes Git LFS pointers, routes blocked hosts through a proxy, and drops invalid/placeholder images. Run via the Bash tool (git-bash curl), not Windows cmd curl.
Principles that make the page good
- Faithful, never fabricated — and sourced. Open-web topics are full of half-truths. Cite the paper / official page / API for every claim; flag uncertainty; say "no good resource exists" when true. This is the skill's single most important rule.
- Roadmap, not a dump. Organize for a learner's journey (intuition first, math second, hands-on third, frontier last), not as an encyclopedia.
- One great demo beats ten paragraphs. When the topic is visual/algorithmic, an interactive playground is the highest-value thing on the page.
- Offline-first. Relative
assets/paths; verify every download is a real image. - Confirm scope before a long research run.
What ships with it: 7 files
68.8 KB alongside SKILL.md, 1 of them executable
assets/
- template.html50.1 KB
evals/
- evals.json1.4 KB
references/
- interactive-demos.md3.4 KB
- page-design.md3.2 KB
- research-sourcing.md3.4 KB
- workflow.md4.1 KB
scripts/
- fetch-media.shruns3.2 KB