--- name: defuddle category: meta-orchestration description: > Extract clean markdown from web pages using Defuddle CLI, stripping navigation and clutter to save tokens. Use instead of WebFetch for any standard web page, documentation, article, or blog post — but not for URLs ending in .md, which WebFetch handles directly. codex-short-description: "Extract clean markdown from web pages via Defuddle CLI, stripping clutter" related-skills: - technical-writer - documentation-engineer loop-eligible: false compatibility: claude-code codex opencode --- # 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: ```bash defuddle parse --md ``` Save to file: ```bash defuddle parse --md -o content.md ``` Extract specific metadata: ```bash defuddle parse -p title defuddle parse -p description defuddle parse -p domain ``` ## Output formats | Flag | Format | |------|--------| | `--md` | Markdown (default choice) | | `--json` | JSON with both HTML and markdown | | (none) | HTML | | `-p ` | Specific metadata property | > **Host portability:** tool names in this skill follow Claude Code conventions; on other hosts (Codex, opencode) map them by intent — see [PORTABILITY.md](../PORTABILITY.md). ## Self-Evolve Loop Journal: `~/.ink-and-agency/learnings/defuddle.md` (workspace-local `.ink-and-agency/learnings/defuddle.md` where the sandbox confines writes). Read it first, append what the run taught last — [SELF-EVOLVE.md](../SELF-EVOLVE.md).