Skip to main content

Autonomy Dev

Code Quality Documentation Project Status: Active – The project has reached a stable, usable state and is being actively developed.

Tooling to speed up open-autonomy development.

For detailed instructions please see the Docs.

TLDR

# Install adev
pip install -U "autonomy-dev[all]"
# Make a new agent
adev create author/cool_agent
# Run the new agent
adev run dev author/cool_agent

Requirements

Features

  • Scaffolding of new repositories, agent, protocols, contracts, connections, skills.
  • Linting and formatting tools
  • Dependency management tools
  • Test suite scaffolding

Creating New Github Projects

We can make an autonomy repo

adev repo scaffold fun_new_hack
cd fun_new_hack

asciicast

Creating a new Agent

Once we have a new project, we can build new agents from templates There are a number of templates available and the --help flag will display the available options.

adev create author/cool_agent

asciicast

By default, we provide a simple server with ping pong via websockets available at localhost:5555

# run the agent and verify the endpoint
adev run author/cool_agent

Creating an Agent Service

Running agents in production requires a service to manage the agent lifecycle. We can convert an agent to a service with the following command.

adev convert agent-to-service author/agent_name author/service_name

asciicast

Scaffolding of Components

Contracts

We provide tools to scaffold smart contract components from existing deployed contracts. The scaffolding process includes:

  • Complete open-aea contract component
  • Contract class with auto-generated methods
  • Events, Read and Write methods extracted from the contract ABI.
  • Type hints and documentation
# Scaffold USDC contract from Base
adev scaffold contract author/usdc \
    --address 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913 \
    --network base

asciicast

Protocols

Protocols components can be fully scaffolded from a yaml file. The scaffolding process includes:

  • Protocol class with auto-generated methods
  • Linted and formatted code
  • Type hints and documentation
  • Test Suite
  • Pydantic models for custom types.
adev scaffold protocol auto_dev/data/protocols/examples/balances.yaml

asciicast

Dependency Management

For projects created with adev, updates to both:

  • autonomy packages
  • upstream python packages

are automated using as so;

adev deps verify

Release

checkout main
git pull
adev release

Test Coverage

<!-- Pytest Coverage Comment:Begin -->
Name                             Stmts   Miss  Cover   Missing
--------------------------------------------------------------
auto_dev/__init__.py                 0      0   100%
auto_dev/base.py                    60     19    68%   66-88
auto_dev/check_dependencies.py     236    236     0%   28-452
auto_dev/cli.py                      4      1    75%   9
auto_dev/cli_executor.py            68     36    47%   33-61, 79, 83, 87-89, 92-94, 99-105
auto_dev/constants.py               25      0   100%
auto_dev/enums.py                   36      0   100%
auto_dev/exceptions.py               5      0   100%
auto_dev/fmt.py                     59     43    27%   16-17, 21-22, 27-45, 50, 60-61, 66-80, 85-97, 102-112
auto_dev/lint.py                     7      3    57%   13-27
auto_dev/local_fork.py              52     32    38%   32-33, 37-54, 58-95
auto_dev/test.py                    16     13    19%   4, 16-39
auto_dev/utils.py                  251    153    39%   76-77, 81, 94-101, 106-151, 167, 180-185, 204-228, 233, 240-242, 247, 252, 257-269, 276-281, 290-293, 298-318, 323-337, 342-348, 370-372, 381, 388-416
--------------------------------------------------------------
TOTAL                              819    536    35%
<!-- Pytest Coverage Comment:End -->

Miscillaneous

There are a number of useful command tools available.

  • Dev Tooling: A). linting adev lint B). formatting adev fmt C). dependency management adev deps update

  • Scaffolding: Tooling to auto generate repositories and components.

Documentation

Running Docs Locally

To run and preview the documentation locally:

# Install mkdocs and required dependencies
pip install mkdocs-material mkdocstrings[python] mkdocs-include-markdown-plugin mkdocs-mermaid2-plugin

# Serve the documentation (available at http://127.0.0.1:8000)
mkdocs serve

This will start a local server and automatically reload when you make changes to the documentation.

Metadata

Release files for autonomy-dev 0.2.161

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for autonomy-dev 0.2.161
File Size Uploaded Provenance Actions
autonomy_dev-0.2.161.tar.gz 308.6 kB Without provenance Details for autonomy_dev-0.2.161.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for autonomy-dev 0.2.161
File Interpreter ABI Platform Actions
autonomy_dev-0.2.161-py3-none-any.whl Python 3 none any Details for autonomy_dev-0.2.161-py3-none-any.whl

Total release size: 649.6 kB

Release files / autonomy_dev-0.2.161.tar.gz

Download URL autonomy_dev-0.2.161.tar.gz
Size 308.6 kB
Tags Source
SHA-256 checksum
How to use checksums
dbd4461d0ca99b418b5451112c1d02251c418514356aa8c578c82c52e0093774
BLAKE2b-256 checksum
How to use checksums
22237a9e548eea932cc35d88244c448ed175489cee31e5fcd0bec22406d20cba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Release files / autonomy_dev-0.2.161-py3-none-any.whl

Download URL autonomy_dev-0.2.161-py3-none-any.whl
Size 341.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5c4caa2310321d90520bd7540b29d32158f120f5f80631a1ce097aa233be4c1b
BLAKE2b-256 checksum
How to use checksums
1ba93b24dd08ec7f3393170a60873926236a62141bb5c6052ca8309df4ef1350
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.7

Security for autonomy-dev 0.2.161

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.161 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page