registry  /  substrate-ai  /  0.20.145

substrate-ai@0.20.145

Substrate — multi-agent orchestration daemon for AI coding agents

Static Scan Results

scanned 2h ago · by rust-scanner

Static analysis flagged 15 finding(s) at 72.0% confidence. This version is warn-only unless an AI or security-team review confirms malicious behavior.

Static reason
One or more suspicious static signals were detected.

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoDynamicRequireEnvironmentVarsEvalFilesystemNetworkShell
Supply chain
HighEntropyStringsUrlStrings
ManifestNo manifest risk signals triggered.
scanned 30 file(s), 2.84 MB of source, external domains: ai.google.dev, api.anthropic.com, api.openai.com, claude.ai, docs.dolthub.com, generativelanguage.googleapis.com, git-scm.com, github.com, json-schema.org, json.schemastore.org, raw.githubusercontent.com, registry.npmjs.org

Source & flagged code

8 flagged · loading source
dist/dist-DiNK6QOD.jsView file
5import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs"; L6: import { exec, execFile, execSync, spawn, spawnSync } from "node:child_process"; L7: import path, { dirname as dirname$1, join as join$1, resolve as resolve$1 } from "node:path";
High
Child Process

Package source references child process execution.

dist/dist-DiNK6QOD.jsView on unpkg · L5
5078const cmdArgs = parts[0] === "dolt" ? parts.slice(1) : parts; L5079: return this.execArgs(cmdArgs); L5080: }
High
Shell

Package source references shell execution.

dist/dist-DiNK6QOD.jsView on unpkg · L5078
3package = substrate-ai; repositoryIdentity = substrate; dependency = js-yaml L3: import { EventEmitter } from "node:events"; L4: import yaml, { dump, load } from "js-yaml"; L5: import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
High
Copied Package Dependency Bridge

Package metadata claims a different repository identity while copied source loads a runtime dependency bridge.

dist/dist-DiNK6QOD.jsView on unpkg · L3
dist/run-DHPGxjlk.jsView file
16import { accessSync, existsSync, mkdirSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, unlinkSync, unwatchFile, watchFile, writeFileSync } from "node:fs... L17: import { exec, execFile, execFileSync, execSync, spawn } from "node:child_process"; L18: import * as path$5 from "node:path"; ... L5782: if (existsSync(profilePath)) try { L5783: const raw = readFileSync(profilePath, "utf-8"); L5784: const parsed = yaml.load(raw); ... L36061: apiKey; L36062: baseUrl; L36063: anthropicVersion; ... L37469: "", L37470: "Available tools:", L37471: "- read_file: Read file contents with optional line range (offset/limit)",
High
Remote Agent Bridge

Source exposes local file and command tools to a remote model endpoint.

dist/run-DHPGxjlk.jsView on unpkg · L16
15972try { L15973: execSync(`npm install ${missingPkg}`, { L15974: cwd: resolvedRoot,
High
Runtime Package Install

Package source invokes a package manager install command at runtime.

dist/run-DHPGxjlk.jsView on unpkg · L15972
32022try { L32023: var makeValidate = new Function("self", "RULES", "formats", "root", "refVal", "defaults", "customRules", "equal", "ucs2length", "ValidationError", sourceCode); L32024: validate$1 = makeValidate(self, RULES, formats$2, root, refVal, defaults$2, customRules, equal, ucs2length, ValidationError);
Low
Eval

Package source references a known benign dynamic code generation pattern.

dist/run-DHPGxjlk.jsView on unpkg · L32022
dist/cli/index.jsView file
1501try { L1502: const _require = createRequire(join(fromDir, "synthetic.js")); L1503: const pkgJsonPath = _require.resolve("bmad-method/package.json");
Medium
Dynamic Require

Package source references dynamic require/import behavior.

dist/cli/index.jsView on unpkg · L1501
dist/cli/templates/statusline.shView file
path = dist/cli/templates/statusline.sh kind = build_helper sizeBytes = 565 magicHex = [redacted]
Medium
Ships Build Helper

Package ships non-JavaScript build or shell helper files.

dist/cli/templates/statusline.shView on unpkg

Findings

5 High5 Medium5 Low
HighChild Processdist/dist-DiNK6QOD.js
HighShelldist/dist-DiNK6QOD.js
HighRemote Agent Bridgedist/run-DHPGxjlk.js
HighCopied Package Dependency Bridgedist/dist-DiNK6QOD.js
HighRuntime Package Installdist/run-DHPGxjlk.js
MediumDynamic Requiredist/cli/index.js
MediumNetwork
MediumEnvironment Vars
MediumShips Build Helperdist/cli/templates/statusline.sh
MediumStructural Risk Force Deep Review
LowScripts Present
LowEvaldist/run-DHPGxjlk.js
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings