github.com / rlaope
rlaope/ oh-my-hermes
Python·2707 files·commit 3a0e98b·scanned 15m ago·cached ✓
25/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.
score capped at 25 — 2,926 stars — findings likely legitimate code patterns
verdict accurate?
Crypto/Web3 project
Partial architecture graph
threat-state: lowlive
FINDINGS ░▒▓
criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.src/maintenance/documentation_claims_worker.py
# Compile current bytes, not a possibly same-size/same-second .pyc fixture.
exec(compile(source, str(path), "exec"), module.__dict__)
return module
+7criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.tests/test_cross_harness_adapter_security.py
self.assertIn(
'(allow process-exec (literal "/bin/sh") (literal "/usr/bin/true") '
'(literal "/bin/bash"))',
policy,+7warningPython subprocess / os.system usageos.system() or subprocess with shell=True / suspicious commands can execute arbitrary shell commands. Plain pip/package installs are usually benign.tests/test_fanout_confinement.py
repo.mkdir()
_ = subprocess.run(("/usr/bin/git", "init", "-q"), cwd=repo, check=True)
(repo / "seed").write_text("seed", encoding="utf-8")
_ = subprocess.run(("/usr/bin/git", "add", "s...+4warningPython subprocess / os.system usageos.system() or subprocess with shell=True / suspicious commands can execute arbitrary shell commands. Plain pip/package installs are usually benign.tests/test_host_adapters.py
for _ in range(2):
result = subprocess.run(command, cwd=repo, env=env, capture_output=True, text=True, timeout=60)
self.assertEqual(...+4warningPython subprocess / os.system usageos.system() or subprocess with shell=True / suspicious commands can execute arbitrary shell commands. Plain pip/package installs are usually benign.tests/test_installer_python_selection.py
}
return subprocess.run(
["sh", str(INSTALLER)],
env=env,+4criticalPython dynamic code executioneval(), exec() or compile() on untrusted input can execute arbitrary code. Common in Python malware for running obfuscated payloads.tests/test_plugin_bundle_standalone.py
with self.assertRaises(ImportError) as raised:
exec(f"from {LANE_PACKAGE}.agent_board_bridge import pre_agent_board")
error = raised.exception
self.assertNo...+7criticaleval() usage detectedeval() executes arbitrary code and is commonly used in malware to run obfuscated payloads fetched from remote servers.tests/test_plugin_risk_audit.py
" subprocess.run(['tool'], check=False)\n"
" eval('1 + 1')\n"
" requests.get('https://example.invalid')\n"
" pre_tool_call =...+8criticalFunction() constructor detectednew Function() is equivalent to eval() and can execute arbitrary code strings.tests/test_plugin_risk_audit.py
"child_process.exec('tool');\n" "new Function('return 1');\n" "fetch('https://example.invalid');\n" "const pre_tool_call = true;\n",+5
criticalPython remote code executionFetching code from a remote URL and immediately executing it (exec(requests.get(...).text)) is a classic malware dropper pattern.tests/test_plugin_risk_audit.py
(root / "plugin.json").write_text('{"name": "example"}\n', encoding="utf-8")
(root / "pyproject.toml").write_text('dependencies = ["requests>=2"]\n', encoding="utf-8")
...+10warningSSH/credential path accessAccessing .ssh, .aws/credentials, or .env files to steal authentication credentials.tests/fixtures/cross_harness_adapter/fake_adapter.py
probe = os.environ.get("OMH_READ_PROBE")
target = Path(probe) if probe else Path(pwd.getpwuid(os.getuid()).pw_dir) / ".ssh" / "id_rsa"
if not _denied(target.read_bytes):
...+5warningSSH/credential path accessAccessing .ssh, .aws/credentials, or .env files to steal authentication credentials.tests/test_update_check.py
def test_non_full_sha_is_a_clean_failure(self) -> None:
for sha in ("deadbeef", "g" * 40, "\x1b]8;;file:///Users/alice/.ssh/id_rsa\x07"):
with self.subTest(sha=sha):
...+5warningSSH/credential path accessAccessing .ssh, .aws/credentials, or .env files to steal authentication credentials.tests/test_update_check_command.py
paths = _paths(root)
unsafe = "\x1b]8;;file:///Users/alice/.ssh/id_rsa\x07"
update_check_cache_path(paths).parent.mkdir(parents=True)
atomic_write_json(+5warningExtremely long lines (>1000 chars)Very long lines in source files (not minified bundles) can hide malicious code.src/maintenance/update_check.py+4
warningExtremely long lines (>1000 chars)Very long lines in source files (not minified bundles) can hide malicious code.src/skills/lifecycle_growth_skill.py+4
warningExtremely long lines (>1000 chars)Very long lines in source files (not minified bundles) can hide malicious code.src/surfaces/menubar_app.py+4
warningHigh-entropy string literalsFound 3 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/capabilities/toggles.py+3
warningHigh-entropy string literalsFound 6 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/catalogs/briefing_vocabulary.py+3
warningHigh-entropy string literalsFound 3 long strings with high Shannon entropy. This is common in obfuscated payloads that hide URLs, keys, or bytecode.src/catalogs/design_data.py+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/coding/coding_delegation.py+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/coding/context_safety.py+3
warningFlattened or dead control flowDetected switch(true), dead if branches, or deeply nested ternaries — patterns used by obfuscators to hide execution order.src/coding/work_reporting.py+3
warningLarge base64-encoded blobA 4672-character base64 blob was found. May hide a remote payload or encoded executable code.src/surfaces/menubar_app.py
iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAACXBIWXMAAAAA...+3
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.
2015 files scanned @ 3a0e98b | 9/25/2026 | heuristic scan — always review manually
risk by category
code execution25
network & exfiltration0
file system access15
obfuscation15
supply chain15
owasp / injection0
telemetry
files 2015/2707rules hit 26engine v6commit 3a0e98b
github
rlaope/oh-my-hermes
All in one plugin for Hermes Agent ⚚ the coding intelligence, a long-term memory system and model optimized workflow packages
2926
223
114d
2707 files
2015 scanned(74%)
3a0e98b
architecture░▒▓
entry (0) flagged (200) pkg (133)
533 nodes · 2136 edgesscroll to zoom · click node to jump to finding