Autonomous pipeline that turns a technical question into a draft blog post on the user's portfolio. Generates a staff-engineer-level deep dive, creates a hero image, and saves as a draft MDX post. Use when the user says "blog this", "write a blog", "publish this", "add to portfolio", or asks a technical question and wants it turned into a blog post.
Autonomous system that converts a technical question into a polished draft blog post on the user's portfolio at /Users/harrykp/Documents/portfolio/.
When triggered, execute ALL steps in order. Do not ask for confirmation between steps.
Read the skill at ~/.cursor/skills/staff-engineer-deep-dive/SKILL.md and follow its framework EXACTLY to produce the technical answer. Do not soften, summarize, or simplify. The blog IS the deep dive. This is not a tutorial blog — it's a technical reference written by a staff engineer for staff engineers.
Transform the deep-dive output into MDX. The content stays at maximum depth — only the formatting changes.
Title: Simple and direct — like an interviewer asking a question. The reader should instantly know the topic. No jargon-packed subtitles, no "— The Complete Guide" suffixes.
Summary: One plain sentence explaining what the post covers — like how you'd describe it to a colleague. Not a list of jargon, not a marketing hook.
Tags: Pick 2-5 relevant tags. Use existing tag conventions from the portfolio:
"Distributed Systems", "Database Transactions", "Networking", "Redis", "System Design""AWS", "Kafka", "gRPC", "Linux Internals", etc.Body requirements — NON-NEGOTIABLE:
##, ###) for sections.```c, ```python, ```sql, ```bash, ```text, etc.) for EVERY code block. NEVER use untagged code fences (bare ``` without a language). The blog's MDX renderer treats untagged code blocks as inline code, collapsing all lines into a single line. Use ```text for data layouts, formulas, and pseudocode that aren't a specific programming language.<details><summary> for tangential deep dives that support the main argument but would break flow (matches existing blog style).Use the GenerateImage tool to create a hero image:
erasure-coding.png/Users/harrykp/Documents/portfolio/public/{slug}.pngEvery blog post MUST have at least one Excalidraw diagram. Use Excalidraw for ALL visual content — sequence diagrams, architecture visuals, flowcharts, protocol flows, comparison diagrams. Never use ASCII art, mermaid, or plain-text diagrams in blog posts.
Read and follow the excalidraw-diagram skill at ~/.cursor/skills/excalidraw-diagram/SKILL.md (or .cursor/skills/excalidraw-diagram/SKILL.md in the portfolio repo). It handles the full pipeline: MCP design, Whiteboard Marker theme, .excalidraw source, Kroki SVG export.
Blog-specific paths:
content/diagrams/{slug}.excalidraw (not public, not served)public/diagrams/{slug}.svg (only SVGs in this directory)Create the file at /Users/harrykp/Documents/portfolio/content/{slug}.mdx.
Slug rules: lowercase, hyphens, no special characters. Derived from title.
erasure-codingFrontmatter template:
---