Topic: Orchestrator Workflows & Multi-Agent Pa...
# questions
b
Topic: Orchestrator Workflows & Multi-Agent Parallelization in OpenHands Canvas Hi team, I'm currently using OpenHands Canvas for feature development. For each new feature or modification, I've defined 5 sub-agents (file-based agents) with dedicated skill sets: 1. SRS Authoring/Updates 2. Backend Engineering 3. Frontend Engineering 4. Code Review 5. Testing Current Workflow & Pain Point: Right now, I manually open the browser UI, create a new conversation for the main agent, describe the business requirement, and have the main agent delegate work to the 5 sub-agents step by step. Doing this manually for every single feature is a bottleneck. Desired Workflow: I want to feed a high-level business requirement spec file (e.g., Markdown/PRD) into the system and have it automatically decompose the spec into discrete feature modules, then orchestrate the 5 sub-agents to execute them. Specifically, I need support for two dependency scenarios (and want the system to handle planning automatically): 1. Independent Features: Zero dependencies—execute fully in parallel. 2. Dependent Features: Partial dependencies—execute in sequence based on topological order/milestones. Questions: 1. Can OpenHands Canvas natively support this orchestrator/DAG-based workflow? If so, what is the recommended way to implement/configure it? 2. If OpenHands Canvas cannot support this out of the box, are there other AI coding frameworks or agents that can? What would you recommend, and what is their underlying execution mechanism (e.g., DAG runners, multi-agent orchestration frameworks)? Appreciate any insights or architectural recommendations!
m
I believe @average-processor-75195 has some good example :)
a
Yes! There are multiple ways to do this sort of workflow, I lay out different ways to structure it in my repo here: github.com/rajshah4/openhands-multi-agent-demo - For agent canvas, I even made a example skill for building. software factory: github.com/rajshah4/agent-canvas-sdlc-starter/blob/…/SKILL.md An easy way to think about the multiagent approach is each conversation is a different agent. You just need to decide how you want to orchestrate it, do you want a long running parent process? Or do you have a system of record like github and you should use an event based to run stuff when things happen. Where you just check in once in a while. (In both of these you can run it like a structured DAG to ensure it goes in a specific order) Let me know if this helps, happy to chat more. I have built out a few different multiagent systems using OpenHands.
FYI - just refreshed the multiagent with a few more examples - github.com/rajshah4/openhands-multi-agent-demo