بنقرة واحدة
blog
Interview-driven blog post creator that writes in your voice and strips AI tells
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Interview-driven blog post creator that writes in your voice and strips AI tells
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Create or update the project security baseline, profile, suppressions file, and gitignore entries for security scans
Fix or guide remediation for a specific security finding from the latest scan report
Run a security assessment using deterministic static analysis tools with LLM-powered triage
Inspect and optionally install security scanning tools for the security plugin
Query ctx memory and inject results into context
Show ctx memory status (node counts, types, tiers, tokens)
استنادا إلى تصنيف SOC المهني
| name | blog |
| description | Interview-driven blog post creator that writes in your voice and strips AI tells |
| argument-hint | Optional topic or title for the blog post |
| user-invocable | true |
| allowed-tools | ["Read","Write","Edit","AskUserQuestion","Agent","Bash","Glob","Grep"] |
Create blog posts through a guided conversational workflow. Interviews you about your topic, captures your voice from how you answer, writes a draft matching your tone, removes AI patterns, and publishes as markdown or HTML.
If $ARGUMENTS is provided, use it as the initial topic. Otherwise, start by asking for a topic in Phase 1.
Goal: Understand the topic AND capture how the user naturally communicates.
CRITICAL: Pay close attention to HOW the user answers — not just WHAT they say. Their word choices, sentence length, formality, humor, directness, and vocabulary ARE the voice profile.
Ask questions one group at a time using AskUserQuestion, then follow up with open-ended questions to capture natural voice.
AskUserQuestion:
questions:
- question: "What's this blog post about? Give me the elevator pitch."
header: "Topic"
multiSelect: false
options:
- label: "Technical tutorial"
description: "How-to, walkthrough, or guide"
- label: "Opinion / hot take"
description: "Your perspective on something in your field"
- label: "Story / experience"
description: "Something that happened, lessons learned"
- label: "Announcement / update"
description: "Product launch, project update, news"
- question: "Who are you writing this for?"
header: "Audience"
multiSelect: false
options:
- label: "Developers / technical"
description: "People who write code"
- label: "Business / leadership"
description: "Decision makers, managers"
- label: "General / mixed"
description: "Broad audience, no assumed expertise"
- label: "Community / peers"
description: "People in your specific niche"
These are open-ended to capture natural writing voice. Ask via AskUserQuestion with options that encourage free-text responses.
AskUserQuestion:
questions:
- question: "In your own words, what's the ONE thing you want readers to walk away knowing?"
header: "Core point"
multiSelect: false
options:
- label: "Let me type it out"
description: "Free-form answer (recommended — helps capture your voice)"
- label: "I'm not sure yet"
description: "We'll figure it out as we go"
- question: "What's your take on this topic that most people get wrong or overlook?"
header: "Your angle"
multiSelect: false
options:
- label: "Let me explain"
description: "Share your perspective in your own words"
- label: "No strong contrarian take"
description: "Straightforward coverage"
AskUserQuestion:
questions:
- question: "How do you want this to feel when someone reads it?"
header: "Tone"
multiSelect: false
options:
- label: "Casual & conversational"
description: "Like talking to a colleague over coffee"
- label: "Direct & no-nonsense"
description: "Get to the point, respect the reader's time"
- label: "Thoughtful & nuanced"
description: "Explore complexity, acknowledge tradeoffs"
- label: "Energetic & opinionated"
description: "Strong voice, not afraid to take a stance"
- question: "How long should this be?"
header: "Length"
multiSelect: false
options:
- label: "Short (500-800 words)"
description: "Quick read, punchy"
- label: "Medium (800-1500 words)"
description: "Standard blog length"
- label: "Long (1500-2500 words)"
description: "Deep dive, comprehensive"
- label: "Whatever it takes"
description: "Let the content dictate length"
After the interview, silently build a voice profile from the user's answers. Analyze:
Store this as an internal note — do NOT show the voice profile to the user. Just use it.
Goal: Structure the post before writing.
Generate an outline based on interview answers. Include:
Present the outline to the user:
AskUserQuestion:
questions:
- question: "Here's the outline. How does it look?"
header: "Outline"
multiSelect: false
options:
- label: "Looks good, write it (Recommended)"
description: "Proceed to drafting"
- label: "Tweak it"
description: "I have some changes"
- label: "Start over"
description: "This isn't what I had in mind"
If "Tweak it": Ask what to change, update outline, re-present. If "Start over": Return to Phase 1 interview.
Goal: Write the full blog post matching the user's voice.
Follow the voice profile from Phase 1. Additionally:
These patterns make writing sound like AI generated it. Never use them:
Write the draft and save it to a working file at .claude/blog-draft.md.
Goal: Run the draft through a dedicated agent that strips remaining AI patterns and polishes the voice.
Invoke the de-ai-writer agent with:
.claude/blog-draft.mdThe agent returns a cleaned version. Save to .claude/blog-polished.md.
Goal: User reviews the final draft, provides feedback, and chooses output format.
Present the polished draft in full (read from .claude/blog-polished.md).
AskUserQuestion:
questions:
- question: "How's the draft? Be honest."
header: "Review"
multiSelect: false
options:
- label: "Love it, publish (Recommended)"
description: "Export to final format"
- label: "Close but needs changes"
description: "Tell me what to adjust"
- label: "Rewrite sections"
description: "Specific sections need rework"
- label: "Start the draft over"
description: "Keep the outline, rewrite from scratch"
If changes needed: make edits, re-run Phase 4 de-AI pass, re-present.
When approved:
AskUserQuestion:
questions:
- question: "What format do you want?"
header: "Format"
multiSelect: false
options:
- label: "Markdown (.md) (Recommended)"
description: "Clean markdown file"
- label: "HTML (.html)"
description: "Styled HTML with embedded CSS"
- label: "Both"
description: "Generate both formats"
- question: "Where should I save it?"
header: "Location"
multiSelect: false
options:
- label: "Current directory"
description: "Save right here"
- label: "blog/ subdirectory"
description: "Create blog/ folder if needed"
- label: "Let me specify"
description: "I'll type a custom path"
Write clean markdown with:
# headingWrite a self-contained HTML file with:
After publishing, remove working files:
rm -f .claude/blog-draft.md .claude/blog-polished.md
Display the final file path and word count.
.claude/ — no cleanup needed, they're gitignored/blog or mentions creating blog content