Skip to main content

Build self-improving AI agents that learn from experience

Project description

Kayba Logo

Agentic Context Engine (ACE)

GitHub stars Discord Twitter Follow PyPI version Python 3.11+ License: MIT

AI agents that get smarter with every task

⭐ Star this repo if you find it useful!


What is ACE?

ACE enables AI agents to learn from their execution feedback—what works, what doesn't—and continuously improve. No fine-tuning, no training data, just automatic in-context learning.

The framework maintains a Skillbook: a living document of strategies that evolves with each task. When your agent succeeds, ACE extracts patterns. When it fails, ACE learns what to avoid. All learning happens transparently in context.

  • Self-Improving: Agents autonomously get smarter with each task
  • 20-35% Better Performance: Proven improvements on complex tasks
  • 49% Token Reduction: Demonstrated in browser automation benchmarks
  • No Context Collapse: Preserves valuable knowledge over time

LLM Quickstart

  1. Direct your favorite coding agent (Cursor, Claude Code, Codex, etc) to Quick Start Guide
  2. Prompt away!

Quick Start

1. Install

pip install ace-framework

2. Set API Key

export OPENAI_API_KEY="your-api-key"

3. Run

from ace import ACELiteLLM

agent = ACELiteLLM(model="gpt-4o-mini")

answer = agent.ask("What does Kayba's ACE framework do?")
print(answer)  # "ACE allows AI agents to remember and learn from experience!"

Done! Your agent learns automatically from each interaction.

→ Quick Start Guide | → Setup Guide


Use Cases

Enhance Existing Agents

Wrap your existing agent (browser-use, LangChain, custom) with ACE learning. Your agent executes tasks normally while ACE analyzes results and builds a skillbook of effective strategies.

Automated System Prompting

The Skillbook acts as an evolving system prompt that automatically improves based on execution feedback—no manual prompt engineering required.

Claude Code with Learning

Run coding tasks with Claude Code while ACE learns patterns from each execution, building expertise over time for your specific codebase and workflows.

Build Self-Improving Agents

Create new agents with built-in learning for customer support, data extraction, code generation, research, content creation, and task automation.


Demos

The Seahorse Emoji Challenge

A challenge where LLMs often hallucinate that a seahorse emoji exists (it doesn't).

Seahorse Emoji ACE Demo

In this example:

  1. The agent incorrectly outputs a horse emoji
  2. ACE reflects on the mistake without external feedback
  3. On the second attempt, the agent correctly realizes there is no seahorse emoji

→ Try it yourself

Browser Automation

Online Shopping Demo: ACE vs baseline agent shopping for 5 grocery items.

Online Shopping Demo Results

In this example:

  • ACE learns to navigate the website over 10 attempts
  • Performance stabilizes and step count decreases by 29.8%
  • Token costs reduce 49.0% for base agent and 42.6% including ACE overhead

→ Try it yourself & see all demos

Claude Code Loop

In this example, Claude Code is enhanced with ACE and self-reflects after each execution while translating the ACE library from Python to TypeScript.

Python → TypeScript Translation:

Metric Result
Duration ~4 hours
Commits 119
Lines written ~14k
Outcome Zero build errors, all tests passing
API cost ~$1.5 (Sonnet for learning)

→ Claude Code Loop


Integrations

ACE integrates with popular agent frameworks:

Integration ACE Class Use Case
LiteLLM ACELiteLLM Simple self-improving agent
LangChain ACELangChain Wrap LangChain chains/agents
browser-use ACEAgent Browser automation
Claude Code ACEClaudeCode Claude Code CLI
Opik OpikIntegration Production monitoring and cost tracking

→ Integration Guide | → Examples


How Does ACE Work?

Based on the ACE research framework from Stanford & SambaNova.

ACE uses three specialized roles that work together:

  1. Agent - Creates a plan using learned skills and executes the task
  2. Reflector - Analyzes what worked and what didn't after execution
  3. SkillManager - Updates the skillbook with new strategies based on reflection

Important: The three ACE roles are different specialized prompts using the same language model, not separate models.

ACE teaches your agent and internalizes:

  • Successes → Extract patterns that work
  • Failures → Learn what to avoid
  • Tool usage → Discover which tools work best for which tasks
  • Edge cases → Remember rare scenarios and how to handle them

The magic happens in the Skillbook—a living document of skills that evolves with experience. Key innovation: All learning happens in context through incremental updates—no fine-tuning, no training data, and complete transparency into what your agent learned.

---
config:
  look: neo
  theme: neutral
---
flowchart LR
    Skillbook[("`**Skillbook**<br>(Evolving Context)<br><br>•Strategy Skills<br> Helpful skills <br> Harmful patterns <br> Neutral observations`")]
    Start(["**Query** <br>User prompt or question"]) --> Agent["**Agent** <br>Executes task using skillbook"]
    Agent --> Reflector
    Skillbook -. Provides Context .-> Agent
    Environment["**Task Environment**<br>Evaluates answer<br>Provides feedback"] -- Feedback+ <br>Optional Ground Truth --> Reflector
    Reflector["**Reflector**<br>Analyzes and provides feedback what was helpful/harmful"]
    Reflector --> SkillManager["**SkillManager**<br>Produces improvement updates"]
    SkillManager --> UpdateOps["**Merger** <br>Updates the skillbook with updates"]
    UpdateOps -- Incremental<br>Updates --> Skillbook
    Agent <--> Environment

Documentation


Contributing

We love contributions! Check out our Contributing Guide to get started.


Acknowledgment

Based on the ACE paper and inspired by Dynamic Cheatsheet.

If you use ACE in your research, please cite:

@article{zhang2024ace,title={Agentic Context Engineering},author={Zhang et al.},journal={arXiv:2510.04618},year={2024}}

⭐ Star this repo if you find it useful!

Built with ❤️ by Kayba and the open-source community.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ace_framework-0.7.2.tar.gz (108.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ace_framework-0.7.2-py3-none-any.whl (81.7 kB view details)

Uploaded Python 3

File details

Details for the file ace_framework-0.7.2.tar.gz.

File metadata

  • Download URL: ace_framework-0.7.2.tar.gz
  • Upload date:
  • Size: 108.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ace_framework-0.7.2.tar.gz
Algorithm Hash digest
SHA256 d782cecee495f6c507ce1585d9fc4306ab765e2c0d8f802f8e9954f3f34ecd32
MD5 c87e5ce5c5498189c83f6c55d784cb20
BLAKE2b-256 f1f7f754212cb80751429685eb483e27e87c36acc711d23c2b9290e10e46cbfb

See more details on using hashes here.

Provenance

The following attestation bundles were made for ace_framework-0.7.2.tar.gz:

Publisher: publish.yml on kayba-ai/agentic-context-engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ace_framework-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: ace_framework-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 81.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ace_framework-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2cacd8bbc8f7ddd57ef12f697b62dfb33f5de6721cb6c8c8d66c7e318d2fe117
MD5 b94b93ef0bd6f45fed0543b94b2907d9
BLAKE2b-256 ef2b1019c5c359a65c5b42cbb33737b21b94fac89342fbd69c21114b9d0fbc0b

See more details on using hashes here.

Provenance

The following attestation bundles were made for ace_framework-0.7.2-py3-none-any.whl:

Publisher: publish.yml on kayba-ai/agentic-context-engine

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page