Help us improve
Share bugs, ideas, or general feedback.
From second-claude-code
Produces newsletters, articles, reports, shorts, and social content with research, format specs, voice guides, drafting, and review workflow.
npx claudepluginhub unclejobs-ai/second-claude-code --plugin second-claude-codeHow this skill is triggered — by the user, by Claude, or both
Slash command
/second-claude-code:writeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
> **Never publish content without research and review.**
Writes articles, guides, blog posts, tutorials, and newsletters in a voice matched to examples or brand guidance. Use for polished long-form content with structure and credibility.
Writes polished articles, guides, blog posts, tutorials, and newsletters with voice consistency from supplied examples or brand guidance. Activates for long-form content where structure and credibility matter.
Generates structured written content for newsletters, YouTube scripts, guides, sales pages, Twitter threads, LinkedIn posts, and Substack notes. Activates on write, draft, or create content requests.
Share bugs, ideas, or general feedback.
Never publish content without research and review.
--input.Produce content with automatic research and review unless the caller explicitly skips those steps.
/second-claude-code:research UNLESS --skip-research flag is set OR source material is already provided via --input. Guard: If --skip-research is set but no --input is provided and no source material exists in the conversation, warn the user: "No source material provided. Output will rely on training knowledge only. Continue?" Do NOT silently fall back to training knowledge.references/formats/{format}.md (required — abort if missing) and references/voice-guides/{voice}.md (recommended). If the voice guide file doesn't exist, proceed using the default voice characteristics from the Voices table mapping below./second-claude-code:review --preset quick UNLESS --skip-review flag is set. This step is MANDATORY by default.| Flag | Values | Default |
|---|---|---|
--format | newsletter|article|shorts|report|social|card-news | article |
--voice | peer-mentor|expert|casual | format-specific |
--publish | notion|file | file |
--skip-research | flag | off |
--skip-review | flag | off |
--lang | ko|en | ko |
--input | file path | none |
--constraints | comma-separated strings | none |
--constraints: Review findings injected as hard requirements for this draft. Each entry is enforced as a non-negotiable rule during drafting and is not open to negotiation with the user. Passed automatically by the PDCA Act→Do route; can also be supplied manually.
When --input is provided (or when called from a pipeline with input_from), the file content is injected as source context and --skip-research is implied.
Voice is resolved in this priority order:
--voice flag (explicit override — always wins)## Tone Rules in .data/soul/SOUL.md (personal preferences — merge with voice guide).data/soul/templates/STYLE.md defaults (bilingual baseline)If .data/soul/SOUL.md exists, read its ## Tone Rules section and treat those rules as non-negotiable constraints on top of the selected voice guide. Soul tone rules override format defaults but never override an explicit --voice flag.
| Voice | Default For |
|---|---|
peer-mentor | newsletter |
expert | report, article |
casual | shorts, social, card-news |
Before finalizing, verify:
newsletter: 6-stage arc, minimum 2000 words, at least 2 research data pointsarticle: minimum 3000 wordsreport: minimum 4000 words with numbered recommendationsshorts: around 300 words with a mandatory CTAsocial: platform-optimized short postcard-news: slide-by-slide narrative with visual directionWhen user-specified length conflicts with format minimums:
shorts or social format, OR keep article at full length.Never silently truncate or silently exceed the user's request.
After the review step (or after drafting if --skip-review), save the final content:
.captures/write-{format}-{slug}-{YYYY-MM-DD}.md{slug} = topic lowercased, spaces to hyphens, max 40 charsWhen --publish notion is set: requires a configured Notion MCP connection (mcp__claude_ai_Notion__notion-create-pages). Create a Notion page with the content, then save the local .md file. If Notion MCP is not available, warn the user and save to file only.
--skip-review is explicitly set)./second-claude-code:review.writer: { model: opus, constraint: "follow format rules, voice, and length minimums" }
editor: { model: opus, constraint: "address all Critical and Major review items" }