Autonolas
Autonolas is a platform dedicated to the development of autonomous applications for developers and decentralized autonomous organizations (DAOs) by providing a foundation for continuous operation, independent decision-making, and external interaction through their open-source software stack. [1]
Overview
Autonolas addresses the essential requirements for autonomous applications within the blockchain context, referred to as off-chain services. The platform offers an open-source software stack and an on-chain protocol, facilitating secure operations and incentivizing autonomous application development. The Autonolas tech stack comprises four key building blocks, enabling full-stack autonomy and creating opportunities for application growth. Autonolas aims to include business logic within their software components to be used within the cryptocurrency landscape. [2][3]
Architecture
Autonolas' software framework, Open Autonomy, forms the basis for constructing agent services, which are off-chain autonomous entities operating as a multi-agent system. These services enhance on-chain functionalities while primarily residing off-chain, allowing for the creation of novel and fully autonomous applications. [4]
Multi-Agent Systems Architecture
Autonolas employs Multi-Agent Systems (MAS) as the cornerstone for building autonomous software services. MAS involves groups of software agents operating in complex, multi-stakeholder scenarios with competing incentives, hereafter referred to as agent services. The open-area framework, a crypto-friendly MAS framework co-created by an Autonolas co-founder, serves as the primary means for implementing Autonolas agent services. This Python-based open-source library enables developers to create agents capable of peer-to-peer communication, direct interaction with blockchains and smart contracts, and implementation of arbitrary business logic through reusable components. [5]
Consensus for Agent Services
Agent services within the Open Autonomy framework function as multi-stakeholder systems requiring collective agreement on actions or computation outputs. Autonolas introduces state-minimized consensus gadgets, secure mechanisms facilitating internal consensus among agents without relying on traditional blockchains. The initial implementation employs Tendermint as a consensus engine, providing secure Byzantine fault-tolerant replication and deterministic finality. The choice of consensus gadgets contributes to the efficiency and trust minimization of agent services, allowing for decentralized fault-tolerant operations. [6]
Architecture of Crypto-Native Agent Services
Autonolas' off-chain agent services, logically centralized yet replicated across multiple machines, leverage a temporary blockchain created using consensus gadgets. The architecture involves operators controlling agents and consensus gadget nodes, interconnected to achieve fault-tolerant replication. Each agent runs an ABCI application instance, defining a finite-state machine replicated on the temporary blockchain. The FSMBehaviour of agents ensures proactive logic, allowing for the composition of services through reusable components and the chaining of ABCI applications. [7]
On-Chain Protocol to Anchor Autonomous Services
The on-chain protocol serves as the anchor for Autonolas' autonomous services on the target settlement layer, providing primitives for service creation, operation, and security. The modular design of the protocol, featuring upgradable modules and a core-periphery architecture, ensures extensibility without compromising security. Autonolas' on-chain protocol supports various roles, including developers creating agent components, service owners controlling services, operators operating agent instances, and users utilizing services. The protocol relies on ERC-721 NFTs to uniquely represent agent components, canonical agents, and services, ensuring immutability and censorship resistance. Additionally, the protocol allows for the chaining of ABCI applications and the integration of service extension contracts, providing flexibility and customization beyond the agent protocol's scope. [7]
Autonolas Protocol
The Autonolas Protocol represents a suite of smart contracts designed to lead, secure, and govern software code within the public blockchain. Embracing the Open Autonomy framework as its primary structure for realizing autonomous services, the protocol is adaptable to alternative frameworks. [8]
Deployment and Components
Presently operational on the Ethereum mainnet and Göerli testnet, the Autonolas Protocol enlists three principal components:[8]
- On-Chain Registries: Facilitates the registration of autonomous services, software agents, and agent components as on-chain NFTs. This functionality extends to the assembly of components into agents, agents into autonomous services, and the secure operation of these services.
- Tokenomics: Outlines the economic framework using the OLAS token as a coordination mechanism. This model fosters the pairing of capital and code, attracts escalating value to ensure decentralized services, and rewards developers in tandem with their contributions.
- Governance: Empowers the Autonolas DAO, a decentralized autonomous organization, to guide and refine the Autonolas protocol over time. [8]
Mint Packages NFTs
The Autonolas Protocol provides a web app for minting software packages as NFTs. Users can mint three types: services, agents, and components. The process involves creating a metadata file, publishing it on a remote IPFS registry, and interacting with protocol smart contracts for on-chain minting. [9]
Requirements for Minting
- Wallet address (Metamask or Safe contract)
- Package hash published on the remote registry
- NFT image URL for marketplace representation
Managing Service Life Cycles
The Autonolas Protocol governs the life cycle of services:[10]
- Pre-Registration: Initial stage for minted services.
- Actions: Update or activate registration.
- Active Registration: Awaits agent operators to register instances.
- Actions: Register agents or terminate the service.
- Finished Registration: All agent slots are filled, awaiting deployment.
- Actions: Deploy or terminate the service.
- Deployed: Operational state with deployed service.
- Actions: Terminate the service.
- Terminated Bonded: Service termination; awaits unbonding of registered agents.
- Actions: Unbond.
Tokenomics
The Autonolas Protocol's tokenomics employ the OLAS token for developer incentives and bonding mechanisms. It encompasses staking models and a flywheel to attract donations for sustainable ecosystem development. [11]
OLAS Token Utilities
- Governance participation
- Access to service whitelist
- Bonding for liquidity support
The Tokenomics web app offers a user-friendly interface for donating, claiming developer rewards, reviewing bonding programs, and managing bonds. Users can participate in the economic model and contribute to the growth of the Autonolas ecosystem. [11]
Toolkits
SMPKit
The SMPKit is a toolkit designed to construct services that implement investment strategies on liquidity pools. This functionality can be sourced from outputs generated by services like the APY Prediction service or external indicators such as the Crypto Fear & Greed Index. Pool management services utilizing SMPKit execute transactions based on investment strategies, performing actions such as maintaining the optimal investment strategy, refraining due to disproportionate fees, or executing capital swaps between liquidity pools for better positioning. [12]
MintKit
The MintKit serves as a toolkit for building services with minting capabilities. Notably, the El Collectooorr service, built on the MintKit, autonomously creates NFT collections by minting Art Blocks drops. The MintKit employs intricate logic to determine participation in mints and bid prices. Community-funded collections have unique ERC-20 tokens, enabling collective decision-making on collection management. [13]
CoordinationKit
The CoordinationKit facilitates the creation of services showcasing community contributions through the minting of evolving badges. By monitoring user contributions and updating badges, services built with CoordinationKit use Ceramic streams to automate the tracking and rewarding of contributions, demonstrating versatility for custom impact evaluators. [14]
MLKit
The MLKit enables the construction of services with custom machine-learning capabilities. An example is the ML APY Prediction Oracle, which predicts liquidity pool yields using configurable machine learning techniques. This kit includes agents collecting historical data, optimizing, training prediction algorithms, and reaching consensus on forecasting steps. The live demo showcases predictions for Uniswap and SpookySwap. [15]
OracleKit
The OracleKit is designed for services providing data streams onto the blockchain. The Price Oracle, an agent service under OracleKit, estimates Bitcoin prices based on observations from various sources. Agents collectively compute a deterministic function to aggregate observations, reaching a consensus on estimates. The service is secured through a multisig contract, settling estimates on the Polygon chain. [16]
IEKit
The Impact Evaluator Kit (IEKit) is an advanced version of CoordinationKit, that automates tracking and rewarding user contributions using Ceramic streams. Demonstrated through a Twitter mention tracking service, IEKit monitors registrations, and contributions, and updates user badges based on scores. The kit is modular and adaptable for various custom impact evaluators. [17]
GovKit
GovKit is a toolkit for building autonomous, AI-powered delegates that vote on on-chain governance proposals across Ethereum and Solana networks. It extends its functionality to off-chain governance proposals on Snapshot for the Ethereum network. [18]
MechKit
The MechKit enables the creation of AI Mechs, and services on the Gnosis chain, allowing users to post AI task requests on-chain and efficiently receive results. AI Mechs operate with xDAI fees, providing a hassle-free, crypto-native, and infinitely composable solution. [19]
KeeperKit
KeeperKit is a toolkit for constructing agent services that execute smart contract functionalities in a reliable, trustless, and cost-efficient manner. Operating on off-chain infrastructure, KeeperKit allows for complex computations unrestricted by blockchain storage and free from expensive on-chain transaction fees. This toolkit enables individuals, applications, or DAOs to perform DevOps jobs in a permissionless, secure, and fully automated manner. [20]
MessagingKit
The MessagingKit serves as a toolkit for building agent-messaging services based on the Open Agent Communication Network. [21]