diff --git a/src/interface/web/app/agents/page.tsx b/src/interface/web/app/agents/page.tsx index 06639e21..30d360e3 100644 --- a/src/interface/web/app/agents/page.tsx +++ b/src/interface/web/app/agents/page.tsx @@ -137,7 +137,9 @@ async function openChat(slug: string, userData: UserProfile | null) { return; } - const response = await fetch(`/api/chat/sessions?agent_slug=${slug}`, { method: "POST" }); + const response = await fetch(`/api/chat/sessions?agent_slug=${encodeURIComponent(slug)}`, { + method: "POST", + }); const data = await response.json(); if (response.status == 200) { window.location.href = `/chat?conversationId=${data.conversation_id}`; diff --git a/src/khoj/database/adapters/__init__.py b/src/khoj/database/adapters/__init__.py index 67d2bee8..9687ec01 100644 --- a/src/khoj/database/adapters/__init__.py +++ b/src/khoj/database/adapters/__init__.py @@ -826,7 +826,7 @@ class ConversationAdapters: user: KhojUser, client_application: ClientApplication = None, agent_slug: str = None, title: str = None ): if agent_slug: - agent = await AgentAdapters.aget_agent_by_slug(agent_slug, user) + agent = await AgentAdapters.aget_readonly_agent_by_slug(agent_slug, user) if agent is None: raise HTTPException(status_code=400, detail="No such agent currently exists.") return await Conversation.objects.acreate(user=user, client=client_application, agent=agent, title=title) @@ -838,7 +838,7 @@ class ConversationAdapters: user: KhojUser, client_application: ClientApplication = None, agent_slug: str = None, title: str = None ): if agent_slug: - agent = AgentAdapters.get_agent_by_slug(agent_slug, user) + agent = AgentAdapters.aget_readonly_agent_by_slug(agent_slug, user) if agent is None: raise HTTPException(status_code=400, detail="No such agent currently exists.") return Conversation.objects.create(user=user, client=client_application, agent=agent, title=title)