tavily-crawl について
tavily-crawlは、ウェブサイト内の複数ページから内容を抽出するコマンドラインスキルです。クロール範囲を指定でき、JSON出力やページごとのローカルMarkdown保存に対応し、認証が必要です。
主な機能
- 01複数ページからのコンテンツ抽出
- 02深さ・幅・ページ数の上限設定
- 03パスとドメインによる絞り込み
- 04ページのMarkdownファイル保存
- 05エージェントのコンテキスト向け関連チャンク出力
活用シーン
- 01ドキュメントのオフライン利用向け保存
- 02指定したサイトセクションのページ収集
- 03LLMへの対象を絞ったサイト情報の提供
- 04関連するパスやドメインにクロール範囲を限定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ tavily-ai/ skills --skill tavily-crawlインストール後、Claude Code で/tavily-crawlを入力して読み込まれたか確認します。
詳細
tavily crawl
ウェブサイトをクロールし、複数のページからコンテンツを抽出します。各ページをローカルの Markdown ファイルとして保存することもできます。
実行前
クロールには認証が必要です。tvly がすでに認証済みの場合は、要求されたコマンドをそのまま実行してください。呼び出しのたびにステータス確認を追加する必要はありません。
tvly が見つからない場合は、tavily-cli のセットアップに従ってください。
インストール済みの CLI で認証エラーが表示された場合は、認証のみを行うには tvly login を使用してください。ガイド付きの確認も有用な場合は tvly init --skip-skills を使用します。ユーザーが対話形式で完了できる場合は、ブラウザベースの OAuth を推奨します。--no-browser はサインインリンクを開かずに表示しますが、それでも localhost コールバックを待ちます。無人のエージェントまたは CI 環境では、認証はユーザーに任せるか、安全に提供された TAVILY_API_KEY を使用してください。ガイド付きセットアップの完了直後に、2 回目のログインを開始しないでください。
使用する場面
- サイト上の多数のページ(例:すべての
/docs/)からコンテンツが必要な場合 - オフラインで使うためにドキュメントをダウンロードしたい場合
- ワークフローのステップ 4:search → extract → map → crawl → research
クイックスタート
# Basic crawl
tvly crawl "https://docs.example.com" --json
# Save each page as a markdown file
tvly crawl "https://docs.example.com" --output-dir ./docs/
# Deeper crawl with limits
tvly crawl "https://docs.example.com" --max-depth 2 --limit 50 --json
# Filter to specific paths
tvly crawl "https://example.com" --select-paths "/api/.*,/guides/.*" --exclude-paths "/blog/.*" --json
# Semantic focus (returns relevant chunks, not full pages)
tvly crawl "https://docs.example.com" --instructions "Find authentication docs" --chunks-per-source 3 --json
オプション
| オプション | 説明 |
|---|---|
--max-depth | 深さのレベル(1~5、デフォルト:1) |
--max-breadth | 1 ページあたりのリンク数(デフォルト:20) |
--limit | ページ数の上限(デフォルト:50) |
--instructions | 意味的な焦点を指定する自然言語の指示 |
--chunks-per-source | ページごとのチャンク数(1~5、--instructions が必要) |
--extract-depth | basic(デフォルト)または advanced |
--format | markdown(デフォルト)または text |
--select-paths | 含めるパスの正規表現パターン(カンマ区切り) |
--exclude-paths | 除外するパスの正規表現パターン(カンマ区切り) |
--select-domains | 含めるドメインの正規表現(カンマ区切り) |
--exclude-domains | 除外するドメインの正規表現(カンマ区切り) |
--allow-external / --no-external | 外部リンクを含める(デフォルト:許可) |
--include-images | 画像を含める |
--timeout | 最大待機時間(10~150 秒) |
-o, --output | JSON 出力をファイルに保存 |
--output-dir | 各ページをディレクトリ内の .md ファイルとして保存 |
--json | 構造化 JSON 出力 |
コンテキスト用のクロールとデータ収集用のクロール
エージェントでの利用(結果を LLM に渡す場合):
常に --instructions と --chunks-per-source を使用してください。ページ全体ではなく、関連するチャンクのみを返すため、コンテキストの爆発を防げます。
tvly crawl "https://docs.example.com" --instructions "API authentication" --chunks-per-source 3 --json
データ収集(ファイルに保存する場合):
--chunks-per-source を指定せずに --output-dir を使用すると、ページ全体を Markdown ファイルとして取得できます。
tvly crawl "https://docs.example.com" --max-depth 2 --output-dir ./docs/
ヒント
- 控えめに始める —
--max-depth 1、--limit 20を指定し、必要に応じて増やします。 - 必要なセクションに絞るには
--select-pathsを使用してください。 - サイト構造を把握してから全体をクロールするには、まず map を使用してください。
- クロールの実行が際限なく続くのを防ぐため、必ず
--limitを設定してください。
関連項目
- tavily-map — クロールするか決める前に URL を見つける
- tavily-extract — 個別のページを抽出する
- tavily-search — URL がない場合にページを見つける