feat: TUI Dashboards for Mixture of Agents and Subagent Delegation#1
Conversation
This commit implements highly aesthetic, information-dense TUI visualizers utilizing `rich.live` for the `mixture_of_agents` and `delegate_task` tools. For `mixture_of_agents`: - Added a `MoAStateUI` class that tracks the state (pending, running, complete, error) of the multiple parallel reference models and the aggregator model. - Shows completion times and character counts. - Displays a total progress bar across the 2-stage execution flow. - Pauses the main parent `KawaiiSpinner` safely and avoids terminal breakage by restoring states in `finally` blocks. For `delegate_task`: - Added `DelegateUIState` to track subagent executions. - Live renders a table that shows task titles, current subagent status, elapsed time, current tool being called, and total API calls for each task running in the concurrent thread pool. - Gracefully patches into the `_callback` architecture of `delegate_tool.py` to seamlessly receive UI updates from the underlying execution without polluting the terminal logs.
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
This PR adds "rich" terminal visualizers to the highest ROI tools lacking adequate visual feedback:
mixture_of_agentsanddelegate_task.Both tools spawn concurrent long-running operations where the user is left waiting with minimal information. The new updates pause the standard
KawaiiSpinnerand inject dynamic live-updatingrichtables that display parallel model runs, subagent task progress, current tool actions, completion timers, character counts, and total progress bars. The UI aligns strictly with Hermes Agent's retro terminal aesthetic (yellow accents, symbols, compact view).PR created automatically by Jules for task 2474914345810546919 started by @bg-l2norm