Marketing & content · Writing
write
/write
Use when producing newsletters, articles, reports, shorts, or social content
For whom
- Author
- unclejobs-ai ↗
- Repository
- second-claude-code ↗
- Licence
- MIT
- Last repository change
- 22.10.2026
Assessment and security
96/ 100Class: good
Format25 / 25
Frontmatter with name and description, valid name, description up to 1,024 characters, name matching the folder.
Discoverability21 / 25
Description explains when to use the skill, has a reasonable length and uses third person.
Content35 / 35
At least 150 words and at most 500 lines, headings, step lists, examples or code.
Hygiene15 / 15
No placeholders such as TODO, no Windows paths, with a licence.
Riskno signals detected in the scan
- Files in this package
- 11
- Scripts
- 0
- HTML comments
- 0
- URLs in SKILL.md
- 0
Deprecation
No signals detected. Repository changed on 22.10.2026, without references to retired models or APIs.
Licence
MIT, open: use and modify while retaining author attribution.
What it does and when to use it
Use when producing newsletters, articles, reports, shorts, or social content
Original author description
Use when producing newsletters, articles, reports, shorts, or social content
How it works
- Iron Law
- Red Flags
- When to Use
- Workflow
- Options
- Soul-Aware Voice Resolution
- Voices
- Voice Checklist
- Format Rules
- Length Negotiation
Original SKILL.md headings · 117 lines, 952 words
SKILL.md preview
---
name: write
description: "Use when producing newsletters, articles, reports, shorts, or social content"
effort: high
user-invocable: false
---
## Iron Law
> **Never publish content without research and review.**
## Red Flags
- "I'll skip the research step, I know enough about this topic" → STOP, because writing without sources falls back to training knowledge silently — warn the user or provide `--input`.
- "The review found issues but they're minor, ship it" → STOP, because Critical and Major findings must be addressed before output — review is mandatory, not advisory.
- "I'll figure out the format as I go" → STOP, because the format spec file must be loaded before drafting — writing without it produces structure drift.
- "This is only 800 words but it covers everything" → STOP, because format minimums (newsletter 10000, article 4000, report 5000 chars of body) are hard rules — negotiate length with the user, never silently truncate.
- "The voice doesn't matter for this piece" → STOP, because tone inconsistency is the top reader-trust killer — load the voice guide and verify the voice checklist before finalizing.
# Write
Produce content with automatic research and review unless the caller explicitly skips those steps.
## When to Use
- The user asks for a draft, article, newsletter, report, short-form script, or social post
- Another skill needs polished written output
## Workflow
1. Run `/scc: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.
2. Load format spec AND voice guide: read `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.
3. Draft content following loaded format spec and voice constraints.
4. Run `/scc:review --preset quick` UNLESS `--skip-review` flag is set. This step is MANDATORY by default.
5. Address all Critical and Major review findings. Re-read the review output and apply fixes.
## Options
| 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.
## Soul-Aware Voice Resolution
Voice is resolved in this priority order:
1. `--voice` flag (explicit override — always wins)
2. `## Tone Rules` in `.data/soul/SOUL.md` (personal preferences — merge with voice guide)
3. `.data/soul/templates/STYLE.md` defaults (bilingual baseline)
4. Format voice guide from the Voices table below
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.
## Voices
| Voice | Default For |
|-------|-------------|
| `peer-mentor` | newsletter |
| `expert` | report, article |
| `casual` | shorts, social, card-news |
## Voice Checklist
Before finalizing, verify:
- [ ] At least one first-person example (peer-mentor) OR authoritative citation (expert) OR conversational aside (casual)
- [ ] Tone is consistent throughout — no voice mixing
- [ ] CTA present for shorts/social formats
## Format Rules
- `newsletter`: 6-stage arc, minimum 10000 chars of body, at least 2 research data points
- `article`: minimum 4000 chars of body
- `report`: minimum 5000 chars of body with numbered recommendations
- `shorts`: around 1800 chars with a mandatory CTA
- `social`: platform-optimized short post
- `card-news`: slide-by-slide narrative with visual direction
## Length Negotiation
When user-specified length conflicts with format minimums:
1. Inform the user: "Article format minimum is 4000 chars, you requested ~800."
2. Offer alternatives: switch to `shorts` or `social` format, OR keep `article` at full length.
3. If user insists on short article, respect user intent but note the override in output metadata.
Never silently truncate or silently exceed the user's request.
## Auto-Save
After the review step (or after drafting if `--skip-review`), save the final content:
- Path: `.captures/write-{format}-{slug}-{YYYY-MM-DD}.md`
- `{slug}` = topic lowercased, spaces to hyphens, max 40 chars
- Write the full content using the Write tool. Do NOT skip this step.
- Tell the user the saved path.
When `--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.
## Gotchas
- Do not skip research unless real sources are already supplied.
- Do not start writing before loading the format spec file.
- Do not output content without running the review step (unless `--skip-review` is explicitly set).
- Do not miss the CTA in shorts or conclusions.
- Do not ship the reviewed version without addressing Critical and Major issues. Minor issues may be deferred.
- Severity levels follow the shared taxonomy: **Critical** (ship-blocking), **Major** (significant gap), **Minor** (polish). Same as `/scc:review`.
## Subagents
```yaml
writer: { model: opus, constraint: "follow format rules, voice, and length minimums" }
editor: { model: opus, constraint: "address all Critical and Major review items" }
```
Files in this package (11)
- SKILL.md 6 KB
- gotchas.md 1 KB
- references/formats/article.md 1 KB
- references/formats/card-news.md 1 KB
- references/formats/newsletter.md 1 KB
- references/formats/report.md 1 KB
- references/formats/shorts.md 1 KB
- references/formats/social.md 1 KB
- references/voice-guides/casual.md 1 KB
- references/voice-guides/expert.md 1 KB
- references/voice-guides/peer-mentor.md 1 KB
Versions
| Repository | Score | Licence |
|---|---|---|
| This page · unclejobs-ai/second-claude-code | 96 | MIT |
| tw93/Waza | 100 | MIT |
| mimshins/ork | 100 | MIT |
| waynesutton/builder-skills | 100 | Apache-2.0 |
| iankiku/forwward-teams | 100 | MIT |
| nagisanzenin/idiolect | 100 | MIT |
| petitchu/holocron | 100 | MIT |
| researai/deepscientist | 95 | Apache-2.0 |
| markusleben/ha-nova | 90 | MIT |
Database snapshot: 13.11.2026 · package version 2bf4192e0295 (SHA-256 digest of the entire package)
Downloads in the last 30 days: 0 · ranking
Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.
Similar skills
- 95linkedin-content-creator
Create LinkedIn content including posts, articles, carousels, and newsletters for professional growth. Triggers on "write a linkedin post", "linkedin article", "linkedin carousel", "thought leadership", "professional post". - 100podcast-content-suite
Transform podcast transcripts into comprehensive content marketing suites including blog posts, social media content, newsletters, SEO-optimized articles, and timestamps. Use when user provides podcast transcripts or wants to repurpose podcast content. - 90social-content-strategy
Use when planning social media content, calendars, captions, hooks, video scripts, hashtags, or channel adaptation. - 100ac-writing-blog-posts
Write blog articles and generate social media posts to promote them. Use when user says "blog", "article", "write post", "blog post", or wants to create/update a blog article or generate social media content. - 100distribution-plan
Use when planning social, community, PR, founder-led content, newsletters, audience building, or recurring distribution between launches. - 100content-writer
Research topics and write content like blog posts, articles, and marketing copy. Use when a user asks to write a blog post, create an article, draft marketing copy, write website content, create a newsletter, produce thought leadership content, or write any long-form or short-form copy.