Let your agent show you what it wrote, and make the PDF.
This skill is one Markdown file. It teaches a coding agent to open a document it wrote in MarsDawn for you to review, and to install marsdawn, check that it works, export a document to PDF and read the result.
One Markdown file, at ~/.claude/skills/marsdawn/SKILL.md. With it your agent installs marsdawn, exports to PDF and reads the JSON result, and it still asks before it runs anything.
Install it in Claude Code
The marsdawn command-line tool writes the skill for you, and the file it writes matches the version of marsdawn you have installed. If you don't have marsdawn yet, install it with Homebrew:
brew install redtear1115/tap/marsdawn
Then install the skill:
marsdawn skill --install
That writes ~/.claude/skills/marsdawn/SKILL.md, creating the folder if it isn't there. Because the file comes from your copy of marsdawn, it never describes an option your copy doesn't have.
Claude Code loads it when a task calls for a PDF, or when it has written or revised a Markdown document for you to read, and you can run it yourself as /marsdawn. It's one short file if you'd like to read it first.
After you upgrade marsdawn
Homebrew upgrades marsdawn but leaves the skill where it was, so it stays at the old version until you refresh it:
marsdawn skill --install --force
--force replaces the existing SKILL.md, including any changes you made to it. Without --force, if a different SKILL.md is already there, marsdawn leaves it alone, tells you it differs and exits with code 64 (skill_differs). If the file is already the current one, nothing changes.
For other agents
Add --dir with the folder where your agent keeps its skills, and marsdawn writes SKILL.md there instead:
marsdawn skill --install --dir <path>
The file is plain Markdown, instructions and commands, so an agent that loads instruction files can use it as it is.
Without Homebrew or the command-line tool
If you can't install marsdawn first, download the file instead:
mkdir -p ~/.claude/skills/marsdawn
curl -fsSL https://marsdawn.southern-light.dev/cli/skill/SKILL.md -o ~/.claude/skills/marsdawn/SKILL.md
This fetches the latest skill from this site, which may be ahead of an older marsdawn. Once you have the tool, marsdawn skill --install --force replaces it with the one that matches. You can also point an agent at the URL, or paste the file in.
What it teaches
- Install
marsdawnwith Homebrew if it's missing, then check it withmarsdawn --versioninstead of assuming a version. - Export with
marsdawn export … --json, and read the result: where the PDF went, how many pages it has, and any Mermaid diagram that didn't render. - Tell the failures apart by exit code: no such file, a PDF already there, a failed export, a bad option.
- Open a document it wrote with
marsdawn open file.md:line, landing on its first change, and only once: later edits show up in the open window by themselves. - If the MarsDawn app isn't installed, say so once and carry on, without retrying. Never use
opento make a PDF. - With
--folder(marsdawn 0.5.1 and later), report the folder as asked for, not as shown: the app decides, and nothing reports back.
What it doesn't do
- It doesn't give itself permission to run anything. Your agent still asks before it installs
marsdawnor runs it, as it would for any other command. - It doesn't send your documents anywhere.
marsdawnrenders on your Mac, and it leaves out images from the web unless you pass--allow-remote-images.
The whole contract, every field and every code, is in marsdawn for agents. For an agent that calls tools over MCP instead of reading a skill file, there's also an MCP server.