Otomato
  • OTOMATO
  • Overview
    • Platform Description
    • Product Overview
  • Product Guides
    • Create An Agent
      • Triggers
        • Token transfer
        • Balance Check Trigger
        • On Chain Price Movement Trigger
        • Ethena Yield Trigger
        • Splice.fi
        • IONIC
        • Odos
        • Fear and greed index
        • IBIT Blackrock's Bitcoin ETF
      • Actions
        • Swap (odos)
        • Email
        • Discord
        • Slack
        • Transfer Action
        • IONIC
        • ODOS
        • 🟡Mode Network
        • Delay Action
      • Conditions
    • Simple Mode
    • Execution History
    • Smart Account ERC 4337
    • Use Cases
      • Inspiration wall
    • 🔵BASE
    • ⚪Ethereum
    • 🟡Mode Network
  • Fundamentals
    • Roadmap
    • Team
  • Technical documentation
    • Architecture
Powered by GitBook
On this page
  • ERC4337 wallet
  • Oracle
  • Example for a simple use case
  1. Technical documentation

Architecture

PreviousTeam

Last updated 8 months ago

The protocol design is in its early stages and may undergo significant changes as it develops.

The protocol is crafted to maximize decentralization and operates without permission. It can be split in two primary components:

  • An ERC4337-compatible wallet

  • An oracle

ERC4337 wallet

The protocol is designed with strict limitations to enhance security; it cannot transfer tokens or liquidate DeFi positions from a user's wallet. Only the master key, which is the user's externally owned account (EOA), has the authority to perform these actions.

Oracle

To activate functions based on predefined conditions, whether originating from on-chain or off-chain sources, an external service is required. This role is fulfilled by Otomato's oracle.

Example for a simple use case

In this scenario, the protocol is specifically authorized to perform only the following three calls:

  • Withdraw USDC from AAVE

  • Deposit ETH on AAVE

  • Swap USDC to ETH on Uniswap

When a user sets up their automation strategies, a smart wallet is automatically deployed behind the scenes. This wallet uses to ensure compatibility with ERC4337 standards. Additionally, it includes functions specific to the user's requirements, which dictate what actions the protocol can perform on their behalf.

The protocol is safeguarded using call policies, restricting it from executing arbitrary actions. Further details about call policies in an ERC4337 wallet can be explored .

Bastion's SDK
here