registry  /  @morphy-agent/channel-discord  /  0.6.1

@morphy-agent/channel-discord@0.6.1

Discord channel adapter for Morphy — DMs, file attachments, message editing

AI Security Review

scanned 1d ago · by lpm-firewall-ai

The package is a thin npm wrapper that installs and runs a remote native Discord channel binary. The executable payload is not present in the package source, so its behavior cannot be verified by source inspection.

Static reason
One or more suspicious static signals were detected.
Trigger
npm install runs postinstall; channel-discord CLI runs bin/run.js
Impact
Unreviewed native code executes when the user invokes the CLI; install-time network fetch expands supply-chain risk but no concrete malicious behavior is present in inspected source.
Mechanism
install-time download and checksum verification of platform binary, then CLI exec wrapper
Attack narrative
On install, install.js selects a platform-specific binary name, downloads it from github.com/deadraid/morphy-releases, verifies it against sha256sums.txt from the same release, chmods it, and stores it as bin/channel-discord. The CLI wrapper later executes that binary. The inspected JavaScript does not harvest secrets, mutate agent control surfaces, or persist outside the package directory.
Rationale
This is unresolved supply-chain risk from an install-time remote native binary, but the inspected package source shows package-aligned behavior and no concrete attack behavior. Because the payload is fetched rather than included for inspection, warn rather than mark clean.
Evidence
package.jsoninstall.jsbin/run.jsbin/channel-discordbin/channel-discord.exe
Network endpoints2
github.com/deadraid/morphy-releases/releases/download/v0.6.1/github.com/deadraid/morphy-releases/releases/download/v0.6.1/sha256sums.txt

Decision evidence

public snapshot
AI called this Suspicious at 86.0% confidence as Dangerous Capability with medium false-positive risk.
Evidence for warning
  • package.json runs postinstall: node install.js
  • install.js downloads a platform native executable from GitHub releases at install time
  • install.js verifies sha256sums.txt fetched from the same release origin, not an independently packaged source artifact
  • bin/run.js execs bin/channel-discord with user arguments
Evidence against
  • No source writes to home/project AI-agent control surfaces or MCP/Claude/Codex/Cursor files
  • No credential/env harvesting patterns found in package source
  • No broad filesystem traversal or destructive behavior beyond replacing its own bin/channel-discord
  • Network use is package-aligned to github.com/deadraid/morphy-releases release assets
Behavioral surface
Source
ChildProcessCryptoFilesystemNetwork
Supply chain
UrlStrings
Manifest
NoLicense
scanned 2 file(s), 5.31 KB of source, external domains: github.com

Source & flagged code

2 flagged · loading source
package.jsonView file
scripts.postinstall = node install.js
High
Install Time Lifecycle Scripts

Package defines install-time lifecycle scripts.

package.jsonView on unpkg
scripts.postinstall = node install.js
Medium
Ambiguous Install Lifecycle Script

Install-time lifecycle script is not statically allowlisted and needs review.

package.jsonView on unpkg

Findings

1 High2 Medium4 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumAmbiguous Install Lifecycle Scriptpackage.json
MediumNetwork
LowScripts Present
LowFilesystem
LowUrl Strings
LowNo License