Skip to main content

Open AEA Framework

Project description

Open AEA Framework

PyPI PyPI - Python Version PyPI - Wheel License Downloads

AEA framework sanity checks and tests Codecov flake8 mypy Black mypy

A framework for autonomous economic agent (AEA) development with no vendor lock-in

This is a fork of the original AEA project with the benefit that all vendor lock-in at the package level is removed. This means, there are no dependencies on centrally hosted registries for agent packages and the AEA itself does not prefer any package vendor over another. Where feasible, compatibility with the original AEA framework is maintained.

Get started developing AEAs

  1. Create and launch a clean virtual environment with Python 3.10 (any Python >= 3.10 works):

    python3.10 -m venv .venv && source .venv/bin/activate
    
  2. Install the package from PyPI:

    pip install open-aea[all]
    

    Or, if you use zsh rather than bash:

    pip install "open-aea[all]"
    
  3. Then, build your agent as described in the docs.

Alternatively (1): Use pipx (CLI usage only)

  1. Install pipx

  2. Install the package from PyPI:

    pipx install open-aea[all]
    
  3. Run AEA CLI e.g.:

    aea --help
    

Alternatively (2): Install from Source

This approach is not recommended!

Cloning

This repository contains submodules. Clone with recursive strategy:

git clone https://github.com/valory-xyz/open-aea.git --recursive && cd open-aea
  • To fetch/update submodules (for existing local repo):

    git submodule sync --recursive && git submodule update --init --recursive
    

Dependencies

All python specific framework dependencies are specified in setup.py and installed with the framework. All development dependencies are specified in pyproject.toml (and installed via the commands specified in Preliminaries).

You can have more control on the installed dependencies by leveraging the setuptools' extras mechanism.

Preliminaries

  • Create and launch a virtual environment with Python 3.10 (any Python >= 3.10 works):

    python3.10 -m venv .venv && source .venv/bin/activate
    
  • Install the package from source:

    pip install .[all]
    

    Or, if you use zsh rather than bash:

    pip install ".[all]"
    
  • Then, build your agent as described in the docs.

  • Install Skaffold to manage containers & tagging:

curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/v1.39.0/skaffold-linux-amd64 && \
sudo install skaffold /usr/local/bin/

Documentation

  • All documentation is hosted here.

  • To start a live-reloading docs server on localhost: mkdocs serve. To amend the docs, create a new documentation file in docs/ and add a reference to it in mkdocs.yml.

  • To run demos against local packages use flag --local in aea CLI commands.

Contributing

We welcome contributions to the framework, its plugins, related tools and packages. Please consult the contributing guide for details.

Cite

If you are using our software in a publication, please consider to cite it with the following BibTex entry:

@misc{agents-aea,
  Author = {Marco Favorito and David Minarsch and Ali Hosseini and Aristotelis Triantafyllidis and Diarmid Campbell and Oleg Panasevych and Kevin Chen and Yuri Turchenkov and Lokman Rahmani and Jiří Vestfál and James Riehl and 8baller and Adamantios Zaras and David Vilela and Michiel Karrenbelt and Viraj Patel},
  Title = {Open Autonomous Economic Agent (AEA) Framework},
  Year = {2021},
}

Project details


Release history Release notifications | RSS feed

This version

2.2.3

Download files

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

Source Distribution

open_aea-2.2.3.tar.gz (498.7 kB view details)

Uploaded Source

Built Distribution

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

open_aea-2.2.3-py3-none-any.whl (683.8 kB view details)

Uploaded Python 3

File details

Details for the file open_aea-2.2.3.tar.gz.

File metadata

  • Download URL: open_aea-2.2.3.tar.gz
  • Upload date:
  • Size: 498.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for open_aea-2.2.3.tar.gz
Algorithm Hash digest
SHA256 98c5abd2e6d78eb12b0b0705c6e34eacf434ef0e7363200c9c6800ee7f72185f
MD5 e4245e7868782218c189cdd1ac753eb5
BLAKE2b-256 5369b445c4493d85721c0ed0629e2e9bc400e2b4eeb12e9e6e686e9878f9028e

See more details on using hashes here.

File details

Details for the file open_aea-2.2.3-py3-none-any.whl.

File metadata

  • Download URL: open_aea-2.2.3-py3-none-any.whl
  • Upload date:
  • Size: 683.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for open_aea-2.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 33fbedab7e85ee0ebdd8df7eb15cd3baf285c6bf0f858e0fc6e4a3232276e383
MD5 d2dc665d09dc240ecfbfa58c355d6d21
BLAKE2b-256 57b2bc84c1574a42d6026b8861146b33e406b0a5b1601a4073222dd0d1d371b6

See more details on using hashes here.

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