Open Autonomy Compose
A framework for working with FSM based ABCI applications
Install
pip3 install open-autonomy-compose
Setup a new service repository
In an empty directory run
compose new --author=AUTHOR
This will scaffold a service repository with all the latest packages and dependencies.
Generate FSM Specification
If you have an ABCI app composition and you want to generate a specification for the same run
compose fsm from-app PATH_TO_ABCI_APP
Perform consistency checks
To peform consistency check on an ABCI app run
compose check PATH_TO_ABCI_APP
Supported consistency checks
- SyncDB
- Pre/Post Conditions for round transitions
- Static analyser for checking if the required updates are being performed or not
Inspect the ABCI App
To inspect the ABCI app run
compose inspect PATH_TO_ABCI_APP
Running this will start an http server, open the URL for HTTP server and you can inspect the ABCI app in the browser
Scaffolding FSMs
Scaffold an empty ABCI application
compose scaffold --abci/--composition NAME
This will create a skill package in the packages/author/skills/ directory.
You can also use a FSM specification to scaffold using --spec flag.
compose scaffold --abci/--composition --spec=specification.yaml NAME
Check examples/specifications folder for examples.
Development
-
Ensure your machine satisfies the following requirements:
-
Clone the repository:
git clone git@github.com:valory-xyz/open-autonomy-compose.git
-
Create a development environment
poetry install -
Launch poetry shell in start developing
poetry shell
Cite
If you are using our software in a publication, please consider to cite it with the following BibTex entry:
@misc{open-autonomy-compose,
Author = {Viraj Patel},
Title = {Open Autonomy Compose},
Year = {2023},
}
Metadata
Release files for open-autonomy-compose 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| open_autonomy_compose-0.1.1.tar.gz | 503.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| open_autonomy_compose-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.0 MB
Release files / open_autonomy_compose-0.1.1.tar.gz
| Download URL | open_autonomy_compose-0.1.1.tar.gz |
|---|---|
| Size | 503.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
528d3411b75dc331fd024cd6bf6b2a80ceb2491957cf3c27f724166281af2d44
|
|
BLAKE2b-256 checksum How to use checksums |
096b5a511c534eb448591e5ff742291d9b315f988a1e6e979e5cf3dfacb7272b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.12.5
|
Release files / open_autonomy_compose-0.1.1-py3-none-any.whl
| Download URL | open_autonomy_compose-0.1.1-py3-none-any.whl |
|---|---|
| Size | 540.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb12ef02ab9e7b2f59f8f37e8cb9b242a3b6ba1443c5a38d12b03045541c7d65
|
|
BLAKE2b-256 checksum How to use checksums |
56d1cac29647a2411b23ee58176b0e9b6aa00138b246fb734c2528ee4d1c7e28
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.12.5
|