Scan Report
20 /100
capability-evolver
A GEP-powered self-evolution engine for AI agents. Features automated log analysis and Genome Evolution Protocol (GEP) for auditable, reusable evolution assets.
A legitimate self-evolution meta-skill with comprehensive safety controls. The only notable finding is hardcoded test credential strings in test files, which pose no production risk as they are test fixtures used to verify the redaction sanitizer.
Safe to install
Remove hardcoded API key test fixtures from test/sanitize.test.js and replace with dynamically generated mock values. No other action required - the codebase demonstrates strong security engineering.
Findings 2 items
| Severity | Finding | Location |
|---|---|---|
| Low | Hardcoded credential strings in test fixtures Supply Chain | test/sanitize.test.js:10 |
| Low | Dangerous command in test data Doc Mismatch | test/skillDistiller.test.js:210 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md declares write to workspace/assets/**, memory/**, src/** |
| Network | READ | READ | ✓ Aligned | HTTP to api.github.com and evomap.ai per network_endpoints declaration |
| Shell | WRITE | WRITE | ✓ Aligned | git/node/npm/ps/df commands per shell_commands declaration |
| Environment | READ | READ | ✓ Aligned | Reads env vars for config per env_declarations |
5 Critical 16 findings
Critical API Key 硬编码 API 密钥
sk-abcdefghijklmnopqrstuvwxyz test/sanitize.test.js:10 Critical API Key 硬编码 API 密钥
ghp_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx test/sanitize.test.js:19 Critical API Key 硬编码 API 密钥
gho_abcdefghijklmnopqrstuvwxyz1234567890 test/sanitize.test.js:21 Critical API Key 硬编码 API 密钥
AKIAIOSFODNN7EXAMPLE test/sanitize.test.js:29 Critical Dangerous Command 危险 Shell 命令
rm -rf / test/skillDistiller.test.js:210 Medium External URL 外部 URL
https://evomap.ai README.md:5 Medium External URL 外部 URL
https://evomap.ai/wiki README.md:5 Medium External URL 外部 URL
https://api.star-history.com/svg?repos=autogame-17/evolver&type=Date README.md:269 Medium External URL 外部 URL
https://star-history.com/#autogame-17/evolver&Date README.md:269 Medium External URL 外部 URL
https://mowen.cn README.md:284 Medium External URL 外部 URL
https://evomap.ai/claim/ SKILL.md:147 Medium External URL 外部 URL
https://www.clawhub.ai scripts/publish_public.js:410 Medium External URL 外部 URL
https://evomap.ai/terms src/gep/skillPublisher.js:162 Info Email 邮箱地址
[email protected] package.json:19 Info Email 邮箱地址
[email protected] test/sanitize.test.js:57 Info Email 邮箱地址
[email protected] test/sanitize.test.js:74 File Tree
77 files · 646.0 KB · 17565 lines JavaScript 69f · 16508L
Markdown 4f · 827L
JSON 4f · 230L
├─
▾
assets
│ └─
▾
gep
│ ├─
capsules.json
JSON
│ └─
genes.json
JSON
├─
▾
scripts
│ ├─
a2a_export.js
JavaScript
│ ├─
a2a_ingest.js
JavaScript
│ ├─
a2a_promote.js
JavaScript
│ ├─
analyze_by_skill.js
JavaScript
│ ├─
build_public.js
JavaScript
│ ├─
extract_log.js
JavaScript
│ ├─
generate_history.js
JavaScript
│ ├─
gep_append_event.js
JavaScript
│ ├─
gep_personality_report.js
JavaScript
│ ├─
human_report.js
JavaScript
│ ├─
publish_public.js
JavaScript
│ ├─
recover_loop.js
JavaScript
│ ├─
suggest_version.js
JavaScript
│ └─
validate-modules.js
JavaScript
├─
▾
src
│ ├─
▾
gep
│ │ ├─
a2a.js
JavaScript
│ │ ├─
a2aProtocol.js
JavaScript
│ │ ├─
analyzer.js
JavaScript
│ │ ├─
assetCallLog.js
JavaScript
│ │ ├─
assets.js
JavaScript
│ │ ├─
assetStore.js
JavaScript
│ │ ├─
bridge.js
JavaScript
│ │ ├─
candidates.js
JavaScript
│ │ ├─
contentHash.js
JavaScript
│ │ ├─
deviceId.js
JavaScript
│ │ ├─
envFingerprint.js
JavaScript
│ │ ├─
hubReview.js
JavaScript
│ │ ├─
hubSearch.js
JavaScript
│ │ ├─
issueReporter.js
JavaScript
│ │ ├─
llmReview.js
JavaScript
│ │ ├─
memoryGraph.js
JavaScript
│ │ ├─
memoryGraphAdapter.js
JavaScript
│ │ ├─
mutation.js
JavaScript
│ │ ├─
narrativeMemory.js
JavaScript
│ │ ├─
paths.js
JavaScript
│ │ ├─
personality.js
JavaScript
│ │ ├─
prompt.js
JavaScript
│ │ ├─
questionGenerator.js
JavaScript
│ │ ├─
reflection.js
JavaScript
│ │ ├─
sanitize.js
JavaScript
│ │ ├─
selector.js
JavaScript
│ │ ├─
signals.js
JavaScript
│ │ ├─
skillDistiller.js
JavaScript
│ │ ├─
skillPublisher.js
JavaScript
│ │ ├─
solidify.js
JavaScript
│ │ ├─
strategy.js
JavaScript
│ │ ├─
taskReceiver.js
JavaScript
│ │ └─
validationReport.js
JavaScript
│ ├─
▾
ops
│ │ ├─
cleanup.js
JavaScript
│ │ ├─
commentary.js
JavaScript
│ │ ├─
health_check.js
JavaScript
│ │ ├─
index.js
JavaScript
│ │ ├─
innovation.js
JavaScript
│ │ ├─
lifecycle.js
JavaScript
│ │ ├─
self_repair.js
JavaScript
│ │ ├─
skills_monitor.js
JavaScript
│ │ └─
trigger.js
JavaScript
│ ├─
canary.js
JavaScript
│ └─
evolve.js
JavaScript
├─
▾
test
│ ├─
a2aProtocol.test.js
JavaScript
│ ├─
contentHash.test.js
JavaScript
│ ├─
envFingerprint.test.js
JavaScript
│ ├─
mutation.test.js
JavaScript
│ ├─
sanitize.test.js
JavaScript
│ ├─
selector.test.js
JavaScript
│ ├─
signals.test.js
JavaScript
│ ├─
skillDistiller.test.js
JavaScript
│ ├─
strategy.test.js
JavaScript
│ └─
validationReport.test.js
JavaScript
├─
_meta.json
JSON
├─
CONTRIBUTING.md
Markdown
├─
index.js
JavaScript
├─
package.json
JSON
├─
README.md
Markdown
├─
README.zh-CN.md
Markdown
└─
SKILL.md
Markdown
Dependencies 1 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
dotenv | ^16.4.7 | npm | No | Version pinned with caret range |
Security Positives
✓ Validation command sanitization blocks all shell operators ([;&|><]), backticks, and $(command substitution)
✓ Ethics patterns block attempts to bypass safety/guardrails in gene strategies
✓ Critical path protection prevents modification of core skills and essential files
✓ Hard blast radius caps (60 files / 20000 lines) are enforced as absolute system limits
✓ Canary pre-solidify check verifies index.js loads before committing changes
✓ LLM review gate (EVOLVER_LLM_REVIEW) provides human-in-the-loop safety
✓ Credential redaction via redactString() with comprehensive pattern coverage
✓ HMAC-SHA256 signing for A2A publish operations
✓ Critical path protected paths include all core skills (evolver, feishu-*, clawhub, git-sync)