htmllisted
Install: claude install-skill MatrixFounder/Universal-skills
# html skill
**Purpose**: Convert a web URL or a downloaded `.html`/`.htm`/`.mhtml`/`.webarchive`
into clean Markdown — with YAML frontmatter and a shared `_attachments/` folder —
for two consumers: (1) an **Obsidian web-clipper** (self-contained note), and
(2) a **universal HTML→Markdown step** any agent workflow can call.
## 1. Red Flags (Anti-Rationalization)
- "I'll just paste the HTML and convert it in my head" → **WRONG**. The script
reuses the docx-mastered turndown core (GFM tables, rowspan→flat grid) and the
pdf-mastered cleaner (reader-mode, SPA-chrome strip); reimplementing in prose
regresses on every edge case.
- "I'll fetch the page with curl and strip tags with regex" → **WRONG**. Use the
script — it has SSRF protection, dual-output, sha1-deduped attachments.
### Rationalization Table
| Agent Excuse | Reality / Counter-Argument |
| :--- | :--- |
| "The page is simple, plain turndown is enough" | Plain turndown keeps the nav, cookie banner and share rail. The reader-mode pass is what makes the Markdown readable, and it is one flag. |
| "Reader mode dropped something, so I'll skip it" | Reader mode is lossy by design. Re-run with `--whole` for that one page instead of abandoning the cleaner for every page. |
| "I'll patch `web_clean/` here, it's a small fix" | `web_clean/` is a byte-identical replica; **pdf** is its master. Edit `skills/pdf/scripts/html2pdf_lib/`, then replicate — a local patch is silently reverted by the next `diff -q` gate. |
| "The f