@@ -406,10 +408,7 @@ export function AgentModelSelector({
className
)}
>
-
-
- {/* API models are quality controlled - no low quality warning needed */}
-
+
{selectedModelDisplay}
)}
@@ -509,7 +508,8 @@ export function AgentModelSelector({
)}
onClick={() => handleSelect(model.id)}
>
-
+
+
{model.label}
diff --git a/frontend/src/components/agents/triggers/providers/simplified-schedule-config.tsx b/frontend/src/components/agents/triggers/providers/simplified-schedule-config.tsx
index a27d2cc6..9cc68bc1 100644
--- a/frontend/src/components/agents/triggers/providers/simplified-schedule-config.tsx
+++ b/frontend/src/components/agents/triggers/providers/simplified-schedule-config.tsx
@@ -34,7 +34,7 @@ import { format } from 'date-fns';
import { cn } from '@/lib/utils';
import { TriggerProvider, ScheduleTriggerConfig } from '../types';
import { useAgentWorkflows } from '@/hooks/react-query/agents/use-agent-workflows';
-import { AgentSelectionDropdown } from '@/components/agents/agent-selection-dropdown';
+import { AgentSelector } from '@/components/agents/agent-selector';
interface SimplifiedScheduleConfigProps {
provider: TriggerProvider;
@@ -512,7 +512,7 @@ export const SimplifiedScheduleConfig: React.FC =
-
= memo(function LoggedInMen
}, [selectedAgentId, displayAgent?.agent_id]);
const renderAgentIcon = useCallback((agent: any) => {
- return ;
+ return ;
}, []);
const currentAgentIdForPlaybooks = isLoggedIn ? displayAgent?.agent_id || '' : '';
diff --git a/frontend/src/components/thread/content/ThreadContent.tsx b/frontend/src/components/thread/content/ThreadContent.tsx
index b9f60750..df1d1c7f 100644
--- a/frontend/src/components/thread/content/ThreadContent.tsx
+++ b/frontend/src/components/thread/content/ThreadContent.tsx
@@ -790,7 +790,7 @@ export const ThreadContent: React.FC = ({
{groupAgentId ? (
-
+
) : (
getAgentInfo().avatar
)}
diff --git a/frontend/src/components/triggers/trigger-creation-dialog.tsx b/frontend/src/components/triggers/trigger-creation-dialog.tsx
index a02fbee6..801d432b 100644
--- a/frontend/src/components/triggers/trigger-creation-dialog.tsx
+++ b/frontend/src/components/triggers/trigger-creation-dialog.tsx
@@ -15,7 +15,7 @@ import { SimplifiedScheduleConfig } from '@/components/agents/triggers/providers
import { ScheduleTriggerConfig } from '@/components/agents/triggers/types';
import { useCreateTrigger, useUpdateTrigger } from '@/hooks/react-query/triggers';
import { toast } from 'sonner';
-import { AgentSelectionDropdown } from '@/components/agents/agent-selection-dropdown';
+import { AgentSelector } from '@/components/agents/agent-selector';
interface TriggerCreationDialogProps {
open: boolean;
@@ -148,7 +148,7 @@ export function TriggerCreationDialog({
-
1) {
+ const provider = parts[0].toLowerCase();
+ if (['openai', 'anthropic', 'google', 'xai', 'moonshotai', 'bedrock', 'openrouter'].includes(provider)) {
+ return provider as ModelProvider;
+ }
+ }
+
+ return 'openai'; // Default fallback
+}
+
+/**
+ * Component to render the model provider icon
+ */
+interface ModelProviderIconProps {
+ modelId: string;
+ size?: number;
+ className?: string;
+ variant?: 'default' | 'compact';
+}
+
+export function ModelProviderIcon({
+ modelId,
+ size = 24, // Default to 24px for better visibility
+ className = '',
+ variant = 'default'
+}: ModelProviderIconProps) {
+ const provider = getModelProvider(modelId);
+
+ const iconMap: Record = {
+ anthropic: '/images/models/Anthropic.svg',
+ openai: '/images/models/OAI.svg',
+ google: '/images/models/Gemini.svg',
+ xai: '/images/models/Grok.svg',
+ moonshotai: '/images/models/Moonshot.svg',
+ bedrock: '/images/models/Anthropic.svg', // Bedrock uses Anthropic models primarily
+ openrouter: '/images/models/OAI.svg', // Default to OpenAI icon for OpenRouter
+ };
+
+ const iconSrc = iconMap[provider];
+
+ // Calculate responsive border radius - proportional to size (matching AgentAvatar)
+ const borderRadiusStyle = {
+ borderRadius: `${Math.min(size * 0.25, 16)}px` // 25% of size, max 16px
+ };
+
+ if (!iconSrc) {
+ return (
+
+
+
+ );
+ }
+
+ return (
+
+
+
+ );
+}
+
+/**
+ * Get the provider display name
+ */
+export function getModelProviderName(modelId: string): string {
+ const provider = getModelProvider(modelId);
+
+ const nameMap: Record = {
+ anthropic: 'Anthropic',
+ openai: 'OpenAI',
+ google: 'Google',
+ xai: 'xAI',
+ moonshotai: 'Moonshot AI',
+ bedrock: 'AWS Bedrock',
+ openrouter: 'OpenRouter',
+ };
+
+ return nameMap[provider] || 'Unknown';
+}