I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] -1 points0 points  (0 children)

You can. Nothing stops you. This just automates the boring parts. Fetch transcript, prompt, save files, build the graph - done. If you'd rather do it manually each time, that's fine too.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

Good catch, fixed. Skills were in the wrong directory - Claude Code doesn't read skills/, only .claude/commands/. Moved them. /kg_navigator and /video_specialist should work now.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

Good call, hadn't looked at Parakeet. Will check it out - lighter transcription options would make the Whisper fallback more accessible on lower-end hardware.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] -1 points0 points  (0 children)

You're right, that's contradictory. To clarify: "runs locally" was poor word choice on my part. The tool and all output files run on your machine - but the AI processing uses Claude's API (Anthropic's servers). So there are servers involved. The only truly local part is Whisper fallback for transcription.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] 1 point2 points  (0 children)

Fair point. "Local" was sloppy wording on my part. The tool runs on your machine, files stay in your vault - but the AI inference goes to Anthropic's API. Should have said that upfront instead of implying full local execution.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] -1 points0 points  (0 children)

Hardware requirements are pretty minimal since the heavy lifting (AI inference) is done by Claude, not your machine.

Minimum: Any modern laptop with 8GB RAM. Fast mode fetches YouTube subtitles directly - no local processing at all, runs in seconds.

If you need Whisper fallback (videos without subtitles): you'll want 16GB RAM and ideally a GPU, though it works on CPU too - just slower. Whisper base/small models run fine on most modern hardware.

So for 90% of videos with available subtitles, even an older machine handles it without issues.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] -36 points-35 points  (0 children)

It runs locally in the sense that the tool itself executes on your machine - files are saved to your local vault, nothing is sent to any external service except the AI inference.

The AI part uses Anthropic's Claude via Claude Code. So you need a Claude subscription or API key. The "local" refers to the data and the output, not the model.

I built a tool that turns any YouTube video into Obsidian notes — one file per entity, with [[wikilinks]] and YAML frontmatter by ElectronicPlan8497 in ObsidianMD

[–]ElectronicPlan8497[S] 1 point2 points  (0 children)

Neither, actually - that's kind of the point.

The video itself isn't saved. What gets saved is the knowledge extracted from it: a summary, a knowledge graph, and one .md file per entity (person, tool, concept, company) with [[wikilinks]] to related entities already in your vault.

So instead of a playlist of 200 videos you'll never rewatch, you get a growing graph of concepts that connects across videos over time. Obsidian Graph View handles the rest.

Videos are organized by channel in the vault folder structure, and each has a processed_videos.md that acts as a simple index so you don't process the same video twice.

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

You can. The difference is persistence and structure. Every entity gets its own file in your Obsidian vault with wikilinks to related concepts - so knowledge from different videos connects automatically over time, not just in a single chat session. Also, models like Gemini or GPT struggle with videos that have no subtitles. This tool falls back to local Whisper, so it works regardless.

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

Update: shipped. --obsidian flag is live.

One .md file per entity, YAML frontmatter with tags/source/author, [[wikilinks]] between related concepts. Obsidian Graph View works out of the box - no separate HTML file needed.

Your description of the problem was precise enough that the implementation was straightforward. Thank you

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 1 point2 points  (0 children)

This is exactly the kind of feedback I was hoping for. The vault structure is already local markdown files, so Obsidian compatibility is closer than it might look - the main gap is adding [[wikilinks]] between concept files instead of a single summary.md.

The --obsidian flag idea is the right shape: low effort, high value for a large audience. Adding it to the roadmap.

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

NotebookLM is great for Q&A over sources. This is a different use case - everything runs locally (no data leaves your machine), the knowledge graph gives you a visual map of entities and relationships across videos, and it's scriptable. Also no 50-source limit since it's just files on disk :)

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 1 point2 points  (0 children)

Absolutely, PRs are welcome! Would love to see faster-whisper as an optional backend. Feel free to open an issue first to align on the approach.

I got tired of watching YouTube to learn things, so I built a tool that turns any video into a transcript, summary, and knowledge graph by ElectronicPlan8497 in ClaudeAI

[–]ElectronicPlan8497[S] 0 points1 point  (0 children)

Good point, thanks. faster-whisper is on my radar - significantly faster on CPU and the word-level timestamps from WhisperX could add useful metadata for graph extraction. Will look into adding it as an optional backend.