From 80212c50fdbaa09a9b0e692695c601812cabbe5d Mon Sep 17 00:00:00 2001 From: Debanjum Singh Solanky Date: Tue, 8 Oct 2024 21:59:48 -0700 Subject: [PATCH] Use default agent in others chats with an agent if agent made private If a public or protected agent is made private. Other users who were having conversation with that agent will have to carry on their conversation using default agent instead --- src/khoj/routers/api_chat.py | 38 +++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 16 deletions(-) diff --git a/src/khoj/routers/api_chat.py b/src/khoj/routers/api_chat.py index f8f534ae..4acefe30 100644 --- a/src/khoj/routers/api_chat.py +++ b/src/khoj/routers/api_chat.py @@ -209,14 +209,17 @@ def chat_history( agent_metadata = None if conversation.agent: - agent_metadata = { - "slug": conversation.agent.slug, - "name": conversation.agent.name, - "isCreator": conversation.agent.creator == user, - "color": conversation.agent.style_color, - "icon": conversation.agent.style_icon, - "persona": conversation.agent.personality, - } + if conversation.agent.privacy_level == Agent.PrivacyLevel.PRIVATE: + conversation.agent = None + else: + agent_metadata = { + "slug": conversation.agent.slug, + "name": conversation.agent.name, + "isCreator": conversation.agent.creator == user, + "color": conversation.agent.style_color, + "icon": conversation.agent.style_icon, + "persona": conversation.agent.personality, + } meta_log = conversation.conversation_log meta_log.update( @@ -265,14 +268,17 @@ def get_shared_chat( agent_metadata = None if conversation.agent: - agent_metadata = { - "slug": conversation.agent.slug, - "name": conversation.agent.name, - "isCreator": conversation.agent.creator == user, - "color": conversation.agent.style_color, - "icon": conversation.agent.style_icon, - "persona": conversation.agent.personality, - } + if conversation.agent.privacy_level == Agent.PrivacyLevel.PRIVATE: + conversation.agent = None + else: + agent_metadata = { + "slug": conversation.agent.slug, + "name": conversation.agent.name, + "isCreator": conversation.agent.creator == user, + "color": conversation.agent.style_color, + "icon": conversation.agent.style_icon, + "persona": conversation.agent.personality, + } meta_log = conversation.conversation_log scrubbed_title = conversation.title if conversation.title else conversation.slug