Metadata-Version: 2.4
Name: agent-energy-budget
Version: 0.1.0
Summary: Agent cost control, energy budget management, and token tracking
Project-URL: Homepage, https://github.com/aumos-ai/agent-energy-budget
Project-URL: Documentation, https://github.com/aumos-ai/agent-energy-budget#readme
Project-URL: Repository, https://github.com/aumos-ai/agent-energy-budget
Project-URL: Issues, https://github.com/aumos-ai/agent-energy-budget/issues
Author: AumOS Contributors
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Typing :: Typed
Requires-Python: >=3.10
Requires-Dist: click>=8.0
Requires-Dist: pydantic>=2.0
Requires-Dist: pyyaml>=6.0
Requires-Dist: rich>=13.0
Provides-Extra: agentcore
Requires-Dist: agentcore-sdk>=0.1.0; extra == 'agentcore'
Provides-Extra: all-frameworks
Requires-Dist: anthropic>=0.30.0; extra == 'all-frameworks'
Requires-Dist: crewai>=0.50.0; extra == 'all-frameworks'
Requires-Dist: langchain-core>=0.2.0; extra == 'all-frameworks'
Requires-Dist: openai>=1.0.0; extra == 'all-frameworks'
Provides-Extra: anthropic
Requires-Dist: anthropic>=0.30.0; extra == 'anthropic'
Provides-Extra: crewai
Requires-Dist: crewai>=0.50.0; extra == 'crewai'
Provides-Extra: dev
Requires-Dist: mypy>=1.8; extra == 'dev'
Requires-Dist: pip-audit; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.3; extra == 'dev'
Provides-Extra: langchain
Requires-Dist: langchain-core>=0.2.0; extra == 'langchain'
Provides-Extra: microsoft
Requires-Dist: microsoft-agents>=0.1.0; extra == 'microsoft'
Provides-Extra: openai-agents
Requires-Dist: openai>=1.0.0; extra == 'openai-agents'
Description-Content-Type: text/markdown

# agent-energy-budget

Agent cost control, energy budget management, and token tracking

[![CI](https://github.com/aumos-ai/agent-energy-budget/actions/workflows/ci.yaml/badge.svg)](https://github.com/aumos-ai/agent-energy-budget/actions/workflows/ci.yaml)
[![PyPI version](https://img.shields.io/pypi/v/agent-energy-budget.svg)](https://pypi.org/project/agent-energy-budget/)
[![Python versions](https://img.shields.io/pypi/pyversions/agent-energy-budget.svg)](https://pypi.org/project/agent-energy-budget/)
[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)

Part of the [AumOS](https://github.com/aumos-ai) open-source agent infrastructure portfolio.

---

## Features

- `BudgetTracker` performs pre-call affordability checks and records actual spend to a per-agent JSONL log, supporting daily, weekly, and monthly limits simultaneously
- Four degradation strategies when budgets are tight: `TOKEN_REDUCTION` (cap output tokens to fit remaining budget), `MODEL_DOWNGRADE` (switch to the cheapest affordable model), `CACHED_FALLBACK` (signal to use cached responses), and `BLOCK_WITH_ERROR` (raise `BudgetExceededError`)
- Model pricing tables for OpenAI, Anthropic, Google, and custom models with a `CostEstimator` that projects spend before the call is made
- Hierarchical sub-budget allocation — a parent `BudgetTracker` can allocate fractional child budgets for sub-agents in a multi-agent team
- Threshold-based alert system fires warning, critical, and exhausted callbacks at configurable utilization percentages
- Middleware wrappers for LangChain, CrewAI, AutoGen, Anthropic SDK, and OpenAI SDK that intercept calls and apply budget checks transparently
- Spend reporting with per-model breakdowns, top-N cost attribution, and ASCII/matplotlib visualizations

## Quick Start

Install from PyPI:

```bash
pip install agent-energy-budget
```

Verify the installation:

```bash
agent-energy-budget version
```

Basic usage:

```python
import agent_energy_budget

# See examples/01_quickstart.py for a working example
```

## Documentation

- [Architecture](docs/architecture.md)
- [Contributing](CONTRIBUTING.md)
- [Changelog](CHANGELOG.md)
- [Examples](examples/README.md)

## Enterprise Upgrade

For production deployments requiring SLA-backed support and advanced
integrations, contact the maintainers or see the commercial extensions documentation.

## Contributing

Contributions are welcome. Please read [CONTRIBUTING.md](CONTRIBUTING.md)
before opening a pull request.

## License

Apache 2.0 — see [LICENSE](LICENSE) for full terms.

---

Part of [AumOS](https://github.com/aumos-ai) — open-source agent infrastructure.
