Managing Blog Ideas
Create and evolve blog post ideas from initial concept to publication-ready draft.
Location
All blog ideas live in content/blog-ideas/ and are excluded from Nuxt Content publishing.
Mode Detection
- List mode: User asks "what blog ideas" or "list blog ideas" → list all files in
content/blog-ideas/
- Update mode: User provides slug/title that exists → load and update
- Create mode: New topic → create fresh blog idea
CREATE Mode
Phase 1: Gather Information
If topic not provided, ask:
question: "What topic would you like to write about?"
header: "Blog Topic"
Search Second Brain for related notes:
Grep pattern: "{topic keywords}" glob: "content/*.md"
Present found connections to user
Phase 2: Generate Blog Idea
Frontmatter:
---
title: "Working Title"
status: idea
tags:
- tag-1
- tag-2
core_idea: "Single sentence thesis"
target_audience: "Vue/Nuxt developers who..."
reader_outcome: "After reading, they will [think/feel/do X]"
created: { today YYYY-MM-DD }
updated: { today YYYY-MM-DD }
---
Body structure:
- Core Idea section (1-2 sentences)
- Outline with 3-5 sections (H3 headers with bullet points)
- Source Notes (wiki-links to related Second Brain notes)
- Open Questions (what needs research/clarification)
Phase 3: User Review
Present the generated content and ask:
question: "Does this blog idea look good?"
header: "Review"
multiSelect: false
options:
- label: "Save"
description: "Create the blog idea file"
- label: "Edit"
description: "Tell me what to change"
Phase 4: Save
Generate slug: lowercase title, spaces to hyphens, remove special characters.
Save to content/blog-ideas/{slug}.md.
Confirm creation with file path and summary.
UPDATE Mode
Phase 1: Load Existing
- Find the file:
Glob: content/blog-ideas/{slug}*.md
- Read and display current state:
- Status
- Last updated
- Current outline structure
- Source notes count
Phase 2: Choose Update Action
question: "What would you like to do with this blog idea?"
header: "Update"
multiSelect: false
options:
- label: "Expand outline"
description: "Add more sections or detail to existing sections"
- label: "Draft a section"
description: "Write content for one of the outline sections"
- label: "Polish & Edit"
description: "Cut filler, tighten prose, improve skimmability"
- label: "Find sources"
description: "Search Second Brain for more related notes"
- label: "Update status"
description: "Move to next stage (idea → outline → draft → ready)"
- label: "Refine core idea"
description: "Sharpen the thesis or angle"
- label: "Prep for distribution"
description: "Create teaser, thread points, and pull quotes"
Phase 3: Execute Update
Expand outline:
- Read current sections
- Ask which section to expand OR add new section
- Generate additional bullet points / subsections
Draft a section:
- Present section titles
- User picks one
- Generate draft prose following writing-style skill (especially Alexander's Voice Profile)
- Insert under
## Draft Sections
Polish & Edit:
- Review draft sections for filler and bloat
- Apply the Ruthless Editing Checklist:
- Cut 20-30% of word count
- Remove filler phrases: "very", "really", "just", "actually", "in order to", "basically", "essentially"
- Replace "in terms of" with direct language
- Cut redundant qualifiers ("completely unique" → "unique")
- Delete weak sentence starters ("I think that", "It seems like", "In my opinion")
- Improve skimmability (see Skimmability Guidelines)
- Suggest reading the draft aloud to catch awkward phrasing
Find sources:
- Extract keywords from title/outline
- Search Second Brain
- Present candidates
- Add selected links to Source Notes
Update status:
- Validate readiness for next stage
- Update frontmatter status field
Refine core idea:
- Present current core_idea
- Discuss with user
- Update frontmatter
Prep for distribution:
- Generate teaser hook (2-3 sentences to post before publishing)
- Extract 3-5 thread points (key insights as standalone posts)
- Identify 2-3 pull quote candidates (shareable insights)
- Add to
## Distribution section
Phase 4: Save
- Apply edits
- Update
updated date
- Confirm changes
Status Definitions
| Status |
Criteria |
Next Step |
idea |
Has title and basic core_idea |
Develop outline |
outline |
3+ sections with bullet points |
Draft sections |
draft |
At least one section has prose |
Complete all sections |
ready |
All sections drafted, reviewed |
Publish to blog |
Blog Idea Template
---
title: "[Action Verb] + [Specific Outcome] + [Context/Tool]"
status: idea
tags:
- topic-1
core_idea: "Single sentence thesis"
target_audience: "Vue/Nuxt developers who..."
reader_outcome: "After reading, they will [think/feel/do X]"
created: YYYY-MM-DD
updated: YYYY-MM-DD
---
## Core Idea
[1-2 sentences: What's the main argument? What will readers take away?]
## Outline
### 1. [Hook: Problem Statement or Observation]
- Open with pain point or personal observation
- First person welcome
- Never "In this post, we will..."
### 2. The Problem
- Concrete example of the pain point
- Real scenario, specific details
### 3. The Solution
- High-level approach
- Why this works
### 4. [Implementation Step]
- Code + explanation
- Before/after with ❌/✅ if applicable
### 5. When to Use This
- Specific scenarios where this applies
### 6. When NOT to Use This
- Honest assessment of limitations
- Alternative approaches
### 7. Conclusion
- Key insight (1-2 sentences)
- Ask a question to spark discussion
- Clear call-to-action
- Optional: related content links
## Source Notes
[Wiki-links to Second Brain notes that inform this post]
- [[note-slug]] - How this informs the post
## Draft Sections
[Write draft content following the Drafting Guidelines below]
## Distribution
[Prepare content for social promotion]
### Teaser Hook
[2-3 sentences to post before/when publishing - create curiosity]
### Thread Points
[Key insights as standalone posts for social threads]
1.
2.
3.
### Pull Quotes
## [Shareable insights that stand alone]
## Open Questions
- Question I need to answer before writing
- Research needed
Title Formula
Good titles combine curiosity + value promise. The reader should know what they'll learn AND be intrigued enough to click.
Formula
[Action Verb] + [Specific Outcome] + [Context/Tool]
Examples
Bad titles:
- "Vue Reactivity" (too vague)
- "How I Use Composables" (no clear benefit)
- "Some Thoughts on Testing" (weak, unclear)
Good titles:
- "Stop Fighting Vue Reactivity: The Mental Model That Finally Clicked"
- "3 Composable Patterns That Eliminated 500 Lines of Duplicate Code"
- "Why Your E2E Tests Are Slow (And the 80/20 Fix)"
Checklist
Skimmability Guidelines
Most readers skim before committing to read. Make your post scannable.
Paragraph Rules
- 2-4 lines max per paragraph (phone screens are narrow)
- One idea per paragraph
- If a paragraph has two ideas, split it
Subheading Rules
- Add subheading every 3-5 paragraphs
- Subheadings should be informative, not clever ("The Fix" not "Plot Twist")
- Reader should understand the post from subheadings alone
Emphasis Rules
- Bold the key insight in each major section (one per section)
- Use bold for emphasis, not ALL CAPS or italics
- Don't over-bold; if everything is bold, nothing is
Visual Breaks
- Use bullet lists for 3+ related items
- Add code blocks, diagrams, or callouts to break up text walls
- Empty lines between sections
Ruthless Editing Checklist
Apply when polishing drafts:
Filler Phrases to Cut
- "very", "really", "just", "actually"
- "in order to" → "to"
- "basically", "essentially", "fundamentally"
- "in terms of" → rephrase directly
- "the fact that" → cut entirely
- "I think that", "I believe that" → just state it
Redundancies to Remove
- "completely unique" → "unique"
- "absolutely essential" → "essential"
- "past experience" → "experience"
- "end result" → "result"
Target
- Cut 20-30% of first draft word count
- If you can remove a word without losing meaning, remove it
The Read-Aloud Test
- Read the draft aloud
- Mark where you stumble or run out of breath
- Those spots need shorter sentences or clearer phrasing
Quality Checklist
Before saving:
For drafts, also check:
Validation
Wiki-link check: Each [[link]] should exist in content/.
Status progression:
- Don't advance to
outline without 3+ sections
- Don't advance to
draft without prose content
- Don't advance to
ready without all sections drafted
Drafting Guidelines
When generating draft content, apply Alexander's voice from writing-style skill:
Opening Paragraphs
Write openings that:
- Start with a problem or observation, not "In this post, we will..."
- Use first-person when sharing experience
- Hook with a relatable developer struggle
Example openers:
- "I once worked on a project that wanted to..." (personal anecdote)
- "After [event], I started thinking about..." (observation)
- "Manual [task] gets old fast." (pain point)
- "Here's the thing: [unexpected insight]" (hook)
Body Structure Pattern
For each major section:
- State the problem this section solves
- Show before/after with ❌/✅ where appropriate
- Provide working code with inline comments
- Acknowledge limitations or when this doesn't apply
Code Examples
- Include realistic context (real file names, plausible data)
- Add comments explaining the "why", not just the "what"
- Show progressive refinement when teaching patterns
Visual Elements to Include
Conclusion Pattern
End with:
- Brief summary of key insight (1-2 sentences)
- Honest assessment of trade-offs
- Ask a question to spark discussion (e.g., "What patterns have you found for X?")
- Clear call-to-action (try it, share feedback, etc.)
- Optional: Link to related posts or resources
1---2name: managing-blog-ideas3description: Create and develop blog post ideas. Use when asked to "create a blog idea", "start a blog post", "expand blog outline", "develop this post idea", "update blog draft", or "list blog ideas".4---56# Managing Blog Ideas78Create and evolve blog post ideas from initial concept to publication-ready draft.910## Location1112All blog ideas live in `content/blog-ideas/` and are excluded from Nuxt Content publishing.1314## Mode Detection15161. **List mode**: User asks "what blog ideas" or "list blog ideas" → list all files in `content/blog-ideas/`172. **Update mode**: User provides slug/title that exists → load and update183. **Create mode**: New topic → create fresh blog idea1920---2122## CREATE Mode2324### Phase 1: Gather Information25261. If topic not provided, ask:2728 ```yaml29 question: "What topic would you like to write about?"30 header: "Blog Topic"31 ```32332. Search Second Brain for related notes:3435 ```text36 Grep pattern: "{topic keywords}" glob: "content/*.md"37 ```38393. Present found connections to user4041### Phase 2: Generate Blog Idea4243**Frontmatter:**4445```yaml46---47title: "Working Title"48status: idea49tags:50 - tag-151 - tag-252core_idea: "Single sentence thesis"53target_audience: "Vue/Nuxt developers who..."54reader_outcome: "After reading, they will [think/feel/do X]"55created: { today YYYY-MM-DD }56updated: { today YYYY-MM-DD }57---58```5960**Body structure:**61621. Core Idea section (1-2 sentences)632. Outline with 3-5 sections (H3 headers with bullet points)643. Source Notes (wiki-links to related Second Brain notes)654. Open Questions (what needs research/clarification)6667### Phase 3: User Review6869Present the generated content and ask:7071```yaml72question: "Does this blog idea look good?"73header: "Review"74multiSelect: false75options:76 - label: "Save"77 description: "Create the blog idea file"78 - label: "Edit"79 description: "Tell me what to change"80```8182### Phase 4: Save8384Generate slug: lowercase title, spaces to hyphens, remove special characters.85Save to `content/blog-ideas/{slug}.md`.8687Confirm creation with file path and summary.8889---9091## UPDATE Mode9293### Phase 1: Load Existing94951. Find the file:96 ```text97 Glob: content/blog-ideas/{slug}*.md98 ```992. Read and display current state:100 - Status101 - Last updated102 - Current outline structure103 - Source notes count104105### Phase 2: Choose Update Action106107```yaml108question: "What would you like to do with this blog idea?"109header: "Update"110multiSelect: false111options:112 - label: "Expand outline"113 description: "Add more sections or detail to existing sections"114 - label: "Draft a section"115 description: "Write content for one of the outline sections"116 - label: "Polish & Edit"117 description: "Cut filler, tighten prose, improve skimmability"118 - label: "Find sources"119 description: "Search Second Brain for more related notes"120 - label: "Update status"121 description: "Move to next stage (idea → outline → draft → ready)"122 - label: "Refine core idea"123 description: "Sharpen the thesis or angle"124 - label: "Prep for distribution"125 description: "Create teaser, thread points, and pull quotes"126```127128### Phase 3: Execute Update129130**Expand outline:**131132- Read current sections133- Ask which section to expand OR add new section134- Generate additional bullet points / subsections135136**Draft a section:**137138- Present section titles139- User picks one140- Generate draft prose following writing-style skill (especially Alexander's Voice Profile)141- Insert under `## Draft Sections`142143**Polish & Edit:**144145- Review draft sections for filler and bloat146- Apply the Ruthless Editing Checklist:147 - Cut 20-30% of word count148 - Remove filler phrases: "very", "really", "just", "actually", "in order to", "basically", "essentially"149 - Replace "in terms of" with direct language150 - Cut redundant qualifiers ("completely unique" → "unique")151 - Delete weak sentence starters ("I think that", "It seems like", "In my opinion")152- Improve skimmability (see Skimmability Guidelines)153- Suggest reading the draft aloud to catch awkward phrasing154155**Find sources:**156157- Extract keywords from title/outline158- Search Second Brain159- Present candidates160- Add selected links to Source Notes161162**Update status:**163164- Validate readiness for next stage165- Update frontmatter status field166167**Refine core idea:**168169- Present current core_idea170- Discuss with user171- Update frontmatter172173**Prep for distribution:**174175- Generate teaser hook (2-3 sentences to post before publishing)176- Extract 3-5 thread points (key insights as standalone posts)177- Identify 2-3 pull quote candidates (shareable insights)178- Add to `## Distribution` section179180### Phase 4: Save181182- Apply edits183- Update `updated` date184- Confirm changes185186---187188## Status Definitions189190| Status | Criteria | Next Step |191| --------- | ------------------------------ | --------------------- |192| `idea` | Has title and basic core_idea | Develop outline |193| `outline` | 3+ sections with bullet points | Draft sections |194| `draft` | At least one section has prose | Complete all sections |195| `ready` | All sections drafted, reviewed | Publish to blog |196197---198199## Blog Idea Template200201```markdown202---203title: "[Action Verb] + [Specific Outcome] + [Context/Tool]"204status: idea205tags:206 - topic-1207core_idea: "Single sentence thesis"208target_audience: "Vue/Nuxt developers who..."209reader_outcome: "After reading, they will [think/feel/do X]"210created: YYYY-MM-DD211updated: YYYY-MM-DD212---213214## Core Idea215216[1-2 sentences: What's the main argument? What will readers take away?]217218## Outline219220### 1. [Hook: Problem Statement or Observation]221222- Open with pain point or personal observation223- First person welcome224- Never "In this post, we will..."225226### 2. The Problem227228- Concrete example of the pain point229- Real scenario, specific details230231### 3. The Solution232233- High-level approach234- Why this works235236### 4. [Implementation Step]237238- Code + explanation239- Before/after with ❌/✅ if applicable240241### 5. When to Use This242243- Specific scenarios where this applies244245### 6. When NOT to Use This246247- Honest assessment of limitations248- Alternative approaches249250### 7. Conclusion251252- Key insight (1-2 sentences)253- Ask a question to spark discussion254- Clear call-to-action255- Optional: related content links256257## Source Notes258259[Wiki-links to Second Brain notes that inform this post]260261- [[note-slug]] - How this informs the post262263## Draft Sections264265[Write draft content following the Drafting Guidelines below]266267## Distribution268269[Prepare content for social promotion]270271### Teaser Hook272273[2-3 sentences to post before/when publishing - create curiosity]274275### Thread Points276277[Key insights as standalone posts for social threads]2782791.2802.2813.282283### Pull Quotes284285## [Shareable insights that stand alone]286287## Open Questions288289- Question I need to answer before writing290- Research needed291```292293---294295## Title Formula296297Good titles combine **curiosity + value promise**. The reader should know what they'll learn AND be intrigued enough to click.298299### Formula300301```302[Action Verb] + [Specific Outcome] + [Context/Tool]303```304305### Examples306307**Bad titles:**308309- "Vue Reactivity" (too vague)310- "How I Use Composables" (no clear benefit)311- "Some Thoughts on Testing" (weak, unclear)312313**Good titles:**314315- "Stop Fighting Vue Reactivity: The Mental Model That Finally Clicked"316- "3 Composable Patterns That Eliminated 500 Lines of Duplicate Code"317- "Why Your E2E Tests Are Slow (And the 80/20 Fix)"318319### Checklist320321- [ ] Would I click this in a busy feed?322- [ ] Does it promise a specific outcome?323- [ ] Does it create curiosity?324- [ ] Is it honest about what the post delivers?325326---327328## Skimmability Guidelines329330Most readers skim before committing to read. Make your post scannable.331332### Paragraph Rules333334- **2-4 lines max** per paragraph (phone screens are narrow)335- One idea per paragraph336- If a paragraph has two ideas, split it337338### Subheading Rules339340- Add subheading every **3-5 paragraphs**341- Subheadings should be informative, not clever ("The Fix" not "Plot Twist")342- Reader should understand the post from subheadings alone343344### Emphasis Rules345346- **Bold the key insight** in each major section (one per section)347- Use bold for emphasis, not ALL CAPS or italics348- Don't over-bold; if everything is bold, nothing is349350### Visual Breaks351352- Use bullet lists for 3+ related items353- Add code blocks, diagrams, or callouts to break up text walls354- Empty lines between sections355356---357358## Ruthless Editing Checklist359360Apply when polishing drafts:361362### Filler Phrases to Cut363364- "very", "really", "just", "actually"365- "in order to" → "to"366- "basically", "essentially", "fundamentally"367- "in terms of" → rephrase directly368- "the fact that" → cut entirely369- "I think that", "I believe that" → just state it370371### Redundancies to Remove372373- "completely unique" → "unique"374- "absolutely essential" → "essential"375- "past experience" → "experience"376- "end result" → "result"377378### Target379380- Cut **20-30%** of first draft word count381- If you can remove a word without losing meaning, remove it382383### The Read-Aloud Test384385- Read the draft aloud386- Mark where you stumble or run out of breath387- Those spots need shorter sentences or clearer phrasing388389---390391## Quality Checklist392393Before saving:394395- [ ] Title is specific and compelling (Action Verb + Outcome + Context)396- [ ] Title creates curiosity AND promises value397- [ ] Core idea is a clear thesis (assertion, not description)398- [ ] `reader_outcome` explicitly states what they'll gain399- [ ] At least 3 outline sections400- [ ] At least 2 wiki-links to source notes401- [ ] Tags match existing taxonomy402- [ ] Status accurately reflects completeness403404**For drafts, also check:**405406- [ ] Opens with problem/observation, never "In this post..."407- [ ] Uses first-person where appropriate ("I", "In my experience")408- [ ] Paragraphs are 2-4 lines max409- [ ] Key insight bolded in each section410- [ ] Includes ❌/✅ markers for comparisons411- [ ] Has at least one visual element (diagram, table, or callout)412- [ ] Acknowledges limitations or alternatives413- [ ] Ends with question or clear CTA414- [ ] Uses everyday words, not jargon415- [ ] Has teaser/thread candidates identified (for `ready` status)416417---418419## Validation420421**Wiki-link check:** Each `[[link]]` should exist in `content/`.422423**Status progression:**424425- Don't advance to `outline` without 3+ sections426- Don't advance to `draft` without prose content427- Don't advance to `ready` without all sections drafted428429---430431## Drafting Guidelines432433When generating draft content, apply Alexander's voice from writing-style skill:434435### Opening Paragraphs436437Write openings that:4384391. Start with a problem or observation, not "In this post, we will..."4402. Use first-person when sharing experience4413. Hook with a relatable developer struggle442443Example openers:444445- "I once worked on a project that wanted to..." (personal anecdote)446- "After [event], I started thinking about..." (observation)447- "Manual [task] gets old fast." (pain point)448- "Here's the thing: [unexpected insight]" (hook)449450### Body Structure Pattern451452For each major section:4534541. **State the problem** this section solves4552. **Show before/after** with ❌/✅ where appropriate4563. **Provide working code** with inline comments4574. **Acknowledge limitations** or when this doesn't apply458459### Code Examples460461- Include realistic context (real file names, plausible data)462- Add comments explaining the "why", not just the "what"463- Show progressive refinement when teaching patterns464465### Visual Elements to Include466467- [ ] At least one Mermaid diagram for complex flows468- [ ] Comparison table if presenting multiple options469- [ ] File tree for architectural posts470- [ ] Callout boxes for tips and warnings471472### Conclusion Pattern473474End with:4754761. Brief summary of key insight (1-2 sentences)4772. Honest assessment of trade-offs4783. **Ask a question** to spark discussion (e.g., "What patterns have you found for X?")4794. Clear call-to-action (try it, share feedback, etc.)4805. Optional: Link to related posts or resources