pdf は 1 つ以上の PDF ドキュメントを解析し、テキストを返します。Anthropic と Google モデルではネイティブのドキュメント入力を使用し、それ以外のすべてのプロバイダーではテキスト/画像抽出にフォールバックします。
利用可否
このツールは、OpenClaw がエージェント用に PDF 対応モデルを解決できる場合にのみ登録されます。解決順序:agents.defaults.pdfModel(明示的なプライマリ/フォールバック)agents.defaults.imageModel(明示的なプライマリ/フォールバック)- そのプロバイダーがネイティブ PDF 入力 (Anthropic、Google) をサポートしているか、すでに構成済みのビジョンモデルがある場合、エージェントの解決済みセッション/デフォルトモデル
- 利用可能な認証を持つ、自動検出された画像/ビジョン対応プロバイダー。ネイティブ PDF プロバイダーを優先
provider/model は、OpenClaw がそのエージェントに対してそのプロバイダーを認証できる場合にのみ有効です。利用可能なモデルを解決できない場合、pdf ツールは公開されません。
入力リファレンス
1 つの PDF パスまたは URL。
複数の PDF パスまたは URL。合計 10 件まで。
解析プロンプト。
1-5 または 1,3,7-9 のようなページフィルター。ネイティブプロバイダーモードではサポートされません。暗号化 PDF のパスワード。リクエスト内のすべての PDF に適用されます。抽出フォールバックモードでのみ使用されます。
provider/model 形式の任意のモデルオーバーライド。PDF ごとのサイズ上限 (MB)。デフォルトは
agents.defaults.pdfMaxBytesMb、未設定の場合は 10 です。pdfとpdfsは読み込み前にマージされ、重複排除されます。少なくとも 1 つは必須です。pagesは 1 始まりのページ番号として解析され、重複排除、ソートされたうえでagents.defaults.pdfMaxPages(デフォルト20) に丸められます。範囲内のページに一致しない範囲は、モデル呼び出し前にエラーになります。
サポートされる PDF 参照
- ローカルファイルパス (
~展開を含む) file://URLhttp://とhttps://URLmedia://inbound/<id>などの OpenClaw 管理の受信参照
ftp://) は details.error = "unsupported_pdf_reference" を返します。リモートの http(s) URL は、ツールがサンドボックス内で実行される場合に拒否されます。ワークスペース限定ファイルポリシーが有効な場合、許可されたルート外のローカルパスは拒否されます。管理対象の受信参照と、OpenClaw の受信メディアストア配下で再生されたパスは引き続き許可されます。
実行モード
ネイティブプロバイダーモード
プロバイダーanthropic と google に使用されます (現在ネイティブ PDF ドキュメントサポートを宣言している唯一のプロバイダー)。生の PDF バイトは、ファイルごとにネイティブドキュメント/インライン PDF パートとしてプロバイダー API に直接送られます。
制限:
pagesはサポートされません。設定されている場合、ツールはpages is not supported with native PDF providersをスローします。passwordはサポートされません。設定されている場合、ツールはpassword is not supported with native PDF providersをスローします。暗号化 PDF には非ネイティブモデルを使用してください。
抽出フォールバックモード
それ以外のすべてのプロバイダーに使用されます。- バンドルされた
document-extractPlugin を介して、選択されたページ (agents.defaults.pdfMaxPagesまで、デフォルト20) からテキストを抽出します。この Plugin はテキストと画像の抽出にclawpdfパッケージ (PDFium WebAssembly) を使用します。 - 抽出されたテキストが
200文字未満の場合、同じページを PNG 画像にレンダリングします。レンダリング予算は合計4,000,000ピクセルで、画像が必要なすべてのページ間で共有されます (ページごとではなく、残りのページごとに比例配分)。そのため、すでに十分なテキストがあるテキストページはレンダリングを完全にスキップします。 - 抽出されたテキスト (およびレンダリングされた画像があればそれら) とプロンプトを、選択されたモデルに送信します。
- 暗号化 PDF はトップレベルの
passwordパラメーターで開きます。 - モデルに画像入力がなく、抽出可能なテキストもない場合、ツールはエラーになります。
- 画像レンダリングに失敗した場合、OpenClaw は画像を破棄し、抽出されたテキストで続行します。
- 対象モデルがテキスト専用で、抽出によって画像が生成された場合、OpenClaw は画像を破棄し、テキストのみを送信します。
設定
| キー | デフォルト | 意味 |
|---|---|---|
agents.defaults.pdfModel | 未設定 | 明示的なプライマリ/フォールバック PDF モデル。imageModel、続いてセッションモデルにフォールバックします。 |
agents.defaults.pdfMaxBytesMb | 10 | PDF ごとのサイズ上限 (MB)。 |
agents.defaults.pdfMaxPages | 20 | PDF ごとに処理される最大ページ数。 |
出力の詳細
ツールはcontent[0].text にテキストを返し、details に構造化メタデータを返します。
一般的な details フィールド:
model: 解決済みモデル参照 (provider/model)native: ネイティブプロバイダーモードの場合はtrue、フォールバックの場合はfalseattempts: 成功前に失敗したフォールバック試行
- 単一 PDF 入力:
details.pdf - 複数 PDF 入力:
pdfエントリを持つdetails.pdfs[] - サンドボックスパス書き換えメタデータ (該当する場合):
rewrittenFrom
エラー動作
| 条件 | 結果 |
|---|---|
| PDF 入力なし | pdf required: provide a path or URL to a PDF document をスロー |
| 10 件を超える PDF | details.error = "too_many_pdfs" |
| サポートされない参照スキーム | details.error = "unsupported_pdf_reference" |
ネイティブプロバイダーでの pages | pages is not supported with native PDF providers をスロー |
ネイティブプロバイダーでの password | password is not supported with native PDF providers をスロー |