Open Graph for Onchain Actions

Open Graph for Onchain Actions

Let’s work on a standard that enables EVM transactions to be previewed, signed and sent as URLs. The idea is to be able to suggest transaction through links, QR codes, buttons, widgets and websites. This allows users to perform blockchain transactions without the need to go to another app or webpage. This would expose onchain action to the entire surface of the web. The basic idea is to do what OG did for social previews but for onchain actions.

“The Open Graph protocol enables any web page to become a rich object in a social graph. For instance, this is used on Facebook to allow any web page to have the same functionality as any other object on Facebook.”

Any onchain action can be shared as a rich link (URL). An additional benefit is that some context aware apps such as in-wallet browsers can display additional features. For example, on a website, a swap button could trigger a transaction preview without going to a swap app.

The fallback is a simple frontend for a given action and that action only. Therefore, a user without a context aware app will be directed to that frontend to make their transaction the traditional way.

Solana has recently launched pretty much this. See the full specification here

Prior art also includes Farcaster frames, which unfortunately only work with Warpcast. There is a need to agree on a standard so that we can avoid yet more fragmentation.

Next Steps:

  1. hear your initial thoughts
  2. start working with partners: wallets, wallet connection kits, apps.


  • What about safety and drainer links? Clients (e.g. wallets) should simulate transactions and give appropriate warnings if they cannot. Additionally, a maintained registry of non-malicious actions should exist.
  • Why are we doing this? hugo0 and kkonrad have been working on a standard for a single use case URL-encoded transaction format, Peanut Protocol (sending tokens via links / QR codes) and this is a logical next step.
  • What’s next? Let’s have a kick off call?