Skip to main content
Scans/npm/open-agents-ai

open-agents-ai

npm

Share

Summary

open-agents-ai v0.187.238 was classified as CRITICAL RISK with a risk score of 3679. Sigil detected 229 findings across 58 files, covering phases including install hooks, code patterns, network exfiltration, credential access, obfuscation, provenance. Review the findings below before installing this package.

CRITICAL RISK(3679)

v0.187.238

10 April 2026, 18:09 UTC

by Sigil Bot

Risk Score

3679

Findings

229

Files Scanned

58

Provenance

Findings by Phase

Phase Ordering

Phases are ordered by criticality, with the most dangerous at the top. Click any phase header to expand or collapse its findings. Critical phases are expanded by default.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/index.js:30708

// ../node_modules/weald/dist/src/common.js
function setup(env2) {
  createDebug.debug = createDebug;
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/index.js:250937

            case "setup":
              return await this.setup(workspacePath, args, start2);
            case "run":
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/index.js:263717

    init_list_directory();
    init_aiwg_setup();
    init_aiwg_health();
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/index.js:295255

  });
  try {
    return await doSetup(config, rl);
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

package/dist/index.js:332847

    init_commands();
    init_layout2();
    init_setup();
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:250962

        } catch {
          return { success: false, output: "", error: "uv not found. Install with: curl -LsSf https://astral.sh/uv/install.sh | sh", durationMs: Date.now() - start2 };
        }
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:252466

    } else {
      execSync23("curl -fsSL https://opencode.ai/install | bash", {
        stdio: "pipe",
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:252690

            `Use opencode(action='install') to install it.`,
            `Manual install: curl -fsSL https://opencode.ai/install | bash`
          ].join("\n"),
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:252740

    } else {
      execSync24("curl -fsSL https://app.factory.ai/cli | sh", {
        stdio: "pipe",
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:252999

            `Use factory(action='install') to install it.`,
            `Manual install: curl -fsSL https://app.factory.ai/cli | sh`
          ].join("\n"),
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:293508

      log22("ARM64: Installing Rust toolchain (needed for sphn audio codec)...");
      try {
        await execAsync("curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y", { timeout: 12e4 });
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:293511

      } catch (e2) {
        log22(`Rust install failed: ${e2 instanceof Error ? e2.message : String(e2)}`);
        log22("Install Rust manually: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh");
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:294708

}
function buildElevatedInstall() {
  const installCmd = "curl -fsSL https://ollama.com/install.sh | sh";
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:295102

          `Failed to update Ollama and retry pull: ${updateMsg}
Try manually:
  curl -fsSL https://ollama.com/install.sh | sh
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:306619

        }
      } else {
        renderError("Ollama update failed. Try manually: curl -fsSL https://ollama.com/install.sh | sh");
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:306941

        }
      } else {
        renderInfo("Ollama update failed. Try: curl -fsSL https://ollama.com/install.sh | sh");
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/dist/index.js:322740

  try {
    console.log("[oa-docker] Docker not found. Installing via get.docker.com...");
    execSync54("curl -fsSL https://get.docker.com | sh", {
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-npm-postinstall

CRITICAL

npm lifecycle script — runs automatically on install

package/package.json:74

  "scripts": {
    "preinstall": "node dist/preinstall.cjs",
    "postinstall": "node dist/postinstall-daemon.cjs"
Why was this flagged?

npm lifecycle scripts like postinstall run automatically during package installation with no user interaction required. This is the #1 attack vector for malicious npm packages — attackers embed data theft or backdoor installation in these hooks. Rated CRITICAL because code executes before the developer can review it.

install-npm-postinstall

CRITICAL

npm lifecycle script — runs automatically on install

package/package.json:75

    "preinstall": "node dist/preinstall.cjs",
    "postinstall": "node dist/postinstall-daemon.cjs"
  },
Why was this flagged?

npm lifecycle scripts like postinstall run automatically during package installation with no user interaction required. This is the #1 attack vector for malicious npm packages — attackers embed data theft or backdoor installation in these hooks. Rated CRITICAL because code executes before the developer can review it.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

package/package.json:96

  },
  "readme": "<a name=\"top\"></a>\n<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/robit-man/openagents.nexus/main/openagents-banner.png\" alt=\"Open Agents P2P Network\" width=\"100%\" />\n</p>\n<h1 align=\"center\">Open Agents — P2P Inference</h1>\n\n<p align=\"center\">\n  <strong>AI coding agent powered entirely by open-weight models.</strong><br>\n  No API keys. No cloud. Your code never leaves your machine.\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.np
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

Badge

Sigil scan badge for npm/open-agents-ai

Markdown

[![Sigil Scan](https://sigilsec.ai/badge/npm/open-agents-ai)](https://sigilsec.ai/scans/4059104A-62DF-4D34-9CC2-86ECF7D9A809)

HTML

<a href="https://sigilsec.ai/scans/4059104A-62DF-4D34-9CC2-86ECF7D9A809"><img src="https://sigilsec.ai/badge/npm/open-agents-ai" alt="Sigil Scan"></a>

Run This Scan Yourself

Scan your own packages

Run Sigil locally to audit any package before it touches your codebase.

curl -sSL https://sigilsec.ai/install.sh | sh
Read the docs →Free. Apache 2.0.

Early Access

Get cloud scanning, threat intel, and CI/CD integration.

Join 150+ developers on the waitlist.

Get threat intelligence and product updates

Security research, new threat signatures, and product updates. No spam.

Other npm scans

Believe this result is incorrect? Request a review or see our Terms of Service and Methodology.

Scanned bySigil Bot