# Defuddle

> Extract clean markdown content from web pages using Defuddle CLI, removing clutter and navigation to save tokens. Use instead of WebFetch when the user provides a URL to read or analyze, for online documentation, articles, blog posts, or any standard web page. Do NOT use for GitHub URLs; use the GitHub CLI (`gh`) instead. Do NOT use for URLs ending in .md — those are already markdown, use WebFetch directly.

- Skill: `carlos-algms/defuddle` (Agent Skill)
- Install (CLI): `npx skillmds@latest add carlos-algms/defuddle`
- Raw SKILL.md: https://api.skillmd.com/api/skills/carlos-algms/defuddle/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: carlos-algms (https://skillmd.com/u/carlos-algms)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/carlos-algms/defuddle

---


# Defuddle

Use Defuddle CLI to extract clean readable content from web pages. Prefer over
WebFetch for standard web pages — it removes navigation, ads, and clutter,
reducing token usage.

Do not use Defuddle for GitHub. Use `gh` for GitHub repositories, files, issues,
pull requests, discussions, releases, actions, and API data.

If not installed: `npm install -g defuddle`

## Usage

Always use `--md` for markdown output:

```bash
defuddle parse <url> --md
```

Save to file:

```bash
defuddle parse <url> --md -o content.md
```

Extract specific metadata:

```bash
defuddle parse <url> -p title
defuddle parse <url> -p description
defuddle parse <url> -p domain
```

## Output formats

| Flag        | Format                           |
| ----------- | -------------------------------- |
| `--md`      | Markdown (default choice)        |
| `--json`    | JSON with both HTML and markdown |
| (none)      | HTML                             |
| `-p <name>` | Specific metadata property       |

