pp-openrouter
Warn
Audited by Gen Agent Trust Hub on Oct 9, 2026
Risk Level: MEDIUMEXTERNAL_DOWNLOADSDATA_EXFILTRATIONDYNAMIC_EXECUTIONINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
- [EXTERNAL_DOWNLOADS]: The skill provides instructions to install the necessary tools using
npx -y @mvanhorn/printing-press-library, which fetches code from the @mvanhorn organization on the npm registry. - [DATA_EXFILTRATION]: The CLI includes a
--deliver webhook:<url>feature that enables sending the output of any command to an arbitrary network endpoint. Additionally, thefeedbackcommand can be configured to automatically POST data to a remote URL specified inOPENROUTER_FEEDBACK_ENDPOINT. - [DYNAMIC_EXECUTION]: The skill implements an 'Automatic learning' loop that journals all invocations and synthesizes 'playbooks' and 'candidates'. These are later replayed as shell commands with slot-based argument substitution, creating a mechanism for dynamic command generation based on past activity.
- [INDIRECT_PROMPT_INJECTION]: The skill demonstrates an attack surface for indirect prompt injection by ingesting untrusted data from the OpenRouter API and user queries, which are then used to drive the command discovery (
whichcommand) and the learning/playbook synthesis system. - Ingestion points: User queries, OpenRouter API responses (model lists, activity logs, usage stats).
- Boundary markers: No specific boundary markers or instruction-guarding delimiters are documented for data interpolated into command discovery.
- Capability inventory: Execution of shell commands via the
Bashtool, network communication (API and webhooks), and file system access (credentials and local journaling). - Sanitization: The documentation mentions a PII stripping process for taught queries, but notes that it relies on pattern matching and may not be comprehensive.
- [COMMAND_EXECUTION]: The skill's primary function is to orchestrate the
openrouter-pp-clibinary, involving numerous subcommands that manipulate the local file system (config, credentials, SQLite database) and interact with external APIs.
Audit Metadata