Merged
Conversation
Each subagent now renders on its own line instead of being joined with " | " on a single row. This prevents truncation of agent names and makes parallel agent activity easier to scan. - Add ExtraLines field to WidgetResult for multi-row widget output - Agents widget puts first agent in main result, rest in ExtraLines - Render pipeline emits ExtraLines with ANSI reset + truncation - Remove fixed agent name width cap (render pipeline handles overflow) - Fix pre-commit go-vet hook to work in git worktrees Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the HUD renderer so parallel subagents are displayed as a vertical stack (one agent per line) rather than a single horizontally-joined segment, and adjusts tooling config for go vet in worktrees.
Changes:
- Add multi-line support to widget results via
WidgetResult.ExtraLinesand emit those extra lines fromRender(). - Update the agents widget to return the first agent as the main segment and additional agents as
ExtraLines(removing widget-level name width capping / “+N more” behavior). - Switch pre-commit
go-vethook to a local/system hook for worktree compatibility.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
internal/render/widget/agents.go |
Switch agents rendering to vertical stacking using ExtraLines and remove fixed name truncation. |
internal/render/widget/widget.go |
Extend WidgetResult with ExtraLines for multi-row widget output. |
internal/render/render.go |
Emit ExtraLines after the main rendered line, applying truncation per extra line. |
internal/render/widget/widget_test.go |
Update agents widget tests to validate stacking/ExtraLines behavior. |
internal/render/widget/agents_test.go |
Rewrite agents tests around stacked output and removal of widget-level truncation. |
.pre-commit-config.yaml |
Replace go-vet hook with a repo: local system hook. |
Comments suppressed due to low confidence (1)
internal/render/widget/widget.go:37
- WidgetResult.IsEmpty() ignores ExtraLines. With the new multi-line capability, a widget could legitimately have empty Text/PlainText but non-empty ExtraLines and still be considered "empty" (and therefore skipped). Update IsEmpty to also consider len(ExtraLines) == 0.
// IsEmpty reports whether the result has no content to display.
func (w WidgetResult) IsEmpty() bool {
return w.Text == "" && w.PlainText == ""
}
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Change ExtraLines from []string to []WidgetResult so the render pipeline applies mode-appropriate styling to each extra line - Remove dead truncateAgentName function and its tests - Add render pipeline integration test covering all three modes Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Update Agents() doc comment to reflect FgColor is now set - Add non-empty assertions to MaxFiveTotal tests in both test files Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
" | ", making parallel agent activity much easier to readgo-vethook to work correctly in git worktrees by using a local system hook instead of the archiveddnephin/pre-commit-golanggo-vetTest plan
make checkpasses (fmt + vet + tests)make test-racepasses🤖 Generated with Claude Code