read
Web上のあらゆるURLやPDFから、有料記事や複雑なページでも内容を抽出して、整形されたMarkdown形式で取得するSkill。
📜 元の英語説明(参考)
Fetches any URL or PDF as clean Markdown via a proxy cascade. Handles paywalls, JS-heavy pages, GitHub, X/Twitter, and PDFs. Always prefer this over WebFetch for any URL. Not for local text files or source code already in the repo.
🇯🇵 日本人クリエイター向け解説
Web上のあらゆるURLやPDFから、有料記事や複雑なページでも内容を抽出して、整形されたMarkdown形式で取得するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o read.zip https://jpskill.com/download/6885.zip && unzip -o read.zip && rm read.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/6885.zip -OutFile "$d\read.zip"; Expand-Archive "$d\read.zip" -DestinationPath $d -Force; ri "$d\read.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
read.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
readフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-17
- 取得日時
- 2026-05-17
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
[Skill 名] read
読み込み: あらゆるURLまたはPDFをMarkdownとして取得
最初の行は、🥷 インラインで記述し、独立した段落にしないでください。
あらゆるURLまたはローカルPDFをクリーンなMarkdownに変換して保存します。明示的に要求されない限り、コンテンツの分析、要約、議論は行いません。
ルーティング
| 入力 | 方法 |
|---|---|
.pdf URLまたはローカルPDFパス |
PDF抽出 |
GitHub URL (github.com, raw.githubusercontent.com) |
最初に生のコンテンツまたは gh を優先します。フォールバックとしてのみプロキシカスケードを使用します。 |
x.com, twitter.com |
プロキシカスケード (r.jina.ai は画像URLを保持します)。WebFetch は試さないでください。402エラーになります。 |
| その他すべて | プロキシカスケード |
ルーティング後、references/read-methods.md を読み込み、選択した方法のコマンドを実行します。
出力形式
Title: {title}
Author: {author} (if available)
Source: {platform}
URL: {original url}
Content
{full Markdown, truncated at 200 lines if long}
保存
デフォルトでは、YAMLフロントマター付きで ~/Downloads/{title}.md に保存します。
ユーザーが「プレビューのみ」または「保存しない」と言った場合にのみスキップします。保存されたパスをユーザーに伝えます。
~/Downloads/{title}.md がすでに存在する場合、ファイル名に -1、-2 などを追加します。明示的な確認なしに既存のファイルを上書きしないでください。
画像
デフォルトではMarkdownのみを保存します。ユーザーが「画像をダウンロード」または「画像を保存」と明示的に要求した場合にのみ画像をダウンロードします。
要求された場合、Markdownを保存した後:
- 画像URLを抽出します:
grep -oE 'https?://[^ )"]+\.(jpg|jpeg|png|webp|gif)' {md_path} | sort -u ~/Downloads/{title}-images/を作成し、各URLを並行してcurlします (&+wait)。フェッチステップと同じプロキシ環境変数を使用します。- カウントとフォルダパスを報告します。ダウンロードが失敗した場合は、失敗したURLをリストアップします。
厳格なルール
- コンテンツを要約したり分析したりしないでください。 あなたの仕事は変換と保存であり、解釈ではありません。
- 確認なしに上書きしないでください。 ターゲットファイル名がすでに存在する場合は、自動インクリメントされるサフィックスを使用してください。
- 保存レポートの後に停止してください。 ユーザーが要求しない限り、フォローアップアクションを提案しないでください。
落とし穴
| 何が起こったか | ルール |
|---|---|
| ペイウォールのある記事を取得し、ログインページをMarkdownとして返した | 最初の10行を検査して、ペイウォールを示す信号("Subscribe"、"Sign in"、"Continue reading")がないか確認します。見つかった場合は、停止してユーザーに警告します。ログインページは保存しないでください。 |
| r.jina.ai または defuddle.md がJSを多用するサイトに対して空を返した | あきらめる前に、ローカルフォールバック (agent-fetch または defuddle parse) を試してください。 |
| ネットワーク障害 | 利用可能な場合はローカルプロキシ環境変数を前置し、一度再試行します。 |
| 長いコンテンツ | 最初に head -n 200 でプレビューし、保存を報告する際に切り捨てについて言及します。 |
| ローカルフォールバックツールがJSONを返した | Markdownを含むフィールドを抽出します。生のJSONは /read の有効な最終出力ではありません。 |
| すべての方法が失敗した | 停止し、何が試され、何が失敗したかをユーザーに伝えます。ブラウザでURLを開くか、代替手段を提供するよう提案します。サイレントに空または部分的な結果を返さないでください。 |
リスタイリングのためのコンテンツ抽出
「コンテンツを抽出」、「このドキュメントを再フォーマット」、またはユーザーがドキュメントをリスタイリングのために渡した場合にアクティブ化します。
以下を抽出してタグ付けします:
- 見出し: H1/H2/H3の階層
- 本文段落: スタイリングなしのプレーンテキスト
- リスト: 箇条書き vs 番号付き、ネストレベル
- 指標/データ: 数値、日付、定量的な主張
- 画像/図: 説明、キャプション
出力: ダウンストリームツールに供給する準備ができた、クリーンでタグ付けされたコンテンツ。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Read: Fetch Any URL or PDF as Markdown
Prefix your first line with 🥷 inline, not as its own paragraph.
Convert any URL or local PDF to clean Markdown and save it. No analysis, no summary, no discussion of the content unless explicitly asked.
Routing
| Input | Method |
|---|---|
.pdf URL or local PDF path |
PDF extraction |
GitHub URLs (github.com, raw.githubusercontent.com) |
Prefer raw content or gh first. Use the proxy cascade only as fallback. |
x.com, twitter.com |
Proxy cascade (r.jina.ai keeps image URLs). Do not try WebFetch; it 402s. |
| Everything else | Proxy cascade |
After routing, load references/read-methods.md and run the commands for the chosen method.
Output Format
Title: {title}
Author: {author} (if available)
Source: {platform}
URL: {original url}
Content
{full Markdown, truncated at 200 lines if long}
Saving
Save to ~/Downloads/{title}.md with YAML frontmatter by default.
Skip only if user says "just preview" or "don't save". Tell the user the saved path.
If ~/Downloads/{title}.md already exists, append -1, -2, etc., to the filename. Never overwrite an existing file without explicit confirmation.
Images
By default only save Markdown. Download images only when the user explicitly asks: "download images" or "save images".
When asked, after saving the Markdown:
- Extract image URLs:
grep -oE 'https?://[^ )"]+\.(jpg|jpeg|png|webp|gif)' {md_path} | sort -u - Create
~/Downloads/{title}-images/and curl each URL in parallel (&+wait). Use the same proxy env vars as the fetch step. - Report the count and folder path. If any download fails, list the failed URLs.
Hard Rules
- Do not summarize or analyze the content. Your job is conversion and storage, not interpretation.
- Never overwrite without confirmation. If the target filename already exists, use an auto-incremented suffix.
- Stop after the save report. Do not suggest follow-up actions unless the user asks.
Gotchas
| What happened | Rule |
|---|---|
| Fetched a paywalled article and returned a login page as Markdown | Inspect the first 10 lines for paywall signals ("Subscribe", "Sign in", "Continue reading"). If found, stop and warn the user. Do not save the login page. |
| r.jina.ai or defuddle.md returned empty for a JS-heavy site | Try the local fallback (agent-fetch or defuddle parse) before giving up. |
| Network failures | Prepend local proxy env vars if available and retry once. |
| Long content | Preview with head -n 200 first; mention truncation when reporting the save. |
| Local fallback tools returned JSON | Extract the Markdown-bearing field. Raw JSON is not a valid final output for /read. |
| All methods failed | Stop and tell the user what was tried and what failed. Suggest opening the URL in a browser or providing an alternative. Do not silently return empty or partial results. |
Content Extraction for Restyling
Activate when: "extract content", "reformat this document", or user hands over a document to restyle
Extract and tag:
- Headings: H1/H2/H3 hierarchy
- Body paragraphs: Plain text, no styling
- Lists: Bullet vs numbered, nesting level
- Metrics/data: Numbers, dates, quantifiable claims
- Images/diagrams: Descriptions, captions
Output: Clean, tagged content ready to feed into downstream tools.