Scan Report
5 /100
seo-agi
Generative Engine Optimization skill that writes SEO pages using DataForSEO and GSC data
Legitimate SEO content generation skill with proper credential handling, documented network access to SEO APIs, and no malicious behavior detected.
Safe to install
No action required. The skill performs standard SEO research operations. Consider documenting pip install behavior in SKILL.md for transparency.
Findings 2 items
| Severity | Finding | Location |
|---|---|---|
| Low | Unpinned pip dependency in setup script Supply Chain | scripts/setup.py:48 |
| Info | SKILL.md capability mapping is informal Doc Mismatch | SKILL.md:1 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md declares config writes to ~/.config/seo-agi/ and output writes to ~/Doc… |
| Network | READ | READ | ✓ Aligned | SKILL.md declares DataForSEO and GSC API calls for research data |
| Shell | NONE | WRITE | ✓ Aligned | setup.py:48 uses subprocess for pip install, documented as setup step |
| Environment | READ | READ | ✓ Aligned | env.py:53-60 reads specific API key env vars (DATAFORSEO_*, GSC_*, AHREFS_*, SEM… |
| Database | NONE | NONE | — | No database access observed |
10 findings
Medium External URL 外部 URL
https://dataforseo.com README.md:241 Medium External URL 外部 URL
https://x.com/hreg15 README.md:361 Medium External URL 外部 URL
https://competitor1.com/jfk-parking fixtures/serp_sample.json:25 Medium External URL 外部 URL
https://competitor2.com/airports/jfk/parking fixtures/serp_sample.json:44 Medium External URL 外部 URL
https://schema.org references/schema-patterns.md:10 Medium External URL 外部 URL
https://search.google.com/test/rich-results references/schema-patterns.md:140 Medium External URL 外部 URL
https://validator.schema.org/ references/schema-patterns.md:141 Medium External URL 外部 URL
https://app.dataforseo.com/api-dashboard\n scripts/setup.py:66 Medium External URL 外部 URL
https://other.com/page tests/test_dataforseo.py:38 Info Email 邮箱地址
[email protected] tests/test_dataforseo.py:137 File Tree
20 files · 111.5 KB · 3123 lines Python 10f · 1526L
Markdown 7f · 1507L
JSON 2f · 85L
Text 1f · 5L
├─
▾
fixtures
│ ├─
keywords_sample.json
JSON
│ └─
serp_sample.json
JSON
├─
▾
references
│ ├─
page-templates.md
Markdown
│ ├─
quality-checklist.md
Markdown
│ └─
schema-patterns.md
Markdown
├─
▾
scripts
│ ├─
▾
lib
│ │ ├─
__init__.py
Python
│ │ ├─
env.py
Python
│ │ ├─
gsc_client.py
Python
│ │ └─
serp_analyze.py
Python
│ ├─
gsc_pull.py
Python
│ ├─
research.py
Python
│ └─
setup.py
Python
├─
▾
tests
│ ├─
test_dataforseo.py
Python
│ ├─
test_env.py
Python
│ └─
test_serp_analyze.py
Python
├─
CLAUDE.md
Markdown
├─
README.md
Markdown
├─
requirements.txt
Text
├─
SKILL.md
Markdown
└─
SPEC.md
Markdown
Dependencies 3 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
requests | >=2.28.0 | pip | No | Minimum version specified in requirements.txt |
google-auth | * | pip (optional) | No | Optional dependency for GSC support, not installed by default |
google-api-python-client | * | pip (optional) | No | Optional dependency for GSC support, not installed by default |
Security Positives
✓ No credential exfiltration detected - API keys stored locally in ~/.config/seo-agi/.env only
✓ No obfuscation techniques - no base64, eval(), or dynamic code execution
✓ No sensitive path access - does not read ~/.ssh, ~/.aws, or similar credential directories
✓ No hidden functionality - all operations match documented behavior
✓ No reverse shell, C2 communication, or data theft patterns
✓ Environment variable access is targeted (specific API keys only), not enumerating all env vars
✓ Proper error handling with graceful fallbacks (mock mode when no API keys)
✓ Test suite includes unit tests for all core modules