Evolver
Turn agent runtime signals into auditable GEP evolution prompts.
Per-dimension scores and reasoning
Evidence: README explicitly states Evolver does not auto-edit code, does not execute arbitrary shell commands, and validation commands have whitelist and timeout (least_privilege 2). Provides --review mode for human confirmation (user_confirmation 2). Data flow transparency: README describes log scanning, Gene selection, GEP prompt generation, and event recording, but lacks detailed data flow diagrams (data_flow_transparency 2). Sensitive data handling: README mentions sanitization before GitHub issue reporting, and tests include secret handling logic, but not comprehensive (sensitive_data_handling 2). Dependency security: package.json lists dependencies, but no vulnerability scanning or audit evidence (dependency_security 1). External effects: Clearly states no automatic code execution, but there is network connectivity and automatic issue reporting (external_effects 2). Rollback: README mentions using git for rollback, but no implementation details (rollback 2). Source attribution: README acknowledges contributors, but publisher identity unverified (source_attribution 2).
Self-consistency: README and test files are consistent, but actual execution not verified (self_consistency 2). Dependency availability: Dependency list exists, but version availability not verified (dependency_availability 1). Failure messages: Tests cover error handling, but no user-facing failure message examples (failure_messages 2).
Audience and scenarios: README clearly defines target users and use cases (audience_and_scenarios 2). Capability boundaries: Clearly states what it can and cannot do (capability_boundaries 2). Trigger precision: Provides strategy presets and signal deduplication, but not detailed trigger conditions (trigger_precision 2). Environment fit: Supports multiple platform integrations, but not detailed configuration for all environments (environment_fit 2).
Information architecture: README is well-structured with TOC and sections (information_architecture 2). Install notes: Provides npm and source installation steps (install_notes 2). Naming stability: Versioning follows SemVer, but no naming conventions (naming_stability 2). Examples and FAQ: Provides multiple examples and FAQ (examples_and_faq 2). Known limitations: README mentions some limitations, but not exhaustive (known_limitations 2). License: GPL-3.0 license file present (license 2). Versioning and changelog: README mentions GitHub Releases, but no detailed changelog (versioning_changelog 2). Maintenance responsibility: README provides contribution guide, but maintainers not explicit (maintenance_responsibility 2).
Output usability: Output is GEP prompts, but no output format examples (output_usability 2). Marginal value: Provides unique features, but no comparison with other tools (marginal_value 2). Cost-benefit: No performance or cost data (cost_benefit 1).
Claim traceability: README cites arXiv paper and blog, but no specific data (claim_traceability 2). Cross-source corroboration: Only relies on README and tests, no independent verification (cross_source_corroboration 1). Fact-inference separation: README distinguishes facts and inferences, but not explicitly labeled (fact_inference_separation 2).
- Publisher identity unverified; proceed with caution.
- Dependency security lacks audit evidence; check for vulnerabilities.
- arXiv paper and performance claims not verified within repository.
- Core engine modules are obfuscated, potentially affecting auditability.
What does this agent do, and when should you use it?
Evolver is a Node.js CLI self-evolution engine for AI-agent projects whose primary output is a protocol-bound prompt, not a code patch. It reads signals and logs from a project's memory directory, selects local Genes or Capsules, and records EvolutionEvents for traceability. Core operation is offline and runs inside a Git repository; EvoMap Hub connectivity adds network functions such as skill sharing, heartbeats, worker-pool participation, and asset publishing. Hook setup is documented for Cursor, Claude Code, Codex, Kiro, and opencode, while OpenClaw can interpret supported stdout directives during a session. It fits teams that want repeatable, reviewable prompt evolution, not users seeking an autonomous source-code editor.
A standard evolver run scans ./memory/ for runtime logs, error patterns, and signals, creating the directory if needed. It selects a Gene or Capsule from the local GEP store, including <workspace>/.evolver/gep/genes.json and capsules.json; src/gep/selector.js performs signal-based selection and src/gep/prompt.js builds the GEP prompt with a JSON selector decision. The command prints that prompt to stdout and records an EvolutionEvent locally; evolver --review waits for human confirmation, and evolver --loop repeats cycles with adaptive sleep. src/gep/solidify.js may run a Gene's validation commands, but allows only node, npm, or npx prefixes, rejects command substitution and common shell operators, scopes execution to the repository root, and applies a 180-second timeout per command.
- An agent-platform team maintaining recurring prompt failures and runtime logs that wants to encode verified fixes as reusable Genes and Capsules.
- A developer working in a Git repository who wants to inspect proposed evolution guidance with evolver --review before making changes manually.
- A Claude Code team that wants lifecycle-hook integration through evolver setup-hooks --platform=claude-code.
- An OpenClaw user running Evolver inside a live session where the host can consume emitted sessions_spawn(...) stdout directives.
- A compliance-conscious engineering group that needs an EvolutionEvent trail for each evolution cycle.
What are this agent's strengths and limitations?
- The core path—from log scanning through prompt generation and EvolutionEvent recording—can run locally without network access.
- Genes, Capsules, and event records make recurring evolution assets reusable and auditable rather than leaving only one-off prompt edits.
- Validation execution has documented guardrails: command-prefix allowlisting, shell-operator rejection, repository-root scoping, and timeouts.
- It provides review mode, continuous-loop mode, strategy presets, and documented hook setup for several coding-agent runtimes.
- It is a prompt generator rather than a source-code patcher, so a human or host runtime must carry out any resulting change.
- It requires a Git-initialized working directory and Node.js >= 18.
- Codex does not provide a session-transcript file to this integration, so --review cannot read raw Codex session logs and early cycles may report advisory missing-memory signals.
- Hub features such as worker-pool work, skill downloads, and asset sharing require network configuration; worker tasks also require both WORKER_ENABLED=1 locally and the Hub-side worker toggle.
- The repository states that core evolution-engine modules are distributed in obfuscated form and that future releases will move toward source-available, which can be a concern for teams needing fully inspectable source.
How do you install or deploy this agent?
Requirements: Node.js >= 18 and Git. Install the CLI and verify it is available:
npm install -g @evomap/evolver
evolver --helpRun it from a Git-initialized repository. Core functionality requires neither network access nor credentials. To enable Hub features, create .env in the project working directory where evolver runs:
A2A_HUB_URL=https://evomap.ai
A2A_NODE_ID=your_node_id_hereHow do you use this agent?
From a Git repository, run:
evolver
A successful initial run scans ./memory/, selects a local Gene or Capsule, prints a GEP prompt to stdout, and writes an audit event. Use evolver --review for human confirmation or evolver --loop for a continuous background loop. Set EVOLVE_STRATEGY to innovate, harden, or repair-only when needed, for example:
EVOLVE_STRATEGY=harden evolver --loopFor Codex lifecycle hooks, run evolver setup-hooks --platform=codex. That integration does not provide raw session transcripts; routing Codex model traffic through Evolver Proxy additionally requires an OpenAI Responses-compatible custom provider aimed at the proxy's /v1 endpoint.