feat: Enhance AutoModeService and UI for Cursor model support

- Updated AutoModeService to track model and provider for running features, improving logging and state management.
- Modified AddFeatureDialog to handle model selection for both Claude and Cursor, adjusting thinking level logic accordingly.
- Expanded ModelSelector to allow provider selection and dynamically display models based on the selected provider.
- Introduced new model constants for Cursor models, integrating them into the existing model management structure.
- Updated README and project plan to reflect the completion of task execution integration for Cursor models.
This commit is contained in:
Shirone
2025-12-28 01:43:57 +01:00
parent de11908db1
commit c90f12208f
6 changed files with 233 additions and 51 deletions

View File

@@ -312,11 +312,18 @@ export function AddFeatureDialog({
}
};
const handleModelSelect = (model: AgentModel) => {
const handleModelSelect = (model: string) => {
// For Cursor models, thinking is handled by the model itself
// For Claude models, check if it supports extended thinking
const isCursorModel = model.startsWith('cursor-');
setNewFeature({
...newFeature,
model,
thinkingLevel: modelSupportsThinking(model) ? newFeature.thinkingLevel : 'none',
model: model as AgentModel,
thinkingLevel: isCursorModel
? 'none'
: modelSupportsThinking(model)
? newFeature.thinkingLevel
: 'none',
});
};
@@ -328,7 +335,9 @@ export function AddFeatureDialog({
});
};
const newModelAllowsThinking = modelSupportsThinking(newFeature.model);
// Cursor models handle thinking internally, so only show thinking selector for Claude models
const isCursorModel = newFeature.model.startsWith('cursor-');
const newModelAllowsThinking = !isCursorModel && modelSupportsThinking(newFeature.model);
return (
<Dialog open={open} onOpenChange={handleDialogClose}>