Skip to main content

Command Palette

Search for a command to run...

Building a Visual Workflow Designer for LLM Multi-Agent Systems

This project is a prototype that brings together visual workflow composition, agent orchestration, retrieval-augmented generation (RAG), and runtime inspection in a single experience.

Updated
4 min read
Building a Visual Workflow Designer for LLM Multi-Agent Systems
F
I build distributed systems that stay reliable under pressure, and I bring ML intuition to every layer of the stack. With 2+ years shipping production-grade C++/gRPC services at Cohesity (formerly Veritas), I've owned everything from anomaly detection pipelines to cyber-resiliency features end-to-end. Now pursuing my MSc at Stuttgart, I'm combining systems depth with autonomous intelligence research to work on problems that actually matter at scale. At Cohesity, I contributed to Stargate - an enterprise-scale distributed file services layer - where I designed garbage collection logic, built high-performance concurrent file services with thread safety guarantees, and implemented stress-testing frameworks that validated system robustness under high-load conditions. I also independently drove a cyber-resiliency feature from architecture proposal through to production delivery. At Veritas, I led anomaly detection for structured workloads (Oracle, MySQL) using unsupervised ML (K-Means, DBSCAN, Isolation Forest) and built the full ELK data pipeline - Logstash, Elasticsearch, Kibana - containerized with Docker and orchestrated with Kubernetes.

Introduction

Imagine building LLM applications not by writing glue code, but by dragging and connecting blocks on a canvas. This project turns that idea into a working prototype: a browser-based visual editor for multi-agent workflows, backed by a Python service that executes the workflow in topological order.

It is designed for:

  • rapid experimentation

  • explainable agent orchestration

  • retrieval-enhanced responses

  • tool integration

  • local and hosted LLM backends


What the app feels like

On the frontend, users can:

  • drag nodes around

  • connect inputs, agents, tools, retrievers, and outputs

  • configure nodes with provider settings and prompts

  • validate workflows before execution

  • run workflows and watch node-by-node results

  • inspect retrieval hits and metadata

The interface is intentionally interactive and exploratory, allowing you to build data flows visually rather than code flows textually.


Core concepts

The tool centers on a few key concepts:

  1. Nodes

    • Each node represents a workflow step: input, agent, tool, retriever, or output.

    • Nodes can be configured individually, including the agent provider and retrieval collection.

  2. Edges

    • Edges define the flow of data between nodes.

    • The engine validates these connections and ensures the graph is executable.

  3. Providers

    • The prototype supports multiple backend providers:

      • a local mock provider for fast demos

      • Ollama for local LLM execution

      • Hugging Face router support for hosted model calls

  4. Retrieval

    • RAG is built into the workflow engine.

    • Documents can be ingested and indexed into vector collections.

    • Retriever nodes can fetch relevant chunks and surface them back through the workflow.


Why this project is interesting ?

This is not just a visual editor. It is an end-to-end prototype that combines:

  • user-facing workflow design

  • execution semantics

  • lightweight persistence

  • retrieval, embedding, and vector store support

  • provider abstraction so the same workflow can switch between mock and real models

That means it is a useful tool for thinking about how multi-agent systems should be designed, while also being runnable in practice.


Execution model

At runtime, the backend does the following:

  • validates the workflow structure

  • computes an execution order based on dependencies

  • executes nodes in sequence

  • accumulates outputs and logs

  • tracks stats such as agent calls, tool calls, retrievals, and runtime

  • returns structured results and per-node status information

This model allows the frontend to render execution state cleanly and show which nodes succeeded, which ones returned retrieval hits, and which ones produced final output.


Retrieval and locally indexable data

A strong feature of the prototype is its retrieval support:

  • document ingestion can accept plain text or common document formats

  • the system can fall back to a local JSON vector store if a heavyweight backend is unavailable

  • it can also use Chroma when installed for a more production-like experience

That means even a local demo can showcase retrieval-enhanced conversations, not just vanilla prompt passing.


Why it works for multi-agent systems

Multi-agent workflows are inherently graph-like:

  • agents often need structured inputs

  • tool calls should be explicit

  • retrieval should be traceable

  • output aggregation must be visible

By mapping these concerns onto a visual graph, the project makes complex LLM orchestration easier to understand and debug. It also lets developers experiment with new pipeline shapes without committing to a full code rewrite.


The project is built in a way that supports:

  • local development with a React frontend and Python backend

  • exporting the workflow into Python code

  • saving and loading workflow definitions

  • exploring example pipelines

  • switching agent providers without rebuilding the entire workflow

This makes it a strong base for anyone wanting to prototype agent orchestration tools or dashboard-driven AI workflows.


Final thoughts

This prototype demonstrates an important shift in how we can build LLM applications:

  • from code-first pipelines

  • to visual, composable workflows

  • with clear execution observability

  • and integrated retrieval support