termdock@1.4.321
A complete web-based terminal application with modern UI
AI Security Review
scanned 9d ago · by lpm-firewall-aiThe source verifies automatic refresh of existing, outdated agent hooks, which creates a guarded agent extension lifecycle risk. The hook behavior is limited to local status reporting, so the evidence supports a warning rather than a block.
Decision evidence
public snapshot- At server startup, Termdock automatically refreshes its agent hooks when they are outdated.
- The refresh is limited to existing Termdock hooks and writes to user-level agent configuration paths, replacing Termdock entries while preserving other hook entries.
- The hook emitter is gated to Termdock or tmux sessions and sends status events to a local terminal.
- Agent hook installation is exposed through a request route; plugin installation requires an explicit CLI option and supplied source.
- The Codex helper searches session directories for a matching file and uses a process check to identify an external writer; the inspected path does not show session-content transfer.
- The automatic refresh is restricted to integrations already marked as Termdock-owned and outdated.
- The inspected hook emitter reports local status and does not establish an outbound data transfer.
Source & flagged code
32 flagged · loading sourcePackage defines install-time lifecycle scripts.
package.jsonView on unpkgInstall-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgPackage contains a possible secret pattern.
dist/client/assets/app-Bj0N393t.jsView on unpkg · L2Package source references child process execution.
dist/server/supervisor.jsView on unpkg · L23Source file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/supervisor.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/utils/bootCheck.jsView on unpkgPackage source references a known benign dynamic code generation pattern.
dist/client/assets/diffWorker-BP4IBsm9.jsView on unpkg · L20Package source references dynamic require/import behavior.
dist/server/utils/version.jsView on unpkg · L19A manifest entrypoint or package-local install chain reaches persistence behavior.
dist/server/routes/terminal.jsView on unpkg · L28Source writes installer persistence such as shell profile or service configuration.
dist/server/routes/terminal.jsView on unpkg · L28A single source file combines environment access, network access, and code or shell execution; review context before blocking.
dist/server/ptyhost/manager.jsView on unpkg · L264Source file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/ptyhost/manager.jsView on unpkgSource gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.
scripts/postinstall.mjsView on unpkg · L10Source file is highly similar to a previously finalized malicious package; route for source-aware review.
scripts/postinstall.mjsView on unpkgManifest-trigger-reachable source writes behavior-bearing configuration into a user or project AI-agent control surface.
dist/server/agent/installers.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/agent/installers.jsView on unpkgSource contains bidi control or invisible Unicode characters associated with Trojan Source attacks.
dist/client/assets/terminal-C7X98Amf.jsView on unpkg · L4Source launches a detached bundled service that exposes a broad-bound HTTP listener.
dist/server/cli.jsView on unpkg · L4Package source invokes a package manager install command at runtime.
scripts/ensure-node-pty.cjsView on unpkg · L51Package ships non-JavaScript build or shell helper files.
dist/client/shell-integration/termdock.bashView on unpkgPackage ships high-entropy non-source blobs.
dist/client/sw-encrypted-background.js.brView on unpkgPackage ships compressed or archive-like blobs.
dist/client/sw-encrypted-background.js.brView on unpkgPackage ships a nested archive or MCP bundle that was inventoried but not recursively analyzed.
scripts/android-bitrate/bitrate.jarView on unpkgA bounded semantic-analysis stage reached its safety limit; remaining detectors completed, but this package requires AI review.
dist/client/assets/App-VAvoVlm2.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/agent/pluginPackages.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/android/adb.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/android/scrcpy.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/utils/npmUpdate.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/client/assets/DiffViewer-DOvGC9bh.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/agent/titleNamerCatalog.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
dist/server/android/recording.jsView on unpkgFindings
Affected versions and remediation
This report applies to termdock@1.4.321.
See all versions of termdock for other recorded verdicts.
- Review the evidence and your use of termdock@1.4.321 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.