Merge PDF

PassAudited by VirusTotal on May 12, 2026.

Overview

Type: OpenClaw Skill Name: merge-pdf Version: 1.0.0 The skill is designed to merge PDF files using a third-party service, Cross-Service-Solutions (XSS). It explicitly declares `http` and `files` as allowed tools, which are necessary for its function (uploading PDFs and making API calls). The Python script reads user-provided PDF files and sends them to the specified API endpoint, handling API keys securely via environment variables or command-line arguments without logging them. The `SKILL.md` includes a security-conscious instruction not to log the API key, and there are no prompt injection attempts or other indicators of malicious intent, such as data exfiltration, unauthorized execution, or persistence mechanisms. The domain `xss-cross-service-solutions.com` is consistently used and presented as the legitimate service provider's domain, despite the 'XSS' substring.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

The contents of the selected PDFs will be shared with the third-party service, and the merged file is retrieved through a provider-supplied URL.

Why it was flagged

The core workflow sends the user's PDF files to an external provider for processing, which is disclosed and purpose-aligned.

Skill content
uploading them to the Cross-Service-Solutions merge API
Recommendation

Use this only for documents you are comfortable sending to Cross-Service-Solutions, review the provider's privacy/retention practices, and keep the returned download URL private.

What this means

The agent or script must handle an API key that could allow use of the user's Cross-Service-Solutions account if exposed.

Why it was flagged

The skill needs a service credential to call the provider API. This is expected for the integration and the artifacts instruct not to echo or log the key.

Skill content
The API requires an API key used as a Bearer token:
- `Authorization: Bearer <API_KEY>`
Recommendation

Use a revocable or least-privileged API key if available, avoid pasting it into shared logs or transcripts, and rotate it if you suspect exposure.

What this means

If the base URL override is set to an unintended endpoint, selected PDFs and the Bearer token could be sent somewhere other than the named provider.

Why it was flagged

The script allows the API destination to be overridden by an argument or environment variable, which could change where PDFs and the Authorization header are sent if intentionally or accidentally configured.

Skill content
ap.add_argument("--base-url", default=os.getenv("SOLUTIONS_BASE_URL", DEFAULT_BASE_URL), help="Base URL override")
Recommendation

Leave `SOLUTIONS_BASE_URL` and `--base-url` unset unless you deliberately trust the alternate endpoint; maintainers should consider documenting or domain-restricting this override.