mcpField
B
baoyu-url-to-markdown

baoyu-url-to-markdown

github.com/makerjackieドキュメント144 回インストール36 週間前に更新
リポジトリ

baoyu-url-to-markdown について

Chrome CDP でウェブページを取得し、HTML を Markdown に変換するスキルです。自動キャプチャと、キャプチャ前にユーザー操作を待つモードを備えています。

主な機能

  1. 01Chrome CDP によるページ描画
  2. 02自動と待機のキャプチャモード
  3. 03YAML メタデータ付き Markdown 出力
  4. 04出力先とタイムアウトの設定
  5. 05EXTEND.md による設定

活用シーン

  1. 01公開ページの Markdown 保存
  2. 02操作後のログイン必須ページの取得
  3. 03JavaScript を多用するページの内容抽出

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/makerjackie/jackie-skills-starter --skill baoyu-url-to-markdown

インストール後、Claude Code で/baoyu-url-to-markdownを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

scripts/
cdp.ts
constants.ts
html-to-markdown.ts
main.ts
paths.ts

詳細

URL から Markdown へ

Chrome CDP 経由で任意の URL を取得し、HTML を整った Markdown に変換します。

スクリプトディレクトリ

重要:すべてのスクリプトは、このスキルの scripts/ サブディレクトリにあります。

エージェントの実行手順:

  1. この SKILL.md ファイルのディレクトリパスを SKILL_DIR として特定します
  2. スクリプトのパス = ${SKILL_DIR}/scripts/<script-name>.ts
  3. このドキュメント内のすべての ${SKILL_DIR} を実際のパスに置き換えます

スクリプトの参照先:

スクリプト用途
scripts/main.tsURL 取得用 CLI エントリーポイント

設定(EXTEND.md)

Bash を使用して、優先順位に従って EXTEND.md の有無を確認します。

# 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 がサポートする設定:デフォルトの出力ディレクトリ | デフォルトのキャプチャモード | タイムアウト設定

機能

  • JavaScript を完全にレンダリングする Chrome CDP
  • 2 種類のキャプチャモード:自動、またはユーザーの待機
  • メタデータ付きの整った Markdown 出力
  • 待機モードでログイン必須のページに対応

使い方

# 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

オプション

オプション説明
<url>取得する URL
-o <path>出力ファイルのパス(デフォルト:自動生成)
--waitキャプチャ前にユーザーの合図を待機
--timeout <ms>ページ読み込みのタイムアウト(デフォルト:30000)

キャプチャモード

モード動作使用する場面
自動(デフォルト)ネットワークがアイドル状態になったらキャプチャ公開ページ、静的コンテンツ
待機(--wait)準備完了時にユーザーが合図ログイン必須、遅延読み込み、ペイウォール

待機モードのワークフロー:

  1. --wait を指定して実行 → スクリプトに「準備ができたら Enter を押してください」と表示されます
  2. ページの準備ができたかユーザーに確認します
  3. キャプチャを開始するため、標準入力に改行を送信します

出力形式

url、title、description、author、published、captured_at フィールドを含む YAML フロントマターに続いて、変換された Markdown コンテンツが出力されます。

出力ディレクトリ

url-to-markdown/<domain>/<slug>.md
  • <slug>:ページタイトルまたは URL パスから生成(ケバブケース、2~6 語)
  • ファイル名が重複する場合:タイムスタンプ <slug>-YYYYMMDD-HHMMSS.md を付加します

環境変数

変数説明
URL_CHROME_PATHChrome 実行ファイルのカスタムパス
URL_DATA_DIRカスタムデータディレクトリ
URL_CHROME_PROFILE_DIRカスタム Chrome プロファイルディレクトリ

トラブルシューティング:Chrome が見つからない場合 → URL_CHROME_PATH を設定します。タイムアウトする場合 → --timeout の値を増やします。複雑なページの場合 → --wait モードを試します。

拡張機能のサポート

EXTEND.md によるカスタム設定に対応しています。パスとサポートされるオプションについては、設定セクションを参照してください。

コメント