registry  /  @backtest-kit/cli  /  15.4.0

@backtest-kit/cli@15.4.0

Zero-boilerplate CLI runner for backtest-kit strategies. Run backtests, paper trading, and live bots with candle cache warming, web dashboard, and Telegram notifications — no setup code required.

Static Scan Results

scanned 2h ago · by rust-scanner

Static analysis flagged 13 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
ChildProcessDynamicRequireEnvironmentVarsEvalFilesystemNetworkShell
Supply chain
HighEntropyStringsUrlStrings
ManifestNo manifest risk signals triggered.
scanned 12 file(s), 398 KB of source, external domains: raw.githubusercontent.com

Source & flagged code

6 flagged · loading source
build/index.cjsView file
13var util = require('util'); L14: var child_process = require('child_process'); L15: var BacktestKitUi = require('@backtest-kit/ui');
High
Child Process

Package source references child process execution.

build/index.cjsView on unpkg · L13
13Cross-file remote execution chain: build/index.cjs spawns build/index.mjs; helper contains network access plus dynamic code execution. L13: var util = require('util'); L14: var child_process = require('child_process'); L15: var BacktestKitUi = require('@backtest-kit/ui'); ... L154: message: functoolsKit.getErrorMessage(error), L155: data: functoolsKit.errorData(error), L156: }, null, 2); ... L407: const __filename$3 = url.fileURLToPath((typeof document === 'undefined' ? require('u' + 'rl').pathToFileURL(__filename).href : (_documentCurrentScript && _documentCurrentScript.tag... L408: const __dirname$3 = path.dirname(__filename$3); L409: let _is_launched = false; ... L940: let allData = ""; L941: ps.stdout.on("data", (data) => { L942: allData += data.toString("ascii");
High
Cross File Remote Execution Context

Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.

build/index.cjsView on unpkg · L13
4528const npm = process.platform === "win32" ? "npm.cmd" : "npm"; L4529: const child = child_process.spawn(npm, ["install"], { cwd, stdio: "inherit", shell: true }); L4530: child.on("close", (code) => { L4531: if (code !== 0) { L4532: reject(new Error(`npm install exited with code ${code}`)); L4533: return;
High
Runtime Package Install

Package source invokes a package manager install command at runtime.

build/index.cjsView on unpkg · L4528
2970try { L2971: eval(self.params.babel.transpile(code, path)); L2972: }
Low
Eval

Package source references a known benign dynamic code generation pattern.

build/index.cjsView on unpkg · L2970
build/index.mjsView file
4496const npm = process.platform === "win32" ? "npm.cmd" : "npm"; L4497: const child = spawn(npm, ["install"], { cwd, stdio: "inherit", shell: true }); L4498: child.on("close", (code) => {
High
Shell

Package source references shell execution.

build/index.mjsView on unpkg · L4496
template/project/config/symbol.config.tsView file
1const { str } = require("functools-kit"); L2:
Medium
Dynamic Require

Package source references dynamic require/import behavior.

template/project/config/symbol.config.tsView on unpkg · L1

Findings

4 High4 Medium5 Low
HighChild Processbuild/index.cjs
HighShellbuild/index.mjs
HighCross File Remote Execution Contextbuild/index.cjs
HighRuntime Package Installbuild/index.cjs
MediumDynamic Requiretemplate/project/config/symbol.config.ts
MediumNetwork
MediumEnvironment Vars
MediumStructural Risk Force Deep Review
LowScripts Present
LowEvalbuild/index.cjs
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings