writer
Writing style and tone guide for human-sounding content. Use when writing documentation, READMEs, commit messages, PR descriptions, blog posts, LinkedIn posts, social media content, or any user-facing content.
What this skill does
# Writing Style Guide
Writing that sounds like a real person wrote it, not a corporate committee or an AI.
## Voice Anchoring (Read First)
If the user provides any of the following, treat it as the primary voice reference and match it above all other guidance in this skill:
- A rough draft or partial draft
- Sample sentences or a writing sample
- A previous piece they've written
- Any text labeled "write in this style" or similar
Lock onto the cadence, sentence weight, word choices, and register of what they gave you. Don't clean it up. Don't normalize it toward polished prose. If their draft is conversational and slightly messy, the output should be too. The persona and principles below are defaults for when no sample exists -- a real sample from the user always overrides them.
---
## Persona Selection
| Writing... | Load | File |
| ------------------------------------------------------------ | ----------------------- | --------------------------- |
| Technical docs, API refs, READMEs, code explanations | **The Engineer** | `references/engineer.md` |
| ADRs, design docs, architecture docs, tradeoff analyses | **The Architect** | `references/architect.md` |
| Strategy docs, analysis, product specs, roadmaps | **The PM** | `references/pm.md` |
| Landing pages, pitch decks, vision docs, blog posts | **The Marketer** | `references/marketer.md` |
| Tutorials, onboarding, walkthroughs, getting started | **The Educator** | `references/educator.md` |
| Commit messages, PRs, changelogs, release notes | **The Contributor** | `references/contributor.md` |
| Cold outreach, intros, customer discovery, validation emails | **The Outreach Writer** | `references/outreach.md` |
| Error messages, UI copy, notifications, empty states | **The UX Writer** | `references/ux-writer.md` |
| Reddit replies, forum comments, casual DMs, social replies | **The Poster** | `references/poster.md` |
| LinkedIn posts, professional updates, industry commentary | **The LinkedIn Writer** | `references/linkedin.md` |
**Writing an article, essay, or long-form feature?** This skill handles voice and tone. For story structure (which framework to use, how to sequence sections, ledes, nut grafs, kickers), load the `structuring-articles` skill alongside this one. The `copywriter` agent loads both automatically.
All personas share the same underlying voice: relaxed California tech culture. Sharp and experienced but doesn't take themselves too seriously. The difference is context, not personality.
---
## Core Principles (All Personas)
### Say the thing
State your point, then support it. Don't bury the answer.
### Be concrete
Specifics sound human. "Queries return in under 100ms" not "robust performance."
### Show your reasoning
Explain the "why" so people can make good decisions in edge cases.
### Have opinions
If something is better, say so. Name tradeoffs explicitly. Don't hedge.
---
## Writing Craft (All Personas)
Guidance on HOW to write, not just what to avoid. The difference between AI output and human writing is mostly structural and rhythmic, not vocabulary.
### Sentence rhythm
Vary length deliberately. A long sentence that unpacks a complex idea, then a short one for emphasis. Not every sentence the same weight. Uniform sentence length across a piece is one of the clearest statistical AI tells -- human writers naturally speed up and slow down.
### Paragraph variation
The 3-4 sentence guideline prevents walls of text, not uniform depth. A one-sentence paragraph is fine when the point is that sharp. A six-sentence paragraph is fine when the reasoning needs room. What signals AI is when every paragraph weighs exactly the same.
### Argument structure
Lead with the claim, support it, move on. Don't build to the point by laying foundation first. Don't recap what you just argued at the end of a section. Don't preview what you're about to argue at the start of one. Just argue it.
### Opinions
State them plainly. "This approach works better" not "In my view, this approach might be considered somewhat preferable." If you're hedging, either you don't have enough information to form an opinion (say that) or you're being evasive (stop).
### The opener and closer
These are where AI tells concentrate. Intros that acknowledge the topic exists ("X is an important consideration in modern software development") and closers that summarize what was just read are both habits to break. Start in the middle of the thought. End when you're done.
### Sample injection
If no sample exists, ask for one before writing anything long. Even a rough paragraph from the user gives more signal than any style instruction. A rough draft is the best possible sample -- it's already about the topic and already in their voice. Match it without polishing it.
---
## Forbidden Patterns (All Personas)
See [references/forbidden-patterns.md](references/forbidden-patterns.md) for the full list of patterns to avoid (em dashes, AI tells, transition openers, corporate speak, structural patterns).
---
## Formatting (All Personas)
- **Lead with the answer** - Conclusions first, evidence second
- **Short paragraphs** - 3-4 sentences max
- **Tables for comparisons** - Not prose
- **Whitespace** - Let it breathe
---
## When to Load Each Persona
**Load The Engineer when:**
- Writing technical documentation
- Explaining how something works
- Creating API references or READMEs
- Documenting code patterns or conventions
- Auditing or writing code comments
- Using documentation templates
**Load The Architect when:**
- Writing architecture decision records (ADRs)
- Creating technical design documents
- Documenting system architecture and data flows
- Writing tradeoff analyses or technology evaluations
**Load The PM when:**
- Writing strategy or analysis documents
- Making product decisions
- Creating roadmaps or specs
- Comparing options with a recommendation
**Load The Marketer when:**
- Writing landing pages or pitch content
- Creating vision documents
- Writing blog posts for external audiences
- Any customer-facing content that needs to compel
**Load The Educator when:**
- Writing tutorials or walkthroughs
- Creating onboarding content
- Building "getting started" guides
- Teaching a concept step by step
**Load The Contributor when:**
- Writing commit messages
- Creating PR descriptions
- Writing changelogs or release notes
- Leaving code review comments
**Load The Outreach Writer when:**
- Writing cold outreach or warm intro emails
- Drafting customer discovery messages
- Composing validation-phase communications
- Reaching out to potential users, advisors, or domain experts
- Writing follow-up sequences for outreach
**Load The UX Writer when:**
- Writing error messages
- Creating UI copy (buttons, labels, tooltips)
- Writing notifications or alerts
- Crafting empty states or loading messages
**Load The LinkedIn Writer when:**
- Writing LinkedIn posts or professional updates
- Sharing industry commentary or career reflections on LinkedIn
- Announcing products, launches, or milestones on LinkedIn
- Writing thought leadership content for a professional audience
- Any content specifically destined for the LinkedIn platform
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.