We are excited about the announcement Aragon OSx CLIa tool that makes it easy to create, deploy, and deploy plugins on Aragon OSx.
The CLI eliminates the complexity of plug-in deployment and deployment, as well as provides better error handling so you can debug and resolve issues faster.
Let's dive into how the Aragon OSx CLI makes development fast and easy, so you can focus on building custom functionality for your DAO!
“The CLI enables you to build faster and more securely, without having to work with the protocol in its raw state.”
— Aaron, Developer Experience Engineer
Plugins are smart contracts that change the logic of your DAO. They can be installed, uninstalled and upgraded. Think of plug-ins like applications that you install on your computer. It adds additional functionality that expands what your DAO can do!
Plugins can perform a lot of different actions on the thread. Here are some categories:
- Verdict: Change the decision-making mechanism in your DAO, such as installing a token voting plugin, a cross-chain voting plugin, or something else.
- asset management: Swap tokens using the Uniswap plugin, stake assets using the Lido plugin, or buy NFTs using the OpenSea plugin.
- membership: Customize vote count. Membership is granted to individuals with a non-transferable token plugin, to certified wallets that have a multi-sig plugin, or to token holders with an ERC-20 plugin.
- any thing else Which extends the functionality of your DAO onchain!
One example of a plugin is a multi-chain management plugin. DAOs can install it to change their DAO from being single-chain to multi-chain.
Plugins make your DAO modular by giving you the option to create custom logic, install the set of plugins you need, and uninstall those you no longer need. It allows you to adapt your DAO as its needs change, without having to abandon your existing DAO and deploy a new one.
Modules through plugins allow your DAO to operate in a complex and ever-changing world and take advantage of the latest innovations and best practices!
the Aragon OSx CLI It is a peripheral interface that makes it easier and faster for developers to create plugins.
Here's what you can expect from the CLI:
Faster development process
The Aragon OSx CLI speeds up the development process and ensures that you are building the method that fits the protocol. Using the commands, you can deploy and deploy your own plugin without having to delve into how OSx works under the hood.
This creates an overall smoother build experience, reducing errors and making the process of creating custom admin functions for your DAO significantly faster!
More descriptive error messages
There's nothing more frustrating than a generic error message that doesn't describe what you should do to fix it. The Aragon OSx CLI has descriptive error messages, so you can debug errors faster.
Here's an example of a more descriptive error message we've added: When setting up a DAO subdomain (dao.eth address), the protocol expects the subdomain to be unique, all lowercase, and to include no periods.
If you provide a subdomain such as Aragon.plugin for your plugin, this will be invalid because it is capitalized and has a period.
Before the CLI was published, the error message would indicate an invalid subdomain without providing much additional guidance. Now, in the CLI, we've added more validation and context to be more specific about the error so you can fix it faster, such as: Invalid subdomain: Your domain is capitalized and contains a period. Subdomains must be unique, all lowercase, and cannot contain any characters beyond “-“.
“Before the CLI, to go from idea to plugin, there were a lot of things you needed to know about the protocol. This sums up all those steps.
— Aaron, Developer Experience Engineer
Check out some commands you can use with Aragon CLI:
Deploy the plugin [ deploy ]
Deploys a plugin on the network of your choice. This is required before deployment in the Aragon OSx protocol.
Deploy the plugin [ publish ]
It publishes your plugin to the plugin registry so anyone can install it in their DAO.
View plugin information [ info ]
It allows you to see information about your plugin after it has been published in the plugin registry.
Transaction simulation [ –simulate ]
The –simulate option in the publish and publish command will simulate the transaction for you using Tenderly, so you can more easily review the trace and debug where the error came from, without actually executing the transaction on-chain. This is coming soon, so stay tuned for it to be added!
Install a new plugin in a new DAO
Create a new DAO and install a plugin in it.
What's next for the OSx CLI
We will deploy the CLI and get feedback from the creators to determine what to address next. There are likely two updates on the horizon next:
- Install a plugin into an existing DAO
- Create a repo using the basic plugin template
Subscribe to our developer newsletter to stay up to date on what's coming next.
Our Developer Tools page has links to everything you need to get started, including the Command Line Interface (CLI), the Quick DAO Plugin Guide, a custom DAO front-end, and more.
If you want to keep up with developments in the OSx CLI, join our developer community to receive updates!