├── .coveragerc ├── .dockerignore ├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.md │ └── feature_request.md ├── PULL_REQUEST_TEMPLATE.md ├── RELEASE_PR.md ├── dependabot.yml └── workflows │ ├── codeql-analysis.yml │ ├── docs.yml │ ├── main_workflow.yml │ └── release.yml ├── .gitignore ├── .gitleaks.toml ├── .gitleaksignore ├── .pylintrc ├── .spelling ├── AUTHORS.md ├── CONTRIBUTING.md ├── HISTORY.md ├── LICENSE ├── MANIFEST.in ├── Makefile ├── Pipfile ├── README.md ├── SECURITY.md ├── autonomy ├── __init__.py ├── __version__.py ├── analyse │ ├── __init__.py │ ├── abci │ │ ├── __init__.py │ │ ├── app_spec.py │ │ └── docstrings.py │ ├── benchmark │ │ ├── __init__.py │ │ ├── aggregate.py │ │ └── html.py │ ├── constants.py │ ├── dialogues.py │ ├── handlers.py │ ├── logs │ │ ├── __init__.py │ │ ├── base.py │ │ ├── collection.py │ │ └── db.py │ └── service.py ├── chain │ ├── __init__.py │ ├── base.py │ ├── config.py │ ├── constants.py │ ├── exceptions.py │ ├── metadata.py │ ├── mint.py │ ├── service.py │ ├── subgraph │ │ ├── __init__.py │ │ ├── client.py │ │ └── queries.py │ ├── tx.py │ └── utils.py ├── cli │ ├── __init__.py │ ├── __main__.py │ ├── analyse.py │ ├── build_images.py │ ├── core.py │ ├── deploy.py │ ├── develop.py │ ├── fetch.py │ ├── hash.py │ ├── helpers │ │ ├── __init__.py │ │ ├── analyse.py │ │ ├── chain.py │ │ ├── deployment.py │ │ ├── docstring.py │ │ ├── env.py │ │ ├── fsm_spec.py │ │ ├── image.py │ │ ├── ipfs_hash.py │ │ └── registry.py │ ├── mint.py │ ├── packages.py │ ├── publish.py │ ├── push_all.py │ ├── replay.py │ ├── scaffold_fsm.py │ ├── service.py │ └── utils │ │ ├── __init__.py │ │ └── click_utils.py ├── configurations │ ├── __init__.py │ ├── base.py │ ├── constants.py │ ├── loader.py │ ├── schemas │ │ ├── fsm_specification_schema.json │ │ └── service_schema.json │ └── validation.py ├── constants.py ├── data │ ├── Dockerfiles │ │ └── agent │ │ │ └── Dockerfile │ ├── __init__.py │ └── contracts │ │ └── __init__.py ├── deploy │ ├── __init__.py │ ├── base.py │ ├── build.py │ ├── constants.py │ ├── generators │ │ ├── __init__.py │ │ ├── docker_compose │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── templates.py │ │ ├── kubernetes │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── templates.py │ │ └── localhost │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── tendermint │ │ │ ├── __init__.py │ │ │ ├── app.py │ │ │ └── tendermint.py │ │ │ └── utils.py │ └── image.py ├── fsm │ ├── __init__.py │ └── scaffold │ │ ├── __init__.py │ │ ├── base.py │ │ ├── constants.py │ │ ├── generators │ │ ├── __init__.py │ │ ├── components.py │ │ └── tests.py │ │ ├── scaffold_skill.py │ │ └── templates │ │ ├── __init__.py │ │ ├── components.py │ │ └── tests.py ├── py.typed ├── replay │ ├── __init__.py │ ├── agent.py │ ├── tendermint.py │ └── utils.py └── services │ ├── __init__.py │ └── scaffold │ ├── __init__.py │ └── service.yaml ├── deployments ├── Dockerfiles │ ├── autonomy-user │ │ ├── Dockerfile │ │ └── requirements.txt │ ├── autonomy │ │ ├── Dockerfile │ │ └── scripts │ │ │ ├── install.sh │ │ │ └── start.sh │ ├── development │ │ ├── Dockerfile │ │ ├── Pipfile │ │ ├── entrypoint.sh │ │ ├── run.sh │ │ └── watcher.py │ ├── documentation │ │ └── Dockerfile │ ├── hardhat │ │ └── Dockerfile │ └── tendermint │ │ ├── Dockerfile │ │ ├── app.py │ │ ├── build.sh │ │ ├── config-template.toml │ │ ├── install.sh │ │ ├── tendermint.py │ │ └── wait-for-it.sh └── keys │ └── hardhat_keys.json ├── docs ├── advanced_reference │ ├── commands │ │ ├── autonomy_analyse.md │ │ ├── autonomy_build-image.md │ │ ├── autonomy_deploy.md │ │ ├── autonomy_develop.md │ │ ├── autonomy_fetch.md │ │ ├── autonomy_mint.md │ │ ├── autonomy_push_all.md │ │ ├── autonomy_replay.md │ │ ├── autonomy_scaffold.md │ │ ├── autonomy_service.md │ │ └── index.md │ ├── developer_tooling │ │ ├── benchmarking.md │ │ ├── custom_agent_image.md │ │ ├── debugging_in_the_cluster.md │ │ ├── debugging_using_tenderly.md │ │ ├── dev_mode.md │ │ ├── execution_replay.md │ │ └── log_analysis.md │ ├── index.md │ ├── on_chain_addresses.md │ └── use_custom_images.md ├── api │ ├── analyse │ │ ├── abci │ │ │ ├── app_spec.md │ │ │ └── docstrings.md │ │ ├── benchmark │ │ │ ├── aggregate.md │ │ │ └── html.md │ │ ├── constants.md │ │ ├── dialogues.md │ │ ├── handlers.md │ │ ├── logs │ │ │ ├── base.md │ │ │ ├── collection.md │ │ │ └── db.md │ │ └── service.md │ ├── chain │ │ ├── base.md │ │ ├── config.md │ │ ├── constants.md │ │ ├── exceptions.md │ │ ├── metadata.md │ │ ├── mint.md │ │ ├── service.md │ │ ├── subgraph │ │ │ ├── client.md │ │ │ └── queries.md │ │ ├── tx.md │ │ └── utils.md │ ├── cli │ │ ├── analyse.md │ │ ├── build_images.md │ │ ├── core.md │ │ ├── deploy.md │ │ ├── develop.md │ │ ├── fetch.md │ │ ├── hash.md │ │ ├── helpers │ │ │ ├── analyse.md │ │ │ ├── chain.md │ │ │ ├── deployment.md │ │ │ ├── docstring.md │ │ │ ├── env.md │ │ │ ├── fsm_spec.md │ │ │ ├── image.md │ │ │ ├── ipfs_hash.md │ │ │ └── registry.md │ │ ├── mint.md │ │ ├── packages.md │ │ ├── publish.md │ │ ├── push_all.md │ │ ├── replay.md │ │ ├── scaffold_fsm.md │ │ ├── service.md │ │ └── utils │ │ │ └── click_utils.md │ ├── configurations │ │ ├── base.md │ │ ├── constants.md │ │ ├── loader.md │ │ └── validation.md │ ├── connections │ │ └── abci │ │ │ ├── check_dependencies.md │ │ │ ├── connection.md │ │ │ ├── dialogues.md │ │ │ ├── scripts │ │ │ └── genproto.md │ │ │ ├── tendermint_decoder.md │ │ │ ├── tendermint_encoder.md │ │ │ └── tests │ │ │ ├── helper.md │ │ │ └── test_fuzz │ │ │ ├── base.md │ │ │ └── mock_node │ │ │ ├── channels │ │ │ ├── base.md │ │ │ ├── grpc_channel.md │ │ │ └── tcp_channel.md │ │ │ └── node.md │ ├── constants.md │ ├── contracts │ │ ├── gnosis_safe │ │ │ ├── contract.md │ │ │ └── encode.md │ │ └── gnosis_safe_proxy_factory │ │ │ └── contract.md │ ├── deploy │ │ ├── base.md │ │ ├── build.md │ │ ├── constants.md │ │ ├── generators │ │ │ ├── docker_compose │ │ │ │ ├── base.md │ │ │ │ └── templates.md │ │ │ ├── kubernetes │ │ │ │ ├── base.md │ │ │ │ └── templates.md │ │ │ └── localhost │ │ │ │ ├── base.md │ │ │ │ ├── tendermint │ │ │ │ ├── app.md │ │ │ │ └── tendermint.md │ │ │ │ └── utils.md │ │ └── image.md │ ├── fsm │ │ └── scaffold │ │ │ ├── base.md │ │ │ ├── constants.md │ │ │ ├── generators │ │ │ ├── components.md │ │ │ └── tests.md │ │ │ ├── scaffold_skill.md │ │ │ └── templates │ │ │ ├── components.md │ │ │ └── tests.md │ ├── plugins │ │ └── aea_test_autonomy │ │ │ ├── base_test_classes │ │ │ ├── agents.md │ │ │ └── contracts.md │ │ │ ├── configurations.md │ │ │ ├── docker │ │ │ ├── acn_node.md │ │ │ ├── amm_net.md │ │ │ ├── base.md │ │ │ ├── ganache.md │ │ │ ├── gnosis_safe_net.md │ │ │ ├── registries.md │ │ │ └── tendermint.md │ │ │ ├── fixture_helpers.md │ │ │ └── helpers │ │ │ ├── async_utils.md │ │ │ ├── base.md │ │ │ ├── contracts.md │ │ │ └── tendermint_utils.md │ ├── protocols │ │ └── abci │ │ │ ├── custom_types.md │ │ │ ├── dialogues.md │ │ │ ├── message.md │ │ │ └── serialization.md │ ├── replay │ │ ├── agent.md │ │ ├── tendermint.md │ │ └── utils.md │ └── skills │ │ ├── abstract_abci │ │ ├── dialogues.md │ │ └── handlers.md │ │ ├── abstract_round_abci │ │ ├── abci_app_chain.md │ │ ├── base.md │ │ ├── behaviour_utils.md │ │ ├── behaviours.md │ │ ├── common.md │ │ ├── dialogues.md │ │ ├── handlers.md │ │ ├── io_ │ │ │ ├── ipfs.md │ │ │ ├── load.md │ │ │ ├── paths.md │ │ │ └── store.md │ │ ├── models.md │ │ ├── test_tools │ │ │ ├── abci_app.md │ │ │ ├── base.md │ │ │ ├── common.md │ │ │ ├── integration.md │ │ │ └── rounds.md │ │ ├── tests │ │ │ ├── data │ │ │ │ └── dummy_abci │ │ │ │ │ ├── behaviours.md │ │ │ │ │ ├── dialogues.md │ │ │ │ │ ├── handlers.md │ │ │ │ │ ├── models.md │ │ │ │ │ ├── payloads.md │ │ │ │ │ └── rounds.md │ │ │ └── test_tools │ │ │ │ └── base.md │ │ └── utils.md │ │ ├── registration_abci │ │ ├── behaviours.md │ │ ├── dialogues.md │ │ ├── handlers.md │ │ ├── models.md │ │ ├── payloads.md │ │ └── rounds.md │ │ └── transaction_settlement_abci │ │ ├── behaviours.md │ │ ├── dialogues.md │ │ ├── handlers.md │ │ ├── models.md │ │ ├── payload_tools.md │ │ ├── payloads.md │ │ ├── rounds.md │ │ └── test_tools │ │ └── integration.md ├── application_deployment.md ├── configure_service │ ├── analise_test.md │ ├── configure_access_external_chains.md │ ├── index.md │ ├── on-chain_deployment_checklist.md │ └── service_configuration_file.md ├── control_flow.md ├── counter_example.md ├── exceptions.md ├── fonts │ ├── Inter-Bold.ttf │ ├── Inter-Regular.ttf │ └── Manrope-Bold.ttf ├── get_started │ ├── agent_services_compared_to.md │ ├── index.md │ ├── use_cases.md │ ├── what_is_an_agent_service.md │ └── why_do_we_need_agent_services.md ├── guides │ ├── bumping_services.md │ ├── code_fsm_app_skill.md │ ├── define_agent.md │ ├── define_service.md │ ├── deploy_service.md │ ├── draft_service_idea_and_define_fsm_specification.md │ ├── index.md │ ├── overview_of_the_development_process.md │ ├── publish_fetch_packages.md │ ├── publish_mint_packages.md │ ├── quick_start.md │ └── set_up.md ├── images │ ├── abci_requests.svg │ ├── agent_service_architecture.svg │ ├── agent_service_index_page.svg │ ├── centralized_decentralized_world.svg │ ├── counter_diagram.svg │ ├── development-process-simplified.svg │ ├── development_process.svg │ ├── development_process_code_fsm_app_skill.svg │ ├── development_process_define_agent.svg │ ├── development_process_define_service.svg │ ├── development_process_deploy_service.svg │ ├── development_process_draft_service_idea_and_define_fsm_specification.svg.svg │ ├── development_process_publish_fetch_packages.svg │ ├── development_process_publish_mint_packages.svg │ ├── do_name_servers.png │ ├── favicon.ico │ ├── favicon16x16.png │ ├── favicon32x32.png │ ├── favicon96x96.png │ ├── fsm.svg │ ├── fsm_composition.svg │ ├── fsm_composition_2.svg │ ├── hello_world_demo_architecture.svg │ ├── hello_world_fsm.svg │ ├── logo.svg │ ├── logo_purple.svg │ ├── name_server_setup.png │ ├── networking_page.png │ ├── open-autonomy-framework-logo.png │ ├── package_management.svg │ ├── register_package.svg │ ├── registries_simplified.svg │ ├── service-level_overrides.svg │ ├── simple_demo_architecture.svg │ ├── simplified-aea.svg │ ├── skill-components.svg │ ├── tendermint.svg │ ├── tendermint_transaction.svg │ ├── toy_oracle_fsm_app.svg │ └── workspace.svg ├── index.md ├── javascripts │ └── dynamic-hash.js ├── key_concepts │ ├── abci.md │ ├── abci_app_abstract_round.md │ ├── abci_app_abstract_round_behaviour.md │ ├── abci_app_async_behaviour.md │ ├── abci_app_class.md │ ├── abci_app_interactions.md │ ├── aea.md │ ├── fsm.md │ ├── fsm_app_components.md │ ├── fsm_app_introduction.md │ ├── index.md │ ├── poc-diagram.md │ └── threat_model.md ├── package_list.md ├── questions-and-answers.md ├── stylesheets │ └── extra.css ├── upgrading.md ├── using_stack_deployment.md └── version.md ├── infrastructure ├── Makefile ├── aws │ ├── .terraform.lock.hcl │ ├── main.tf │ ├── provider.tf │ ├── terraform.tvars │ └── variables.tf └── digital_ocean │ ├── .terraform.lock.hcl │ ├── main.tf │ ├── providers.tf │ └── variables.tf ├── mints ├── 1.json ├── 1.png ├── 10.json ├── 10.png ├── 11.json ├── 11.png ├── 12.json ├── 12.png ├── 13.json ├── 13.png ├── 14.json ├── 14.png ├── 15.json ├── 15.png ├── 16.json ├── 16.png ├── 17.json ├── 17.png ├── 18.json ├── 18.png ├── 19.json ├── 19.png ├── 2.json ├── 2.png ├── 20.json ├── 20.png ├── 21.json ├── 21.png ├── 22.json ├── 22.png ├── 23.json ├── 23.png ├── 24.json ├── 24.png ├── 25.json ├── 25.png ├── 26.json ├── 26.png ├── 27.json ├── 27.png ├── 3.json ├── 3.png ├── 4.json ├── 4.png ├── 5.json ├── 5.png ├── 6.json ├── 6.png ├── 7.json ├── 7.png ├── 8.json ├── 8.png ├── 9.json ├── 9.png ├── list.txt ├── mapping.txt └── whitelist.txt ├── mkdocs.yml ├── packages ├── __init__.py ├── packages.json └── valory │ ├── __init__.py │ ├── agents │ ├── __init__.py │ ├── abstract_abci │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_abstract_abci.py │ ├── counter │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_counter.py │ ├── counter_client │ │ ├── README.md │ │ └── aea-config.yaml │ ├── offend_slash │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_offend_slash.py │ ├── register_reset │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── helpers │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ ├── docker │ │ │ │ ├── __init__.py │ │ │ │ └── docker.py │ │ │ └── slow_tendermint_server │ │ │ │ ├── Dockerfile │ │ │ │ ├── __init__.py │ │ │ │ ├── app.py │ │ │ │ ├── config-template.toml │ │ │ │ ├── tendermint.py │ │ │ │ └── wrapper.sh │ │ │ ├── test_hard_reset_race_condition.py │ │ │ └── test_register_reset.py │ ├── register_reset_recovery │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── test_register_reset_recovery.py │ ├── register_termination │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── test_register_reset.py │ ├── registration_start_up │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_registration.py │ ├── solana_transfer_agent │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ └── test_register_reset.py │ ├── test_abci │ │ ├── README.md │ │ └── aea-config.yaml │ └── test_ipfs │ │ ├── README.md │ │ ├── __init__.py │ │ ├── aea-config.yaml │ │ └── tests │ │ ├── __init__.py │ │ └── test_ipfs.py │ ├── connections │ ├── __init__.py │ ├── abci │ │ ├── Makefile │ │ ├── __init__.py │ │ ├── check_dependencies.py │ │ ├── connection.py │ │ ├── connection.yaml │ │ ├── dialogues.py │ │ ├── gogoproto │ │ │ ├── __init__.py │ │ │ └── gogo_pb2.py │ │ ├── protos │ │ │ ├── gogoproto │ │ │ │ └── gogo.proto │ │ │ └── tendermint │ │ │ │ ├── abci │ │ │ │ └── types.proto │ │ │ │ ├── crypto │ │ │ │ ├── keys.proto │ │ │ │ └── proof.proto │ │ │ │ ├── types │ │ │ │ ├── params.proto │ │ │ │ ├── types.proto │ │ │ │ └── validator.proto │ │ │ │ └── version │ │ │ │ └── types.proto │ │ ├── readme.md │ │ ├── scripts │ │ │ └── genproto.py │ │ ├── tendermint │ │ │ ├── __init__.py │ │ │ ├── abci │ │ │ │ ├── types_pb2.py │ │ │ │ └── types_pb2_grpc.py │ │ │ ├── crypto │ │ │ │ ├── keys_pb2.py │ │ │ │ └── proof_pb2.py │ │ │ ├── types │ │ │ │ ├── params_pb2.py │ │ │ │ ├── types_pb2.py │ │ │ │ └── validator_pb2.py │ │ │ └── version │ │ │ │ └── types_pb2.py │ │ ├── tendermint_decoder.py │ │ ├── tendermint_encoder.py │ │ ├── tests │ │ │ ├── __init__.py │ │ │ ├── helper.py │ │ │ ├── test_abci.py │ │ │ ├── test_abci_fuzz.py │ │ │ ├── test_abci_spec.py │ │ │ ├── test_fuzz │ │ │ │ ├── __init__.py │ │ │ │ ├── base.py │ │ │ │ ├── mock_node │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── channels │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ ├── base.py │ │ │ │ │ │ ├── grpc_channel.py │ │ │ │ │ │ └── tcp_channel.py │ │ │ │ │ └── node.py │ │ │ │ └── test_fuzz.py │ │ │ ├── test_tendermint_decoder.py │ │ │ └── test_tendermint_encoder.py │ │ └── version.txt │ └── ipfs │ │ ├── __init__.py │ │ ├── connection.py │ │ ├── connection.yaml │ │ ├── readme.md │ │ └── tests │ │ ├── __init__.py │ │ └── test_connection.py │ ├── contracts │ ├── __init__.py │ ├── agent_registry │ │ ├── __init__.py │ │ ├── build │ │ │ └── AgentRegistry.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── component_registry │ │ ├── __init__.py │ │ ├── build │ │ │ └── ComponentRegistry.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── erc20 │ │ ├── __init__.py │ │ ├── build │ │ │ └── ERC20.json │ │ ├── contract.py │ │ └── contract.yaml │ ├── gnosis_safe │ │ ├── README.md │ │ ├── __init__.py │ │ ├── build │ │ │ └── GnosisSafe_V1_3_0.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ ├── encode.py │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── gnosis_safe_proxy_factory │ │ ├── README.md │ │ ├── __init__.py │ │ ├── build │ │ │ └── ProxyFactory_V1_3_0.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── multicall2 │ │ ├── __init__.py │ │ ├── build │ │ │ └── multicall2.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── multisend │ │ ├── README.md │ │ ├── __init__.py │ │ ├── build │ │ │ └── MultiSend.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── registries_manager │ │ ├── __init__.py │ │ ├── build │ │ │ └── RegistriesManager.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── service_manager │ │ ├── __init__.py │ │ ├── build │ │ │ ├── ServiceManager.json │ │ │ └── ServiceManagerToken.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── service_registry │ │ ├── __init__.py │ │ ├── build │ │ │ ├── ServiceRegistry.json │ │ │ └── ServiceRegistryL2.json │ │ ├── contract.py │ │ ├── contract.yaml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_contract.py │ ├── service_registry_token_utility │ │ ├── __init__.py │ │ ├── build │ │ │ └── ServiceRegistryTokenUtility.json │ │ ├── contract.py │ │ └── contract.yaml │ └── squads_multisig │ │ ├── README.md │ │ ├── __init__.py │ │ ├── build │ │ └── SquadsMultisig.json │ │ ├── contract.py │ │ └── contract.yaml │ ├── protocols │ ├── __init__.py │ ├── abci │ │ ├── README.md │ │ ├── __init__.py │ │ ├── abci.proto │ │ ├── abci_pb2.py │ │ ├── custom_types.py │ │ ├── dialogues.py │ │ ├── message.py │ │ ├── protocol.yaml │ │ ├── serialization.py │ │ └── tests │ │ │ ├── __init__.py │ │ │ ├── conftest.py │ │ │ ├── test_abci.py │ │ │ ├── test_abci_dialogues.py │ │ │ └── test_abci_messages.py │ ├── ipfs │ │ ├── README.md │ │ ├── __init__.py │ │ ├── dialogues.py │ │ ├── ipfs.proto │ │ ├── ipfs_pb2.py │ │ ├── message.py │ │ ├── protocol.yaml │ │ ├── serialization.py │ │ └── tests │ │ │ ├── test_ipfs_dialogues.py │ │ │ └── test_ipfs_messages.py │ └── tendermint │ │ ├── README.md │ │ ├── __init__.py │ │ ├── custom_types.py │ │ ├── dialogues.py │ │ ├── message.py │ │ ├── protocol.yaml │ │ ├── serialization.py │ │ ├── tendermint.proto │ │ ├── tendermint_pb2.py │ │ └── tests │ │ ├── __init__.py │ │ ├── test_tendermint.py │ │ ├── test_tendermint_dialogues.py │ │ └── test_tendermint_messages.py │ ├── services │ ├── counter │ │ ├── README.md │ │ └── service.yaml │ └── register_reset │ │ ├── README.md │ │ └── service.yaml │ └── skills │ ├── __init__.py │ ├── abstract_abci │ ├── README.md │ ├── __init__.py │ ├── dialogues.py │ ├── handlers.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_dialogues.py │ │ └── test_handlers.py │ ├── abstract_round_abci │ ├── README.md │ ├── __init__.py │ ├── abci_app_chain.py │ ├── base.py │ ├── behaviour_utils.py │ ├── behaviours.py │ ├── common.py │ ├── dialogues.py │ ├── handlers.py │ ├── io_ │ │ ├── __init__.py │ │ ├── ipfs.py │ │ ├── load.py │ │ ├── paths.py │ │ └── store.py │ ├── models.py │ ├── skill.yaml │ ├── test_tools │ │ ├── __init__.py │ │ ├── abci_app.py │ │ ├── base.py │ │ ├── common.py │ │ ├── integration.py │ │ └── rounds.py │ ├── tests │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── data │ │ │ ├── __init__.py │ │ │ └── dummy_abci │ │ │ │ ├── __init__.py │ │ │ │ ├── behaviours.py │ │ │ │ ├── dialogues.py │ │ │ │ ├── handlers.py │ │ │ │ ├── models.py │ │ │ │ ├── payloads.py │ │ │ │ ├── rounds.py │ │ │ │ └── skill.yaml │ │ ├── test_abci_app_chain.py │ │ ├── test_base.py │ │ ├── test_base_rounds.py │ │ ├── test_behaviours.py │ │ ├── test_behaviours_utils.py │ │ ├── test_common.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_io │ │ │ ├── __init__.py │ │ │ ├── test_ipfs.py │ │ │ ├── test_load.py │ │ │ └── test_store.py │ │ ├── test_models.py │ │ ├── test_tools │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── test_base.py │ │ │ ├── test_common.py │ │ │ ├── test_integration.py │ │ │ └── test_rounds.py │ │ └── test_utils.py │ └── utils.py │ ├── counter │ ├── README.md │ ├── __init__.py │ ├── dialogues.py │ ├── handlers.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ └── test_counter.py │ ├── counter_client │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── skill.yaml │ ├── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ └── test_models.py │ └── utils.py │ ├── offend_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── offend_slash_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ └── test_models.py │ ├── register_reset_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ └── test_models.py │ ├── register_reset_recovery_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ └── test_rounds.py │ ├── register_termination_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ └── test_models.py │ ├── registration_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── reset_pause_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── slashing_abci │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── squads_transaction_settlement_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ └── skill.yaml │ ├── termination_abci │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── test_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── test_ipfs_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ └── tests │ │ ├── __init__.py │ │ ├── test_behaviours.py │ │ ├── test_dialogues.py │ │ ├── test_handlers.py │ │ ├── test_models.py │ │ ├── test_payloads.py │ │ └── test_rounds.py │ ├── test_solana_tx_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── composition.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payloads.py │ ├── rounds.py │ └── skill.yaml │ └── transaction_settlement_abci │ ├── README.md │ ├── __init__.py │ ├── behaviours.py │ ├── dialogues.py │ ├── fsm_specification.yaml │ ├── handlers.py │ ├── models.py │ ├── payload_tools.py │ ├── payloads.py │ ├── rounds.py │ ├── skill.yaml │ ├── test_tools │ ├── __init__.py │ └── integration.py │ └── tests │ ├── __init__.py │ ├── test_behaviours.py │ ├── test_dialogues.py │ ├── test_handlers.py │ ├── test_models.py │ ├── test_payload_tools.py │ ├── test_payloads.py │ ├── test_rounds.py │ └── test_tools │ ├── __init__.py │ └── test_integration.py ├── plugins └── aea-test-autonomy │ ├── LICENSE │ ├── README.md │ ├── aea_test_autonomy │ ├── __init__.py │ ├── base_test_classes │ │ ├── __init__.py │ │ ├── agents.py │ │ └── contracts.py │ ├── configurations.py │ ├── data │ │ ├── encrypted_keys.json │ │ ├── ethereum_key_1.txt │ │ ├── ethereum_key_2.txt │ │ ├── ethereum_key_3.txt │ │ ├── ethereum_key_4.txt │ │ ├── ethereum_key_5.txt │ │ └── ethereum_key_deployer.txt │ ├── docker │ │ ├── __init__.py │ │ ├── acn_node.py │ │ ├── amm_net.py │ │ ├── base.py │ │ ├── ganache.py │ │ ├── gnosis_safe_net.py │ │ ├── registries.py │ │ └── tendermint.py │ ├── fixture_helpers.py │ ├── helpers │ │ ├── __init__.py │ │ ├── async_utils.py │ │ ├── base.py │ │ ├── contracts.py │ │ └── tendermint_utils.py │ └── py.typed │ ├── pyproject.toml │ ├── setup.py │ └── tests │ ├── __init__.py │ └── test_base_test_classes │ ├── __init__.py │ └── test_agents.py ├── pyproject.toml ├── scripts ├── RELEASE_PROCESS.md ├── __init__.py ├── bump.py ├── check_copyright.py ├── check_dependencies.py ├── check_doc_ipfs_hashes.py ├── check_doc_links.py ├── check_ipfs_hashes_pushed.py ├── freeze_dependencies.py ├── generate_api_documentation.py ├── generate_contract_list.py ├── generate_package_list.py ├── pre-add ├── pre-push └── whitelist.py ├── setup.cfg ├── setup.py ├── skaffold.yaml ├── tests ├── __init__.py ├── conftest.py ├── data │ ├── dummy_packages │ │ ├── __init__.py │ │ ├── dummy_author │ │ │ ├── agents │ │ │ │ └── dummy_agent │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── aea-config.yaml │ │ │ │ │ └── readme.md │ │ │ ├── connections │ │ │ │ └── dummy_connection │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── connection.py │ │ │ │ │ ├── connection.yaml │ │ │ │ │ └── readme.md │ │ │ ├── contracts │ │ │ │ └── dummy_contract │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── contract.py │ │ │ │ │ └── contract.yaml │ │ │ ├── protocols │ │ │ │ └── dummy_protocol │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── message.py │ │ │ │ │ ├── protocol.yaml │ │ │ │ │ └── serialization.py │ │ │ ├── services │ │ │ │ └── dummy_service │ │ │ │ │ ├── README.md │ │ │ │ │ └── service.yaml │ │ │ └── skills │ │ │ │ └── dummy_skill │ │ │ │ ├── __init__.py │ │ │ │ ├── behaviours.py │ │ │ │ ├── handlers.py │ │ │ │ ├── my_model.py │ │ │ │ └── skill.yaml │ │ └── packages.json │ ├── dummy_service_config_files │ │ ├── service_0.yaml │ │ ├── service_1.yaml │ │ ├── service_2.yaml │ │ ├── service_3.yaml │ │ └── service_4.yaml │ ├── logs │ │ └── aea_0.txt │ ├── nft.png │ └── specs │ │ ├── fsm_specification.json │ │ ├── fsm_specification_empty.json │ │ └── fsm_specification_extra.json ├── test_autonomy │ ├── __init__.py │ ├── base.py │ ├── test_analyse │ │ └── test_logs.py │ ├── test_chain │ │ ├── __init__.py │ │ ├── base.py │ │ ├── test_addresses.py │ │ ├── test_metadata.py │ │ ├── test_mint.py │ │ ├── test_service.py │ │ ├── test_subgraph.py │ │ ├── test_tx.py │ │ └── test_utils.py │ ├── test_cli │ │ ├── __init__.py │ │ ├── base.py │ │ ├── test_analyse │ │ │ ├── __init__.py │ │ │ ├── test_abci │ │ │ │ ├── __init__.py │ │ │ │ ├── test_docstring_generator.py │ │ │ │ └── test_docstrings.py │ │ │ ├── test_benchmarks.py │ │ │ ├── test_check_dialogues.py │ │ │ ├── test_check_handlers.py │ │ │ ├── test_logs.py │ │ │ ├── test_specs.py │ │ │ └── test_verify_service.py │ │ ├── test_build_image.py │ │ ├── test_deploy │ │ │ ├── __init__.py │ │ │ ├── test_build │ │ │ │ ├── __init__.py │ │ │ │ └── test_deployment.py │ │ │ ├── test_from_token.py │ │ │ └── test_run_deployment.py │ │ ├── test_develop │ │ │ ├── __init__.py │ │ │ └── test_local_service_registry.py │ │ ├── test_fetch.py │ │ ├── test_hash.py │ │ ├── test_helpers │ │ │ ├── __init__.py │ │ │ ├── test_chain_helpers.py │ │ │ ├── test_docstrings.py │ │ │ ├── test_env_helpers.py │ │ │ └── test_fsm_spec.py │ │ ├── test_mint │ │ │ ├── __init__.py │ │ │ └── test_mint_components.py │ │ ├── test_packages.py │ │ ├── test_publish.py │ │ ├── test_push_all.py │ │ ├── test_replay │ │ │ ├── __init__.py │ │ │ ├── test_agent.py │ │ │ └── test_tendermint.py │ │ ├── test_scaffold_fsm.py │ │ ├── test_service │ │ │ ├── __init__.py │ │ │ └── test_service_manager.py │ │ └── test_utils │ │ │ ├── __init__.py │ │ │ └── test_click_utils.py │ ├── test_configurations.py │ ├── test_constants.py │ ├── test_deploy │ │ ├── __init__.py │ │ ├── test_deployment_generators.py │ │ ├── test_image.py │ │ ├── test_network_builder.py │ │ └── test_service_specification.py │ ├── test_images │ │ ├── __init__.py │ │ ├── base.py │ │ ├── test_autonomy.py │ │ ├── test_autonomy_user.py │ │ ├── test_runtime.py │ │ └── test_tendermint.py │ ├── test_package_manager.py │ └── test_replay.py ├── test_base.py ├── test_deployments │ ├── __init__.py │ ├── conftest.py │ ├── test_app.py │ ├── test_deployment_code_identical.py │ └── test_deployments.py ├── test_docs │ ├── helper.py │ ├── test_code_blocks.py │ └── test_commands.py └── test_scripts │ └── test_check_doc_ipfs_hashes.py └── tox.ini /.coveragerc: -------------------------------------------------------------------------------- 1 | [run] 2 | omit = 3 | */.tox/* 4 | 5 | [report] 6 | exclude_lines = 7 | pragma: no cover 8 | pragma: nocover 9 | if _descriptor._USE_C_DESCRIPTORS == False: -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- 1 | do_token 2 | aws_token 3 | 4 | build/ 5 | *.bz2 6 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | ### Subject of the issue 11 | Describe your issue here. 12 | 13 | ### Your environment 14 | - OS: [e.g. iOS] 15 | - Python version: [e.g. 3.7.2] 16 | - Package Version [e.g. 0.1.3] 17 | - Anything else you consider helpful. 18 | 19 | ### Steps to reproduce 20 | Tell us how to reproduce this issue. 21 | 22 | ### Expected behaviour 23 | Tell us what should happen 24 | 25 | ### Actual behaviour 26 | Tell us what happens instead 27 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Is your feature request related to a problem? Please describe.** 11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] 12 | 13 | **Describe the solution you'd like** 14 | A clear and concise description of what you want to happen. 15 | 16 | **Describe alternatives you've considered** 17 | A clear and concise description of any alternative solutions or features you've considered. 18 | 19 | **Additional context** 20 | Add any other context or screenshots about the feature request here. 21 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | updates: 3 | 4 | # Maintain dependencies for Pip 5 | - package-ecosystem: "pip" 6 | directory: "." 7 | schedule: 8 | interval: "weekly" 9 | target-branch: "develop" 10 | labels: 11 | - "dependencies" 12 | -------------------------------------------------------------------------------- /AUTHORS.md: -------------------------------------------------------------------------------- 1 | # Authors 2 | 3 | This is the official list of authors for copyright purposes. 4 | 5 | * 8baller <8ball030@gmail.com> [8ball030](https://github.com/8ball030) 6 | * Adamantios Zaras [Adamantios](https://github.com/Adamantios) 7 | * David Minarsch [DavidMinarsch](https://github.com/DavidMinarsch) 8 | * David Vilela [dvilelaf](https://github.com/dvilelaf) 9 | * Marco Favorito [marcofavorito](https://github.com/marcofavorito) 10 | * Jose Moreira Sanchez [jmoreira-valory](https://github.com/jmoreira-valory) 11 | * M.A.P. Karrenbelt [Karrenbelt](https://github.com/Karrenbelt) 12 | * Viraj Patel [angrybayblade](https://github.com/angrybayblade) 13 | * Ardian Abazi [0xArdi](https://github.com/0xArdi) 14 | -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.md LICENSE HISTORY.md AUTHORS.md SECURITY.md CODE_OF_CONDUCT.md Pipfile mkdocs.yml tox.ini pytest.ini strategy.ini 2 | 3 | recursive-include autonomy *.json *.yaml *.proto *.ico *png *.html *.js *.css *.md *.cfg json1.dll 4 | recursive-include deployments * 5 | recursive-include docs * 6 | recursive-include packages * 7 | recursive-include scripts * 8 | recursive-include tests * 9 | -------------------------------------------------------------------------------- /autonomy/analyse/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Analysis of agent services.""" 21 | -------------------------------------------------------------------------------- /autonomy/analyse/abci/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tools to analyse ABCI apps.""" 21 | -------------------------------------------------------------------------------- /autonomy/analyse/benchmark/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Benchmarks module.""" 21 | -------------------------------------------------------------------------------- /autonomy/analyse/logs/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tools to analyse agent logs.""" 21 | -------------------------------------------------------------------------------- /autonomy/chain/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tools for on-chain interactions.""" 21 | -------------------------------------------------------------------------------- /autonomy/chain/subgraph/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Subgraph client.""" 21 | -------------------------------------------------------------------------------- /autonomy/cli/helpers/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """CLI helpers.""" 21 | -------------------------------------------------------------------------------- /autonomy/cli/utils/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Useful utilities for CLI commands.""" 21 | -------------------------------------------------------------------------------- /autonomy/configurations/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Configurations module.""" 21 | -------------------------------------------------------------------------------- /autonomy/data/Dockerfiles/agent/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG AUTONOMY_IMAGE_VERSION="latest" 2 | ARG AUTONOMY_IMAGE_NAME="valory/open-autonomy" 3 | FROM ${AUTONOMY_IMAGE_NAME}:${AUTONOMY_IMAGE_VERSION} 4 | 5 | ARG AEA_AGENT 6 | ARG AUTHOR 7 | ARG EXTRA_DEPENDENCIES 8 | 9 | ARG PRE_INSTALL_COMMAND="" 10 | RUN /bin/sh -c "${PRE_INSTALL_COMMAND}" 11 | 12 | RUN aea init --reset --remote --ipfs --author ${AUTHOR} 13 | 14 | WORKDIR /root 15 | 16 | RUN AEA_AGENT=${AEA_AGENT} EXTRA_DEPENDENCIES=${EXTRA_DEPENDENCIES} bash /root/scripts/install.sh 17 | 18 | RUN chmod -R a+x /root 19 | RUN chmod -R 777 /home 20 | 21 | CMD ["/root/scripts/start.sh"] 22 | 23 | HEALTHCHECK --interval=3s --timeout=600s --retries=600 CMD netstat -ltn | grep -c 26658 > /dev/null; if [ 0 != $? ]; then exit 1; fi; 24 | -------------------------------------------------------------------------------- /autonomy/data/contracts/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Contract packages for the mint module""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Deployment of agent services.""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/generators/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Helpers package for the 'deployments' functionality.""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/generators/docker_compose/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Docker-compose Deployment Generator.""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/generators/kubernetes/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Kubernetes Deployment Generator.""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/generators/localhost/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2024 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Localhost Deployment Generator.""" 21 | -------------------------------------------------------------------------------- /autonomy/deploy/generators/localhost/tendermint/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2024 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tendermint flask app.""" 21 | -------------------------------------------------------------------------------- /autonomy/fsm/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """FSM module.""" 21 | -------------------------------------------------------------------------------- /autonomy/fsm/scaffold/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """FSM scaffold.""" 21 | -------------------------------------------------------------------------------- /autonomy/fsm/scaffold/generators/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Scaffold generators.""" 21 | -------------------------------------------------------------------------------- /autonomy/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. The autonomy package uses inline types. 2 | -------------------------------------------------------------------------------- /autonomy/replay/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Replay tools.""" 21 | -------------------------------------------------------------------------------- /autonomy/services/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Service component definition.""" 21 | -------------------------------------------------------------------------------- /autonomy/services/scaffold/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Service component scaffold.""" 21 | -------------------------------------------------------------------------------- /autonomy/services/scaffold/service.yaml: -------------------------------------------------------------------------------- 1 | name: Service 2 | author: valory 3 | version: 0.1.0 4 | description: Description 5 | aea_version: ">=1.0.0, <2.0.0" 6 | license: Apache-2.0 7 | agent: agent 8 | network: hardhat 9 | number_of_agents: 4 10 | deployment: {} 11 | dependencies: {} -------------------------------------------------------------------------------- /deployments/Dockerfiles/autonomy-user/requirements.txt: -------------------------------------------------------------------------------- 1 | open-autonomy[all]==0.19.9 2 | open-aea[all]==1.65.0 3 | open-aea-cli-ipfs==1.65.0 4 | open-aea-ledger-ethereum==1.65.0 5 | protobuf>=4.21.6,<5.0.0 6 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/autonomy/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG AEA_VERSION=latest 2 | 3 | FROM valory/open-aea-user:${AEA_VERSION} 4 | 5 | VOLUME /var/run/docker.sock 6 | RUN apt update 7 | 8 | RUN apt install git net-tools sudo curl -y 9 | 10 | RUN curl -sSL https://get.docker.com/ | sh 11 | 12 | COPY scripts /root/scripts 13 | 14 | RUN chmod -R a+x /root 15 | 16 | ENTRYPOINT ["/bin/bash", "-c"] 17 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/autonomy/scripts/install.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | if [ "$AEA_AGENT" == "" ]; 4 | then 5 | echo "No Application specified!" 6 | exit 1 7 | fi 8 | 9 | echo Running the aea with $(aea --version) 10 | 11 | echo "Loading $AEA_AGENT" 12 | cd /home 13 | aea fetch $AEA_AGENT --alias agent || exit 1 14 | cd agent 15 | 16 | echo "Building the deployments host dependencies." 17 | pip install --upgrade pip 18 | aea build || exit 1 19 | echo "Successfully built the host dependencies." 20 | 21 | echo "Installing the necessary python dependencies!" 22 | aea install --timeout 21600 $EXTRA_DEPENDENCIES || exit 1 23 | echo "Successfully Installed the python dependencies." 24 | 25 | echo "Done." 26 | cd .. 27 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/development/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG AEA_VERSION=latest 2 | 3 | FROM valory/open-aea-user:${AEA_VERSION} 4 | 5 | ARG AUTHOR=default_author 6 | 7 | RUN apt remove --purge python3-virtualenv 8 | RUN python -m pip uninstall -y setuptools 9 | RUN python -m pip install --upgrade pip 10 | RUN python -m pip install --force-reinstall pipenv virtualenv requests 11 | 12 | WORKDIR /root 13 | 14 | COPY Pipfile /root/Pipfile 15 | COPY watcher.py /root/watcher.py 16 | COPY run.sh /root/run.sh 17 | COPY entrypoint.sh /root/entrypoint.sh 18 | 19 | CMD ["/root/entrypoint.sh"] 20 | 21 | HEALTHCHECK --interval=3s --timeout=600s --retries=600 CMD netstat -ltn | grep -c 26658 > /dev/null; if [ 0 != $? ]; then exit 1; fi; 22 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/development/Pipfile: -------------------------------------------------------------------------------- 1 | [[source]] 2 | url = "https://pypi.org/simple" 3 | verify_ssl = true 4 | name = "pypi" 5 | 6 | [packages] 7 | click = {version = "==7.1"} 8 | watchdog = {version = "==2.1.6"} 9 | requests = {version = "==2.27.1"} 10 | 11 | [dev-packages] 12 | open-aea = {editable = true, extras=["all"], path = "/open-aea"} 13 | open-aea-cli-ipfs = {editable = true, path = "/open-aea/plugins/aea-cli-ipfs"} 14 | open-aea-ledger-cosmos = {editable = true, path = "/open-aea/plugins/aea-ledger-cosmos"} 15 | open-aea-ledger-ethereum = {editable = true, path = "/open-aea/plugins/aea-ledger-ethereum"} 16 | open-aea-ledger-ethereum-flashbots = {editable = true, path = "/open-aea/plugins/aea-ledger-ethereum-flashbots"} 17 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/development/run.sh: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | echo Running the aea with $(aea --version) 3 | echo "Loading $AEA_AGENT" 4 | 5 | aea fetch $AEA_AGENT --alias agent 6 | cd agent 7 | 8 | echo "Installing the necessary dependencies!" 9 | aea -v DEBUG install 10 | 11 | echo "Copying agent key" 12 | cp /agent_key/ethereum_private_key.txt . 13 | cp /agent_key/ethereum_private_key.txt ethereum_flashbots_private_key.txt 14 | 15 | echo "Running the aea without a password!" 16 | aea generate-key cosmos --connection 17 | aea add-key cosmos --connection || (echo "Failed to generate the cosmos key needed for libp2p connection" && exit 1) 18 | aea add-key ethereum 19 | aea add-key ethereum_flashbots 20 | aea issue-certificates --aev || (echo "Failed to add cosmos key needed for libp2p connection" && exit 1) 21 | aea run --aev 22 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/documentation/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:22.04 as base 2 | ENV DEBIAN_FRONTEND noninteractive 3 | 4 | RUN apt-get update && apt-get upgrade -y 5 | RUN apt-get install -y \ 6 | python3-venv \ 7 | python3-pip \ 8 | python3-dev \ 9 | git 10 | 11 | # needed by Pipenv 12 | ENV LC_ALL C.UTF-8 13 | ENV LANG C.UTF-8 14 | 15 | RUN mkdir /build 16 | WORKDIR /build 17 | 18 | COPY docs/ /build/docs 19 | COPY mkdocs.yml /build 20 | 21 | RUN pip3 install tomte[docs]==0.2.17 22 | RUN mkdocs build 23 | 24 | FROM python:3.10-alpine 25 | COPY --from=base /build/site /site 26 | 27 | WORKDIR /site 28 | CMD ["python3", "-m", "http.server"] 29 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/hardhat/Dockerfile: -------------------------------------------------------------------------------- 1 | from node:16.7.0 2 | WORKDIR /home/ubuntu/build 3 | run git clone https://github.com/valory-xyz/safe-contracts 4 | WORKDIR /home/ubuntu/build/safe-contracts 5 | run git checkout feat/london-hardfork 6 | WORKDIR /home/ubuntu/build 7 | RUN cp -r /home/ubuntu/build/safe-contracts/* /home/ubuntu/build 8 | run rm -r safe-contracts 9 | run yarn install 10 | ENTRYPOINT ["/usr/local/bin/yarn"] 11 | CMD ["run", "hardhat", "node", "--port", "8545"] 12 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/tendermint/build.sh: -------------------------------------------------------------------------------- 1 | /usr/bin/tendermint testnet --config /etc/tendermint/config-template.toml --v $1 --o . $2 2 | chown $3 -R /tendermint -------------------------------------------------------------------------------- /deployments/Dockerfiles/tendermint/config-template.toml: -------------------------------------------------------------------------------- 1 | fast_sync = true 2 | 3 | [rpc] 4 | laddr = "tcp://0.0.0.0:26657" 5 | -------------------------------------------------------------------------------- /deployments/Dockerfiles/tendermint/install.sh: -------------------------------------------------------------------------------- 1 | # Install architecture specific version of tendermint 2 | 3 | echo Fetching binaries for $(uname -m) 4 | if [[ "$(uname -m)" == "aarch64" ]] 5 | then 6 | curl -L https://github.com/tendermint/tendermint/releases/download/v0.34.19/tendermint_0.34.19_linux_arm64.tar.gz > tendermint.tar.gz 7 | elif [[ "$(uname -m)" == "armv7l" ]] 8 | then 9 | curl -L https://github.com/tendermint/tendermint/releases/download/v0.34.19/tendermint_0.34.19_linux_arm64.tar.gz > tendermint.tar.gz 10 | else 11 | curl -L https://github.com/tendermint/tendermint/releases/download/v0.34.19/tendermint_0.34.19_linux_amd64.tar.gz > tendermint.tar.gz 12 | fi 13 | 14 | tar -xvf tendermint.tar.gz 15 | mv tendermint /usr/bin 16 | rm -fr tendermint.tar.gz 17 | 18 | /usr/bin/tendermint --help -------------------------------------------------------------------------------- /docs/advanced_reference/commands/autonomy_develop.md: -------------------------------------------------------------------------------- 1 | Development tools for agent services. 2 | 3 | ## Usage 4 | ```bash 5 | autonomy develop [OPTIONS] COMMAND [ARGS]... 6 | ``` 7 | 8 | ## Options 9 | `--help` 10 | : Show the help message and exit. 11 | 12 | ## `autonomy develop service-registry-network` 13 | Run service registry contracts locally. 14 | 15 | ### Usage 16 | ```bash 17 | autonomy develop service-registry-network [OPTIONS] 18 | ``` 19 | 20 | ### Examples 21 | 22 | Run service registry contracts locally 23 | 24 | ```bash 25 | autonomy develop service-registry-network 26 | ``` -------------------------------------------------------------------------------- /docs/advanced_reference/commands/autonomy_push_all.md: -------------------------------------------------------------------------------- 1 | 2 | Push all available packages to a registry. 3 | 4 | ## Usage 5 | ```bash 6 | autonomy push-all [OPTIONS] 7 | ``` 8 | 9 | ## Options 10 | `--packages-dir PATH` 11 | : Path to the packages directory. 12 | 13 | `--help` 14 | : Show the help message and exit. 15 | 16 | ## Examples 17 | Push all packages 18 | 19 | ```bash 20 | autonomy push-all --packages-dir ./packages 21 | ``` -------------------------------------------------------------------------------- /docs/advanced_reference/index.md: -------------------------------------------------------------------------------- 1 | # Advanced reference 2 | 3 | In this section you will find advanced developer topics such as the API and CLI documentation, 4 | debugging tools and other topics relevant for the development of agent services with 5 | the {{open_autonomy}} framework. -------------------------------------------------------------------------------- /docs/api/analyse/abci/docstrings.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.analyse.abci.docstrings 4 | 5 | Analyse ABCI app definitions for docstrings. 6 | 7 | 8 | 9 | #### docstring`_`abci`_`app 10 | 11 | ```python 12 | def docstring_abci_app(abci_app: Any) -> str 13 | ``` 14 | 15 | Generate a docstring for an ABCI app 16 | 17 | This ensures that documentation aligns with the actual implementation 18 | 19 | **Arguments**: 20 | 21 | - `abci_app`: abci app object. 22 | 23 | **Returns**: 24 | 25 | docstring 26 | 27 | 28 | 29 | #### compare`_`docstring`_`content 30 | 31 | ```python 32 | def compare_docstring_content(file_content: str, docstring: str, 33 | abci_app_name: str) -> Tuple[bool, str] 34 | ``` 35 | 36 | Update docstrings. 37 | 38 | -------------------------------------------------------------------------------- /docs/api/analyse/benchmark/html.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.analyse.benchmark.html 4 | 5 | HTML templates for benchmark outputs. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/analyse/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.analyse.constants 4 | 5 | Constants for analyse module. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/analyse/handlers.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.analyse.handlers 4 | 5 | Analyse handlers. 6 | 7 | 8 | 9 | #### load`_`handler`_`module`_`from`_`skill`_`path 10 | 11 | ```python 12 | def load_handler_module_from_skill_path(skill_path: Path) -> types.ModuleType 13 | ``` 14 | 15 | Resolve handler path to current workind directory. 16 | 17 | 18 | 19 | #### check`_`handlers 20 | 21 | ```python 22 | def check_handlers(config_file: Path, common_handlers: List[str]) -> None 23 | ``` 24 | 25 | Check handlers 26 | 27 | -------------------------------------------------------------------------------- /docs/api/analyse/logs/base.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.analyse.logs.base 4 | 5 | Tools for analysing logs. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/chain/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.chain.constants 4 | 5 | Chain constants 6 | 7 | 8 | 9 | #### CONTRACTS`_`DIR`_`LOCAL 10 | 11 | use from an editable/local installation 12 | 13 | 14 | 15 | #### ERC20`_`TOKEN`_`ADDRESS`_`LOCAL 16 | 17 | nosec 18 | 19 | -------------------------------------------------------------------------------- /docs/api/chain/metadata.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.chain.metadata 4 | 5 | Metadata helpers. 6 | 7 | 8 | 9 | #### serialize`_`metadata 10 | 11 | ```python 12 | def serialize_metadata(package_hash: str, package_id: PackageId, 13 | description: str, nft_image_hash: str) -> str 14 | ``` 15 | 16 | Serialize metadata. 17 | 18 | 19 | 20 | #### publish`_`metadata 21 | 22 | ```python 23 | def publish_metadata(package_id: PackageId, package_path: Path, 24 | nft: NFTHashOrPath, description: str) -> Tuple[str, str] 25 | ``` 26 | 27 | Publish service metadata. 28 | 29 | -------------------------------------------------------------------------------- /docs/api/chain/subgraph/queries.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.chain.subgraph.queries 4 | 5 | Query templates. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/cli/core.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.core 4 | 5 | Core for cli. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/cli/develop.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.develop 4 | 5 | Develop CLI module. 6 | 7 | 8 | 9 | #### develop`_`group 10 | 11 | ```python 12 | @click.group(name="develop") 13 | def develop_group() -> None 14 | ``` 15 | 16 | Develop an agent service. 17 | 18 | 19 | 20 | #### run`_`service`_`locally 21 | 22 | ```python 23 | @develop_group.command(name="service-registry-network") 24 | @click.argument( 25 | "image", 26 | type=str, 27 | required=False, 28 | default=DEFAULT_SERVICE_REGISTRY_CONTRACTS_IMAGE, 29 | ) 30 | def run_service_locally(image: str) -> None 31 | ``` 32 | 33 | Run the service registry contracts on a local network. 34 | 35 | -------------------------------------------------------------------------------- /docs/api/cli/hash.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.hash 4 | 5 | Override for hash command. 6 | 7 | 8 | 9 | #### hash`_`group 10 | 11 | ```python 12 | @click.group(name="hash") 13 | def hash_group() -> None 14 | ``` 15 | 16 | Hashing utils. 17 | 18 | 19 | 20 | #### generate`_`all 21 | 22 | ```python 23 | @hash_group.command(name="all") 24 | @click.option( 25 | "--packages-dir", 26 | type=click.Path(exists=True, dir_okay=True, file_okay=False), 27 | default=Path("packages/"), 28 | ) 29 | @click.option("--vendor", type=str) 30 | @click.option("--no-wrap", is_flag=True) 31 | def generate_all(packages_dir: Path, vendor: Optional[str], 32 | no_wrap: bool) -> None 33 | ``` 34 | 35 | Generate IPFS hashes. 36 | 37 | -------------------------------------------------------------------------------- /docs/api/cli/helpers/env.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.helpers.env 4 | 5 | Environment variable helpers. 6 | 7 | 8 | 9 | #### load`_`json 10 | 11 | ```python 12 | def load_json(file: Path, serialize: bool = False) -> None 13 | ``` 14 | 15 | Load json. 16 | 17 | 18 | 19 | #### load`_`env`_`file 20 | 21 | ```python 22 | def load_env_file(file: Path, serialize_json: bool = False) -> None 23 | ``` 24 | 25 | Load env file. 26 | 27 | -------------------------------------------------------------------------------- /docs/api/cli/helpers/image.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.helpers.image 4 | 5 | Image helpers. 6 | 7 | 8 | 9 | #### build`_`image 10 | 11 | ```python 12 | def build_image(agent: Optional[PublicId], 13 | service_dir: Optional[Path], 14 | pull: bool = False, 15 | version: Optional[str] = None, 16 | image_author: Optional[str] = None, 17 | extra_dependencies: Optional[Tuple[Dependency, ...]] = None, 18 | dockerfile: Optional[Path] = None, 19 | platform: Optional[str] = None, 20 | push: bool = False, 21 | builder: Optional[str] = None, 22 | pre_install_command: Optional[str] = None) -> None 23 | ``` 24 | 25 | Build agent/service image. 26 | 27 | -------------------------------------------------------------------------------- /docs/api/cli/publish.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.publish 4 | 5 | Implementation of the 'autonomy publish' subcommand. 6 | 7 | 8 | 9 | #### publish 10 | 11 | ```python 12 | @click.command(name="publish") 13 | @registry_flag() 14 | @click.option("--push-missing", 15 | is_flag=True, 16 | help="Push missing components on the registry.") 17 | @click.pass_context 18 | def publish(click_context: click.Context, registry: str, 19 | push_missing: bool) -> None 20 | ``` 21 | 22 | Publish the agent or service on the registry. 23 | 24 | -------------------------------------------------------------------------------- /docs/api/cli/push_all.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.push`_`all 4 | 5 | Push all available packages to a registry. 6 | 7 | 8 | 9 | #### push`_`all 10 | 11 | ```python 12 | @click.command("push-all") 13 | @click.option("--packages-dir", 14 | type=click.Path(file_okay=False, dir_okay=True, exists=True)) 15 | @click.option( 16 | "--retries", 17 | type=int, 18 | default=1, 19 | help="Tries on package push to the network.", 20 | ) 21 | @registry_flag() 22 | def push_all(packages_dir: Optional[Path], retries: int, 23 | registry: str) -> None 24 | ``` 25 | 26 | Push all available packages to a registry. 27 | 28 | -------------------------------------------------------------------------------- /docs/api/cli/scaffold_fsm.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.scaffold`_`fsm 4 | 5 | Implement a scaffold sub-command to scaffold ABCI skills. 6 | 7 | This module patches the 'aea scaffold' command so to add a new subcommand for scaffolding a skill 8 | starting from FSM specification. 9 | 10 | 11 | 12 | #### fsm 13 | 14 | ```python 15 | @scaffold.command() 16 | @registry_flag() 17 | @click.argument("skill_name", type=str, required=True) 18 | @click.option("--spec", 19 | type=click.Path(exists=True, dir_okay=False), 20 | required=True) 21 | @pass_ctx 22 | def fsm(ctx: Context, registry: str, skill_name: str, spec: str) -> None 23 | ``` 24 | 25 | Add an ABCI skill scaffolding from an FSM specification. 26 | 27 | -------------------------------------------------------------------------------- /docs/api/cli/service.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.cli.service 4 | 5 | Implementation of the `autonomy service` command 6 | 7 | 8 | 9 | #### service 10 | 11 | ```python 12 | @click.group("service") 13 | @pass_ctx 14 | @timeout_flag 15 | @retries_flag 16 | @sleep_flag 17 | @dry_run_flag 18 | @chain_selection_flag() 19 | def service(ctx: Context, chain_type: str, timeout: float, retries: int, 20 | sleep: float, dry_run: bool) -> None 21 | ``` 22 | 23 | Manage on-chain services. 24 | 25 | -------------------------------------------------------------------------------- /docs/api/configurations/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.configurations.constants 4 | 5 | Configuration constants. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/configurations/loader.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.configurations.loader 4 | 5 | Service component base. 6 | 7 | 8 | 9 | #### load`_`service`_`config 10 | 11 | ```python 12 | def load_service_config(service_path: Path, 13 | substitute_env_vars: bool = False) -> Service 14 | ``` 15 | 16 | Load service config from the path. 17 | 18 | -------------------------------------------------------------------------------- /docs/api/configurations/validation.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.configurations.validation 4 | 5 | Config validators. 6 | 7 | 8 | 9 | ## ConfigValidator Objects 10 | 11 | ```python 12 | class ConfigValidator(validation.ConfigValidator) 13 | ``` 14 | 15 | Configuration validator implementation. 16 | 17 | 18 | 19 | #### `__`init`__` 20 | 21 | ```python 22 | def __init__(schema_filename: str, env_vars_friendly: bool = False) -> None 23 | ``` 24 | 25 | Initialize the parser for configuration files. 26 | 27 | **Arguments**: 28 | 29 | - `schema_filename`: the path to the JSON-schema file in 'aea/configurations/schemas'. 30 | - `env_vars_friendly`: whether or not it is env var friendly. 31 | 32 | -------------------------------------------------------------------------------- /docs/api/connections/abci/dialogues.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.connections.abci.dialogues 4 | 5 | Dialogues classes for the ABCI connection. 6 | 7 | 8 | 9 | ## AbciDialogues Objects 10 | 11 | ```python 12 | class AbciDialogues(BaseAbciDialogues) 13 | ``` 14 | 15 | The dialogues class keeps track of all ABCI dialogues. 16 | 17 | 18 | 19 | #### `__`init`__` 20 | 21 | ```python 22 | def __init__(**kwargs: Any) -> None 23 | ``` 24 | 25 | Initialize dialogues. 26 | 27 | **Arguments**: 28 | 29 | - `kwargs`: keyword arguments 30 | 31 | -------------------------------------------------------------------------------- /docs/api/connections/abci/scripts/genproto.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.connections.abci.scripts.genproto 4 | 5 | Update Python modules from Tendermint Protobuf files. 6 | 7 | NOTE: This code is adapted from the google protobuf Python library. Specifically from the setup.py file. 8 | 9 | 10 | 11 | #### generate`_`proto 12 | 13 | ```python 14 | def generate_proto(source: str) -> None 15 | ``` 16 | 17 | Generate a protobuf file. 18 | 19 | Invokes the Protocol Compiler to generate a _pb2.py from the given 20 | .proto file. Does nothing if the output already exists and is newer than 21 | the input. 22 | 23 | **Arguments**: 24 | 25 | - `source`: path to the source. 26 | 27 | -------------------------------------------------------------------------------- /docs/api/connections/abci/tests/test_fuzz/mock_node/node.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.connections.abci.tests.test`_`fuzz.mock`_`node.node 4 | 5 | Used for mocking a tendermint node 6 | 7 | 8 | 9 | ## MockNode Objects 10 | 11 | ```python 12 | class MockNode() 13 | ``` 14 | 15 | Mocks a Tendermint Node 16 | 17 | 18 | 19 | #### connect 20 | 21 | ```python 22 | def connect() -> None 23 | ``` 24 | 25 | Connect the node. 26 | 27 | 28 | 29 | #### disconnect 30 | 31 | ```python 32 | def disconnect() -> None 33 | ``` 34 | 35 | Disconnect the node. 36 | 37 | -------------------------------------------------------------------------------- /docs/api/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.constants 4 | 5 | Constants 6 | 7 | -------------------------------------------------------------------------------- /docs/api/deploy/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.deploy.constants 4 | 5 | Constants for generating deployments environment. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/deploy/generators/docker_compose/templates.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.deploy.generators.docker`_`compose.templates 4 | 5 | Deployment Templates. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/deploy/generators/kubernetes/templates.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.deploy.generators.kubernetes.templates 4 | 5 | Kubernetes Templates module. 6 | 7 | 8 | 9 | #### SECRET`_`STRING`_`DATA`_`TEMPLATE 10 | 11 | nosec 12 | 13 | -------------------------------------------------------------------------------- /docs/api/deploy/generators/localhost/utils.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.deploy.generators.localhost.utils 4 | 5 | Localhost Deployment utilities. 6 | 7 | 8 | 9 | #### check`_`tendermint`_`version 10 | 11 | ```python 12 | def check_tendermint_version() -> Path 13 | ``` 14 | 15 | Check tendermint version. 16 | 17 | 18 | 19 | #### setup`_`agent 20 | 21 | ```python 22 | def setup_agent(working_dir: Path, agent_dir: Path, keys_file: Path) -> None 23 | ``` 24 | 25 | Setup locally deployed agent. 26 | 27 | -------------------------------------------------------------------------------- /docs/api/fsm/scaffold/constants.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.fsm.scaffold.constants 4 | 5 | Constants. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/plugins/aea_test_autonomy/configurations.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # plugins.aea-test-autonomy.aea`_`test`_`autonomy.configurations 4 | 5 | Test tools configuration. 6 | 7 | 8 | 9 | #### CUR`_`PATH 10 | 11 | type: ignore 12 | 13 | 14 | 15 | #### ETHEREUM`_`ENCRYPTION`_`PASSWORD 16 | 17 | nosec 18 | 19 | 20 | 21 | #### ANY`_`ADDRESS 22 | 23 | nosec 24 | 25 | -------------------------------------------------------------------------------- /docs/api/plugins/aea_test_autonomy/helpers/contracts.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # plugins.aea-test-autonomy.aea`_`test`_`autonomy.helpers.contracts 4 | 5 | Helpers for contract tests. 6 | 7 | 8 | 9 | #### get`_`register`_`contract 10 | 11 | ```python 12 | def get_register_contract(directory: Path) -> Contract 13 | ``` 14 | 15 | Get and register the erc1155 contract package. 16 | 17 | -------------------------------------------------------------------------------- /docs/api/replay/utils.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # autonomy.replay.utils 4 | 5 | Utils module. 6 | 7 | 8 | 9 | #### fix`_`address`_`books 10 | 11 | ```python 12 | def fix_address_books(build_dir: Path) -> None 13 | ``` 14 | 15 | Update address books in data dump to use them in replays. 16 | 17 | 18 | 19 | #### fix`_`config`_`files 20 | 21 | ```python 22 | def fix_config_files(build_dir: Path) -> None 23 | ``` 24 | 25 | Update config.toml in data dump to use them in replays. 26 | 27 | 28 | 29 | #### load`_`docker`_`config 30 | 31 | ```python 32 | def load_docker_config(file_path: Path) -> Dict[str, Any] 33 | ``` 34 | 35 | Load docker config. 36 | 37 | -------------------------------------------------------------------------------- /docs/api/skills/abstract_abci/dialogues.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.abstract`_`abci.dialogues 4 | 5 | This module contains the classes required for dialogue management. 6 | 7 | 8 | 9 | ## AbciDialogues Objects 10 | 11 | ```python 12 | class AbciDialogues(Model, BaseAbciDialogues) 13 | ``` 14 | 15 | The dialogues class keeps track of all dialogues. 16 | 17 | 18 | 19 | #### `__`init`__` 20 | 21 | ```python 22 | def __init__(**kwargs: Any) -> None 23 | ``` 24 | 25 | Initialize dialogues. 26 | 27 | **Arguments**: 28 | 29 | - `kwargs`: keyword arguments 30 | 31 | -------------------------------------------------------------------------------- /docs/api/skills/abstract_round_abci/io_/paths.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.abstract`_`round`_`abci.io`_`.paths 4 | 5 | This module contains all the path related operations of the behaviours. 6 | 7 | 8 | 9 | #### create`_`pathdirs 10 | 11 | ```python 12 | def create_pathdirs(path: str) -> None 13 | ``` 14 | 15 | Create the non-existing directories of a given path. 16 | 17 | **Arguments**: 18 | 19 | - `path`: the given path. 20 | 21 | -------------------------------------------------------------------------------- /docs/api/skills/abstract_round_abci/tests/data/dummy_abci/dialogues.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.abstract`_`round`_`abci.tests.data.dummy`_`abci.dialogues 4 | 5 | This module contains the dialogues of the DummyAbciApp. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/skills/abstract_round_abci/tests/data/dummy_abci/handlers.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.abstract`_`round`_`abci.tests.data.dummy`_`abci.handlers 4 | 5 | This module contains the handlers for the skill of DummyAbciApp. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/skills/abstract_round_abci/tests/data/dummy_abci/models.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.abstract`_`round`_`abci.tests.data.dummy`_`abci.models 4 | 5 | This module contains the shared state for the abci skill of DummyAbciApp. 6 | 7 | 8 | 9 | ## SharedState Objects 10 | 11 | ```python 12 | class SharedState(BaseSharedState) 13 | ``` 14 | 15 | Keep the current shared state of the skill. 16 | 17 | -------------------------------------------------------------------------------- /docs/api/skills/registration_abci/dialogues.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.registration`_`abci.dialogues 4 | 5 | This module contains the classes required for dialogue management. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/skills/registration_abci/handlers.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.registration`_`abci.handlers 4 | 5 | This module contains the handler for the 'registration_abci' skill. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/skills/registration_abci/models.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.registration`_`abci.models 4 | 5 | This module contains the shared state for the registration abci skill. 6 | 7 | 8 | 9 | ## SharedState Objects 10 | 11 | ```python 12 | class SharedState(BaseSharedState) 13 | ``` 14 | 15 | Keep the current shared state of the skill. 16 | 17 | -------------------------------------------------------------------------------- /docs/api/skills/registration_abci/payloads.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.registration`_`abci.payloads 4 | 5 | This module contains the transaction payloads for common apps. 6 | 7 | 8 | 9 | ## RegistrationPayload Objects 10 | 11 | ```python 12 | @dataclass(frozen=True) 13 | class RegistrationPayload(BaseTxPayload) 14 | ``` 15 | 16 | Represent a transaction payload of type 'registration'. 17 | 18 | -------------------------------------------------------------------------------- /docs/api/skills/transaction_settlement_abci/dialogues.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.transaction`_`settlement`_`abci.dialogues 4 | 5 | This module contains the classes required for dialogue management. 6 | 7 | -------------------------------------------------------------------------------- /docs/api/skills/transaction_settlement_abci/handlers.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # packages.valory.skills.transaction`_`settlement`_`abci.handlers 4 | 5 | This module contains the handler for the 'transaction_settlement_abci' skill. 6 | 7 | -------------------------------------------------------------------------------- /docs/configure_service/index.md: -------------------------------------------------------------------------------- 1 | # Configure Service 2 | 3 | This section provides detailed information and guides for configuring an agent service. 4 | Here you will find: 5 | 6 | - [The service configuration file](./service_configuration_file.md): Learn how to set up and customize your service's configuration 7 | - [Configure access to external chains](./configure_access_external_chains.md): Guide for configuring your service to work with different blockchain networks 8 | - [On-chain deployment checklist](./on-chain_deployment_checklist.md): Requirements and steps for deploying your service on-chain 9 | - [Analyze and test](./analise_test.md): Tools and practices for testing and analyzing your service 10 | 11 | These guides will help you properly configure and validate your agent service for both development and production environments. -------------------------------------------------------------------------------- /docs/fonts/Inter-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/fonts/Inter-Bold.ttf -------------------------------------------------------------------------------- /docs/fonts/Inter-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/fonts/Inter-Regular.ttf -------------------------------------------------------------------------------- /docs/fonts/Manrope-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/fonts/Manrope-Bold.ttf -------------------------------------------------------------------------------- /docs/images/do_name_servers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/do_name_servers.png -------------------------------------------------------------------------------- /docs/images/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/favicon.ico -------------------------------------------------------------------------------- /docs/images/favicon16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/favicon16x16.png -------------------------------------------------------------------------------- /docs/images/favicon32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/favicon32x32.png -------------------------------------------------------------------------------- /docs/images/favicon96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/favicon96x96.png -------------------------------------------------------------------------------- /docs/images/name_server_setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/name_server_setup.png -------------------------------------------------------------------------------- /docs/images/networking_page.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/networking_page.png -------------------------------------------------------------------------------- /docs/images/open-autonomy-framework-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/docs/images/open-autonomy-framework-logo.png -------------------------------------------------------------------------------- /docs/key_concepts/index.md: -------------------------------------------------------------------------------- 1 | #Key concepts - index 2 | 3 | Here we present some key concepts to understand how agent services work internally. More concretely: 4 | 5 | * The section [autonomous economic agents](aea.md) presents an overview of the main components of an agent. It is an excerpt of the {{open_aea_doc}}. 6 | * The section about [finite-state machines](fsm.md) briefly reviews their main concepts through an example. 7 | * The section about the [Application Blockchain Interface](abci.md) discusses the interface used by agent services to communicate with the local blockchain. 8 | * The main section is devoted to [FSM Apps](fsm_app_introduction.md), which is the core component of an agent service which implements its business logic. 9 | * Finally, we also present some considerations about the [threat model](threat_model.md) of agent services. 10 | -------------------------------------------------------------------------------- /docs/version.md: -------------------------------------------------------------------------------- 1 | Find the latest version of the Python implementation of the [Open Autonomy](https://pypi.org/project/open-autonomy/) on PyPI. 2 | 3 | If you are upgrading your AEA project from a previous version of the AEA framework, please check out [the upgrading guide](./upgrading.md). 4 | -------------------------------------------------------------------------------- /infrastructure/aws/provider.tf: -------------------------------------------------------------------------------- 1 | provider "aws" { 2 | region = var.deployment_region 3 | shared_credentials_file = var.aws_cred_file 4 | } 5 | 6 | -------------------------------------------------------------------------------- /infrastructure/aws/terraform.tvars: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/infrastructure/aws/terraform.tvars -------------------------------------------------------------------------------- /infrastructure/digital_ocean/providers.tf: -------------------------------------------------------------------------------- 1 | provider "digitalocean" { 2 | token = "${chomp(file(var.cred_file))}" 3 | } -------------------------------------------------------------------------------- /infrastructure/digital_ocean/variables.tf: -------------------------------------------------------------------------------- 1 | variable "domain" { 2 | description = "hosted zone name" 3 | default = "price-oracle.co.uk" 4 | } 5 | 6 | 7 | variable "cluster_name" { 8 | description = "name of the cluster" 9 | default = "price-estimation-cluster" 10 | } 11 | variable "deployment_region"{ 12 | description = "region to deploy the cluster to." 13 | default = "lon1" 14 | } 15 | 16 | variable "ssh_fingerprint"{ 17 | description = "fingerprint of the sshkey to be used to control the newly created workers." 18 | default = "12:31:25:bc:4e:d4:e8:e4:74:34:b1:9d:e2:f8:49:b2" 19 | } 20 | 21 | variable "cred_file"{ 22 | description = "path of credentials for Digital Ocean" 23 | default = "../do_creds" 24 | } 25 | 26 | variable "worker_count"{ 27 | description = "Number of worker nodes to create for the cluster" 28 | default = "2" 29 | } 30 | -------------------------------------------------------------------------------- /mints/1.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/abci:0.1.0","description":"A protocol for ABCI requests and responses.","code_uri":"ipfs://bafybeianfguceeckwhelenmythqmbtqswll6vcaz5wwsdr7hin7ov3rvje","image":"ipfs://bafybeifa2pxsifunr56w2moojc2gxglj2huqxhoqc2udyiw5ptk2a6u4xy","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/1.png -------------------------------------------------------------------------------- /mints/10.json: -------------------------------------------------------------------------------- 1 | {"name":"connection/valory/ledger:0.1.0","description":"A connection to interact with any ledger API and contract API.","code_uri":"ipfs://bafybeibskbi7lft2htvogxrwzbix6kj2ri373ppde6bkmuabmq3z32lkxi","image":"ipfs://bafybeicowleclrypurcghug7hoaaurthme3q6qzyaobufdp46fjavpunjm","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/10.png -------------------------------------------------------------------------------- /mints/11.json: -------------------------------------------------------------------------------- 1 | {"name":"connection/valory/p2p_libp2p_client:0.1.0","description":"The libp2p client connection implements a tcp connection to a running libp2p node as a traffic delegate to send/receive envelopes to/from agents in the DHT.","code_uri":"ipfs://bafybeigvayl4ykzqf6o6bw2irv7am3qvczjoeu7yjhzn27ajiwvcio3lxm","image":"ipfs://bafybeielt2tad5u32ssci3eal76o4zc3ce3gqbye74zsx74dbividpb3ti","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/11.png -------------------------------------------------------------------------------- /mints/12.json: -------------------------------------------------------------------------------- 1 | {"name":"contract/valory/service_registry:0.1.0","description":" Service Registry contract wrapper","code_uri":"ipfs://bafybeidtwbj7mwiskbbmsw43zzooivuq6nripdzn7yuoou66rq7spom54m","image":"ipfs://bafybeigyh2262jvllla3ozv42vc7kqzltuq75jfgpufncfkqlrupiydt5y","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/12.png -------------------------------------------------------------------------------- /mints/13.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/abstract_abci:0.1.0","description":"The abstract_abci skill provides a template of an ABCI application.","code_uri":"ipfs://bafybeih62tn62c33bcffjrlxvvokvorli2ow4v6myij352bl3im5dhvloa","image":"ipfs://bafybeihbx2uq77uy4jdb7k3la2xletdi7zkwslzw6ey77em2xcwa24sriq","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/13.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/13.png -------------------------------------------------------------------------------- /mints/14.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/abstract_round_abci:0.1.0","description":"Abstract round-based ABCI application","code_uri":"ipfs://bafybeihcarapqbgd7czlfyygkdjvb3zxhfkxvud7hd5owajkcwqsxa63gy","image":"ipfs://bafybeibyirsznbyrjagbyg5lfxjpf4hnlgzw3zz5o4hgmm6f22yqahrkpu","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/14.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/14.png -------------------------------------------------------------------------------- /mints/15.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/hello_world_abci:0.1.0","description":"Hello World ABCI example.","code_uri":"ipfs://bafybeiflibb7eiydyxuoyvsasc4sq5n3cpyplboprkngu5yhqsncfaicky","image":"ipfs://bafybeif5fbg6lertbauphvuupxydznzvqbrq25urvgjpu43v5yzqdanjfa","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/15.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/15.png -------------------------------------------------------------------------------- /mints/16.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/hello_world:0.1.0","description":"Agent for the Hello World ABCI example.","code_uri":"ipfs://bafybeiceeubzebfnj6x6mdac6kpn2rtdk3xea6lix4iboiicx5qpliapg4","image":"ipfs://bafybeic3c4qtpg2mokrgrjs2fplzcxixfoikaxphttq6iuzgy7wlvqgkou","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/16.png -------------------------------------------------------------------------------- /mints/17.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/registration_abci:0.1.0","description":"ABCI application for registering agents in a service.","code_uri":"ipfs://bafybeib54vcjymnqejppq6xnjvwvrcrs6ugq64prsgjo65qs6qvdn6u42a","image":"ipfs://bafybeihuj4esuxaglcf7zpfwu2ukk3i7dnygyqs2dgagqyg3q7437pz7qu","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/17.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/17.png -------------------------------------------------------------------------------- /mints/18.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/reset_pause_abci:0.1.0","description":"ABCI application for resetting and pausing app executions.","code_uri":"ipfs://bafybeigntwmltw62wtyjn4a7vumv7dreyuxng4kfv4lw76ktqswy3rjgum","image":"ipfs://bafybeigfaqvr3e6w5cse66p24vcuzwh5xiuqg73iqhi5s3uzk4jcci3zjy","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/18.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/18.png -------------------------------------------------------------------------------- /mints/19.json: -------------------------------------------------------------------------------- 1 | {"name":"contract/valory/gnosis_safe_proxy_factory:0.1.0","description":"Gnosis Safe proxy factory (GnosisSafeProxyFactory) contract wrapper.","code_uri":"ipfs://bafybeiej772sh3uuju2zsd62fz73ofg7p7ixaju6e3ahnzlbktcxoeoggy","image":"ipfs://bafybeidwirva4mnizdxcksmatehu6frk33iezqugefwlwiblu5wiji2c5e","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/19.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/19.png -------------------------------------------------------------------------------- /mints/2.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/acn:1.1.0","description":"The protocol used for envelope delivery on the ACN.","code_uri":"ipfs://bafybeidetrrkvdgveu4ph5g6v53lbh7ardfspbkpstmjxctx647bzyosyy","image":"ipfs://bafybeiccbvns4cjb2r72ppy23edoudho27vt7dtzppwwbvsxgzqplwisrq","attributes":[{"trait_type":"version","value":"1.1.0"}]} -------------------------------------------------------------------------------- /mints/2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/2.png -------------------------------------------------------------------------------- /mints/20.json: -------------------------------------------------------------------------------- 1 | {"name":"contract/valory/gnosis_safe:0.1.0","description":"Gnosis Safe (GnosisSafeL2) contract wrapper.","code_uri":"ipfs://bafybeiexiper376ji5h4wm5erzospvyikqmvw7pi5tpgrwanj5okznemqu","image":"ipfs://bafybeicqtn2y4ejqt2rlodaihwo6kvxgrf5fizpo6rgw6tqwylg2tfb4y4","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/20.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/20.png -------------------------------------------------------------------------------- /mints/21.json: -------------------------------------------------------------------------------- 1 | {"name":"contract/valory/multisend:0.1.0","description":"MultiSend contract wrapper.","code_uri":"ipfs://bafybeidvuabdn32lpsh3z7wb5fonotimysfsntueeb53dgil5jmiezrasq","image":"ipfs://bafybeiganht2rhanfj7tgmrsbosuglz7zhaph3cf64s433324z2rlklt74","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/21.png -------------------------------------------------------------------------------- /mints/22.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/safe_deployment_abci:0.1.0","description":"ABCI application for safe deployments.","code_uri":"ipfs://bafybeidjara6duo3cylvq4doewhqsvsjbpesva42nkxrlyqjolkbiaomte","image":"ipfs://bafybeigjrhglr2mavedqsaq7mri6w46xtaxqs2fsftbqszvpt2mnquj7yi","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/22.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/22.png -------------------------------------------------------------------------------- /mints/23.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/transaction_settlement_abci:0.1.0","description":"ABCI application for transaction settlement.","code_uri":"ipfs://bafybeich2q5fktbar6wd7d2zirw7teiqxgktayl4ie42adlnbgpvccxdhq","image":"ipfs://bafybeid7a6rrpl6lzaapxeeigzzs6bspfznelgrorgrd7z5tqs7whjcaaa","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/23.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/23.png -------------------------------------------------------------------------------- /mints/24.json: -------------------------------------------------------------------------------- 1 | {"name":"skill/valory/termination_abci/0.1.0","description":"Termination skill.","code_uri":"ipfs://bafybeictwhzizllmr4cd3jwxsmkhkspgwinipynoxdtfe4vwdeyov2zary","image":"ipfs://bafybeifbn23qscenqmsmatnmgusfbnutalj6sar6y37sj62e5rodcheulm","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/24.png -------------------------------------------------------------------------------- /mints/25.json: -------------------------------------------------------------------------------- 1 | {"name":"protocol/valory/ipfs/0.1.0","description":"A protocol specification for IPFS requests and responses.","code_uri":"ipfs://bafybeihlgai5pbmkb6mjhvgy4gkql5uvpwvxbpdowczgz4ovxat6vajrq4","image":"ipfs://bafybeif72vize3slitetmqyrpw4sl37udaoh6susx3bqlbu34ceuzfiiei","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/25.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/25.png -------------------------------------------------------------------------------- /mints/26.json: -------------------------------------------------------------------------------- 1 | {"name":"connection/valory/ipfs/0.1.0","description":"A connection responsible for uploading and downloading files from IPFS.","code_uri":"ipfs://bafybeie46fu7mv64q72dwzoxg77zbiv3pzsigzjk3rehjpm47cf3y77mha","image":"ipfs://bafybeic2zobnpsknxjks3qaii76cvbrha4hyknnj2gxjkmjo5sv4ihxikm","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/26.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/26.png -------------------------------------------------------------------------------- /mints/27.json: -------------------------------------------------------------------------------- 1 | {"name":"contract/valory/multicall2/0.1.0","description":"The MakerDAO multicall2 contract.","code_uri":"ipfs://bafybeih5dd66eslm7rvcewoo6wqwu2flpo7zjygr4zvldfkicoqjq5nhpi","image":"ipfs://bafybeiczrj4swssdh2z5ed5a3ygfrhh4z6kr72ngdjjf4vkwalaqo4anlm","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/27.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/27.png -------------------------------------------------------------------------------- /mints/3.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/contract_api:1.0.0","description":"A protocol for contract APIs requests and responses.","code_uri":"ipfs://bafybeigkedpmqhm7lrqusnkyfcapyx3dlkz2djfq74hou5pwtrskxgvuxu","image":"ipfs://bafybeibsb5i7cehbla2kvdrtbh2m67r62xgkf3en4oppuied7g6uqvp22m","attributes":[{"trait_type":"version","value":"1.0.0"}]} -------------------------------------------------------------------------------- /mints/3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/3.png -------------------------------------------------------------------------------- /mints/4.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/http:1.0.0","description":"A protocol for HTTP requests and responses.","code_uri":"ipfs://bafybeienmids6f5pcey2bnywmiup2faawqgmdhhz65qfciuhkntugztvpi","image":"ipfs://bafybeiduapzy74sn6ew4wtm4vznqgeti376cwev6skemnfrtwipvwgfdq4","attributes":[{"trait_type":"version","value":"1.0.0"}]} -------------------------------------------------------------------------------- /mints/4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/4.png -------------------------------------------------------------------------------- /mints/5.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/ledger_api:1.0.0","description":"A protocol for ledger APIs requests and responses.","code_uri":"ipfs://bafybeif2c3jt4tim3zbfq5c2lds7bs6qj5gvj2obk3pzdk3uy6zk2ivo3e","image":"ipfs://bafybeifwyisw7bmrrhwxppruncynyhm372vonru7r2nwhsrp34q2gsdgeu","attributes":[{"trait_type":"version","value":"1.0.0"}]} -------------------------------------------------------------------------------- /mints/5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/5.png -------------------------------------------------------------------------------- /mints/6.json: -------------------------------------------------------------------------------- 1 | {"name":"valory/tendermint:0.1.0","description":"A protocol for communication between two AEAs to share tendermint configuration details.","code_uri":"ipfs://bafybeihcnjhovvyyfbkuw5sjyfx2lfd4soeocfqzxz54g67333m6nk5gxq","image":"ipfs://bafybeigljh4525qqwu7ajobilesz6rxh22swkhbnvexid2llhpmc62vk7i","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/6.png -------------------------------------------------------------------------------- /mints/7.json: -------------------------------------------------------------------------------- 1 | {"name":"open_aea/signing:1.0.0","description":"A protocol for communication between skills and decision maker.","code_uri":"ipfs://bafybeid6f5ceool4evgaxdegs5pkjoivqjk3mo3ehctalswngb5m5c32wm","image":"ipfs://bafybeiesp3clxz5ogz6tcfsxlwjup5wa2kiy6wbdhczc253orwhwkdezhq","attributes":[{"trait_type":"version","value":"1.0.0"}]} -------------------------------------------------------------------------------- /mints/7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/7.png -------------------------------------------------------------------------------- /mints/8.json: -------------------------------------------------------------------------------- 1 | {"name":"connection/valory/abci:0.1.0","description":"Connection to wrap communication with an ABCI server.","code_uri":"ipfs://bafybeibfdzfevrtiywolqeepk6yfzyvl4bbu6mghhnebkptcbhsh5fxkbu","image":"ipfs://bafybeighztebkmb6d27hjsoqnrrntvphnuzm2jeq3yeelwcku72idgdghe","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/8.png -------------------------------------------------------------------------------- /mints/9.json: -------------------------------------------------------------------------------- 1 | {"name":"connection/valory/http_client:0.1.0","description":"The HTTP client connection that wraps a web-based client connecting to a RESTful API specification.","code_uri":"ipfs://bafybeicmoolrrjnt5qn7jbwon7a3b5noe6hkj7kbjj57xtfosoygkckhuy","image":"ipfs://bafybeih6ca7v4uapreoquh3jhvxu22coy6vqg2nizvcaveep2l2vhhbheq","attributes":[{"trait_type":"version","value":"0.1.0"}]} -------------------------------------------------------------------------------- /mints/9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/mints/9.png -------------------------------------------------------------------------------- /mints/whitelist.txt: -------------------------------------------------------------------------------- 1 | skill/valory/counter 2 | skill/valory/counter_client 3 | skill/valory/register_reset_recovery_abci 4 | skill/valory/register_termination_abci 5 | skill/valory/register_reset_abci 6 | skill/valory/test_ipfs_abci 7 | skill/valory/test_abci 8 | skill/valory/test_solana_tx_abci 9 | agent/valory/abstract_abci 10 | agent/valory/counter 11 | agent/valory/counter_client 12 | agent/valory/register_reset 13 | agent/valory/register_termination 14 | agent/valory/registration_start_up 15 | agent/valory/test_ipfs 16 | agent/valory/register_reset_recovery 17 | agent/valory/offend_slash 18 | agent/valory/solana_transfer_agent 19 | agent/valory/test_abci 20 | service/valory/counter 21 | service/valory/register_reset -------------------------------------------------------------------------------- /packages/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """AEA Local package registry.""" 21 | -------------------------------------------------------------------------------- /packages/valory/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Packages authored by 'valory'.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the agent packages authored by Valory AG.""" # pragma: nocover 21 | -------------------------------------------------------------------------------- /packages/valory/agents/abstract_abci/README.md: -------------------------------------------------------------------------------- 1 | # Abstract ABCI AEA 2 | 3 | This agent uses the `abci` connection and the `abstract_abci` skill 4 | to demonstrate a simple interaction between the components and the tendermint node. 5 | 6 | Use for testing purposes only! 7 | -------------------------------------------------------------------------------- /packages/valory/agents/abstract_abci/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module abstract_abci agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/abstract_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for abstract_abci agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/counter/README.md: -------------------------------------------------------------------------------- 1 | # ABCI Counter AEA 2 | 3 | This agent uses the `abci` connection and the `counter` skill 4 | to replicate the state with other AEAs through the Tendermint consensus engine. 5 | -------------------------------------------------------------------------------- /packages/valory/agents/counter/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module counter agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/counter/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for counter agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/counter_client/README.md: -------------------------------------------------------------------------------- 1 | # ABCI Counter AEA client 2 | 3 | This agent uses the `http_client` connection 4 | and the `counter_client` skill 5 | to interact with the ABCI Counter application through a Tendermint node. 6 | -------------------------------------------------------------------------------- /packages/valory/agents/offend_slash/README.md: -------------------------------------------------------------------------------- 1 | # Offend Slash Agent 2 | 3 | This agent uses the registration, the offend, the slash, and the reset and pause skills to test the slashing feature. 4 | -------------------------------------------------------------------------------- /packages/valory/agents/offend_slash/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """An agent to test the slashing feature.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/offend_slash/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `offend_slash` agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/README.md: -------------------------------------------------------------------------------- 1 | # Register Reset ABCI Agent 2 | 3 | This agent uses the registration and reset skills to debug the Tendermint issue. 4 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/tests/helpers/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Helper packages for register_reset agent tests.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/tests/helpers/slow_tendermint_server/config-template.toml: -------------------------------------------------------------------------------- 1 | fast_sync = true 2 | 3 | [rpc] 4 | laddr = "tcp://0.0.0.0:26657" 5 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset/tests/helpers/slow_tendermint_server/wrapper.sh: -------------------------------------------------------------------------------- 1 | BINARY="$(which tendermint)" 2 | ID=${ID:-0} 3 | LOG=${LOG:-tendermint.log} 4 | 5 | if ! [ -f "${BINARY}" ]; then 6 | echo "The binary $(basename "${BINARY}") cannot be found. Please add the binary to the shared folder. Please use the BINARY environment variable if the name of the binary is not 'tendermint' E.g.: -e BINARY=tendermint_my_test_version" 7 | exit 1 8 | fi 9 | BINARY_CHECK="$(file "$BINARY" | grep 'ELF 64-bit LSB executable, x86-64')" 10 | if [ -z "${BINARY_CHECK}" ]; then 11 | echo "Binary needs to be OS linux, ARCH amd64" 12 | exit 1 13 | fi 14 | 15 | python3 /app/config_loader.py & 16 | 17 | export TMHOME="/tendermint/node${ID}" 18 | 19 | if [ -d "`dirname ${TMHOME}/${LOG}`" ]; then 20 | "$BINARY" "$@" | tee "${TMHOME}/${LOG}" 21 | else 22 | "$BINARY" "$@" 23 | fi 24 | 25 | chmod 777 -R /tendermint 26 | chmod 777 -R /app 27 | chmod 777 -R /tm_state -------------------------------------------------------------------------------- /packages/valory/agents/register_reset_recovery/README.md: -------------------------------------------------------------------------------- 1 | # Register Reset ABCI Agent 2 | 3 | This agent uses the registration and reset skills to debug the Tendermint issue. 4 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset_recovery/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_reset_recovery/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_termination/README.md: -------------------------------------------------------------------------------- 1 | # Register Terminate ABCI Agent 2 | 3 | This agent uses the registration and termination skills to test the termination feature. -------------------------------------------------------------------------------- /packages/valory/agents/register_termination/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/register_termination/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for register_termination agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/registration_start_up/README.md: -------------------------------------------------------------------------------- 1 | # Registration start-up ABCI Agent 2 | 3 | This agent uses the `abci` connection, `http_client` connection, and `p2p_libp2p_client` connection, 4 | as part of the `registration_abci` skill to demonstrate how agents use `RegistrationStartUpBehaviour` 5 | during the initialization of an application. 6 | -------------------------------------------------------------------------------- /packages/valory/agents/registration_start_up/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module registration_startup agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/registration_start_up/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for registration_startup agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/solana_transfer_agent/README.md: -------------------------------------------------------------------------------- 1 | # Register Terminate ABCI Agent 2 | 3 | This agent uses the registration and termination skills to test the termination feature. -------------------------------------------------------------------------------- /packages/valory/agents/solana_transfer_agent/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022-2024 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module register_reset agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/solana_transfer_agent/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022-2024 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for register_termination agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/test_abci/README.md: -------------------------------------------------------------------------------- 1 | # Test ABCI Agent 2 | 3 | This agent is used to test the `abci` connection. -------------------------------------------------------------------------------- /packages/valory/agents/test_ipfs/README.md: -------------------------------------------------------------------------------- 1 | # Test ipfs Agent 2 | 3 | This agent is used to test the `ipfs` connection. -------------------------------------------------------------------------------- /packages/valory/agents/test_ipfs/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module test_ipfs agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/agents/test_ipfs/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022-2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for test_ipfs agent.""" 21 | -------------------------------------------------------------------------------- /packages/valory/connections/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the connection packages authored by Valory AG.""" 21 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Abci connection.""" # pragma: nocover 21 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/protos/tendermint/crypto/keys.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package tendermint.crypto; 3 | 4 | option go_package = "github.com/tendermint/tendermint/proto/tendermint/crypto"; 5 | 6 | import "gogoproto/gogo.proto"; 7 | 8 | // PublicKey defines the keys available for use with Tendermint Validators 9 | message PublicKey { 10 | option (gogoproto.compare) = true; 11 | option (gogoproto.equal) = true; 12 | 13 | oneof sum { 14 | bytes ed25519 = 1; 15 | bytes secp256k1 = 2; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/protos/tendermint/types/validator.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package tendermint.types; 3 | 4 | option go_package = "github.com/tendermint/tendermint/proto/tendermint/types"; 5 | 6 | import "gogoproto/gogo.proto"; 7 | import "tendermint/crypto/keys.proto"; 8 | 9 | message ValidatorSet { 10 | repeated Validator validators = 1; 11 | Validator proposer = 2; 12 | int64 total_voting_power = 3; 13 | } 14 | 15 | message Validator { 16 | bytes address = 1; 17 | tendermint.crypto.PublicKey pub_key = 2 [(gogoproto.nullable) = false]; 18 | int64 voting_power = 3; 19 | int64 proposer_priority = 4; 20 | } 21 | 22 | message SimpleValidator { 23 | tendermint.crypto.PublicKey pub_key = 1; 24 | int64 voting_power = 2; 25 | } 26 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/protos/tendermint/version/types.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package tendermint.version; 3 | 4 | option go_package = "github.com/tendermint/tendermint/proto/tendermint/version"; 5 | 6 | import "gogoproto/gogo.proto"; 7 | 8 | // App includes the protocol and software version for the application. 9 | // This information is included in ResponseInfo. The App.Protocol can be 10 | // updated in ResponseEndBlock. 11 | message App { 12 | uint64 protocol = 1; 13 | string software = 2; 14 | } 15 | 16 | // Consensus captures the consensus rules for processing a block in the blockchain, 17 | // including all blockchain data structures and the rules of the application's 18 | // state transition machine. 19 | message Consensus { 20 | option (gogoproto.equal) = true; 21 | 22 | uint64 block = 1; 23 | uint64 app = 2; 24 | } 25 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/readme.md: -------------------------------------------------------------------------------- 1 | # ABCI connection 2 | 3 | This package implements an AEA connection that wraps 4 | the HTTP requests that can be done to an ABCI server. 5 | 6 | ## Usage 7 | 8 | Configure the fields `host` and `port` to the ABCI server you want to interact with. 9 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/tests/test_fuzz/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | """This module contains fuzzy tests for the ABCI Connection""" 20 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/tests/test_fuzz/mock_node/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | """This module mocks a Tendermint Node""" 20 | -------------------------------------------------------------------------------- /packages/valory/connections/abci/version.txt: -------------------------------------------------------------------------------- 1 | TMCoreSemVer = TMVersionDefault 2 | // TMVersionDefault is the used as the fallback version of Tendermint Core 3 | TMVersionDefault = "0.34.19" 4 | // ABCISemVer is the semantic version of the ABCI library 5 | ABCISemVer = "0.17.0" 6 | ABCIVersion = ABCISemVer 7 | -------------------------------------------------------------------------------- /packages/valory/connections/ipfs/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """A connection responsible for uploading and downloading files from IPFS.""" 21 | -------------------------------------------------------------------------------- /packages/valory/connections/ipfs/readme.md: -------------------------------------------------------------------------------- 1 | # IPFS Connection 2 | A connection responsible for uploading and downloading files from IPFS. -------------------------------------------------------------------------------- /packages/valory/connections/ipfs/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for ipfs connection.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the contract packages authored by Valory AG.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/agent_registry/contract.yaml: -------------------------------------------------------------------------------- 1 | name: agent_registry 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: Agent registry contract 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeiaaoxkui6cjj52avj3xbriazrwdg6bcfqxmukkw7emwc2q4hbdfdi 10 | build/AgentRegistry.json: bafybeiclduduvyfzuuk762qfjig5bfvyw44ivhwj65bd4bezhjghdk4zri 11 | contract.py: bafybeigsb6qtcawq5hqa5vgjxbtex7dtxdr6jx2y4ffxcihxc675cwxml4 12 | tests/__init__.py: bafybeig6vb3j7xuemr25f5uapvhyuo4hlk3rbfiq7kfxg4f5gfz6oc6tte 13 | tests/test_contract.py: bafybeichmcfjtqyv3435grfl54ijeelgoe4owoqh3xeutcjodexbjl6f74 14 | fingerprint_ignore_patterns: [] 15 | contracts: [] 16 | class_name: AgentRegistryContract 17 | contract_interface_paths: 18 | ethereum: build/AgentRegistry.json 19 | dependencies: {} 20 | -------------------------------------------------------------------------------- /packages/valory/contracts/agent_registry/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `valory/agent_registry` contract""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/component_registry/contract.yaml: -------------------------------------------------------------------------------- 1 | name: component_registry 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: Component registry contract 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeihqlwkxffyqkqzzoqbm3t5caqxl75po6yk5cfjg5jp56dy47qqmv4 10 | build/ComponentRegistry.json: bafybeicssz7csipr7lhxvro6chtd45f6iqykserv35ppjtxetpx75ouno4 11 | contract.py: bafybeigkfapo376gudvv3zwbkomrv73jffc2j6fidfkaxrrgfmq62wwjci 12 | tests/__init__.py: bafybeihe42ydu66tbdogfyjh3rqgnwuhglnwll47aaagjj6b3fjngrxauq 13 | tests/test_contract.py: bafybeiegforxfp6iih7rp6cupzyx4v2cagqquncam6kaadpoe5tlfcmgia 14 | fingerprint_ignore_patterns: [] 15 | contracts: [] 16 | class_name: ComponentRegistryContract 17 | contract_interface_paths: 18 | ethereum: build/ComponentRegistry.json 19 | dependencies: {} 20 | -------------------------------------------------------------------------------- /packages/valory/contracts/component_registry/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `valory/component_registry` contract""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/erc20/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 valory 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the support resources for the scaffold contract.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/erc20/contract.yaml: -------------------------------------------------------------------------------- 1 | name: erc20 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: The scaffold contract scaffolds a contract to be implemented by the developer. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeieeus2bbbexmthy4pnsdtgen4flxzk3ao5ekjbocvmrkhhszffbgu 10 | build/ERC20.json: bafybeiccjj4jwmpianz6vsxtubzg7bkssorapbcti4fx3e5d7g32pqmtee 11 | contract.py: bafybeici3fo2eb4h6camnmcnkefkrmphm5jszwbh2fkm6zobj4q6k6mfhq 12 | fingerprint_ignore_patterns: [] 13 | class_name: ERC20TokenContract 14 | contract_interface_paths: 15 | ethereum: build/ERC20.json 16 | dependencies: {} 17 | contracts: [] 18 | -------------------------------------------------------------------------------- /packages/valory/contracts/gnosis_safe/README.md: -------------------------------------------------------------------------------- 1 | # Gnosis Safe contract 2 | 3 | ## Description 4 | 5 | ## Functions 6 | 7 | -------------------------------------------------------------------------------- /packages/valory/contracts/gnosis_safe/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests package for valory/gnosis_safe contract.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/gnosis_safe_proxy_factory/README.md: -------------------------------------------------------------------------------- 1 | # Gnosis Safe Proxy Factory contract 2 | 3 | ## Description 4 | 5 | ## Functions 6 | 7 | -------------------------------------------------------------------------------- /packages/valory/contracts/multicall2/contract.yaml: -------------------------------------------------------------------------------- 1 | name: multicall2 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: The MakerDAO multicall2 contract. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeiblecacbcjfghnmqw3ttmgm3kiyhpdhmwfi77jowsab5y7gy2cqn4 10 | build/multicall2.json: bafybeiccd7a7mwq4z62voom765tijsdc4qjnl6u23qg5upqepa5lo2262q 11 | contract.py: bafybeigaeyg5ovhzlxxkd2hezppfyusji6e6a7ckxineuwxvahbn64ptpy 12 | tests/__init__.py: bafybeidpkdejmolv6wufw2ik36fdtymdscfrjvmg6ekjk7u4ikifmsnega 13 | tests/test_contract.py: bafybeib35vqqxal4pemnjjbna3hq7opxgsi7f264jdgllrzybud6rktsrq 14 | fingerprint_ignore_patterns: [] 15 | class_name: Multicall2Contract 16 | contract_interface_paths: 17 | ethereum: build/multicall2.json 18 | contracts: [] 19 | dependencies: 20 | open-aea-ledger-ethereum: 21 | version: ==1.65.0 22 | web3: 23 | version: <7,>=6.0.0 24 | -------------------------------------------------------------------------------- /packages/valory/contracts/multisend/README.md: -------------------------------------------------------------------------------- 1 | # `Multisend` contract 2 | 3 | ## Description 4 | 5 | ## Functions 6 | 7 | -------------------------------------------------------------------------------- /packages/valory/contracts/multisend/contract.yaml: -------------------------------------------------------------------------------- 1 | name: multisend 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: MultiSend contract 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | README.md: bafybeidavn55z6uoz3hdjxs4ukvykl2tkvbntnl22uexfyk7unpnfqjflq 10 | __init__.py: bafybeigzxw44dlgdb4qxhm6zul426uyxnqtlhe3oajivdyo3ue7kb45pai 11 | build/MultiSend.json: bafybeicamzvsaaxtboijwfnv24ctrgv5v7gn5irnydnuf62y57o7fmx2jm 12 | contract.py: bafybeid5h5sro6nt7jmr52ntqdwo4ajhdyxy5estq625gzvo3dbkjuzxia 13 | tests/__init__.py: bafybeifd5zc6x3oxef7uy6mhjnt6oybna6ux7ycareqoqo52czkfxaeawm 14 | tests/test_contract.py: bafybeid72mml6mvtv6qqr7r6a2nfbgbwpkhyitx5mmdtzcejt5zo7wcmje 15 | fingerprint_ignore_patterns: [] 16 | contracts: [] 17 | class_name: MultiSendContract 18 | contract_interface_paths: 19 | ethereum: build/MultiSend.json 20 | dependencies: 21 | hexbytes: {} 22 | web3: 23 | version: <7,>=6.0.0 24 | -------------------------------------------------------------------------------- /packages/valory/contracts/multisend/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests package for valory/multisend contract.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/registries_manager/contract.yaml: -------------------------------------------------------------------------------- 1 | name: registries_manager 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: Registries Manager contract 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeihqlwkxffyqkqzzoqbm3t5caqxl75po6yk5cfjg5jp56dy47qqmv4 10 | build/RegistriesManager.json: bafybeigu6whhxx6zd7kqhmpjpak4ufj4az2jk4k4rwi4tshr25qzcb3e6q 11 | contract.py: bafybeiftz62v7nvxx37gdkbr4f6n33c3u33dkym3frkieaxmeypgmjcg4q 12 | tests/__init__.py: bafybeib4z5zjwvlk5x5shenb2hzkgh7qb6w236g6ygcbvezvo5dfxao4va 13 | tests/test_contract.py: bafybeidio2tvmghemwy3gmwcsjrjrln6rgpe6dtzdxbz6miblnk7yfogmy 14 | fingerprint_ignore_patterns: [] 15 | contracts: [] 16 | class_name: RegistriesManagerContract 17 | contract_interface_paths: 18 | ethereum: build/RegistriesManager.json 19 | dependencies: {} 20 | -------------------------------------------------------------------------------- /packages/valory/contracts/registries_manager/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `valory/registries_manager` contract""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/service_manager/contract.yaml: -------------------------------------------------------------------------------- 1 | name: service_manager 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: Service Manager contract 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeiao4aiyvkvg75zfi2nf34hidx2uzcbqibc2bukyutisg5zhxskhlq 10 | build/ServiceManager.json: bafybeiefm53534jhy5tfjgcmx4rbjrcn6tzbghw4ptggh5or6vuohdgau4 11 | build/ServiceManagerToken.json: bafybeidjyr2wqsiorb3u5pnfiqkzff5rgewbr5kgawev2zlah4i4f6fcom 12 | contract.py: bafybeig4oqvm7w2oz7rdapsirjgzagwji5p5johd6klr3t6pcobmmduaza 13 | tests/__init__.py: bafybeifehip3omosjvpq3uqvxomtgrmqjoqdttyzhvu2qysybjf6btwkpi 14 | tests/test_contract.py: bafybeicqdkxo3aygm6ljjpvk6fdstelbuotxayvxwgeirqiiooclab5m34 15 | fingerprint_ignore_patterns: [] 16 | contracts: [] 17 | class_name: ServiceManagerContract 18 | contract_interface_paths: 19 | ethereum: build/ServiceManagerToken.json 20 | dependencies: {} 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/service_manager/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `valory/service_manager` contract""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/service_registry/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests package for valory/service_registry contract.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/service_registry_token_utility/contract.yaml: -------------------------------------------------------------------------------- 1 | name: service_registry_token_utility 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: The scaffold contract scaffolds a contract to be implemented by the developer. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeieeus2bbbexmthy4pnsdtgen4flxzk3ao5ekjbocvmrkhhszffbgu 10 | build/ServiceRegistryTokenUtility.json: bafybeifdugnfcq45yqu3b555ivsaxmuu6u7vwjbxavxgo3drsmo6572gju 11 | contract.py: bafybeib4tg5lfiamw7ejgj472eobdkkouaddqkkcgbuj4f2edydnhbbvgi 12 | fingerprint_ignore_patterns: [] 13 | class_name: ServiceRegistryTokenUtilityContract 14 | contract_interface_paths: 15 | ethereum: build/ServiceRegistryTokenUtility.json 16 | dependencies: {} 17 | contracts: [] 18 | -------------------------------------------------------------------------------- /packages/valory/contracts/squads_multisig/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 valory 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the support resources for the scaffold contract.""" 21 | -------------------------------------------------------------------------------- /packages/valory/contracts/squads_multisig/contract.yaml: -------------------------------------------------------------------------------- 1 | name: squads_multisig 2 | author: valory 3 | version: 0.1.0 4 | type: contract 5 | description: The scaffold contract scaffolds a contract to be implemented by the developer. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | README.md: bafybeie2g3yfcwtch366pmuowhe6d4glkc7vgqspebifjvhhkxerd7imru 10 | __init__.py: bafybeieeus2bbbexmthy4pnsdtgen4flxzk3ao5ekjbocvmrkhhszffbgu 11 | build/SquadsMultisig.json: bafybeiey7jbufdyfroy3vahjrfiifsvwf7zaq5yjjb56zokhbg5t76hjcm 12 | contract.py: bafybeifbpcbyftdel2khyt5wqptllqkuoprqmb4tjqr5roaxhv5dk2ribm 13 | fingerprint_ignore_patterns: [] 14 | class_name: SquadsMultisig 15 | contract_interface_paths: 16 | solana: build/SquadsMultisig.json 17 | dependencies: 18 | open-aea-ledger-solana: 19 | version: ==1.65.0 20 | solders: 21 | version: '>=0.14.0' 22 | contracts: [] 23 | -------------------------------------------------------------------------------- /packages/valory/protocols/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the protocol packages authored by Valory AG.""" 21 | -------------------------------------------------------------------------------- /packages/valory/protocols/abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """ABCI protocol tests.""" 21 | -------------------------------------------------------------------------------- /packages/valory/protocols/abci/tests/conftest.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Conftest module.""" 21 | -------------------------------------------------------------------------------- /packages/valory/protocols/tendermint/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for tendermint protocol.""" 21 | -------------------------------------------------------------------------------- /packages/valory/services/counter/README.md: -------------------------------------------------------------------------------- 1 | ## Counter 2 | 3 | A purely reactive service that implements the ABCI counter that just counts how many times we've sent a transaction, asked for a hash, or committed the state. -------------------------------------------------------------------------------- /packages/valory/services/counter/service.yaml: -------------------------------------------------------------------------------- 1 | name: counter 2 | author: valory 3 | version: 0.1.0 4 | description: A set of agents incrementing a counter 5 | aea_version: '>=1.0.0, <2.0.0' 6 | license: Apache-2.0 7 | fingerprint: 8 | README.md: bafybeidoybzzjch4djhhafqm4e4jcrpaqmlthntcnonlsjtowwpykbc5xi 9 | fingerprint_ignore_patterns: [] 10 | number_of_agents: 1 11 | agent: valory/counter:0.1.0:bafybeibb3r5cm2dybjkkyd5zbnuiso3rg6sssbyzrvn2xqwfedzzhisxkm 12 | deployment: {} 13 | dependencies: {} 14 | --- 15 | public_id: valory/ledger:0.19.0 16 | type: connection 17 | config: 18 | ledger_apis: 19 | ethereum: 20 | address: ${SERVICE_COUNTER_RPC:str:http://host.docker.internal:8545} 21 | chain_id: 31337 22 | poa_chain: false 23 | default_gas_price_strategy: eip1559 24 | -------------------------------------------------------------------------------- /packages/valory/services/register_reset/README.md: -------------------------------------------------------------------------------- 1 | ## Register reset 2 | 3 | A simple service where agents register and immediately reset after that. -------------------------------------------------------------------------------- /packages/valory/services/register_reset/service.yaml: -------------------------------------------------------------------------------- 1 | name: register_reset 2 | author: valory 3 | version: 0.1.0 4 | agent: valory/register_reset:0.1.0:bafybeieytkcidlckbze2ol5e5k2ybynmmexaq3tn42ft4zgbmxufp76p4a 5 | number_of_agents: 4 6 | description: Test and debug tendermint reset mechanism. 7 | aea_version: '>=1.0.0, <2.0.0' 8 | license: Apache-2.0 9 | fingerprint: 10 | README.md: bafybeiae4sog7e3hyjdujzp5qr2g3auobmqswqnaczh2zhlphuojnd2g6u 11 | fingerprint_ignore_patterns: [] 12 | deployment: {} 13 | dependencies: {} 14 | --- 15 | public_id: valory/ledger:0.19.0 16 | type: connection 17 | config: 18 | ledger_apis: 19 | ethereum: 20 | address: ${SERVICE_REGISTER_RESET_RPC:str:http://host.docker.internal:8545} 21 | chain_id: 31337 22 | poa_chain: false 23 | default_gas_price_strategy: eip1559 24 | -------------------------------------------------------------------------------- /packages/valory/skills/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This module contains the skills packages authored by Valory AG.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/abstract_abci/README.md: -------------------------------------------------------------------------------- 1 | # Abstract abci 2 | 3 | ## Description 4 | 5 | This module contains an abstract ABCI skill template for an AEA. 6 | 7 | ## Behaviours 8 | 9 | No behaviours (the skill is purely reactive). 10 | 11 | ## Handlers 12 | 13 | * `ABCIHandler` 14 | 15 | This abstract skill provides a template of an ABCI application managed by an 16 | AEA. This abstract Handler replies to ABCI requests with default responses. 17 | In another skill, extend the class and override the request handlers 18 | to implement a custom behaviour. 19 | 20 | 21 | -------------------------------------------------------------------------------- /packages/valory/skills/abstract_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/abstract_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/abstract_round_abci/tests/data/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for abstract_round_abci/test_tools""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/abstract_round_abci/tests/test_io/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Package for `io` testing.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/abstract_round_abci/tests/test_tools/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Package for `test_tools` testing.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/counter/README.md: -------------------------------------------------------------------------------- 1 | # Counter 2 | 3 | ## Description 4 | 5 | This module contains an example of the counter ABCI skill for an AEA. 6 | It implements the [ABCI `counter` application](https://docs.tendermint.com/v0.34/app-dev/getting-started.html), 7 | a toy example for [Tendermint](https://docs.tendermint.com/v0.34/tendermint-core/using-tendermint.html). 8 | 9 | ## Behaviours 10 | 11 | No behaviours (the skill is purely reactive). 12 | 13 | ## Handlers 14 | 15 | * `ABCICounterHandler` 16 | 17 | Handles ABCI messages from a Tendermint node and implements the ABCI 18 | Counter app. 19 | 20 | 21 | -------------------------------------------------------------------------------- /packages/valory/skills/counter/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/counter skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/counter_client/README.md: -------------------------------------------------------------------------------- 1 | # Counter client 2 | 3 | ## Description 4 | 5 | This module contains a client for the counter ABCI skill for an AEA. 6 | 7 | ## Behaviours 8 | 9 | * `BaseBehaviour` 10 | 11 | Abstract base behaviour for this skill. 12 | 13 | * `IncrementerBehaviour` 14 | 15 | Send a transaction 16 | 17 | * `MonitorBehaviour` 18 | 19 | Send an ABCI query periodically. 20 | 21 | 22 | ## Handlers 23 | 24 | * `HttpHandler` 25 | 26 | The HTTP response handler. 27 | 28 | 29 | -------------------------------------------------------------------------------- /packages/valory/skills/counter_client/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/counter skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/offend_abci/README.md: -------------------------------------------------------------------------------- 1 | # Offend ABCI 2 | 3 | ## Description 4 | 5 | This module contains a skill that creates offences. 6 | 7 | Its purpose is to facilitate testing of the slashing implementation. 8 | -------------------------------------------------------------------------------- /packages/valory/skills/offend_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - NO_MAJORITY 4 | - ROUND_TIMEOUT 5 | default_start_state: OffendRound 6 | final_states: 7 | - FinishedOffendRound 8 | label: OffendAbciApp 9 | start_states: 10 | - OffendRound 11 | states: 12 | - FinishedOffendRound 13 | - OffendRound 14 | transition_func: 15 | (OffendRound, DONE): FinishedOffendRound 16 | (OffendRound, NO_MAJORITY): OffendRound 17 | (OffendRound, ROUND_TIMEOUT): OffendRound 18 | -------------------------------------------------------------------------------- /packages/valory/skills/offend_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/offend_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/offend_slash_abci/README.md: -------------------------------------------------------------------------------- 1 | # Offend Slash abci 2 | 3 | ## Description 4 | 5 | This module contains a skill used to showcase the slashing abci. 6 | -------------------------------------------------------------------------------- /packages/valory/skills/offend_slash_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/offend_slash_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/register_reset_abci/README.md: -------------------------------------------------------------------------------- 1 | # Register Reset abci 2 | 3 | ## Description 4 | 5 | This module contains a simple register reset skill for an AEA. 6 | -------------------------------------------------------------------------------- /packages/valory/skills/register_reset_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - NO_MAJORITY 4 | - RESET_AND_PAUSE_TIMEOUT 5 | default_start_state: RegistrationStartupRound 6 | final_states: [] 7 | label: RegisterResetAbciApp 8 | start_states: 9 | - RegistrationRound 10 | - RegistrationStartupRound 11 | states: 12 | - RegistrationRound 13 | - RegistrationStartupRound 14 | - ResetAndPauseRound 15 | transition_func: 16 | (RegistrationRound, DONE): ResetAndPauseRound 17 | (RegistrationRound, NO_MAJORITY): RegistrationRound 18 | (RegistrationStartupRound, DONE): ResetAndPauseRound 19 | (ResetAndPauseRound, DONE): RegistrationRound 20 | (ResetAndPauseRound, NO_MAJORITY): RegistrationRound 21 | (ResetAndPauseRound, RESET_AND_PAUSE_TIMEOUT): RegistrationRound 22 | -------------------------------------------------------------------------------- /packages/valory/skills/register_reset_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/register_reset_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/register_reset_recovery_abci/README.md: -------------------------------------------------------------------------------- 1 | # Register Reset Recovery abci 2 | 3 | ## Description 4 | 5 | This module contains a simple skill to be used in an e2e test related to hard reset recovery. 6 | -------------------------------------------------------------------------------- /packages/valory/skills/register_reset_recovery_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/register_reset_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/register_termination_abci/README.md: -------------------------------------------------------------------------------- 1 | # Register Termination abci 2 | 3 | ## Description 4 | 5 | This module contains an agent used to showcase the termination abci. 6 | -------------------------------------------------------------------------------- /packages/valory/skills/register_termination_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/register_termination_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/registration_abci/README.md: -------------------------------------------------------------------------------- 1 | # Registration abci 2 | 3 | ## Description 4 | 5 | This module contains the ABCI registration skill for an AEA. 6 | 7 | ## Behaviours 8 | 9 | * `RegistrationBaseBehaviour` 10 | 11 | Register to the next periods. 12 | 13 | * `RegistrationBehaviour` 14 | 15 | Register to the next periods. 16 | 17 | * `RegistrationStartupBehaviour` 18 | 19 | Register to the next periods. 20 | 21 | 22 | ## Handlers 23 | 24 | No Handlers (the skill is purely behavioural). 25 | 26 | -------------------------------------------------------------------------------- /packages/valory/skills/registration_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - NO_MAJORITY 4 | default_start_state: RegistrationStartupRound 5 | final_states: 6 | - FinishedRegistrationRound 7 | label: AgentRegistrationAbciApp 8 | start_states: 9 | - RegistrationRound 10 | - RegistrationStartupRound 11 | states: 12 | - FinishedRegistrationRound 13 | - RegistrationRound 14 | - RegistrationStartupRound 15 | transition_func: 16 | (RegistrationRound, DONE): FinishedRegistrationRound 17 | (RegistrationRound, NO_MAJORITY): RegistrationRound 18 | (RegistrationStartupRound, DONE): FinishedRegistrationRound 19 | -------------------------------------------------------------------------------- /packages/valory/skills/registration_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/registration_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/reset_pause_abci/README.md: -------------------------------------------------------------------------------- 1 | # Reset and pause abci 2 | 3 | ## Description 4 | 5 | This module contains the ABCI reset and pause skill for an AEA. It implements an ABCI 6 | application. 7 | 8 | ## Behaviours 9 | 10 | * `ResetAndPauseBehaviour` 11 | 12 | Reset state. 13 | 14 | * `ResetPauseABCIConsensusBehaviour` 15 | 16 | This behaviour manages the consensus stages for the reset and pause abci app. 17 | 18 | ## Handlers 19 | 20 | * `ResetPauseABCIHandler` 21 | * `HttpHandler` 22 | * `SigningHandler` 23 | 24 | -------------------------------------------------------------------------------- /packages/valory/skills/reset_pause_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - NO_MAJORITY 4 | - RESET_AND_PAUSE_TIMEOUT 5 | default_start_state: ResetAndPauseRound 6 | final_states: 7 | - FinishedResetAndPauseErrorRound 8 | - FinishedResetAndPauseRound 9 | label: ResetPauseAbciApp 10 | start_states: 11 | - ResetAndPauseRound 12 | states: 13 | - FinishedResetAndPauseErrorRound 14 | - FinishedResetAndPauseRound 15 | - ResetAndPauseRound 16 | transition_func: 17 | (ResetAndPauseRound, DONE): FinishedResetAndPauseRound 18 | (ResetAndPauseRound, NO_MAJORITY): FinishedResetAndPauseErrorRound 19 | (ResetAndPauseRound, RESET_AND_PAUSE_TIMEOUT): FinishedResetAndPauseErrorRound 20 | -------------------------------------------------------------------------------- /packages/valory/skills/reset_pause_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/reset_pause_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/slashing_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for the slashing background app.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/termination_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/termination_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/test_abci/README.md: -------------------------------------------------------------------------------- 1 | # Simple ABCI skill 2 | 3 | ## Description 4 | 5 | This skill implements an ABCI application for a simple demonstration. 6 | -------------------------------------------------------------------------------- /packages/valory/skills/test_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/test_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/test_ipfs_abci/README.md: -------------------------------------------------------------------------------- 1 | # IPFS abci app 2 | A dummy app to test the ipfs connection e2e. 3 | -------------------------------------------------------------------------------- /packages/valory/skills/test_ipfs_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - ROUND_TIMEOUT 4 | default_start_state: IpfsRound 5 | final_states: [] 6 | label: IpfsTestAbciApp 7 | start_states: 8 | - IpfsRound 9 | states: 10 | - IpfsRound 11 | transition_func: 12 | (IpfsRound, DONE): IpfsRound 13 | (IpfsRound, ROUND_TIMEOUT): IpfsRound 14 | -------------------------------------------------------------------------------- /packages/valory/skills/test_ipfs_abci/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for valory/test_ipfs_abci skill.""" 21 | -------------------------------------------------------------------------------- /packages/valory/skills/test_solana_tx_abci/README.md: -------------------------------------------------------------------------------- 1 | # SOLANA abci app 2 | A dummy app to test the `solana` connection e2e. 3 | -------------------------------------------------------------------------------- /packages/valory/skills/test_solana_tx_abci/fsm_specification.yaml: -------------------------------------------------------------------------------- 1 | alphabet_in: 2 | - DONE 3 | - NO_MAJORITY 4 | - ROUND_TIMEOUT 5 | default_start_state: SolanaRound 6 | final_states: 7 | - FinishedWithTransactionRound 8 | label: SolanaTestAbciApp 9 | start_states: 10 | - SolanaRound 11 | states: 12 | - FinishedWithTransactionRound 13 | - SolanaRound 14 | transition_func: 15 | (SolanaRound, DONE): FinishedWithTransactionRound 16 | (SolanaRound, NO_MAJORITY): SolanaRound 17 | (SolanaRound, ROUND_TIMEOUT): SolanaRound 18 | -------------------------------------------------------------------------------- /packages/valory/skills/transaction_settlement_abci/tests/test_tools/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022-2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Package for `test_tools` testing.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/README.md: -------------------------------------------------------------------------------- 1 | # AEA Test Autonomy 2 | 3 | 4 | Plugin containing test tools for open-autonomy packages. 5 | 6 | ## Installation and usage 7 | 8 | Simply include `open-aea-test-autonomy` as a dependency of your packages. -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """The aea-test-autonomy plugin.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/base_test_classes/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Base test classes.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_1.txt: -------------------------------------------------------------------------------- 1 | 0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_2.txt: -------------------------------------------------------------------------------- 1 | 0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_3.txt: -------------------------------------------------------------------------------- 1 | 0x7c852118294e51e653712a81e05800f419141751be58f605c371e15141b007a6 -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_4.txt: -------------------------------------------------------------------------------- 1 | 0x47e179ec197488593b187f80a00eb0da91f1b9d0b13f8733639f19c30a34926a -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_5.txt: -------------------------------------------------------------------------------- 1 | 0x8b3a350cf5c34c9194ca85829a2df0ec3153be0318b5e2d3348e872092edffba -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/data/ethereum_key_deployer.txt: -------------------------------------------------------------------------------- 1 | 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/docker/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Docker images for testing purposes.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/helpers/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Package with utilities for the Open Autonomy test tools.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/aea_test_autonomy/py.typed: -------------------------------------------------------------------------------- 1 | # Marker file for PEP 561. The autonomy package uses inline types. 2 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = ["setuptools", "wheel"] 3 | build_backend = "setuptools.build_meta" 4 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for aea-test-autonomy plugin.""" 21 | -------------------------------------------------------------------------------- /plugins/aea-test-autonomy/tests/test_base_test_classes/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for aea-test-autonomy plugin base_test_classes.""" 21 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [tool.poetry] 2 | name = "open-autonomy" 3 | version = "0.1.0" 4 | description = "Open Autonomy Framework" 5 | authors = ["developer-valory "] 6 | license = "Apache-2.0 license" 7 | 8 | [tool.poetry.dependencies] 9 | python = "^3.10" 10 | tomte = {extras = ["tox","docs"], version = "==0.2.15"} 11 | mkdocs-monorepo-plugin = "^1.0.5" 12 | 13 | [tool.poetry.dev-dependencies] 14 | 15 | [build-system] 16 | requires = ["setuptools", "wheel","poetry-core>=1.0.0"] 17 | build_backend = "setuptools.build_meta" 18 | -------------------------------------------------------------------------------- /scripts/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This directory contains scripts for workflow automation and project maintenance.""" 21 | -------------------------------------------------------------------------------- /scripts/pre-add: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | function run_check(){ 4 | tox -e $1 5 | if [ "$?" = "1" ] 6 | then 7 | echo "$1 check failed." 8 | exit 1 9 | fi 10 | } 11 | 12 | run_check black 13 | run_check isort -------------------------------------------------------------------------------- /scripts/pre-push: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | function run_check(){ 4 | tox -e $1 5 | if [ "$?" = "1" ] 6 | then 7 | echo "$1 check failed." 8 | exit 1 9 | fi 10 | } 11 | 12 | make clean 13 | 14 | run_check black-check 15 | run_check isort-check 16 | run_check flake8 17 | run_check mypy 18 | run_check pylint 19 | run_check darglint 20 | run_check vulture 21 | run_check bandit 22 | run_check safety 23 | run_check check-copyright 24 | run_check check-api-docs 25 | run_check check-abciapp-specs 26 | run_check check-packages 27 | run_check check-hash -------------------------------------------------------------------------------- /setup.cfg: -------------------------------------------------------------------------------- 1 | # keep for generate-all-protocols 2 | [isort] 3 | # for black compatibility 4 | multi_line_output=3 5 | include_trailing_comma=True 6 | force_grid_wrap=0 7 | use_parentheses=True 8 | ensure_newline_before_comments = True 9 | line_length=88 10 | # custom configurations 11 | order_by_type=False 12 | case_sensitive=True 13 | lines_after_imports=2 14 | skip = 15 | skip_glob = 16 | known_first_party=autonomy 17 | known_packages=packages 18 | known_local_folder=tests 19 | sections=FUTURE,STDLIB,THIRDPARTY,FIRSTPARTY,PACKAGES,LOCALFOLDER -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests package for the 'autonomy' library.""" 21 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Test packages""" 21 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/agents/dummy_agent/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Module dummy_agent agent.""" 21 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/agents/dummy_agent/readme.md: -------------------------------------------------------------------------------- 1 | # Dummy agent -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/connections/dummy_connection/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Scaffold of a connection.""" 21 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/connections/dummy_connection/connection.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_connection 2 | author: dummy_author 3 | version: 0.1.0 4 | type: connection 5 | description: The scaffold connection provides a scaffold for a connection to be implemented 6 | by the developer. 7 | license: Apache-2.0 8 | aea_version: '>=1.0.0, <2.0.0' 9 | fingerprint: 10 | __init__.py: bafybeia3p6wdr7uffr7mke6isfazkez6g52iiwxhqrgcas252m322sbbzm 11 | connection.py: bafybeiggqa6a5yslzwfdb67wux6wg7vjs7pqidq4nxxetz66ecuql5gyei 12 | readme.md: bafybeihg5yfzgqvg5ngy7r2o5tfeqnelx2ffxw4po5hmheqjfhumpmxpoq 13 | fingerprint_ignore_patterns: [] 14 | connections: [] 15 | protocols: 16 | - dummy_author/dummy_protocol:0.1.0:bafybeifuoztgfa2772jfvx5kyosgz7vrjfu6w6lo2mj3prziomdd3tp5xi 17 | class_name: MyScaffoldAsyncConnection 18 | config: 19 | foo: bar 20 | excluded_protocols: [] 21 | restricted_to_protocols: [] 22 | dependencies: {} 23 | is_abstract: false 24 | cert_requests: [] 25 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/connections/dummy_connection/readme.md: -------------------------------------------------------------------------------- 1 | # Scaffold connection 2 | The scaffold connection acts as a boilerplate for a newly created connection. 3 | 4 | ## Usage 5 | Create a scaffold connection with the `aea scaffold connection {NAME}` command and implement your own connection. 6 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/contracts/dummy_contract/contract.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_contract 2 | author: dummy_author 3 | version: 0.1.0 4 | type: contract 5 | description: The scaffold contract scaffolds a contract to be implemented by the developer. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | fingerprint: 9 | __init__.py: bafybeicqln5tyudb5bzg27wale3xjvuliat6ipn6hntg5pqtnllex4pyre 10 | contract.py: bafybeihwzoluzg62l3i64ccxaxs2dep766crx3lviuc3typfpmbrjgfg3a 11 | fingerprint_ignore_patterns: [] 12 | class_name: ERC20TokenContract 13 | contract_interface_paths: {} 14 | dependencies: {} 15 | contracts: [] 16 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/protocols/dummy_protocol/protocol.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_protocol 2 | author: dummy_author 3 | version: 0.1.0 4 | type: protocol 5 | description: The scaffold protocol scaffolds a protocol to be implemented by the developer. 6 | license: Apache-2.0 7 | aea_version: '>=1.0.0, <2.0.0' 8 | protocol_specification_id: open_aea/scaffold:0.1.0 9 | fingerprint: 10 | __init__.py: bafybeifx6kkibxqs2usntjsageb5oj6m7ybia4vfq2ruzuolnbitkky3la 11 | message.py: bafybeicnr2m7syjojyitd6yj754ia2r7wjqfnxrojnmdjy5aprkdbakh34 12 | serialization.py: bafybeiehvj4sskk4ennn3rpedmgakv5m3kxtkakvewgtwtpao3kemvugsq 13 | fingerprint_ignore_patterns: [] 14 | dependencies: {} 15 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/services/dummy_service/README.md: -------------------------------------------------------------------------------- 1 | ## Dummy service -------------------------------------------------------------------------------- /tests/data/dummy_packages/dummy_author/services/dummy_service/service.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_service 2 | author: dummy_author 3 | version: 0.1.0 4 | description: Dummy service 5 | aea_version: '>=1.0.0, <2.0.0' 6 | license: Apache-2.0 7 | fingerprint: 8 | README.md: bafybeidtsspnbrkqb55jjnpl3ai5qhcoumm6h5dqf76e6gxldklbxmdusi 9 | fingerprint_ignore_patterns: [] 10 | number_of_agents: 1 11 | agent: dummy_author/dummy_agent:0.1.0:bafybeigqqikxfon7lddqux2qocdf2vlpq2zrjhmtpve5j3z5lijeapodsu 12 | deployment: {} 13 | dependencies: {} 14 | -------------------------------------------------------------------------------- /tests/data/dummy_packages/packages.json: -------------------------------------------------------------------------------- 1 | { 2 | "dev": { 3 | "protocol/dummy_author/dummy_protocol/0.1.0": "bafybeifuoztgfa2772jfvx5kyosgz7vrjfu6w6lo2mj3prziomdd3tp5xi", 4 | "contract/dummy_author/dummy_contract/0.1.0": "bafybeifdf4blo6lse4ejlwtqpwzbufg3kh6ttdgde2ilag7ojwauyz6cbm", 5 | "connection/dummy_author/dummy_connection/0.1.0": "bafybeic25zmtz5fpbtnr7mycmxqjqhym2uz3jsvfhccbu6lsn3btndx5hq", 6 | "skill/dummy_author/dummy_skill/0.1.0": "bafybeiaqnmp4fo336za5q245a2sbd3tqqlglnno2ps6kdzrz6764t4mf5e", 7 | "agent/dummy_author/dummy_agent/0.1.0": "bafybeigqqikxfon7lddqux2qocdf2vlpq2zrjhmtpve5j3z5lijeapodsu", 8 | "service/dummy_author/dummy_service/0.1.0": "bafybeibw4gtticok3fbis2fndtz2flxwycylk4wd4n7c5tshjfp6vlrfxi" 9 | }, 10 | "third_party": {} 11 | } -------------------------------------------------------------------------------- /tests/data/dummy_service_config_files/service_0.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_service 2 | author: valory 3 | version: 0.1.0 4 | description: A dummy service config file. 5 | aea_version: '>=1.0.0, <2.0.0' 6 | license: Apache-2.0 7 | fingerprint: 8 | README.md: bafybeiapubcoersqnsnh3acia5hd7otzt7kjxekr6gkbrlumv6tkajl6jm 9 | fingerprint_ignore_patterns: [] 10 | agent: valory/hello_world:0.1.0:bafybeiaotnukv7oq2sknot73a4zssrrnjezh6nd2fwptrznxtnovy2rusm 11 | number_of_agents: 1 12 | deployment: {} 13 | dependencies: {} 14 | -------------------------------------------------------------------------------- /tests/data/dummy_service_config_files/service_3.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_service 2 | author: valory 3 | version: 0.1.0 4 | description: A dummy service config file with nested list. 5 | aea_version: '>=1.0.0, <2.0.0' 6 | license: Apache-2.0 7 | fingerprint: 8 | README.md: bafybeiapubcoersqnsnh3acia5hd7otzt7kjxekr6gkbrlumv6tkajl6jm 9 | fingerprint_ignore_patterns: [] 10 | agent: valory/hello_world:0.1.0:bafybeiaotnukv7oq2sknot73a4zssrrnjezh6nd2fwptrznxtnovy2rusm 11 | number_of_agents: 4 12 | deployment: {} 13 | dependencies: {} 14 | --- 15 | public_id: valory/dummy_connection:0.1.0 16 | type: connection 17 | config: 18 | nodes: 19 | - uri: some_uri 20 | public_key: some_key 21 | - uri: some_uri 22 | public_key: some_key -------------------------------------------------------------------------------- /tests/data/dummy_service_config_files/service_4.yaml: -------------------------------------------------------------------------------- 1 | name: dummy_service 2 | author: valory 3 | version: 0.1.0 4 | description: A dummy service config file overrides containing extra parameters. 5 | aea_version: '>=1.0.0, <2.0.0' 6 | license: Apache-2.0 7 | fingerprint: 8 | README.md: bafybeiapubcoersqnsnh3acia5hd7otzt7kjxekr6gkbrlumv6tkajl6jm 9 | fingerprint_ignore_patterns: [] 10 | agent: valory/hello_world:0.1.0:bafybeiaotnukv7oq2sknot73a4zssrrnjezh6nd2fwptrznxtnovy2rusm 11 | number_of_agents: 4 12 | deployment: {} 13 | dependencies: {} 14 | --- 15 | extra: 16 | benchmark_persistence_params: 17 | args: &id001 18 | log_dir: /benchmarks 19 | public_id: valory/dummy_skill:0.1.0 20 | type: skill 21 | models: 22 | params: 23 | args: 24 | hello_world_message: ${SERVICE_HELLO_WORLD_HELLO_WORLD_STRING:str:HELLO_WORLD!} 25 | benchmark_tool: 26 | args: *id001 -------------------------------------------------------------------------------- /tests/data/nft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/valory-xyz/open-autonomy/9e7efc554b13f9de9b0b00d8fc8dd364a7b9d095/tests/data/nft.png -------------------------------------------------------------------------------- /tests/data/specs/fsm_specification_empty.json: -------------------------------------------------------------------------------- 1 | { 2 | } 3 | -------------------------------------------------------------------------------- /tests/test_autonomy/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for open autonomy.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_chain/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Test chain module.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """The tests module contains the unit tests for CLI module.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_analyse/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """The tests module contains the unit tests for analyse command.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_deploy/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2021-2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """The tests module contains the unit tests for deploy command.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_deploy/test_build/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Test build command.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_helpers/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """The tests module contains the unit tests for CLI helper functions.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_mint/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Test `autonomy mint` command""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_service/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for `autonomy service` command group""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_cli/test_utils/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """This tests module contains unit tests for CLI utils.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_deploy/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests for deploy module.""" 21 | -------------------------------------------------------------------------------- /tests/test_autonomy/test_images/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2023 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Test autonomy images""" 21 | -------------------------------------------------------------------------------- /tests/test_deployments/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # ------------------------------------------------------------------------------ 3 | # 4 | # Copyright 2022 Valory AG 5 | # 6 | # Licensed under the Apache License, Version 2.0 (the "License"); 7 | # you may not use this file except in compliance with the License. 8 | # You may obtain a copy of the License at 9 | # 10 | # http://www.apache.org/licenses/LICENSE-2.0 11 | # 12 | # Unless required by applicable law or agreed to in writing, software 13 | # distributed under the License is distributed on an "AS IS" BASIS, 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 | # See the License for the specific language governing permissions and 16 | # limitations under the License. 17 | # 18 | # ------------------------------------------------------------------------------ 19 | 20 | """Tests package for Valory deployments.""" 21 | --------------------------------------------------------------------------------