Metadata-Version: 2.4
Name: arise-ai
Version: 0.1.6
Summary: Self-evolving agent framework — agents that create their own tools
Project-URL: Documentation, https://arise-ai.dev
Project-URL: Homepage, https://arise-ai.dev
Project-URL: Repository, https://github.com/abekek/arise
Project-URL: Issues, https://github.com/abekek/arise/issues
Author: Alibek Kaliyev
License-Expression: MIT
License-File: LICENSE
Keywords: agents,autonomous,llm,self-evolving,skill-library,tools
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.11
Requires-Dist: pydantic>=2.0
Provides-Extra: all
Requires-Dist: boto3>=1.34; extra == 'all'
Requires-Dist: docker>=7.0; extra == 'all'
Requires-Dist: fastapi>=0.115.0; extra == 'all'
Requires-Dist: httpx>=0.27.0; extra == 'all'
Requires-Dist: litellm>=1.0; extra == 'all'
Requires-Dist: opentelemetry-api>=1.0; extra == 'all'
Requires-Dist: opentelemetry-sdk>=1.0; extra == 'all'
Requires-Dist: rich>=13.0; extra == 'all'
Requires-Dist: uvicorn>=0.34.0; extra == 'all'
Provides-Extra: aws
Requires-Dist: boto3>=1.34; extra == 'aws'
Provides-Extra: dashboard
Requires-Dist: fastapi>=0.115.0; extra == 'dashboard'
Requires-Dist: httpx>=0.27.0; extra == 'dashboard'
Requires-Dist: rich>=13.0; extra == 'dashboard'
Requires-Dist: uvicorn>=0.34.0; extra == 'dashboard'
Provides-Extra: dev
Requires-Dist: boto3>=1.34; extra == 'dev'
Requires-Dist: fastapi>=0.115.0; extra == 'dev'
Requires-Dist: httpx>=0.27.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: rich>=13.0; extra == 'dev'
Requires-Dist: uvicorn>=0.34.0; extra == 'dev'
Provides-Extra: docker
Requires-Dist: docker>=7.0; extra == 'docker'
Provides-Extra: litellm
Requires-Dist: litellm>=1.0; extra == 'litellm'
Provides-Extra: otel
Requires-Dist: opentelemetry-api>=1.0; extra == 'otel'
Requires-Dist: opentelemetry-sdk>=1.0; extra == 'otel'
Description-Content-Type: text/markdown

# ARISE — Adaptive Runtime Improvement through Self-Evolution

[![PyPI version](https://img.shields.io/pypi/v/arise-ai.svg)](https://pypi.org/project/arise-ai/)
[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://pypi.org/project/arise-ai/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Docs](https://img.shields.io/badge/docs-arise--ai.dev-blue)](https://arise-ai.dev)

**Your agent works great on the tasks you planned for. ARISE handles the ones you didn't.**

ARISE is a framework-agnostic middleware that gives LLM agents the ability to create their own tools at runtime. When your agent fails at a task, ARISE detects the capability gap, synthesizes a Python tool, validates it in a sandbox, and promotes it to the active library — no human intervention required.

**[Documentation](https://arise-ai.dev)** | **[Quick Start](https://arise-ai.dev/getting-started/quickstart/)** | **[PyPI](https://pypi.org/project/arise-ai/)**

```bash
pip install arise-ai
```

```python
from arise import ARISE
from arise.rewards import task_success

arise = ARISE(
    agent_fn=my_agent,           # any (task, tools) -> str function
    reward_fn=task_success,
    model="gpt-4o-mini",         # cheap model for tool synthesis
)

result = arise.run("Fetch all users from the paginated API")
# Agent fails → ARISE synthesizes fetch_all_paginated tool → agent succeeds
```

## What It Looks Like

```
Episode 1  | FAIL  | reward=0.00 | skills=2   Task: "Fetch paginated users with auth"
Episode 2  | FAIL  | reward=0.00 | skills=2
Episode 3  | FAIL  | reward=0.00 | skills=2

[Evolution triggered — 3 failures on API tasks]
  → Synthesizing 'parse_json_response'... 3/3 tests passed ✓
  → Synthesizing 'fetch_all_paginated'... sandbox fail → refine → 1/1 passed ✓

Episode 4  | OK    | reward=1.00 | skills=4   Agent now has the tools it needs
```

## Key Features

- **Self-evolving tool library** — fail → detect gap → synthesize → sandbox test → promote
- **Framework-agnostic** — any `(task, tools) -> str` function, [Strands](https://arise-ai.dev/guide/adapters/#strands-agents), [LangGraph](https://arise-ai.dev/guide/adapters/#langgraph), [CrewAI](https://arise-ai.dev/guide/adapters/#crewai)
- **Sandboxed validation** — subprocess or Docker, adversarial testing, import restrictions
- **Distributed mode** — S3 + SQS for stateless deployments (Lambda, ECS, AgentCore)
- **Skill registry** — share evolved tools across projects
- **Version control + rollback** — SQLite checkpoints, `arise rollback <version>`
- **A/B testing** — refined skills tested against originals before promotion
- **Dashboard** — terminal TUI and web UI for monitoring

## Benchmark Results

| Model | Condition | AcmeCorp (SRE) | DataCorp (Data Eng) |
|-------|-----------|---------------|-------------------|
| **Claude Sonnet** | **ARISE** | **78%** | — |
| Claude Sonnet | No tools | 63% | — |
| GPT-4o-mini | ARISE | 57% | **92%** |
| GPT-4o-mini | No tools | 48% | 50% |

ARISE improves task success by **+9–42 percentage points** across models and domains. See the [full benchmark results](https://arise-ai.dev/benchmarks/).

## Documentation

Full documentation at **[arise-ai.dev](https://arise-ai.dev)**:

- [Installation](https://arise-ai.dev/getting-started/installation/) — install and configure
- [Quick Start](https://arise-ai.dev/getting-started/quickstart/) — complete evolution loop walkthrough
- [How It Works](https://arise-ai.dev/getting-started/how-it-works/) — the 5-step evolution pipeline
- [Reward Functions](https://arise-ai.dev/guide/rewards/) — built-in and custom reward functions
- [Safety & Validation](https://arise-ai.dev/guide/safety/) — sandbox, adversarial testing, production recommendations
- [Distributed Mode](https://arise-ai.dev/guide/distributed/) — S3 + SQS for stateless deployments
- [Framework Adapters](https://arise-ai.dev/guide/adapters/) — Strands, LangGraph, CrewAI, raw OpenAI/Anthropic
- [CLI Reference](https://arise-ai.dev/reference/cli/) — all CLI commands
- [API Reference](https://arise-ai.dev/reference/api-arise/) — ARISE class, config, types

## Examples

| Example | Description |
|---------|-------------|
| [`quickstart_evolution.py`](./examples/quickstart_evolution.py) | Full evolution loop: agent fails → ARISE evolves tool → agent succeeds |
| [`quickstart.py`](./examples/quickstart.py) | Math agent evolves statistics tools |
| [`api_agent.py`](./examples/api_agent.py) | HTTP agent evolves auth + pagination (mock server) |
| [`devops_agent.py`](./examples/devops_agent.py) | DevOps agent evolves log analysis tools |
| [`strands_agent.py`](./examples/strands_agent.py) | Strands integration with Bedrock |
| [`demo/agentcore/`](./demo/agentcore/) | AgentCore deployment with A2A protocol |

## Install

```bash
pip install arise-ai              # core (just pydantic)
pip install arise-ai[aws]         # + boto3 for distributed mode
pip install arise-ai[litellm]     # + litellm for multi-provider LLM
pip install arise-ai[docker]      # + docker sandbox backend
pip install arise-ai[dashboard]   # + rich, fastapi for dashboard
pip install arise-ai[otel]        # + opentelemetry for tracing
pip install arise-ai[all]         # everything
```

## Related Work

ARISE builds on ideas from [LATM](https://arxiv.org/abs/2305.17126), [VOYAGER](https://arxiv.org/abs/2305.16291), [CREATOR](https://arxiv.org/abs/2305.14318), [ADAS](https://arxiv.org/abs/2408.08435), and [CRAFT](https://arxiv.org/abs/2309.17428). ARISE adds the production layer: framework-agnostic integration, sandboxed validation, adversarial testing, version control, distributed deployment, and A/B testing.

## License

MIT
