github.com / DietrichGebert
DietrichGebert/ ponytail
JavaScript·159 files·commit 2ed6c52·scanned 10d ago·cached ✓
15/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.
score capped at 15 — 105,487+ stars — findings likely false positives
verdict accurate?
105,487 stars
45% file coverage
threat-state: lowlive
FINDINGS ░▒▓
warningPython subprocess / os.system usageos.system() or subprocess with shell=True / suspicious commands can execute arbitrary shell commands. Plain pip/package installs are usually benign.benchmarks/agentic/run.py
def _git(workdir, *args):
return subprocess.run([shutil.which("git") or "git", *args], cwd=str(workdir),
capture_output=True, text=True)
+4criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.benchmarks/correctness.js
for name in ['validate_email', 'is_valid_email', 'email_validator', 'is_valid', 'validate']:
if name in dir() and callable(eval(name)):
fn = eval(name)
break+8criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.benchmarks/robustness-audit.js
for nm in names:
if nm in dir() and callable(eval(nm)): fn = eval(nm); break
if fn is None:
for nm, obj in list(globals().items()):+8warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.pi-extension/index.js+3
warningHigh-entropy string literalsFound 5 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.__init__.py+3
warningHigh-entropy string literalsFound 11 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.benchmarks/agentic/complete.py+3
warningHigh-entropy string literalsFound 9 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.benchmarks/agentic/judge.py+3
infoSuspicious file in repoExecutable file (ponytail-statusline.ps1) in repositoryhooks/ponytail-statusline.ps1+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.
72 files scanned @ 2ed6c52 | 8/19/2026 | heuristic scan — always review manually
risk by category
code execution22
network & exfiltration0
file system access0
obfuscation15
supply chain2
owasp / injection0
telemetry
files 72/159rules hit 9engine v5commit 2ed6c52
github
DietrichGebert/ponytail
Makes your AI agent think like the laziest senior dev in the room. The best code is the code you never wrote.
105487
5825
79d
159 files
72 scanned(45%)
2ed6c52
architecture░▒▓
entry (1) flagged (11) pkg (30)
82 nodes · 84 edgesscroll to zoom · click node to jump to finding