lecture-notes-master
Obsidian lecture notes with recursive atomic decomposition. Generates main note (hub), atomic notes (3+ layers deep, rich structure each), and unlimited glossary entries. Inputs: lectures, articles, videos, URLs, transcripts, PDFs. Outputs: Obsidian markdown with Mermaid diagrams, comparison tables, bilingual terms, wikilinks.
安装 / 下载方式
TotalClaw CLI推荐
totalclaw install github:LeoYeAI~openclaw-master-skills~lecture-notes-mastercURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/github%3ALeoYeAI~openclaw-master-skills~lecture-notes-master/file -o lecture-notes-master.md# Lecture Notes Master
Generate structured Obsidian lecture notes with **recursive atomic decomposition**:
- **主笔记 (Main Note)**: Hub note with overview, core sections, summary, review questions
- **原子笔记 (Atomic Notes)**: Deep concept notes in ≥3 layers, each layer with rich structure
- **原子概念 (Glossary)**: Unlimited bilingual term definitions
## When to Apply
**Triggers**:
- User provides: URL, video link, PDF, transcript, PPT, slides, article
- User says: "总结", "summarize", "create notes", "lecture notes", "笔记", "做笔记"
- User mentions: Obsidian, atomic notes, wikilinks, PARA, MOC
- User provides content for note-taking or analysis
- Exam prep / study materials
**Example prompts**:
- "总结一下这个视频 https://youtu.be/xxx"
- "Create lecture notes for this article"
- "帮我做笔记 https://www.example.com/article"
- "Summarize this into Obsidian notes"
---
## User Profile
Configured in `config.json`:
- **Name**: Schaefer (Zonghan Jia)
- **University**: Heidelberg University (ZITI), Computer Engineering
- **Obsidian Vault**: See `config.json` → `obsidian.vault_path`
- **Output Directory**: `00-Inbox/{Topic}/` (main note + glossary + numbered L1 subdirectories)
- **Language**: Bilingual — English primary, Chinese secondary
- **Term format**: `English Term(中文术语)`
---
## Core Principles
### Recursive Atomic Decomposition
Every source material is decomposed into a tree of notes, organized into **numbered subdirectories by L1 topic**:
```
{Topic}/
├── 主笔记: {Topic}-Notes.md
│ Hub note linking to all L1 atomic notes
│
├── 01-{L1-Concept-A}/
│ ├── {L1-Concept-A}.md (L1 顶层概念)
│ ├── {L2-Sub-Concept-A1}.md (L2 子概念)
│ ├── {L2-Sub-Concept-A2}.md (L2 子概念)
│ ├── {L3-Detail-A1a}.md (L3 细分解)
│ └── {L3-Detail-A1b}.md (L3 细分解)
│
├── 02-{L1-Concept-B}/
│ ├── {L1-Concept-B}.md (L1 顶层概念)
│ ├── {L2-Sub-Concept-B1}.md (L2 子概念)
│ └── {L3-Detail-B1a}.md (L3 细分解)
│
├── 03-{L1-Concept-C}/
│ └── {L1-Concept-C}.md (L1 顶层概念)
│
├── glossary/(原子概念 — 术语定义,不限量)
│ ├── English Term(中文术语).md
│ └── ... 每个术语一个文件
│
└── assets/(图表资源)
└── *.png
```
### Directory Organization Rules
| Location | Contains | Example |
|----------|----------|---------|
| `{Topic}/` root | Main note only | `Lazygit-Notes.md` |
| `NN-{L1-Concept}/` | L1 note + its L2 children + their L3 children | `01-Installation-and-Setup/` |
| `glossary/` | All glossary entries | `glossary/TUI(终端用户界面).md` |
| `assets/` | Generated charts/images | `assets/performance-chart.png` |
**Numbering Rules**:
1. L1 subdirectories use two-digit prefix: `01-`, `02-`, `03-`, ...
2. **No atomic notes in the topic root** — only the main hub note lives there
3. Within each L1 folder, all notes are flat (L1 + L2 + L3 together, no further nesting)
4. Numbering follows the order of L1 concepts as they appear in the main note
5. Wiki-links use filename only (no path prefix) — Obsidian resolves them automatically
### Decomposition Rules
**Layer 1 (顶层概念)**:
- Source material's major themes, sections, or arguments
- Each L1 note covers ONE major concept branch
- Number: determined by content (typically 3-7, NOT fixed)
**Layer 2 (子概念)**:
- Sub-concepts, mechanisms, or components within each L1 concept
- Each L2 explains a specific aspect of its parent L1
- Number: typically 2-4 per L1 parent
**Layer 3+ (细分解)**:
- Specific mechanisms, case studies, comparisons, or evidence
- Finest granularity of analysis
- Number: as many as the content demands
**Stop Decomposing When**:
- A concept can be fully explained in ≤500 words with one diagram
- Further splitting would break logical coherence
- The concept is better served as a glossary entry (pure definition)
**Glossary vs Atomic Note**:
| Use Glossary | Use Atomic Note |
|--------------|-----------------|
| Term needing a bilingual definition (1-3 sentences) | Concept requiring explanation, examples, diagrams |
| No deep analysis needed | Has sub-components worth exploring |
| Pure noun/term | Has "why", "how", comparison dimensions |
### Minimum Requirement
Every set of notes **MUST** produce:
- 1 main note (主笔记)
- ≥3 layers of atomic notes (L1 → L2 → L3 minimum)
- Glossary entries for ALL technical terms mentioned
### Every Atomic Note Must Be Rich
**ALL atomic notes (L1, L2, L3)** use the **same rich template** structure:
1. **定义** — One-paragraph definition with inline wikilinks
2. **Why Do We Need This?** — Motivation with concrete scenario
3. **Core Concept** — Idea + example + Mermaid diagram + step-by-step breakdown
4. **Comparison** — Table comparing with/without, or vs alternatives
5. **Common Pitfalls** — 2-3 mistakes and fixes (omit only if truly not applicable)
6. **Key Takeaway** — One flashcard-worthy sentence
7. **Review Questions** — 3 levels: recall, understanding, application
8. **Related Notes** — Parent (UP), children (DOWN), siblings (ACROSS)
> See `templates/atomic-note.md` for the full template.
### Writing Style: Runoob Tutorial(菜鸟教程风格)
| Rule | Description |
|------|-------------|
| **Step-by-step** | "Why do we need this?" → "What is it?" → "How does it work?" → "Watch out for..." |
| **Example-driven** | Example FIRST, then explain the principle. Never start with pure theory |
| **Visual-rich** | Every concept gets at least one Mermaid diagram OR table |
| **Table comparison** | Similar concepts → comparison table |
| **Bilingual terms** | `English Term(中文)`, English is primary |
| **Atomic** | Each note covers exactly ONE concept |
| **Review questions** | 3 per note: recall, understanding, application |
---
## Prerequisites
```bash
python3 --version || python --version
pip3 install matplotlib numpy # For visualization scripts (optional)
```
Optional: `summarize` CLI for URL/video content extraction.
---
## Workflow
### Step 1: Analyze User Input
Identify: input type (URL, video, PDF, transcript, raw text), topic name, key themes.
#### URL & Video Content Extraction
When user provides a URL or video link, use `summarize` CLI:
```bash
# Extract text from URL
summarize "<URL>" --extract-only --model google/gemini-3-flash-preview
# Extract YouTube transcript
summarize "<YouTube-URL>" --youtube auto --extract-only
# Pre-summary for screening
summarize "<URL>" --length medium --model google/gemini-3-flash-preview
```
**Useful flags**: `--extract-only` (raw text), `--youtube auto`, `--firecrawl auto` (JS-heavy sites), `--json`
**If `summarize` is not available**: Use the agent's built-in web fetching tools as fallback.
### Step 2: Plan Decomposition Tree
> **⚠️ MANDATORY: You MUST complete this step BEFORE writing ANY content.**
> **⚠️ MANDATORY: You MUST create ALL directories with `mkdir -p` BEFORE writing ANY files.**
> **⚠️ ZERO TOLERANCE: No atomic notes are allowed in the topic root directory. ONLY the main hub note lives there.**
**Plan the COMPLETE file tree with numbered directories, then create them immediately.**
#### 2a. Plan the tree (output to user for confirmation)
```
Topic: 2028 Global Intelligence Crisis
主笔记: 2028-Global-Intelligence-Crisis-Notes.md (in topic root)
01-Intelligence-Displacement-Spiral/
L1: Intelligence-Displacement-Spiral.md
L2: OpEx-Substitution-Mechanism.md
L2: Ghost-GDP-Phenomenon.md
L3: OpEx-vs-CapEx-AI-Spending.md ← parent: OpEx-Substitution
L3: Why-No-Natural-Brake.md ← parent: OpEx-Substitution
02-SaaS-Collapse-and-Intermediation-Death/
L1: SaaS-Collapse-and-Intermediation-Death.md
L2: Agentic-Coding-Disruption.md
L2: Habitual-Intermediation-Collapse.md
L3: Friction-Zero-Disruption.md ← parent: Habitual-Intermediation
03-White-Collar-Displacement-Asymmetry/
L1: White-Collar-Displacement-Asymmetry.md
L2: Downshifting-Effect.md
L2: Labor-Share-Decline.md
04-Financial-Contagion-Chain/
L1: Financial-Contagion-Chain.md
L2: Private-Credit-SaaS-Crisis.md
L2: Permanent-Capital-Trap.md
L2: Mortgage-Market-Str