‹ BackHN Continuity

Thread

Pi Durable

506 points · 72 comments · paulsmith

  1. lukebuehler · · focus · HN ↗
    Very cool to see Pi build a durable agent harness too. I've been building in this space for quite some time myself [0][1] and it is a super interesting place of innovation. Less hype-y that on-your-machine coding agents, but all major players are building products in this space: LangChain Deep Agents, Vercel Eve, OpenAI Agents API, Anthropic Managed Agents, etc.

    The main reasons are:

    1) they are "durable", i.e. easier to make long-running in an unattended way, and easier to implement recovery, monitoring, etc

    2) separating the harness from the compute brings safety and scaling benefits

    3) easier to make multi-player.

    [0] <a href="https:&#x2F;&#x2F;github.com&#x2F;smartcomputer-ai&#x2F;lightspeed" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;smartcomputer-ai&#x2F;lightspeed

    [1] <a href="https:&#x2F;&#x2F;github.com&#x2F;smartcomputer-ai&#x2F;agent-os&#x2F;" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;smartcomputer-ai&#x2F;agent-os&#x2F;

    1. the_mitsuhiko · · focus · HN ↗
      It&#x27;s quite an interesting place to hack on, because it&#x27;s both a well understood problem but with so many wrinkles to it. I can&#x27;t count how many earlier designs we chewed through before we ended up with the final one and I would not be surprised if we learn even more about it.
      1. lukebuehler · · focus · HN ↗
        Yes, from your release post I can tell that you put a lot of thought into it!

        I like your structured concurrency approach with tasks, which is similar to how I do it in Lightspeed too.

        Also, the durable state implementation as documents is elegant! Question, though: why directly write&#x2F;read to the store, why not abstract it and do more of a reducer&#x2F;redux pattern and hide the persistence of the documents?

        1. badlogic · · focus · HN ↗
          Things are still not settled, and while the API looks like store i&#x2F;o it&#x27;s actually more similar to Immer&#x27;s drafts, just with a different encoding, as JSON patch can&#x27;t deal with the kinds of data we encounter in our workloads, at least not in a way that keeps memory and perf within some bounds.

          The good thing is that this more low level API can be easily papered over with a nice sugary thing.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.