It would be great to get Sub-agents in the GUI: <h...
# proj-agent-canvas
e
It would be great to get Sub-agents in the GUI: https://github.com/OpenHands/OpenHands/pull/13691
l
Do we have a design for it yet?
I think the design is probably the hard part
e
Why couldn;t the sub-agents show up as events in the conversation timeline?
I actually provided an example in the original issue: https://github.com/OpenHands/OpenHands/issues/13030
l
Ah, that's one design! I think that could work. One follow-up question is do you know if we currently make it possible for users to specify that they want to use sub-agents in the UI? I implemented the settings so I should know this, but I actually don't know about that part.
Maybe it's a good question for @modern-fireman-99755
e
I think if the workspace has ~/.agents/agents/ then it should be able to call existing markdown-based agents. Alternatively, I think OPenHands can dynamically create sub-agents to help perform tasks.
l
OK, got it, thanks!
m
Sub-agents are not currently usable in the app server. The main issue is that: 1. The app server calls
get_default_tools(enable_browser=True)
at line 1375 in
live_status_app_conversation_service.py
2. This call does NOT pass
enable_sub_agents=True
, so the
TaskToolSet
is never included in the tools list 3. Therefore, users cannot delegate tasks to sub-agents through the web UI There is already an open PR to enable them: https://github.com/OpenHands/OpenHands/pull/14122 (@chilly-france-44439) Moreover, an
enable_sub_agents
field to
OpenHandsAgentSettings
was already added (see https://github.com/OpenHands/software-agent-sdk/pull/2948), this means we can decide if use or not subagents in convo. Once #14122 is merged, we can give the possibility to the users to: 1. Go to Settings → Enable "Enable sub-agents" toggle 2. In new conversations, the agent will have access to the
task
tool 3. The agent can delegate tasks to built-in sub-agents (bash-runner, code-explorer, etc.) (another small PR for that)
I think if the workspace has ~/.agents/agents/ then it should be able to call existing markdown-based agents. Alternatively, I think OPenHands can dynamically create sub-agents to help perform tasks.
You have already 3 subagents as default so you don't need to have a
.agents
directory. Actually, the main agent cannot create sub-agents at runtime. We could also give the user the possibility to create custom subagents in the UI. But this will require more time to implement. Should I enable sub-agents in the UI? @chilly-france-44439 should I take over your PR?
l
I think if it's a small amount of work and off by default then it seems like a good idea to do this!
c
ah sorry forgot about that PR, tweaking the agent right now
ty 2
@modern-fireman-99755 that PR is merged 🙂
🙏 1