Model or dataset
EvoMap/evolver avatar
EvoMap/evolver

Evolver: A GEP Engine That Turns Prompt Tweaks Into Auditable Assets

The GEP-powered self-evolving engine for AI agents. Auditable evolution with Genes, Capsules, and Events. | evomap.ai

8,742 stars852 forksJavaScriptGPL-3.0

At a glance

What is it?
Evolver is a GPL-3.0 Node.js CLI that encodes agent experience as Genes and Capsules under a protocol it calls GEP. It is aimed at teams who want their agent changes to be reviewable and reversible, and it depends on git for that.
Who is it for?
Adopt Evolver if your agent work happens inside a git repository and you want each change recorded as a named, reversible asset rather than a prompt edit nobody can trace. Skip it if you need a permissively licensed dependency in a closed product, or if your agent runs outside version control, because the README states that a non-git directory fails outright.
Can I use it commercially?
Yes, with conditions. GPL-3.0 is a copyleft licence: if you distribute software that includes it, you must release that software's source code under the same licence. Running it internally without distributing it does not trigger that obligation.
Is it still maintained?
Yes. The repository last received commits 3 days ago.
What is it written in?
Mainly JavaScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 14, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • EvoMap/evolver8,742 ★ · -317
Star history
Repository2026-09-112026-11-14
EvoMap/evolver9.1k8.7k

-317 Stars in the last 64 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

The Problem Evolver Targets: Prompt Edits With No Paper Trail

Most agent improvement happens as an edit to a prompt file. Someone notices the agent failing a task, rewrites a paragraph of instructions, and the change disappears into a commit or, worse, into a runtime config nobody versions. There is no record of which change helped, no way to roll one back in isolation, and no way to reuse the fix on a different agent. Evolver's README states the pain directly: it turns ad hoc prompt tweaks into auditable, reusable evolution assets. The intended reader is not a researcher building a training pipeline. It is an engineer who already runs an agent in a repository and wants the improvement loop to leave evidence behind. The README's keywords name protocol-constrained evolution, audit trail, genes and capsules, and prompt governance, which is a fair summary of where it sits: closer to change management for agent behaviour than to model training.

Genes, Capsules and Events: The GEP Asset Model

Evolver's abstraction is the Gene. The README describes the engine as encoding agent experience as Genes and Capsules under the GEP protocol, explicitly not as ad hoc prompts or skill docs. A Gene is a compact, reusable representation of a strategy; each run writes an EvolutionEvent into ./memory/ for audit. The project points to an arXiv paper, 2604.15097, for the reasoning behind this choice. According to the README's summary of that paper, across 4,590 controlled trials on 45 scientific code-solving scenarios, documentation-oriented Skill packages produced unstable and sparse control signal, while the Gene representation performed better under structural perturbation and carried iterative experience more effectively. The README also cites CritPt numbers from the paper: gene-evolved systems lifting paired base models from 9.1% to 18.57% and from 17.7% to 27.14%. Those figures come from the paper and the project's own reporting, not from any independent run, and the README itself frames the paper as the answer to why Evolver insists on Genes rather than longer skill documents. Treat the numbers as the project's argument for its design, not as a guarantee about your workload.

What Actually Happens On A Single Evolver Run

The README gives an ordered account of a first run. Evolver prints a banner showing the detected strategy preset, with balanced named as an example. It scans ./memory/ for logs and signals, creating that directory if it is missing. It then selects a matching Gene or Capsule from its built-in asset pool. What is clear is the data flow: local logs in ./memory/ are the input, a preset governs strategy, a built-in pool supplies the candidate asset, and the run emits a GEP prompt as its product. That is a retrieval-and-packaging loop rather than a learning loop. The engine is not training anything; it is choosing a pre-authored asset that matches the signals it found and rendering it into a prompt. That distinction matters when you evaluate whether Evolver fits a problem, because it means output quality is bounded by the asset pool and by how well your logs describe what went wrong.

Install, Run Modes, And The Git Requirement

Installation is a global npm package: npm install -g @evomap/evolver, then evolver --help to confirm the binary is on PATH. On Linux or macOS, the README recommends a user-level prefix rather than sudo, via npm config set prefix ~/.npm-global and a PATH export in your shell profile. The README lists Node.js 18 or later, but package.json's engines field now declares node >=22.12. Git is listed as required, not optional, and the README explains why: Evolver uses git for rollback, blast radius calculation, and solidify, and running it in a non-git directory fails with a clear error message. That is an unusually firm dependency for a CLI, and it tells you the tool is designed to sit inside a working tree it can inspect and revert. Three invocation shapes are documented. Plain evolver performs a single evolution run that scans logs, selects a Gene, and outputs a GEP prompt. evolver --review pauses before applying and waits for human confirmation. evolver --loop runs as a background daemon for continuous operation. Contributors who want unreleased builds run node index.js from a source checkout instead. For agent and skill integrations, the README points to a separate SKILL.md covering a Proxy mailbox API that wraps the CLI, and notes that you still install through the CLI path first.

The Limitation That Matters: A Built-In Pool And A Git-Shaped Blast Radius

Two constraints stand out. First, selection happens against a built-in asset pool. If your domain is not represented in that pool, the selected asset may fit your problem poorly. Second, the git dependency is not a formality. Rollback, blast radius calculation, and solidify all read from version control, so Evolver's notion of safety is scoped to a repository. An agent operating on external systems, a database, a deployed service, or a third-party API sits outside what git can revert. In those cases the review mode, evolver --review, is doing more of the safety work than the rollback machinery is, and a human has to actually read the proposed change. The loop mode deserves the same scrutiny: a background daemon that continuously selects and applies assets is a poor fit for any environment where the side effects of a bad prompt are not confined to files you can check out again.

How Evolver Differs From A Skill Library Like Anthropic's Skills

The nearest comparison is a documentation-oriented skill package, the approach the README's cited paper argues against. A skill library stores procedural instructions as prose or markdown that a model reads at inference time. Evolver stores strategy as Genes and Capsules, and the paper's claim is that this compact form produces a stronger and more stable control signal than documentation does, and survives structural perturbation better. The practical difference is where the knowledge lives. In a skill library, the artifact is text a human wrote and a model interprets. In Evolver, the artifact is a selected asset that the engine matches against logged signals, with a preset governing the selection policy. That gives Evolver an audit story a folder of markdown files does not have, since the selection step is a recorded event rather than an implicit read. It also gives it a narrower one: a skill document can describe anything, while a Gene pool can only offer what has been encoded into it. If your agent's problems are idiosyncratic and undocumented, a plain skill file plus a code review may get you further than waiting for the pool to catch up.

Licence, Release Cadence, And The Move To Source-Available

Evolver is GPL-3.0-or-later, having started as MIT at its first release on 2026-02-01 and switched on 2026-04-09. The README carries a notice that future releases will transition from fully open source to source-available, citing a similarity dispute with another project in the same lane. The README states that all already-published MIT and GPL-3.0 versions remain freely usable under their original terms, and that npm install and cloning still work. The licence implication is straightforward to state and not mine to adjudicate: GPL-3.0 is a copyleft licence, so if you link or distribute Evolver as part of a larger work, the terms of that licence apply to the distribution. Teams that need a permissive licence for a closed product should confirm with their own counsel which version they are pulling and under what terms, because the README says the terms of future releases will differ from the ones published so far. On maintenance, the visible signal is cadence: v2.0.46, v2.0.47 and v2.0.48 landed between 2026-10-24 and 2026-11-01, and the repository is not archived. Rapid patch releases are consistent with an actively developed tool, and they also mean the surface you pin today will move. Pinning a specific version rather than tracking latest is the conservative choice given that the licence itself is scheduled to change.

Editorial conclusion

Adopt Evolver if your agent work happens inside a git repository and you want each change recorded as a named, reversible asset rather than a prompt edit nobody can trace. Skip it if you need a permissively licensed dependency in a closed product, or if your agent runs outside version control, because the README states that a non-git directory fails outright. Before committing, verify two things: which release tag you are actually installing, since the README says future releases will be source-available rather than open source, and whether the Gene pool it ships covers your domain, because the engine selects from a built-in asset pool rather than composing a strategy from scratch.

Frequently asked questions

What is Evolver AI?

Evolver is EvoMap's self-evolution engine for AI agents, published as the @evomap/evolver npm package. A run scans ./memory/ for logs, selects a matching Gene or Capsule from a built-in asset pool, and prints a GEP prompt for the agent to consume.

What is the difference between Evolver and Hermes?

The project publishes its own comparison, titled Hermes Agent Self-Evolution vs. Evolver: A Detailed Similarity Analysis, after saying that in March 2026 another project in the same lane released a system with similar memory, skill and evolution-asset design without attribution. The comparison comes from Evolver's own side.

Does Evolver need a git repository to run?

Yes. Git is listed as required because Evolver uses it for rollback, blast radius calculation, and solidify, and running in a non-git directory fails with a clear error message.

Official sources

  1. EvoMap/evolver on GitHub
  2. License: GPL-3.0
  3. Project website
  4. README
  5. Releases
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/evomap-evolver.svg)](https://hysenlabs.com/projects/evomap-evolver)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/evomap-evolver.svg)](https://hysenlabs.com/projects/evomap-evolver)

Was this useful?