File tree Expand file tree Collapse file tree 1 file changed +6
-3
lines changed
Expand file tree Collapse file tree 1 file changed +6
-3
lines changed Original file line number Diff line number Diff line change @@ -85,8 +85,11 @@ function _forge_action_provider() {
8585 # Extract the second field (provider ID) from the selected line
8686 # Format: "DisplayName provider_id host type status"
8787 local provider_id=$( echo " $selected " | awk ' {print $2}' )
88- # Always use config set - it will handle authentication if needed
89- _forge_exec config set provider " $provider_id "
88+ # Use _forge_exec_interactive because config-set may trigger
89+ # interactive authentication prompts (rustyline) when the provider
90+ # is not yet configured. Without /dev/tty redirection, ZLE's pipes
91+ # cause rustyline to see EOF and fail with "API key input cancelled".
92+ _forge_exec_interactive config set provider " $provider_id "
9093 fi
9194}
9295
@@ -158,7 +161,7 @@ function _forge_action_model() {
158161 local current_provider
159162 current_provider=$( _forge_exec config get provider --porcelain 2> /dev/null)
160163 if [[ -n " $provider_display " && " $provider_display " != " $current_provider " ]]; then
161- _forge_exec config set provider " $provider_id "
164+ _forge_exec_interactive config set provider " $provider_id "
162165 fi
163166
164167 _forge_exec config set model " $model_id "
You can’t perform that action at this time.
0 commit comments