Percerno Skillsbeta
← everything it can do · other

Web To Markdown TEXT

Converts specified webpage URLs into clean Markdown files by utilizing the local web2md CLI, which leverages Puppeteer and Readability to handle JavaScript-rendered content.

2 uses this weeksource softaworkslicence MIT
Quality gate: INCONCLUSIVE · better answers · measured 2026-10-24
Blind-judged against the bare model on 2 requests: average lift -1.0 points (specificity, structure, method, fit).
won 1/2, lift -1.0, tokens ×34.14
Security scan: clean · 2026-10-24 · 2 files · ran in sandbox
no network calls, shell tricks, credential access or instruction tampering found in its files.

Try asking

Say it in your own words; the assistant finds this recipe by itself. Examples:

“brug skillen web-to-markdown til at konvertere https://eksempel.dk/artikel til en fil kaldet artikel.md”
“Jeg har brug for at gemme denne JS-tunge side. brug en skill web-to-markdown med URL https://app.eksempel.dk/dashboard og gem den i ./docs/”
“brug skillen web-to-markdown til https://nyheder.site.dk/historie/123, udskriv bare outputtet til stdout”
“use the skill web-to-markdown to convert https://example.com/article into a file named article.md”
“I need to save this JS-heavy dashboard. use a skill web-to-markdown with URL https://app.example.com/dashboard and save it to ./docs/”
“use the skill web-to-markdown for https://news.site.com/story/123, just print the output to stdout please”
Try this skill from Claude, ChatGPT or a chat on your own page. Free plan, no credit card.Get started free

Good for

web-to-markdownscrapingpuppeteermarkdownreadabilityjs-renderedcliweb2mdcontent-extraction

Not for

Do not use this skill if the user simply asks to summarize, scrape, or convert a webpage without explicitly naming the 'web-to-markdown' skill. For general web scraping or summarization requests, a different, more general-purpose web handling skill should be used.

Details

When it is the right choice

Use this skill only when the user explicitly includes the phrase 'use the skill web-to-markdown' or 'use a skill web-to-markdown' in their request. It is designed for converting specific web pages, particularly those requiring JavaScript rendering, into structured Markdown format.

The full recipe the assistant reads

web-to-markdown

Convert web pages to clean Markdown by driving a locally installed browser (via web2md).

Hard trigger gate (must enforce)

This skill MUST NOT be used unless the user explicitly wrote exactly a phrase like: - use the skill web-to-markdown ... - use a skill web-to-markdown ...

If the user did not explicitly request this skill by name, stop and ask them to re-issue the request including: use the skill web-to-markdown.

What this skill does

  • Handles JS-rendered pages (Puppeteer → user Chrome).
  • Works best with Chromium-family browsers (Chrome/Chromium/Brave/Edge) via puppeteer-core.
  • Extracts main content (Readability).
  • Converts to Markdown (Turndown) with cleaned links and optional YAML frontmatter.

Non-goals

  • Do not use Playwright or other browser automation stacks; the mechanism is web2md.

Inputs you should collect (ask only if missing)

  • url (or a list of URLs)
  • Output preference:
  • Print to stdout (--print), OR
  • Save to a file (--out ./file.md), OR
  • Save to a directory (--out ./some-dir/ to auto-name by page title)
  • Optional rendering controls for tricky pages:
  • --chrome-path <path> (if Chrome auto-detection fails)
  • --interactive (show Chrome and pause so the user can complete human checks/login, then press Enter)
  • --wait-until load|domcontentloaded|networkidle0|networkidle2
  • --wait-for '<css selector>'
  • --wait-ms <milliseconds>
  • --headful (debug)
  • --no-sandbox (sometimes required in containers/CI)
  • --user-data-dir <dir> (login/session; use a dedicated profile directory)

Workflow

1) Confirm the user explicitly invoked the skill (use the skill web-to-markdown). 2) Validate URL(s) start with http:// or https://. 3) Ensure web2md is installed: - Run: command -v web2md - If missing, instruct the user to install it (assume the project exists at ~/workspace/softaworks/projects/web2md): - cd ~/workspace/softaworks/projects/web2md && npm install && npm run build && npm link - Or: cd ~/workspace/softaworks/projects/web2md && npm install && npm run build && npm install -g . 4) Convert: - Single URL → file: - web2md '<url>' --out ./page.md - Single URL → auto-named file in directory: - mkdir -p ./out && web2md '<url>' --out ./out/ - Human verification / login walls (interactive): - mkdir -p ./out && web2md '<url>' --interactive --user-data-dir ./tmp/web2md-profile --out ./out/ - Then: complete the check in the browser window and press Enter in the terminal to continue. - Print to stdout: - web2md '<url>' --print - Multiple URLs (batch): - Create output dir (e.g. ./out/) then run one web2md command per URL using --out ./out/ 5) Validate output: - If writing files, verify they exist and are non-empty (e.g. ls -la <path> and wc -c <path>). 6) Return: - The saved file path(s), or the Markdown (stdout mode).

Defaults (recommended)

  • For most pages: --wait-until networkidle2
  • For heavy apps: start with --wait-until domcontentloaded --wait-ms 2000, then add --wait-for 'main' (or another stable selector) if needed.
Files in this skill (3)
  • LICENSE
  • README.md
  • SKILL.md
Where it comes from

Vendored from softaworks/agent-toolkit, commit 3027f20f3181, path skills/web-to-markdown, licence MIT. The upstream licence file ships inside the skill.