Markitdown
ImCa0/just-laws
Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.
Fetch a URL or convert a local file (PDF/DOCX/HTML/etc.) into Markdown using uvx markitdown, optionally it can summarize
$ npx skills add mitsuhiko/agent-stuff --skill summarize -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mitsuhiko/agent-stuff summarize --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/mitsuhiko/agent-stuff.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/summarize .claude/skills/summarize && 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 "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .claude/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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/mitsuhiko/agent-stuff/tree/main/skills/summarizeType 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 mitsuhiko/agent-stuff --skill summarize -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mitsuhiko/agent-stuff summarize --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitsuhiko/agent-stuff.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/summarize .agents/skills/summarize && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .agents/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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 mitsuhiko/agent-stuff --skill summarize -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mitsuhiko/agent-stuff summarize --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitsuhiko/agent-stuff.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/summarize .cursor/skills/summarize && 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 "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .cursor/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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/mitsuhiko/agent-stuff.git --path skills/summarize--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 mitsuhiko/agent-stuff --skill summarize -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mitsuhiko/agent-stuff summarize --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitsuhiko/agent-stuff.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/summarize .gemini/skills/summarize && 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 "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .gemini/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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 mitsuhiko/agent-stuff summarizeInstalls 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 mitsuhiko/agent-stuff --skill summarize -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mitsuhiko/agent-stuff.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/summarize .github/skills/summarize && 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 "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .github/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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 mitsuhiko/agent-stuff --skill summarize -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mitsuhiko/agent-stuff summarize --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitsuhiko/agent-stuff.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/summarize .opencode/skills/summarize && 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 "summarize" agent skill from https://github.com/mitsuhiko/agent-stuff/tree/main/skills/summarize into .opencode/skills/summarize/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "summarize", 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.
summarizeFetch a URL or convert a local file (PDF/DOCX/HTML/etc.) into Markdown using uvx markitdown, optionally it can summarize
Summarize is an agent skill from mitsuhiko/agent-stuff. Fetch a URL or convert a local file (PDF/DOCX/HTML/etc.) into Markdown using uvx markitdown, optionally it can summarize
Its SKILL.md is about 520 tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file.
It sits in Documents & Office, covering Document parsing, Word documents and Markdown. It works with MarkItDown and Microsoft Word. The repository describes itself as: These are commands I use with agents, mostly Claude. The licence is Apache-2.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0865c84. 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 script files (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
uvxnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uvx, 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.
Summarize loads about 524 tokens when it runs. Until then it costs about 33 tokens; SKILL.md has 231 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); files beside SKILL.md are not scanned.
The full file from mitsuhiko/agent-stuff at commit 0865c84, republished under its Apache-2.0 licence (© mitsuhiko). 231 words, ~524 tokens.
.claude/skills/summarize/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Turn “things” (URLs, PDFs, Word docs, PowerPoints, HTML pages, text files, etc.) into Markdown so they can be inspected/quoted/processed like normal text.
markitdown can fetch URLs by itself; this skill mainly wraps it to make saving + summarizing convenient.
For PDF inputs, use the markitdown[pdf] extra (or the wrapper below, which now does this automatically).
Use this skill when you need to:
Run from this skill folder (the agent should cd here first):
uvx --from 'markitdown[pdf]' markitdown <url-or-path>To write Markdown to a temp file (prints the path) use the wrapper:
node to-markdown.mjs <url-or-path> --tmpTip: when summarizing, the script will always write the full converted Markdown to a temp .md file and will always print a final "Hint" line with the path (so you can open/inspect the full content).
Write Markdown to a specific file:
uvx --from 'markitdown[pdf]' markitdown <url-or-path> > /tmp/doc.mdSummaries are only useful when you provide what you want extracted and the audience/purpose.
node to-markdown.mjs <url-or-path> --summary --prompt "Summarize focusing on X, for audience Y. Extract Z."Or:
node to-markdown.mjs <url-or-path> --summary --prompt "Focus on security implications and action items."This will:
uvx --from 'markitdown[pdf]' markitdown.md file and print its path as a "Hint" linepi --model claude-haiku-4-5 (no-tools, no-session) to summarize using your extra prompt© mitsuhiko, Apache-2.0. 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 1 other file in skills/summarize of mitsuhiko/agent-stuff.
Open the folder on GitHubat commit 0865c84
Summarize 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 |
|---|---|---|---|---|---|---|
| Summarize this skillmitsuhiko/agent-stuff | 3.2k | — | ~524 | Automated safety check: Pass | Apache-2.0 | |
| MarkitdownImCa0/just-laws | 781 | 14 repos | ~3.2k | Automated safety check: Notes | MIT | |
| Doc To Markdowndaymade/claude-code-skills | 1.4k | — | ~2.5k | Automated safety check: Pass | MIT | |
| Markdown ConverterTeam-Commonly/commonly | 1.4k | — | ~557 | Automated safety check: Pass | Apache-2.0 | |
| Huashu Markdown Publishing Pipelinealchaincyf/huashu-md-html | 908 | — | ~4.8k | Automated safety check: Pass | MIT | |
| Markitdownjimmc414/Kosmos | 594 | 2 repos | ~1.7k | Automated safety check: Pass | None |
ImCa0/just-laws
Convert files and office documents to Markdown. An agent skill from ImCa0/just-laws.
daymade/claude-code-skills
Converts DOCX/PDF/PPTX and saved HTML/HTM to high-quality Markdown with automatic post-processing.
Team-Commonly/commonly
Convert binary documents (PDF, DOCX, XLSX, PPTX, HTML, EPUB, images) to clean LLM-friendly Markdown using Microsoft's markitdown Python tool.
alchaincyf/huashu-md-html
Converts files and web pages into clean Markdown, then turns Markdown into polished HTML, Word, PDF and EPUB using four templates.
jimmc414/Kosmos
Convert various file formats (PDF, Office documents, images, audio, web content, structured data) to Markdown optimized for LLM processing.
Nebutra/MinerU-Skill
An AI-Native skill for parsing PDF / Office / image files into Markdown with MinerU — a fast, zero-config document parser for AI agents.
mitsuhiko/agent-stuff
Austrian public transport (VOR AnachB) for all of Austria. An agent skill from mitsuhiko/agent-stuff.
mitsuhiko/agent-stuff
Cache and refresh remote git repositories under ~/.cache/checkouts/<host/<org/<repo so future references can reuse a local copy.
mitsuhiko/agent-stuff
Automate and interact with web pages through Chrome or Chromium using the Chrome DevTools Protocol (CDP): navigate, click, fill forms, inspect content, take screenshots, and debug console or network…
mitsuhiko/agent-stuff
Access Google Workspace APIs (Drive, Docs, Calendar, Gmail, Sheets, Slides, Chat, People) via local helper scripts without MCP.
mitsuhiko/agent-stuff
Austrian rail travel planner (ÖBB Scotty). An agent skill from mitsuhiko/agent-stuff.
mitsuhiko/agent-stuff
Fetch and analyze Sentry issues, events, transactions, and logs.
Works with
Categories
Fetch a URL or convert a local file (PDF/DOCX/HTML/etc.) into Markdown using uvx markitdown, optionally it can summarize. Summarize is an agent skill from mitsuhiko/agent-stuff.
Summarize fits situations like: tasks that involve Document parsing; tasks that involve Word documents; tasks that involve Markdown.
Run `npx skills add mitsuhiko/agent-stuff --skill summarize -a claude-code`. Or copy the skill folder (skills/summarize in mitsuhiko/agent-stuff) into .claude/skills/summarize in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mitsuhiko/agent-stuff --skill summarize -a codex`. Or copy the skill folder (skills/summarize in mitsuhiko/agent-stuff) into .agents/skills/summarize 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 mitsuhiko/agent-stuff --skill summarize -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/summarize, .gemini/skills/summarize, .github/skills/summarize and .opencode/skills/summarize in your project.
Going by SKILL.md and its folder, Summarize needs JavaScript for the scripts in its folder and the command-line tools its instructions call (uvx and node). Our summary lists: Node.js.
SKILL.md contains no URLs. Its commands use uvx, 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. Review the folder before installing.
Summarize is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 524 tokens (SKILL.md is roughly 2.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Summarize: Markitdown (ImCa0/just-laws, 781 stars), Doc To Markdown (daymade/claude-code-skills, 1.4k stars), Markdown Converter (Team-Commonly/commonly, 1.4k stars) and Huashu Markdown Publishing Pipeline (alchaincyf/huashu-md-html, 908 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mitsuhiko (a GitHub user) maintains it in mitsuhiko/agent-stuff, which has 3,177 GitHub stars. The repository holds 16 skills in this directory. The repository was last updated on September 27, 2026.
Source: mitsuhiko/agent-stuff on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.