Introducing Extensions
Starting today, users of the Compound interface have access to a new feature: Extensions. Extensions are optional add-ons, built by community developers, that enhance the Compound experience.
When you enable an extension, it can leverage Compound III’s advanced account management functionality to add new features to your account–such as automation, composability with other DeFi protocols, or position management. Or, it can run without requiring any permissions, and simply provide information–such as liquidation alerts.
This is an experimental, entirely new approach to the DeFi user experience, and opens up a new frontier for community developers. Rather than re-creating an interface, you can extend the primary interface.
At launch, there are four extensions:
- Advanced Transactions – allows users to bundle multiple actions in one transaction
- Position Migrator – allows users to import positions from Compound v2 and Aave v2 into their Compound III balance
- DeFi Saver – adds sophisticated tools to manage your Compound III position
- Comp.Vote – a gas-free voting experience
But these are only the start; there are dozens of extensions waiting to be built, limited only by your creativity. The newly relaunched Compound Grants Program is a great path to develop your idea into an extension.
Developing & Integrating Extensions
Each extension runs inside the Compound interface in a sandboxed iframe. The Extension Repo contains the base code for implementing an extension, as well as a curated list of extensions.
There are not yet standards for including an extension in the Compound interface–we expect the community to help develop the guidelines for approving or accepting a new extension, including security audit requirements for new contracts.
How Do I Use Extensions?
To interact with Extensions, you’ll need to visit the new Extensions section of the Compound interface. Extensions are specific to the connected wallet, meaning if you use multiple wallets to interact with Compound, you’d need to enable the Extension on each wallet. After connecting a wallet, users can interact directly with each Extension. Some Extensions must be enabled to work, while others have simple interfaces to interact with them directly. Extensions are always able to be disabled.
If you have any questions, please join the community in Discord.