Patterns and structure for writing functional documentation including guides, conceptual explanations, tutorials, and best practices documentation.
Inherits all available tools
Additional assets for this skill
This skill inherits all available tools. When active, it can use any tool Claude has access to.
name: writing-functional-docs description: | Patterns and structure for writing functional documentation including guides, conceptual explanations, tutorials, and best practices documentation.
trigger: |
skip_when: |
sequence: before: [documentation-review]
Functional documentation explains concepts, guides users through workflows, and helps them understand "why" and "how" things work. This differs from API reference, which documents "what" each endpoint does.
| Type | Purpose | Key Sections |
|---|---|---|
| Conceptual | Explains core concepts and how things work | Definition → Key characteristics → How it works → Related concepts |
| Getting Started | First task with the product | Intro → Prerequisites → Numbered steps → Next steps |
| How-To | Task-focused for specific goals | Context → Before you begin → Steps → Verification → Troubleshooting |
| Best Practices | Optimal usage patterns | Intro → Practice sections (Mistake/Best practice) → Summary |
Start every document with what the reader will learn or accomplish.
✅ This guide shows you how to create your first transaction in under 5 minutes.
❌ In this document, we will discuss the various aspects of transaction creation.
Address the reader directly.
✅ You can create as many accounts as your structure demands.
❌ Users can create as many accounts as their structure demands.
Use for current behavior.
✅ Midaz uses a microservices architecture.
❌ Midaz will use a microservices architecture.
Indicate what the section covers or what users will do.
✅ Creating your first account
❌ Account creation process overview
2-3 sentences maximum. Use bullets for lists.
| Element | Usage |
|---|---|
| Info box | > **Tip:** Helpful additional context |
| Warning box | > **Warning:** Important caution |
| Code examples | Always include working examples for technical concepts |
| Tables | For comparing options or structured data |
Use --- to separate major sections. Improves scannability.