mcpField
O
openai-pdf

openai-pdf

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

openai-pdf について

openai-pdf は、PDF の閲覧、作成、確認に使うスキルです。内容だけでなくレイアウトも重要な文書作業を想定し、テキスト抽出とページ画像の確認を組み合わせます。

主な機能

  1. 01PDF の内容とレイアウトの確認
  2. 02reportlab による PDF 作成
  3. 03簡易確認のためのテキスト抽出
  4. 04ページ描画と書式の確認
  5. 05一時ファイルと最終成果物の整理

活用シーン

  1. 01図表や複雑なレイアウトを含む PDF の確認
  2. 02書式の整った文書のプログラム生成
  3. 03更新後の PDF におけるレイアウト問題の確認

インストール

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

$npx skills add https://github.com/trailofbits/skills-curated --skill openai-pdf

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

詳細

PDF スキル

使用する場面

  • レイアウトやビジュアルが重要な PDF コンテンツを読んだり、レビューしたりする場合。
  • 信頼性の高い書式で、プログラムから PDF を作成する場合。
  • 納品前に最終的なレンダリングを検証する場合。

ワークフロー

  1. ビジュアルでのレビューを優先します。PDF ページを PNG に変換して確認します。
    • 利用可能な場合は pdftoppm を使用します。
    • 利用できない場合は Poppler をインストールするか、ユーザーに出力をローカルで確認するよう依頼します。
  2. 新しいドキュメントを作成する場合は、reportlab を使用して PDF を生成します。
  3. テキストの抽出や簡単なチェックには pdfplumber(または pypdf)を使用します。レイアウトの忠実性を確認する目的では使用しないでください。
  4. 意味のある更新を行うたびにページを再レンダリングし、配置、間隔、読みやすさを確認します。

一時ファイルと出力の規則

  • 中間ファイルには tmp/pdfs/ を使用し、作業が終わったら削除します。
  • このリポジトリで作業する場合は、最終成果物を output/pdf/ に保存します。
  • ファイル名はわかりやすく、一貫性のあるものにします。

依存関係(不足している場合はインストール)

依存関係の管理には uv を優先して使用します。

Python パッケージ:

uv pip install reportlab pdfplumber pypdf

uv が利用できない場合:

python3 -m pip install reportlab pdfplumber pypdf

システムツール(レンダリング用):

# macOS (Homebrew)
brew install poppler

# Ubuntu/Debian
sudo apt-get install -y poppler-utils

この環境でインストールできない場合は、不足している依存関係と、ローカルでのインストール方法をユーザーに伝えてください。

環境

必須の環境変数はありません。

レンダリングコマンド

pdftoppm -png $INPUT_PDF $OUTPUT_PREFIX

品質要件

  • 一貫したタイポグラフィ、間隔、余白、セクション階層を備えた、洗練されたビジュアルデザインを維持します。
  • テキストの切れ、要素の重なり、表の崩れ、黒い四角、判読できない文字などのレンダリングの問題を避けます。
  • グラフ、表、画像は、鮮明で、配置が整い、ラベルが明確である必要があります。
  • ASCII ハイフンのみを使用します。U+2011(ノーブレークハイフン)やその他の Unicode ダッシュは避けてください。
  • 引用や参考文献は人が読める形式にします。ツールトークンやプレースホルダー文字列を残さないでください。

最終確認

  • 最新の PNG を確認し、ビジュアルや書式の欠陥が一切ないことを確かめるまで、納品しないでください。
  • ヘッダー/フッター、ページ番号、セクションの切り替わりが洗練されていることを確認します。
  • 中間ファイルは整理しておくか、最終承認後に削除します。

使用しない場面

コメント