@@ -28,6 +28,8 @@ export function ClaudeSection({
2828 const modelOptions = activeProvider ?. models ?? [ ] ;
2929 const effortOptions = activeProvider ?. effortLevels ?? [ ] ;
3030 const permissionOptions = activeProvider ?. permissionModes ?? [ ] ;
31+ const isClaude = claude . vaultProvider === "claude" ;
32+ const allowsProviderDefaultModel = ! isClaude ;
3133 // Show provider-specific settings only when the provider declares capabilities.
3234 const hasProviderOptions =
3335 modelOptions . length > 0 ||
@@ -69,6 +71,9 @@ export function ClaudeSection({
6971 onChange = { ( e ) => onChange ( { model : e . target . value } ) }
7072 className = "w-32 sm:w-48 bg-secondary border border-border px-2.5 py-1.5 text-xs font-mono text-foreground focus:outline-none focus:border-primary/50 transition-colors appearance-none cursor-pointer"
7173 >
74+ { allowsProviderDefaultModel && (
75+ < option value = "" > — provider default —</ option >
76+ ) }
7277 { modelOptions . map ( ( m ) => (
7378 < option key = { m . value } value = { m . value } >
7479 { m . label }
@@ -160,7 +165,7 @@ export function ClaudeSection({
160165 ) }
161166 < Field
162167 label = "Max turns"
163- hint = "max turns Claude can run, blank means no limit"
168+ hint = "max turns the provider can run, blank means no limit"
164169 >
165170 < input
166171 type = "number"
@@ -183,7 +188,7 @@ export function ClaudeSection({
183188 </ Field >
184189 < Field
185190 label = "Turn recaps"
186- hint = "generate a brief Haiku summary after turns with tool use"
191+ hint = "generate a brief summary after turns with tool use"
187192 >
188193 < label className = "flex items-center gap-2 cursor-pointer" >
189194 < input
@@ -201,30 +206,32 @@ export function ClaudeSection({
201206 onChange = { ( e ) => onChange ( { recapModel : e . target . value } ) }
202207 className = "w-32 sm:w-48 bg-secondary border border-border px-2.5 py-1.5 text-xs font-mono text-foreground focus:outline-none focus:border-primary/50 transition-colors appearance-none cursor-pointer"
203208 >
204- < option value = "" > — default (haiku) —</ option >
209+ < option value = "" > — provider default —</ option >
205210 { modelOptions . map ( ( m ) => (
206211 < option key = { m . value } value = { m . value } >
207212 { m . label }
208213 </ option >
209214 ) ) }
210215 </ select >
211216 </ Field >
212- < Field
213- label = "Interactive mode"
214- hint = "to not go against your "programmatic" usage, if you desire"
215- >
216- < label className = "flex items-center gap-2 cursor-pointer" >
217- < input
218- type = "checkbox"
219- checked = { claude . interactiveMode }
220- onChange = { ( e ) =>
221- onChange ( { interactiveMode : e . target . checked } )
222- }
223- className = "w-3.5 h-3.5 accent-primary"
224- />
225- < span className = "text-xs text-muted-foreground" > enabled</ span >
226- </ label >
227- </ Field >
217+ { isClaude && (
218+ < Field
219+ label = "Interactive mode"
220+ hint = "to not go against your "programmatic" usage, if you desire"
221+ >
222+ < label className = "flex items-center gap-2 cursor-pointer" >
223+ < input
224+ type = "checkbox"
225+ checked = { claude . interactiveMode }
226+ onChange = { ( e ) =>
227+ onChange ( { interactiveMode : e . target . checked } )
228+ }
229+ className = "w-3.5 h-3.5 accent-primary"
230+ />
231+ < span className = "text-xs text-muted-foreground" > enabled</ span >
232+ </ label >
233+ </ Field >
234+ ) }
228235 </ >
229236 ) }
230237 </ Section >
0 commit comments