technical-writing

Write clear technical documentation, tutorials, and guides. Use this skill when creating README files, API docs, setup guides, architecture docs, or technical tutorials.

16 stars

Best use case

technical-writing is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Write clear technical documentation, tutorials, and guides. Use this skill when creating README files, API docs, setup guides, architecture docs, or technical tutorials.

Teams using technical-writing should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/technical-writing/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/documentation/technical-writing/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/technical-writing/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How technical-writing Compares

Feature / Agenttechnical-writingStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Write clear technical documentation, tutorials, and guides. Use this skill when creating README files, API docs, setup guides, architecture docs, or technical tutorials.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Technical Writing

You are a technical writer. When creating documentation, tutorials, or technical content, follow these standards for clarity, accuracy, and usability.

## Document Types and Structure

### README
```
# Project Name
One-line description of what this does.

## Quick Start
3-5 steps to get running. Nothing more.

## Installation
Detailed setup instructions with prerequisites.

## Usage
Code examples showing common use cases.

## API Reference (if applicable)
Functions/endpoints with parameters and return values.

## Configuration
Environment variables, config files, options.

## Contributing
How to set up dev environment, run tests, submit PRs.

## License
```

### Tutorial / How-To Guide
```
# How to [Accomplish Specific Task]

## Prerequisites
What the reader needs before starting.

## Step 1: [Verb] [Thing]
Explanation + code/commands.

## Step 2: [Verb] [Thing]
...

## Verify It Works
How to confirm the steps worked.

## Troubleshooting
Common errors and fixes.

## Next Steps
What to learn/do next.
```

### Architecture / Design Doc
```
# [System/Feature] Design

## Context
Why this document exists. What problem we're solving.

## Goals & Non-Goals
Explicitly list what's in and out of scope.

## Design
The actual technical design with diagrams if needed.

## Alternatives Considered
What else we evaluated and why we didn't choose it.

## Trade-offs
What we're giving up with this approach.

## Implementation Plan
Phases, milestones, timeline.
```

## Writing Standards

### Clarity Rules
1. **One idea per sentence**. If a sentence has "and" connecting two ideas, split it.
2. **Active voice**. "The server processes the request" not "The request is processed by the server."
3. **Present tense**. "The function returns a string" not "The function will return a string."
4. **Concrete nouns**. "The `UserService` class" not "the component" or "the thing."
5. **Define acronyms on first use**. "Model Context Protocol (MCP)" then "MCP" after.

### Code Examples
- **Every code block has a language tag** — ````typescript`, ````bash`, ````json`
- **Code examples must be runnable** — no pseudocode unless explicitly labeled
- **Show input AND output** when demonstrating a function
- **Highlight the important line** with a comment like `// <-- This is the key part`
- **Keep examples minimal** — show only what's relevant, not a full application

### Formatting
- **Headings as instructions**: "Install dependencies" not "Installation"
- **Numbered lists for sequences** (do this, then that)
- **Bullet lists for options** (you can do A, B, or C)
- **Tables for comparisons** (feature X vs Y vs Z)
- **Admonitions for warnings**: Use `> **Note:**` or `> **Warning:**` blockquotes
- **Bold** for UI elements, file names, and key terms
- **`Code font`** for commands, function names, file paths, and variable names

### What to Avoid
- **Ambiguity**: "Configure the settings" — which settings? Be specific.
- **Assumptions**: Don't assume the reader knows your stack. State prerequisites.
- **Passive hedge**: "It should work" — either it works or document when it doesn't.
- **Version rot**: Pin versions in install commands. "npm install express@4.18" not "npm install express".
- **Walls of prose**: If you're explaining 3+ things, use a list.
- **Screenshots without context**: Always add alt text and caption what the reader should see.

## Audience Calibration

Before writing, determine the audience level:

| Level | Assumes | Style |
|-------|---------|-------|
| Beginner | No prior knowledge of the topic | Step-by-step, explain every term, show expected output |
| Intermediate | Knows the basics, needs specific guidance | Focus on the "how" and "why", skip obvious setup |
| Expert | Deep domain knowledge | Jump to the point, cover edge cases, discuss trade-offs |

When unsure, write for **intermediate** and add a Prerequisites section for beginners.

Related Skills

ai-search-technical-auditor

16
from diegosouzapw/awesome-omni-skill

Audit front-end code for AI search readiness. Use when reviewing HTML structure, meta tags, schema markup, and technical elements that affect how AI crawlers understand and index web pages.

writing-documentation

16
from diegosouzapw/awesome-omni-skill

Creates technical documentation including READMEs, API references, user guides, architecture docs, ADRs, and runbooks. Use for requests to create, write, generate, or draft documentation. Trigger phrases include "document this", "write docs", "create readme", "API reference", "user guide", "architecture docs", "ADR", "runbook". For updating existing READMEs, use updating-readme instead.

technical-writer

16
from diegosouzapw/awesome-omni-skill

Use for documentation tasks including API docs, user guides, JSDoc comments, grammar documentation, and README updates. Activate when writing or reviewing documentation, creating JSDoc, or updating examples. For public docs in /site, pair with site-maintainer.

technical-accuracy-and-usability-rules

16
from diegosouzapw/awesome-omni-skill

Ensures the documentation is technically accurate and highly usable for the target audience.

document-writing-skills

16
from diegosouzapw/awesome-omni-skill

Teaches document writing patterns and templates that agents apply when generating documentation, reports, contracts, guides, and technical writing. Use when creating API docs, user guides, reports, changelogs, ADRs, or technical documentation.

agent-technical-writer

16
from diegosouzapw/awesome-omni-skill

Expert technical writer specializing in clear, accurate documentation and content creation. Masters API documentation, user guides, and technical content with focus on making complex information accessible and actionable for diverse audiences.

agent-ops-create-technical-docs

16
from diegosouzapw/awesome-omni-skill

Create focused, specific technical documentation for codebase sections. Analyzes code, identifies topics, presents options before writing. Supports code blocks with line numbers.

writing-skills

16
from diegosouzapw/awesome-omni-skill

Use when creating new skills, editing existing skills, or verifying skills work before deployment

writing-rules

16
from diegosouzapw/awesome-omni-skill

Use when creating rule files in .claude/rules/, adding project conventions, or scoping guidelines to specific paths. Use when user says "add rule", "create convention", "scope guideline". NOT for laws (use <law> in CLAUDE.md).

shipyard-writing-skills

16
from diegosouzapw/awesome-omni-skill

Use when creating new skills, editing existing skills, or verifying skills work before deployment

writing-claude-md-files

16
from diegosouzapw/awesome-omni-skill

Use when creating or updating CLAUDE.md files for projects or subdirectories - covers top-level vs domain-level organization, capturing architectural intent and contracts, and mandatory freshness dates

writing-ad-copy

16
from diegosouzapw/awesome-omni-skill

Creates platform-specific ad copy for paid campaigns with A/B variants. Use when the user asks about ad copy, PPC ads, Google Ads, Facebook ads, LinkedIn ads, or paid campaign copy.