Swarms Multi-Agent Framework
kyegomez/swarms
Teaches the Swarms Python framework: the Agent class, tools, loops, memory and multi-agent structures such as sequential, concurrent and graph workflows.
Guidance for using A-Evolve to improve an AI agent automatically, evolving its prompts, skills and memory against a benchmark through solve, observe and evolve cycles.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agents --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .claude/skills && cp -r skills-src/14-agents/a-evolve .claude/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .claude/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolveType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agents --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .agents/skills && cp -r skills-src/14-agents/a-evolve .agents/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .agents/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agents --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/14-agents/a-evolve .cursor/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .cursor/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Orchestra-Research/AI-Research-SKILLs.git --path 14-agents/a-evolve--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agents --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/14-agents/a-evolve .gemini/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .gemini/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agentsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .github/skills && cp -r skills-src/14-agents/a-evolve .github/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .github/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Orchestra-Research/AI-Research-SKILLs evolving-ai-agents --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Orchestra-Research/AI-Research-SKILLs.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/14-agents/a-evolve .opencode/skills/evolving-ai-agents && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "evolving-ai-agents" agent skill from https://github.com/Orchestra-Research/AI-Research-SKILLs/tree/main/14-agents/a-evolve into .opencode/skills/evolving-ai-agents/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "evolving-ai-agents", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
evolving-ai-agentsGuidance for using A-Evolve to improve an AI agent automatically, evolving its prompts, skills and memory against a benchmark through solve, observe and evolve cycles.
A-Evolve keeps everything that can evolve about an agent as files in a workspace, with a `manifest.yaml` plus folders for prompts, skills, memory and tools. Each cycle has the agent solve a batch of benchmark tasks, the benchmark returns feedback on its trajectories, and an LLM-driven evolution engine mutates the workspace files. Changes are gated and can be rolled back, and every change is kept in git history.
A three-line example creates an `Evolver` for the built-in SWE agent and the SWE-bench Verified benchmark and runs 10 cycles. Installation is `pip install a-evolve`, with an anthropic extra or an all-providers extra. The skill presents A-Evolve as an optimizer that sits on top of an existing agent framework, and sends multi-agent orchestration to CrewAI or LangGraph, one-shot tasks to LangChain or LlamaIndex, and prompt-only tuning to DSPy. Reference files cover the API, architecture, design patterns, examples, issues, releases and tutorials.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 773a529. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitpipFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and pip, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ANTHROPIC_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
A-Evolve Agent Evolution loads about 3.6k tokens when it runs, and up to ~36k if it reads all its reference files. Until then it costs about 73 tokens; SKILL.md has 937 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Orchestra-Research/AI-Research-SKILLs at commit 773a529, republished under its MIT licence (© Orchestra-Research). 937 words, ~3,616 tokens.
.claude/skills/evolving-ai-agents/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.A-Evolve is universal infrastructure for evolving any AI agent across any domain using any evolution algorithm with zero manual engineering. It represents all evolvable agent state as files (prompts, skills, memory, tools), runs iterative solve-observe-evolve cycles against benchmarks, and uses LLM-driven mutation to improve agent performance automatically.
Benchmark results (Claude Opus 4.6):
Use A-Evolve when:
Key differentiator: Other frameworks build agents; A-Evolve optimizes them. It sits on top of any agent framework and makes it better through automated evolution.
Do NOT use A-Evolve for:
pip install a-evolve # Core
pip install a-evolve[anthropic] # With Claude support
pip install a-evolve[all] # All providersimport agent_evolve as ae
evolver = ae.Evolver(agent="swe", benchmark="swe-verified")
results = evolver.run(cycles=10)
print(f"Final score: {results.final_score}")This copies the built-in SWE seed workspace, runs 10 evolution cycles against SWE-bench Verified, and returns the optimized agent.
All evolvable state lives as files in a workspace directory:
my-agent/
├── manifest.yaml # Metadata + entrypoint
├── prompts/
│ ├── system.md # Main system prompt (evolved)
│ └── fragments/ # Modular prompt pieces
├── skills/
│ └── skill-name/
│ └── SKILL.md # Reusable procedure with frontmatter
├── memory/
│ ├── episodic.jsonl # Lessons from failures
│ └── semantic.jsonl # General knowledge
├── tools/
│ ├── registry.yaml # Tool manifest
│ └── tool_name.py # Tool implementations
└── evolution/ # Managed by engine (metrics, history)Each cycle follows five phases:
# 1. Agent — implements solve()
class MyAgent(ae.BaseAgent):
def solve(self, task: ae.Task) -> ae.Trajectory:
# Domain-specific solving logic
return ae.Trajectory(task_id=task.id, output=result, steps=steps)
# 2. Benchmark — implements get_tasks() and evaluate()
class MyBenchmark(ae.BenchmarkAdapter):
def get_tasks(self, split="train", limit=None) -> list[ae.Task]:
return [ae.Task(id="1", input="...")]
def evaluate(self, task: ae.Task, trajectory: ae.Trajectory) -> ae.Feedback:
return ae.Feedback(success=True, score=0.95, detail="Passed")
# 3. Engine — implements step()
class MyEngine(ae.EvolutionEngine):
def step(self, workspace, observations, history, trial):
# Mutate workspace based on observations
return ae.StepResult(mutated=True, summary="Updated prompts")Use when: You have a working agent and want to optimize it against a benchmark.
Critical Requirements:
BaseAgent.solve() returning TrajectoryBenchmarkAdapter with get_tasks() and evaluate()manifest.yaml with entrypoint and evolvable layersprompts/system.mdgit init && git add -A && git commit -m "init")import agent_evolve as ae
# Configure evolution parameters
config = ae.EvolveConfig(
batch_size=10, # Tasks per solve round
max_cycles=20, # Maximum evolution iterations
evolve_prompts=True, # Mutate system prompt
evolve_skills=True, # Discover and refine skills
evolve_memory=True, # Build episodic memory
evolver_model="us.anthropic.claude-opus-4-6-v1",
)
# Point to your agent workspace and benchmark
evolver = ae.Evolver(
agent="./my-agent-workspace",
benchmark="swe-verified", # Or custom BenchmarkAdapter instance
config=config,
)
# Run evolution
results = evolver.run(cycles=10)
# Inspect results
print(f"Cycles completed: {results.cycles_completed}")
print(f"Final score: {results.final_score}")
print(f"Converged: {results.converged}")
for cycle_num, score in enumerate(results.score_history):
print(f" Cycle {cycle_num + 1}: {score:.3f}")The workspace is now optimized. Inspect what changed:
cd my-agent-workspace
git log --oneline # See evo-1, evo-2, ... tags
git diff evo-1 evo-10 # Compare first and last evolution
cat prompts/system.md # Read evolved prompt
ls skills/ # See discovered skillsUse when: You want to evolve agents on your own domain-specific tasks.
Critical Requirements:
import agent_evolve as ae
class CodeReviewBenchmark(ae.BenchmarkAdapter):
"""Evaluate agents on code review quality."""
def get_tasks(self, split="train", limit=None):
tasks = load_review_dataset(split)
if limit:
tasks = tasks[:limit]
return [
ae.Task(id=t["id"], input=t["diff"], metadata={"expected": t["comments"]})
for t in tasks
]
def evaluate(self, task, trajectory):
expected = task.metadata["expected"]
actual = trajectory.output
precision, recall = compute_review_metrics(expected, actual)
f1 = 2 * precision * recall / (precision + recall + 1e-9)
return ae.Feedback(
success=f1 > 0.7,
score=f1,
detail=f"P={precision:.2f} R={recall:.2f} F1={f1:.2f}",
)
# Use with any agent
evolver = ae.Evolver(agent="./my-agent", benchmark=CodeReviewBenchmark())
results = evolver.run(cycles=5)Use when: The default LLM-driven mutation doesn't suit your domain.
import agent_evolve as ae
class RuleBasedEngine(ae.EvolutionEngine):
def step(self, workspace, observations, history, trial):
failures = [o for o in observations if not o.feedback.success]
if not failures:
return ae.StepResult(mutated=False, summary="No failures to address")
# Analyze failure patterns
error_types = categorize_errors(failures)
prompt = workspace.read_prompt()
# Append learned rules to prompt
new_rules = generate_rules(error_types)
workspace.write_prompt(prompt + "\n" + new_rules)
return ae.StepResult(
mutated=True,
summary=f"Added {len(new_rules)} rules from {len(failures)} failures",
)
evolver = ae.Evolver(
agent="./my-agent",
benchmark="my-benchmark",
engine=RuleBasedEngine(),
)| Agent | Domain | Model | Key Feature |
|---|---|---|---|
swe | SWE-bench | Claude Opus 4.6 | Verify-fix loop, skill proposals |
terminal | Terminal-Bench | Claude Sonnet 4 | Concurrent timeout, env discovery |
mcp | MCP-Atlas | Claude Opus 4.6 | MCP server integration |
| Name | Domain | Metric |
|---|---|---|
swe-verified | Code patching | Pass rate |
mcp-atlas | Tool calling | Accuracy |
terminal2 | Shell tasks | Pass rate |
skill-bench | Multi-step procedures | Accuracy |
arc-agi-3 | Interactive games | RHAE score |
| Algorithm | Strategy | Best For |
|---|---|---|
| A-Evolve/SkillForge | LLM-driven workspace mutation | General-purpose |
| Guided Synthesis | Memory-first, curated skills | Skill discovery |
| Adaptive Evolution | Reward tracking, filtered observations | Fine-grained control |
| Adaptive Skill | Skill-centric refinement | Skill-heavy domains |
ae.EvolveConfig(
batch_size=10, # Tasks per solve round
max_cycles=20, # Max evolution iterations
holdout_ratio=0.2, # Test set split for gating
evolve_prompts=True, # Mutate system prompts
evolve_skills=True, # Discover/refine skills
evolve_memory=True, # Build episodic memory
evolve_tools=False, # Mutate tool implementations
trajectory_only=False, # Hide scores from evolver
evolver_model="us.anthropic.claude-opus-4-6-v1",
evolver_max_tokens=16384,
egl_threshold=0.05, # Convergence epsilon
egl_window=3, # Cycles for plateau detection
)Convergence: Evolution stops early when score improvement is less than egl_threshold over the last egl_window cycles.
Skills are reusable procedures discovered and refined during evolution:
---
name: verify-edge-cases
description: "TRIGGER when: checking boundary conditions. DO NOT TRIGGER: for happy-path tests."
---
## Pattern
Test all falsy-but-valid values: 0, False, "", [], {}
## Process
1. List all input boundaries
2. Run each against the implementation
3. Check both output AND side effectsSkills accumulate in the workspace skills/ directory. The evolver curates them: ACCEPT new skills, MERGE overlapping ones, SKIP redundant proposals. Target: 5–10 broad skills, not 30 narrow ones.
Cause: Batch size too small or evolver doesn't see enough failure diversity.
Fix: Increase batch_size (try 15–20) and ensure benchmark tasks cover diverse failure modes. Set trajectory_only=False so the evolver sees scores.
Cause: Skill library bloat from accepting every proposal. Fix: The default SkillForge engine curates skills automatically. If using a custom engine, implement merging logic to consolidate overlapping skills.
Cause: Multiple evolution runs on the same workspace.
Fix: Each evolver.run() should operate on its own workspace copy. Use Evolver(agent="seed-name") to auto-copy the seed each time.
Cause: Rate limits or authentication issues with the evolver model.
Fix: Check evolver_model config. For Bedrock, ensure AWS credentials are configured. For Anthropic, set ANTHROPIC_API_KEY.
Cause: Agent doesn't implement reload_from_fs().
Fix: Override reload_from_fs() in your BaseAgent subclass to re-read prompts, skills, and memory from the workspace after each evolution cycle.
When this skill is loaded:
"swe", "terminal", "mcp" have battle-tested configurationsegl_threshold=0.05 with egl_window=3 may be too aggressive for your domainprompts/system.md and skills/ to understand what the evolver learnedPro Tips:
trajectory_only=False (default) so the evolver sees scores — this accelerates learningbatch_size=10 and adjust based on task diversityholdout_ratio=0.2 to prevent overfitting to training tasksgit diff evo-1 evo-N shows the cumulative effect of all mutationsfeedback.detail strings with specific failure reasonsWarning Signs:
converged=True after 2-3 cycles → increase egl_window and decrease egl_threshold© Orchestra-Research, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 8 other files (references) in 14-agents/a-evolve of Orchestra-Research/AI-Research-SKILLs.
Open the folder on GitHubat commit 773a529
A-Evolve Agent Evolution next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| A-Evolve Agent Evolution this skillOrchestra-Research/AI-Research-SKILLs | 13k | — | ~3.6k | Automated safety check: Pass | MIT | |
| Swarms Multi-Agent Frameworkkyegomez/swarms | 7.2k | — | ~5.5k | Automated safety check: Pass | Apache-2.0 | |
| Uipath FunctionsUiPath/skills | 168 | — | ~3.6k | Automated safety check: Notes | MIT | |
| Strandsstrands-agents/harness-sdk | 8.7k | — | ~1k | Automated safety check: Pass | Apache-2.0 | |
| Analyzing Claude Code Sessionsamd/gaia | 1.6k | — | ~2.3k | Automated safety check: Pass | MIT | |
| Clawpathy AutoresearchClawBio/ClawBio | 1.2k | — | ~1.4k | Automated safety check: Pass | MIT |
kyegomez/swarms
Teaches the Swarms Python framework: the Agent class, tools, loops, memory and multi-agent structures such as sequential, concurrent and graph workflows.
UiPath/skills
UiPath Coded Functions — deterministic Python or TypeScript/JavaScript units built with the uip function CLI (new -l py|ts|js, init, serve, run, pack, publish); the functions map in uipath.json…
strands-agents/harness-sdk
Build, extend, evaluate, or migrate applications with Strands Agents in Python or TypeScript.
amd/gaia
Mines local Claude Code session transcripts with a deterministic Python pipeline to show what the agent is actually used for, how often it fails and what it costs.
ClawBio/ClawBio
Eval-driven skill tuning. An agent skill from ClawBio/ClawBio.
pydantic/pydantic-ai
Adds optional capabilities to Pydantic AI agents from pydantic-ai-harness, led by Code Mode, which runs many tool calls as one sandboxed Python script.
Orchestra-Research/AI-Research-SKILLs
Generates music from text descriptions with MusicGen and sound effects with AudioGen, using Meta's AudioCraft PyTorch library with melody and style conditioning.
Orchestra-Research/AI-Research-SKILLs
Runs lm-evaluation-harness to benchmark language models on academic suites such as MMLU, GSM8K and HumanEval, compare models and track training checkpoints.
Orchestra-Research/AI-Research-SKILLs
Guide to using Meta's Segment Anything Model for zero-shot image segmentation with point, box or mask prompts, or automatic mask generation.
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
Orchestra-Research/AI-Research-SKILLs
Explains OpenAI's CLIP model for zero-shot image classification, image-text similarity, semantic image search and content moderation, with install steps and code patterns.
Orchestra-Research/AI-Research-SKILLs
Transcribes audio with OpenAI's Whisper: 99 languages, translation to English, language detection, six model sizes and word-level timestamps, from Python or the CLI.
Works with
Categories
Guidance for using A-Evolve to improve an AI agent automatically, evolving its prompts, skills and memory against a benchmark through solve, observe and evolve cycles. yaml` plus folders for prompts, skills, memory and tools. Each cycle has the agent solve a batch of benchmark tasks, the benchmark returns feedback on its trajectories, and an LLM-driven evolution engine mutates the workspace files.
A-Evolve Agent Evolution fits situations like: optimizing an agent's prompts and skills against a measurable benchmark; building a self-improving agent with automated gating and rollback; keeping a git-versioned history of every change made to an agent.
Run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a claude-code`. Or copy the skill folder (14-agents/a-evolve in Orchestra-Research/AI-Research-SKILLs) into .claude/skills/evolving-ai-agents in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a codex`. Or copy the skill folder (14-agents/a-evolve in Orchestra-Research/AI-Research-SKILLs) into .agents/skills/evolving-ai-agents in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Orchestra-Research/AI-Research-SKILLs --skill evolving-ai-agents -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/evolving-ai-agents, .gemini/skills/evolving-ai-agents, .github/skills/evolving-ai-agents and .opencode/skills/evolving-ai-agents in your project.
Going by SKILL.md and its folder, A-Evolve Agent Evolution needs the command-line tools its instructions call (git and pip) and credentials named ANTHROPIC_API_KEY. Our summary lists: Python with `a-evolve` installed through pip; A benchmark that scores the agent's runs.
SKILL.md contains no URLs. Its commands use git and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
A-Evolve Agent Evolution is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 32k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with A-Evolve Agent Evolution: Swarms Multi-Agent Framework (kyegomez/swarms, 7.2k stars), Uipath Functions (UiPath/skills, 168 stars), Strands (strands-agents/harness-sdk, 8.7k stars) and Analyzing Claude Code Sessions (amd/gaia, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Orchestra-Research (a GitHub organization) maintains it in Orchestra-Research/AI-Research-SKILLs, which has 13,374 GitHub stars. The repository holds 96 skills in this directory. The repository was last updated on June 16, 2026.
Source: Orchestra-Research/AI-Research-SKILLs on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.