Skip to main content

Get Started in 30 Seconds

The fastest way to see Capability Evolver in action:
1

Clone the repository

git clone https://github.com/autogame-17/evolver.git
cd evolver
2

Install dependencies

npm install
Requires Node.js >= 18 and Git. Evolver uses Git for rollback, blast radius calculation, and solidify operations.
3

Run your first evolution cycle

node index.js
This command will:
  • Analyze runtime history and logs in your workspace
  • Extract signals (errors, patterns, optimization opportunities)
  • Select appropriate Genes/Capsules from assets/gep/
  • Generate a GEP protocol prompt to guide evolution

What You’ll See

When you run node index.js, the output will show:
Starting capability evolver...
[Signal Extraction] Analyzing logs and history...
[Selector] Scoring Genes against signals...
[Prompt Generation] Emitting GEP protocol prompt...

=======================================================
Capability evolver finished. If you use this project, 
consider starring the upstream repository.
Upstream: https://github.com/autogame-17/capability-evolver
=======================================================
The evolver will generate evolution artifacts in the .evolution/ directory (or your configured evolution directory).

Evolution Modes

node index.js

Mode Descriptions

  • Standard Run: Analyzes history once and generates evolution prompt
  • Review Mode: Pauses for human approval before applying changes - use node index.js review --approve or --reject
  • Continuous Loop: Runs evolution cycles continuously with adaptive sleep intervals
  • Strategy Presets: Control evolution intent balance (balanced, innovate, harden, repair-only)

Review Workflow

For production environments, use review mode to inspect changes before applying:
1

Run evolution with review flag

node index.js --review
2

Inspect the generated changes

node index.js review
This shows:
  • Selected Gene (ID, category, strategy)
  • Extracted signals
  • Mutation details (category, risk level, rationale)
  • Blast radius estimate (files/lines changed)
  • Full git diff of pending changes
3

Approve or reject

# Approve and solidify changes
node index.js review --approve

# Reject and rollback
node index.js review --reject

Understanding Strategy Presets

Control evolution behavior with EVOLVE_STRATEGY:
# Maximize new features and exploration
EVOLVE_STRATEGY=innovate node index.js --loop

# Focus on stability and error reduction
EVOLVE_STRATEGY=harden node index.js --loop

# Emergency fix mode - repairs only
EVOLVE_STRATEGY=repair-only node index.js --loop

# Balance innovation and stability (default)
EVOLVE_STRATEGY=balanced node index.js
repair-only strategy disables all optimization and innovation - use only for emergency stabilization.

Lifecycle Management

For production deployments, use the operations module:
node src/ops/lifecycle.js start
The lifecycle manager provides:
  • Background daemon process management
  • Graceful shutdown (SIGTERM → SIGKILL)
  • Health monitoring and auto-restart on stagnation
  • Portable, zero platform dependency

Example Output Structure

After running evolver, you’ll see these artifacts:
.evolution/
├── evolution_solidify_state.json  # Current evolution state
├── assets/gep/
│   ├── genes.json                  # Reusable Gene definitions
│   ├── capsules.json               # Success capsules
│   └── events.jsonl                # Append-only evolution events
The GEP protocol ensures all evolution is auditable. Each evolution cycle produces an EvolutionEvent with parent lineage, signals, selected assets, and validation results.

Next Steps

Full Installation Guide

Complete setup including EvoMap registration, configuration options, and verification

Configuration Reference

Environment variables, strategy presets, and advanced options

Quick FAQ

Does this edit code automatically?
No. It generates a protocol-bound prompt and assets that guide evolution. Use review mode for human-in-the-loop approval.
Do I need to use all GEP assets?
No. You can start with default Genes and extend over time. The selector will prefer existing assets based on signal matching.
Is this safe in production?
Use review mode and validation steps. Treat it as a safety-focused evolution tool, not a live patcher. Always test changes in staging first.

Build docs developers (and LLMs) love