Skip to content
Development
Skill

/docs-diagrams

Convert existing docs diagram images to Mermaid, and author new Mermaid diagrams for Mastra docs. Use when replacing an Excalidraw or PNG/JPG/SVG diagram with Mermaid, when a docs page needs a new diagram, when a diagram renders wrong in light or dark mode, or when auditing

From plugin
mastra
29k33 skills14 commands

Claude Code

$ npx -y skills add mastra-ai/mastra --skill docs-diagrams --agent claude-code

SKILL.md

docs-diagrams.SKILL.md
name: docs-diagrams
description: >-
  Convert existing docs diagram images to Mermaid, and author new Mermaid diagrams for Mastra docs. Use when replacing an Excalidraw or PNG/JPG/SVG diagram with Mermaid, when a docs page needs a new diagram, when a diagram renders wrong in light or dark mode, or when auditing which docs images should become Mermaid. Triggers on: convert diagram, Excalidraw, mermaid, flowchart, diagram image, diagram styling, diagram looks wrong.

Docs Diagrams

Read `docs/styleguides/DIAGRAM.md` first. It is the shape, color, and layout language. This skill is the process for applying it to an image that already exists.

Decide whether to convert

Answer in order. Stop at the first yes.

1. Is it a screenshot of a UI? → **Keep the image.** Mermaid draws graphs, not product surfaces. 2. Does meaning live in where things sit rather than what connects to what? → **Keep the image.** ELK places nodes automatically and will move them. The agents overview image, where tool, LLM, and memory sit deliberately beneath the agent, loses its point the moment a layout engine touches it. 3. Is it boxes joined by arrows, and would it survive being redrawn by someone who only read the node and edge labels? → **Convert.**

A diagram that only converts by fighting the layout engine is a diagram that should stay an image. Do not add invisible spacer nodes, padding spaces in labels, or a hand-tuned `elk` block to force a shape. The next writer will not know why they are there.

Convert

1. Find every reference before touching anything

grep -rn "<image-filename>" docs/src

Docs images are shared across pages more often than expected. The suspend and resume images appear on both the human-in-the-loop and suspend-and-resume pages. Converting one page does not free the asset.

2. Read the image and name the nodes and edges

Write down each node, its job, and each edge with its label. Work from that list, not from the picture. The list is what maps onto the shape decision tree in `DIAGRAM.md`; the picture tempts you into copying a hand-drawn layout that ELK will not reproduce.

3. Write the diagram

Main path first, then branches. Apply shapes from the decision tree, semantic classes for outcomes only, `accTitle` and `accDescr` always.

Match the story to the sentence above the diagram. A page section about resuming a workflow gets a diagram that starts at the paused state, not one that replays the entire run with resume tacked on. When a diagram tries to show a full suspend and resume loop, ELK pushes the paused node left of the step and crosses the two dotted edges. Show the leg the section is about.

4. Verify in the browser, in both modes

cd docs && pnpm dev --port 3005

Check each of these. They are the failures that actually happen:

  • The main path is a straight line. If it bends, a branch was declared too early.
  • No node is more than twice the width of its neighbors. If one is, break its

label with `<br/>`.

  • Every edge label sits on its edge, not in open space.
  • Toggle light and dark. Text stays readable on both, and no node keeps a fill

from the other mode.

A screenshot is not verification. Render it.

5. Delete the asset only when nothing references it

Re-run the grep from step 1. Zero results, delete the file. Any results, leave it, and say which pages still use it.

Extend the color language

Three classes exist: `accent`, `pending`, `danger`. Adding a fourth requires light and dark palette values in `docs/src/theme/Mermaid/mastra-mermaid-theme.ts`, plus registrations through `semanticClassCSS(...)` for nodes and `semanticEdgeCSS(...)` for edges. Add the class to the `DIAGRAM.md` table too. Never add a color by writing hex in a diagram; it will be wrong in one of the two modes.

Check the work

  • `pnpm lint:remark` in `docs/`
  • `pnpm build` in `docs/`, because a Mermaid parse error fails the build rather

than degrading

Read more
@mastra-ai
Ships withmastra

Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack. It includes everything you need to go from early prototypes to production-ready applications.

Stars on GitHub

Momentum

stars in total
29.3k
Star history of mastra-ai/mastra on GitHub, a chart by star-history.com

Other skills on mastra.

builder-smoke-test

builder-smoke-test

Smoke test the Agent Builder feature branch end-to-end against a hermetic project scaffolded by the skill (linked to the current…

@mastra-ai@mastra-aiInstall Skill
debugging-difficult-bugs

debugging-difficult-bu…

Use early when debugging a medium or hard bug, especially when tests alone may not reveal the real runtime failure. Trigger this…

@mastra-ai@mastra-aiInstall Skill
docs-audit

docs-audit

Autonomous, report-only documentation review for Mastra docs. Use when auditing changed docs against source, validating…

@mastra-ai@mastra-aiInstall Skill
e2e-tests-studio

e2e-tests-studio

REQUIRED when modifying any file in packages/playground-ui or packages/playground. Triggers on: React component…

@mastra-ai@mastra-aiInstall Skill
label-core-bugs

label-core-bugs

Review open mastra-ai/mastra GitHub issues, identify direct @mastra/core bugs, and apply the @mastra/core label. Use when…

@mastra-ai@mastra-aiInstall Skill

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc12d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about docs-diagrams.

Which coding agents can use docs-diagrams?
docs-diagrams installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.