Chatdoc studio knowledgemate
Reusable skills for document parsing and agent workflows, turning PDFs, DOCX, PPTs, and images into LLM-ready Markdown.
npx -y skills add PaodingAI/skills --skill chatdoc-studio-knowledgemateAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 16 stars16 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Create and operate ChatDOC Studio knowledge bases through pd_router using a Bearer API key and JavaScript helpers. Use when Codex needs to upload one or more PDF/DOC/DOCX files, skip failed files without aborting the whole job, create a knowledge base from successful uploads, or call the ChatDOC Studio knowledge-base skill endpoints through `https://platform.paodingai.com/openapi/chatdoc-studio/...`.
SKILL.md
5.8 KB, as published. Nobody here has run it
ChatDOC Studio KnowledgeMate
Run a JavaScript workflow that uploads local PDF/DOC/DOCX files to ChatDOC Studio through PDRouter, waits for successful parsing, and creates a knowledge base from the successful uploads in one step.
This is suitable for creating knowledge bases from local files or folders, then using the returned library_id for document listing, retrieval, grep, syllabus reading, and block reading.
Installation
npx skills add PaodingAI/skills
For a local Codex installation, place this skill directory under:
$CODEX_HOME/skills/chatdoc-studio-knowledgemate
Usage
Create a knowledge base from files:
node scripts/knowledge-mate.mjs upload-and-create \
--name "Quarterly KB" \
--file ./docs/a.pdf \
--file ./docs/b.docx \
--file ./docs/c.pdf
Create a knowledge base from a folder recursively:
node scripts/knowledge-mate.mjs upload-and-create \
--name "Quarterly KB" \
--dir ./docs
Query an existing knowledge base:
node scripts/knowledge-mate.mjs retrieval --library-id <id> --query <text>
node scripts/knowledge-mate.mjs list-documents --library-id <id>
node scripts/knowledge-mate.mjs stats --library-id <id> --upload-id <id>
node scripts/knowledge-mate.mjs grep --library-id <id> --upload-id <id> --pattern <text>
node scripts/knowledge-mate.mjs read --library-id <id> --upload-id <id> --offset <n>
node scripts/knowledge-mate.mjs read-syllabus --library-id <id> --upload-id <id>
Execution Constraints
- You must invoke
scripts/knowledge-mate.mjsdirectly. Do not reimplement the PDRouter or ChatDOC Studio API flow yourself during normal use. - Route every request through PDRouter at
/openapi/chatdoc-studio/.... - Authenticate only with
Authorization: Bearer <PAODINGAI_API_KEY>. - Do not call
chatdoc_studiodirectly. - Do not add internal
X-PD-*signature headers in this skill. - Do not expose or use separate upload-only or create-only commands; use
upload-and-createfor new knowledge bases. - Only inspect or modify the script implementation when the script itself is unavailable, failing, or needs a fix.
- The behavior contract below explains what the script does, what it outputs, and when to use it. It is not a manual checklist for the model to imitate step by step.
When to Use
- Use this skill when the user wants to create a ChatDOC Studio knowledge base from local PDF, DOC, or DOCX files.
- Use this skill when the user provides a folder and asks to build a knowledge base from the documents inside it.
- Use this skill when the user wants knowledge retrieval, document search, document stats, syllabus inspection, or reading specific document blocks from a ChatDOC Studio knowledge base.
- Use this skill when the workflow must skip failed or unsupported files without aborting the entire upload batch.
- Use this skill only for PDRouter-backed ChatDOC Studio skill APIs, not for direct ChatDOC Studio internal APIs.
Environment Variables
PAODINGAI_API_KEY: Required. The Bearer API key for PDRouter. If it is missing, the script fails immediately and tells the user to create a Bearer API Key in pdrouter, then export it before retrying.
The PDRouter base URL is fixed in the script as https://platform.paodingai.com. The service code is fixed in the script as chatdoc-studio; users do not need to set base-url or service-code environment variables.
The API key can be obtained from the PDRouter platform.
Default Behavior and Optional Settings
- Upload concurrency is fixed at
5. - Supported upload file types are
.pdf,.doc, and.docx. --diris scanned recursively.--fileand--dircan be mixed in one command.- Duplicate file paths are removed before upload.
- Unsupported file types are not uploaded and are reported as skipped failures.
- If more than
300supported files are found, the script stops before uploading and asks the user to clean the folder to at most300PDF/DOC/DOCX files. - If every file fails to upload or parse, knowledge-base creation is skipped and the script exits with a non-zero status.
Script Behavior
- Read
PAODINGAI_API_KEYfrom the environment and use the fixed PDRouter base URLhttps://platform.paodingai.com. - Expand all
--fileinputs and recursively scanned--dirinputs into one de-duplicated file list. - Count supported
.pdf,.doc, and.docxfiles before uploading. If the count is greater than300, fail immediately without uploading anything. - Upload supported files through
POST /openapi/chatdoc-studio/knowledge-base/uploadwith concurrency5. - Skip unsupported files, upload failures, parse failures, and per-file backend errors without aborting the whole batch.
- Call
POST /openapi/chatdoc-studio/knowledge-baseonly with successfulupload_ids. - Print JSON output. Successful API responses are unwrapped to their
datapayload. Failed requests print a clear error reason and include the backend response when available. - After
upload-and-createreturns alibrary_id, use the read/query commands for retrieval, listing documents, stats, grep, syllabus reading, or block reading.
Resources
- Run scripts/knowledge-mate.mjs instead of rewriting the HTTP client by hand.
Gives 0 of the 12 instructions most pdf office docs skills give
Counted across 635 of the 690 authors here whose files we hold, read 2026-08-06
- extract text using pdfplumberin 92 of 635, across 25 files
- create PDFs using reportlabin 83 of 635, across 16 files
- read FORMS.md to fill out PDF formsin 80 of 635, across 13 files
- OCR scanned PDFs using pytesseractin 77 of 635, across 10 files
- merge or split PDFs using qpdfin 70 of 635, across 3 files
- use Excel formulas instead of hardcoded calculated valuesin 68 of 635, across 12 files
- unpack edit xml and repack existing documentsin 63 of 635, across 8 files
- document sources for hardcoded valuesin 61 of 635, across 9 files
- write minimal python code without unnecessary commentsin 59 of 635, across 7 files
- run the recalculation script after adding or modifying formulasin 58 of 635, across 6 files
- fix all identified formula errors and recalculatein 58 of 635, across 6 files
- format years as text stringsin 57 of 635, across 5 files
Said here and by no other author read
- invoke the helper script directly
- route requests through PDRouter
- authenticate only with a Bearer API key
- use upload-and-create for new knowledge bases
- use the returned library id for queries
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.