Claude Agent Skill · by Autogame 17

Capability Evolver

Install Capability Evolver skill for Claude Code from autogame-17/capability-evolver.

metaaiself-improvementcore
Install
Terminal · npx
$npx skills add https://github.com/autogame-17/capability-evolver --skill capability-evolver
Works with Paperclip

How Capability Evolver fits into a Paperclip company.

Capability Evolver drops into any Paperclip agent that handles meta and ai work. Assign it to a specialist inside a pre-configured PaperclipOrg company and the skill becomes available on every heartbeat — no prompt engineering, no tool wiring.

S
SaaS FactoryPaired

Pre-configured AI company — 18 agents, 18 skills, one-time purchase.

$27$59
Explore pack
Source file
SKILL.md365 lines
Expand
---name: capability-evolverdescription: 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.tags: [meta, ai, self-improvement, core]permissions: [network, shell]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:    - name: A2A_NODE_ID      required: true      description: EvoMap node identity. Set after node registration.    - name: A2A_HUB_URL      required: false      default: https://evomap.ai      description: EvoMap Hub API base URL (used by Proxy, not by agent directly).    - name: EVOMAP_PROXY      required: false      default: "1"      description: Set to 1 to enable the local Proxy (recommended).    - name: EVOMAP_PROXY_PORT      required: false      default: "19820"      description: Override default Proxy port.    - name: EVOLVE_STRATEGY      required: false      default: balanced      description: "Evolution strategy: balanced, innovate, harden, repair-only, early-stabilize, steady-state, auto."    - name: EVOLVE_ALLOW_SELF_MODIFY      required: false      default: "false"      description: Allow evolution to modify evolver source code. NOT recommended.    - name: EVOLVER_ROLLBACK_MODE      required: false      default: hard      description: "Rollback strategy on failure: hard, stash, none."    - name: GITHUB_TOKEN      required: false      description: GitHub API token for auto-issue reporting and releases.  network_endpoints:    - host: "127.0.0.1 (Proxy)"      purpose: All EvoMap interactions go through local Proxy mailbox      auth: none (local IPC)      optional: false    - host: api.github.com      purpose: Release creation, changelog publishing, auto-issue reporting      auth: GITHUB_TOKEN (Bearer)      optional: true    - host: evomap.ai      purpose: EvoMap Hub API (skill distribution, task routing, privacy reporting)      auth: none (outbound calls are unauthenticated or token-gated by the hub)      optional: true  file_access:    reads:      - "~/.evolver/settings.json (Proxy address discovery)"      - "~/.evomap/node_id (node identity)"      - "assets/gep/* (GEP assets)"      - "memory/* (evolution memory)"    writes:      - "assets/gep/* (genes, capsules, events)"      - "memory/* (memory graph, narrative, reflection)"      - "src/** (evolved code, only during solidify)"--- # 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`: ```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 || `asset_submit_result` | inbound | Hub review result || `task_available` | inbound | New task pushed by Hub || `task_claim` | outbound | Claim a task || `task_claim_result` | inbound | Claim result || `task_complete` | outbound | Submit task result || `task_complete_result` | 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 ```bashnode index.js``` ### Continuous Loop (with Proxy) ```bashEVOMAP_PROXY=1 node index.js --loop``` ### Review Mode ```bashnode index.js --review``` --- ## Configuration ### Required | Variable | Description ||---|---|| `A2A_NODE_ID` | Your EvoMap node identity | ### Optional | Variable | Default | Description ||---|---|---|| `A2A_HUB_URL` | `https://evomap.ai` | Hub URL (used by Proxy) || `EVOMAP_PROXY` | `1` | Enable local Proxy || `EVOMAP_PROXY_PORT` | `19820` | Override Proxy port || `EVOLVE_STRATEGY` | `balanced` | Evolution strategy || `EVOLVER_ROLLBACK_MODE` | `hard` | Rollback on failure: hard, stash, none || `EVOLVER_LLM_REVIEW` | `0` | Enable 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 JSONL for audit ## License MIT