Say what you want in plain English. qsh looks at the project you’re in, proposes a shell command, and runs nothing until you approve it. If the command fails, a bare ? sends the error back for another try. It works with multiple AI models.
$? push this branch
git push
Run? [Y]es [N]o [E]dit [R]efine [?] y
fatal: The current branch login-page has no upstream branch.
$?
retrying: push this branch
git push -u origin login-page
Run? [Y]es [N]o [E]dit [R]efine [?]
Your move: y, n, e or r.