-
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or requestpriorityImportant work that should be tackled soonImportant work that should be tackled soon
Description
Problem
The get command still has avoidable UX friction:
- instance selection requires
-I/--instance, while many users expect positional usage such as99problems get jira -i 25. -q/--querycommonly requires quoting the full query string, which is awkward and makes mixed quote content harder.
This increases command complexity for frequent use and onboarding.
Design
Implement a focused CLI simplification pass:
- support instance alias as optional first positional argument (
99problems get <instance> ...), - keep
-I/--instancefor backward compatibility in this phase, - make
-q/--queryaccept multiple unquoted tokens until the next flag and join them with spaces, - keep shell quoting semantics unchanged.
Scope
- Add optional positional instance alias to
get. - Preserve
-I/--instancesupport. - Define conflict behavior when both positional and
-Iare provided:- same value => allowed,
- different values => usage error.
- Update
-q/--queryparsing to multi-token capture and token joining. - Update help/man/README examples for positional instance and unquoted query usage.
- Add parser/regression tests for new CLI behavior.
Boundary
- No removal of
-I/--instancein this issue. - No positional platform support in this issue (positional is instance-only).
- No custom quote interpretation layer beyond normal shell behavior.
- No additional CLI redesign outside instance/query simplification.
Acceptance Criteria
99problems get jira -i 25works as expected.99problems get -I jira -i 25remains valid.- If positional instance and
-Iconflict, command fails with clear usage guidance. 99problems get -q is:issue state:open architectural --no-commentsparses and executes with full query content.- Existing non-targeted
getbehaviors remain unchanged. - Tests and pedantic clippy checks pass.
Context
This is a small, high-impact CLI ergonomics improvement that keeps compatibility while moving toward lower-friction command usage.
- clap derive docs: https://docs.rs/clap/latest/clap/_derive/_tutorial/index.html
- GitHub CLI UX reference: https://cli.github.com/manual/
Reactions are currently unavailable
Metadata
Metadata
Labels
enhancementNew feature or requestNew feature or requestpriorityImportant work that should be tackled soonImportant work that should be tackled soon