Four-perspective automated inspection and iteration manager.
Make your projects continuously better — automatically.
auto-evolve is not just a code scanner — it's a巡检伙伴 that thinks like a human.
On each scan, auto-evolve simulates receiving a Feishu message:
"What else can this project improve? Any shortcomings?"
It then examines the project from four perspectives, forming real opinions — not mechanically listing issues.
text
auto-evolve scan
│
▼
┌─────────────────────────────────────────────────────┐
│ Step 1: project-standard project type detection │
│ Detects: Skill / CLI / Python Library / Web / ... │
│ Determines perspective weights + inspection focus │
└─────────────────────┬───────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ Step 2: Four-perspective inspection │
│ │
│ 👤 USER → user/user-perspective.md (criteria) │
│ 📦 PRODUCT → product-requirements.md (criteria) │
│ 🏗 PROJECT → project-inspection.md (criteria) │
│ ⚙️ TECH → code-standards.md (criteria) │
└─────────────────────┬───────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ Step 3: project-standard reference docs │
│ Used as evaluation criteria, output grouped report │
└─────────────────────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ Step 4: Execute / Notify / Record to learnings │
└─────────────────────────────────────────────────────┘
ComponentRoleproject-standardDefines taxonomy + four-perspective framework + reference docs (judging criteria)auto-evolveLoads standards, runs inspection, records learnings, executes improvements
text
┌─────────────────────────────────────────────────────┐
│ auto-evolve Inspection Framework v4.0 │
├──────────────┬──────────────────┬───────────────────┤
│ User │ Product │ Project │ Tech │
│ "Usable?" │ "Delivered?" │ "Healthy?" │ "Clean?" │
├──────────────┼──────────────────┼───────────────────┼──────────────────┤
│ CLI design │ Feature complete │ Learnings closed │ Code quality │
│ Learning │ Promise kept │ Scan history │ Architecture │
│ Errors │ Pain resolved │ Config rational │ Test coverage │
│ Fault tol. │ Docs match code │ Dependency health│ Performance │
└──────────────┴──────────────────┴───────────────────┴──────────────────┘
Core question: Is it pleasant to use?
AskFindsCLI designNon-intuitive flags, missing defaultsLearning curveHow long for a newcomer?Error messagesMachine-speak vs human-speakFault toleranceWhat on partial failure?WorkflowSteps per operation?
Core question: Does it deliver what it promises?
AskFindsREADME promisesFeatures claimed but not builtPain points❌-marked issues still brokenFeature completenessHalf-baked featuresDocs consistencyDocs ≠ code
Core question: Is it managed well?
AskFindsLearnings loopPrevious findings tracked?Scan rhythmRegular schedule?Config rationalityOver/under-configured?Dependency healthOutdated deps? Known CVEs?
Core question: Is the code healthy?
AskFindsCode qualityDuplicates, long functionsArchitectureModule couplingTest coverageCore logic tested?Performance/securityBottlenecks, vulnerabilities
Note: Tech is the lowest priority — it's important but should not overshadow product truth.
text
🔍 auto-evolve Inspection Report — soul-force
Generated: 2026-04-05 22:30
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
👤 User Perspective ★★★★★
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. 🚨 Impact 0.7
review command lacks --dry-run, users think it's safe but it writes files
→ Suggestion: Add --dry-run support to review
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📦 Product Perspective ★★★★
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1. 🚨 Impact 0.8
README promises "LLM fallback" but code has no fallback
API failure = tool failure
→ Suggestion: Implement keyword-based rule engine as fallback
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
⚙️ Tech Perspective ★★
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[opt] 🟡 duplicate_code: SoulForgeConfig init repeated 15 times
bash
# Scan all configured repos
python3 auto-evolve.py scan
# Single repo scan
python3 auto-evolve.py scan --repo /path/to/repo
# Preview mode (no execution)
python3 auto-evolve.py scan --dry-run
# With specific persona memory
python3 auto-evolve.py scan --recall-persona master
bash
python3 auto-evolve.py confirm
python3 auto-evolve.py reject 2 --reason "too risky"
python3 auto-evolve.py approve 1,3
bash
python3 auto-evolve.py repo-add ~/.openclaw/workspace/skills/hawk-bridge --type skill
python3 auto-evolve.py repo-list
bash
python3 auto-evolve.py schedule --every 168
python3 auto-evolve.py schedule --suggest
bash
python3 auto-evolve.py learnings
python3 auto-evolve.py learnings --type rejections
python3 auto-evolve.py learnings --summary # v4.3: summary view
bash
python3 auto-evolve.py trends --repo soul-force # Scan trend for a project
python3 auto-evolve.py trends --all # All projects
~/.auto-evolverc.json
json
{
"mode": "semi-auto",
"full_auto_rules": {
"execute_low_risk": true,
"execute_medium_risk": false,
"execute_high_risk": false
},
"schedule_interval_hours": 168,
"repositories": [
{
"path": "/path/to/repo",
"type": "skill",
"visibility": "public",
"auto_monitor": true
}
]
}
auto-evolve uses OpenClaw-configured LLM (no separate API key needed).
Priority: OPENAI_API_KEY / MINIMAX_API_KEY env vars, or openclaw config get llm.
text
.auto-evolve/
.iterations/
{id}/
manifest.json -- metadata + findings
plan.md -- execution plan
pending-review.json -- items pending review
report.md -- execution report
metrics.json -- iteration metrics
.learnings/
approvals.json -- approved changes
rejections.json -- rejected changes + reasons