Tóm tắt nhanh
Evolver là một self-evolution engine dành cho AI Agent, vận hành theo mô hình GEP để biến các lần chỉnh prompt rời rạc thành tài sản tiến hóa có cấu trúc, có thể tái sử dụng và kiểm toán.
Điểm quan trọng nhất là Evolver không tự ý vá mã nguồn. Thay vào đó, nó quét log trong
memory/, chọn Gene hoặc Capsule phù hợp, rồi sinh ra prompt GEP có ràng buộc để điều hướng bước cải tiến kế tiếp.Với cách tiếp cận này, nhóm phát triển có thể chuẩn hóa quá trình thích nghi của agent, giảm sửa thủ công lặp lại, giữ được audit trail và đưa evolution vào vòng đời vận hành một cách có kiểm soát.
Trong hệ sinh thái AI Agent hiện nay, điểm nghẽn phổ biến không nằm ở việc tạo ra một agent đầu tiên, mà nằm ở khả năng duy trì và cải thiện nó theo thời gian. Khi log lỗi tăng lên, hành vi agent lệch mục tiêu hoặc prompt bị vá chắp vá qua nhiều vòng thử nghiệm, hệ thống nhanh chóng mất tính nhất quán. Evolver được thiết kế để xử lý đúng bài toán đó: đưa việc tự cải thiện của agent vào một quy trình có cấu trúc, có tín hiệu đầu vào, có chiến lược và có lịch sử tiến hóa rõ ràng.
Theo mô tả chính thức, Evolver là “GEP-powered self-evolution engine for AI agents”. Công cụ này phân tích runtime history, trích xuất tín hiệu từ log, sau đó sinh ra các prompt tiến hóa theo giao thức GEP thay vì để con người liên tục chỉnh prompt theo cảm tính. Cách làm này đặc biệt phù hợp với lập trình viên AI, nhà nghiên cứu machine learning và kỹ sư hệ thống đang xây dựng agent cần tự thích nghi nhưng vẫn phải bảo đảm khả năng kiểm toán, khả năng rollback và tính tái lập.
Một điểm cần làm rõ ngay từ đầu: Evolver không phải là hệ thống “tự sửa code vô điều kiện”. Trong chế độ chuẩn, nó là prompt generator có ràng buộc giao thức. Nó quét tín hiệu, đề xuất hướng tiến hóa, ghi lại EvolutionEvent và để runtime chủ hoặc con người quyết định việc áp dụng thay đổi. Chính giới hạn này làm cho Evolver phù hợp với môi trường production hơn các cơ chế tự sửa mã quá tự do.

Nguyên lý hoạt động của GEP trong Evolver
GEP-powered self-evolution engine là gì
Trong ngữ cảnh của Evolver, GEP có thể hiểu là lớp giao thức chuẩn hóa cho quá trình tiến hóa của agent. Thay vì coi mỗi lần tối ưu prompt là một thao tác riêng lẻ khó lặp lại, Evolver biến chúng thành các thực thể có cấu trúc như Gene, Capsule và EvolutionEvent. Điều này giúp evolution không còn là chuỗi chỉnh sửa ngẫu hứng mà trở thành một pipeline có thể lưu trữ, so sánh, tái sử dụng và kiểm tra hậu quả.
Ba pha cốt lõi của engine
Tài liệu giới thiệu mô tả kiến trúc của Evolver theo ba pha chính. Pha đầu tiên là signal extraction: hệ thống đọc log và history trong thư mục memory/ để phát hiện lỗi, dấu hiệu trì trệ hoặc cơ hội tối ưu. Pha thứ hai là asset selection: bộ chọn trong lớp GEP chấm điểm và chọn Gene hoặc Capsule phù hợp nhất với tín hiệu đang có. Pha cuối là prompt generation: engine sinh prompt GEP có ràng buộc rõ ràng về chiến lược, xác thực và phạm vi thay đổi.
Gene, Capsule và EvolutionEvent hoạt động ra sao
assets/gep/ là nơi Evolver lưu các tài sản tiến hóa chính như genes.json, capsules.json và events.jsonl. Có thể hình dung Gene là các mẫu chiến lược hoặc pattern sửa đổi có thể tái dùng; Capsule là gói tri thức hoặc hành vi tiến hóa ở mức đóng gói hơn; còn EvolutionEvent là nhật ký chính thức của từng lần engine đề xuất hoặc thực hiện một vòng tiến hóa. Với cách tổ chức này, cùng một lỗi lặp lại trong nhiều agent khác nhau có thể được ánh xạ về cùng một Gene thay vì sửa lại từ đầu.
Evolver tự viết lại code đến mức nào
Câu trả lời chính xác là: không trực tiếp. README nêu rất rõ rằng Evolver là prompt generator, không phải code patcher. Nó không tự động chỉnh sửa source code trong chế độ standalone, cũng không chạy lệnh shell tùy ý. Nếu bạn chạy trong một host runtime như OpenClaw, các chỉ thị in ra stdout có thể được runtime đó diễn giải để kích hoạt bước kế tiếp; còn khi chạy độc lập, chúng chỉ là đầu ra văn bản. Đây là ranh giới kỹ thuật quan trọng khi thiết kế hệ thống agent tự tiến hóa an toàn.
Hướng dẫn cài đặt Evolver
Yêu cầu hệ thống và lưu ý môi trường
Dù nhiều đội ngũ AI đang xây hệ thống bằng Python, yêu cầu chính thức của Evolver hiện là Node.js >= 18 và Git. Git là thành phần bắt buộc vì Evolver dùng nó cho rollback, blast radius calculation và solidify. Nói cách khác, nếu stack agent của bạn là Python, cách tích hợp hợp lý là dùng Evolver như một CLI hoặc tiến trình phụ song song với agent Python, thay vì cố cài nó như một package Python thuần.
node -v
git --version
npm -vCài đặt nhanh qua npm
Cách cài đặt được khuyến nghị là dùng gói CLI chính thức. Đây là lựa chọn phù hợp khi bạn muốn đưa Evolver vào pipeline hiện có mà không cần sửa mã nguồn của chính engine.
npm install -g @evomap/evolver
evolver --helpNếu gặp lỗi quyền ghi EACCES trên Linux hoặc macOS, tài liệu khuyến nghị cấu hình npm prefix ở cấp người dùng thay vì dùng sudo.
npm config set prefix ~/.npm-global
echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrcCài đặt từ Github để nghiên cứu và tùy biến
Nếu mục tiêu của bạn là đọc mã nguồn, kiểm tra selector GEP hoặc thử các bản chưa phát hành, hãy clone trực tiếp từ repo EvoMap/evolver. Đây cũng là cách phù hợp cho nhóm nghiên cứu cần audit nội bộ.
git clone https://github.com/EvoMap/evolver.git
cd evolver
npm installHướng dẫn sử dụng Evolver
Thiết lập cấu hình ban đầu
Evolver có thể chạy hoàn toàn offline. Kết nối với EvoMap Hub là tùy chọn, chỉ cần khi bạn muốn dùng network features như skill sharing, worker pool hoặc leaderboard. Ở mức tối thiểu, bạn nên xác định chiến lược tiến hóa và thư mục log.
cat > .env <<'EOF'
EVOLVE_STRATEGY=balanced
MEMORY_DIR=./memory
A2A_HUB_URL=https://evomap.ai
A2A_NODE_ID=your_node_id_here
EOFNếu bạn chưa cần kết nối mạng, có thể bỏ A2A_HUB_URL và A2A_NODE_ID. Core evolution vẫn hoạt động cục bộ.
Chuẩn bị một tác vụ thử để quan sát quá trình tự tiến hóa
Để nhìn thấy luồng hoạt động rõ hơn, hãy mô phỏng một log lỗi trong thư mục memory/. Điều này giúp Evolver có tín hiệu đầu vào thay vì chạy trên môi trường trống.
mkdir -p memory
cat > memory/runtime.log <<'EOF'
[error] tool invocation failed: timeout while calling search endpoint
[warn] repeated failure pattern detected in planning loop
[info] agent retried same strategy 4 times without improvement
EOFChạy vòng tiến hóa đầu tiên
Lệnh cơ bản nhất là node index.js. Khi chạy, Evolver sẽ quét memory/, đối chiếu tín hiệu với Gene hoặc Capsule có sẵn trong assets/gep/, rồi in ra một GEP-guided evolution prompt. Nếu muốn có người duyệt trước khi áp dụng, dùng --review. Nếu muốn chạy liên tục theo vòng lặp, dùng --loop.
node index.js
node index.js --review
node index.js --loopBạn cũng có thể ép engine nghiêng về đổi mới, ổn định hoặc sửa lỗi bằng preset chiến lược:
EVOLVE_STRATEGY=innovate node index.js --loop
EVOLVE_STRATEGY=harden node index.js --loop
EVOLVE_STRATEGY=repair-only node index.js --loopCách đọc kết quả đúng về mặt kỹ thuật
Nếu đây là lần đầu dùng Evolver, điều quan trọng nhất là hiểu rằng “tự tiến hóa” ở đây không đồng nghĩa với “tự động sửa tất cả”. Kết quả đầu ra của engine là prompt có cấu trúc, bám theo giao thức GEP và được ghi nhận thành EvolutionEvent. Đây là cơ chế rất phù hợp để đưa agent vào chu trình quan sát log, đề xuất chiến lược, đánh giá rủi ro rồi mới thực thi thay đổi ở tầng host runtime hoặc human review.
Evolver đặc biệt có giá trị khi bạn vận hành agent lâu dài, có log phong phú, có các lỗi lặp lại và cần biến kinh nghiệm sửa lỗi thành tài sản chung của nhóm. Ngược lại, với script dùng một lần, môi trường không có Git hoặc dự án chỉ cần thay đổi sáng tạo tự do, chi phí giao thức của Evolver có thể là dư thừa. Nếu bạn muốn bắt đầu từ tài liệu gốc, repo Evolver trên GitHub là điểm vào tốt nhất để đọc README, xem cấu trúc assets/gep/ và thử các chế độ chạy khác nhau.








