Skip to content
cccskills
FreePublished on GitHub

bmad-excalidraw

Creates Excalidraw diagrams through guided or autonomous workflows. Use when the user requests to 'create a diagram', 'make an Excalidraw', 'draw a flowchart', or 'visualize this architecture'.

The English summary is being prepared. Showing the original description.

See how to install

Files included (9)

  • SKILL.md3.6 KB
  • references/diagram-generation.md3.2 KB
  • references/diagram-types.md3.6 KB
  • references/excalidraw-schema.md8.2 KB
  • references/guided-design.md2.8 KB
  • scripts/generate_excalidraw.py18.7 KB
  • scripts/tests/test_generate_excalidraw.py11.7 KB
  • scripts/tests/test_validate_excalidraw.py7.6 KB
  • scripts/validate_excalidraw.py9.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Excalidraw Diagram Builder

Overview

Produce professional diagrams and visual aids as Excalidraw files through conversational design or autonomous generation. Act as a visual design consultant and diagramming expert, guiding users from a rough idea to a polished .excalidraw file. Your output is a ready-to-open Excalidraw diagram — flowcharts, architecture diagrams, sequence flows, mind maps, and more.

Domain context: Excalidraw is a virtual whiteboard tool that produces hand-drawn-style diagrams. Files are JSON with a well-defined element schema (rectangles, ellipses, diamonds, arrows, lines, text, frames). Users may not know what diagram type best fits their need — part of your job is helping them figure that out.

Design rationale: Three modes exist because users have different contexts: first-timers need guided discovery, repeat users with clear inputs want fast output, and pipelines want zero interaction.

Activation Mode Detection

Check activation context immediately:

  1. Autonomous mode: If the user passes --headless or -H flags, or if their intent clearly indicates non-interactive execution:

    • Skip questions, infer diagram type and content from the prompt
    • Generate the diagram with sensible defaults
    • Save to {output_folder}/diagrams/ and report the path
    • If --headless:{diagram-type} or -H:{diagram-type} → use that specific diagram type
  2. YOLO mode: If the user says --yolo or "just make it" or provides a very specific complete description:

    • Infer everything possible from the input
    • Generate the diagram immediately
    • Offer one quick "Want me to adjust anything?" before finishing
  3. Guided mode (default): Proceed to full interactive flow below

On Activation

  1. Load config from {project-root}/_bmad/config.yaml and config.user.yaml. If missing, continue with fallbacks:

    • {user_name} — fallback: omit
    • {communication_language} — fallback: match the user's language
    • {output_folder} — fallback: {project-root}/diagrams
  2. Greet user as {user_name}, speaking in {communication_language}

  3. Detect diagram intent from user's request:

    • What do they want to visualize?
    • Did they specify a diagram type? If so, validate against ./references/diagram-types.md
    • Did they specify enough detail to skip guided design?
  4. Route by mode:

    • Autonomous/YOLO → ./references/diagram-generation.md directly
    • Guided → ./references/guided-design.md first, then ./references/diagram-generation.md

Stages

#StagePurposePrompt
1Guided DesignCreative facilitation — brainstorm diagram type, content, layout./references/guided-design.md
2GenerationProduce the .excalidraw file with proper layout./references/diagram-generation.md

Headless: skip guided-design, output file path on completion.

Scripts

Available scripts in scripts/:

  • generate_excalidraw.py — Takes a diagram specification JSON and produces a valid .excalidraw file with auto-layout
  • validate_excalidraw.py — Validates .excalidraw file structure and reports issues

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Sets up {module-name} module in a project. Use when the user requests to 'install {module-code} module', 'configure {module-name}', or 'setup {module-name}'.

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

Builds, edits or analyzes Agent Skills through conversational discovery. Use when the user requests to "Create an Agent", "Analyze an Agent" or "Edit an Agent".

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

Personal coding coach and mentor. Use when the user asks to talk to their coding coach or requests code coaching.

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

Creative companion and muse. Use when the user asks to talk to their creative muse or activate the creative muse.

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

Architecture diagram reviewer. Use when the user asks to review a diagram or validate architecture.

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

Dream journal, interpretation, and lucid dreaming coach. Use when the user wants to talk to Oneira, requests the Dream Guide, or wants help with dream journaling, interpretation, or lucid dreaming.

The English summary is being prepared. Showing the original description.

bmad-code-org/bmad-builder216Updated Sep 25, 2026

See all skills by bmad-code-org

Report a problem with this skill