registry  /  @ctrl-spc/cli  /  1.3.4

@ctrl-spc/cli@1.3.4

CTRL+SPC CLI — per-machine agent for browser login, project linking, presence, and the local MCP server.

Static Scan Results

scanned 2h ago · by rust-scanner

Static analysis flagged 14 finding(s) at 93.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.; previous stored version diff introduced dangerous source

Decision evidence

public snapshot
Behavioral surface
Source
ChildProcessCryptoEnvironmentVarsFilesystemNetworkShell
Supply chain
HighEntropyStringsUrlStrings
Manifest
NoLicense
scanned 28 file(s), 409 KB of source, external domains: 127.0.0.1, ctrl-spc.com, esm.sh, gdioapkjgnlddsutysne.supabase.co, www.ctrl-spc.com

Source & flagged code

6 flagged · loading source
dist/dispatch.jsView file
1import { spawn } from 'node:child_process'; L2: import { statSync } from 'node:fs';
High
Child Process

Package source references child process execution.

dist/dispatch.jsView on unpkg · L1
dist/companion-projects.jsView file
358].join('; '); L359: const { stdout } = await execute('powershell.exe', ['-NoProfile', '-Command', script]); L360: return stdout.trim() || null;
High
Shell

Package source references shell execution.

dist/companion-projects.jsView on unpkg · L358
dist/commands/run.jsView file
1import { execFileSync } from 'node:child_process'; L2: import { randomUUID } from 'node:crypto'; ... L16: function mcpUrl() { L17: return `http://localhost:${MCP_PORT}/mcp`; L18: } ... L21: export function retireLegacyDaemon(deps = {}) { L22: if (process.platform !== 'darwin' && !deps.launchAgentPath) L23: return false; L24: const path = deps.launchAgentPath ?? join(homedir(), 'Library', 'LaunchAgents', 'com.ctrl-spc.daemon.plist'); L25: if (!(deps.exists ?? existsSync)(path)) ... L34: const bootout = deps.bootout ?? ((domain, target) => { L35: execFileSync('launchctl', ['bootout', domain, target], { stdio: 'ignore' });
Medium
Install Persistence

Source writes installer persistence such as shell profile or service configuration.

dist/commands/run.jsView on unpkg · L1
dist/companion.jsView file
323if (existing) { L324: const url = `http://127.0.0.1:${existing.port}/?token=${existing.token}`; L325: console.log(`Opening CTRL+SPC connection manager — ${url}`); ... L330: rmSync(statePath(managerKind), { force: true }); L331: const child = spawn(process.execPath, [CLI_ENTRY_PATH, '__companion'], { L332: detached: true, L333: env: { ...process.env, CTRL_SPC_COMPANION_KIND: managerKind }, L334: stdio: 'ignore',
High
Same File Env Network Execution

A single source file combines environment access, network access, and code or shell execution; review context before blocking.

dist/companion.jsView on unpkg · L323
1import { spawn } from 'node:child_process'; L2: import { randomBytes } from 'node:crypto'; L3: import { chmodSync, existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs'; L4: import { createServer } from 'node:http'; L5: import { join } from 'node:path'; ... L27: function companionPort(kind) { L28: return Number(process.env.CTRL_SPC_COMPANION_PORT) || (kind === 'local' ? LOCAL_COMPANION_PORT : NPM_COMPANION_PORT); L29: } ... L34: try { L35: return JSON.parse(readFileSync(statePath(kind), 'utf8')); L36: } ... L47: function openBrowser(url) {
High
Sandbox Evasion Gated Capability

Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.

dist/companion.jsView on unpkg · L1
dist/runtime-control.jsView file
matchType = previous_version_dangerous_delta matchedPackage = @ctrl-spc/cli@1.3.3 matchedIdentity = npm:QGN0cmwtc3BjL2NsaQ:1.3.3 similarity = 0.964 summary = stored previous version shares package body but lacks this dangerous source file
High
Previous Version Dangerous Delta

This package version adds a dangerous source file absent from the previous stored version; route for source-aware review.

dist/runtime-control.jsView on unpkg

Findings

5 High4 Medium5 Low
HighChild Processdist/dispatch.js
HighShelldist/companion-projects.js
HighSame File Env Network Executiondist/companion.js
HighSandbox Evasion Gated Capabilitydist/companion.js
HighPrevious Version Dangerous Deltadist/runtime-control.js
MediumNetwork
MediumEnvironment Vars
MediumInstall Persistencedist/commands/run.js
MediumStructural Risk Force Deep Review
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings
LowNo License