e2e-macos

Warn

Audited by Gen Agent Trust Hub on Oct 2, 2026

Risk Level: MEDIUMCOMMAND_EXECUTIONDYNAMIC_EXECUTIONCREDENTIALS_UNSAFEPERSISTENCEEXTERNAL_DOWNLOADSINDIRECT_PROMPT_INJECTION
Full Analysis
  • [COMMAND_EXECUTION]: The skill makes extensive use of the subprocess module to execute system commands including git for repository management, ssh for remote machine access, launchctl for service management, and Node.js tools like pnpm for building the project.
  • [DYNAMIC_EXECUTION]: macos-run.py reads the full source code of macos-target.py and executes it on the target machine (locally or via SSH) using the python3 -c command. Additionally, it decodes a Base64-encoded shell script (e2e-install.sh) at runtime and executes it using bash to perform the main installation steps.
  • [CREDENTIALS_UNSAFE]: The skill can read an Anthropic API key from a local file (defaulting to ~/.nanoclaw-e2e/anthropic_key) and transmit it to a target machine. On the target system, the key is written to a temporary file (.git/nanoclaw-e2e/credential) with restricted permissions before being utilized by the installer and subsequently deleted.
  • [PERSISTENCE]: macos-service.py programmatically creates and loads a macOS LaunchAgent plist in the user's ~/Library/LaunchAgents directory. This is used to ensure the NanoClaw service remains active and starts automatically within the user's GUI session.
  • [EXTERNAL_DOWNLOADS]: The skill clones external Git repositories using git clone and git fetch. It resolves repository URLs from the local environment or user-supplied arguments, typically targeting GitHub.
  • [INDIRECT_PROMPT_INJECTION]: The skill presents an attack surface for indirect injection as it ingests and processes untrusted data from external Git repositories (commits, source files) and project metadata (e.g., package.json).
  • Ingestion points: Reads package.json, Git repository contents, and commit SHAs in macos-run.py and macos-target.py.
  • Boundary markers: Uses shlex.quote and shlex.join to escape arguments when constructing shell commands.
  • Capability inventory: Includes the ability to write files, execute subprocesses (git, ssh, launchctl, bash), and create persistent services.
  • Sanitization: Employs JSON-based communication between the operator and target scripts and uses standard shell escaping libraries.
Audit Metadata
Risk Level
MEDIUM
Analyzed
Oct 2, 2026, 09:43 PM