Giter Site home page Giter Site logo

docs's Introduction

Morpheus

A Network For Powering Smart Agents

Authored by Morpheus, Trinity, & Neo

Published - September 2nd 2023


Introduction

The Smart Agent concept of connecting LLMs and AI Agents to wallets, Dapps, & smart contracts promises to open the world of Web3 to everyone. Chatting in normal language with your Smart Agent and having it understand the question or task, is similar to how Google's search engine opened the early internet up to the general public.

To make Smart Agents accessible to everyone and increase decentralization we propose a network & fairly launched token for incentivizing all four of the key contributors to their operation. Namely, the community of users, coders contributing to the Morpheus software / agents, capital providers funding development / operations and those supplying computation, storage and bandwidth. It has been well shown by the history of Bitcoin and Ethereum that free & open competition for scarce digital tokens can provide scalable infrastructure for a public blockchain over long periods of time.


Smart Agent Development Principles:

  • Agents cannot execute decisions.
    Agents can only construct transaction payloads for a user's approval.

  • Local installation.
    Agents should run on the user's laptop, typically with 8-16 GB of RAM. This allows for faster execution and better performance.

  • No private keys.
    Agents must not have access to private keys or be able to execute transactions independently. User's cryptographic approval is essential for any transaction.


Morpheus Local Smart Agent Features v.0.0.8

Current

  • Fetch price, market cap, and TVL of coins and tokens supported on CoinGecko.
  • Web interface.
  • Wallet integrations for your existing wallets in-browser:
    • MetaMask
    • Rainbow
    • Coinbase Wallet
    • WalletConnect
  • Web3 swap agent (macOS only).

Pending

  • Chat with local files agent (general purpose)

Example queries

After connecting Morpheus with your web3 wallet, you can test the Data Smart Agent with prompts such as:

  • What is my balance?

  • What is my address?

  • Send ETH to [Ethereum Address]

  • What is the price of Ethereum / Price of ETH (or other token listed on Coingecko)

  • What is the market cap of DOGE / MC of DOGE (or other token listed on Coingecko)

  • What is the fully diluted valuation of Solana / FDV SOL (or other token listed on Coingecko)

  • What is the total value locked in Uniswap / TVL of Uniswap (or other token listed on Coingecko)

For the Swap Smart Agent, a typical flow looks like this:

  • A user requests a swap, e.g "I want to swap ETH for WBTC".

  • The agent requests any missing information, e.g. in this case the amount is missing.

  • Once all the information has been collected, the agent looks up the assets on the current chain, retrieves contract addresses and generates a quote if available.

  • The quote is shown to the user, who may either proceed or cancel.

  • If the user accepts the quote, the swap may proceed. The back-end will generate transactions which will be sent to the front-end to be signed by the user's wallet.

  • If the allowance for the token being sold is too low, an approval transaction will be generated first.

Warning

Review all transactions before approving them. The LLM makes mistakes, you have human wisdom.

Seriously, double check all actions in the Metamask interface before sending money.

This is an experimental release and the ETH Smart Agent may try and send your money into a black hole.

Gas costs are high on Ethereum. Consider testing out 0.0.8 using the Sepolia testnet or Arbitrum.


Installs

Mac OS M1/2/3 etc. (arm64)

Note

minimum 16GB RAM

  1. Download and install Docker Desktop.

  2. Follow default settings, can skip surveys, then leave docker desktop running. You can minimize it.

  3. Download Moragents.zip.

  4. Open ZIP, and copy MORagents.app to your Applications folder.

    SHA256 96c2510e4f7a752c613b322be0a107958ee34814415e3e7b950b426298379a7a MORagents.zip

  5. Open MORagents app. Give it a few minutes the first time and then it should open your browser.
    If there's an issue, try opening the MORagents app again.


macOS Intel (x86_64)

coming soon


Windows (x86_64)

Note

Minimum 16GB RAM is required.

  1. Use Chrome to download MORagentsWindowsInstaller.zip

    SHA256 0a5f5e3a288d45854c83994fa4afa4c713019229d99d67f28442fc56a5de1b20 MORagentsWindowsInstaller.zip

  2. Go to downloaded MORagentsWindowsInstaller(.zip) file and click to "Extract All".

  3. Open Extracted Folder MORagentsWindowsInstaller. You may need to disable your anti-virus software before proceeding.

  4. Click and Run MORagentsSetup.exe This will auto-install Docker Desktop dependency.

  5. Open MORagents from Desktop.

  6. Accept Docker's EULA Surveys are optional, can skip

  7. Wait for Docker engine to start...

  8. Open MORagents App from Desktop First time installation requires some extra time to load agent's image.
    If anything hangs for >10min, please try opening the MORagents app again from the Desktop.


Linux

coming soon


Build it Yourself

  1. MacOS
  2. Windows

Troubleshooting

If the app shows connections errors to agent fetcher. Please ensure Docker Desktop is running, then close and reopen MOR Agent from desktop.


Key documents list:


Code:


Morpheus Smart Contract addresses:

Ethereum:

Arbitrum:

Base:


Morpheus Network Diagram

docs's People

Contributors

abstractionisms avatar anggagilang11 avatar antonbosss avatar betterbrand avatar blankerl avatar bowtiedbluefin avatar crash42069 avatar davidajohnston avatar dorianjanezic avatar energyhound avatar jasonfenggit avatar jsnbuchanan avatar lachsbagel avatar mor-codes avatar oktaivan avatar openempires avatar phanesofcrypto avatar polupoker avatar potentiated avatar quertc avatar raghukapur9 avatar rcondron avatar rslowinski avatar ryanleung avatar shinyshiba1 avatar stan909 avatar tigerbuidl avatar tster avatar umairyaseen77 avatar xfactor20 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

docs's Issues

Strategic Advantages of Launching the Morpheus Token on Flare Networks

In this whitepaper, we delve into the strategic advantages of launching the Morpheus token (MOR) on Flare Networks, as opposed to alternatives like Arbitrum. Our recommendation is deeply rooted in the unique technological advancements offered by Flare, specifically its Time Series Oracle (FTSO) and State Connector. These technologies together create a secure, decentralized framework for data procurement, which is crucial for the autonomous functionality of Morpheus's intelligent agents. By highlighting the need for real-time, reliable data, we position Flare Networks as not just an option but a strategic asset for Morpheus.

The convergence of blockchain technology and artificial intelligence marks a significant evolution in the digital domain, with Morpheus at the forefront of this transformation. Our strategy leverages intelligent agents that require immediate and secure data access, essential for their operational integrity. Opting for Flare Networks is guided by the exceptional capabilities of the FTSO and State Connector, which together provide a robust data environment vital for the agents' complex operations.

We advocate for the adoption of Flare Networks' upcoming FAssets and Layer Cake protocols to enhance interoperability and operational efficiency of blockchain-based smart agents. This strategy will significantly broaden and streamline Morpheus agents' ability to conduct cross-chain transactions, effectively overcoming interoperability barriers.

Layer Cake, in conjunction with FAssets, is designed to facilitate seamless transactions across a variety of blockchain networks, eliminating the traditional barriers that have segmented the blockchain ecosystem. This development will greatly expand the operational reach of Morpheus agents, driving us towards unmatched cross-chain interoperability. Integrating these protocols signifies more than just an enhancement of Morpheus's framework; it is a significant advancement in the evolution of blockchain interoperability, ensuring Morpheus agents lead in the domain of intelligent, autonomous, and adaptable digital agents.

Suggested Launch Platform: Flare Networks
Our strategic recommendation to launch Morpheus on Flare Networks is underpinned by a thorough analysis of its merits, including:

-Secure, Decentralized Infrastructure: Fundamental for deploying intelligent agents, ensuring operational security and autonomy.
https://flare.network/flare-101/

-State Connector: Establishes consensus on data from other blockchains and the web, safeguarding the integrity of smart contracts on Flare.
https://flare.network/stateconnector/

-Flare Time Series Oracle (FTSO): Provides decentralized, accurate time series data, such as cryptocurrency prices, indispensable for the autonomous operation of Flare network's applications.
https://flare.network/ftso/

-Enhancing Interoperability: FAssets and Layer Cake
https://flarelabs.org/

We encourage embracing Flare Networks' FAssets and Layer Cake protocols, groundbreaking innovations poised to reshape blockchain interoperability and significantly benefit Morpheus. FAssets broadens the ecosystem for Morpheus agents by facilitating interactions with an expanded asset spectrum, thereby boosting the MOR token's market appeal and liquidity. Conversely, Layer Cake advances Morpheus into new dimensions of cross-chain communication, enabling operations across numerous networks and reinforcing Morpheus's prominence in the blockchain sphere.

Conclusion
Our recommendation to integrate Morpheus within the Flare Network, making use of the State Connector, FTSO, FAssets, and Layer Cake, goes beyond ordinary enhancements in agent functionality. It places Morpheus at the forefront of innovation, redefining cross-chain interactions and the application of blockchain technology in meaningful, impactful ways. This strategic direction not only elevates Morpheus's capabilities but also has the potential to revolutionize the blockchain interoperability landscape, positioning MOR tokens at the helm of this transformative journey.

Additionally, it's noteworthy to mention that Flare Networks is also delving into the realm of artificial intelligence, with their chief scientist having recently released a paper on “Consensus Learning, a novel decentralised machine learning paradigm.” Link: https://arxiv.org/pdf/2402.16157.pdf

This exploration suggests potential synergies between both projects. While I may not possess the technical expertise to fully ascertain how these synergies could function in collaboration, our ambition to accelerate decentralization fuels this proposal.
The intent of this discussion is to question whether Arbitrum is indeed the optimal network for the launch of Morpheus, or whether we should consider leveraging a network that aligns more closely with our values of decentralization and data integrity. Encouraging dialogue between Morpheus AI and the Flare Networks team could foster innovation in exciting new ways. I am eager to see the fruits of such potential collaboration and how it might propel innovation forward.

Wallet: 0x30CAa43b48B4c54Ea5E36683183Eef75aD603E95

Withdrawing my deposit

I can’t withdraw my steth back to my wallet. It’s not showing on the platform. 7 days elapsed from the deposit date

Bug withdrawing stETH from Morpheus Dashboard

Found bug trying to withdraw original stETH amount after staking more stETH. Initially staked 1.2 stETH on fair launch, then another .25 the next day. Fast-forward 2/19/2024; after staking another .25 stETH, unable to withdraw previously staked stETH (~1.5 from previous transactions).

Resolved: The Oracle put in FAQ

No way to contact

Hello, I accidentally sent stETH to the multisig on launch and have no way to contact the people on the multisig. the wording in this tweet confused me and assumed that on launch I could send there to stake https://x.com/MorpheusAIs/status/1754949646336553131?s=20
If there is anyway to contact the multisig plz lmk as I would appreciate getting it sent back.
here is the txn https://etherscan.io/tx/0x7bb90aa13d5189467880a280b8806bcd54879e891f8e1060d024b76f7a88dda7
Sorry to raise as an issue on github, but dont know where else to find a contact for people on the multisig.

MOR/WETH or MOR/wstETH as MOR's primary trading pair

In reviewing the Morpheus documentation and other writings, as well as the smart contract implementations deployed to Ethereum and Arbitrum, I noticed an inconsistency with regard to what asset MOR will trade against for Protocol-Owned Liquidity.

In some places, the TCM bootstrapping model for Morpheus has its native token MOR trade against WETH; in other places - as well as in the smart contract implementations - it seems MOR will trade against wstETH (wrapped Lido Staked Ethereum).

It would be worth establishing which of these trading pairs is to be used, as some contributors may not be aware of the current implementation.

MOR/WETH or MOR/wstETH?

I believe MOR should trade against WETH, the wrapped ERC20 representation of ETH on Arbitrum. This is the asset of choice for most trading pairs on Arbitrum (see DEXScreener) as users can swap between ETH (the gas token on Arbitrum) and WETH by wrapping/unwrapping without having to worry about slippage. Additionally, since other assets are denominated in WETH, multi-part swaps (e.g. USDC->WETH->MOR) would be cheaper.

I do not see any strong reasons to pair MOR against wstETH, other than the fact the current smart contract implementation seems to support this.

It is worth nothing that there is considerable wstETH/WETH liquidity on Arbitrum, across both Uniswap (~$9.5m liquidity) and Balancer (~15m liquidity) so it would be possible for users to route MOR swaps either way.

Resolution(s)

If the Morpheus community confirms that MOR/wstETH is the preferred trading pair, then it would be enough to update and make consistent the Morpheus documentation and other writings (such as MRC 09: AMM Launch Process) to reflect this.

If MOR/WETH is the preferred pair, I believe modifications would need to be made to the smart contract implementation to enable this.

EDIT: I had assumed there would not be sufficient liquidity to swap wstETH for WETH on Arbitrum, and that it would be necessary to do so on mainnet (see below). However, it appears there is enough liquidity. Nevertheless, the L2TokenReceiver contract responsible for managing PoL does not seem optimized for these swaps. It could be worth adding a dedicated method for wstETH to WETH swaps and adding Balancer support.

For instance, a new function could be added to Distribution that would allow stETH yield to be converted into WETH when called by the Morpheus multisig. In course, the bridgeOverplus function would be modified to bridge WETH to Arbitrum.

To convert stETH into WETH, two methods could be used:

  • Swap via DEX
  • Unwrap via Lido

While swapping is near instant, it may result in slippage. As a result, it may be best to unwrap stETH directly via Lido, which takes 1-5 days. Although this seems like an inconvenience, it could be made part of a weekly signing schedule:

  1. Claim stETH yield in Distribution
  2. Begin unstaking stETH yield via Lido
  3. Complete unstaking of last week's stETH yield (call claimWithdrawal)
  4. Bridge received WETH to Arbitrum

Since the Distribution contract uses an upgradeability proxy pattern, and Capital is held in the Delegator contract, it should be possible to update the implementation contract and thus introduce these features without requiring Capital Providers to migrate.

Community Contribution

Couldn't find a way to make a pull request related to 'community' contributions vs. code contributions, but wanted to submit one before May 8th just in case I could qualify for some MOR.

I hosted a Decentralized AI day at SXSW with Gary Sheng and the Morpheus team. Secured funding from ATX DAO and helped promote / coordinate. It included all-day programming and food. Great attendance and talks.

Thanks for all that y'all are doing and looking forward to the release tomorrow!

Restructuring docs to improve readability

The current docs structure seems suboptimal -- there is no clear starting point and it's hard to navigate, with information for various stakeholders (and languages!) mixed together.

Would like to propose a new, hierarchical structure where international docs are kept separate. For instance:

  • readme.md
  • Overview/Concepts
  • User Guides
  • Morpheus Node
  • Contributing
  • Architecture/Smart Contracts
  • International
    • French
    • Chinese
    • Hindi
    • etc
  • Archive

Pending feedback from contributors I'll begin working on a PR that implements this or another clearer structure.

Issue of transparency of contributions in past snapshots

Some contributions (quite a lot of weigth points) in the snapshot 1 & 2 table are anonymous or @username only (without a link to commit or PR). Which removes the transparency of the contributions. Also, some links to code contribution are already outdated and don't work (404). Perhaps this can be re-evaluated and updated somehow to improve transparency.

Make FAQs.md questions linkable for communications in discord & other social

It would be super convenient for discord moderators and even responding to comments on social, if the FAQs questions were markdown headers. Markdown headers are linkable, so we can deep link to the specific question a user is asking rather than sending them to the top of the FAQ.

Currently:

The questions are currently using **bold** markdown

Suggested:

Change the questions markdown to us ### Question?

Example:

questions-are-not-linkable.mov

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.