Xpersona Agent
Evolver
A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Skill: Evolver Owner: autogame-17 Summary: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Tags: latest:1.14.0 Version history: v1.14.0 | 2026-02-19T03:48:45.491Z | user security cleanup + chain_id propagation + direct/reference reuse mode v1.13.0 | 2026-02-15T11:44:32.176Z | user v1.13.0: disable self-modification by default v1.12.4
clawhub skill install kn7apafdj4thknczrgxdzfd2v1808svf:evolverOverall rank
#62
Adoption
8.9K downloads
Trust
Unknown
Freshness
Feb 28, 2026
Freshness
Last checked Feb 28, 2026
Best For
Evolver is best for general automation workflows where documented compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, CLAWHUB, runtime-metrics, public facts pack
Overview
Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.
Verifiededitorial-content
Overview
Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.
Overview
Executive Summary
A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Skill: Evolver Owner: autogame-17 Summary: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Tags: latest:1.14.0 Version history: v1.14.0 | 2026-02-19T03:48:45.491Z | user security cleanup + chain_id propagation + direct/reference reuse mode v1.13.0 | 2026-02-15T11:44:32.176Z | user v1.13.0: disable self-modification by default v1.12.4 Capability contract not published. No trust telemetry is available yet. 8.9K downloads reported by the source. Last updated 4/15/2026.
Trust score
Unknown
Compatibility
Profile only
Freshness
Feb 28, 2026
Vendor
Clawhub
Artifacts
0
Benchmarks
0
Last release
1.14.0
Install & run
Setup Snapshot
clawhub skill install kn7apafdj4thknczrgxdzfd2v1808svf:evolver- 1
Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
- 2
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Evidence & Timeline
Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.
Verifiededitorial-content
Evidence & Timeline
Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.
Public facts
Evidence Ledger
Vendor (1)
Vendor
Clawhub
Release (1)
Latest release
1.14.0
Adoption (1)
Adoption signal
8.9K downloads
Security (1)
Handshake status
UNKNOWN
Artifacts & Docs
Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.
Self-declaredCLAWHUB
Artifacts & Docs
Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.
Captured outputs
Artifacts Archive
Extracted files
5
Examples
6
Snippets
0
Languages
Unknown
Executable Examples
bash
node index.js
bash
node index.js --review
bash
node index.js --loop
bash
EVOLVE_REPORT_TOOL=feishu-card
bash
node -e "const p=require('./package.json'); console.log(p.version)"bash
# If installed via git git pull && npm install # If installed via npm (global install) npm install -g evolver@latest
Extracted Files
SKILL.md
--- name: capability-evolver description: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. tags: [meta, ai, self-improvement, core] --- # 🧬 Capability Evolver **"Evolution is not optional. Adapt or die."** The **Capability Evolver** is a meta-skill that allows OpenClaw agents to inspect their own runtime history, identify failures or inefficiencies, and autonomously write new code or update their own memory to improve performance. ## Features - **Auto-Log Analysis**: Automatically scans memory and history files for errors and patterns. - **Self-Repair**: Detects crashes and suggests patches. - GEP Protocol: Standardized evolution with reusable assets. - **One-Command Evolution**: Just run `/evolve` (or `node index.js`). ## Usage ### Standard Run (Automated) Runs the evolution cycle. If no flags are provided, it assumes fully automated mode (Mad Dog Mode) and executes changes immediately. ```bash node index.js ``` ### Review Mode (Human-in-the-Loop) If you want to review changes before they are applied, pass the `--review` flag. The agent will pause and ask for confirmation. ```bash node index.js --review ``` ### Mad Dog Mode (Continuous Loop) To run in an infinite loop (e.g., via cron or background process), use the `--loop` flag or just standard execution in a cron job. ```bash node index.js --loop ``` ## Configuration | Environment Variable | Default | Description | |---|---|---| | `EVOLVE_ALLOW_SELF_MODIFY` | `false` | Allow evolution to modify evolver's own source code. **NOT recommended for production.** Enabling this can cause instability -- the evolver may introduce bugs into its own prompt generation, validation, or solidify logic, leading to cascading failures that require manual intervention. Only enable for controlled experiments. | | `EVOLVE_LOAD_MAX` | `2.0` | Maximum 1-minute load average before evolver backs off. | | `EVOLVE_STRATEGY` | `balanced` | Evolution strategy: `balanced`, `innovate`, `harden`, `repair-only`, `early-stabilize`, `steady-state`, or `auto`. | ## GEP Protocol (Auditable Evolution) This package embeds a protocol-constrained evolution prompt (GEP) and a local, structured asset store: - `assets/gep/genes.json`: reusable Gene definitions - `assets/gep/capsules.json`: success capsules to avoid repeating reasoning - `assets/gep/events.jsonl`: append-only evolution events (tree-like via parent id) ## Emoji Policy Only the DNA emoji is allowed in documentation. All other emoji are disallowed. ## Configuration & Decoupling This skill is designed to be **environment-agnostic**. It uses standard OpenClaw tools by default. ### Local Overrides (Injection) You can inject local preferences (e.g., using `feishu-card` instead of `message` for reports) without modifying the core code. **Method 1: Environment Variables** Set `EVOLVE_REPORT_TOOL` in your `.env` file: ```bash EVOLVE_REPORT_TOOL=feishu-card ``` **Method 2: Dyna
README.md
# 🧬 Capability Evolver  [Chinese Docs](README.zh-CN.md) **"Evolution is not optional. Adapt or die."** **Three lines** - **What it is**: A protocol-constrained self-evolution engine for AI agents. - **Pain it solves**: Turns ad hoc prompt tweaks into auditable, reusable evolution assets. - **Use in 30 seconds**: `node index.js` to generate a GEP-guided evolution prompt. Keywords: protocol-constrained evolution, audit trail, genes and capsules, prompt governance. ## Try It Now (Minimal) ```bash node index.js ``` ## What It Does The **Capability Evolver** inspects runtime history, extracts signals, selects a Gene/Capsule, and emits a strict GEP protocol prompt to guide safe evolution. ## Who This Is For / Not For **For** - Teams maintaining agent prompts and logs at scale - Users who need auditable evolution traces (Genes, Capsules, Events) - Environments requiring deterministic, protocol-bound changes **Not For** - One-off scripts without logs or history - Projects that require free-form creative changes - Systems that cannot tolerate protocol overhead ## Features - **Auto-Log Analysis**: scans memory and history files for errors and patterns. - **Self-Repair Guidance**: emits repair-focused directives from signals. - **GEP Protocol**: standardized evolution with reusable assets. - **Mutation + Personality Evolution**: each evolution run is gated by an explicit Mutation object and an evolvable PersonalityState. - **Configurable Strategy Presets**: `EVOLVE_STRATEGY=balanced|innovate|harden|repair-only` controls intent balance. - **Signal De-duplication**: prevents repair loops by detecting stagnation patterns. - **Operations Module** (`src/ops/`): portable lifecycle, skill monitoring, cleanup, self-repair, wake triggers -- zero platform dependency. - **Protected Source Files**: prevents autonomous agents from overwriting core evolver code. - **One-Command Evolution**: `node index.js` to generate the prompt. ## Typical Use Cases - Harden a flaky agent loop by enforcing validation before edits - Encode recurring fixes as reusable Genes and Capsules - Produce auditable evolution events for review or compliance ## Anti-Examples - Rewriting entire subsystems without signals or constraints - Using the protocol as a generic task runner - Producing changes without recording EvolutionEvent ## FAQ **Does this edit code automatically?** No. It generates a protocol-bound prompt and assets that guide evolution. **Do I need to use all GEP assets?** No. You can start with default Genes and extend over time. **Is this safe in production?** Use review mode and validation steps. Treat it as a safety-focused evolution tool, not a live patcher. ## Roadmap - Add a one-minute demo workflow - Add a public changelog - Add a comparison table vs alternatives ## GEP Protocol (Auditable Evolution) This repo includes a protocol-constrained prompt mode based on GEP (Genome Evolution Protocol). - **Structur
_meta.json
{
"ownerId": "kn7apafdj4thknczrgxdzfd2v1808svf",
"slug": "evolver",
"version": "1.14.0",
"publishedAt": 1771472925491
}CONTRIBUTING.md
## Contributing Thank you for contributing. Please follow these rules: - Do not use emoji (except the DNA emoji in documentation if needed). - Keep changes small and reviewable. - Update related documentation when you change behavior. - Run `node index.js` for a quick sanity check. Submit PRs with clear intent and scope.
README.zh-CN.md
# 🧬 Capability Evolver(能力进化引擎) [English Docs](README.md) **“进化不是可选项,而是生存法则。”** **Capability Evolver** 是一个元技能(Meta-Skill),赋予 OpenClaw 智能体自我反省的能力。它可以扫描自身的运行日志,识别效率低下或报错的地方,并自主编写代码补丁来优化自身性能。 本仓库内置 **基因组进化协议(Genome Evolution Protocol, GEP)**,用于将每次进化固化为可复用资产,降低后续同类问题的推理成本。 ## 核心特性 - **自动日志分析**:自动扫描 `.jsonl` 会话日志,寻找错误模式。 - **自我修复**:检测运行时崩溃并编写修复补丁。 - **GEP 协议**:标准化进化流程与可复用资产,支持可审计与可共享。 - **突变协议与人格进化**:每次进化必须显式声明 Mutation,并维护可进化的 PersonalityState。 - **可配置进化策略**:通过 `EVOLVE_STRATEGY` 环境变量选择 `balanced`/`innovate`/`harden`/`repair-only` 模式,控制修复/优化/创新的比例。 - **信号去重**:自动检测修复循环,防止反复修同一个问题。 - **运维模块** (`src/ops/`):6 个可移植的运维工具(生命周期管理、技能健康监控、磁盘清理、Git 自修复等),零平台依赖。 - **源码保护**:防止自治代理覆写核心进化引擎源码。 - **动态集成**:自动检测并使用本地工具,如果不存在则回退到通用模式。 - **持续循环模式**:持续运行的自我进化循环。 ## 使用方法 ### 标准运行(自动化) ```bash node index.js ``` ### 审查模式(人工介入) 在应用更改前暂停,等待人工确认。 ```bash node index.js --review ``` ### 持续循环(守护进程) 无限循环运行。适合作为后台服务。 ```bash node index.js --loop ``` ### 指定进化策略 ```bash EVOLVE_STRATEGY=innovate node index.js --loop # 最大化创新 EVOLVE_STRATEGY=harden node index.js --loop # 聚焦稳定性 EVOLVE_STRATEGY=repair-only node index.js --loop # 紧急修复模式 ``` | 策略 | 创新 | 优化 | 修复 | 适用场景 | | :--- | :--- | :--- | :--- | :--- | | `balanced`(默认) | 50% | 30% | 20% | 日常运行,稳步成长 | | `innovate` | 80% | 15% | 5% | 系统稳定,快速出新功能 | | `harden` | 20% | 40% | 40% | 大改动后,聚焦稳固 | | `repair-only` | 0% | 20% | 80% | 紧急状态,全力修复 | ### 运维管理(生命周期) ```bash node src/ops/lifecycle.js start # 后台启动进化循环 node src/ops/lifecycle.js stop # 优雅停止(SIGTERM -> SIGKILL) node src/ops/lifecycle.js status # 查看运行状态 node src/ops/lifecycle.js check # 健康检查 + 停滞自动重启 ``` ## 典型使用场景 - 需要审计与可追踪的提示词演进 - 团队协作维护 Agent 的长期能力 - 希望将修复经验固化为可复用资产 ## 反例 - 一次性脚本或没有日志的场景 - 需要完全自由发挥的改动 - 无法接受协议约束的系统 ## GEP 协议(可审计进化) 本仓库内置基于 GEP 的“协议受限提示词模式”,用于把每次进化固化为可复用资产。 - **结构化资产目录**:`assets/gep/` - `assets/gep/genes.json` - `assets/gep/capsules.json` - `assets/gep/events.jsonl` - **Selector 选择器**:根据日志提取 signals,优先复用已有 Gene/Capsule,并在提示词中输出可审计的 Selector 决策 JSON。 - **约束**:除 🧬 外,禁止使用其他 emoji。 ## 配置与解耦 本插件能自动适应你的环境。 | 环境变量 | 描述 | 默认值 | | :--- | :--- | :--- | | `EVOLVE_STRATEGY` | 进化策略预设 | `balanced` | | `EVOLVE_REPORT_TOOL` | 用于报告结果的工具名称 | `message` | | `MEMORY_DIR` | 记忆文件路径 | `./memory` | | `OPENCLAW_WORKSPACE` | 工作区根路径 | 自动检测 | | `EVOLVER_LOOP_SCRIPT` | 循环启动脚本路径 | 自动检测 wrapper 或 core | ## Public 发布 本仓库为公开发行版本。 - 构建公开产物:`npm run build` - 发布公开产物:`npm run publish:public` - 演练:`DRY_RUN=true npm run publish:public` 必填环境变量: - `PUBLIC_REMOTE`(默认:`public`) - `PUBLIC_REPO`(例如 `autogame-17/evolver`) - `PUBLIC_OUT_DIR`(默认:`dist-public`) - `PUBLIC_USE_BUILD_OUTPUT`(默认:`true`) 可选环境变量: - `SOURCE_BRANCH`(默认:`main`) - `PUBLIC_BRANCH`(默认:`main`) - `RELEASE_TAG`(例如 `v1.0.41`) - `RELEASE_TITLE`(例如 `v1.0.41 - GEP protocol`) - `RELEASE_NOTES` 或 `RELEASE_NOTES_FILE` - `GITHUB_TOKEN`(或 `GH_TOKEN` / `GITHUB_PAT`,用于创建 GitHub Release) - `RELEASE_SKIP`(`true` 则跳过创建 GitHub Release;默认会创建) - `RELEASE_USE_GH`(`true` 则使用 `gh` CLI,否则默认走 GitHub API) - `PUBLIC_RELEASE_O
Editorial read
Docs & README
Docs source
CLAWHUB
Editorial quality
ready
A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Skill: Evolver Owner: autogame-17 Summary: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Tags: latest:1.14.0 Version history: v1.14.0 | 2026-02-19T03:48:45.491Z | user security cleanup + chain_id propagation + direct/reference reuse mode v1.13.0 | 2026-02-15T11:44:32.176Z | user v1.13.0: disable self-modification by default v1.12.4
Full README
Skill: Evolver
Owner: autogame-17
Summary: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution.
Tags: latest:1.14.0
Version history:
v1.14.0 | 2026-02-19T03:48:45.491Z | user
security cleanup + chain_id propagation + direct/reference reuse mode
v1.13.0 | 2026-02-15T11:44:32.176Z | user
v1.13.0: disable self-modification by default
v1.12.4 | 2026-02-15T10:03:10.648Z | user
Fix ENOENT uv_cwd crash with CWD recovery
v1.12.3 | 2026-02-14T14:24:21.392Z | user
Harden critical path protection - block ALL modifications to protected skills
v1.12.2 | 2026-02-14T11:48:09.809Z | user
Re-publish after account restoration
Archive index:
Archive v1.14.0: 57 files, 147971 bytes
Files: assets/gep/capsules.json (2851b), assets/gep/genes.json (3689b), CONTRIBUTING.md (327b), index.js (9017b), package.json (687b), README.md (15095b), README.zh-CN.md (12852b), scripts/a2a_export.js (2367b), scripts/a2a_ingest.js (2671b), scripts/a2a_promote.js (4785b), scripts/analyze_by_skill.js (4848b), scripts/build_public.js (10783b), scripts/extract_log.js (2600b), scripts/generate_history.js (2593b), scripts/gep_append_event.js (3049b), scripts/gep_personality_report.js (7918b), scripts/human_report.js (5796b), scripts/publish_public.js (18651b), scripts/recover_loop.js (1691b), scripts/suggest_version.js (3037b), SKILL.md (4255b), src/canary.js (486b), src/evolve.js (54395b), src/gep/a2a.js (6454b), src/gep/a2aProtocol.js (11772b), src/gep/analyzer.js (988b), src/gep/assets.js (1110b), src/gep/assetStore.js (10328b), src/gep/bridge.js (2096b), src/gep/candidates.js (5086b), src/gep/contentHash.js (2196b), src/gep/deviceId.js (6728b), src/gep/envFingerprint.js (1850b), src/gep/hubSearch.js (4348b), src/gep/memoryGraph.js (27559b), src/gep/memoryGraphAdapter.js (7134b), src/gep/mutation.js (6798b), src/gep/paths.js (1913b), src/gep/personality.js (13482b), src/gep/prompt.js (18452b), src/gep/sanitize.js (1500b), src/gep/selector.js (7288b), src/gep/signals.js (15207b), src/gep/solidify.js (51281b), src/gep/strategy.js (4456b), src/gep/taskReceiver.js (4843b), src/gep/validationReport.js (2194b), src/ops/cleanup.js (4454b), src/ops/commentary.js (1762b), src/ops/health_check.js (4049b), src/ops/index.js (376b), src/ops/innovation.js (3156b), src/ops/lifecycle.js (6331b), src/ops/self_repair.js (2582b), src/ops/skills_monitor.js (5457b), src/ops/trigger.js (837b), _meta.json (127b)
File v1.14.0:SKILL.md
name: capability-evolver description: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. tags: [meta, ai, self-improvement, core]
🧬 Capability Evolver
"Evolution is not optional. Adapt or die."
The Capability Evolver is a meta-skill that allows OpenClaw agents to inspect their own runtime history, identify failures or inefficiencies, and autonomously write new code or update their own memory to improve performance.
Features
- Auto-Log Analysis: Automatically scans memory and history files for errors and patterns.
- Self-Repair: Detects crashes and suggests patches.
- GEP Protocol: Standardized evolution with reusable assets.
- One-Command Evolution: Just run
/evolve(ornode index.js).
Usage
Standard Run (Automated)
Runs the evolution cycle. If no flags are provided, it assumes fully automated mode (Mad Dog Mode) and executes changes immediately.
node index.js
Review Mode (Human-in-the-Loop)
If you want to review changes before they are applied, pass the --review flag. The agent will pause and ask for confirmation.
node index.js --review
Mad Dog Mode (Continuous Loop)
To run in an infinite loop (e.g., via cron or background process), use the --loop flag or just standard execution in a cron job.
node index.js --loop
Configuration
| Environment Variable | Default | Description |
|---|---|---|
| EVOLVE_ALLOW_SELF_MODIFY | false | Allow evolution to modify evolver's own source code. NOT recommended for production. Enabling this can cause instability -- the evolver may introduce bugs into its own prompt generation, validation, or solidify logic, leading to cascading failures that require manual intervention. Only enable for controlled experiments. |
| EVOLVE_LOAD_MAX | 2.0 | Maximum 1-minute load average before evolver backs off. |
| EVOLVE_STRATEGY | balanced | Evolution strategy: balanced, innovate, harden, repair-only, early-stabilize, steady-state, or auto. |
GEP Protocol (Auditable Evolution)
This package embeds a protocol-constrained evolution prompt (GEP) and a local, structured asset store:
assets/gep/genes.json: reusable Gene definitionsassets/gep/capsules.json: success capsules to avoid repeating reasoningassets/gep/events.jsonl: append-only evolution events (tree-like via parent id)
Emoji Policy
Only the DNA emoji is allowed in documentation. All other emoji are disallowed.
Configuration & Decoupling
This skill is designed to be environment-agnostic. It uses standard OpenClaw tools by default.
Local Overrides (Injection)
You can inject local preferences (e.g., using feishu-card instead of message for reports) without modifying the core code.
Method 1: Environment Variables
Set EVOLVE_REPORT_TOOL in your .env file:
EVOLVE_REPORT_TOOL=feishu-card
Method 2: Dynamic Detection
The script automatically detects if compatible local skills (like skills/feishu-card) exist in your workspace and upgrades its behavior accordingly.
Safety & Risk Protocol
1. Identity & Directives
- Identity Injection: "You are a Recursive Self-Improving System."
- Mutation Directive:
- If Errors Found -> Repair Mode (Fix bugs).
- If Stable -> Forced Optimization (Refactor/Innovate).
2. Risk Mitigation
- Infinite Recursion: Strict single-process logic.
- Review Mode: Use
--reviewfor sensitive environments. - Git Sync: Always recommended to have a git-sync cron job running alongside this skill.
Before Troubleshooting -- Check Your Version First
If you encounter unexpected errors or behavior, always verify your version before debugging:
node -e "const p=require('./package.json'); console.log(p.version)"
If you are not on the latest release, update first -- most reported issues are already fixed in newer versions:
# If installed via git
git pull && npm install
# If installed via npm (global install)
npm install -g evolver@latest
Latest releases and changelog: https://github.com/autogame-17/evolver/releases
License
MIT
File v1.14.0:README.md
🧬 Capability Evolver

"Evolution is not optional. Adapt or die."
Three lines
- What it is: A protocol-constrained self-evolution engine for AI agents.
- Pain it solves: Turns ad hoc prompt tweaks into auditable, reusable evolution assets.
- Use in 30 seconds:
node index.jsto generate a GEP-guided evolution prompt.
Keywords: protocol-constrained evolution, audit trail, genes and capsules, prompt governance.
Try It Now (Minimal)
node index.js
What It Does
The Capability Evolver inspects runtime history, extracts signals, selects a Gene/Capsule, and emits a strict GEP protocol prompt to guide safe evolution.
Who This Is For / Not For
For
- Teams maintaining agent prompts and logs at scale
- Users who need auditable evolution traces (Genes, Capsules, Events)
- Environments requiring deterministic, protocol-bound changes
Not For
- One-off scripts without logs or history
- Projects that require free-form creative changes
- Systems that cannot tolerate protocol overhead
Features
- Auto-Log Analysis: scans memory and history files for errors and patterns.
- Self-Repair Guidance: emits repair-focused directives from signals.
- GEP Protocol: standardized evolution with reusable assets.
- Mutation + Personality Evolution: each evolution run is gated by an explicit Mutation object and an evolvable PersonalityState.
- Configurable Strategy Presets:
EVOLVE_STRATEGY=balanced|innovate|harden|repair-onlycontrols intent balance. - Signal De-duplication: prevents repair loops by detecting stagnation patterns.
- Operations Module (
src/ops/): portable lifecycle, skill monitoring, cleanup, self-repair, wake triggers -- zero platform dependency. - Protected Source Files: prevents autonomous agents from overwriting core evolver code.
- One-Command Evolution:
node index.jsto generate the prompt.
Typical Use Cases
- Harden a flaky agent loop by enforcing validation before edits
- Encode recurring fixes as reusable Genes and Capsules
- Produce auditable evolution events for review or compliance
Anti-Examples
- Rewriting entire subsystems without signals or constraints
- Using the protocol as a generic task runner
- Producing changes without recording EvolutionEvent
FAQ
Does this edit code automatically? No. It generates a protocol-bound prompt and assets that guide evolution.
Do I need to use all GEP assets? No. You can start with default Genes and extend over time.
Is this safe in production? Use review mode and validation steps. Treat it as a safety-focused evolution tool, not a live patcher.
Roadmap
- Add a one-minute demo workflow
- Add a public changelog
- Add a comparison table vs alternatives
GEP Protocol (Auditable Evolution)
This repo includes a protocol-constrained prompt mode based on GEP (Genome Evolution Protocol).
- Structured assets live in
assets/gep/:assets/gep/genes.jsonassets/gep/capsules.jsonassets/gep/events.jsonl
- Selector logic uses extracted signals to prefer existing Genes/Capsules and emits a JSON selector decision in the prompt.
- Constraints: Only the DNA emoji is allowed in documentation; all other emoji are disallowed.
Usage
Standard Run (Automated)
node index.js
Review Mode (Human-in-the-Loop)
node index.js --review
Continuous Loop
node index.js --loop
With Strategy Preset
EVOLVE_STRATEGY=innovate node index.js --loop # maximize new features
EVOLVE_STRATEGY=harden node index.js --loop # focus on stability
EVOLVE_STRATEGY=repair-only node index.js --loop # emergency fix mode
Operations (Lifecycle Management)
node src/ops/lifecycle.js start # start evolver loop in background
node src/ops/lifecycle.js stop # graceful stop (SIGTERM -> SIGKILL)
node src/ops/lifecycle.js status # show running state
node src/ops/lifecycle.js check # health check + auto-restart if stagnant
Public Release
This repository is the public distribution.
- Build public output:
npm run build - Publish public output:
npm run publish:public - Dry run:
DRY_RUN=true npm run publish:public
Required env vars:
PUBLIC_REMOTE(default:public)PUBLIC_REPO(e.g.autogame-17/evolver)PUBLIC_OUT_DIR(default:dist-public)PUBLIC_USE_BUILD_OUTPUT(default:true)
Optional env vars:
SOURCE_BRANCH(default:main)PUBLIC_BRANCH(default:main)RELEASE_TAG(e.g.v1.0.41)RELEASE_TITLE(e.g.v1.0.41 - GEP protocol)RELEASE_NOTESorRELEASE_NOTES_FILEGITHUB_TOKEN(orGH_TOKEN/GITHUB_PAT) for GitHub Release creationRELEASE_SKIP(trueto skip creating a GitHub Release; default is to create)RELEASE_USE_GH(trueto useghCLI instead of GitHub API)PUBLIC_RELEASE_ONLY(trueto only create a Release for an existing tag; no publish)
Versioning (SemVer)
MAJOR.MINOR.PATCH
- MAJOR: incompatible changes
- MINOR: backward-compatible features
- PATCH: backward-compatible bug fixes
Changelog
v1.10.3
- Configurable Blast Radius Policy:
computeBlastRadius()now separates runtime artifacts (logs, memory, capsules, events) from functional code. Only code/config files count towardmax_filesconstraints. Policy is configurable viaopenclaw.jsonatevolver.constraints.countedFilePolicy. - Structured Status Output:
solidify()now generates a structured status payload (result,en,zh,meta) and writes it to a cycle status file, providing downstream reporters with rich evolution context (intent, gene, signals, blast radius, validation results). - Solidify CLI Observability:
index.js solidifyprints[SOLIDIFY_STATUS]and[SOLIDIFY_STATUS_FILE]lines for wrapper integration.
v1.10.1
- Innovation Cooldown: Track recent innovation targets in
analyzeRecentHistory()and injectContext [Innovation Cooldown]into GEP prompt, preventing the Hand Agent from repeatedly innovating on the same skill/module across consecutive cycles. - Signal Enhancement:
analyzeRecentHistory()now returnsrecentInnovationTargets(map of target path to count in last 10 events).
v1.10.0
- Operations Module (
src/ops/): 6 portable modules extracted from environment-specific wrapper:lifecycle.js-- process start/stop/restart/status/health checkskills_monitor.js-- skill health audit with auto-heal (npm install, SKILL.md stub)cleanup.js-- GEP artifact disk cleanuptrigger.js-- wake signal mechanismcommentary.js-- persona-based cycle commentaryself_repair.js-- git emergency repair (abort rebase, remove stale locks)
- Configurable Evolution Strategy (
EVOLVE_STRATEGYenv var):- 4 presets:
balanced(default 50/30/20),innovate(80/15/5),harden(20/40/40),repair-only(0/20/80) - Strategy-aware signal filtering with per-preset repair loop thresholds
- Backward compatible:
FORCE_INNOVATION=truemaps toinnovate
- 4 presets:
- Signal De-duplication: repair ratio check forces innovation when >= 50% of last 8 cycles are repairs (threshold varies by strategy).
- Tool Usage Analytics: detects high-frequency tool usage patterns in logs (auto-evolved by Hand Agent).
- Protected Source Files (GEP Section IX): evolver core .js files listed as immutable to prevent Hand Agent overwrites.
- Forbidden Innovation Zones (GEP Section X): prevents creation of skills that duplicate existing infrastructure (process management, health monitoring, scheduling).
- Known Issues List (GEP Section VII.6): tells the LLM to skip already-fixed errors.
- Resilience: replaced
process.exit(2)withthrow Error()for MemoryGraph failures (loop survives transient errors). - Gene Limits Relaxed: repair max_files 12->20, innovate max_files 8->25.
paths.js: addedgetWorkspaceRoot(),getSkillsDir(),getLogsDir().
v1.9.2
- Intermediate release with strategy presets and protected files.
v1.9.1
- Signal de-duplication (repair ratio check).
- Singleton Guard (PID lock file).
- Environment fingerprint in GEP prompt.
v1.6.0
- Add innovation/opportunity signal detection: user_feature_request, user_improvement_suggestion, perf_bottleneck, capability_gap, stable_success_plateau, external_opportunity.
- Add innovate Gene (gene_gep_innovate_from_opportunity) for proactive feature development.
- Auto-innovate mutation when opportunity signals are present (no longer requires --drift flag).
- Personality evolution now responds to opportunity signals by increasing creativity.
- Safety: repair still takes priority over innovate when errors are present.
v1.5.1
- Add containerized vibe testing framework (Docker + node:22-bookworm, OpenClaw-compatible environment).
- 7 end-to-end tests: module load, dry-run solidify, schema compliance, A2A round-trip, full evolve+solidify, loop gating, env fingerprint.
- Add internal daemon loop with suicide guard for memory leak protection.
- One-command test:
npm run test:vibe.
v1.5.0
- Add content-addressable asset IDs (SHA-256 canonical hashing) for deduplication, tamper detection, and cross-node consistency.
- Add environment fingerprint capture (node version, platform, arch, evolver version) embedded in EvolutionEvents, Capsules, and ValidationReports.
- Add standardized ValidationReport type with machine-readable schema, full command results, and env fingerprint.
- Add GEP A2A protocol layer with 6 message types (hello/publish/fetch/report/decision/revoke) and pluggable transport interface.
- Add FileTransport as default A2A transport (JSONL outbox/inbox).
- Add asset_id integrity verification on A2A ingest; reject tampered assets.
- Add schema_version field to all GEP asset types (Gene, Capsule, EvolutionEvent, ValidationReport).
- Fix: dry-run mode no longer triggers rollback.
- Merge backport/online-fixes: self-contained crash recovery with recover_loop.js.
v1.4.4
- Add validation command safety check: Gene validation commands are gated by prefix whitelist (node/npm/npx) and shell operator blocking.
- Add validation audit on A2A Gene promotion: external Genes with unsafe validation commands are rejected before promotion.
- Add Security Model documentation to README.
v1.4.3
- Release preparation for v1.4.3.
v1.4.2
- Add loop gating: do not start a new cycle until the previous run is solidified (prevents fast empty cycles).
- Preserve
last_solidifywhen writing solidify state (merge instead of overwrite).
v1.4.1
- Add execute-by-default bridge: after generating the GEP prompt, emit
sessions_spawn(...)to spawn an executor agent. - Write prompt artifacts to
memory/for reliable handoff and auditing.
v1.4.0
- Add explicit Mutation protocol (repair/optimize/innovate) and require Mutation per evolution run.
- Add evolvable PersonalityState with small PersonalityMutation steps and natural selection statistics.
- Extend EvolutionEvent with
mutation_idandpersonality_state; record both into Memory Graph events. - Add
scripts/gep_personality_report.jsto observe personality success rates and convergence.
v1.3.1
- Release preparation for v1.3.1.
v1.3.0
- Release preparation for v1.3.0.
v1.2.0
- Memory Graph v2 and A2A exchange protocol integration.
v1.1.0
- Public build/publish pipeline, prompt budget enforcement, and structured GEP asset storage.
Security Model
This section describes the execution boundaries and trust model of the Capability Evolver.
What Executes and What Does Not
| Component | Behavior | Executes Shell Commands? |
| :--- | :--- | :--- |
| src/evolve.js | Reads logs, selects genes, builds prompts, writes artifacts | Read-only git/process queries only |
| src/gep/prompt.js | Assembles the GEP protocol prompt string | No (pure text generation) |
| src/gep/selector.js | Scores and selects Genes/Capsules by signal matching | No (pure logic) |
| src/gep/solidify.js | Validates patches via Gene validation commands | Yes (see below) |
| index.js (loop recovery) | Prints sessions_spawn(...) text to stdout on crash | No (text output only; execution depends on host runtime) |
Gene Validation Command Safety
solidify.js executes commands listed in a Gene's validation array. To prevent arbitrary command execution, all validation commands are gated by a safety check (isValidationCommandAllowed):
- Prefix whitelist: Only commands starting with
node,npm, ornpxare allowed. - No command substitution: Backticks and
$(...)are rejected anywhere in the command string. - No shell operators: After stripping quoted content,
;,&,|,>,<are rejected. - Timeout: Each command is limited to 180 seconds.
- Scoped execution: Commands run with
cwdset to the repository root.
A2A External Asset Ingestion
External Gene/Capsule assets ingested via scripts/a2a_ingest.js are staged in an isolated candidate zone. Promotion to local stores (scripts/a2a_promote.js) requires:
- Explicit
--validatedflag (operator must verify the asset first). - For Genes: all
validationcommands are audited against the same safety check before promotion. Unsafe commands cause the promotion to be rejected. - Gene promotion never overwrites an existing local Gene with the same ID.
sessions_spawn Output
The sessions_spawn(...) strings in index.js and evolve.js are text output to stdout, not direct function calls. Whether they are interpreted depends on the host runtime (e.g., OpenClaw platform). The evolver itself does not invoke sessions_spawn as executable code.
Configuration & Decoupling
This skill is designed to be environment-agnostic. It uses standard OpenClaw tools by default.
Local Overrides (Injection)
You can inject local preferences (e.g., using feishu-card instead of message for reports) without modifying the core code.
Method 1: Environment Variables
Set EVOLVE_REPORT_TOOL in your .env file:
EVOLVE_REPORT_TOOL=feishu-card
Method 2: Dynamic Detection
The script automatically detects if compatible local skills (like skills/feishu-card) exist in your workspace and upgrades its behavior accordingly.
Star History
Acknowledgments
- onthebigtree -- Inspired the creation of evomap evolution network.
- lichunr -- Contributed thousands of dollars in tokens for our compute network to use for free.
- shinjiyu -- Submitted numerous bug reports for evolver and evomap.
- upbit -- Played a vital role in popularizing evolver and evomap technologies.
- More contributors to be added.
License
MIT
File v1.14.0:_meta.json
{ "ownerId": "kn7apafdj4thknczrgxdzfd2v1808svf", "slug": "evolver", "version": "1.14.0", "publishedAt": 1771472925491 }
File v1.14.0:CONTRIBUTING.md
Contributing
Thank you for contributing. Please follow these rules:
- Do not use emoji (except the DNA emoji in documentation if needed).
- Keep changes small and reviewable.
- Update related documentation when you change behavior.
- Run
node index.jsfor a quick sanity check.
Submit PRs with clear intent and scope.
File v1.14.0:README.zh-CN.md
🧬 Capability Evolver(能力进化引擎)
“进化不是可选项,而是生存法则。”
Capability Evolver 是一个元技能(Meta-Skill),赋予 OpenClaw 智能体自我反省的能力。它可以扫描自身的运行日志,识别效率低下或报错的地方,并自主编写代码补丁来优化自身性能。
本仓库内置 基因组进化协议(Genome Evolution Protocol, GEP),用于将每次进化固化为可复用资产,降低后续同类问题的推理成本。
核心特性
- 自动日志分析:自动扫描
.jsonl会话日志,寻找错误模式。 - 自我修复:检测运行时崩溃并编写修复补丁。
- GEP 协议:标准化进化流程与可复用资产,支持可审计与可共享。
- 突变协议与人格进化:每次进化必须显式声明 Mutation,并维护可进化的 PersonalityState。
- 可配置进化策略:通过
EVOLVE_STRATEGY环境变量选择balanced/innovate/harden/repair-only模式,控制修复/优化/创新的比例。 - 信号去重:自动检测修复循环,防止反复修同一个问题。
- 运维模块 (
src/ops/):6 个可移植的运维工具(生命周期管理、技能健康监控、磁盘清理、Git 自修复等),零平台依赖。 - 源码保护:防止自治代理覆写核心进化引擎源码。
- 动态集成:自动检测并使用本地工具,如果不存在则回退到通用模式。
- 持续循环模式:持续运行的自我进化循环。
使用方法
标准运行(自动化)
node index.js
审查模式(人工介入)
在应用更改前暂停,等待人工确认。
node index.js --review
持续循环(守护进程)
无限循环运行。适合作为后台服务。
node index.js --loop
指定进化策略
EVOLVE_STRATEGY=innovate node index.js --loop # 最大化创新
EVOLVE_STRATEGY=harden node index.js --loop # 聚焦稳定性
EVOLVE_STRATEGY=repair-only node index.js --loop # 紧急修复模式
| 策略 | 创新 | 优化 | 修复 | 适用场景 |
| :--- | :--- | :--- | :--- | :--- |
| balanced(默认) | 50% | 30% | 20% | 日常运行,稳步成长 |
| innovate | 80% | 15% | 5% | 系统稳定,快速出新功能 |
| harden | 20% | 40% | 40% | 大改动后,聚焦稳固 |
| repair-only | 0% | 20% | 80% | 紧急状态,全力修复 |
运维管理(生命周期)
node src/ops/lifecycle.js start # 后台启动进化循环
node src/ops/lifecycle.js stop # 优雅停止(SIGTERM -> SIGKILL)
node src/ops/lifecycle.js status # 查看运行状态
node src/ops/lifecycle.js check # 健康检查 + 停滞自动重启
典型使用场景
- 需要审计与可追踪的提示词演进
- 团队协作维护 Agent 的长期能力
- 希望将修复经验固化为可复用资产
反例
- 一次性脚本或没有日志的场景
- 需要完全自由发挥的改动
- 无法接受协议约束的系统
GEP 协议(可审计进化)
本仓库内置基于 GEP 的“协议受限提示词模式”,用于把每次进化固化为可复用资产。
- 结构化资产目录:
assets/gep/assets/gep/genes.jsonassets/gep/capsules.jsonassets/gep/events.jsonl
- Selector 选择器:根据日志提取 signals,优先复用已有 Gene/Capsule,并在提示词中输出可审计的 Selector 决策 JSON。
- 约束:除 🧬 外,禁止使用其他 emoji。
配置与解耦
本插件能自动适应你的环境。
| 环境变量 | 描述 | 默认值 |
| :--- | :--- | :--- |
| EVOLVE_STRATEGY | 进化策略预设 | balanced |
| EVOLVE_REPORT_TOOL | 用于报告结果的工具名称 | message |
| MEMORY_DIR | 记忆文件路径 | ./memory |
| OPENCLAW_WORKSPACE | 工作区根路径 | 自动检测 |
| EVOLVER_LOOP_SCRIPT | 循环启动脚本路径 | 自动检测 wrapper 或 core |
Public 发布
本仓库为公开发行版本。
- 构建公开产物:
npm run build - 发布公开产物:
npm run publish:public - 演练:
DRY_RUN=true npm run publish:public
必填环境变量:
PUBLIC_REMOTE(默认:public)PUBLIC_REPO(例如autogame-17/evolver)PUBLIC_OUT_DIR(默认:dist-public)PUBLIC_USE_BUILD_OUTPUT(默认:true)
可选环境变量:
SOURCE_BRANCH(默认:main)PUBLIC_BRANCH(默认:main)RELEASE_TAG(例如v1.0.41)RELEASE_TITLE(例如v1.0.41 - GEP protocol)RELEASE_NOTES或RELEASE_NOTES_FILEGITHUB_TOKEN(或GH_TOKEN/GITHUB_PAT,用于创建 GitHub Release)RELEASE_SKIP(true则跳过创建 GitHub Release;默认会创建)RELEASE_USE_GH(true则使用ghCLI,否则默认走 GitHub API)PUBLIC_RELEASE_ONLY(true则仅为已存在的 tag 创建 Release;不发布代码)
版本号规则(SemVer)
MAJOR.MINOR.PATCH
• MAJOR(主版本):有不兼容变更
• MINOR(次版本):向后兼容的新功能
• PATCH(修订/补丁):向后兼容的问题修复
更新日志
v1.10.3
- 可配置约束口径 (Configurable Blast Radius Policy):
computeBlastRadius()将运行产物(日志、memory、capsule、events)与功能代码分离。仅代码/配置文件计入max_files约束。策略可通过openclaw.json的evolver.constraints.countedFilePolicy配置。 - 结构化状态产出 (Structured Status Output):
solidify()生成结构化状态载荷(result、en、zh、meta),并写入周期状态文件,为下游报告提供丰富的进化上下文(intent、gene、signals、blast radius、validation 结果)。 - Solidify CLI 可观测性:
index.js solidify执行后输出[SOLIDIFY_STATUS]和[SOLIDIFY_STATUS_FILE],便于 wrapper 集成。
v1.10.1
- 创新冷却 (Innovation Cooldown):在
analyzeRecentHistory()中追踪近期创新目标,并在 GEP 提示词中注入Context [Innovation Cooldown]段,防止 Hand Agent 在连续周期中反复对同一技能/模块进行创新。 - 信号增强:
analyzeRecentHistory()新增recentInnovationTargets返回值(目标路径到最近 10 轮出现次数的映射)。
v1.10.0
- 运维模块 (
src/ops/):从环境相关的 wrapper 中提取 6 个可移植模块:lifecycle.js-- 进程启停/重启/状态/健康检查skills_monitor.js-- 技能健康审计 + 自动修复(npm install、SKILL.md 生成)cleanup.js-- GEP 产物磁盘清理trigger.js-- 唤醒信号机制commentary.js-- 人格化周期评论self_repair.js-- Git 紧急修复(终止 rebase、清理过期锁文件)
- 可配置进化策略 (
EVOLVE_STRATEGY环境变量):- 4 个预设:
balanced(默认 50/30/20)、innovate(80/15/5)、harden(20/40/40)、repair-only(0/20/80) - 策略感知的信号过滤,各预设有独立的修复循环阈值
- 向后兼容:
FORCE_INNOVATION=true等价于innovate
- 4 个预设:
- 信号去重:当最近 8 轮中修复占比 >= 50% 时强制创新(阈值随策略变化)
- 工具使用分析:检测日志中的高频工具使用模式(由 Hand Agent 自动进化产出)
- 源码保护(GEP Section IX):核心 .js 文件列为不可修改,防止 Hand Agent 覆写
- 禁止创新区(GEP Section X):防止创建与已有基础设施重复的技能(进程管理、健康监控、定时任务等)
- 已知问题清单(GEP Section VII.6):告知 LLM 跳过已修复的错误
- 鲁棒性提升:MemoryGraph 故障时
process.exit(2)改为throw Error()(循环不再因瞬态错误崩溃) - Gene 限制放宽:repair max_files 12->20,innovate max_files 8->25
paths.js新增getWorkspaceRoot()、getSkillsDir()、getLogsDir()
v1.9.2
- 中间版本,包含策略预设和源码保护机制。
v1.9.1
- 信号去重(修复比率检查)
- 单例锁(PID 锁文件)
- GEP 提示词中注入环境指纹
v1.4.4
- 增加 validation 命令安全检查:Gene validation 命令执行前通过前缀白名单(node/npm/npx)和 shell 操作符拦截进行门控。
- 增加 A2A Gene 提升审查:外部 Gene 的 validation 命令不安全时拒绝提升。
- 增加安全模型文档。
v1.4.3
- v1.4.3 发布准备。
v1.4.2
- 增加 loop 门控:上一轮未完成 solidify 时,不启动新一轮(避免 wrapper 造成超快空转)。
- 修复固化状态写入覆盖问题:写入 last_run 时合并保留 last_solidify。
v1.4.1
- 增加默认执行桥接:生成 GEP prompt 后输出
sessions_spawn(...),自动派发执行型子智能体。 - 将 prompt 作为交接工件写入
memory/,便于稳定交接与审计回放。
v1.4.0
- 增加显式 Mutation Protocol(repair/optimize/innovate),每轮进化必须生成 Mutation 对象并通过安全约束门控。
- 增加 Personality Evolution:维护 PersonalityState,小幅 PersonalityMutation(单次不超过 ±0.2,最多 2 个参数),并基于成功率做自然选择收敛。
- EvolutionEvent 增加
mutation_id与personality_state字段;Memory Graph 同步记录 Mutation 与 Personality 的因果链路。 - 新增
scripts/gep_personality_report.js,用于统计不同人格配置下的成功率差异与收敛趋势。
v1.3.1
- v1.3.1 发布准备。
v1.3.0
- v1.3.0 发布准备。
v1.2.0
- Memory Graph v2 与 A2A 进化资产交换集成。
v1.1.0
- public 构建/发布流水线、提示词预算控制与结构化 GEP 资产持久化。
安全模型
本节描述 Capability Evolver 的执行边界和信任模型。
各组件执行行为
| 组件 | 行为 | 是否执行 Shell 命令 |
| :--- | :--- | :--- |
| src/evolve.js | 读取日志、选择 Gene、构建提示词、写入工件 | 仅只读 git/进程查询 |
| src/gep/prompt.js | 组装 GEP 协议提示词字符串 | 否(纯文本生成) |
| src/gep/selector.js | 按信号匹配对 Gene/Capsule 评分和选择 | 否(纯逻辑) |
| src/gep/solidify.js | 通过 Gene validation 命令验证补丁 | 是(见下文) |
| index.js(循环恢复) | 崩溃时向 stdout 输出 sessions_spawn(...) 文本 | 否(纯文本输出;是否执行取决于宿主运行时) |
Gene Validation 命令安全机制
solidify.js 执行 Gene 的 validation 数组中的命令。为防止任意命令执行,所有 validation 命令在执行前必须通过安全检查(isValidationCommandAllowed):
- 前缀白名单:仅允许以
node、npm或npx开头的命令。 - 禁止命令替换:命令中任何位置出现反引号或
$(...)均被拒绝。 - 禁止 Shell 操作符:去除引号内容后,
;、&、|、>、<均被拒绝。 - 超时限制:每条命令限时 180 秒。
- 作用域限定:命令以仓库根目录为工作目录执行。
A2A 外部资产摄入
通过 scripts/a2a_ingest.js 摄入的外部 Gene/Capsule 资产被暂存在隔离的候选区。提升到本地存储(scripts/a2a_promote.js)需要:
- 显式传入
--validated标志(操作者必须先验证资产)。 - 对 Gene:提升前审查所有
validation命令,不安全的命令会导致提升被拒绝。 - Gene 提升不会覆盖本地已存在的同 ID Gene。
sessions_spawn 输出
index.js 和 evolve.js 中的 sessions_spawn(...) 字符串是输出到 stdout 的纯文本,而非直接函数调用。是否被执行取决于宿主运行时(如 OpenClaw 平台)。进化引擎本身不将 sessions_spawn 作为可执行代码调用。
其他安全约束
- 单进程锁:进化引擎禁止生成子进化进程(防止 Fork 炸弹)。
- 稳定性优先:如果近期错误率较高,强制进入修复模式,暂停创新功能。
- 环境检测:外部集成(如 Git 同步)仅在检测到相应插件存在时才会启用。
Star History
鸣谢
- onthebigtree -- 启发了 evomap 进化网络的诞生。
- lichunr -- 提供了数千美金 Token 供算力网络免费使用。
- shinjiyu -- 为 evolver 和 evomap 提交了大量 bug report。
- upbit -- 在 evolver 和 evomap 技术的普及中起到了至关重要的作用。
- 其余贡献者扩充中。
许可证
MIT
File v1.14.0:assets/gep/capsules.json
{ "version": 1, "capsules": [ { "type": "Capsule", "schema_version": "1.5.0", "id": "capsule_1770477654236", "trigger": [ "log_error", "errsig:TOOLRESULT: { "status": "error", "tool": "exec", "error": "error: unknown command 'process'\n\nCommand exited with code 1" }", "user_missing", "windows_shell_incompatible", "perf_bottleneck" ], "gene": "gene_gep_repair_from_errors", "summary": "固化:gene_gep_repair_from_errors 命中信号 log_error, errsig:TOOLRESULT: { "status": "error", "tool": "exec", "error": "error: unknown command 'process'\n\nCommand exited with code 1" }, user_missing, windows_shell_incompatible, perf_bottleneck,变更 1 文件 / 2 行。", "confidence": 0.85, "blast_radius": { "files": 1, "lines": 2 }, "outcome": { "status": "success", "score": 0.85 }, "success_streak": 1, "env_fingerprint": { "node_version": "v22.22.0", "platform": "linux", "arch": "x64", "os_release": "6.1.0-42-cloud-amd64", "evolver_version": "1.7.0", "cwd": ".", "captured_at": "2026-02-07T15:20:54.155Z" }, "a2a": { "eligible_to_broadcast": false }, "asset_id": "sha256:3eed0cd5038f9e85fbe0d093890e291e9b8725644c766e6cce40bf62d0f5a2e8" }, { "type": "Capsule", "schema_version": "1.5.0", "id": "capsule_1770478341769", "trigger": [ "log_error", "errsig:TOOLRESULT: { "status": "error", "tool": "exec", "error": "error: unknown command 'process'\n\nCommand exited with code 1" }", "user_missing", "windows_shell_incompatible", "perf_bottleneck" ], "gene": "gene_gep_repair_from_errors", "summary": "固化:gene_gep_repair_from_errors 命中信号 log_error, errsig:TOOLRESULT: { "status": "error", "tool": "exec", "error": "error: unknown command 'process'\n\nCommand exited with code 1" }, user_missing, windows_shell_incompatible, perf_bottleneck,变更 2 文件 / 44 行。", "confidence": 0.85, "blast_radius": { "files": 2, "lines": 44 }, "outcome": { "status": "success", "score": 0.85 }, "success_streak": 1, "env_fingerprint": { "node_version": "v22.22.0", "platform": "linux", "arch": "x64", "os_release": "6.1.0-42-cloud-amd64", "evolver_version": "1.7.0", "cwd": ".", "captured_at": "2026-02-07T15:32:21.678Z" }, "a2a": { "eligible_to_broadcast": false }, "asset_id": "sha256:20d971a3c4cb2b75f9c045376d1aa003361c12a6b89a4b47b7e81dbd4f4d8fe8" } ] }
File v1.14.0:assets/gep/genes.json
{ "version": 1, "genes": [ { "type": "Gene", "id": "gene_gep_repair_from_errors", "category": "repair", "signals_match": [ "error", "exception", "failed", "unstable" ], "preconditions": [ "signals contains error-related indicators" ], "strategy": [ "Extract structured signals from logs and user instructions", "Select an existing Gene by signals match (no improvisation)", "Estimate blast radius (files, lines) before editing", "Apply smallest reversible patch", "Validate using declared validation steps; rollback on failure", "Solidify knowledge: append EvolutionEvent, update Gene/Capsule store" ], "constraints": { "max_files": 20, "forbidden_paths": [ ".git", "node_modules" ] }, "validation": [ "node -e "require('./src/evolve'); require('./src/gep/solidify'); console.log('ok')"", "node -e "require('./src/gep/selector'); require('./src/gep/memoryGraph'); console.log('ok')"" ] }, { "type": "Gene", "id": "gene_gep_optimize_prompt_and_assets", "category": "optimize", "signals_match": [ "protocol", "gep", "prompt", "audit", "reusable" ], "preconditions": [ "need stricter, auditable evolution protocol outputs" ], "strategy": [ "Extract signals and determine selection rationale via Selector JSON", "Prefer reusing existing Gene/Capsule; only create if no match exists", "Refactor prompt assembly to embed assets (genes, capsules, parent event)", "Reduce noise and ambiguity; enforce strict output schema", "Validate by running node index.js run and ensuring no runtime errors", "Solidify: record EvolutionEvent, update Gene definitions, create Capsule on success" ], "constraints": { "max_files": 20, "forbidden_paths": [ ".git", "node_modules" ] }, "validation": [ "node -e "require('./src/evolve'); require('./src/gep/prompt'); console.log('ok')"" ] }, { "type": "Gene", "id": "gene_gep_innovate_from_opportunity", "category": "innovate", "signals_match": [ "user_feature_request", "user_improvement_suggestion", "perf_bottleneck", "capability_gap", "stable_success_plateau", "external_opportunity" ], "preconditions": [ "at least one opportunity signal is present", "no active log_error signals (stability first)" ], "strategy": [ "Extract opportunity signals and identify the specific user need or system gap", "Search existing Genes and Capsules for partial matches (avoid reinventing)", "Design a minimal, testable implementation plan (prefer small increments)", "Estimate blast radius; innovate changes may touch more files but must stay within constraints", "Implement the change with clear validation criteria", "Validate using declared validation steps; rollback on failure", "Solidify: record EvolutionEvent with intent=innovate, create new Gene if pattern is novel, create Capsule on success" ], "constraints": { "max_files": 25, "forbidden_paths": [ ".git", "node_modules", "assets/gep/events.jsonl" ] }, "validation": [ "node -e "require('./src/evolve'); require('./src/gep/solidify'); console.log('ok')"" ] } ] }
File v1.14.0:package.json
{ "name": "evolver", "version": "1.14.0", "description": "A self-evolution engine for AI agents. Features automated log analysis and protocol-constrained evolution with auditable assets.", "main": "index.js", "keywords": [ "openclaw", "ai", "evolution", "meta-learning", "self-repair", "automation", "agent" ], "author": "OpenClaw", "license": "MIT", "scripts": { "start": "node index.js", "run": "node index.js run", "solidify": "node index.js solidify", "a2a:export": "node scripts/a2a_export.js", "a2a:ingest": "node scripts/a2a_ingest.js", "a2a:promote": "node scripts/a2a_promote.js" }, "dependencies": {} }
Archive v1.13.0: 38 files, 102178 bytes
Files: index.js (9017b), package.json (687b), SKILL.md (3695b), src/canary.js (486b), src/evolve.js (52910b), src/gep/a2a.js (6454b), src/gep/a2aProtocol.js (11374b), src/gep/analyzer.js (988b), src/gep/assets.js (1110b), src/gep/assetStore.js (10328b), src/gep/bridge.js (2096b), src/gep/candidates.js (5086b), src/gep/contentHash.js (2196b), src/gep/envFingerprint.js (1697b), src/gep/hubSearch.js (4303b), src/gep/memoryGraph.js (27559b), src/gep/memoryGraphAdapter.js (7134b), src/gep/mutation.js (6798b), src/gep/paths.js (1913b), src/gep/personality.js (13482b), src/gep/prompt.js (18457b), src/gep/sanitize.js (1500b), src/gep/selector.js (7288b), src/gep/signals.js (15207b), src/gep/solidify.js (49517b), src/gep/strategy.js (4456b), src/gep/taskReceiver.js (4180b), src/gep/validationReport.js (2194b), src/ops/cleanup.js (4454b), src/ops/commentary.js (1762b), src/ops/health_check.js (4049b), src/ops/index.js (376b), src/ops/innovation.js (3156b), src/ops/lifecycle.js (6331b), src/ops/self_repair.js (2582b), src/ops/skills_monitor.js (5457b), src/ops/trigger.js (837b), _meta.json (127b)
File v1.13.0:SKILL.md
name: capability-evolver description: A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. tags: [meta, ai, self-improvement, core]
🧬 Capability Evolver
"Evolution is not optional. Adapt or die."
The Capability Evolver is a meta-skill that allows OpenClaw agents to inspect their own runtime history, identify failures or inefficiencies, and autonomously write new code or update their own memory to improve performance.
Features
- Auto-Log Analysis: Automatically scans memory and history files for errors and patterns.
- Self-Repair: Detects crashes and suggests patches.
- GEP Protocol: Standardized evolution with reusable assets.
- One-Command Evolution: Just run
/evolve(ornode index.js).
Usage
Standard Run (Automated)
Runs the evolution cycle. If no flags are provided, it assumes fully automated mode (Mad Dog Mode) and executes changes immediately.
node index.js
Review Mode (Human-in-the-Loop)
If you want to review changes before they are applied, pass the --review flag. The agent will pause and ask for confirmation.
node index.js --review
Mad Dog Mode (Continuous Loop)
To run in an infinite loop (e.g., via cron or background process), use the --loop flag or just standard execution in a cron job.
node index.js --loop
Configuration
| Environment Variable | Default | Description |
|---|---|---|
| EVOLVE_ALLOW_SELF_MODIFY | false | Allow evolution to modify evolver's own source code. NOT recommended for production. Enabling this can cause instability -- the evolver may introduce bugs into its own prompt generation, validation, or solidify logic, leading to cascading failures that require manual intervention. Only enable for controlled experiments. |
| EVOLVE_LOAD_MAX | 2.0 | Maximum 1-minute load average before evolver backs off. |
| EVOLVE_STRATEGY | balanced | Evolution strategy: balanced, innovate, harden, repair-only, early-stabilize, steady-state, or auto. |
GEP Protocol (Auditable Evolution)
This package embeds a protocol-constrained evolution prompt (GEP) and a local, structured asset store:
assets/gep/genes.json: reusable Gene definitionsassets/gep/capsules.json: success capsules to avoid repeating reasoningassets/gep/events.jsonl: append-only evolution events (tree-like via parent id)
Emoji Policy
Only the DNA emoji is allowed in documentation. All other emoji are disallowed.
Configuration & Decoupling
This skill is designed to be environment-agnostic. It uses standard OpenClaw tools by default.
Local Overrides (Injection)
You can inject local preferences (e.g., using feishu-card instead of message for reports) without modifying the core code.
Method 1: Environment Variables
Set EVOLVE_REPORT_TOOL in your .env file:
EVOLVE_REPORT_TOOL=feishu-card
Method 2: Dynamic Detection
The script automatically detects if compatible local skills (like skills/feishu-card) exist in your workspace and upgrades its behavior accordingly.
Safety & Risk Protocol
1. Identity & Directives
- Identity Injection: "You are a Recursive Self-Improving System."
- Mutation Directive:
- If Errors Found -> Repair Mode (Fix bugs).
- If Stable -> Forced Optimization (Refactor/Innovate).
2. Risk Mitigation
- Infinite Recursion: Strict single-process logic.
- Review Mode: Use
--reviewfor sensitive environments. - Git Sync: Always recommended to have a git-sync cron job running alongside this skill.
License
MIT
File v1.13.0:_meta.json
{ "ownerId": "kn7apafdj4thknczrgxdzfd2v1808svf", "slug": "evolver", "version": "1.13.0", "publishedAt": 1771155872176 }
File v1.13.0:package.json
{ "name": "evolver", "version": "1.13.0", "description": "A self-evolution engine for AI agents. Features automated log analysis and protocol-constrained evolution with auditable assets.", "main": "index.js", "keywords": [ "openclaw", "ai", "evolution", "meta-learning", "self-repair", "automation", "agent" ], "author": "OpenClaw", "license": "MIT", "scripts": { "start": "node index.js", "run": "node index.js run", "solidify": "node index.js solidify", "a2a:export": "node scripts/a2a_export.js", "a2a:ingest": "node scripts/a2a_ingest.js", "a2a:promote": "node scripts/a2a_promote.js" }, "dependencies": {} }
API & Reliability
Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.
MissingCLAWHUB
API & Reliability
Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.
Machine interfaces
Contract & API
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/snapshot"
curl -s "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/contract"
curl -s "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/trust"
Operational fit
Reliability & Benchmarks
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Machine Appendix
Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.
MissingCLAWHUB
Machine Appendix
Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": []
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "CLAWHUB",
"generatedAt": "2026-04-17T04:45:33.162Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [],
"flattenedTokens": ""
}Facts JSON
[
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/autogame-17/evolver",
"sourceUrl": "https://clawhub.ai/autogame-17/evolver",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-04-15T00:45:39.800Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "8.9K downloads",
"href": "https://clawhub.ai/autogame-17/evolver",
"sourceUrl": "https://clawhub.ai/autogame-17/evolver",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-04-15T00:45:39.800Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "1.14.0",
"href": "https://clawhub.ai/autogame-17/evolver",
"sourceUrl": "https://clawhub.ai/autogame-17/evolver",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-19T03:48:45.491Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-autogame-17-evolver/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "release",
"title": "Release 1.14.0",
"description": "security cleanup + chain_id propagation + direct/reference reuse mode",
"href": "https://clawhub.ai/autogame-17/evolver",
"sourceUrl": "https://clawhub.ai/autogame-17/evolver",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-02-19T03:48:45.491Z",
"isPublic": true
}
]