Skip to content
Back to skills

Technical Writing

ASecurity

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

  • 57 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 17, 2026
documentationtypescriptgobashexpressapidocumentation

Works with

  • api
  • mcp

Security analysis

A92/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned October 17, 2026

npx -y skills add diegosouzapw/awesome-omni-skill --skill technical-writing --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Technical Writing?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Technical Writing
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/diegosouzapw-technical-writing/badge)](https://www.skillsdirectory.com/skills/diegosouzapw-technical-writing)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: technical-writing
description: Write clear technical documentation, tutorials, and guides. Use this skill when creating README files, API docs, setup guides, architecture docs, or technical tutorials.
alwaysApply: false
---

# 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.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.