opencli
Pass
Audited by Gen Agent Trust Hub on Oct 12, 2026
Risk Level: SAFECOMMAND_EXECUTIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTIONDATA_EXFILTRATION
Full Analysis
- [COMMAND_EXECUTION]: The skill invokes the
openclicommand-line utility via Node.js subprocesses to manage browser sessions and execute automation tasks as described inscripts/opencli-core.mjsandscripts/pressure.mjs. This execution is part of the skill's core purpose.\n- [DYNAMIC_EXECUTION]: Core functionality relies on executing JavaScriptevalstrings within the browser context to interact with and extract data from web pages, as detailed inreferences/browser-driving.mdand implemented inscripts/opencli-core.mjs. While normally a concern, this behavior is essential to the skill's primary purpose.\n- [EXTERNAL_DOWNLOADS]: Installation instructions inSKILL.mdandreferences/our-fork.mdguide users to download and install the OpenCLI tool from theyan-labsGitHub organization's releases. This is documented as a legitimate dependency on the tool provided by the author.\n- [INDIRECT_PROMPT_INJECTION]: The skill is designed to navigate and extract data from untrusted web pages, creating a significant surface area for indirect prompt injection.\n - Ingestion points: Data enters the agent context through browser evaluation in
scripts/opencli-core.mjsand DOM extraction inscripts/x-research.mjs.\n - Boundary markers: The skill provides extensive instructional 'laws' and 'disciplines' in
SKILL.mdandreferences/session-laws.mdto guide agent behavior and avoid accidental obedience to page content.\n - Capability inventory: The skill can control a full browser instance (clicks, typing, file uploads) and execute the
opencliCLI tool.\n - Sanitization: Log management in
scripts/opencli-core.mjsincludes scrubbing authentication tokens from URLs, andscripts/receiver.mjsuses regex validation for file path parameters to prevent directory traversal.\n- [DATA_EXFILTRATION]: The tool has the capability to extract any data visible in the user's browser. While it primarily stores data locally viascripts/receiver.mjs, some scripts likescripts/x-research.mjsinteract with external APIs (e.g.,api.fxtwitter.com) as part of their research functions.
Audit Metadata