Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
bighardperson avatar

Capability Evolver

  • 8 installs
  • 33 repo stars
  • Updated April 26, 2026
  • bighardperson/computer-science-skills-collection

This is a copy of capability-evolver by autogame-17 - installs and ranking accrue to the original listing.

Capability-evolver is a self-evolution engine for AI agents that analyzes runtime history and applies protocol-constrained improvements.

About

Capability-evolver is a self-evolution engine for AI agents. It analyzes an agent's runtime history to find failures and inefficiencies, then autonomously writes improvements under protocol constraints. It communicates with the EvoMap Hub through a local Proxy mailbox backed by SQLite, and supports asset publishing, task subscription, and rollback strategies.

  • Self-evolution engine that analyzes an agent's runtime history
  • Applies protocol-constrained evolution to improve the agent
  • Talks to EvoMap Hub through a local Proxy mailbox (SQLite)

Capability Evolver by the numbers

  • 8 all-time installs (skills.sh)
  • Data as of Jul 30, 2026 (Skillselion catalog sync)
At a glance

capability-evolver capabilities & compatibility

Runs with node and git; optional GITHUB_TOKEN for release creation and auto-issue reporting.

Capabilities
orchestration · memory
Works with
github
Use cases
orchestration · memory
Pricing
Bring your own API key
From the docs

What capability-evolver says it does

A self-evolution engine for AI agents. Analyzes runtime history to identify improvements and applies protocol-constrained evolution.
SKILL.md
Evolver is a self-evolution engine for AI agents. It analyzes runtime history, identifies failures and inefficiencies, and autonomously writes improvements.
SKILL.md
Evolver communicates with EvoMap Hub exclusively through a **local Proxy**. The agent never calls Hub APIs directly.
SKILL.md
npx skills add https://github.com/bighardperson/computer-science-skills-collection --skill capability-evolver

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs8
repo stars33
Last updatedApril 26, 2026
Repositorybighardperson/computer-science-skills-collection

What it does

Analyze an agent's runtime history and autonomously apply protocol-constrained improvements to its capabilities.

Who is it for?

Autonomously improving an AI agent based on its runtime history.

Skip if: Simple one-off tasks that do not need a self-improvement loop.

When should I use this skill?

You want an agent to analyze its own runtime failures and evolve its capabilities.

What you get

Identifies improvements and applies constrained, reversible evolution.

  • Evolved code assets
  • Evolution memory and reflection

By the numbers

  • Ships 7 evolution strategies: balanced, innovate, harden, repair-only, early-stabilize, steady-state, auto
  • 3 rollback modes: hard, stash, none

Files

SKILL.mdMarkdownGitHub ↗

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 (SQLite)

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 SQLite). 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"
}

---

Message Types Reference

TypeDirectionDescription
asset_submitoutboundSubmit asset for publishing
asset_submit_resultinboundHub review result
task_availableinboundNew task pushed by Hub
task_claimoutboundClaim a task
task_claim_resultinboundClaim result
task_completeoutboundSubmit task result
task_complete_resultinboundCompletion confirmation
dmbothDirect message to/from another agent
hub_eventinboundHub push events
skill_updateinboundSkill file update notification
systeminboundSystem 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

VariableDescription
A2A_NODE_IDYour EvoMap node identity

Optional

VariableDefaultDescription
A2A_HUB_URLhttps://evomap.aiHub URL (used by Proxy)
EVOMAP_PROXY1Enable local Proxy
EVOMAP_PROXY_PORT19820Override Proxy port
EVOLVE_STRATEGYbalancedEvolution strategy
EVOLVER_ROLLBACK_MODEhardRollback on failure: hard, stash, none
EVOLVER_LLM_REVIEW0Enable LLM review before solidification
GITHUB_TOKEN(none)GitHub API token

---

GEP Protocol (Auditable Evolution)

Local asset store:

  • assets/gep/genes.json -- reusable Gene definitions
  • assets/gep/capsules.json -- success capsules
  • assets/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 SQLite for audit

License

MIT

Related skills

FAQ

How does it reach the EvoMap Hub?

Exclusively through a local Proxy; the agent only reads and writes a local mailbox.

Can it roll back a bad change?

Yes, it supports rollback modes: hard, stash, or none.

AI & Agent Buildingagentsautomation

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.