github.com / AgriciDaniel
AgriciDaniel/ claude-seo
Python·467 files·commit 6be93f4·scanned 3d ago·cached ✓
15/100
LOW RISK
Minor findings consistent with the project type. Nothing reachable from install hooks.
score capped at 15 — 21,169+ stars — findings likely false positives
verdict accurate?
21,169 stars
37% file coverage
threat-state: lowlive
FINDINGS ░▒▓
criticalRemote script piped into a shellA shell script downloads remote content and executes it directly (e.g. `curl … | bash`). The payload is never stored or reviewable and can change server-side — a classic malware/backdoor install pattern.extensions/ahrefs/install.sh
echo "✗ claude-seo base plugin not installed."
echo " Install it first: curl -fsSL https://raw.githubusercontent.com/AgriciDaniel/claude-seo/main/install.sh | bash"
exit 1
...+10criticalRemote script piped into a shellA shell script downloads remote content and executes it directly (e.g. `curl … | bash`). The payload is never stored or reviewable and can change server-side — a classic malware/backdoor install pattern.extensions/banana/install.sh
echo "✗ Claude SEO is not installed."
echo " Install it first: curl -fsSL https://raw.githubusercontent.com/AgriciDaniel/claude-seo/main/install.sh | bash"
exit 1
fi+10criticalRemote script piped into a shellA shell script downloads remote content and executes it directly (e.g. `curl … | bash`). The payload is never stored or reviewable and can change server-side — a classic malware/backdoor install pattern.extensions/dataforseo/install.sh
# Support both traditional (curl|bash → ~/.claude/skills/seo) and marketplace
# (plugin install → ~/.claude/plugins/cache/.../skills/seo) installations.
# Resolve early using BASH_SOURCE ...+10warningPython 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_hosted_plugin_layout.py
def _tracked() -> list[str]:
out = subprocess.run(
["git", "-C", str(ROOT), "ls-files"],
capture_output=True,+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_python_range.py
assert bash
return subprocess.run(
[bash, str(LAUNCHER), "doctor"],
env={"PATH": str(bin_dir), **env},+4infoSuspicious file in repoExecutable file (install.ps1) in repositoryextensions/ahrefs/install.ps1+2
infoSuspicious file in repoExecutable file (install.ps1) in repositoryextensions/bing-webmaster/install.ps1+2
infoSuspicious file in repoExecutable file (install.ps1) in repositoryextensions/dataforseo/install.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.
173 files scanned @ 6be93f4 | 10/26/2026 | heuristic scan — always review manually
risk by category
code execution25
network & exfiltration0
file system access0
obfuscation0
supply chain15
owasp / injection0
telemetry
files 173/467rules hit 9engine v7commit 6be93f4
github
AgriciDaniel/claude-seo
Universal SEO skill for Claude Code. 26 sub-skills + 19 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, agent readiness (Lighthouse Agentic Browsing, WebMCP, llms.txt), backlinks, local SEO, e-commerce, international SEO, Google APIs, and PDF/Excel reporting. 9 optional extensions for live SEO data.
21169
2966
264d
467 files
173 scanned(37%)
6be93f4
architecture░▒▓
entry (0) flagged (2) pkg (116)
261 nodes · 752 edgesscroll to zoom · click node to jump to finding