video-note
$
npx mdskill add joelhooks/joelclaw/video-notePublishes Obsidian video notes from a Vault to a blog, converting markdown to MDX format for joelclaw.com.
- Helps automate publishing video content from a personal knowledge base to a public website.
- Integrates with Obsidian Vault for source files and outputs to a specific directory structure.
- Triggers on user requests involving video notes, vault files, or publishing tasks to the blog.
- Delivers results by generating MDX files with transformed frontmatter and content for web display.
SKILL.md
.github/skills/video-noteView on GitHub ↗
--- name: video-note displayName: Video Note description: "Transform Obsidian video notes from the Vault into published notes on joelclaw.com. Use when publishing video notes, converting vault video content to the site, or when asked to 'publish a video note,' 'turn this video into a note,' 'publish from vault/videos,' or any task involving /Vault/Resources/videos → joelclaw content. Triggers on references to video notes, vault video files, or publishing video content to the blog." version: 1.0.0 author: Joel Hooks tags: [joelclaw, video, notes, publishing, obsidian] --- # 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: ```yaml 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: - video ``` Body 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: ```yaml 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](../joel-writing-style/SKILL.md) and its [voice examples](../joel-writing-style/references/voice-examples.md). 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](references/content-system.md) for the joelclaw.com content types, MDX components, and routing. ## Example See [example-note.md](references/example-note.md) for a complete published note showing the target format and voice.
More from joelhooks/joelclaw
- add-skillCreate new joelclaw skills with the idiomatic process — repo-canonical, symlinked, git-tracked, slogged. Triggers on 'add a skill', 'create skill', 'new skill', 'canonical skill', 'make a skill for', or any request to formalize a process or domain into a reusable skill.
- adr-skillCreate and maintain Architecture Decision Records (ADRs) optimized for agentic coding workflows. Use when you need to propose, write, update, accept/reject, deprecate, or supersede an ADR; bootstrap an adr folder and index; consult existing ADRs before implementing changes; or enforce ADR conventions. This skill uses Socratic questioning to capture intent before drafting, and validates output against an agent-readiness checklist.
- agent-discovery"Optimize websites, docs, and product surfaces for agent discoverability and operator UX. Use when working on agent SEO/AEO/GEO, crawl policy, markdown or JSON projections, llms.txt, sitemap.md, AGENTS.md guidance, content negotiation, accessibility for browser agents, or any request to make a site easier for pi, OpenCode, Claude Code, ChatGPT, Perplexity, or other agent harnesses to find and use."
- agent-loopStart, monitor, and cancel durable multi-agent coding loops via Inngest. Use when the user wants to run autonomous coding workloads, execute a PRD with multiple stories, kick off an AFK coding session, have agents implement features from a plan, or manage running loops. Triggers on "start a coding loop", "run this PRD", "implement these stories", "go AFK and code this", "check loop status", "cancel the loop", "joelclaw loop", or any request for autonomous multi-story code execution.
- agent-mail>-
- agent-workloads"Compatibility alias for the canonical `workflow-rig` front door. Use when older prompts mention `agent-workloads` or when you need the legacy workload-planning guidance; for new work, load `workflow-rig` first."
- clawmail>-
- cli-design"Design and build agent-first CLIs with HATEOAS JSON responses, context-protecting output, and self-documenting command trees. Use when creating new CLI tools, adding commands to existing CLIs (joelclaw, slog), or reviewing CLI design for agent-friendliness. Triggers on 'build a CLI', 'add a command', 'CLI design', 'agent-friendly output', or any task involving command-line tool creation."
- codex-prompting"Use this skill for any request to trigger, coordinate, or craft prompts for Codex. Use when user says 'send to codex', 'use codex', 'prompt codex', 'ask codex', 'delegate to codex', 'run in codex', or asks for a Codex-first execution handoff."
- content-publish"Publish content to joelclaw.com via the Convex-first pipeline. Covers the full lifecycle: draft → review → publish → revalidate → verify. Handles secret leasing, tag conventions, content types (article, tutorial, note, essay), and verification gates. Use when: 'write article about X', 'publish article <slug>', 'draft a tutorial', 'publish this', 'push to convex', or any content publishing task."