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.
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.
The core workflow sends the user's PDF files to an external provider for processing, which is disclosed and purpose-aligned.
uploading them to the Cross-Service-Solutions merge API
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.
The agent or script must handle an API key that could allow use of the user's Cross-Service-Solutions account if exposed.
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.
The API requires an API key used as a Bearer token: - `Authorization: Bearer <API_KEY>`
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.
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.
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.
ap.add_argument("--base-url", default=os.getenv("SOLUTIONS_BASE_URL", DEFAULT_BASE_URL), help="Base URL override")Leave `SOLUTIONS_BASE_URL` and `--base-url` unset unless you deliberately trust the alternate endpoint; maintainers should consider documenting or domain-restricting this override.
