mcpbeat Sign in

Documentation Agent Skill

Write concise Diataxis docs for gh-aw with Starlight markdown conventions.

1.9k tokens
context cost
SKILL.md, read when the skill is used
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
4 864
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/github/gh-aw --skill documentation

The instruction itself

21 sections, as written by the author

Documentation

Documentation lives in docs/, uses GitHub-flavored Markdown, renders with Astro Starlight, and follows Diátaxis.

Diátaxis Framework

Organize documentation into four Diátaxis types:

1. Tutorials (Learning-Oriented)

Purpose: Guide beginners through achieving a specific outcome to build confidence.

  • Start with what the user will build or achieve
  • Provide a clear, step-by-step path from start to finish
  • Include concrete examples and working code
  • Assume minimal prior knowledge
  • Focus on the happy path (avoid edge cases and alternatives)
  • End with a working result the user can see and use
  • Use imperative mood: "Create a file", "Run the command"

Avoid: Explaining concepts in depth, multiple options, troubleshooting

2. How-to Guides (Goal-Oriented)

Purpose: Show how to solve a specific real-world problem or accomplish a particular task.

  • Title format: "How to [accomplish specific goal]"
  • Assume the user knows the basics
  • Focus on practical steps to solve one problem
  • Include necessary context but stay focused
  • Show multiple approaches only when genuinely useful
  • End when the goal is achieved
  • Use imperative mood: "Configure the setting", "Add the following"

Avoid: Teaching fundamentals, explaining every detail, being exhaustive

3. Reference (Information-Oriented)

Purpose: Provide accurate, complete technical descriptions of the system.

  • Organized by structure (CLI commands, configuration options, API endpoints)
  • Comprehensive and authoritative
  • Consistent format across all entries
  • Technical accuracy is paramount
  • Include all parameters, options, and return values
  • Use descriptive mood: "The command accepts", "Returns a string"
  • Minimal narrative or explanation

Avoid: Instructions, tutorials, opinions on usage

4. Explanation (Understanding-Oriented)

Purpose: Clarify and illuminate topics to deepen understanding.

  • Discuss why things are the way they are
  • Explain design decisions and tradeoffs
  • Provide context and background
  • Connect concepts to help form mental models
  • Discuss alternatives and their implications
  • Use indicative mood: "This approach provides", "The engine uses"

Avoid: Step-by-step instructions, exhaustive reference material

General Style Guidelines

  • Tone: Neutral, technical, not promotional
  • Voice: Avoid "we", "our", "us" (use "the tool", "this command")
  • Headings: Use markdown heading syntax, not bold text as headings
  • Lists: Avoid long bullet point lists; prefer prose with structure
  • Code samples: Minimal and focused; exclude optional fields unless relevant
  • Language tag: Use aw for agentic workflow snippets with YAML frontmatter

Example workflow code block:

on: push
# Your workflow steps here

GitHub-Flavored Markdown Syntax

Documentation files use GitHub-flavored markdown with Astro Starlight for rendering. Key syntax elements:

Frontmatter

Every documentation page must have frontmatter:

title: Page Title
description: Brief description for SEO and navigation

GitHub Alerts

Use GitHub's alert syntax for notes, tips, warnings, and cautions:

> [!NOTE]
> Important information the reader should notice.

> [!TIP]
> Helpful advice for the reader.

> [!WARNING]
> Warning about potential issues or pitfalls.

> [!CAUTION]
> Critical warning about dangerous operations.

> [!IMPORTANT]
> Key information users need to know.

Code Blocks

  • Use syntax highlighting with language tags
  • Add title attribute for file names: yaml title=".github/workflows/example.yml" `
  • Use aw language for agentic workflow files with YAML frontmatter
  • Add wrap for line wrapping: aw wrap `
  • Internal links: Use relative paths between documentation pages
  • External links: Open in new tab automatically
  • Link text: Use descriptive text, avoid "click here"

Tabs

Use tabs for showing alternatives (e.g., different languages, platforms):

import { Tabs, TabItem } from '@astrojs/starlight/components';

<Tabs>
  <TabItem label="npm">

npm install package

  </TabItem>
  <TabItem label="yarn">

yarn add package

  </TabItem>
</Tabs>

Cards

Use cards for navigation or highlighting multiple options:

import { Card, CardGrid } from '@astrojs/starlight/components';

<CardGrid>
  <Card title="Getting Started" icon="rocket">
    Quick introduction to the basics.
  </Card>
  <Card title="Advanced Usage" icon="setting">
    Deep dive into advanced features.
  </Card>
</CardGrid>

Remember: Keep components minimal. Prefer standard markdown when possible.

Content to Avoid

  • "Key Features" sections
  • Marketing language or selling points
  • Excessive bullet points (prefer structured prose)
  • Overly verbose examples with all optional parameters
  • Mixing documentation types (e.g., tutorials that become reference)

Avoiding Documentation Bloat

Documentation bloat reduces clarity and makes content harder to navigate. Common types of bloat include:

Types of Documentation Bloat

  • Duplicate content: Same information repeated in different sections
  • Excessive bullet points: Long lists that could be condensed into prose or tables
  • Redundant examples: Multiple examples showing the same concept
  • Verbose descriptions: Overly wordy explanations that could be more concise
  • Repetitive structure: The same "What it does" / "Why it's valuable" pattern overused

Writing Concise Documentation

When editing documentation, focus on:

Consolidate bullet points:

  • Convert long bullet lists into concise prose or tables
  • Remove redundant points that say the same thing differently

Eliminate duplicates:

  • Remove repeated information
  • Consolidate similar sections

Condense verbose text:

  • Make descriptions more direct and concise
  • Remove filler words and phrases
  • Keep technical accuracy while reducing word count

Standardize structure:

  • Reduce repetitive "What it does" / "Why it's valuable" patterns
  • Use varied, natural language

Simplify code samples:

  • Remove unnecessary complexity from code examples
  • Focus on demonstrating the core concept clearly
  • Eliminate boilerplate or setup code unless essential for understanding
  • Keep examples minimal yet complete
  • Use realistic but simple scenarios

Example: Before and After

Before (Bloated):

### Tool Name
Description of the tool.

- **What it does**: This tool does X, Y, and Z
- **Why it's valuable**: It's valuable because A, B, and C
- **How to use**: You use it by doing steps 1, 2, 3, 4, 5
- **When to use**: Use it when you need X
- **Benefits**: Gets you benefit A, benefit B, benefit C
- **Learn more**: [Link](url)

After (Concise):

### Tool Name
Description of the tool that does X, Y, and Z to achieve A, B, and C.

Use it when you need X by following steps 1-5. [Learn more](url)

Documentation Quality Guidelines

  • Preserve meaning: Never lose important information
  • Be surgical: Make precise edits, don't rewrite everything
  • Maintain tone: Keep the neutral, technical tone
  • Test locally: Verify links and formatting are still correct

Structure by File Type

  • Getting Started: Tutorial format
  • How-to Guides: Goal-oriented, one task per guide
  • CLI Reference: Reference format, complete command documentation
  • Concepts: Explanation format, building understanding
  • API Reference: Reference format, complete API documentation

Other skills for the same job

different authors, same section of the catalogue
Executing Plans
by ZhanlinCui
×5

Use when you have a written implementation plan to execute in a separate session with review checkpoints

542 tokens
Protocolsio Integration
by christophacham
×4

Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.

3.9k tokens
Tailored Resume Generator
by frostant
×4

Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances

3.1k tokens
Expo Dev Client
by openai
vendor ×3

Build and distribute Expo development clients locally or via TestFlight

878 tokens
Anndata
by christophacham
×3

Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.

2.8k tokens
Benchling Integration
by christophacham
×3

Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.

3.5k tokens
Biopython
by christophacham
×3

Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.

3.7k tokens
Cellxgene Census
by christophacham
×3

Query the CELLxGENE Census (61M+ cells) programmatically. Use when you need expression data across tissues, diseases, or cell types from the largest curated single-cell atlas. Best for population-scale queries, reference atlas comparisons. For analyzing your own data use scanpy or scvi-tools.

4.1k tokens

How to use it

Copy the folder

Take github/documentation from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference npm, yarn. Without those the skill loads but fails at the first command.