describe
This skill should be used when the user invokes "/describe" to look up Emacs documentation via emacsclient.
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.
$ npx -y skills add xenodium/emacs-skills --skill d2 --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/d2Context preview
The summary Claude sees to decide when to auto-load this skill.
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.
name: d2 description: '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.' tools: Bash disable-model-invocation: true
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.
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:
emacsclient --eval '(face-foreground (quote default))' emacsclient --eval '(frame-parameter nil (quote background-mode))'
The first returns a hex color like `"#eeffff"`. The second returns `dark` or `light`. Reuse both for all subsequent diagrams. 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:

# Use --theme 200 for dark, --theme 0 for light d2 --theme 200 --pad 40 /tmp/agent-diagram-XXXX.d2 /tmp/agent-diagram-XXXX.png
Use `--theme 200` for dark or `--theme 0` for light, based on the Emacs background mode. Apply the queried foreground color to `style.font-color` and `style.stroke` on nodes and edges.
direction: right
node1: Label {
style.font-color: "#eeffff"
style.fill: "#2d3748"
style.stroke: "#eeffff"
}
node2: Label {
style.font-color: "#eeffff"
style.fill: "#2d3748"
style.stroke: "#eeffff"
}
node1 -> node2: label {style.stroke: "#eeffff"; style.font-color: "#eeffff"}Claude Code skills for Emacs integration. These skills enable tighter integration with agents running inside Emacs, for example agent-shell.
This skill should be used when the user invokes "/describe" to look up Emacs documentation via emacsclient.
This skill should be used when the user invokes "/dired" to open files from the latest interaction in an Emacs dired buffer via…
Always use emacsclient instead of emacs. This applies to all Emacs operations: user requests, byte compilation, check-parens,…
When referencing files, format them as markdown links with line numbers using GitHub-style #L syntax.
This skill should be used when the user invokes "/github-activity" to analyze a GitHub project''s recent activity (PRs and…