feat(input): unify command registry and user input dispatch#171
Merged
duguwanglong merged 3 commits intomainfrom Apr 24, 2026
Merged
feat(input): unify command registry and user input dispatch#171duguwanglong merged 3 commits intomainfrom
duguwanglong merged 3 commits intomainfrom
Conversation
added 2 commits
April 23, 2026 15:47
Introduce flocks.input with UserInputEvent, ParsedCommand, OutputSink, and dispatch_user_input as the shared path for WebUI, TUI, CLI, channel, and ACP. Extend CommandDef/CommandRegistry metadata; refactor session routes and inbound channel handling to delegate parsing and direct/LLM/session_control routing to the dispatcher. Wire CLI session_runner, Rex prompt hint, misc/skill routes, dev.sh, and frontend API/prompt behavior to the unified model. Add tests/server/test_input_dispatcher.py and extend channel/bash tests. Made-with: Cursor
Remove redundant CLI /restart wiring in favor of unified command handling. Drop unused input output helpers; small session/channel dispatcher tweaks. Add coverage for channel inbound, input dispatcher, and workflows command. Made-with: Cursor
duguwanglong
approved these changes
Apr 24, 2026
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
Unifies slash/command handling across WebUI, TUI, CLI, channel, and ACP by introducing
flocks.input(UserInputEvent,dispatch_user_input,OutputSink) and extendingCommandDef/CommandRegistry.Follow-up commit
Removes redundant CLI
/restartwiring, trims unused helpers, and expands channel / input dispatcher / workflows tests.Testing
tests/channel/test_channel.py,tests/server/test_input_dispatcher.py,tests/command/test_workflows_command.py