Mimic Docs

How it works

Mimic introduces an innovative concept called Smart Vaults: an automated and trustless solution that can be customized to execute different processes. To allow this Mimic offers a list of pre-set primitives that can be grouped into actions to model any type of process for your Smart Vaults.
Smart vault high-level illustration


Primitives are pre-set atomic operations that can be executed on any Smart Vault. Mimic offers a list of standard primitives to cover the following basic concepts:
  1. 1.
    Collect — Transfer assets from an external address to Mimic
  2. 2.
    Swap — Swap assets on any decentralized exchange
  3. 3.
    Bridge — Bridge assets between different chains
  4. 4.
    Join — Allocate assets into a DeFi protocol
  5. 5.
    Exit — Withdraw assets from a DeFi protocol
  6. 6.
    Claim — Claim rewards from a DeFi protocol
  7. 7.
    Withdraw — Transfer assets to an external address
  8. 8.
    Wrap — Wrap native-token assets
  9. 9.
    Unwrap — Unwrap native-token assets
  10. 10.
    Call — Perform arbitrary calls
Each primitive comes with a set of parameters that can be configured for its execution. A parameter can be forced to always be the same, to be limited within a specific range, or dynamically adjusted based on different network conditions. For example, the slippage of a swap can be limited to a maximum value.
All these primitives follow a simple interface in order to communicate with the rest of the Mimic protocol. This allows users to implement custom primitives to interact with their assets, ensuring full flexibility for specific processes.


Usually, to automate complex processes, primitives are not executed in isolation. These can be grouped in different ways to perform more complex operations. This group of primitives is called actions.
An action can define how primitives are connected to each other and in which order these must be executed. Additionally, actions can be configured to limit their execution depending on any transaction metadata like sender, gas price, gas cost, timestamps, etc. For example, an action can be configured to be executed only once a month, or only if its total gas cost is lower than 100 DAI.
These are just a few examples, Mimic opens the doors to model any other type of actions that could be automated to improve your DeFi experience.
Action example of how assets can be swapped and bridged from different layers to join an Ethereum protocol

Revenue model

Mimic is allowed to charge Smart Vaults with protocol fees. There are different types of protocol fees that be charged by Mimic. There are four different types of protocol fees proposed initially:
  • AUM fee: AUM fee can be charged based on the balances of the assets held by each Smart Vault.
  • Swap fee: A swap fee can be charged on the amount out after each swap performed by a Smart Vault.
  • Withdraw fee: A withdrawal fee can be charged when assets are withdrawn from the Smart Vault.
  • Performance Fee: A fee can be charged to each Smart Vault based on the performance of the strategies they have invested in. If there are no gains no performance fees are charged at all by the protocol.
Note that each of these is set per Smart Vault, not a protocol level. This allows Mimic to turn on or off the fees based on each Smart Vault purpose. Additionally, each Smart Vault is allowed to decide who and how is able to change these fees in the future.
Additionally, fees can be tied to a cap in each Smart Vault. For example, if there is a performance fee of 2% set for a Smart Vault, it is allowed to define an arbitrary cap of 1,000 USDC per year. This allows each Smart Vault to control a limit of how much they will pay to the protocol.