PDF tool
pdf は 1 つ以上の PDF ドキュメントを解析し、テキストを返します。
概要:
- Anthropic および Google モデルプロバイダー向けのネイティブプロバイダーモード。
- その他のプロバイダー向けの抽出フォールバックモード(必要に応じてまずテキストを抽出し、その後ページ画像を使用)。
- 単一入力(
pdf)または複数入力(pdfs)をサポートし、1 回の呼び出しで最大 10 個の PDF に対応します。
利用可能条件
この tool は、OpenClaw がエージェント向けの PDF 対応モデル設定を解決できる場合にのみ登録されます:agents.defaults.pdfModelagents.defaults.imageModelへのフォールバック- エージェントの解決済み session/default model へのフォールバック
- ネイティブ PDF プロバイダーが認証ベースの場合、汎用の image フォールバック候補より先にそれらを優先
pdf tool は公開されません。
利用可能性に関する注意:
- フォールバックチェーンは認証を考慮します。設定済みの
provider/modelは、 OpenClaw がそのプロバイダーをエージェント向けに実際に認証できる場合にのみ有効とみなされます。 - 現在のネイティブ PDF プロバイダーは Anthropic と Google です。
- 解決済みの session/default provider に、設定済みの vision/PDF モデルがすでにある場合、PDF tool は他の認証ベースの プロバイダーへフォールバックする前にそれを再利用します。
入力リファレンス
pdf(string): 1 つの PDF パスまたは URLpdfs(string[]): 複数の PDF パスまたは URL、合計最大 10 件prompt(string): 解析用プロンプト。既定はAnalyze this PDF document.pages(string):1-5や1,3,7-9のようなページフィルターmodel(string): 任意のモデル上書き(provider/model)maxBytesMb(number): PDF ごとのサイズ上限(MB)
pdfとpdfsは読み込み前にマージされ、重複排除されます。- PDF 入力が指定されていない場合、この tool はエラーになります。
pagesは 1 始まりのページ番号として解析され、重複排除、ソート、および設定済み最大ページ数までのクランプが行われます。maxBytesMbの既定値はagents.defaults.pdfMaxBytesMbまたは10です。
サポートされる PDF 参照
- ローカルファイルパス(
~展開を含む) file://URLhttp://およびhttps://URL
- その他の URI スキーム(例:
ftp://)はunsupported_pdf_referenceで拒否されます。 - sandbox モードでは、リモートの
http(s)URL は拒否されます。 - workspace-only file policy が有効な場合、許可されたルート外のローカルファイルパスは拒否されます。
実行モード
ネイティブプロバイダーモード
ネイティブモードは provideranthropic と google で使用されます。
この tool は生の PDF バイト列を直接プロバイダー API に送信します。
ネイティブモードの制限:
pagesはサポートされません。設定されている場合、この tool はエラーを返します。- 複数 PDF 入力がサポートされます。各 PDF は、プロンプトの前にネイティブ document block / inline PDF part として送信されます。
抽出フォールバックモード
フォールバックモードは、ネイティブでないプロバイダーで使用されます。 フロー:- 選択したページからテキストを抽出します(
agents.defaults.pdfMaxPagesまで。既定は20)。 - 抽出されたテキスト長が
200文字未満の場合、選択したページを PNG 画像にレンダリングして含めます。 - 抽出された内容とプロンプトを、選択されたモデルに送信します。
- ページ画像抽出では
4,000,000のピクセル予算を使用します。 - 対象モデルが画像入力をサポートしておらず、抽出可能なテキストもない場合、この tool はエラーになります。
- テキスト抽出に成功しても、画像抽出でテキスト専用モデルに vision が必要になる場合、OpenClaw はレンダリング済み画像を破棄し、抽出済みテキストのみで続行します。
- 抽出フォールバックには
pdfjs-dist(画像レンダリングには@napi-rs/canvasも)が必要です。
設定
出力の詳細
この tool はcontent[0].text にテキストを返し、details に構造化メタデータを返します。
一般的な details フィールド:
model: 解決済みモデル参照(provider/model)native: ネイティブプロバイダーモードではtrue、フォールバックではfalseattempts: 成功前に失敗したフォールバック試行
- 単一 PDF 入力:
details.pdf - 複数 PDF 入力:
details.pdfs[]にpdfエントリー - sandbox パス書き換えメタデータ(該当する場合):
rewrittenFrom
エラー動作
- PDF 入力がない:
pdf required: provide a path or URL to a PDF documentを送出 - PDF が多すぎる:
details.error = "too_many_pdfs"の構造化エラーを返す - サポートされない参照スキーム:
details.error = "unsupported_pdf_reference"を返す pagesを指定したネイティブモード: 明確なpages is not supported with native PDF providersエラーを送出
例
単一 PDF:関連
- Tools Overview — 利用可能なすべてのエージェント tools
- Configuration Reference — pdfMaxBytesMb と pdfMaxPages の設定