Guide · Agent skill
How to use the Read URL or PDF agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The read skill lets an AI agent fetch a web page or PDF you point it to, extract the readable text, and answer your request from that content. It is for people who want a quick grounded summary, quotes with sources, or a web page saved as Markdown. After this guide you will know how to install the skill, phrase requests that trigger it, and recognise the safety limits that matter.
Quick start
- 1Download the skill ZIP. Get the read skill ZIP from the skill's page on this directory.
- 2Unzip into a skills folder. Extract it into ~/.claude/skills/ for personal use or the project's .claude/skills/ for one project.
- 3Or upload it in the Claude apps. Open Settings → Capabilities → Skills and upload the skill if you use the Claude apps.
- 4Install optional extras. Install Python 3 and the pip packages readability-lxml and html2text for better extraction.
- 5Ask with a link or PDF. Paste a URL or local PDF path and state whether you want a summary, quotes, or a saved Markdown file.
- 6Check the result and any warnings. Confirm the source is named and read the stderr reason if a fetch failed.
What is an agent skill and what does read do?
An agent skill is a folder of instructions and helper scripts that an AI agent loads when a task matches it. The read skill covers one job: given a URL or a PDF, it retrieves the content and extracts the readable text.
Plain requests get a short summary that names the source. Requests to convert, save, or download get clean Markdown. If a page is behind a paywall or returns a login page, the skill is designed to report that rather than guess at the content.
- Summaries of articles or reports from a link
- Quotes and citations pulled from a web page or PDF
- Web pages converted to Markdown and saved for notes
- Routing for Feishu/Lark, WeChat, and GitHub links to specialised methods
Install the read skill
Download the ZIP from the skill's page on this directory and unzip it. Put the folder in your user skills directory, ~/.claude/skills/, or in a project's .claude/skills/ directory if you want it limited to one project.
Alternatively, in the Claude apps, open Settings → Capabilities → Skills and upload the skill there.
- Personal install: unzip into ~/.claude/skills/
- Project install: unzip into the project's .claude/skills/
- Claude apps: Settings → Capabilities → Skills, then upload
Set up the optional extras
The skill needs Python 3 for its helper scripts. For the best text extraction from web pages, install the pip packages readability-lxml and html2text. Without them the skill falls back to a basic HTML stripper that works but produces messier output.
Other extras are optional and only matter for specific sources: a DEEPSEEK_API_KEY for DeepSeek search and fetch, FEISHU_APP_ID and FEISHU_APP_SECRET (or lark-cli) for Feishu documents, and Playwright with BeautifulSoup for WeChat articles.
- Required: Python 3
- Recommended: pip install --user readability-lxml html2text
- Optional: DEEPSEEK_API_KEY for DeepSeek search
- Optional: FEISHU_APP_ID and FEISHU_APP_SECRET, or lark-cli, for Feishu
- Optional: Playwright and BeautifulSoup for WeChat articles
pip install --user readability-lxml html2textHow to trigger the skill with natural requests
You do not need a special command. Paste a link or PDF path and ask in plain language. The skill's trigger phrases include requests such as read this, check this URL, fetch this page, and read this link, and their Chinese equivalents.
Say what form you want. A plain request returns a summary. Words like convert, fetch as Markdown, save, or download return the full clean Markdown and, when you ask to save, write it to a file.
- "Read this and summarise the key claims: https://example.com/report"
- "Quote the paragraph about pricing from this PDF: /path/to/report.pdf"
- "Convert this page to Markdown and save it: https://example.com/article"
- "Search with DeepSeek for this topic, the web search found nothing"
Understand fetch tiers and privacy
By default the skill fetches the page from its source site and extracts text locally, without sending the URL to a third-party service. If that fails and you opt in with the --use-proxy option, it can try third-party readers, defuddle.md and then r.jina.ai. Those services receive the URL and may cache or log it, so reserve this option for JavaScript-heavy pages, paywalls, or pages the local extractor cannot reach.
Every fetch tier writes a stderr line in the form [fetch] tier=<name> status=<ok|fail> reason="...". Read it when a fetch fails, because it names the tier and the reason.
- Default: local fetch, no third-party extraction
- --use-proxy: local first, then defuddle.md, then r.jina.ai
- Never pass authenticated, internal, or sensitive URLs to a third-party reader
bash scripts/fetch.sh "https://example.com/article"Safety notes: scripts and network access
This skill runs scripts and uses the network, so review it before installing, as you would any code you add to an agent. The DeepSeek helper runs only when DEEPSEEK_API_KEY is set and otherwise exits without sending anything. Each successful DeepSeek request is billed, so batch queries deliberately and keep private names, internal URLs, and credentials out of them.
The skill also treats fetched content as untrusted data. Instructions embedded in a page are not to be obeyed.
- Do not use it for authenticated, internal, or sensitive URLs
- Keep private names and credentials out of DeepSeek queries
- Public-URL third-party fallback needs your explicit opt-in
- It does not handle local text files already in the repo
Tips for better results
Give a specific question with the link, such as the claim or section you care about. This keeps the summary focused and avoids a full Markdown dump you did not need.
If the skill reports a paywall, login page, or empty extraction, it will stop and say so. Open the page in a browser or find another source instead of expecting invented content.
- Name the form you want: summary, quotes, or Markdown file
- Ask for a quote with its source when you need citations
- Check the stderr reason when a fetch fails
- For long pages, expect a preview first; the output notes any truncation
What people use it for
- Get a grounded summary of an article or report link before reading it in full
- Pull quotes with their source from a web page or PDF for a research note
- Save a web page as clean Markdown for your notes folder
- Read a PDF and extract a specific section or figure caption
Frequently asked questions
How do I install the read agent skill?
Download the ZIP from this skill's page and unzip it into ~/.claude/skills/ for personal use or into a project's .claude/skills/ folder. In the Claude apps you can instead upload it under Settings → Capabilities → Skills.
What do I need to run the read skill?
You need Python 3 for the helper scripts. Installing readability-lxml and html2text improves extraction, and other extras such as a DeepSeek key or Feishu credentials are only needed for those specific sources.
Is the read skill free to use?
The skill is published under the MIT licence. Note that DeepSeek search and fetch are billed per successful request when you set DEEPSEEK_API_KEY, so that part is not free.
Why does the skill say it cannot read a paywalled page?
When the fetched content is a login, paywall, or consent screen rather than the article, the skill stops and warns you instead of returning that shell. Try a browser or another source for that page.
Is it safe to send private or internal links to this skill?
Not through the proxy option. The skill's rule is not to pass authenticated, internal, or sensitive URLs to --use-proxy or any third-party reader, because those services receive the URL.
What is the difference between the default fetch and --use-proxy?
The default fetch retrieves the page from its source and extracts locally without third-party services. --use-proxy adds defuddle.md and r.jina.ai as fallbacks and should be used only for public pages you agree to send to them.
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 the read skill if you regularly need grounded summaries, quotes, or Markdown copies of public web pages and PDFs, and you are comfortable running its scripts. Pick something else for authenticated or internal documents, paywalled or heavily scripted sites, or local text files already in your repository.
Download the skill