← DefuddleCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Defuddle
Snapshot Sep 30, 2026 · 23:17 UTC · version 0.19.4
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Use when the user asks to extract the main readable article or page content from a public web page while removing navigation, ads, and other clutter.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 235
},
{
"relative_path": "references/source/LICENSE",
"size_in_bytes": 1076
},
{
"relative_path": "references/source/README.md",
"size_in_bytes": 13792
},
{
"relative_path": "references/source/package.json",
"size_in_bytes": 2656
},
{
"relative_path": "references/source/src/cli.ts",
"size_in_bytes": 6570
},
{
"relative_path": "references/source/src/constants.ts",
"size_in_bytes": 28448
},
{
"relative_path": "references/source/src/content-boundary.ts",
"size_in_bytes": 5402
},
{
"relative_path": "references/source/src/defuddle.ts",
"size_in_bytes": 65080
},
{
"relative_path": "references/source/src/elements/callouts.ts",
"size_in_bytes": 5382
},
{
"relative_path": "references/source/src/elements/code.ts",
"size_in_bytes": 17046
},
{
"relative_path": "references/source/src/elements/footnotes.ts",
"size_in_bytes": 51258
},
{
"relative_path": "references/source/src/elements/headings.ts",
"size_in_bytes": 3790
},
{
"relative_path": "references/source/src/elements/images.ts",
"size_in_bytes": 30021
},
{
"relative_path": "references/source/src/elements/math.base.ts",
"size_in_bytes": 22500
},
{
"relative_path": "references/source/src/elements/math.core.ts",
"size_in_bytes": 2150
},
{
"relative_path": "references/source/src/elements/math.full.ts",
"size_in_bytes": 3097
},
{
"relative_path": "references/source/src/elements/math.ts",
"size_in_bytes": 417
},
{
"relative_path": "references/source/src/extractor-registry.ts",
"size_in_bytes": 6790
},
{
"relative_path": "references/source/src/extractors/_base.ts",
"size_in_bytes": 1454
},
{
"relative_path": "references/source/src/extractors/_conversation.ts",
"size_in_bytes": 4246
},
{
"relative_path": "references/source/src/extractors/bbcode-data.ts",
"size_in_bytes": 1448
},
{
"relative_path": "references/source/src/extractors/bilibili.ts",
"size_in_bytes": 15113
},
{
"relative_path": "references/source/src/extractors/bluesky.ts",
"size_in_bytes": 10747
},
{
"relative_path": "references/source/src/extractors/c2-wiki.ts",
"size_in_bytes": 4872
},
{
"relative_path": "references/source/src/extractors/chatgpt.ts",
"size_in_bytes": 6634
},
{
"relative_path": "references/source/src/extractors/claude.ts",
"size_in_bytes": 3044
},
{
"relative_path": "references/source/src/extractors/discourse.ts",
"size_in_bytes": 5322
},
{
"relative_path": "references/source/src/extractors/gemini.ts",
"size_in_bytes": 4096
},
{
"relative_path": "references/source/src/extractors/github.ts",
"size_in_bytes": 9899
},
{
"relative_path": "references/source/src/extractors/gmail.ts",
"size_in_bytes": 8731
},
{
"relative_path": "references/source/src/extractors/grok.ts",
"size_in_bytes": 6216
},
{
"relative_path": "references/source/src/extractors/hackernews.ts",
"size_in_bytes": 9588
},
{
"relative_path": "references/source/src/extractors/leetcode.ts",
"size_in_bytes": 663
},
{
"relative_path": "references/source/src/extractors/linkedin.ts",
"size_in_bytes": 8780
},
{
"relative_path": "references/source/src/extractors/lwn.ts",
"size_in_bytes": 4900
},
{
"relative_path": "references/source/src/extractors/mastodon.ts",
"size_in_bytes": 8677
},
{
"relative_path": "references/source/src/extractors/medium.ts",
"size_in_bytes": 5058
},
{
"relative_path": "references/source/src/extractors/nytimes.ts",
"size_in_bytes": 7086
},
{
"relative_path": "references/source/src/extractors/reddit.ts",
"size_in_bytes": 15937
},
{
"relative_path": "references/source/src/extractors/substack.ts",
"size_in_bytes": 7187
},
{
"relative_path": "references/source/src/extractors/threads.ts",
"size_in_bytes": 16268
},
{
"relative_path": "references/source/src/extractors/twitter.ts",
"size_in_bytes": 12102
},
{
"relative_path": "references/source/src/extractors/wikipedia.ts",
"size_in_bytes": 645
},
{
"relative_path": "references/source/src/extractors/x-article.ts",
"size_in_bytes": 11359
},
{
"relative_path": "references/source/src/extractors/x-oembed.ts",
"size_in_bytes": 18176
},
{
"relative_path": "references/source/src/extractors/youtube.ts",
"size_in_bytes": 46300
},
{
"relative_path": "references/source/src/fetch.ts",
"size_in_bytes": 12555
},
{
"relative_path": "references/source/src/frontmatter.ts",
"size_in_bytes": 2217
},
{
"relative_path": "references/source/src/index.full.ts",
"size_in_bytes": 1227
},
{
"relative_path": "references/source/src/index.ts",
"size_in_bytes": 204
},
{
"relative_path": "references/source/src/markdown.ts",
"size_in_bytes": 36467
},
{
"relative_path": "references/source/src/metadata.ts",
"size_in_bytes": 30803
},
{
"relative_path": "references/source/src/node.ts",
"size_in_bytes": 1717
},
{
"relative_path": "references/source/src/removals/content-patterns.ts",
"size_in_bytes": 54936
},
{
"relative_path": "references/source/src/removals/hidden.ts",
"size_in_bytes": 3268
},
{
"relative_path": "references/source/src/removals/metadata-block.ts",
"size_in_bytes": 1634
},
{
"relative_path": "references/source/src/removals/scoring.ts",
"size_in_bytes": 17806
},
{
"relative_path": "references/source/src/removals/selectors.ts",
"size_in_bytes": 7525
},
{
"relative_path": "references/source/src/removals/small-images.ts",
"size_in_bytes": 6194
},
{
"relative_path": "references/source/src/standardize.ts",
"size_in_bytes": 64506
},
{
"relative_path": "references/source/src/types.ts",
"size_in_bytes": 3588
},
{
"relative_path": "references/source/src/types/extractors.ts",
"size_in_bytes": 785
},
{
"relative_path": "references/source/src/utils.ts",
"size_in_bytes": 3571
},
{
"relative_path": "references/source/src/utils/bbcode.ts",
"size_in_bytes": 2484
},
{
"relative_path": "references/source/src/utils/comments.ts",
"size_in_bytes": 6277
},
{
"relative_path": "references/source/src/utils/dom.ts",
"size_in_bytes": 4766
},
{
"relative_path": "references/source/src/utils/linkedom-compat.ts",
"size_in_bytes": 717
},
{
"relative_path": "references/source/src/utils/transcript.ts",
"size_in_bytes": 2752
},
{
"relative_path": "references/source/tsconfig.json",
"size_in_bytes": 344
}
],
"name": "defuddle-web-content",
"skill_md_contents": "---\nname: defuddle-web-content\ndescription: Use when the user asks to extract the main readable article or page content from a public web page while removing\n navigation, ads, and other clutter.\nlicense: MIT\ncompatibility: Requires a local Node.js/npm environment to execute Defuddle. The bundled source is reference material and\n does not install the runtime automatically.\n---\n\n# Defuddle Web Content\n\n## Host capability adaptation\n\n1. **Native host capability:** when ChatGPT/Codex exposes a native tool or connected source that satisfies this task, use it.\n2. **Original external runtime:** when the upstream runtime named by this skill is actually available, use it as documented below.\n3. **Instruction-only fallback:** when neither is available, perform only the reasoning/instruction portion that remains valid, state the limitation, and never fabricate tool output, successful execution, or persisted state.\n\nUse an equivalent native host capability when available; otherwise perform only the instruction-based portion and clearly disclose the unavailable runtime.\n\nUse Defuddle when a local terminal/runtime is available and the task calls for removing navigation, ads, sidebars, comments, and other page clutter while preserving the main content and metadata.\n\n## Preferred CLI flow\n\nUse `npx defuddle` so a global installation is not required:\n\n```bash\nnpx defuddle parse <source> --markdown\n```\n\n`<source>` may be a URL or local HTML file. HTML may also be piped on stdin.\n\nCommon output modes:\n\n```bash\nnpx defuddle parse page.html --markdown\nnpx defuddle parse page.html --json\nnpx defuddle parse page.html --frontmatter\nnpx defuddle parse page.html --property title\n```\n\nFor exact CLI options and Node/browser API usage, read `references/source/README.md`.\n\n## Runtime rule\n\nDo not claim Defuddle extracted a page unless the command or library actually ran successfully. If the environment cannot execute Node/npm or cannot access the requested URL, explain that limitation and use another available reading method only if the user permits it.\n\n## Source reference\n\nThe bundled `references/source/src/` directory contains the original 0.19.4 TypeScript source for implementation/reference purposes. It is not an installed npm dependency.\n"
}SHA-256 of public snapshot: fdcbb23a318f0ebecf53aa82fdde2fb0d3737fc53f5b54a1ebbd3d826c7db2d1