Skip to content

Guide · Agent skill

How to use the URL to Markdown agent skill (baoyu-url-to-markdown)

Updated · written with AI from the project's own documentation and checked against our catalogue data

The URL to Markdown skill lets an AI agent open a web address in a Chrome browser it controls, pull out the readable content and save it as a markdown file. It is aimed at people who want to archive articles or threads as notes, or who need web content as context for later analysis. After this guide you will know what the skill does, how to install it, how to ask for a capture in plain language, and what it needs to run safely.

URL to MarkdownJimLiu/baoyu-skills · MIT

Quick start

  1. 1Download and unzip the skill. Download the ZIP from this page and unzip it. Keep the folder name baoyu-url-to-markdown.
  2. 2Place it in your skills folder. Move the folder into ~/.claude/skills/ for all projects, or into .claude/skills/ in one project. Alternatively, upload it under Settings → Capabilities → Skills in the Claude apps.
  3. 3Install Bun and Chrome. Make sure the bun command and Google Chrome or Chromium are available on your machine.
  4. 4Ask for a capture. Give the agent a URL and say you want it saved as markdown.
  5. 5Answer the setup questions. On first run, choose the media handling, output directory and where to save preferences. The agent then writes EXTEND.md.
  6. 6Check the result. Open the saved markdown and confirm the title and body match the page you wanted.

What is an agent skill, and what does this one do?

An agent skill is a folder of instructions and scripts that an AI agent can load when a task matches the skill's description. This one is named baoyu-url-to-markdown and is defined by a SKILL.md file.

Once installed, the agent runs the baoyu-fetch command-line tool. It uses Chrome through the Chrome DevTools Protocol and applies site-specific adapters where they exist. Built-in adapters cover X/Twitter, YouTube transcripts and Hacker News threads, and a generic adapter (based on Defuddle) handles other pages.

  • X/Twitter: tweets, threads, X Articles, media and login detection
  • YouTube: transcripts or captions when available, chapter headings, cover image and metadata
  • Hacker News: threaded comments, story metadata and nested replies
  • Generic pages: Defuddle extraction with a Readability fallback

Install the skill from the ZIP

Download the ZIP for this skill from this page and unzip it. Place the resulting folder in one of two locations:

For all your projects, put it in ~/.claude/skills/. For one project only, put it in that project's .claude/skills/ folder.

If you use the Claude apps instead, open Settings, go to Capabilities, then Skills, and upload the skill there.

  • Personal install: ~/.claude/skills/
  • Project install: .claude/skills/ inside your project
  • Claude apps: Settings → Capabilities → Skills, then upload

Install the prerequisites: Bun and Chrome

The skill will not run without the Bun runtime and Google Chrome or Chromium installed locally. The CLI source is included in the skill, but it needs third-party npm dependencies listed in scripts/package.json. If the scripts/node_modules folder is missing, the agent runs bun install in the scripts folder for you.

Login-protected sites also need a logged-in Chrome profile if you want the capture to see your session.

  • Bun runtime (bun)
  • Google Chrome or Chromium on this machine
  • Dependencies from scripts/package.json (installed automatically if missing)
  • Optional: a logged-in Chrome profile for sites that require login

Ask the agent to save a page in plain language

You do not need to type commands. Describe what you want and include the address. The skill is meant to trigger when you want to save a webpage as markdown.

On first use the agent asks three setup questions and saves them to an EXTEND.md preferences file: how to handle images and videos, the default output directory, and where to store the preferences. Until setup finishes, it will not convert pages.

  • "Save this article as markdown: https://example.com/post"
  • "Archive this Hacker News thread to a markdown file"
  • "Get the transcript of this YouTube video as markdown"
  • "Fetch this page and save it as markdown; I'll log in if it asks"

Handle login and CAPTCHA pages

Some pages need you to log in or solve a CAPTCHA. The skill has interaction wait modes for this. In auto mode (interaction) it detects the wait state and continues once the page is ready. In force mode you control the timing and press Enter to continue.

The default timeout for interaction is 10 minutes, and you can change it. Use a visible browser for these runs, since you need to see the page to act on it.

  • --wait-for interaction: auto-detect and continue
  • --wait-for force: press Enter to continue manually
  • --interaction-timeout <ms>: change the 600000 ms (10 min) default
  • --interaction-poll-interval <ms>: change the 1500 ms check interval
${READER} <url> --wait-for interaction --output article.md

Check the output before you trust it

The skill treats a default headless capture as provisional. Some sites render differently without a visible window and can return low-quality content without the CLI reporting an error. The agent is expected to check the saved markdown: the title should match the target page, the body should contain the article rather than navigation or a login wall, and very short output for a long page is a warning sign.

If a run looks wrong, the agent follows the recovery steps in the quality gate reference. Running with --format json gives structured signals to help.

  • Title matches the target page, not a site shell
  • Body contains the real content, not just navigation or a footer
  • Watch for messages such as "Application error" or "This page could not be found"
  • A zero exit code alone does not mean success

Save media with the page

By default the agent asks whether to download images and videos. With media download on, images go to a local imgs/ folder and videos to videos/, and the markdown links are rewritten to point at them. Media download requires an output file. Each URL gets its own directory so its media stays together.

  • Ask each time (default)
  • Always download to imgs/ and videos/
  • Never download and keep remote URLs
${READER} <url> --output article.md --download-media

What people use it for

  • Archiving articles and blog posts as markdown notes
  • Saving a Hacker News thread with its nested comments
  • Pulling a YouTube transcript into a note when captions exist
  • Collecting X/Twitter posts or threads for later reading
  • Capturing pages behind a login you complete in a visible browser

Frequently asked questions

How do I install the URL to Markdown skill?

Download the ZIP from this page and unzip it. Put the folder in ~/.claude/skills/ for all projects or in .claude/skills/ for one project, or upload it in the Claude apps under Settings → Capabilities → Skills.

What do I need to run baoyu-url-to-markdown?

You need the Bun runtime (bun) and Google Chrome or Chromium installed locally. The npm dependencies in scripts/package.json are installed for you if they are missing. A logged-in Chrome profile is optional and only needed for sites that require login.

Is this skill free and what is its licence?

The skill is listed under the MIT licence. Check the licence file in the source repository for the full terms.

Can it get content from paywalled pages?

The skill is not meant for bypassing paywalls or access controls. It runs real browser sessions, so it can only capture what your logged-in browser can already see.

Why is my saved markdown empty or showing a login page?

Headless capture can return layout shells or login walls without failing. Run the page again with --wait-for interaction so you can log in or solve a CAPTCHA, or use --wait-for force to control timing yourself.

Does the skill send my pages to third parties?

The skill uses the network to fetch pages and can store login state in a Chrome profile folder on your disk. If you need to keep a page private, do not capture it, or review the profile and output locations before sharing files.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use this skill if you regularly save articles, Hacker News threads, X posts or YouTube transcripts as markdown, and you are comfortable installing Bun and Chrome. Pick a different tool if you need bulk scraping, paywall access, or a setup with no local browser and runtime, since this skill runs real browser sessions and needs those installed.

Download the skill