live · scanning repos
Scanrepo
github.com
github.com / AlexsJones

AlexsJones/llmfit

Rust·243 files·commit 99d01a8·scanned 12d ago·cached ✓
15/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.

score capped at 1533,981+ stars — findings likely false positives

verdict accurate?
33,981 stars
Desktop app detected
threat-state: lowlive

FINDINGS ░▒▓

criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.llmfit-core/src/doctor.rs
fn capture(cmd: &str, args: &[&str]) -> String {
    match std::process::Command::new(cmd).args(args).output() {
        Ok(out) => {
            let mut text = String::new();
+8
criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.llmfit-core/src/hardware.rs
        // Fallback: standard 2-column query for older nvidia-smi versions
        let output = match std::process::Command::new("nvidia-smi")
            .arg("--query-gpu=memory.total,name")
       ...
+8
warningRust unsafe blockunsafe blocks bypass Rust's memory safety guarantees. Malware uses them for raw pointer manipulation, shellcode injection, or calling dangerous foreign functions.llmfit-core/src/share.rs
        let _ = std::fs::remove_dir_all(&dir);
        unsafe { std::env::set_var("LLMFIT_BENCH_STORE", &dir) };

        let specs = specs_with_gpu("NVIDIA GeForce RTX 4090");
+3
criticalRust process Command usagestd::process::Command can execute arbitrary shell commands. Malware uses it to drop payloads, exfiltrate data, or establish persistence.llmfit-tui/src/display.rs
        let candidate = llamacpp_binary_arg();
        let Ok(output) = std::process::Command::new(&candidate)
            .arg("--help")
            .output()
+8
infoSuspicious files are not reachable from entry pointsFlagged files exist but are not imported by any entry point. They may be dead code, tests, or attack payloads triggered by another mechanism.+2
warningRust wallet/crypto code with network activityCode handling private keys or signing and also making network requests may be exfiltrating secrets or sending funds to an attacker.llmfit-core/src/share.rs
/// App, device flow enabled). This is **not** a secret — the device flow
/// requires no client secret, so shipping it in the binary is by design.
/// Override with the `LLMFIT_GH_CLIENT_ID` environm...
+5
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.llmfit-web/src/components/DetailPanel.jsx+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.llmfit-web/src/components/SystemPanel.jsx+3
warningHigh-entropy string literalsFound 4 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.llmfit-web/src/i18n/locales/zh-CN.js+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.llmfit-web/src/utils.js+3
warningHigh-entropy string literalsFound 14 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.scripts/scrape_hf_models.py+3
warningHigh-entropy string literalsFound 8 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.scripts/validate_community_benchmarks.py+3
infoSuspicious file in repoVery large source file (3322KB) — could contain obfuscated payloadllmfit-core/data/benchmark_cache.json+2
infoSuspicious file in repoVery large source file (10161KB) — could contain obfuscated payloadllmfit-core/data/hf_models.json+2
infoAuthor has no other public repositoriesGitHub user "github-actions[bot]" has no other public repositories, common for burner accounts used in scams.+2

Scores are heuristics. A “safe” verdict means no known-malicious patterns were found — clever malware can look boring. Wrong verdict? Flag it above; confirmed false positives become regression tests.

157 files scanned @ 99d01a8 | 8/25/2026 | heuristic scan — always review manually

risk by category
code execution25
network & exfiltration5
file system access0
obfuscation15
supply chain6
owasp / injection0
telemetry
files 157/243rules hit 15engine v5commit 99d01a8

github

AlexsJones/llmfit

Hundreds of models & providers. One command to find what runs on your hardware.

Rust
33981
2131
203d
243 files
157 scanned(65%)
99d01a8

architecture░▒▓

entry (1) flagged (14) pkg (75)
141 nodes · 191 edgesscroll to zoom · click node to jump to finding
LOW (15/100) — AlexsJones/llmfit — ScanRepo