Community研究與資料分析github.com

tpc-pascal/agent-skills

提取並轉換 PDF/DOCX/XLSX 文件 — 取得文字層 (pdftotext)、掃描圖片 OCR (pdftoppm + tesseract)、轉換 markdown (docling)、XLSX → CSV (libreoffice headless)、合併/分割/旋轉頁面 (qpdf/pdftk)、使用 pdfinfo + pdftotext 驗證輸出。當您有文件並希望取得文字、對掃描件進行 OCR、轉換格式、分割/合併/頁面,或驗證已提取的內容時使用。

agent-skills 是什麼?

此技能是一個輕量級的文件處理工具包,專為在 AI 代理(如 Claude Code、Cursor、Codex)中直接使用而設計。它沒有自己的程式碼,而是透過呼叫本機 CLI 工具(如 pdftotext、Tesseract、qpdf、pdftk、docling 和 LibreOffice)來執行任務。它支援 PDF、DOCX 和 XLSX 檔案,能夠執行文字提取、掃描文件 OCR、格式轉換(PDF → Markdown、XLSX → CSV)以及頁面操作(合併、分割、旋轉)。該技能的所有處理均在本地進行,提供離線能力,但首次使用 Docling 等工具時可能需要下載模型。它包含一個偵測機制,可根據文件類型和需求自動選擇合適的工具,並強制在傳遞結果前進行驗證(例如檢查頁數和文字完整性)。用戶端會儲存一個 recipe 文件(`references/doc-recipes.md`)作為詳細的操作指南。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tpc-pascal/agent-skills/tree/HEAD/skills/research/doc

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

英文版:SKILL.en.md

doc — 文件處理 (PDF/DOCX/XLSX)

輕量級技能,無自有程式碼:根據 references/doc-recipes.md 中的配方路由至本機 CLI 工具 (pdftotext、tesseract、qpdf、pdftk、docling、libreoffice)。

依輸入類型的路由表

使用 file <f> 辨識類型,並嘗試開啟第一頁。

輸入 + 需求主要指令備註
PDF 有文字層,提取文字pdftotext -layout§1
PDF 掃描/圖片,提取文字OCR pdftoppm + tesseract§1
複雜 PDF/DOCX (表格、排版) → markdown/JSON技能 docling 正式版 (使用 --skill docling 獲取),備用 docling convert --to md§1 — PDF 超過 5 頁:--page-range,超時 180
XLSX → CSV/markdownlibreoffice headless§1
折疊/分割/旋轉/提取 PDF 頁面qpdf/pdftk + pdfinfo/pdftoppm§2
雙面/模糊檔案,快速探查技能 inspect (mediaskills)uv run <inspect>/scripts/probe.py
驗證剛提取的輸出pdfinfo + pdftotext§4 — 頁數必須相符,文字不能為空

規則

  1. 注意輸入語言 — 使用與使用者相同語言回答。
  2. 輸出放在來源檔案旁:<原始檔名>.extract.md|.txt|.csv。不要覆蓋原始檔案。
  3. 從掃描圖片提取時標記來源:標記 [ocr] — 不要與觀察到的內容混合。
  4. 交付前驗證:PDF 必須有足夠頁數 (pdfinfo),提取的文字必須與頁數相符 (pdftotext);缺失/空白 → 重新提取。
  5. 本地優先:所有處理指令都在本機執行;離線能力取決於 CLI、OCR/Docling 模型和必要資料是否已安裝或快取。首次使用 Docling 可能需要下載模型;獲取第三方技能也需要網路。如果缺少模型/工具,請明確報告或選擇其他本地配方 — 不要聲稱已離線處理。
  6. 輸出完成後報告已寫入的檔案 (名稱 + 路徑) — 不要保持沉默。

第三方技能 (每次階段獲取)

  • 技能 docling 正式版 (docling-project):CLI + Python SDK、PipelineOptions、OCR 配置、DoclingDocument JSON/markdown — 比 §1 中的 docling convert CLI 更深入。
  • 每次階段獲取:./scripts/fetch-session.sh --skill docling → 暫存,不永久安裝。
  • 無網路 / 無法獲取:使用現有的 CLI 配方。docling convert --to md 僅在必要模型已存在於快取中時才能離線執行;否則,選擇其他方案或明確報告依賴性。

參考資料

  • references/doc-recipes.md — §1 提取 (PDF/OCR/docling/DOCX/XLSX)、§2 PDF 轉換、§3 輸出寫入、§4 為技能 paper 匯出 DOCX。

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

tpc-pascal/agent-skills

Vẽ sơ đồ và biểu đồ đẹp cho báo cáo — flowchart/sequence/class/state/ER/gantt bằng Mermaid (kroki.io, PNG), biểu đồ cột/tròn/line bằng matplotlib (uv), output `<tên>.diagram.png` cạnh nguồn để nhúng vào `.report.docx`. Dùng khi báo cáo cần sơ đồ thay cho ASCII, cần biểu đồ dữ liệu, hoặc user yêu cầu "sơ đồ đẹp".

tpc-pascal/agent-skills

Xử lý media — ffprobe thông số, ffmpeg cắt/ghép/transcode/GIF, trích frame, tách audio, phụ đề (shift/convert/burn), timecode SMPTE, phát hiện shot, OCR frame/ảnh, tải từ URL (yt-dlp), nhạc (thể loại/mood/BPM/lyrics). Dùng khi đưa video/audio/ảnh/URL media và muốn tóm tắt nội dung, trích text, cắt ghép, làm phụ đề, lấy khung hình, hoặc tải xuống.

tpc-pascal/agent-skills

Điều phối — nhận input, xác định loại, chuyển tiếp tới skill anh em trong repo — doc (tài liệu), media (video/audio/ảnh), paper (báo cáo), web (đọc web/mạng xã hội/tìm kiếm) — và mở cổng câu hỏi bắt buộc trước khi viết báo cáo. Dùng khi chưa biết skill nào xử lý input đang có, hoặc khi cần quy trình phối hợp nhiều skill.

tpc-pascal/agent-skills

Viết báo cáo theo một trong hai dạng: chuẩn quốc tế hoặc phổ biến tại Việt Nam. Tổng hợp nguồn có trích dẫn, giữ báo cáo chính gọn và tách dữ liệu hỗ trợ khi cần; xuất `.report.md` hoặc `.report.docx`.

相關技能