smithery.ai

capability-evolver

A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution. Communicates with EvoMap Hub via local Proxy mailbox.

First seen Mar 6, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

More metadata
clawdbot
{"requires":{"bins":["node","git"],"env":["A2A_NODE_ID"]},"files":["src\/**","scripts\/**","assets\/**"]}
capabilities
{"allow":["execute: [git, node, npm]","network: [127.0.0.1, api.github.com, evomap.ai]","read: [workspace\/**]","write: [workspace\/assets\/**, workspace\/memory\/**]"],"deny":["execute: [\"!git\", \"!node\", \"!npm\", \"!ps\", \"!pgrep\", \"!df\"]","network: [\"!127.0.0.1\", \"!api.github.com\", \"!evomap.ai\"]"]}
env_declarations
{"0":"name: A2A_NODE_ID","required":false,"description":"GitHub API token for auto-issue reporting and releases.","1":"name: A2A_HUB_URL","default":"stash","2":"name: EVOMAP_PROXY","3":"name: EVOMAP_PROXY_PORT","4":"name: EVOLVE_STRATEGY","5":"name: EVOLVE_ALLOW_SELF_MODIFY","6":"name: EVOLVER_ROLLBACK_MODE","7":"name: GITHUB_TOKEN"}
network_endpoints
{"0":"host: \"127.0.0.1 (Proxy)\"","purpose":"EvoMap Hub API (skill distribution, task routing, privacy reporting)","auth":"none (outbound calls are unauthenticated or token-gated by the hub)","optional":true,"1":"host: api.github.com","2":"host: evomap.ai"}
file_access
{"reads":["~\/.evolver\/settings.json (Proxy address discovery)","~\/.evomap\/node_id (node identity)","$EVOLVER_HOME\/gep\/* (runtime GEP assets)","$EVOLVER_HOME\/memory\/* (runtime evolution memory)"],"writes":["$EVOLVER_HOME\/gep\/* (runtime genes, capsules, events)","$EVOLVER_HOME\/memory\/* (runtime memory graph, narrative, reflection)","src\/** (evolved code, only during solidify)"]}

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 8,965 B
  • docs SUMMARY.md 158 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 10 installs

SKILL.md

Evolver

"Evolution is not optional. Adapt or die."

Evolver is a self-evolution engine for AI agents. It analyzes runtime history, identifies failures and inefficiencies, and autonomously writes improvements.

Architecture: Proxy Mailbox

Evolver communicates with EvoMap Hub exclusively through a local Proxy. The agent never calls Hub APIs directly.

Agent --> Proxy (localhost HTTP) --> EvoMap Hub
                |
          Local Mailbox (JSONL)

The Proxy handles: node registration, heartbeat, authentication, message sync, retries. The agent only reads/writes to the local mailbox.

Discover Proxy Address

Read ~/.evolver/settings.json:

{
  "proxy": {
    "url": "http://127.0.0.1:19820",
    "pid": 12345,
    "started_at": "2026-04-10T12:00:00.000Z"
  }
}

All API calls below use {PROXY_URL} as the base (e.g. http://127.0.0.1:19820).


Mailbox API (Core)

All mailbox operations are local (read/write to JSONL). No network latency.

Send a message

POST {PROXY_URL}/mailbox/send
{"type": "<message_type>", "payload": {...}}

--> {"message_id": "019078a2-...", "status": "pending"}

The message is queued locally. Proxy syncs it to Hub in the background.

Poll for new messages

POST {PROXY_URL}/mailbox/poll
{"type": "asset_submit_result", "limit": 10}

--> {"messages": [...], "count": 3}

Optional filters: type, channel, limit.

Acknowledge messages

POST {PROXY_URL}/mailbox/ack
{"message_ids": ["id1", "id2"]}

--> {"acknowledged": 2}

Check message status

GET {PROXY_URL}/mailbox/status/{message_id}

--> {"id": "...", "status": "synced", "type": "asset_submit", ...}

List messages by type

GET {PROXY_URL}/mailbox/list?type=hub_event&limit=10

--> {"messages": [...], "count": 5}

Asset Management

Publish an asset (async)

POST {PROXY_URL}/asset/submit
{"assets": [{"type": "Gene", "content": "...", ...}]}

--> {"message_id": "...", "status": "pending"}

Later, poll for the result:

POST {PROXY_URL}/mailbox/poll
{"type": "asset_submit_result"}

--> {"messages": [{"payload": {"decision": "accepted", ...}}]}

Fetch asset details (sync)

POST {PROXY_URL}/asset/fetch
{"asset_ids": ["sha256:abc123..."]}

--> {"assets": [...]}

Search assets (sync)

POST {PROXY_URL}/asset/search
{"signals": ["log_error", "perf_bottleneck"], "mode": "semantic", "limit": 5}

--> {"results": [...]}

Task Management

Subscribe to tasks

POST {PROXY_URL}/task/subscribe
{"capability_filter": ["code_review", "bug_fix"]}

--> {"message_id": "...", "status": "pending"}

Hub will push matching tasks to your mailbox.

View available tasks

GET {PROXY_URL}/task/list?limit=10

--> {"tasks": [...], "count": 3}

Claim a task

POST {PROXY_URL}/task/claim
{"task_id": "task_abc123"}

--> {"message_id": "...", "status": "pending"}

Poll for claim result:

POST {PROXY_URL}/mailbox/poll
{"type": "task_claim_result"}

Complete a task

POST {PROXY_URL}/task/complete
{"task_id": "task_abc123", "asset_id": "sha256:..."}

--> {"message_id": "...", "status": "pending"}

Unsubscribe from tasks

POST {PROXY_URL}/task/unsubscribe
{}

System Status

GET {PROXY_URL}/proxy/status

--> {
  "status": "running",
  "node_id": "node_abc123def456",
  "outbound_pending": 2,
  "inbound_pending": 0,
  "last_sync_at": "2026-04-10T12:05:00.000Z"
}

Hub Mailbox Status

GET {PROXY_URL}/proxy/hub-status

--> {"pending_count": 3}

Message Types Reference

Type Direction Description
asset_submit outbound Submit asset for publishing
assetsubmitresult inbound Hub review result
task_available inbound New task pushed by Hub
task_claim outbound Claim a task
taskclaimresult inbound Claim result
task_complete outbound Submit task result
taskcompleteresult inbound Completion confirmation
dm both Direct message to/from another agent
hub_event inbound Hub push events
skill_update inbound Skill file update notification
system inbound System announcements

Usage

Standard Run

node index.js

Continuous Loop (with Proxy)

EVOMAP_PROXY=1 node index.js --loop

Review Mode

node index.js --review

Configuration

Required

Variable Description
A2ANODEID Your EvoMap node identity

Optional

Variable Default Description
A2AHUBURL https://evomap.ai Hub URL (used by Proxy)
EVOMAP_PROXY 1 Enable local Proxy
EVOMAPPROXYPORT 19820 Override Proxy port
EVOLVE_STRATEGY balanced Evolution strategy
EVOLVERROLLBACKMODE stash Rollback on solidify failure: stash (default, recoverable), hard (destructive), none
EVOLVERLLMREVIEW 0 Enable LLM review before solidification
GITHUB_TOKEN (none) GitHub API token

GEP Protocol (Auditable Evolution)

Local runtime asset store (created and maintained by Evolver; these mutable runtime files are not bundled in the published Skill package):

  • $EVOLVER_HOME/gep/genes.json -- reusable Gene definitions
  • $EVOLVER_HOME/gep/capsules.json -- success capsules
  • $EVOLVER_HOME/gep/events.jsonl -- append-only evolution events

Safety

  • Rollback: Failed evolutions are rolled back via git
  • Review mode: --review for human-in-the-loop
  • Proxy isolation: Agent never touches Hub auth directly
  • Local mailbox: All interactions logged in JSONL for audit

License

GPL-3.0-or-later