AI Security Review
scanned 3d ago · by lpm-firewall-aiNo confirmed malicious attack surface was found. Risky primitives are core to a self-hosted Claude/Telegram orchestration CLI and are activated by explicit user runtime commands, not package installation.
Decision evidence
public snapshot- dist/cli/switchroom.js and telegram-plugin/shared/bot-runtime.ts contain child_process use for tmux/docker/git/switchroom CLI operations.
- CLI can write agent config, hooks, skills, vault files, and compose files, but under explicit switchroom commands.
- Network code targets package-aligned services: Telegram, OAuth providers, PostHog telemetry, Linear, Google/Drive, Anthropic/OpenAI features.
- package.json has no install/postinstall/preinstall hook; only prepublishOnly for publisher build/lint/test.
- bin/main entrypoint just parses the switchroom CLI; no import-time payload execution observed.
- Scanner decrypt finding maps to documented vault AES-GCM and auto-unlock code, not embedded payload drop/exec.
- telegram-plugin/start.js only imports bundled dist/server.js or source fallback.
- Trojan-source hint is a zero-width defuse inside markdown fence escaping in bot-runtime.ts, not hidden control flow.
- vendor/hindsight-memory/tests/conftest.py is ordinary pytest fixture code, not a binary/payload carrier.
Source & flagged code
14 flagged · loading sourcePackage source references child process execution.
dist/host-control/main.jsView on unpkg · L10373Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.
dist/host-control/main.jsView on unpkg · L2457Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
dist/host-control/main.jsView on unpkg · L2457Package source references a known benign dynamic code generation pattern.
telegram-plugin/dist/server.jsView on unpkg · L12703Package source references dynamic require/import behavior.
telegram-plugin/start.jsView on unpkg · L25Source contains bidi control or invisible Unicode characters associated with Trojan Source attacks.
telegram-plugin/shared/bot-runtime.tsView on unpkg · L175Package source references weak cryptographic algorithms.
telegram-plugin/shared/bot-runtime.tsView on unpkg · L8Source decrypts an embedded payload, writes it to disk, and executes it through a child process.
dist/cli/switchroom.jsView on unpkgPackage contains source files above the static scanner size ceiling.
dist/cli/switchroom.jsView on unpkgPackage contains an oversized executable-looking CLI entrypoint.
dist/cli/switchroom.jsView on unpkgPackage ships non-JavaScript build or shell helper files.
bin/turn-pacing-hook.shView on unpkgPackage hides binary, compressed, or executable-looking payloads in test/fixture/hidden paths.
vendor/hindsight-memory/tests/conftest.pyView on unpkgRSA private key in telegram-plugin/tests/secret-detect.test.ts
telegram-plugin/tests/secret-detect.test.tsView on unpkg · L198