Designing multi-agent pipelines with shared state — how are you approaching it?

I’ve been working with LLM-based agents arranged as small pipelines (planner → executor → reviewer, sometimes with tools in between), and the hardest part so far hasn’t been the models themselves, it’s managing shared state across steps.

Once pipelines include branching, retries, or tool calls, context ends up spread across prompts, intermediate artifacts, and bits of application code. At that point, it becomes hard to reason about agent behavior or reproduce failures consistently.

I’ve been experimenting with making the pipeline and state more explicit — treating the workflow as a graph where agents read from and write to a shared spec/state instead of relying purely on implicit prompt passing. I’ve been testing this using a tool called Zenflow to see if it helps with inspectability and determinism, but I’m still evaluating the approach.

I’m curious how others here are structuring agent pipelines today. Are you managing state manually in code, using external stores/state machines, or relying on higher-level frameworks? Would love to hear what’s worked or not for you.

1 Like

I think the commonly used methods these days are like this. (Based on searches and my own resources)