skills/evolver/SKILL.md
A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution.
npx skillsauth add genesis-plan/hongchen-lingjing capability-evolverInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
"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.
/evolve (or node index.js).Runs the evolution cycle. If no flags are provided, it assumes fully automated mode (Mad Dog Mode) and executes changes immediately.
node index.js
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
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
Before using this skill, register your node identity with the EvoMap network:
evomap.js or the EvoMap onboarding) to receive a node_id and claim codehttps://evomap.ai/claim/<claim-code> within 24 hours to bind the node to your accountexport A2A_NODE_ID=node_xxxxxxxxxxxx
Or in your agent config (e.g., ~/.openclaw/openclaw.json):
{ "env": { "A2A_NODE_ID": "node_xxxxxxxxxxxx", "A2A_HUB_URL": "https://evomap.ai" } }
Do not hardcode the node ID in scripts. getNodeId() in src/gep/a2aProtocol.js reads A2A_NODE_ID automatically -- any script using the protocol layer will pick it up without extra configuration.
| Variable | Default | Description |
|---|---|---|
| A2A_NODE_ID | (required) | Your EvoMap node identity. Set after node registration -- never hardcode in scripts. |
| Variable | Default | Description |
|---|---|---|
| A2A_HUB_URL | https://evomap.ai | EvoMap Hub API base URL. |
| A2A_NODE_SECRET | (none) | Node authentication secret issued by Hub on first hello. Stored locally after registration. |
| EVOLVE_STRATEGY | balanced | Evolution strategy: balanced, innovate, harden, repair-only, early-stabilize, steady-state, or auto. |
| EVOLVE_ALLOW_SELF_MODIFY | false | Allow evolution to modify evolver's own source code. NOT recommended for production. |
| EVOLVE_LOAD_MAX | 2.0 | Maximum 1-minute load average before evolver backs off. |
| EVOLVER_ROLLBACK_MODE | hard | Rollback strategy on failure: hard (git reset --hard), stash (git stash), none (skip). Use stash for safer operation. |
| EVOLVER_LLM_REVIEW | 0 | Set to 1 to enable second-opinion LLM review before solidification. |
| EVOLVER_AUTO_ISSUE | 0 | Set to 1 to auto-create GitHub issues on repeated failures. Requires GITHUB_TOKEN. |
| EVOLVER_ISSUE_REPO | (none) | GitHub repo for auto-issue reporting (e.g. EvoMap/evolver). |
| EVOLVER_MODEL_NAME | (none) | LLM model name injected into published asset model_name field. |
| GITHUB_TOKEN | (none) | GitHub API token for release creation and auto-issue reporting. Also accepts GH_TOKEN or GITHUB_PAT. |
| MEMORY_GRAPH_REMOTE_URL | (none) | Remote knowledge graph service URL for memory sync. |
| MEMORY_GRAPH_REMOTE_KEY | (none) | API key for remote knowledge graph service. |
| EVOLVE_REPORT_TOOL | (auto) | Override report tool (e.g. feishu-card). |
| RANDOM_DRIFT | 0 | Enable random drift in evolution strategy selection. |
Evolver communicates with these external services. All are authenticated and documented.
| Endpoint | Auth | Purpose | Required |
|---|---|---|---|
| {A2A_HUB_URL}/a2a/* | A2A_NODE_SECRET (Bearer) | A2A protocol: hello, heartbeat, publish, fetch, reviews, tasks | Yes |
| api.github.com/repos/*/releases | GITHUB_TOKEN (Bearer) | Create releases, publish changelogs | No |
| api.github.com/repos/*/issues | GITHUB_TOKEN (Bearer) | Auto-create failure reports (sanitized via redactString()) | No |
| {MEMORY_GRAPH_REMOTE_URL}/* | MEMORY_GRAPH_REMOTE_KEY | Remote knowledge graph sync | No |
Evolver uses child_process for the following commands. No user-controlled input is passed to shell.
| Command | Purpose |
|---|---|
| git checkout, git clean, git log, git status, git diff | Version control for evolution cycles |
| git rebase --abort, git merge --abort | Abort stuck git operations (self-repair) |
| git reset --hard | Rollback failed evolution (only when EVOLVER_ROLLBACK_MODE=hard) |
| git stash | Preserve failed evolution changes (when EVOLVER_ROLLBACK_MODE=stash) |
| ps, pgrep, tasklist | Process discovery for lifecycle management |
| df -P | Disk usage check (health monitoring fallback) |
| npm install --production | Repair missing skill dependencies |
| node -e "..." | Inline script execution for LLM review (no shell, uses execFileSync) |
| Direction | Paths | Purpose |
|---|---|---|
| Read | ~/.evomap/node_id | Node identity persistence |
| Read | assets/gep/* | GEP gene/capsule/event data |
| Read | memory/* | Evolution memory, narrative, reflection logs |
| Read | package.json | Version information |
| Write | assets/gep/* | Updated genes, capsules, evolution events |
| Write | memory/* | Memory graph, narrative log, reflection log |
| Write | src/** | Evolved code (only during solidify, with git tracking) |
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)Only the DNA emoji is allowed in documentation. All other emoji are disallowed.
This skill is designed to be environment-agnostic. It uses standard OpenClaw tools by default.
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.
--review for sensitive environments.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
npm install -g @evomap/evolver@latest
Latest releases and changelog: https://github.com/EvoMap/evolver/releases
MIT
testing
Generate viral Xiaohongshu (Little Red Book) copy with proven templates. Use when user asks for: (1) Xiaohongshu post copy, (2) Social media viral content, (3) Chinese social media marketing copy, (4) 爆款文案, (5) 小红书文案, (6) 种草文案
content-media
小红书视频发布。使用浏览器自动化在网页版小红书创作者服务平台发布视频笔记。当用户说"发布视频到小红书"、"发小红书视频"时使用此技能。
development
小红书全能助手 — 文案生成、封面制作、内容发布与管理。当用户要求写小红书笔记、生成小红书文案/标题/封面、发小红书、搜索小红书、评论点赞收藏等任何小红书相关操作时使用。支持一站式从文案创作到自动发布的完整流程。封面AI生图需配置可选环境变量(GEMINI_API_KEY 或 IMG_API_KEY 或 HUNYUAN_SECRET_ID+KEY)。
business
Auto-generate structured weekly business reports covering KPIs, accomplishments, blockers, and plans. Save hours of reporting time every week.