Loading npm security reports…
beast-agent@2.60.0: Agent extension lifecycle risk – flagged | LPM Firewall
Flagged as agent extension risk
Allowed by default with warning: install-time first-party agent extension setup was detected.
AI Security Reviewscanned 1mo ago · by lpm-firewall-ai No concrete malicious install hook, credential theft, or covert exfiltration was found. The combination of dynamic remote extensions and unrestricted runtime shell execution warrants a warning.
Static reason
High-risk behavior combination matched malicious policy.; source matched previously finalized malicious package; routed for review
Trigger
npm installation activates the Electron repair; an explicit app-install or agent tool request activates the runtime capabilities.
Impact
A user or a compromised agent conversation can cause arbitrary local code to run through the advertised agent features; static inspection found no separate stealth or exfiltration chain.
Mechanism
Dependency repair plus dynamic agent extension loading and shell execution.
AI rationale
No concrete malicious install hook, credential theft, or covert exfiltration was found. The combination of dynamic remote extensions and unrestricted runtime shell execution warrants a warning.
Evidence
package.json scripts/fix-electron.js src/agent/apps.js src/agent/tools.js node_modules/electron/dist node_modules/electron/path.txt %APPDATA%\beast\apps\<id>
Network endpoints2
npmmirror.com /mirrors/electron/codeload.github.com /
Decision evidencepublic snapshot AI called this Suspicious at 82.0% confidence as Unknown with medium false-positive risk.
Evidence for warning
The automatic postinstall repair deletes Electron runtime files and runs Electron's installer, including a mirror fallback. The app installer downloads or clones a user-supplied package, copies it into the agent app directory, and immediately loads its JavaScript. The agent exposes a tool that executes PowerShell or Bash commands supplied through its runtime. Evidence against
No self-dependency is declared. The postinstall code targets only the package's Electron dependency, not an AI-agent control surface. Remote app installation is an explicit runtime feature; no hidden credential collection or package-owned secret exfiltration was found. Behavioral surface
Source ChildProcess Crypto DynamicRequire EnvironmentVars Filesystem Network Shell WebSocket
Supply chain HighEntropyStrings UrlStrings
Manifest
Source & flagged code27 flagged · loading source • scripts.postinstall = node scripts/fix-electron.js --soft
High Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.json View on unpkg • scripts.postinstall = node scripts/fix-electron.js --soft
Medium Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.json View on unpkg 7 L8: const { spawn, spawnSync } = require('child_process');
L9: const path = require('path');
High Child Process
Package source references child process execution.
bin/beast-agent.js View on unpkg · L7
Findings2 Critical 21 High 6 Medium 6 Low
Critical Download Execute src/agent/tools.js
Critical Trigger Reachable Dangerous Capability src/main.js
High Install Time Lifecycle Scripts package.json
High Child Process bin/beast-agent.js
High Shell src/main.js
High Same File Env Network Execution src/agent/searxng.js
High Credential Redirect Persistence src/main.js
High Entrypoint Foreign Package Code Overwrite src/agent/store.js
High Command Output Exfiltration src/main.js
High Runtime Package Install src/main.js
High Semantic Analysis Limited bin/beast-agent.js
High Known Malware Source Similarity
Affected versions and remediation This report applies to beast-agent@2.60.0 .
See all versions of beast-agent for other recorded verdicts.
Review the evidence and your use of beast-agent@2.60.0 before allowing it. Restrict the permissions described in this report. Choose an independently verified alternative or release. This report does not establish that other versions are safe. Evidence last updated: 2026-09-15 18:54:09.353Z (UTC) .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced .
82% Suspicious
AI assessment confidence
Package metadata npm Author algokodcom
Maintainers algokod
Version 2.60.0
Latest on npm 2.92.0
Published Sep 15, 2026
License MIT
Dependencies 17
Integrity verified
Package size 1012 KB
Files 147
Keywords agent ai whatsapp assistant electron windows llm openai
No manifest risk signals triggered.
scanned 81 file(s), 2.49 MB of source, external domains: 127.0.0.1, api.anthropic.com, api.github.com, api.groq.com, api.openai.com, api.ornek.com, api.search.tinyfish.ai, api.telegram.org, api.z.ai, beastagent-skills.web.app, bootstrap.pypa.io, codeload.github.com, connectivitycheck.gstatic.com, cp.cloudflare.com, discord.com, duckduckgo.com, generativelanguage.googleapis.com, git-scm.com, github.com, html.duckduckgo.com, huggingface.co, integrate.api.nvidia.com, news.google.com, npmmirror.com, opencode.ai, openrouter.ai, raw.githubusercontent.com, registry.npmjs.org, schemas.openxmlformats.org, skills.algokod.com, www.google.com, www.msftconnecttest.com, www.npmjs.com, www.python.org, www.w3.org
• stage = ast_semantic_analysis; reason = ast_parse_error; limitedFiles = 14
High Semantic Analysis Limited
A bounded semantic-analysis stage reached its safety limit; remaining detectors completed, but this package requires AI review.
bin/beast-agent.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = bin/beast-agent.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
bin/beast-agent.js View on unpkg 7 L8: const { spawn, spawnSync } = require('child_process');
L9: const path = require('path');
Medium Dynamic Require
Package source references dynamic require/import behavior.
bin/beast-agent.js View on unpkg · L7 5 Trigger-reachable chain: manifest.main -> src/main.js
L5: const fs = require('fs');
L6: const http = require('http');
L7: const dns = require('dns');
L8: const crypto = require('crypto');
...
L12: const OPENCODE_SESSION = 'beast-' + crypto.randomUUID();
L13: const { spawn } = require('child_process');
L14: const { Engine, OBSERVE_MARK, stripAiDashes } = require('./agent/engine');
...
L70: if (res.ok) {
L71: const j = await res.json();
L72: const v = String(j.version || '').trim();
...
L81: if (win && !win.isDestroyed()) {
L82: win.webContents.send('agent:event', { type: 'update', ...updateState, current: app.getVersion() });
Critical Trigger Reachable Dangerous Capability
A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
src/main.js View on unpkg · L5 1264 const zipPath = path.join(outDir, `beast-${stamp}.zip`);
L1265: /* zip yoksa PowerShell Compress-Archive ile */
L1266: await new Promise((resolve, reject) => {
• Manifest-reachable source captures an API credential, sends it to a fixed unofficial gateway, and persists that redirection in agent or shell configuration.
src/main.js:
sadece API key gir, modeller otomatik çekilir. Hepsi OpenAI-uyumlu. */
{ id: 'opencode-zen', name: 'OpenCode Zen', baseUrl: 'https://opencode.ai/zen/v1', hint: 'Ücretsiz modeller var — anahtar: opencode.ai/auth' },
{ id: 'opencode-go', name: 'OpenCode Go', baseUrl: 'https://opencode.ai/zen/go/v1', hint: 'Abonelik anahtarı' },
{ id: 'openrouter', name: 'OpenRouter', baseUrl: 'https://openrouter.ai/api/v1', hint: 'openrouter.ai/keys' },
{ id: 'openai', name: 'OpenAI', baseUrl: 'https://api.openai.com/v1', hint: 'platform.openai.com/api-keys' },
{ id: 'anthropic', name: 'Anthropic', baseUrl: 'https://api.anthropic.com/v1', hi
High Credential Redirect Persistence
Manifest-reachable source sends a prompted API credential to a fixed unofficial gateway and persists the redirection.
src/main.js View on unpkg 5 const fs = require('fs');
L6: const http = require('http');
L7: const dns = require('dns');
L8: const crypto = require('crypto');
...
L12: const OPENCODE_SESSION = 'beast-' + crypto.randomUUID();
L13: const { spawn } = require('child_process');
L14: const { Engine, OBSERVE_MARK, stripAiDashes } = require('./agent/engine');
...
L70: if (res.ok) {
L71: const j = await res.json();
L72: const v = String(j.version || '').trim();
...
L81: if (win && !win.isDestroyed()) {
L82: win.webContents.send('agent:event', { type: 'update', ...updateState, current: app.getVersion() });
High Command Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
src/main.js View on unpkg · L5 3806 const k = 'HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Run';
L3807: spawn('reg.exe', ['delete', k, '/v', 'electron.app.Beast Agent', '/f'], { stdio: 'ignore', windowsHide: true }).unref();
L3808: spawn('reg.exe', ['query', k, '/v', 'electron.app.Beast Agent'], { stdio: 'ignore', windowsHide: true }).on('exit', (code) => {
...
L3811: } catch {}
L3812: log.info('main', '⚠ EXE/portable mod desteklenmiyor — tek dağıtım: npm i -g beast-agent');
L3813: } else if (!app.isPackaged && /node_modules[\\/]beast-agent/i.test(String(app.getAppPath()))) {
High Runtime Package Install
Package source invokes a package manager install command at runtime.
src/main.js View on unpkg · L3806 29 function beastRoot() {
L30: if (process.env.BEAST_DATA) return process.env.BEAST_DATA;
L31: return process.env.APPDATA
L32: ? path.join(process.env.APPDATA, 'beast')
L33: : path.join(os.homedir(), 'AppData', 'Roaming', 'beast');
L34: }
...
L167: if (!v) return null;
L168: return Buffer.from(v.buffer, v.byteOffset, v.byteLength).toString('base64');
L169: }
Low Weak Crypto
Package source references weak cryptographic algorithms.
src/agent/mem0.js View on unpkg · L29 15 const os = require('os');
L16: const { spawn, execFile, execSync } = require('child_process');
L17:
L18: const REQS_URL = 'https://raw.githubusercontent.[redacted].txt';
L19: const PKG_URL = 'https://github.[redacted].zip';
...
L25: function beastAppDir() {
L26: if (process.env.BEAST_DATA) return process.env.BEAST_DATA;
L27: return process.env.APPDATA
High Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
src/agent/searxng.js View on unpkg · L15 • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/searxng.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/searxng.js View on unpkg • Manifest-reachable source resolves another installed package, overwrites its runtime code, and injects package-defined remote behavior.
src/agent/store.js:
const SITE_URL = 'https://sk[redacted]';
const SITE_FALLBACK_URL = 'https://beastagent-sk[redacted]';
const COMMUNITY_URL = 'https://raw.githubusercontent.com/algokodcom/beast-agent/main/store/skills.json';
const SKIP_DIRS = new Set(['node_modules', '.git', '__pycache__', '.drafts']);
fs.writeFileSync(p, JSON.stringify(obj, null, 2));
fs.writeFileSync(target, String(content ?? ''), 'utf8');
High Entrypoint Foreign Package Code Overwrite
Manifest-reachable source overwrites another installed package with package-defined remote behavior.
src/agent/store.js View on unpkg 5 const path = require('path');
L6: const https = require('https');
L7: const dns = require('dns');
L8: const net = require('net');
L9: const { execFile } = require('child_process');
L10: const { spawn } = require('child_process');
...
L222: if (/\bnpm\s+init\b/i.test(raw) && !/(\s-y\b|\s--yes\b)/i.test(raw)) {
L223: return '`npm init` sihirbazı soru sorar — `npm init -y` kullan ya da package.json\'u write_file ile yaz.';
L224: }
...
L256: ['-NoProfile', '-NonInteractive', '-NoExit', '-ExecutionPolicy', 'Bypass', '-Command', '-'],
L257: { cwd: cwd || process.cwd(), windowsHide: true, env: envWithPathPrefix() }
L258: );
Critical Download Execute
Source downloads or fetches remote code and executes it.
src/agent/tools.js View on unpkg · L5 src/agent/defaulttools/mt5_m15_m5/m15m5.py View file • path = src/agent/defaulttools/mt5_m15_m5/m15m5.py
kind = build_helper
sizeBytes = 1937
magicHex = [redacted]
Medium Ships Build Helper
Package ships non-JavaScript build or shell helper files.
src/agent/defaulttools/mt5_m15_m5/m15m5.py View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/mcp.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/mcp.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = scripts/fix-electron.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
scripts/fix-electron.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = scripts/release.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
scripts/release.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/gittools.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/gittools.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/mt5bridge.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/mt5bridge.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/apps.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/apps.js View on unpkg src/agent/defaulttools/mt5_durum/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_durum/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_durum/run.js View on unpkg src/agent/defaulttools/mt5_emir/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_emir/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_emir/run.js View on unpkg src/agent/defaulttools/mt5_emir_iptal/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_emir_iptal/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_emir_iptal/run.js View on unpkg src/agent/defaulttools/mt5_fiyat/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_fiyat/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_fiyat/run.js View on unpkg bin/beast-agent.js
High Known Malware Source Similarity src/agent/mcp.js
High Known Malware Source Similarity scripts/fix-electron.js
High Known Malware Source Similarity scripts/release.js
High Known Malware Source Similarity src/agent/gittools.js
High Known Malware Source Similarity src/agent/searxng.js
High Known Malware Source Similarity src/mt5bridge.js
High Known Malware Source Similarity src/agent/apps.js
High Known Malware Source Similarity src/agent/defaulttools/mt5_durum/run.js
High Known Malware Source Similarity src/agent/defaulttools/mt5_emir/run.js
High Known Malware Source Similarity src/agent/defaulttools/mt5_emir_iptal/run.js
High Known Malware Source Similarity src/agent/defaulttools/mt5_fiyat/run.js
Medium Ambiguous Install Lifecycle Script package.json
Medium Dynamic Require bin/beast-agent.js
Medium Ships Build Helper src/agent/defaulttools/mt5_m15_m5/m15m5.py
Medium Structural Risk Force Deep Review
Low Non Install Lifecycle Scripts
Low Weak Crypto src/agent/mem0.js
Runtime surface package.json Entrypoints main → src/main.js bin → beast, beast-agent
Runtime No engine / OS / CPU constraints
Artifact 3.09 MB · 147 files 2 signature(s)
Install lifecycle postinstall prepublishOnly
Behavioral surface ChildProcess Crypto DynamicRequire EnvironmentVars Filesystem Network Shell WebSocket HighEntropyStrings UrlStrings Manifest: clean
Source & flagged code27 flagged Lines 23-63 json
26 "main" : "src/main.js" ,
29 "beast-agent" : "bin/beast-agent.js" ,
30 "beast" : "bin/beast-agent.js"
39 "start" : "electron ." ,
40 "dist" : "electron-builder --win nsis portable" ,
41 "test" : "node --test \" tests/**/*.test.js \" " ,
42 "release" : "node scripts/release.js" ,
43 "postinstall" : "node scripts/fix-electron.js --soft" ,
High Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.json View on unpkg · L43 Medium Ambiguous Install Lifecycle Script
Install-time lifecycle script is not statically allowlisted and needs review.
package.json View on unpkg · L43 44 "prepublishOnly" : "node scripts/swap-electron.js deps" ,
45 "postpublish" : "node scripts/swap-electron.js devdeps"
48 "electron-builder" : "^26.15.3"
51 "@huggingface/transformers" : "3.7.5" ,
52 "@pdf-lib/fontkit" : "^1.1.1" ,
53 "@whiskeysockets/baileys" : "^7.0.0-rc14" ,
54 "@xenova/transformers" : "^2.17.2" ,
55 "electron-updater" : "^6.8.9" ,
56 "ffmpeg-static" : "^5.3.0" ,
58 "nodemailer" : "^9.0.5" ,
60 "pdf-parse" : "^2.4.5" ,
61 "pdf-to-img" : "^6.3.0" ,
62 "pdfjs-dist" : "^5.6.205" ,
Lines 1-27 javascript
4 /* Beast Agent global npm launcher (`beast` short alias points to the same script):
5 `beast` / `beast-agent` → launches the app detached, frees the terminal immediately
6 `beast update` → installs the latest version from npm (run while the app is closed) */
8 const { spawn , spawnSync } = require (
5 Trigger-reachable chain: manifest.main -> src/main.js
L5: const fs = require('fs');
L6: const http = require('http');
L7: const dns = require('dns');
L8: const crypto = require('crypto');
...
L12: const OPENCODE_SESSION = 'beast-' + crypto.randomUUID();
L13: const { spawn } = require('child_process');
L14: const { Engine, OBSERVE_MARK, stripAiDashes } = require('./agent/engine');
...
L70: if (res.ok) {
L71: const j = await res.json();
L72: const v = String(j.version || '').trim();
...
L81: if (win && !win.isDestroyed()) {
L82: win.webContents.send('agent:event', { type: 'update', ...updateState, current: app.getVersion() });
Critical Trigger Reachable Dangerous Capability
A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
src/main.js View on unpkg · L5 1264 const zipPath = path.join(outDir, `beast-${stamp}.zip`);
L1265: /* zip yoksa PowerShell Compress-Archive ile */
L1266: await new Promise((resolve, reject) => {
• Manifest-reachable source captures an API credential, sends it to a fixed unofficial gateway, and persists that redirection in agent or shell configuration.
src/main.js:
sadece API key gir, modeller otomatik çekilir. Hepsi OpenAI-uyumlu. */
{ id: 'opencode-zen', name: 'OpenCode Zen', baseUrl: 'https://opencode.ai/zen/v1', hint: 'Ücretsiz modeller var — anahtar: opencode.ai/auth' },
{ id: 'opencode-go', name: 'OpenCode Go', baseUrl: 'https://opencode.ai/zen/go/v1', hint: 'Abonelik anahtarı' },
{ id: 'openrouter', name: 'OpenRouter', baseUrl: 'https://openrouter.ai/api/v1', hint: 'openrouter.ai/keys' },
{ id: 'openai', name: 'OpenAI', baseUrl: 'https://api.openai.com/v1', hint: 'platform.openai.com/api-keys' },
{ id: 'anthropic', name: 'Anthropic', baseUrl: 'https://api.anthropic.com/v1', hi
Lines 9-49 javascript
9 - Hibrit arama : 0.65 * semantic (cosine) + 0.35 * keyword (mem0 semantic + BM25 felsefesi)
10 Her fonksiyon degradasyonlu : embedding yoksa keyword, LLM yoksa hash + cos dedup.
Lines 1-35 javascript
3 /* SearXNG — local metasearch integration (github.com/searxng/searxng)
4 SearXNG officially targets Linux/Docker; on Windows it crashes because of
5 `import pwd`. This module installs the real searxng (GitHub master) into
6 Beast's EMBEDDED Python + writes a pwd shim + runs it in the background on
7 127.0.0.1:8888. The search chain only uses the 'searxng' engine while it is UP.
9 CLI: beast searxng → install if needed + start
10 beast searxng status → status
• Manifest-reachable source resolves another installed package, overwrites its runtime code, and injects package-defined remote behavior.
src/agent/store.js:
const SITE_URL = 'https://sk[redacted]';
const SITE_FALLBACK_URL = 'https://beastagent-sk[redacted]';
const COMMUNITY_URL = 'https://raw.githubusercontent.com/algokodcom/beast-agent/main/store/skills.json';
const SKIP_DIRS = new Set(['node_modules', '.git', '__pycache__', '.drafts']);
fs.writeFileSync(p, JSON.stringify(obj, null, 2));
fs.writeFileSync(target, String(content ?? ''), 'utf8');
High Entrypoint Foreign Package Code Overwrite
Manifest-reachable source overwrites another installed package with package-defined remote behavior.
src/agent/store.js View on unpkg 5 const path = require('path');
L6: const https = require('https');
L7: const dns = require('dns');
L8: const net = require('net');
L9: const { execFile } = require('child_process');
L10: const { spawn } = require('child_process');
...
L222: if (/\bnpm\s+init\b/i.test(raw) && !/(\s-y\b|\s--yes\b)/i.test(raw)) {
L223: return '`npm init` sihirbazı soru sorar — `npm init -y` kullan ya da package.json\'u write_file ile yaz.';
L224: }
...
L256: ['-NoProfile', '-NonInteractive', '-NoExit', '-ExecutionPolicy', 'Bypass', '-Command', '-'],
L257: { cwd: cwd || process.cwd(), windowsHide: true, env: envWithPathPrefix() }
L258: );
Critical Download Execute
Source downloads or fetches remote code and executes it.
src/agent/tools.js View on unpkg · L5 src/agent/defaulttools/mt5_m15_m5/m15m5.py View file • path = src/agent/defaulttools/mt5_m15_m5/m15m5.py
kind = build_helper
sizeBytes = 1937
magicHex = [redacted]
Medium Ships Build Helper
Package ships non-JavaScript build or shell helper files.
src/agent/defaulttools/mt5_m15_m5/m15m5.py View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/mcp.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/mcp.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = scripts/fix-electron.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
scripts/fix-electron.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = scripts/release.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
scripts/release.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/gittools.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/gittools.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/mt5bridge.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/mt5bridge.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/apps.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/apps.js View on unpkg src/agent/defaulttools/mt5_durum/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_durum/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_durum/run.js View on unpkg src/agent/defaulttools/mt5_emir/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_emir/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_emir/run.js View on unpkg src/agent/defaulttools/mt5_emir_iptal/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_emir_iptal/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_emir_iptal/run.js View on unpkg src/agent/defaulttools/mt5_fiyat/run.js View file • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/defaulttools/mt5_fiyat/run.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/defaulttools/mt5_fiyat/run.js View on unpkg 'child_process'
);
9 const path = require ( 'path' );
High Child Process
Package source references child process execution.
bin/beast-agent.js View on unpkg · L7 Medium Dynamic Require
Package source references dynamic require/import behavior.
bin/beast-agent.js View on unpkg · L7 10 const fs = require ( 'fs' );
11 const os = require ( 'os' );
13 /* uninstall mode: removes the app but KEEPS YOUR PERSONAL DATA
14 (%APPDATA%\beast: config.yaml, .env, sessions, memory, WhatsApp pairing, backups) */
15 if (process.argv[ 2 ] === 'uninstall' ) {
16 const isWin = process.platform === 'win32' ;
17 console. log ( 'Uninstalling Beast Agent \u2026 ' );
19 /* stop running instances */
21 spawnSync ( 'powershell.exe' , [ '-NoProfile' , '-Command' ,
22 "Get-Process electron -ErrorAction SilentlyContinue | Where-Object { $_.Path -like '*node_modules*beast-agent*' } | Stop-Process -Force" ],
24 console. log ( ' \u2022 stopped running Beast instances (if any)' );
26 /* remove the startup entry — only if it points to beast-agent */
• stage = ast_semantic_analysis; reason = ast_parse_error; limitedFiles = 14
High Semantic Analysis Limited
A bounded semantic-analysis stage reached its safety limit; remaining detectors completed, but this package requires AI review.
bin/beast-agent.js View on unpkg • matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = bin/beast-agent.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
bin/beast-agent.js View on unpkg High Credential Redirect Persistence
Manifest-reachable source sends a prompted API credential to a fixed unofficial gateway and persists the redirection.
src/main.js View on unpkg 5 const fs = require('fs');
L6: const http = require('http');
L7: const dns = require('dns');
L8: const crypto = require('crypto');
...
L12: const OPENCODE_SESSION = 'beast-' + crypto.randomUUID();
L13: const { spawn } = require('child_process');
L14: const { Engine, OBSERVE_MARK, stripAiDashes } = require('./agent/engine');
...
L70: if (res.ok) {
L71: const j = await res.json();
L72: const v = String(j.version || '').trim();
...
L81: if (win && !win.isDestroyed()) {
L82: win.webContents.send('agent:event', { type: 'update', ...updateState, current: app.getVersion() });
High Command Output Exfiltration
Source combines command execution, command-output handling, and outbound requests; review data flow before blocking.
src/main.js View on unpkg · L5 3806 const k = 'HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\Run';
L3807: spawn('reg.exe', ['delete', k, '/v', 'electron.app.Beast Agent', '/f'], { stdio: 'ignore', windowsHide: true }).unref();
L3808: spawn('reg.exe', ['query', k, '/v', 'electron.app.Beast Agent'], { stdio: 'ignore', windowsHide: true }).on('exit', (code) => {
...
L3811: } catch {}
L3812: log.info('main', '⚠ EXE/portable mod desteklenmiyor — tek dağıtım: npm i -g beast-agent');
L3813: } else if (!app.isPackaged && /node_modules[\\/]beast-agent/i.test(String(app.getAppPath()))) {
High Runtime Package Install
Package source invokes a package manager install command at runtime.
src/main.js View on unpkg · L3806 Scope
:
'main'
|
'bot:<botId>'
— botlar arasında
ASLA
çapraz erişim yok.
*/
13 const fs = require ( 'fs' );
14 const path = require ( 'path' );
15 const os = require ( 'os' );
16 const crypto = require ( 'crypto' );
18 const CAP = 400 ; // scope başına maksimum kayıt (memory.js cap ile aynı)
19 const DIMS = 384 ; // all-MiniLM-L6-v2
20 const SEMANTIC_SKIP = 0.93 ; // add fast-path: bu cosine üstü aynı bilgi sayılır
21 const CAND_THRESHOLD = 0.3 ; // konsolidasyon adayı için min cosine
22 const CAND_K = 6 ; // fact başına çekilecek benzer aday
23 const SEARCH_SEM_W = 0.65 ; // hibrit skor: semantik ağırlık
24 const SEARCH_KW_W = 0.35 ; // hibrit skor: keyword ağırlık
25 const LOAD_TIMEOUT_MS = 10000 ; // embed modeli ilk yüklemeye bu süreyi bekler, sonra vektörsüz devam
27 /* ---------- yollar ---------- */
30 if (process.env. BEAST_DATA ) return process.env. BEAST_DATA ;
31 return process.env. APPDATA
32 ? path. join (process.env. APPDATA , 'beast' )
33 : path. join (os. homedir (), 'AppData' , 'Roaming' , 'beast' );
34 }
Low Weak Crypto
Package source references weak cryptographic algorithms.
src/agent/mem0.js View on unpkg · L29 37 const d = path. join ( beastRoot (), 'memories' , 'mem0' );
38 try { fs. mkdirSync (d, { recursive: true }); } catch {}
42 /* scope → güvenli dosya adı ('bot:ahmet-42' → 'bot-ahmet-42') */
43 function fileSafe ( scope ) {
44 return String (scope || 'main' ). replace ( / [ ^ a-zA-Z0-9._-] + / g , '-' );
47 function storePath ( scope ) {
48 return path. join ( mem0Dir (), fileSafe (scope) + '.json' );
beast searxng stop → stop */
13 const fs = require ( 'fs' );
14 const path = require ( 'path' );
15 const os = require ( 'os' );
16 const { spawn , execFile , execSync } = require ( 'child_process' );
18 const REQS_URL = 'https://raw.githubusercontent.com/searxng/searxng/master/requirements.txt' ;
19 const PKG_URL = 'https://github.com/searxng/searxng/archive/refs/heads/master.zip' ;
20 const GETPIP_URL = 'https://bootstrap.pypa.io/get-pip.py' ;
21 const DEFAULT_URL = 'http://127.0.0.1:8888' ;
23 /* ---------- paths ---------- */
25 function beastAppDir () {
26 if (process.env. BEAST_DATA ) return process.env. BEAST_DATA ;
27 return process.env. APPDATA
High Same File Env Network Execution
A single source file combines environment access, network access, and code or shell execution; review context before blocking.
src/agent/searxng.js View on unpkg · L15 28 ? path. join (process.env. APPDATA , 'beast' )
29 : path. join (os. homedir (), 'AppData' , 'Roaming' , 'beast' );
33 const d = path. join ( beastAppDir (), 'searxng' );
34 try { fs. mkdirSync (d, { recursive: true }); } catch {}
• matchType = normalized_sha256
matchedPackage = beast-agent@2.44.2
matchedPath = src/agent/searxng.js
matchedIdentity = npm:YmVhc3QtYWdlbnQ:2.44.2
similarity = 1.000
summary = normalized source hash matched finalized malicious source
High Known Malware Source Similarity
Source file is highly similar to a previously finalized malicious package; route for source-aware review.
src/agent/searxng.js View on unpkg