| name | write-post |
| description | Guided 7-phase blog post writing. Use when writing a long-form blog post from scratch or from a pipeline-generated outline. Triggers: write post, blog post, write article.
|
/guide:write-post — Blog Post Writing
Write a long-form blog post from scratch or from a pipeline-generated outline.
A 7-phase guided writing process that helps you write an authentic blog post in your voice.
Getting Started
This skill can start two ways:
- From a pipeline outline — If a blog outline exists in
content/drafts/ with needs_write_post: true in its frontmatter, offer to pick up from that outline and start from that context.
- From scratch — If no outline exists or the user wants to start fresh, begin with the context phase. This preserves the current behavior of the original /write-post skill.
Voice Profile
Read the voice profile from config.yaml at voice.reference path. If the voice profile file is missing or unavailable, fall back to inline voice hints from the voice.tone config field. The skill should still work without a voice reference — use the tone keywords as style anchors.
The 7 Phases
Phase 1: Context
Gather context for the post:
- What's the core idea or experience?
- Who is the audience?
- What should the reader feel or do after reading?
- Read any existing blog outline (from pipeline or user-provided)
Phase 2: Scaffold
Create the post structure:
- Build an outline following the emotional arc (hook → scene → mess → moment → reflection → soft landing)
- Map each section to specific experiences, signals, or insights
- Identify the emotional thread that ties everything together
Phase 3: Dictate
Write the first draft:
- Encourage the user to speak/write freely — capture raw voice
- Don't edit for polish yet — get the ideas down
- Preserve authentic phrasing and emotional moments
Phase 4: Shape
Shape the raw draft into a structured post:
- Apply the scaffold structure
- Ensure smooth transitions between sections
- Check that the emotional arc flows naturally
- Maintain the user's authentic voice throughout
Phase 5: Iterate
Refine the draft:
- Read aloud — does it sound like the user?
- Check for jargon, corporate-speak, or generic language
- Tighten sentences (target under 25 words each)
- Ensure first-person voice is consistent
- Get user feedback and incorporate changes
Phase 6: Publish-Prep
Prepare for publication:
- Write a compelling title (short, honest, curiosity-driven)
- Create a meta description
- Add any required frontmatter (date, tags, slug)
- Format for the target platform
Phase 7: Audio
Optional audio version:
- Generate a read-aloud version if audio tools are available
- Adjust pacing and emphasis for spoken delivery
Output
Write the final post to blog/<slug>/post.md, preserving the existing blog directory convention.
Edge Cases
- No blog outline exists: Start from scratch (this is the current behavior and should always be supported)
- Blog outline has
needs_write_post: true: Offer to start from that outline as a foundation
- Voice profile missing: Use inline voice hints from the
voice.tone config field as a fallback