altk-evolve
AgentToolkit · AgentToolkit/altk-evolve
Enables AI coding agents to learn and improve over time by remembering past successes and failures from their trajectories.
Self improving agents through iterations
Preview
What you can do with it
- Improve agent reliability on multi-step coding tasks over time.
- Reduce repeated errors by learning from past coding attempts.
- Develop agents that adapt and refine their knowledge base with experience.
Safety check
No risky patterns found in the files we scanned.
Automated scan of the repo files. Always review code you run.
From the README
Evolve: On‑the‑job learning for AI agents
Coding agents repeat the same mistakes because they start fresh every session. Evolve gives agents memory — they learn from what worked and what didn't, so each session is better than the last.
Evolve is a system designed to help agents improve over time by learning from their trajectories. The Lite version is designed to effortlessly slot into existing agent assistants like Claude Code and Codex. It uses a combination of an MCP server for tool integration, vector storage for memory, and LLM-based conflict resolution to refine its knowledge base.
On the AppWorld benchmark, Evolve improved agent reliability by +8.9 points overall, with a 74% relative increase on hard multi-step tasks. Evolve is a system designed to help agents improve over time by learning from their trajectories. It uses a combination of an MCP server for tool integration, vector storage for memory, and LLM-based conflict resolution to refine its knowledge base.
[!IMPORTANT] ⭐ Star the repo: it helps others discover it.
Latest from Evolve
Research, releases, and practical findings from the Evolve team.
- 2026-09-25 · Paper — Memory as Middleware for Self-Improving AI Agents The case for agent memory as a pluggable middleware layer, with Evolve as the reference implementation (to appear at Middleware 2026).
- 2026-09-15 · Article — Your Agent Aced the Task. Will It Do It Again? Diagnosing where an agent's decisions wobble and stabilizing them so success repeats.
- 2026-09-08 · Paper — Closing the Consistency Gap: Self-Evolving Agents That Learn to Stay on Course Turning unstable trajectory steps into episodic memory to keep agents consistent across repeated runs.
- 2026-08-18 · Article — How Much Memory Does Your Agent Actually Need? Why agent memory should be calibrated to the model instead of simply increased.
- 2026-08-11 · Article — Thinking of ACE? We Can Do It with Fewer Tokens Comparing Evolve's targeted guideline retrieval with ACE's playbook approach and token usage.
- 2026-04-08 · Article — ALTK‑Evolve: On‑the‑Job Learning for AI Agents An introduction to learning reusable guidance from agent trajectories.
- 2026-04-07 · Announcement — IBM introduces ALTK Evolve Evolve is opened to builders creating agents that learn from experience.
- 2026-03-11 · Paper — Trajectory-Informed Memory Generation for Self-Improving Agent Systems The research framework and evaluation underlying Evolve.
Quick Start (Lite)
Quick Start (Evolve MCP Server)
Installation
Prerequisites:
- Python 3.12 or higher
uv(recommended) orpip
From Source
# Clone the repository and install dependencies
git clone https://github.com/agenttoolkit/altk-evolve.git
cd altk-evolve
uv venv --python=3.12 && source .venv/bin/activate
uv sync
# Build the UI
cd frontend/ui
npm ci && npm run build
cd ../..
From PyPI
pip install altk-evolve
Optional Backend Dependencies:
The default filesystem backend uses simple text matching and requires no additional dependencies. For semantic vector similarity search, install one of these backends:
For PostgreSQL with pgvector support (recommended for production):
uv sync --extra pgvector
For Milvus support (optimized for large-scale vector search):
uv sync --extra milvus
See the Backend Configuration Guide for detailed comparison and setup instructions.
Configuration
For direct OpenAI usage:
export OPENAI_API_KEY=sk-...
For LiteLLM proxy usage and model selection (including global fallback via EVOLVE_MODEL_NAME), see the configuration guide.
Running Services
Start the Web UI and MCP server
uv run evolve-mcp
The Web UI can be accessed from: http://127.0.0.1:8000/ui/
Starting the Web UI and MCP Server
If you only want to access the Web UI and API (without the MCP server stdio blocking the terminal), you can run the FastAPI application directly using uvicorn:
uv run uvicorn altk_evolve.frontend.mcp.mcp_server:app --host 127.0.0.1 --port 8000
Then navigate to http://127.0.0.1:8000/ui/.
Starting only the MCP Server
If you're attaching Evolve to an MCP client that requires a direct command (like Claude Desktop):
uv run evolve-mcp
Or for SSE transport:
uv run evolve-mcp --transport sse --port 8201
Verify it's running:
npx @modelcontextprotocol/inspector@latest http://127.0.0.1:8201/sse --cli --method tools/list
Available tools:
get_entities(task: str, entity_type: str = "guideline", include_public: bool = False): Get relevant entities for a specific task. Setinclude_public=Trueto merge in public entities from all other namespaces; those results are annotated with[public: {owner_id}].get_guidelines(task: str): Get relevant guidelines for a specific task (backward compatibility alias forget_entities).get_guidelines_with_attribution(task: str): Return formatted guidelines with the entity IDs used to build the prompt.- `g