npx claudepluginhub pforret/cli-skills --plugin markdown-webThis skill uses the workspace's default tool permissions.
Convert web pages, YouTube videos, and RSS/Atom feeds to Markdown using [markitdown](https://github.com/microsoft/markitdown) and Playwright.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Performs token-optimized structural code search using tree-sitter AST parsing to discover symbols, outline files, and unfold code without reading full files.
Convert web pages, YouTube videos, and RSS/Atom feeds to Markdown using markitdown and Playwright.
Plugin root: this SKILL.md is at
skills/markdown-web/SKILL.mdinside the plugin. All paths below are relative to the plugin root (two directories up from this file). Resolve them from this file's location before running.
Run once before first use:
bash <plugin-root>/setup.sh
bash <plugin-root>/url2md.sh <url> [-o output.md] [--js] [--wait MS]
| Option | Description |
|---|---|
<url> | URL to convert (required) |
-o FILE | Output file (default: stdout) |
--js | Use Playwright to render JS-heavy pages (SPAs, dynamic content) |
--wait MS | Milliseconds to wait after page load, only with --js (default: 2000) |
bash <plugin-root>/url2md.sh https://example.com -o example.md
bash <plugin-root>/url2md.sh https://app.example.com -o app.md --js
bash <plugin-root>/url2md.sh https://dashboard.example.com -o dash.md --js --wait 5000
Pass a YouTube URL directly to markitdown (extracts title, metadata, and full transcript):
<plugin-root>/.venv/bin/markitdown "https://www.youtube.com/watch?v=VIDEO_ID" -o transcript.md
Pass a feed URL directly to markitdown (extracts all entries as structured Markdown):
<plugin-root>/.venv/bin/markitdown "https://feeds.bbci.co.uk/news/world/rss.xml" -o bbc-feed.md
No Python/venv needed — just Docker:
bash <plugin-root>/run.sh "https://www.youtube.com/watch?v=VIDEO_ID" -o transcript.md
bash <plugin-root>/run.sh "https://feeds.bbci.co.uk/news/world/rss.xml" -o feed.md
The run.sh wrapper auto-detects: uses Docker if available (builds image on first run), falls back to venv. For web pages with JS rendering:
docker run --rm -v "$(pwd):/work" --entrypoint url2md cliskills/markdown-web https://app.example.com -o app.md --js
Build the image once with: docker build -t cliskills/markdown-web <plugin-root>/
PLUGIN_ROOT by resolving ../.. from this SKILL.md file's pathbash $PLUGIN_ROOT/run.sh <url> [options] — auto-detects Docker or venvbash $PLUGIN_ROOT/setup.sh) and use commands directlybash $PLUGIN_ROOT/url2md.sh <url> -o output.md (uses curl, fast)--js (uses Playwright, slower but accurate)bash $PLUGIN_ROOT/run.sh "<youtube-url>" -o transcript.mdbash $PLUGIN_ROOT/run.sh "<feed-url>" -o feed.md--jsDo NOT use this skill for local files — use markdown-file instead.
Requires Python 3.10+ (venv mode) or Docker.