feat(subagents): add TUI slash subagent runtime browser#2463
feat(subagents): add TUI slash subagent runtime browser#2463JimmyDaddy wants to merge 6 commits into
Conversation
d23b367 to
f47c394
Compare
af628d0 to
08d1df8
Compare
|
Took this for a thorough pass — the architecture is sound: the slash-subagent surface is strictly user-invoked, One blocker before this can land: it fails The tests use Could you:
Given the size (+5957/45 files), I'll also want to walk through |
Thanks for the careful pass - I've pushed an update for the Windows blocker. What changed:
Validation run locally:
|
6584053 to
80b0d26
Compare
|
@esengine latest conflicts are resolved again and the branch is back to a clean, mergeable state. Before I keep chasing If the overall direction looks good, I'd really appreciate a review pass and any design feedback you have, especially on the TUI-only If this is not a direction you want to take, no worries at all — a short "not aligned" reply is enough and I can close the PR instead of continuing to carry the merge burden. Thanks. |
|
Status update after today's merge batch: this now conflicts in 14 files, including the heavy ones your deltas live in (controller.go, chat_tui.go, boot.go, the i18n catalogues — #3186 touched the same Submit switch). The direction still stands from the earlier pass — strictly user-invoked /name subagents through the skill runner is exactly the accepted shape — so a rebase onto current main-v2 is the only blocker; ping me when it's up and I'll do the full line review. Two notes for that round: watch internal/cli/subagents.go (684 lines, ceiling is 800), and controller.go keeps growing past the ceiling, so the PR description should carry a split plan per repo policy. |
8672196 to
4601a9c
Compare
|
@esengine rebased/rebuilt this PR onto current I also updated the PR description with the requested split plan:
Ready for the full line review when you have bandwidth. If the behavior/design direction should change further, please call that out and I can adjust. |
…h-commands-go # Conflicts: # internal/boot/boot_test.go # internal/control/slash.go # internal/control/slash_test.go # internal/i18n/i18n.go # internal/i18n/messages_en.go # internal/i18n/messages_zh.go
…h-commands-go # Conflicts: # internal/boot/boot.go # internal/control/controller.go # internal/control/controller_test.go # internal/jobs/jobs.go
…h-commands-go # Conflicts: # internal/control/input.go # internal/control/slash.go # internal/i18n/i18n.go # internal/i18n/messages_en.go # internal/i18n/messages_zh.go # internal/i18n/messages_zh_tw.go
…h-commands-go # Conflicts: # internal/boot/boot.go # internal/control/controller.go # internal/control/input.go
What
Ports the custom slash command + slash-subagent workflow to the Go implementation, with runtime management UI scoped to the TUI.
Skill and command infrastructure
disable-model-invocation: trueso skills can remain slash-invokable while staying out of the model prompt index..reasonix/agents/and.claude/agents/asrunAs=subagentslash skills, including CJK file names./nameslash commands, and run through the skill subagent runner.TUI slash subagents
/subagentsis the TUI task-center entrypoint for active and retained slash-subagent runs./subagents cancel <id-or-alias>and/subagents clear [completed|failed|canceled|all]remain controller-backed management commands.cancelandclear, and the task-center list view supports filter mode via/.Ctrl-O; terminal states auto-expand so the final answer is visible in full./subagentspicker, controller, and slash-completion copy throughinternal/i18n.Desktop scope
/explorevisible./subagentsfrom command autocomplete and blocks hand-entered/subagentsruntime-management commands with a localized TUI-only notice.ListSubagents,SubagentDetail, orCancelSubagentbindings in this slice.Rebase Notes
upstream/main-v2(4c5fec61) as4601a9c0; no merge commit remains on the PR branch./namesubagents through the skill runner.MERGEABLE(BLOCKEDonly by normal branch protection/checks).Split Plan
internal/cli/subagents.gois currently 684 lines, below the 800-line ceiling, so this PR keeps it intact.internal/control/controller.gois currently 3203 lines and remains above the repo ceiling. To keep this review focused on the accepted behavior, this PR keeps the remaining controller wiring local while already moving retained runtime/text helpers intointernal/control/subagent_*.go.controller.gointo narrower control files, leavingSubmitas a small dispatch branch and controller-owned runtime helpers grouped by subagent lifecycle.Tests
Latest rebase verification:
gofmt -l .git diff --checkGOPROXY=https://proxy.golang.org,direct go test ./...cd desktop && GOPROXY=https://proxy.golang.org,direct go test ./...Ref
docs/SLASH_SUBAGENT_DESIGN.md