
Video Note
- 49 installs
- 61 repo stars
- Updated August 4, 2026
- joelhooks/joelclaw
Convert Obsidian video notes from the Vault into published MDX notes on joelclaw.com under apps/web/content.
About
Transforms Obsidian video notes from the Vault into published MDX notes on joelclaw.com. A developer uses it to convert vault video content into site content for publishing.
- Maps Obsidian video-note frontmatter and sections to published MDX on joelclaw.com
- Publishes to apps/web/content with a rewritten title, description, and metadata
Video Note by the numbers
- 49 all-time installs (skills.sh)
- Ranked #811 of 1,879 Documentation skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/joelhooks/joelclaw --skill video-noteAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 49 |
|---|---|
| repo stars | ★ 61 |
| Last updated | August 4, 2026 |
| Repository | joelhooks/joelclaw ↗ |
What it does
Convert Obsidian video notes from the Vault into published MDX notes on joelclaw.com under apps/web/content.
Files
Video Note Publishing
Transform video notes from /Users/joel/Vault/Resources/videos/ into published MDX notes on the joelclaw.com site at apps/web/content/.
Source format
Vault video notes are Obsidian markdown with this frontmatter:
type: video
source: https://www.youtube.com/watch?v=ID
channel: Channel Name
published: YYYY-MM-DD
duration: "HH:MM:SS"
nas_path: /volume1/home/joel/video/...
transcribed: YYYY-MM-DD
tags:
- videoBody contains: H1 title, > [!info] Source callout, Executive Summary, Key Points, Speaker Context, Notable Quotes, Related links, Tags, and a collapsible Full Transcript.
Output format
Publish as .mdx in apps/web/content/ with this frontmatter:
title: "Short descriptive title"
type: "note"
date: "YYYY-MM-DD" # use today's date
description: "One-sentence hook in Joel's voice"
source: "YouTube URL"
channel: "Channel Name"
duration: "HH:MM:SS"Transformation workflow
1. Read the source vault note 2. Extract YouTube video ID from the source URL 3. Write the note in Joel's voice (read joel-writing-style skill — it's in the same .agents/skills/ directory). Key rules:
- Open with a hook, not a summary
- Add a personal "why this matters to me" frame connecting the video to JoelClaw
- Use short paragraphs, strategic profanity, bold for emphasis
- End abruptly — no forced wrap-up
4. Embed the video with <YouTube id="VIDEO_ID" /> after the intro 5. Include everything from the vault note except the full transcript:
- Executive summary → rewrite as the intro (Joel's voice)
- Key points → keep substance, tighten prose
- Speaker context → "Who is [Speaker]" section
- Notable quotes → curated "Quotes that stuck with me"
- Related links → keep as "Related" section
6. Strip Obsidian syntax: > [!info] callouts → plain text, [[wikilinks]] → markdown links 7. Slug: kebab-case, concise (e.g., openclaw-peter-steinberger-lex-fridman)
Voice reference
For Joel's writing style details, read joel-writing-style SKILL.md and its voice examples. Key points:
- Conversational first person, address reader as "you"
- Contractions always
- Bold for inline emphasis on key phrases
- Emoji sparingly (1-2 per note max)
- Headers as narrative beats, not outlines
- Links woven into sentences, never "click here"
- Credit people by name with links
Content system details
See content-system.md for the joelclaw.com content types, MDX components, and routing.
Example
See example-note.md for a complete published note showing the target format and voice.
interface:
icon_small: "./assets/small-logo.svg"
icon_large: "./assets/large-logo.png"
<svg width="16" height="16" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" role="img" aria-label="JoelClaw icon">
<defs>
<clipPath id="circle-clip">
<circle cx="256" cy="256" r="248" />
</clipPath>
</defs>
<circle cx="256" cy="256" r="248" fill="#0a0a0a" />
<g clip-path="url(#circle-clip)">
<path fill="#ff1493" d="M175.656 22.375l-48.47 82.094c-23.017 4.384-43.547 11.782-60.124 22.374-24.436 15.613-40.572 37.414-45.5 67.875-4.79 29.62 1.568 68.087 24.125 116.093 93.162 22.88 184.08-10.908 257.25-18.813 37.138-4.012 71.196-.898 96.344 22.97 22.33 21.19 36.21 56.808 41.908 113.436 29.246-35.682 44.538-69.065 49.343-99.594 5.543-35.207-2.526-66.97-20.31-95.593-8.52-13.708-19.368-26.618-32-38.626l14.217-33-41.218 10.625c-8.637-6.278-17.765-12.217-27.314-17.782l-7.03-59.782-38.157 37.406c-12.418-5.186-25.184-9.804-38.158-13.812l-8.375-71.28-57.625 56.5c-9.344-1.316-18.625-2.333-27.812-2.97l-31.094-78.125zM222 325.345c-39.146 7.525-82.183 14.312-127.156 11.686 47.403 113.454 207.056 224.082 260.125 87-101.18 33.84-95.303-49.595-132.97-98.686z" />
</g>
</svg>
joelclaw.com Content System
Content types
Frontmatter type field distinguishes content:
| Type | Badge | Use |
|---|---|---|
article (default) | none | Original writing, deep dives |
note | note badge | Video notes, book notes, observations |
File location
All content: apps/web/content/*.mdx
Routing
Flat at /{slug} — notes and articles share the same URL space.
MDX components
Available in content files:
<YouTube id="dQw4w9WgXcQ" /> // responsive 16:9 iframe embedFrontmatter schema
Article (existing)
title: string # required
date: string # required, YYYY-MM-DD
description: string # requiredNote (video)
title: string # required
type: "note" # required — triggers badge
date: string # required, YYYY-MM-DD
description: string # required
source: string # YouTube URL
channel: string # channel name (shown in header)
duration: string # HH:MM:SS (shown in header)Source vault location
Video notes live at: /Users/joel/Vault/Resources/videos/
List available notes:
ls /Users/joel/Vault/Resources/videos/*.mdExample: Published Video Note
This is a truncated example of a published note showing the target format and Joel's voice. The full version lives at apps/web/content/openclaw-peter-steinberger-lex-fridman.mdx.
Frontmatter
---
title: "OpenClaw: Peter Steinberger on Lex Fridman"
type: "note"
date: "2026-02-15"
description: "Notes on the Lex Fridman interview with Peter Steinberger — the guy who built OpenClaw in three months, hit 180k GitHub stars, and accidentally created the most chaotic open source saga of 2026."
source: "https://www.youtube.com/watch?v=YFjfBk8HI5o"
channel: "Lex Fridman"
duration: "03:15:52"
---Opening (hook + personal frame + embed)
Three hours and fifteen minutes. I watched all of it. This is the interview that made me go _"I need to build my own version of this."_
[Peter Steinberger](https://steipete.com) built a one-hour prototype — hooking WhatsApp to Claude Code via CLI — and accidentally kicked off what might be the most important moment in AI since ChatGPT launched. [OpenClaw](https://github.com/nicepkg/openclaw) is an open-source AI agent that **lives on your computer, has access to all your shit, and actually does things**.
<YouTube id="YFjfBk8HI5o" />
## Why this matters to me
What makes this conversation worth your time isn't just the tech. It's Peter's whole arc...
**That's the part that got me.** Not the star count, not the tech stack — the fact that someone rediscovered the joy of building by playing with agents. I know that feeling. It's why JoelClaw exists.Key points section
Use ## The key stuff or similar conversational header. Bullet list with bold lead-ins. Keep the substance from the vault note, tighten prose.
Standalone sections for big stories
Pull out narratively rich sections (like the name change saga) into their own ## headers instead of burying them in bullet points.
Quotes section
## Quotes that stuck with me
> I watched my agent happily click the I'm not a robot button.
> It's hard to compete against someone who's just there to have fun.Speaker context
## Who is Peter Steinberger
[Peter Steinberger](https://steipete.com) ([@steipete](https://x.com/steipete)) is an Austrian software engineer...Ending (abrupt, warm)
_This is the interview that started this whole project. If you've got three hours, watch it. If you don't, the key points above cover the stuff that matters most._