Skip to main content

What is a Trail?

A “trail” is a linear sequence of write functions across ethereum contracts, where the creator (the trailblazer) determines how function input values will be derived. The consumer of the trail will fill in user inputs and then submit one transaction for each step. Here’s an overview of a trail opening a maker CDP vault, depositing ETH, borrowing DAI, and supplying to compound in one go - while also being able to read important data like LTV before and after:
Here are some key benefits of trails:
  • Immediately use any deployed contract with LLM search/support, no waiting for integrations from the Herd team.
  • Contract upgrades are automatically tracked, so the creator and consumer will see if a trail is outdated.
  • Trails are transparent so that anyone can look at all the function-calling logic. They can be easily shared, used, and forked.
  • Creating a trail will automatically generate a sandbox app (shareable as a webpage or a farcaster miniapp). This comes with simulations as well, so you can test branching paths of execution before submitting transactions.
  • Trails include an API, with an llm txt for copy/paste into any AI tool to help you own apps, automations, chatbots, or anything else on top.

The Problem with Composability

Let’s talk about where trails fit into app development. Apps today look like this:
Herd old app
A team deploys a protocol (set of contracts), takes some of those functions, and plugs them into their app. A user might want Zora to integrate splits into their app so that they can share fees with friends. However, Zora won’t do it - not because they don’t like splits or don’t have the ability, but because of all the extra overhead I mentioned earlier that comes with other contracts. They’re busy building a very opinionated product that everyone needs to align on to nail down a consumer experience that can reach millions. Here is where trails fit in - we wanted to create the simplest abstraction that ties together functions and data across contracts so that it can then be used to generate anything (an app, an automation, a SQL query, etc.). The “abstraction” seen below is what we call a “trail.”
Herd new app
If you’re more technical, you’re probably wondering, “Why aren’t ABIs good enough?” or “Why not just use an SDK?” An ABI is too generic to help inform how input values are derived and with what options/purposes, and an SDK is usually protocol specific and very abstracted. Each trail is purpose-built for a specific user journey, making it a much more focused and flexible tool for managing onchain complexity. There are four parts to a trail in the Herd app:
  • 🔥 The Trailblazer: the creator of the trail
  • ⚙️ The Canvas: the place creators will create and edit trails
  • 🔭 The Overlook: a sandbox/miniapp for executing the trail
  • 📚 The Guidebook: a single link that can be pasted to any AI tool for help building an app, automation, or anything else you want with a trail.
Sage chat cannot edit trails right now. We’ll add more LLM feature to make the creator experience better soon 🙂

Trail Guides

There are guides for creating trails and building on top of the API in the guides section

Join the Community

Join the Discord to find other trailblazers to build together with, and talk to the Herd team.