Congrats on the launch! I’m curious, do you have to store the tool inputs and outputs on the server side while either of the sides are waiting for response? I’m building a specialized coding agent for integrations and I had to avoid stateful api, because I don’t want to store user code.
We tried to keep things simple, so our runner utility class is currently stateless.
However, it's highly extensible, and we can support stateful logic if we wanted to. For instance, we have a cool concept called "Policy" in our SDKs, which is basically a user-defined callback function that is run after each runner step (see our docs for more info). You can build some pretty advanced use cases with this, e.g. executing conditional database calls on a per-step basis.
The code for the runner is open source, in case you wanted to check out how we did it: https://github.com/dedalus-labs/dedalus-sdk-python/blob/main...