84const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
CriticalRemote Asset Decode Execute
Source fetches a remote non-code asset, decodes its contents, and dynamically executes the decoded payload.
dist/atlisp-mcp.jsView on unpkg · L84 84Trigger-reachable chain: manifest.main -> dist/atlisp-mcp.js
L84: const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
CriticalTrigger Reachable Dangerous Capability
A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
dist/atlisp-mcp.jsView on unpkg · L84 •matchType = previous_version_dangerous_delta
matchedPackage = @atlisp/mcp@1.11.2
matchedIdentity = npm:QGF0bGlzcC9tY3A:1.11.2
similarity = 0.948
summary = stored previous version shares package body but lacks this dangerous source file
CriticalPrevious Version Dangerous Delta
This package version adds a dangerous source file absent from the previous stored version; route for source-aware review.
dist/atlisp-mcp.jsView on unpkg 6881});
L6882: import { spawn } from "child_process";
L6883: import path5 from "path";
27301const base = `& '${process.execPath}' '${process.argv[1]}' --transport http`;
L27302: return `powershell -WindowStyle Hidden -Command "${base}"`;
L27303: }
84const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
HighCommand Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
dist/atlisp-mcp.jsView on unpkg · L84 84Detached bundled service listener: dist/atlisp-mcp.js launches a Node helper and exposes a broad-bound HTTP listener.
L84: const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
HighSpawned Bundled Service Listener
Source launches a detached bundled service that exposes a broad-bound HTTP listener.
dist/atlisp-mcp.jsView on unpkg · L84 84Trigger-reachable persistence chain: manifest.main -> dist/atlisp-mcp.js
L84: const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
HighTrigger Reachable Persistence
A manifest entrypoint or package-local install chain reaches persistence behavior.
dist/atlisp-mcp.jsView on unpkg · L84 1103try {
L1104: const { NodeTracerProvider, BatchSpanProcessor } = await import("@opentelemetry/sdk-trace-node");
L1105: const { OTLPTraceExporter } = await import("@opentelemetry/exporter-trace-otlp-http");
MediumDynamic Require
Package source references dynamic require/import behavior.
dist/atlisp-mcp.jsView on unpkg · L1103 84const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
MediumInstall Persistence
Source writes installer persistence such as shell profile or service configuration.
dist/atlisp-mcp.jsView on unpkg · L84 84const raw = fs.readFileSync(filePath, "utf-8");
L85: const parsed = JSON.parse(raw);
L86: const result2 = configSchema.safeParse(parsed);
...
L189: // 会先剥掉 scheme 与端口再比较(getHost)。所以 `localhost` 这条已经覆盖
L190: // http://localhost:8100 / :8110 等本机所有端口;加了 https:// 反而看不出这一点,
L191: // 容易被后人「修正」成逐个端口枚举。* 开头按子域后缀匹配。
...
L352: cliArgs = parseArgs();
L353: envResult = envSchema.safeParse(process.env);
L354: if (!envResult.success) {
...
L358: env = envResult.data;
L359: configFilePath = env.CONFIG_FILE || cliArgs.configFile || path.join(os.homedir(), ".atlisp", "atlisp.config.json");
L360: fileConfig = loadConfigFile(configFilePath);
LowWeak Crypto
Package source references weak cryptographic algorithms.
dist/atlisp-mcp.jsView on unpkg · L84