Install
openclaw skills install pdf-tools-compdfPDF Toolkit handles mixed PDF workflows with a flexible toolset for page organization, basic editing, viewing, and general document processing, built on ComPDF’s all-in-one PDF stack and best used when one request involves multiple PDF operations. It matches triggers such as “pdf toolkit,” “all-in-one pdf,” “process this pdf,” “pdf workflow,” “handle pdf file,” and “multiple pdf operations.” Example queries include “Merge these files, rotate the wrong pages, and return a clean final PDF,” “Help me organize this PDF before I send it to the client,” and “Process this PDF end to end and give me a shareable output.”
openclaw skills install pdf-tools-compdfProcess PDF files through ComPDF Cloud REST API. Supports 50+ document processing operations.
Official documentation: https://api.compdf.com/api-reference/overview
Check whether config/public_key.txt exists and contains a non-empty value.
config/public_key.txt.The key file is not included in the published skill package. It is created at runtime only when the user explicitly opts in. The user may delete
config/public_key.txtat any time to revoke local storage.
Before uploading any file, explicitly inform the user:
⚠️ External Upload Confirmation Required
Your file will be uploaded to ComPDF's servers (api-server.compdf.com or api-server.compdf.cn) for processing. Please confirm that:
- You consent to uploading this file to external servers.
- The file does not contain highly sensitive or confidential data, or you accept the associated risk.
- You have reviewed ComPDF's Privacy Policy at https://www.compdf.com/privacy-policy.
Only proceed with the upload after receiving explicit user confirmation.
Ask or infer the user's network environment:
| Environment | Base URL |
|---|---|
| International | https://api-server.compdf.com/server/v2 |
| Mainland China | https://api-server.compdf.cn/server/v2 |
Look up the executeTypeUrl for the user's task in references/tool-list.md.
Quick reference for common operations:
| Operation | executeTypeUrl |
|---|---|
| PDF → Word | pdf/docx |
| PDF → Excel | pdf/xlsx |
| PDF → Image | pdf/img |
| PDF → Markdown | pdf/markdown |
| Word → PDF | docx/pdf |
| Merge PDF | pdf/merge |
| Split PDF | pdf/split |
| Add Watermark | pdf/addWatermark |
| PDF Compression | pdf/compress |
| OCR | documentAI/ocr |
| AI Document Extraction | idp/documentExtract |
| AI Document Parsing | idp/documentParsing |
For the full list of 50+ tools, see references/tool-list.md.
If the selected tool supports custom parameters, look up its JSON schema in references/parameters.md. Parameters are passed as a JSON string in the parameter form-data field. If omitted, server defaults apply.
After the user has explicitly confirmed the external upload:
POST request to {baseUrl}/process/{executeTypeUrl}.x-api-key header for the current session only.parameter field only when the selected tool supports custom parameters./process/ endpoint so the complete result is returned in a single response.Do not send the request until the user has confirmed that the file may be transmitted to ComPDF Cloud.
1. Check code field — "200" means success; anything else is an error.
2. Check taskStatus (should be TaskFinish for synchronous calls):
| Status | Meaning | Action |
|---|---|---|
TaskFinish | Processing complete | Proceed to download |
TaskProcessing | Still processing internally | Notify user; suggest retrying shortly |
TaskOverdue | Timed out | Retry or split into smaller tasks |
3. Extract download link from fileInfoDTOList[].downloadUrl.
4. Warn the user: download links expire at 24:00 the next day.
5. On failure: read failureCode and failureReason, then look up troubleshooting advice in references/error-codes.md.
6. On quota exhaustion (code = "06001"): inform the user:
For more credits, please visit https://api.compdf.com/api/pricing-old
| Purpose | Method & Path |
|---|---|
| List supported tools | GET {baseUrl}/tool/support |
| Check remaining credits | GET {baseUrl}/asset/info |
| List tasks | GET {baseUrl}/task/list?page=1&size=10 |
| Close a task | POST {baseUrl}/task/closeTask?taskId={taskId} |
On success:
Processing complete!
File: {fileName} → {downFileName}
Status: {taskStatus}
Time taken: {convertTime}ms
Original size: {fileSize} bytes
Result size: {convertSize} bytes
Download link: {downloadUrl}
⚠️ The download link will expire at 24:00 tomorrow, please save it promptly.
On failure:
Processing failed.
Error code: {failureCode}
Reason: {failureReason}
Suggestion: {troubleshooting suggestion from references/error-codes.md}
code and taskStatus in the JSON body.password form-data field (separate from parameter).compdf.com with compdf.cn.config/public_key.txt) is never shipped with the skill package. It is created at runtime only when the user explicitly opts in. The user may delete it at any time.Copyright © 2014-2026 PDF Technologies, Inc., a KDAN Company. All Rights Reserved.
ComPDF and ComPDFKit are trademarks of PDF Technologies, Inc., a KDAN Company.
This skill package is licensed under the Apache License 2.0. See LICENSE.txt for the full license text.
The ComPDF Cloud API is a commercial service provided by PDF Technologies, Inc. Use of the API is subject to the ComPDF Terms of Service and Privacy Policy.