registry  /  facult  /  2.27.1

facult@2.27.1

Capture agent-work signal, reconcile evidence, and evolve AI capability.

Static Scan Results

scanned 2h ago · by rust-scanner

Static analysis flagged 12 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
ChildProcessCryptoDynamicRequireEnvironmentVarsFilesystemNetworkShell
Supply chain
HighEntropyStringsMinifiedUrlStrings
Manifest
WildcardDependency
scanned 90 file(s), 1.95 MB of source, external domains: api.github.com, api.smithery.ai, github.com, glama.ai, hack.dance, raw.githubusercontent.com, skills.sh, wry-manatee-359.convex.site

Source & flagged code

3 flagged · loading source
bin/fclt.cjsView file
3L4: const fs = require("node:fs"); L5: const fsp = require("node:fs/promises");
Medium
Dynamic Require

Package source references dynamic require/import behavior.

bin/fclt.cjsView on unpkg · L3
src/autosync.tsView file
44const WHITESPACE_RE = /\s+/; L45: const LAUNCHCTL_WORKING_DIRECTORY_RE = /^\s*working directory\s*=\s*(.+?)\s*$/i; L46: const PLIST_COMMENT_RE = /<!--[\s\S]*?-->/g; ... L96: plistPath: string; L97: stdoutPath: string; L98: stderrPath: string; ... L287: rootDir?: string, L288: home: string = homedir() L289: ): string { ... L570: const text = await readFile(pathValue, "utf8"); L571: return JSON.parse(text) as T; L572: } catch {
Medium
Install Persistence

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

src/autosync.tsView on unpkg · L44
src/self-update.tsView file
72kind: "invocation_warning"; L73: exitCode: number; L74: } ... L136: ): SelfUpdateLegacyRecovery { L137: const parsed: unknown = JSON.parse(stdout); L138: if (!isRecord(parsed)) { ... L320: const envMethod = L321: context.envInstallMethod ?? process.env.FACULT_INSTALL_METHOD?.trim(); L322: if (envMethod === "script-dev" || envMethod === "script-bin") { ... L329: const exec = context.executablePath ?? process.execPath; L330: const home = context.homeDir ?? homedir(); L331: if ([redacted](exec)) {
High
Sandbox Evasion Gated Capability

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

src/self-update.tsView on unpkg · L72

Findings

1 High6 Medium5 Low
HighSandbox Evasion Gated Capabilitysrc/self-update.ts
MediumDynamic Requirebin/fclt.cjs
MediumNetwork
MediumEnvironment Vars
MediumInstall Persistencesrc/autosync.ts
MediumStructural Risk Force Deep Review
MediumWildcard Dependency
LowNon Install Lifecycle Scripts
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings