LLM Skills
~/catalog/testing & quality//SKILL
Testing & qualityGitHub source

Baoyu url to markdown

/SKILL

Fetch any URL and convert to markdown using Chrome CDP. Supports two modes - auto-capture on page load, or wait for user signal (for pages requiring login).

anbeimeanbeime
4.3k
June 21, 2026
// skill content

--- name: baoyu-url-to-markdown description: Fetch any URL and convert to markdown using Chrome CDP. Supports two modes - auto-capture on page load, or wait for user signal (for pages requiring login). Use when user wants to save a webpage as markdown. --- # URL to Markdown Fetches any URL via Chrome CDP and converts HTML to clean markdown. ## Script Directory Important: All scripts are located in the scripts/ subdirectory of this skills. Agent Execution Instructions: 1. Determine this skills.md file's directory path as SKILL_DIR 2. Script path = ${SKILL_DIR}/scripts/<script-name>.ts 3. Replace all ${SKILL_DIR} in this document with the actual path Script Reference: | Script | Purpose | |--------|---------| | scripts/main.ts | CLI entry point for URL fetching | ## Preferences (EXTEND.md) Use Bash to check EXTEND.md existence (priority order): ``bash # Check project-level first test -f .baoyu-skills/baoyu-url-to-markdown/EXTEND.md && echo "project" # Then user-level (cross-platform: $HOME works on macOS/Linux/WSL) test -f "$HOME/.baoyu-skills/baoyu-url-to-markdown/EXTEND.md" && echo "user" ` ┌────────────────────────────────────────────────────────┬───────────────────┐ │ Path │ Location │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ .baoyu-skills/baoyu-url-to-markdown/EXTEND.md │ Project directory │ ├────────────────────────────────────────────────────────┼───────────────────┤ │ $HOME/.baoyu-skills/baoyu-url-to-markdown/EXTEND.md │ User home │ └────────────────────────────────────────────────────────┴───────────────────┘ ┌───────────┬───────────────────────────────────────────────────────────────────────────┐ │ Result │ Action │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ Found │ Read, parse, apply settings │ ├───────────┼───────────────────────────────────────────────────────────────────────────┤ │ Not found │ Use defaults │ └───────────┴───────────────────────────────────────────────────────────────────────────┘ **EXTEND.md Supports**: Default output directory | Default capture mode | Timeout settings ## Features - Chrome CDP for full JavaScript rendering - Two capture modes: auto or wait-for-user - Clean markdown output with metadata - Handles login-required pages via wait mode ## Usage `bash # Auto mode (default) - capture when page loads npx -y bun ${SKILL_DIR}/scripts/main.ts <url> # Wait mode - wait for user signal before capture npx -y bun ${SKILL_DIR}/scripts/main.ts <url> --wait # Save to specific file npx -y bun ${SKILL_DIR}/scripts/main.ts <url> -o output.md ` ## Options | Option | Description | |--------|-------------| | <url> | URL to fetch | | -o <path> | Output file path (default: auto-generated) | | --wait | Wait for user signal before capturing | | --timeout <ms> | Page load timeout (default: 30000) | ## Capture Modes | Mode | Behavior | Use When | |------|----------|----------| | Auto (default) | Capture on network idle | Public pages, static content | | Wait (--wait) | User signals when ready | Login-required, lazy loading, paywalls | **Wait mode workflow**: 1. Run with --wait → script outputs "Press Enter when ready" 2. Ask user to confirm page is ready 3. Send newline to stdin to trigger capture ## Output Format YAML front matter with url, title, description, author, published, captured_at fields, followed by converted markdown content. ## Output Directory ` url-to-markdown/<domain>/<slug>.md ` - <slug>: From page title or URL path (kebab-case, 2-6 words) - Conflict resolution: Append timestamp <slug>-YYYYMMDD-HHMMSS.md ## Environment Variables | Variable | Description | |----------|-------------| | URLCHROMEPATH | Custom Chrome executable path | | URLDATADIR | Custom data directory | | URLCHROMEPROFILE_DIR | Custom Chrome profile directory | **Troubleshooting**: Chrome not found → set URLCHROMEPATH. Timeout → increase --timeout. Complex pages → try --wait` mode. ## Extension Support Custom configurations via EXTEND.md. See Preferences section for paths and supported options.

// original public source
anbeime/skill
/skills/content-creation-publisher/baoyu-url-to-markdown/SKILL.md
License: License not specified. Review the repository before reusing it.
Independent project, not affiliated with Anthropic. This skill remains the property of its original author.
// install this skill
Paste this command in your terminal at the root of your project:
mkdir -p .claude/commands && curl -o ".claude/commands/SKILL.md" "https://raw.githubusercontent.com/anbeime/skill/main/skills/content-creation-publisher/baoyu-url-to-markdown/SKILL.md"
Then in Claude Code, type /SKILL to activate it.
open_in_newOpen original source
// save
Save available after sign in.
loginSign in to save
// information
Creatoranbeime
Stars 4.3k
UpdatedJune 21, 2026
Format.md
AccessFree
// similar

Skills Testing & quality

View allarrow_forward