Skip to main content

Smart Python Agent Development Environment

Project description

SPADE

https://img.shields.io/pypi/v/spade.svg https://img.shields.io/pypi/pyversions/spade.svg Total Lines Languages Code Size MIT License Downloads Continuous Integration Status Code Coverage Status Documentation Status https://img.shields.io/pypi/format/spade.svg

Smart Python Agent Development Environment

A multi-agent systems platform written in Python and based on instant messaging (XMPP).

Develop agents that can chat both with other agents and humans.

Features

  • Multi-agent platform based on XMPP

  • Presence notification allows the system to know the current state of the agents in real-time

  • Python >=3.8

  • Asyncio-based

  • Agent model based on behaviours

  • Supports FIPA metadata using XMPP Data Forms (XEP-0004: Data Forms)

  • Web-based interface

  • Use any XMPP server

Plugins

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

3.3.2 (2023-09-18)

  • Added add_template_path function to the web component.

3.3.1 (2023-09-18)

  • Added menu entries support for the web interface.

  • Minor typos in documentation.

3.3.0 (2023-06-13)

  • Updated to Python>=3.8

  • Changed the way agents are launched (now with spade.run())

  • Python 3.11 still not supported due to a bug in aiohttp

  • Deprecated support for Python<=3.7

3.2.3 (2022-12-13)

  • Updated third-party libs

3.2.2 (2021-11-25)

  • Hotfix for the event loop in windows when python is 3.6

3.2.1 (2021-11-16)

  • Fixed event loop for windows

3.2.0 (2021-07-13)

  • Added support for Python 3.8 and 3.9

  • Fixed support for Linux, Windows and macOS

3.1.9 (2021-07-08)

  • Minor fix in docs.

3.1.8 (2021-07-08)

  • Added examples.

  • Fixed documentation examples.

  • Added Github CI support.

3.1.7 (2021-06-25)

  • Added hooks for plugins.

  • Minor bug fixings.

3.1.6 (2020-05-22)

  • Fixed coverage and ci.

3.1.5 (2020-05-21)

  • Fixed how to stop behaviours.

  • Fixed some tests.

  • Blackstyled code.

3.1.4 (2019-11-04)

  • Fixed issue with third party versions.

  • Use factories in tests.

  • Updated documentation and examples.

  • Minor bug fixing.

3.1.3 (2019-07-18)

3.1.2 (2019-05-14)

  • Hotfix docs.

3.1.1 (2019-05-14)

  • Added Python 3.7 support.

  • Added Code of Conduct.

  • Minor bugs fixed.

3.1.0 (2019-03-22)

  • Agents now run in a single event loop managed by the container.

  • Behaviors can be waited for using the “join” method.

  • To check if a behaviours is done you can now use the “is_done” method.

  • The “setup” method is now a coroutine.

  • New “quit_spade” helper to stop the whole process.

  • The “start” and “stop” methods change depending on the context, since it is the container who will properly start or stop the agent. They return a coroutine or a future depending on whether they are called from a coroutine or a synchronous method.

3.0.9 (2018-10-24)

  • Added raw parameter to allow raw web responses.

  • Changed default agent urls to the “/spade” namespace to avoid conflicts.

3.0.8 (2018-10-02)

  • Added a container mechanism to speedup local sends.

  • Added performance example.

  • Improved API doc.

  • Added container tests.

3.0.7 (2018-09-27)

  • Fixed bug when running FSM states.

  • Improved Message __str__.

  • Fixed bug when thread is not defined in a message.

  • aioxmpp send method is now in client instead of stream.

3.0.6 (2018-09-27)

  • Added statement to relinquish the cpu at each behaviour loop.

  • Message Thread is now stored as metadata for simplicity.

3.0.5 (2018-09-21)

  • Added JSON responses in web module.

  • Some improvements in aiothread management.

3.0.4 (2018-09-20)

  • Added coroutines to start agents from within other agents.

  • Improved API doc format.

3.0.3 (2018-09-12)

  • Rename internal templates to avoid conflicts.

  • Added API doc.

  • Minor bug fixes.

3.0.2 (2018-09-12)

  • Fixed presence notification updates.

  • Fixed FSM graphviz visualization.

  • Raise AuthenticationFailure Exception when user is not registered or user or password is wrong.

  • Import init improvements.

  • Attribute auto_register is now default True.

  • Improved documentation.

  • Other minor fixes.

3.0.1 (2018-09-07)

  • Minor doc fixings and improvements.

3.0.0 (2017-10-06)

  • Started writing 3.0 version.

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

spade-3.3.2.tar.gz (907.9 kB view details)

Uploaded Source

Built Distribution

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

spade-3.3.2-py2.py3-none-any.whl (33.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file spade-3.3.2.tar.gz.

File metadata

  • Download URL: spade-3.3.2.tar.gz
  • Upload date:
  • Size: 907.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.12 tqdm/4.65.0 importlib-metadata/4.12.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.7

File hashes

Hashes for spade-3.3.2.tar.gz
Algorithm Hash digest
SHA256 a5a9a570cf8a1c2476bbccfb18d0e2de88ed4a2ee912b749d03d00fe094d0e21
MD5 16d08ea4bc1f4829c2b2603a256440cf
BLAKE2b-256 f1893f87b1c7f0e8e7e6bebcea63e8f04aeeccfb78f4a0aef87c8d04e285a7ec

See more details on using hashes here.

File details

Details for the file spade-3.3.2-py2.py3-none-any.whl.

File metadata

  • Download URL: spade-3.3.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 33.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.12 tqdm/4.65.0 importlib-metadata/4.12.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.9.7

File hashes

Hashes for spade-3.3.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 fbab17ee97d8d1110aab0129fc6677cfbad454dde6dea657208f3542624039c9
MD5 d17e242ae52595ccc7c803559ef6dac2
BLAKE2b-256 8ba0edac5231e01697c17ef6a9822c37ed4408da4f6387ab03ed785af83f7170

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