import { useMemo, useState } from 'react'; import type { AgentCategory, AgentProvider } from '../../../types/types'; import AgentCategoryContentSection from './sections/AgentCategoryContentSection'; import AgentCategoryTabsSection from './sections/AgentCategoryTabsSection'; import AgentSelectorSection from './sections/AgentSelectorSection'; import type { AgentContext, AgentsSettingsTabProps } from './types'; export default function AgentsSettingsTab({ claudeAuthStatus, cursorAuthStatus, codexAuthStatus, geminiAuthStatus, onClaudeLogin, onCursorLogin, onCodexLogin, onGeminiLogin, claudePermissions, onClaudePermissionsChange, cursorPermissions, onCursorPermissionsChange, codexPermissionMode, onCodexPermissionModeChange, geminiPermissionMode, onGeminiPermissionModeChange, mcpServers, cursorMcpServers, codexMcpServers, mcpTestResults, mcpServerTools, mcpToolsLoading, deleteError, onOpenMcpForm, onDeleteMcpServer, onTestMcpServer, onDiscoverMcpTools, onOpenCodexMcpForm, onDeleteCodexMcpServer, }: AgentsSettingsTabProps) { const [selectedAgent, setSelectedAgent] = useState('claude'); const [selectedCategory, setSelectedCategory] = useState('account'); const agentContextById = useMemo>(() => ({ claude: { authStatus: claudeAuthStatus, onLogin: onClaudeLogin, }, cursor: { authStatus: cursorAuthStatus, onLogin: onCursorLogin, }, codex: { authStatus: codexAuthStatus, onLogin: onCodexLogin, }, gemini: { authStatus: geminiAuthStatus, onLogin: onGeminiLogin, }, }), [ claudeAuthStatus, codexAuthStatus, cursorAuthStatus, geminiAuthStatus, onClaudeLogin, onCodexLogin, onCursorLogin, onGeminiLogin, ]); return (
); }