PluginBench
Skill
Review
Audit score 70

defuddle

kepano/obsidian-skills

Extract clean markdown from web pages, removing clutter to save tokens.

What is defuddle?

Defuddle CLI converts web pages into clean, readable markdown by removing navigation, ads, and other noise. Use it instead of WebFetch when processing standard web pages, documentation, articles, or blog posts—not for URLs already ending in .md.

  • Converts web pages to clean markdown output using the `--md` flag
  • Removes navigation, ads, and clutter to reduce token usage
  • Extracts specific metadata like title, description, or domain
  • Saves parsed content directly to files with the `-o` flag
  • Outputs JSON format with both HTML and markdown versions
  • Handles standard web pages, documentation, articles, and blog posts

How to install defuddle

npx skills add https://github.com/kepano/obsidian-skills --skill defuddle
Prerequisites
  • Node.js and npm installed
  • Install Defuddle globally: `npm install -g defuddle`
Claude Code
Cursor
Windsurf
Cline

How to use defuddle

  1. 1.Run `defuddle parse <url> --md` to extract markdown from a web page
  2. 2.Add `-o content.md` to save the output to a file
  3. 3.Use `-p title`, `-p description`, or `-p domain` to extract specific metadata
  4. 4.Omit flags to get HTML output, or use `--json` for JSON format with both HTML and markdown

Use cases

Good for
  • Analyze blog posts or articles by converting them to markdown first
  • Extract documentation from web pages while preserving structure
  • Save web content to markdown files for offline reference or processing
  • Retrieve specific metadata (title, description, domain) from URLs
  • Process multiple web pages efficiently with reduced token consumption
Who it's for
  • Developers working with web content in markdown workflows
  • Users analyzing online documentation or articles
  • Anyone needing to reduce token usage when processing web pages
  • Agents that need clean, structured content from standard websites

defuddle FAQ

When should I use Defuddle instead of WebFetch?

Use Defuddle for standard web pages, articles, blog posts, and documentation. Use WebFetch for URLs that already end in .md or when you need the raw HTML.

How do I save the output to a file?

Use the `-o` flag followed by a filename: `defuddle parse <url> --md -o content.md`

What metadata can I extract?

You can extract specific properties using `-p <name>`, such as title, description, or domain.

Does Defuddle reduce token usage?

Yes, by removing navigation, ads, and clutter from web pages, Defuddle produces cleaner markdown that uses fewer tokens than raw HTML or unprocessed content.

What output formats are available?

Markdown (--md), JSON (--json with both HTML and markdown), HTML (default), or specific metadata properties (-p <name>).

Full instructions (SKILL.md)

Source of truth, from kepano/obsidian-skills.


name: defuddle description: 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 URLs ending in .md — those are already markdown, use WebFetch directly.

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.

If not installed: npm install -g defuddle

Usage

Always use --md for markdown output:

defuddle parse <url> --md

Save to file:

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

Extract specific metadata:

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

Output formats

FlagFormat
--mdMarkdown (default choice)
--jsonJSON with both HTML and markdown
(none)HTML
-p <name>Specific metadata property