Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
paddleocr-vl-locally
v1.0.2Complex document parsing with PaddleOCR. Intelligently converts complex PDFs and document images into Markdown and JSON files that preserve the original stru...
⭐ 0· 182·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
Name/description align with the code: the scripts call a document-parsing API (Triton/PaddleOCR-style) and provide helpers to optimize/split files and save JSON results. Required binary (python) and the primary env var (PADDLEOCR_DOC_PARSING_API_URL) are appropriate. The presence of helper scripts (optimize_file.py, split_pdf.py) is consistent with supporting large/complex documents.
Instruction Scope
SKILL.md instructs the agent to ALWAYS use the external PaddleOCR Document Parsing API and NEVER parse locally (which is consistent with the code that sends files/URLs to the API). However, the SKILL.md also mandates displaying COMPLETE extracted content to the user and instructs the agent to read saved JSON files from the system temp directory before responding. These instructions broaden the agent's data exposure (showing full document text/tables/formulas without truncation) and require file I/O. The 'MANDATORY RESTRICTIONS' language is unusually prescriptive for an agent and could lead to indiscriminate disclosure of sensitive content.
Install Mechanism
There is no automated install spec (lower risk), but SKILL.md tells users to pip install dependencies from scripts/requirements*.txt. That is expected for a Python CLI skill. The requirements are minimal (httpx, optional Pillow/pypdfium2) and come from PyPI; no external/untrusted download URLs are used.
Credentials
Registry metadata declares only PADDLEOCR_DOC_PARSING_API_URL as a required env var, but the code actually reads additional environment variables (PADDLEOCR_ACCESS_TOKEN, PADDLEOCR_BASIC_AUTH_USER, PADDLEOCR_BASIC_AUTH_PASSWORD, PADDLEOCR_DOC_PARSING_TIMEOUT). Those optional credentials are plausible for authenticating to a proxied Triton server, but the omission from the declared requires.env is an inconsistency that should be clarified before trusting the skill with secrets.
Persistence & Privilege
The skill writes results to the system temp directory by default and prints the saved absolute path to stderr (and SKILL.md instructs the agent to read the saved JSON before responding). Writing parsed full-document JSON to disk is expected for this tool, but it leaves persistent artifacts containing potentially sensitive data. The skill does not request elevated system privileges and always=false.
What to consider before installing
Things to check before installing or running this skill:
- Confirm environment variables: the registry lists only PADDLEOCR_DOC_PARSING_API_URL, but the code can also read PADDLEOCR_ACCESS_TOKEN, PADDLEOCR_BASIC_AUTH_USER, PADDLEOCR_BASIC_AUTH_PASSWORD, and PADDLEOCR_DOC_PARSING_TIMEOUT. If you will provide tokens/passwords, treat them as sensitive and verify the skill truly needs them.
- Understand data exposure: the SKILL.md mandates showing the COMPLETE extracted content (all text, tables, formulas). If you plan to parse sensitive documents, this behavior can leak secrets or private information. Consider whether you want the agent to automatically reveal full outputs or prefer truncation/summarization/approval steps.
- File persistence: results are saved by default under the system temp directory. Decide if that is acceptable; if not, use --stdout or a secure output path and remove temp files after processing.
- Inspect and test locally: because the skill is script-based (no automatic install), review the included scripts (vl_caller.py, lib.py) and run smoke_test.py (or --skip-api-test) in a controlled environment. The socket/URL you configure for PADDLEOCR_DOC_PARSING_API_URL should be trusted (local or internal endpoint preferred).
- Operational advice: restrict the API URL to an internal host if possible, rotate tokens used by the skill, and avoid enabling this skill for autonomous runs against sensitive data until you are comfortable with its behavior.
If you want higher assurance, ask the author to: (1) list all environment variables in the skill metadata, (2) make the 'display full content' behavior opt-in, and (3) add an option to avoid writing results to disk by default.Like a lobster shell, security has layers — review code before you run it.
latestvk97c5v8dj5te02yxep6y81x9w1832t3e
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
📄 Clawdis
Binspython
EnvPADDLEOCR_DOC_PARSING_API_URL
Primary envPADDLEOCR_DOC_PARSING_API_URL
