Concept To Excalidraw
kipperacademy/skillpper
Transformar conceitos técnicos em diagramas e boards visuais editáveis no Excalidraw, entregando arquivo .excalidraw.
Places existing images onto an Excalidraw whiteboard, turns a slide deck into clean per-slide images, and inspects a .excalidraw file.
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install daymade/claude-code-skills excalidraw-use --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/excalidraw-use .claude/skills/excalidraw-use && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .claude/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/daymade/claude-code-skills/tree/main/excalidraw-useType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install daymade/claude-code-skills excalidraw-use --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/excalidraw-use .agents/skills/excalidraw-use && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .agents/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install daymade/claude-code-skills excalidraw-use --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/excalidraw-use .cursor/skills/excalidraw-use && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .cursor/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/daymade/claude-code-skills.git --path excalidraw-use--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install daymade/claude-code-skills excalidraw-use --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/excalidraw-use .gemini/skills/excalidraw-use && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .gemini/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install daymade/claude-code-skills excalidraw-useInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/excalidraw-use .github/skills/excalidraw-use && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .github/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add daymade/claude-code-skills --skill excalidraw-use -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install daymade/claude-code-skills excalidraw-use --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/daymade/claude-code-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/excalidraw-use .opencode/skills/excalidraw-use && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "excalidraw-use" agent skill from https://github.com/daymade/claude-code-skills/tree/main/excalidraw-use into .opencode/skills/excalidraw-use/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "excalidraw-use", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
excalidraw-usePlaces existing images onto an Excalidraw whiteboard, turns a slide deck into clean per-slide images, and inspects a .excalidraw file.
Excalidraw Use is an agent skill from daymade/claude-code-skills. Places existing images onto an Excalidraw whiteboard, turns a slide deck into clean per-slide images, and inspects a .excalidraw file. Use whenever someone mentions Excalidraw, a whiteboard/canvas, .excalidraw, 白板 or 画板 — e.g. "put these screenshots on my board" — or a workshop delivered by hand-drawing over screenshots on a shared canvas. Not for generating a diagram from a text description.
Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including scripts and reference files (for example `references/deck_screenshot_pitfalls.md`, `references/paste_workflow.md` and `references/scene_file_format.md`).
It sits in Development, covering Diagrams and Slides and decks. It works with Excalidraw. The repository describes itself as: Professional Claude Code skills marketplace featuring production-ready skills for enhanced development workflows. The licence is MIT.
Read from SKILL.md and the folder at commit 872127b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 4 files in scripts/ (Python and JavaScript), which the agent can run.
Shell commands in SKILL.md call:
python3npxnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Excalidraw Use loads about 2.1k tokens when it runs, and up to ~5.3k if it reads all its reference files. Until then it costs about 103 tokens; SKILL.md has 1,084 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from daymade/claude-code-skills at commit 872127b, republished under its MIT licence (© daymade). 1,084 words, ~2,095 tokens.
.claude/skills/excalidraw-use/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.Excalidraw is a whiteboard people draw on live. This skill covers the part that is fiddly to do by hand: getting a lot of existing images onto a board, laid out so nobody has to drag them apart afterwards.
It does not generate diagrams from prose. If the request is "draw the
architecture" or "make a flowchart", that is a diagram-generation job — several
tools and skills do it, including a diagram skill in the gstack suite if the
user has it installed.
| The user says | Go to |
|---|---|
| "put these images on my board", "add the old screenshots to the canvas" | Job 1 — build a pick tray |
| "turn the deck into images", "screenshot every slide" | Job 2 — deck to images, then Job 1 |
| "what's in this file", "how big is this board", "is anything broken" | Job 3 — inspect |
| "draw me a flowchart from this description" | not this skill |
python3 scripts/build_scene.py \
--out tray.excalidraw \
--cols 6 \
--template-from ~/path/to/their-board.excalidraw \
--exclude already-placed.png \
images/*.pngExpected output — if you do not see the verified: line, the file is not usable:
verified: 30 image element(s), hashes match, no overlap
placed 30 image(s), 6 x 5 grid, min gap 600
wrote tray.excalidraw (3.5 MB)Hand the user the file plus how to get it onto their board. That second half is where this goes wrong: at excalidraw.com, both Open and drag-and-drop replace the entire current scene. Telling someone to "open this file" when they have a live board is telling them to lose it. The additive route is the clipboard — full instructions and the reasoning in references/paste_workflow.md. Read it before you write the hand-off message.
Three decisions worth making deliberately:
--template-from whenever they have an existing board. Excalidraw's
published JSON schema documents the top-level shape and the files map, but
not the image element's own fields (fileId, status, scale, crop), so
copying a live element from their board is the only way to be sure the field
set matches the build they actually run. Without it a reasonable default is
used, which has worked but is one observed field set, not a spec.
references/scene_file_format.md has the
field-by-field breakdown, keeping what the official docs state separate from
what was read off a real file — open it when you need to hand-build or repair
a scene rather than let the script write one.--exclude anything already on their board. The check is by image content,
not filename, so a renamed copy is still caught. Skipping this is how someone
ends up with the same picture twice and has to delete one by hand.--cell is the longest side each image is scaled to; --pitch is
the distance between cell centres. The gap is pitch - cell, and the defaults
(800 / 1400 → 600) are deliberately generous. If a user has ever said "don't
make me fix the spacing again", raise --pitch, don't lower it.If the scene is more than ~15 MB, split it — the clipboard is where a large scene stalls:
python3 scripts/split_scene.py --scene tray.excalidraw --out-dir parts/ --chunks 4For Vite/React decks whose slides are registered in a src/slides/index.ts with
entries shaped { id: 'intro', component: S01, fragmentCount: 3 }.
# 1. Build the deck FROM SOURCE and serve that build (not a dev server).
cd <deck>; npx vite build --outDir /tmp/deck-dist --emptyOutDir
cd /tmp/deck-dist && python3 -m http.server 8080 &
# 2. Shoot it.
node scripts/shoot_deck.mjs \
--index <deck>/src/slides/index.ts \
--url http://127.0.0.1:8080/index.html \
--out shots/ \
--advance pdf # or: keysExpected output:
30 slides (7 with fragments), advance=pdf
30/30 captured, 32 inline chrome element(s) hidden -> shots/
all .fragment elements rendered visible (opacity check)That last line is the one that matters. If instead you see
WARNING: N slide(s) have fragments that never revealed, those screenshots are
missing content — do not feed them into Job 1. Read
references/deck_screenshot_pitfalls.md;
the usual cause is that the build being served is older than the source.
puppeteer must be resolvable from wherever you run the script. Decks that
generate their own PDFs usually already have it — run the script from that
project, or symlink its node_modules next to the script. npx puppeteer does
not install a resolvable module for an ESM import.
Picking --advance: grep the deck's Deck component for pdf. If it reads
a ?pdf=1 query, use pdf; otherwise keys. Never both — under ?pdf=1 the
fragment index is already at maximum, so extra key presses move to the next
slide and you silently capture the wrong content.
Add --strict to make unrevealed fragments a non-zero exit when this runs
inside a pipeline. It stays a warning by default so a deck that legitimately
keeps a .fragment hidden does not fail the whole run.
python3 scripts/inspect_scene.py board.excalidraw --imagesReports element counts by type, embedded payload size, whether every image element resolves to a file whose content still matches its key, and the occupied extent. Read-only.
The extent is the practically useful number: pasted content lands wherever the viewport is, so knowing where existing work sits is how you tell the user where to scroll before pasting.
Build a separate scene file and let the user paste from it. Two independent reasons, both observed:
If a merged file is genuinely wanted, write it to a new path and let the user choose which to open. Never overwrite the original.
| Symptom | Cause | Fix |
|---|---|---|
| Scene opens but a picture is blank | files entry missing or its key does not match the payload | inspect_scene.py reports both; rebuild |
| Images touch or overlap on the board | --pitch not greater than --cell | the script refuses this combination; raise --pitch |
| Paste does nothing / takes forever | scene too large for the clipboard | split_scene.py, then paste each part |
| Pasting replaced the whole board | Open / drag-and-drop was used instead of copy-paste | see references/paste_workflow.md; recover with in-app undo |
| Slides captured missing their later content | fragments never revealed | rebuild the deck from source, re-serve, re-shoot |
| Key-press badges appear in slide screenshots | the wait for them to fade was cut short | the script already waits ~2.9 s after the last press; if a deck lingers longer, raise it |
Cannot find package 'puppeteer' | not resolvable from the script's location | run from a project that has it |
| Image drawn at the wrong shape | element aspect ratio does not match the source | build_scene.py fails on this rather than writing it |
After a tray is built, the natural follow-up is the paste itself, which only the user can do. Give them the file path, the scroll-to-empty-space warning, and the three-key sequence — then stop. Do not open excalidraw.com to "verify" the file: loading a scene there replaces whatever is in that browser's current session, which may be the board you were trying to protect.
© daymade, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (scripts, references) in excalidraw-use of daymade/claude-code-skills.
Open the folder on GitHubat commit 872127b
Excalidraw Use next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Excalidraw Use this skilldaymade/claude-code-skills | 1.4k | — | ~2.1k | Automated safety check: Pass | MIT | |
| Concept To Excalidrawkipperacademy/skillpper | 144 | — | ~2.3k | Automated safety check: Pass | None | |
| Prepare Technical Slideskipperacademy/skillpper | 144 | — | ~2.9k | Automated safety check: Pass | None | |
| System Design Artifact IntakeHoangNguyen0403/agent-skills-standard | 571 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Diagram Designcathrynlavery/diagram-design | 47k | 1 repos | ~7.5k | Automated safety check: Pass | MIT | |
| Excalidraw Diagramcoleam00/excalidraw-diagram-skill | 5k | 2 repos | ~6.1k | Automated safety check: Pass | None |
kipperacademy/skillpper
Transformar conceitos técnicos em diagramas e boards visuais editáveis no Excalidraw, entregando arquivo .excalidraw.
kipperacademy/skillpper
Pesquisar e preparar slides de aulas e palestras técnicas em PT-BR, com fontes verificáveis, sequência didática, contexto e um conceito por slide.
HoangNguyen0403/agent-skills-standard
Ingest a provided design artifact - screenshot, drawio, Mermaid, PlantUML, Excalidraw, slides, PDF, or IaC - into a reviewable fact sheet.
cathrynlavery/diagram-design
Creates branded diagrams, from architecture, flowchart and sequence to charts and maps, as self-contained HTML with inline SVG, with import from draw.io, Mermaid and Excalidraw.
coleam00/excalidraw-diagram-skill
Create Excalidraw diagram JSON files that make visual arguments.
breferrari/obsidian-mind
Generate Excalidraw diagrams from text content. An agent skill from breferrari/obsidian-mind.
daymade/claude-code-skills
This skill should be used when comparing two videos to analyze compression results or quality differences.
daymade/claude-code-skills
Generates professional animated CLI demos as GIFs using VHS terminal recordings.
daymade/claude-code-skills
Converts DOCX/PDF/PPTX and saved HTML/HTM to high-quality Markdown with automatic post-processing.
daymade/claude-code-skills
Generates several distinct, clickable HTML interaction prototypes for one product surface into a Design Board and collects selection/remix feedback before implementation.
daymade/claude-code-skills
Diagnoses and repairs repository setup and guarded Git workflows for Claude Code or Codex — environment repair, startup sync, hook auditing, collaborator handoff.
daymade/claude-code-skills
Pulls Bigdata.com (RavenPack) financial and news data via the official bigdata-client SDK and /v1/ REST endpoints — structured financials, prices, analyst estimates, entity-sentiment series…
Works with
Categories
Places existing images onto an Excalidraw whiteboard, turns a slide deck into clean per-slide images, and inspects a .excalidraw file. Excalidraw Use is an agent skill from daymade/claude-code-skills.excalidraw file.
Excalidraw Use fits situations like: someone mentions Excalidraw; A whiteboard/canvas.
Run `npx skills add daymade/claude-code-skills --skill excalidraw-use -a claude-code`. Or copy the skill folder (excalidraw-use in daymade/claude-code-skills) into .claude/skills/excalidraw-use in your project. Claude Code loads it when a task matches its description.
Run `npx skills add daymade/claude-code-skills --skill excalidraw-use -a codex`. Or copy the skill folder (excalidraw-use in daymade/claude-code-skills) into .agents/skills/excalidraw-use in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add daymade/claude-code-skills --skill excalidraw-use -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/excalidraw-use, .gemini/skills/excalidraw-use, .github/skills/excalidraw-use and .opencode/skills/excalidraw-use in your project.
Going by SKILL.md and its folder, Excalidraw Use needs Python and JavaScript for the scripts in its folder and the command-line tools its instructions call (python3, npx and node). Our summary lists: Python 3; Node.js.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Excalidraw Use is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.2k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Excalidraw Use: Concept To Excalidraw (kipperacademy/skillpper, 144 stars), Prepare Technical Slides (kipperacademy/skillpper, 144 stars), System Design Artifact Intake (HoangNguyen0403/agent-skills-standard, 571 stars) and Diagram Design (cathrynlavery/diagram-design, 47k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
daymade (a GitHub user) maintains it in daymade/claude-code-skills, which has 1,447 GitHub stars. The repository holds 103 skills in this directory. The repository was last updated on October 9, 2026.
Source: daymade/claude-code-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.