Agent skill

D2

by xenodium in xenodium/emacs-skills

This skill should be used when the user invokes "/d2" to create a diagram from the current context using D2 and output the resulting image path.

No licenceAuto-check passedDevelopment

Install D2

skills CLI
$ npx skills add xenodium/emacs-skills --skill d2 -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install xenodium/emacs-skills d2 --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/xenodium/emacs-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/d2 .claude/skills/d2 && rm -rf skills-src

Use ~/.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/

Facts

Skill name
d2
GitHub stars
142
Token cost
~693 tokens
SKILL.md length
302 words
Files
1
Skills in repo
19
Repo updated
First seen
Licence
None found

At a glance

This skill should be used when the user invokes "/d2" to create a diagram from the current context using D2 and output the resulting image path.

  • Works in 5 steps: Extract or derive diagrammable data from… → If the Emacs foreground color and… → Write a D2 file to a temporary file… → …
  • Invokes /d2 to create a diagram from the current context using D2 and output the resulting image path
  • SKILL.md covers How to create a diagram, D2 template and Rules
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

D2 is an agent skill from xenodium/emacs-skills. This skill should be used when the user invokes "/d2" to create a diagram from the current context using D2 and output the resulting image path.

Its SKILL.md is about 690 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Diagrams. The repository describes itself as: Emacs skills for coding agents.

When your agent uses it

  • Invokes /d2 to create a diagram from the current context using D2 and output the resulting image path
  • Tasks that involve Diagrams

Example prompts

  • “/d2”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Extract or derive diagrammable data from the current context.
  2. If the Emacs foreground color and background mode are not already known from a previous diagram in this session, query them
  3. Write a D2 file to a temporary file using the foreground color.
  4. Run D2 with --theme 200 if background mode is dark, or --theme 0 if light.
  5. Output the result as a markdown image on its own line

What it can do on your machine

Read from SKILL.md and the folder at commit a158238. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash and d2).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

D2 loads about 693 tokens when it runs. Until then it costs about 37 tokens; SKILL.md has 302 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~37
When it runs · the whole SKILL.md, loaded when a task matches
~693

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.

Safety

Auto-check passed

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); files beside SKILL.md are not scanned.

SKILL.md

Without a licence we can't republish the file, so here is its outline and opening line. It has 302 words (~693 tokens).

“Create a diagram from the most recent interaction context using D2. Generate a PNG image and output it as a markdown image so it renders inline.”

— opening of SKILL.md by xenodium
name
d2
tools
Bash
disable-model-invocation
true

Read the full SKILL.md on GitHub

Files

Just SKILL.md in skills/d2 of xenodium/emacs-skills.

Open the folder on GitHubat commit a158238

Compare with similar skills

D2 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.

D2 compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
D2 this skillxenodium/emacs-skills142—~693Automated safety check: PassNone
Archify Diagramstt-a1i/archify79k—~2.9kAutomated safety check: PassMIT
JSON Canvasheyitsnoah/claudesidian2.6k18 repos~3.5kAutomated safety check: PassMIT
Diagram Designcathrynlavery/diagram-design45k1 repos~7.5kAutomated safety check: PassMIT
Fireworks Tech Graphtisfeng/Easydict15k1 repos~1.4kAutomated safety check: PassMIT
Excalidraw Diagramcoleam00/excalidraw-diagram-skill5k2 repos~6.1kAutomated safety check: PassNone

Similar skills

  • Archify Diagrams

    tt-a1i/archify

    Creates interactive architecture, workflow, sequence, data-flow and lifecycle diagrams as standalone HTML with inline SVG, themes and image or video export.

    79k GitHub stars~2.9k tokensUpdated today
    DevelopmentAuto-check passed
  • JSON Canvas

    heyitsnoah/claudesidian

    Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections.

    2.6k GitHub starsUsed in 18 repos~3.5k tokens
    DevelopmentAuto-check passed
  • Diagram Design

    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.

    45k GitHub starsUsed in 1 repo~7.5k tokens
    DevelopmentAuto-check passed
  • Fireworks Tech Graph

    tisfeng/Easydict

    Create precise SVG technical diagrams, export PNG or offline HTML, and animate supported semantic SVGs to GIF.

    15k GitHub starsUsed in 1 repo~1.4k tokens
    DevelopmentAuto-check passed
  • Excalidraw Diagram

    coleam00/excalidraw-diagram-skill

    Create Excalidraw diagram JSON files that make visual arguments.

    5k GitHub starsUsed in 2 repos~6.1k tokens
    DevelopmentAuto-check passed
  • Draw.io Diagram Studio

    Agents365-ai/drawio-skill

    Creates and edits editable draw.io diagrams from descriptions, code, infrastructure files, SQL and API schemas, with sync, review, test and export tools.

    10k GitHub stars~2.4k tokensUpdated 6 days ago
    DevelopmentAuto-check: notes

More from xenodium/emacs-skills

All 19 skills in this repo
  • GitHub Activity

    xenodium/emacs-skills

    This skill should be used when the user invokes "/github-activity" to analyze a GitHub project's recent activity (PRs and issues) and produce a succinct, chart-backed health report.

    142 GitHub stars~1.5k tokensUpdated 2 mo ago
    Auto-check passed
  • Gnuplot

    xenodium/emacs-skills

    This skill should be used when the user invokes "/gnuplot" to plot data from the current context using gnuplot and output the resulting image path.

    142 GitHub stars~734 tokensUpdated 2 mo ago
    Auto-check passed
  • Mappu

    xenodium/emacs-skills

    A skill your agent uses when the user asks about a specific place — restaurant, cafe, shop, business, landmark — or when context implies a location-based lookup ("where is X", "find Y", "X in Z", "X…

    142 GitHub stars~925 tokensUpdated 2 mo ago
    Auto-check passed
  • Matplotlib

    xenodium/emacs-skills

    This skill should be used when the user invokes "/matplotlib" to plot data from the current context using matplotlib (via uv) and output the resulting image path.

    142 GitHub stars~690 tokensUpdated 2 mo ago
    Auto-check passed
  • Mermaid

    xenodium/emacs-skills

    This skill should be used when the user invokes "/mermaid" to create a diagram from the current context using Mermaid and output the resulting image path.

    142 GitHub stars~893 tokensUpdated 2 mo ago
    Auto-check passed
  • Plantuml

    xenodium/emacs-skills

    This skill should be used when the user invokes "/plantuml" to create a diagram from the current context using PlantUML and output the resulting image path.

    142 GitHub stars~795 tokensUpdated 2 mo ago
    Auto-check passed

Categories

Questions about D2

What does D2 do?

This skill should be used when the user invokes "/d2" to create a diagram from the current context using D2 and output the resulting image path. D2 is an agent skill from xenodium/emacs-skills. This skill should be used when the user invokes "/d2" to create a diagram from the current context using D2 and output the resulting image path.

When should I use D2?

D2 fits situations like: invokes /d2 to create a diagram from the current context using D2 and output the resulting image path; tasks that involve Diagrams.

How do I install D2 in Claude Code?

Run `npx skills add xenodium/emacs-skills --skill d2 -a claude-code`. Or copy the skill folder (skills/d2 in xenodium/emacs-skills) into .claude/skills/d2 in your project. Claude Code loads it when a task matches its description.

How do I install D2 in Codex?

Run `npx skills add xenodium/emacs-skills --skill d2 -a codex`. Or copy the skill folder (skills/d2 in xenodium/emacs-skills) into .agents/skills/d2 in your project. Codex loads it when a task matches its description.

Can I use D2 in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add xenodium/emacs-skills --skill d2 -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/d2, .gemini/skills/d2, .github/skills/d2 and .opencode/skills/d2 in your project.

What does D2 need to run?

SKILL.md names no scripts, command-line tools or credentials: D2 is instructions for the agent only.

Does D2 access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is D2 safe to install?

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. Review the folder before installing.

What licence does D2 use?

No licence was found for D2 or its repository. Without one, default copyright applies: ask the author before reusing or redistributing it.

How many tokens does D2 use?

About 693 tokens (SKILL.md is roughly 2.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to D2?

Skills that share tags, products or a category with D2: Archify Diagrams (tt-a1i/archify, 79k stars), JSON Canvas (heyitsnoah/claudesidian, 2.6k stars), Diagram Design (cathrynlavery/diagram-design, 45k stars) and Fireworks Tech Graph (tisfeng/Easydict, 15k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains D2?

xenodium (a GitHub user) maintains it in xenodium/emacs-skills, which has 142 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on July 21, 2026.

Source: xenodium/emacs-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.