fix suna install on oauth

This commit is contained in:
Saumya 2025-07-23 14:52:44 +05:30
parent 6b99777265
commit 030ffe23a3
2 changed files with 9 additions and 16 deletions

View File

@ -39,7 +39,7 @@ class SunaDefaultAgentService:
}
async def install_suna_agent_for_user(self, account_id: str, replace_existing: bool = False) -> Optional[str]:
logger.info(f"🔄 Delegating single user installation to modular service: {account_id}")
logger.info(f"🔄 Installing Suna agent for user: {account_id}")
try:
if replace_existing:
@ -54,16 +54,15 @@ class SunaDefaultAgentService:
if existing:
logger.info(f"User {account_id} already has Suna agent: {existing.agent_id}")
return existing.agent_id
current_config = self._sync_service.config_manager.get_current_config()
result = await self._sync_service._install_for_user(account_id, current_config)
agent_id = await self._sync_service.repository.create_suna_agent_simple(
account_id,
current_config.version_tag
)
if result.success:
logger.info(f"Successfully installed Suna agent {result.agent_id} for user {account_id}")
return result.agent_id
else:
logger.error(f"Failed to install Suna for user {account_id}: {result.error_message}")
return None
logger.info(f"Successfully installed Suna agent {agent_id} for user {account_id}")
return agent_id
except Exception as e:
logger.error(f"Error in install_suna_agent_for_user: {e}")

View File

@ -188,29 +188,23 @@ export const ChatInput = forwardRef<ChatInputHandles, ChatInputProps>(
}));
useEffect(() => {
if (typeof window !== 'undefined' && onAgentSelect && !hasLoadedFromLocalStorage.current) {
if (typeof window !== 'undefined' && onAgentSelect && !hasLoadedFromLocalStorage.current && agents.length > 0) {
const urlParams = new URLSearchParams(window.location.search);
const hasAgentIdInUrl = urlParams.has('agent_id');
if (!selectedAgentId && !hasAgentIdInUrl) {
const savedAgentId = localStorage.getItem('lastSelectedAgentId');
if (savedAgentId) {
if (savedAgentId === 'suna') {
const defaultSunaAgent = agents.find(agent => agent.metadata?.is_suna_default);
if (defaultSunaAgent) {
console.log('Loading saved Suna agent from localStorage, using actual ID:', defaultSunaAgent.agent_id);
onAgentSelect(defaultSunaAgent.agent_id);
} else {
console.log('Saved Suna agent not found, keeping undefined');
onAgentSelect(undefined);
}
} else {
console.log('Loading saved agent from localStorage:', savedAgentId);
onAgentSelect(savedAgentId);
}
} else {
console.log('No saved agent found in localStorage, selecting default Suna agent');
// Find the default Suna agent
const defaultSunaAgent = agents.find(agent => agent.metadata?.is_suna_default);
if (defaultSunaAgent) {
console.log('Auto-selecting default Suna agent:', defaultSunaAgent.agent_id);