baoyu-url-to-markdown について
Chrome CDP でウェブページを取得し、HTML を Markdown に変換するスキルです。自動キャプチャと、キャプチャ前にユーザー操作を待つモードを備えています。
主な機能
- 01Chrome CDP によるページ描画
- 02自動と待機のキャプチャモード
- 03YAML メタデータ付き Markdown 出力
- 04出力先とタイムアウトの設定
- 05EXTEND.md による設定
活用シーン
- 01公開ページの Markdown 保存
- 02操作後のログイン必須ページの取得
- 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.tsconstants.tshtml-to-markdown.tsmain.tspaths.ts詳細
URL から Markdown へ
Chrome CDP 経由で任意の URL を取得し、HTML を整った Markdown に変換します。
スクリプトディレクトリ
重要:すべてのスクリプトは、このスキルの scripts/ サブディレクトリにあります。
エージェントの実行手順:
- この SKILL.md ファイルのディレクトリパスを
SKILL_DIRとして特定します - スクリプトのパス =
${SKILL_DIR}/scripts/<script-name>.ts - このドキュメント内のすべての
${SKILL_DIR}を実際のパスに置き換えます
スクリプトの参照先:
| スクリプト | 用途 |
|---|---|
scripts/main.ts | URL 取得用 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) | 準備完了時にユーザーが合図 | ログイン必須、遅延読み込み、ペイウォール |
待機モードのワークフロー:
--waitを指定して実行 → スクリプトに「準備ができたら Enter を押してください」と表示されます- ページの準備ができたかユーザーに確認します
- キャプチャを開始するため、標準入力に改行を送信します
出力形式
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_PATH | Chrome 実行ファイルのカスタムパス |
URL_DATA_DIR | カスタムデータディレクトリ |
URL_CHROME_PROFILE_DIR | カスタム Chrome プロファイルディレクトリ |
トラブルシューティング:Chrome が見つからない場合 → URL_CHROME_PATH を設定します。タイムアウトする場合 → --timeout の値を増やします。複雑なページの場合 → --wait モードを試します。
拡張機能のサポート
EXTEND.md によるカスタム設定に対応しています。パスとサポートされるオプションについては、設定セクションを参照してください。