mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-02-06 22:03:07 +00:00
feat: enhance adaptive thinking model support and update UI components
- Added `isAdaptiveThinkingModel` utility to improve model identification logic in the AddFeatureDialog. - Updated the ThinkingLevelSelector to conditionally display information based on available thinking levels. - Enhanced model name formatting in agent-context-parser to include 'GPT-5.3 Codex' for better clarity. These changes improve the user experience by refining model handling and UI feedback related to adaptive thinking capabilities.
This commit is contained in:
@@ -28,7 +28,7 @@ import { cn } from '@/lib/utils';
|
|||||||
import { modelSupportsThinking } from '@/lib/utils';
|
import { modelSupportsThinking } from '@/lib/utils';
|
||||||
import { useAppStore, ThinkingLevel, FeatureImage, PlanningMode, Feature } from '@/store/app-store';
|
import { useAppStore, ThinkingLevel, FeatureImage, PlanningMode, Feature } from '@/store/app-store';
|
||||||
import type { ReasoningEffort, PhaseModelEntry, AgentModel } from '@automaker/types';
|
import type { ReasoningEffort, PhaseModelEntry, AgentModel } from '@automaker/types';
|
||||||
import { supportsReasoningEffort } from '@automaker/types';
|
import { supportsReasoningEffort, isAdaptiveThinkingModel } from '@automaker/types';
|
||||||
import {
|
import {
|
||||||
PrioritySelector,
|
PrioritySelector,
|
||||||
WorkModeSelector,
|
WorkModeSelector,
|
||||||
@@ -266,8 +266,7 @@ export function AddFeatureDialog({
|
|||||||
const handleModelChange = (entry: PhaseModelEntry) => {
|
const handleModelChange = (entry: PhaseModelEntry) => {
|
||||||
// Normalize thinking level when switching between adaptive and non-adaptive models
|
// Normalize thinking level when switching between adaptive and non-adaptive models
|
||||||
const isNewModelAdaptive =
|
const isNewModelAdaptive =
|
||||||
entry.model === 'claude-opus' ||
|
typeof entry.model === 'string' && isAdaptiveThinkingModel(entry.model);
|
||||||
(typeof entry.model === 'string' && entry.model.includes('opus-4-6'));
|
|
||||||
const currentLevel = entry.thinkingLevel || 'none';
|
const currentLevel = entry.thinkingLevel || 'none';
|
||||||
|
|
||||||
if (isNewModelAdaptive && currentLevel !== 'none' && currentLevel !== 'adaptive') {
|
if (isNewModelAdaptive && currentLevel !== 'none' && currentLevel !== 'adaptive') {
|
||||||
|
|||||||
@@ -46,7 +46,7 @@ export function ThinkingLevelSelector({
|
|||||||
))}
|
))}
|
||||||
</div>
|
</div>
|
||||||
<p className="text-xs text-muted-foreground">
|
<p className="text-xs text-muted-foreground">
|
||||||
{model && getThinkingLevelsForModel(model).includes('adaptive')
|
{levels.includes('adaptive')
|
||||||
? 'Adaptive thinking lets the model decide how much reasoning to use.'
|
? 'Adaptive thinking lets the model decide how much reasoning to use.'
|
||||||
: 'Higher levels give more time to reason through complex problems.'}
|
: 'Higher levels give more time to reason through complex problems.'}
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -40,6 +40,7 @@ export function formatModelName(model: string): string {
|
|||||||
if (model.includes('haiku')) return 'Haiku 4.5';
|
if (model.includes('haiku')) return 'Haiku 4.5';
|
||||||
|
|
||||||
// Codex/GPT models - specific formatting
|
// Codex/GPT models - specific formatting
|
||||||
|
if (model === 'codex-gpt-5.3-codex') return 'GPT-5.3 Codex';
|
||||||
if (model === 'codex-gpt-5.2-codex') return 'GPT-5.2 Codex';
|
if (model === 'codex-gpt-5.2-codex') return 'GPT-5.2 Codex';
|
||||||
if (model === 'codex-gpt-5.2') return 'GPT-5.2';
|
if (model === 'codex-gpt-5.2') return 'GPT-5.2';
|
||||||
if (model === 'codex-gpt-5.1-codex-max') return 'GPT-5.1 Max';
|
if (model === 'codex-gpt-5.1-codex-max') return 'GPT-5.1 Max';
|
||||||
|
|||||||
Reference in New Issue
Block a user