Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
softaworks avatar

Web To Markdown

  • 604 installs
  • 2.3k repo stars
  • Updated March 5, 2026
  • softaworks/agent-toolkit

web-to-markdown is an agent skill that converts webpage URLs into clean, readable Markdown by calling the local web2md CLI with Puppeteer and Readability for coding agents.

About

web-to-markdown is version 0.1.0 agent skill from softaworks/agent-toolkit that converts any webpage URL into clean Markdown suitable for coding agents. It drives a locally installed browser through the web2md CLI, combining Puppeteer rendering for JavaScript-heavy pages with Mozilla Readability extraction to strip boilerplate. Developers explicitly invoke it with phrases like "use the skill web-to-markdown" because the skill enforces a hard trigger gate and will not run on implicit requests. Reach for web-to-markdown when you need article or documentation page content as Markdown context for an agent without manual copy-paste or brittle curl fetches.

  • Converts JS-rendered pages using local Puppeteer + Readability
  • Works with Chrome, Chromium, Brave, or Edge via puppeteer-core
  • Outputs clean Markdown with Turndown and optional YAML frontmatter
  • Supports stdout, single file, or directory output modes
  • Hard trigger gate: activates ONLY when user explicitly says "use the skill web-to-markdown"

Web To Markdown by the numbers

  • 604 all-time installs (skills.sh)
  • +16 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #1,580 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/softaworks/agent-toolkit --skill web-to-markdown

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs604
repo stars2.3k
Last updatedMarch 5, 2026
Repositorysoftaworks/agent-toolkit

How do you convert a webpage to agent-ready Markdown?

Convert any webpage URL into clean, readable Markdown that can be fed directly to coding agents.

Who is it for?

Developers who need JS-rendered documentation or articles converted to Markdown locally before feeding content to a coding agent.

Skip if: Developers who have not installed the web2md CLI locally or who did not explicitly request the web-to-markdown skill by name.

When should I use this skill?

The user explicitly writes "use the skill web-to-markdown" or "use a skill web-to-markdown" with a target URL to convert.

What you get

Clean Markdown files extracted from live URLs with main content preserved and navigation clutter removed.

  • clean Markdown from a URL

By the numbers

  • Skill metadata version 0.1.0
  • Uses Puppeteer plus Readability via the web2md CLI

Files

SKILL.mdMarkdownGitHub ↗

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.

Related skills

How it compares

Pick web-to-markdown for local CLI-based URL-to-Markdown extraction with JS rendering rather than manual copy-paste or static HTML parsers.

FAQ

What CLI does web-to-markdown call?

web-to-markdown calls the locally installed web2md CLI, which uses Puppeteer to render pages and Mozilla Readability to extract the main article content into clean Markdown suitable for coding agents.

When is web-to-markdown allowed to run?

web-to-markdown runs only when the user explicitly requests it by name, for example "use the skill web-to-markdown" or "use a skill web-to-markdown". The skill stops if that exact trigger phrase is missing.

AI & Agent Buildingagentsautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.