khoj 1.26.5.dev35__py3-none-any.whl → 1.26.5.dev43__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. khoj/interface/compiled/404/index.html +1 -1
  2. khoj/interface/compiled/_next/static/chunks/app/agents/{page-adbf3cd470da248f.js → page-5ae1e540bb5be8a9.js} +1 -1
  3. khoj/interface/compiled/_next/static/chunks/app/automations/{page-d3edae545a1b5393.js → page-774ae3e033f938cd.js} +1 -1
  4. khoj/interface/compiled/_next/static/chunks/app/chat/{page-460d262a3ef77503.js → page-97f5b61aaf46d364.js} +1 -1
  5. khoj/interface/compiled/_next/static/chunks/app/factchecker/{page-c8e5bd563a8155eb.js → page-d82403db2866bad8.js} +1 -1
  6. khoj/interface/compiled/_next/static/chunks/app/{page-337bba1c554d0742.js → page-58357cd206c50a83.js} +1 -1
  7. khoj/interface/compiled/_next/static/chunks/app/search/{page-a5c277eff207959e.js → page-9b64f61caa5bd7f9.js} +1 -1
  8. khoj/interface/compiled/_next/static/chunks/app/settings/{page-60097571dd9f9d37.js → page-7a8c382af2a7e870.js} +1 -1
  9. khoj/interface/compiled/_next/static/chunks/app/share/chat/{page-97c4e60105009649.js → page-eb9e282691858f2e.js} +1 -1
  10. khoj/interface/compiled/_next/static/chunks/{webpack-35c06f544e18305f.js → webpack-2c4ce09149d3279a.js} +1 -1
  11. khoj/interface/compiled/_next/static/css/80bd6301fc657983.css +1 -0
  12. khoj/interface/compiled/_next/static/css/ddcc0cf73e062476.css +1 -0
  13. khoj/interface/compiled/agents/index.html +1 -1
  14. khoj/interface/compiled/agents/index.txt +2 -2
  15. khoj/interface/compiled/automations/index.html +1 -1
  16. khoj/interface/compiled/automations/index.txt +2 -2
  17. khoj/interface/compiled/chat/index.html +1 -1
  18. khoj/interface/compiled/chat/index.txt +2 -2
  19. khoj/interface/compiled/factchecker/index.html +1 -1
  20. khoj/interface/compiled/factchecker/index.txt +2 -2
  21. khoj/interface/compiled/index.html +1 -1
  22. khoj/interface/compiled/index.txt +2 -2
  23. khoj/interface/compiled/search/index.html +1 -1
  24. khoj/interface/compiled/search/index.txt +2 -2
  25. khoj/interface/compiled/settings/index.html +1 -1
  26. khoj/interface/compiled/settings/index.txt +2 -2
  27. khoj/interface/compiled/share/chat/index.html +1 -1
  28. khoj/interface/compiled/share/chat/index.txt +2 -2
  29. khoj/processor/conversation/anthropic/anthropic_chat.py +21 -21
  30. khoj/processor/conversation/anthropic/utils.py +51 -1
  31. khoj/processor/conversation/google/utils.py +2 -15
  32. khoj/processor/conversation/prompts.py +1 -1
  33. khoj/processor/conversation/utils.py +39 -1
  34. khoj/processor/image/generate.py +2 -1
  35. khoj/routers/api.py +2 -0
  36. khoj/routers/helpers.py +12 -13
  37. {khoj-1.26.5.dev35.dist-info → khoj-1.26.5.dev43.dist-info}/METADATA +1 -1
  38. {khoj-1.26.5.dev35.dist-info → khoj-1.26.5.dev43.dist-info}/RECORD +43 -43
  39. khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css +0 -1
  40. khoj/interface/compiled/_next/static/css/afd3d45cc65d55d8.css +0 -1
  41. /khoj/interface/compiled/_next/static/{GH1Wb7mTB8D7ZsHW6iRF6 → FOVRQ-jS1N3UyX5waTycY}/_buildManifest.js +0 -0
  42. /khoj/interface/compiled/_next/static/{GH1Wb7mTB8D7ZsHW6iRF6 → FOVRQ-jS1N3UyX5waTycY}/_ssgManifest.js +0 -0
  43. {khoj-1.26.5.dev35.dist-info → khoj-1.26.5.dev43.dist-info}/WHEEL +0 -0
  44. {khoj-1.26.5.dev35.dist-info → khoj-1.26.5.dev43.dist-info}/entry_points.txt +0 -0
  45. {khoj-1.26.5.dev35.dist-info → khoj-1.26.5.dev43.dist-info}/licenses/LICENSE +0 -0
@@ -1,10 +1,16 @@
1
+ import base64
1
2
  import logging
2
3
  import math
4
+ import mimetypes
3
5
  import queue
6
+ from dataclasses import dataclass
4
7
  from datetime import datetime
8
+ from io import BytesIO
5
9
  from time import perf_counter
6
10
  from typing import Any, Dict, List, Optional
7
11
 
12
+ import PIL.Image
13
+ import requests
8
14
  import tiktoken
9
15
  from langchain.schema import ChatMessage
10
16
  from llama_cpp.llama import Llama
@@ -152,7 +158,11 @@ def construct_structured_message(message: str, images: list[str], model_type: st
152
158
  if not images or not vision_enabled:
153
159
  return message
154
160
 
155
- if model_type in [ChatModelOptions.ModelType.OPENAI, ChatModelOptions.ModelType.GOOGLE]:
161
+ if model_type in [
162
+ ChatModelOptions.ModelType.OPENAI,
163
+ ChatModelOptions.ModelType.GOOGLE,
164
+ ChatModelOptions.ModelType.ANTHROPIC,
165
+ ]:
156
166
  return [
157
167
  {"type": "text", "text": message},
158
168
  *[{"type": "image_url", "image_url": {"url": image}} for image in images],
@@ -306,3 +316,31 @@ def reciprocal_conversation_to_chatml(message_pair):
306
316
  def remove_json_codeblock(response: str):
307
317
  """Remove any markdown json codeblock formatting if present. Useful for non schema enforceable models"""
308
318
  return response.removeprefix("```json").removesuffix("```")
319
+
320
+
321
+ @dataclass
322
+ class ImageWithType:
323
+ content: Any
324
+ type: str
325
+
326
+
327
+ def get_image_from_url(image_url: str, type="pil"):
328
+ try:
329
+ response = requests.get(image_url)
330
+ response.raise_for_status() # Check if the request was successful
331
+
332
+ # Get content type from response or infer from URL
333
+ content_type = response.headers.get("content-type") or mimetypes.guess_type(image_url)[0] or "image/webp"
334
+
335
+ # Convert image to desired format
336
+ if type == "b64":
337
+ image_data = base64.b64encode(response.content).decode("utf-8")
338
+ elif type == "pil":
339
+ image_data = PIL.Image.open(BytesIO(response.content))
340
+ else:
341
+ raise ValueError(f"Invalid image type: {type}")
342
+
343
+ return ImageWithType(content=image_data, type=content_type)
344
+ except requests.exceptions.RequestException as e:
345
+ logger.error(f"Failed to get image from URL {image_url}: {e}")
346
+ return ImageWithType(content=None, type=None)
@@ -204,9 +204,10 @@ def generate_image_with_replicate(
204
204
 
205
205
  # Raise exception if the image generation task fails
206
206
  if status != "succeeded":
207
+ error = get_prediction.get("error")
207
208
  if retry_count >= 10:
208
209
  raise requests.RequestException("Image generation timed out")
209
- raise requests.RequestException(f"Image generation failed with status: {status}")
210
+ raise requests.RequestException(f"Image generation failed with status: {status}, message: {error}")
210
211
 
211
212
  # Get the generated image
212
213
  image_url = get_prediction["output"][0] if isinstance(get_prediction["output"], list) else get_prediction["output"]
khoj/routers/api.py CHANGED
@@ -448,11 +448,13 @@ async def extract_references_and_questions(
448
448
  chat_model = conversation_config.chat_model
449
449
  inferred_queries = extract_questions_anthropic(
450
450
  defiltered_query,
451
+ query_images=query_images,
451
452
  model=chat_model,
452
453
  api_key=api_key,
453
454
  conversation_log=meta_log,
454
455
  location_data=location_data,
455
456
  user=user,
457
+ vision_enabled=vision_enabled,
456
458
  personality_context=personality_context,
457
459
  )
458
460
  elif conversation_config.model_type == ChatModelOptions.ModelType.GOOGLE:
khoj/routers/helpers.py CHANGED
@@ -684,10 +684,7 @@ async def generate_better_diagram_description(
684
684
  prompts.personality_context.format(personality=agent.personality) if agent and agent.personality else ""
685
685
  )
686
686
 
687
- if location_data:
688
- location_prompt = prompts.user_location.format(location=f"{location_data}")
689
- else:
690
- location_prompt = "Unknown"
687
+ location = f"{location_data}" if location_data else "Unknown"
691
688
 
692
689
  user_references = "\n\n".join([f"# {item['compiled']}" for item in note_references])
693
690
 
@@ -705,7 +702,7 @@ async def generate_better_diagram_description(
705
702
  improve_diagram_description_prompt = prompts.improve_diagram_description_prompt.format(
706
703
  query=q,
707
704
  chat_history=chat_history,
708
- location=location_prompt,
705
+ location=location,
709
706
  current_date=today_date,
710
707
  references=user_references,
711
708
  online_results=simplified_online_results,
@@ -770,10 +767,7 @@ async def generate_better_image_prompt(
770
767
  )
771
768
  model_type = model_type or TextToImageModelConfig.ModelType.OPENAI
772
769
 
773
- if location_data:
774
- location_prompt = prompts.user_location.format(location=f"{location_data}")
775
- else:
776
- location_prompt = "Unknown"
770
+ location = f"{location_data}" if location_data else "Unknown"
777
771
 
778
772
  user_references = "\n\n".join([f"# {item['compiled']}" for item in note_references])
779
773
 
@@ -790,7 +784,7 @@ async def generate_better_image_prompt(
790
784
  image_prompt = prompts.image_generation_improve_prompt_dalle.format(
791
785
  query=q,
792
786
  chat_history=conversation_history,
793
- location=location_prompt,
787
+ location=location,
794
788
  current_date=today_date,
795
789
  references=user_references,
796
790
  online_results=simplified_online_results,
@@ -800,7 +794,7 @@ async def generate_better_image_prompt(
800
794
  image_prompt = prompts.image_generation_improve_prompt_sd.format(
801
795
  query=q,
802
796
  chat_history=conversation_history,
803
- location=location_prompt,
797
+ location=location,
804
798
  current_date=today_date,
805
799
  references=user_references,
806
800
  online_results=simplified_online_results,
@@ -826,10 +820,13 @@ async def send_message_to_model_wrapper(
826
820
  conversation_config: ChatModelOptions = await ConversationAdapters.aget_default_conversation_config(user)
827
821
  vision_available = conversation_config.vision_enabled
828
822
  if not vision_available and query_images:
823
+ logger.warning(f"Vision is not enabled for default model: {conversation_config.chat_model}.")
829
824
  vision_enabled_config = await ConversationAdapters.aget_vision_enabled_config()
830
825
  if vision_enabled_config:
831
826
  conversation_config = vision_enabled_config
832
827
  vision_available = True
828
+ if vision_available and query_images:
829
+ logger.info(f"Using {conversation_config.chat_model} model to understand {len(query_images)} images.")
833
830
 
834
831
  subscribed = await ais_user_subscribed(user)
835
832
  chat_model = conversation_config.chat_model
@@ -1110,8 +1107,9 @@ def generate_chat_response(
1110
1107
  chat_response = converse_anthropic(
1111
1108
  compiled_references,
1112
1109
  q,
1113
- online_results,
1114
- meta_log,
1110
+ query_images=query_images,
1111
+ online_results=online_results,
1112
+ conversation_log=meta_log,
1115
1113
  model=conversation_config.chat_model,
1116
1114
  api_key=api_key,
1117
1115
  completion_func=partial_completion,
@@ -1121,6 +1119,7 @@ def generate_chat_response(
1121
1119
  location_data=location_data,
1122
1120
  user_name=user_name,
1123
1121
  agent=agent,
1122
+ vision_available=vision_available,
1124
1123
  )
1125
1124
  elif conversation_config.model_type == ChatModelOptions.ModelType.GOOGLE:
1126
1125
  api_key = conversation_config.openai_config.api_key
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: khoj
3
- Version: 1.26.5.dev35
3
+ Version: 1.26.5.dev43
4
4
  Summary: Your Second Brain
5
5
  Project-URL: Homepage, https://khoj.dev
6
6
  Project-URL: Documentation, https://docs.khoj.dev
@@ -109,17 +109,17 @@ khoj/interface/compiled/chat.svg,sha256=l2JoYRRgk201adTTdvJ-buKUrc0WGfsudix5xEvt
109
109
  khoj/interface/compiled/close.svg,sha256=hQ2iFLkNzHk0_iyTrSbwnWAeXYlgA-c2Eof2Iqh76n4,417
110
110
  khoj/interface/compiled/copy-button-success.svg,sha256=byqWAYD3Pn9IOXRjOKudJ-TJbP2UESbQGvtLWazNGjY,829
111
111
  khoj/interface/compiled/copy-button.svg,sha256=05bKM2eRxksfBlAPT7yMaoNJEk85bZCxQg67EVrPeHo,669
112
- khoj/interface/compiled/index.html,sha256=vFgwf9x48NQK6mYMLWViic1BrDige9jY4Qi58JNEfyE,12184
113
- khoj/interface/compiled/index.txt,sha256=ueo3F3SjGGnKsQ9LvPIxA4jGqyinYKhiJIiqLiBAJJU,5625
112
+ khoj/interface/compiled/index.html,sha256=-TMVqzHgTMTA0ztvI4jOUi5zmdBkcgfiSvAxRdeWetY,12184
113
+ khoj/interface/compiled/index.txt,sha256=QS6w4884gw7FKzO5z8DU402hUOaPXOXGYe7XrFCCHo8,5625
114
114
  khoj/interface/compiled/khoj.webmanifest,sha256=lsknYkvEdMbRTOUYKXPM_8krN2gamJmM4u3qj8u9lrU,1682
115
115
  khoj/interface/compiled/logo.svg,sha256=_QCKVYM4WT2Qhcf7aVFImjq_s5CwjynGXYAOgI7yf8w,8059
116
116
  khoj/interface/compiled/send.svg,sha256=VdavOWkVddcwcGcld6pdfmwfz7S91M-9O28cfeiKJkM,635
117
117
  khoj/interface/compiled/share.svg,sha256=91lwo75PvMDrgocuZQab6EQ62CxRbubh9Bhw7CWMKbg,1221
118
118
  khoj/interface/compiled/thumbs-down.svg,sha256=JGNl-DwoRmH2XFMPWwFFklmoYtKxaQbkLE3nuYKe8ZY,1019
119
119
  khoj/interface/compiled/thumbs-up.svg,sha256=yS1wxTRtiztkN-6nZciLoYQUB_KTYNPV8xFRwH2TQFw,1036
120
- khoj/interface/compiled/404/index.html,sha256=7I9nb9knVD6v7uDxbehiO1TrVZMQaqrXdvDteP5f5r8,12051
121
- khoj/interface/compiled/_next/static/GH1Wb7mTB8D7ZsHW6iRF6/_buildManifest.js,sha256=6I9QUstNpJnhe3leR2Daw0pSXwzcbBscv6h2jmmPpms,224
122
- khoj/interface/compiled/_next/static/GH1Wb7mTB8D7ZsHW6iRF6/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
120
+ khoj/interface/compiled/404/index.html,sha256=KQm8OlVS8n6OTGWYbsl2Br0tYodo7FjuAlCYcs42qI0,12051
121
+ khoj/interface/compiled/_next/static/FOVRQ-jS1N3UyX5waTycY/_buildManifest.js,sha256=6I9QUstNpJnhe3leR2Daw0pSXwzcbBscv6h2jmmPpms,224
122
+ khoj/interface/compiled/_next/static/FOVRQ-jS1N3UyX5waTycY/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
123
123
  khoj/interface/compiled/_next/static/chunks/1210.132a7e1910006bbb.js,sha256=2dJueIfOg5qlQdanOM9HrgwcfrUXCD57bfd8Iv7iJcU,2104
124
124
  khoj/interface/compiled/_next/static/chunks/1279-f37ee4a388ebf544.js,sha256=U_1WaocOdgJ4HZB8tRx_izzYGD1EZlCohC1uLCffCWc,45582
125
125
  khoj/interface/compiled/_next/static/chunks/1459.690bf20e7d7b7090.js,sha256=z-ruZPxF_Z3ef_WOThd9Ox36AMhxaW3znizVivNnA34,34239
@@ -149,24 +149,24 @@ khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js,sha256
149
149
  khoj/interface/compiled/_next/static/chunks/main-app-6d6ee3495efe03d4.js,sha256=i52E7sWOcSq1G8eYZL3mtTxbUbwRNxcAbSWQ6uWpMsY,475
150
150
  khoj/interface/compiled/_next/static/chunks/main-f84cd3c1873cd842.js,sha256=jKg2A4pPMmEAQmrA10rACH3daS8XXJeMnGOz1AsTkdI,111099
151
151
  khoj/interface/compiled/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js,sha256=6QPOwdWeAVe8x-SsiDrm-Ga6u2DkqgG5SFqglrlyIgA,91381
152
- khoj/interface/compiled/_next/static/chunks/webpack-35c06f544e18305f.js,sha256=ZuxsXq0uYdIL31iB1idMGAPRLcWkrs75JMJ0SpBNV04,4065
152
+ khoj/interface/compiled/_next/static/chunks/webpack-2c4ce09149d3279a.js,sha256=2b9zqy3s66nYntf6y3XSYHhNN_aupaP2E2LsSQn4HXw,4065
153
153
  khoj/interface/compiled/_next/static/chunks/app/layout-d0f0a9067427fb20.js,sha256=ilPUPuMQt_2D48lC5c6AYeXT7J28ElR_Ym6VtjQwCO0,442
154
- khoj/interface/compiled/_next/static/chunks/app/page-337bba1c554d0742.js,sha256=BXBu_vztHaYCc2NL7iaPBWP2D8xKb07ffH7BiaNVj_M,29522
154
+ khoj/interface/compiled/_next/static/chunks/app/page-58357cd206c50a83.js,sha256=PVAqeldlvC4wYQPjTtwXQKrzC7WYupNLu7-vZr7Yeo0,29522
155
155
  khoj/interface/compiled/_next/static/chunks/app/_not-found/page-07ff4ab42b07845e.js,sha256=3mCUnxfMxyK44eqk21TVBrC6u--WSbvx31fTmQuOvMQ,1755
156
156
  khoj/interface/compiled/_next/static/chunks/app/agents/layout-75636ab3a413fa8e.js,sha256=0bdI7GBXZxpLy88hdWQiOc26QRZaD9R86YNMmGakWl4,372
157
- khoj/interface/compiled/_next/static/chunks/app/agents/page-adbf3cd470da248f.js,sha256=2DJiNl6pLAAwDJ7il9fQSrpolusRPsq-ssgDddMCMGc,17729
157
+ khoj/interface/compiled/_next/static/chunks/app/agents/page-5ae1e540bb5be8a9.js,sha256=RyqNewzRh_od2VJjj_u-Opoz-bcg7Xu52Z_ihzkCMtM,17724
158
158
  khoj/interface/compiled/_next/static/chunks/app/automations/layout-27c28e923c9b1ff0.js,sha256=d2vJ_lVB0pfeFXNUPzHAe1ca5NzdNowHPh___SPqugM,5143
159
- khoj/interface/compiled/_next/static/chunks/app/automations/page-d3edae545a1b5393.js,sha256=_rz2I87Y1B7HdtEn6h4k0ZZfp4K3UUKtb-j8RaL_jTg,35449
159
+ khoj/interface/compiled/_next/static/chunks/app/automations/page-774ae3e033f938cd.js,sha256=I3xdNFJyXv_l8D_k3p9AjkzpzSsD8VufwTMI9X1ju3I,35449
160
160
  khoj/interface/compiled/_next/static/chunks/app/chat/layout-96fcf62857bf8f30.js,sha256=1CjjxW27P-98-jfx8gBX3eBiLI-3k9zQ6nJqcZoNMBQ,374
161
- khoj/interface/compiled/_next/static/chunks/app/chat/page-460d262a3ef77503.js,sha256=n4-VslRG7b2wJwmxtuvx46B20CU-R_Kde3VNh28_YpM,6128
161
+ khoj/interface/compiled/_next/static/chunks/app/chat/page-97f5b61aaf46d364.js,sha256=SPO01m9tS3TBS2azI5kNKQ4BqOoteiOWqrkc9KLJl_s,6133
162
162
  khoj/interface/compiled/_next/static/chunks/app/factchecker/layout-7b30c541c05fb904.js,sha256=yub2AuBKHKSCqrHRFnkZv9JXLmLJLOB99iiaD3DtZQM,170
163
- khoj/interface/compiled/_next/static/chunks/app/factchecker/page-c8e5bd563a8155eb.js,sha256=tckk3UoaFMi4T7Wwu6E0sZi4gYsMpYini6PelUkysVs,14032
163
+ khoj/interface/compiled/_next/static/chunks/app/factchecker/page-d82403db2866bad8.js,sha256=677GXWmH1BGRVfh6nvl66pMlDYzJevl6jv8XDG3uYQ8,14032
164
164
  khoj/interface/compiled/_next/static/chunks/app/search/layout-3720f1362310bebb.js,sha256=Smpa4MQaw5ItashtspsDKsOvRa6sOXH_lv4jIfWIbNI,170
165
- khoj/interface/compiled/_next/static/chunks/app/search/page-a5c277eff207959e.js,sha256=JE9P84ko6vhBzqw7zmd2PxCt3E7xcZjq-DWV0x8gVIM,6958
165
+ khoj/interface/compiled/_next/static/chunks/app/search/page-9b64f61caa5bd7f9.js,sha256=Cx4HFJAQ98tgBqB30jE_a84tDe_px9FYe3NCzXktTJE,6958
166
166
  khoj/interface/compiled/_next/static/chunks/app/settings/layout-a8f33dfe92f997fb.js,sha256=VQp-ZD9hDz-r6yXCDMgdxrvnm6qcuKViX7AKc9B6JBw,5347
167
- khoj/interface/compiled/_next/static/chunks/app/settings/page-60097571dd9f9d37.js,sha256=JM7y1glSPLQD64iNrqVX6MzmPdBuU6zekT3An3tsC_g,32383
167
+ khoj/interface/compiled/_next/static/chunks/app/settings/page-7a8c382af2a7e870.js,sha256=44kkbCexNQ1Qs0zUmtLX0-zDSxJ5dUzUyJcYbEYR8Uk,32383
168
168
  khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-2df56074e42adaa0.js,sha256=RPeayaV3Gbu0bJnD9vW5ml-xN-zN6UFBlTel-vOMYys,373
169
- khoj/interface/compiled/_next/static/chunks/app/share/chat/page-97c4e60105009649.js,sha256=CDuNxtk75Ylp9fd8ZITf_A2bQvrUyguh_d7o_MVvx0I,5491
169
+ khoj/interface/compiled/_next/static/chunks/app/share/chat/page-eb9e282691858f2e.js,sha256=xE8yACm9I2z-QYbIa4wF5XTalPclzdVS0WwHT_JtDF0,5491
170
170
  khoj/interface/compiled/_next/static/chunks/pages/_app-f870474a17b7f2fd.js,sha256=eqdFPAN_XFyMUzZ9qwFk-_rhMWZrU7lgNVt1foVUANo,286
171
171
  khoj/interface/compiled/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js,sha256=vjERjtMAbVk-19LyPf1Jc-H6TMcrSznSz6brzNqbqf8,253
172
172
  khoj/interface/compiled/_next/static/css/2272c73fc7a3b571.css,sha256=1fHKFd8zLOHosAHx-kxv4b9lVSqHag_E71WkV3dXx2Y,26940
@@ -174,10 +174,10 @@ khoj/interface/compiled/_next/static/css/3cf13271869a4aeb.css,sha256=sGjJTeMeN6w
174
174
  khoj/interface/compiled/_next/static/css/467a524c75e7d7c0.css,sha256=yNoCTf6WSvmOpMGCnq1LEjF8lFDydKu4O5isN5KWqO8,2622
175
175
  khoj/interface/compiled/_next/static/css/4cae6c0e5c72fb2d.css,sha256=3CjTMmtMrm_MYt1ywtUh2MHEjSLSl356SQLl4hdBuYw,534
176
176
  khoj/interface/compiled/_next/static/css/553f9cdcc7a2bcd6.css,sha256=JpjOOwmqP9Hba-w_8Lx9jWW0ZD0kD3wR0HvdPGDyUPo,2134
177
- khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css,sha256=BSqRkeb9vBh0phx5GkAlZirTFZintbyggGaUkuOBfaU,914
178
177
  khoj/interface/compiled/_next/static/css/5a400c87d295e68a.css,sha256=ojDUPJ9fJpEo9DzTAsEa-k1cg7Bef-nSTfpszMiqknQ,17711
179
178
  khoj/interface/compiled/_next/static/css/76d55eb435962b19.css,sha256=7HKgJ7f1C6d03khVlJNAp387XUseDejbiOe3Ky3LSY8,1883083
180
- khoj/interface/compiled/_next/static/css/afd3d45cc65d55d8.css,sha256=-7If7QmrpJNWgXMESy0E9nUtqkQI2_HejCNYVCZplRM,9505
179
+ khoj/interface/compiled/_next/static/css/80bd6301fc657983.css,sha256=T7_aQHcWpQBQLKadauHNzjYGw713FtRNTlUqmJjsL6I,1634
180
+ khoj/interface/compiled/_next/static/css/ddcc0cf73e062476.css,sha256=GhCBwb3i2oMWlIP9XEjY24nrM-wtgaWU-K99aL6y75U,8785
181
181
  khoj/interface/compiled/_next/static/media/0e790e04fd40ad16-s.p.woff2,sha256=41ewITd0G1ZAoB62BTHMW58a1q8Hl6vSbTQkkHP7EbI,39372
182
182
  khoj/interface/compiled/_next/static/media/4221e1667cd19c7d-s.woff2,sha256=_Y3g0keA8P6nZnFfm_VO5o2Sne1iST3v9xz4fBo3fwM,75532
183
183
  khoj/interface/compiled/_next/static/media/6c276159aa0eb14b-s.woff2,sha256=i9Ibzi_O7y5KpImujj2rEdOZf96lpNYxYzVvCryW5Uc,140408
@@ -250,8 +250,8 @@ khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp,sha256=M2AW_HLpBn
250
250
  khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp,sha256=BBeRPBZkxY3-aKkMnYv5TSkxmbeMbyUH4VRIPfrWg1E,137406
251
251
  khoj/interface/compiled/_next/static/media/globe.98e105ca.webp,sha256=g3ofb8-W9GM75zIhlvQhaS8I2py9TtrovOKR3_7Jf04,514
252
252
  khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp,sha256=I_N7Yke3IOoS-0CC6XD8o0IUWG8PdPbrHmf6lpgWlZY,1380
253
- khoj/interface/compiled/agents/index.html,sha256=1ElisXkIVmUT1VSDBjzMyeOsb4-qu6Ubyo74XLxQkTQ,12966
254
- khoj/interface/compiled/agents/index.txt,sha256=JcopdxZTMV0wHGtTfBdG4UTFWpevFs2zMafc-PgmnKk,6178
253
+ khoj/interface/compiled/agents/index.html,sha256=1MNtp0LpX1sMP3stf-tQrcIe0CKN3SG_M9oHN8lteOA,12658
254
+ khoj/interface/compiled/agents/index.txt,sha256=_kbA3MngjvOh7GxSgv-wCbrAtr5TEvG2a2OxBqsn2RY,6045
255
255
  khoj/interface/compiled/assets/icons/khoj_lantern.ico,sha256=eggu-B_v3z1R53EjOFhIqqPnICBGdoaw1xnc0NrzHck,174144
256
256
  khoj/interface/compiled/assets/icons/khoj_lantern_128x128.png,sha256=aTxivDb3CYyThkVZWz8A19xl_dNut5DbkXhODWF3A9Q,5640
257
257
  khoj/interface/compiled/assets/icons/khoj_lantern_256x256.png,sha256=xPCMLHiaL7lYOdQLZrKwWE-Qjn5ZaysSZB0ScYv4UZU,12312
@@ -262,18 +262,18 @@ khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png,sha256=i
262
262
  khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png,sha256=Dd4fPwtFl6BWqnHjeb1mCK_ND0hhHsWtx8sNE7EiMuE,406179
263
263
  khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png,sha256=DEDaNRCkfEWUeh3kYZWIQDTVK1a6KKnYdwj5ZWisN_Q,82985
264
264
  khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png,sha256=Ma3blirRmq3X4oYSsDbbT7MDn29rymDrjwmUfA9BMuM,236285
265
- khoj/interface/compiled/automations/index.html,sha256=7U8QtpWN0ipR3jUw6ZAQtbt7aYZr6WWoJWr4mcJS9OQ,30941
266
- khoj/interface/compiled/automations/index.txt,sha256=9FNFXJgJdYp2vJcraSvsSdLgNBrKQyFsiJmnAqgbkCI,5633
267
- khoj/interface/compiled/chat/index.html,sha256=xdDfSklhNbBrjCZn3MWhw2aKBjBwNFR2Qa0wW3l7y6o,13679
268
- khoj/interface/compiled/chat/index.txt,sha256=Jz0yOK0d_VZhhN_V7z1W3qtKPNQ7c4FMFraWhIrKU0Q,6503
269
- khoj/interface/compiled/factchecker/index.html,sha256=MomzecWOAyIJJDlp2aIs7n--ACtO-9BmyM-JaVfiebo,29973
270
- khoj/interface/compiled/factchecker/index.txt,sha256=wFPBoj5YVm83yUwPLsnh1_J73lbzpvgnxjT0Lpwi_3w,5788
271
- khoj/interface/compiled/search/index.html,sha256=WYDQf5L1Vs1NXaZk4mbjlCRX6Iw8OdC_7lfkSbvdeN4,30161
272
- khoj/interface/compiled/search/index.txt,sha256=WxtgQCcbdZduV9aLoJJE0WPUrbWWpx2HcIQqWx_kJhE,5256
273
- khoj/interface/compiled/settings/index.html,sha256=jClpVnikAK5d0mjlwfcE-6CU4F5GFw4edBOU1uo1StM,12831
274
- khoj/interface/compiled/settings/index.txt,sha256=Vut_zp_ieW1G50-h4EBLX64dQznpwG2y_8T_zFbzJg0,6078
275
- khoj/interface/compiled/share/chat/index.html,sha256=-ayS-fsu6gsDo2xQgimvmja183VG8X24QEKFvbluzSk,15312
276
- khoj/interface/compiled/share/chat/index.txt,sha256=x0ELXqXn6emOjgshtyOy-9MnWkjwbgnXTGIChIa15ME,7447
265
+ khoj/interface/compiled/automations/index.html,sha256=cIb46RJ7jNyEAJSeQwTZLbbFmVKvnBEHgcqTa06JJGw,30941
266
+ khoj/interface/compiled/automations/index.txt,sha256=KDiuwag4TMDrtKkra56dvrUPBY5DIoRXhM9YAMVUbQo,5633
267
+ khoj/interface/compiled/chat/index.html,sha256=RUux2i_WH2UnqtiUpow-mnONNZcDlK-0hQS62KRif4o,13987
268
+ khoj/interface/compiled/chat/index.txt,sha256=BTwd7Mtidk8QWgg60F0IjKLt2P9fA1CeOZMJ0tfDhhE,6636
269
+ khoj/interface/compiled/factchecker/index.html,sha256=zBy1v_vNZRunWeU06RDqUx6GkMSaMJQwfrqw3nA5VZw,29973
270
+ khoj/interface/compiled/factchecker/index.txt,sha256=H93LlLX08dgikSlnPbFI87t1NVF-hYd6UFUMyozEU6I,5788
271
+ khoj/interface/compiled/search/index.html,sha256=Cf2Hgd_L1vsl_PKKdlJHHzlUj-lOzQIUIxAH0pZj874,30161
272
+ khoj/interface/compiled/search/index.txt,sha256=gmrUni8qHq464NUFYBj8gH96I4a4rSGfCdYw4MxNFEg,5256
273
+ khoj/interface/compiled/settings/index.html,sha256=uYZ6ZpZKqyZU-JyetGjOmQy7SURO-AbT63-0e642uPo,12831
274
+ khoj/interface/compiled/settings/index.txt,sha256=ewy_HF9ZHHJdDPKJPjeag6mScsCE3ceu2J0JLsXZKN8,6078
275
+ khoj/interface/compiled/share/chat/index.html,sha256=TLd-wUYlM0KgeH-6z0cAUMjO_hhRJhpWj1Y3zWV2IqM,15312
276
+ khoj/interface/compiled/share/chat/index.txt,sha256=fGsV3bfTVEy0ijxy3VIiNfQMc4I9kRZbU1-Partoc4M,7447
277
277
  khoj/interface/email/feedback.html,sha256=xksuPFamx4hGWyTTxZKRgX_eiYQQEuv-eK9Xmkt-nwU,1216
278
278
  khoj/interface/email/magic_link.html,sha256=EoGKQucfPj3xQrWXhSZAzPFOYCHF_ZX94TWCd1XHl1M,941
279
279
  khoj/interface/email/task.html,sha256=tY7a0gzVeQ2lSQNu7WyXR_s7VYeWTrxWEj1iHVuoVE4,2813
@@ -325,14 +325,14 @@ khoj/processor/content/pdf/pdf_to_entries.py,sha256=kROQUGqHs6J8Xi2rEHVgkc_iLMcS
325
325
  khoj/processor/content/plaintext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
326
326
  khoj/processor/content/plaintext/plaintext_to_entries.py,sha256=97i7Cm0DTY7jW4iqKOT_oVc2ooa_XhQ8iImsljp1Kek,4994
327
327
  khoj/processor/conversation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
328
- khoj/processor/conversation/prompts.py,sha256=0omqnfer9APTaFEoDJcIG8A4Ku4mkdCyrGO-8EfK8bU,41161
329
- khoj/processor/conversation/utils.py,sha256=cxVKTkP5Qjk0apfRjboZvXVe52x6f0eDkHcS943P240,12411
328
+ khoj/processor/conversation/prompts.py,sha256=IkJ69fjU7FTAQq3EZRnjcI5bClWMlwwAuCB57TbIdWQ,41187
329
+ khoj/processor/conversation/utils.py,sha256=-56EgrGyQ7Nw3zKBMvPbvEN06eXzj-J_0CZi5J8iCyI,13583
330
330
  khoj/processor/conversation/anthropic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
331
- khoj/processor/conversation/anthropic/anthropic_chat.py,sha256=2O44WySb7xZqXxqA0M12gT9YsOLdBn4mz-mtJKj6fgY,8143
332
- khoj/processor/conversation/anthropic/utils.py,sha256=GHCz-xll_DBipqSc5e5qdVhLQiKX5Kso3KQRf1BXbVA,3456
331
+ khoj/processor/conversation/anthropic/anthropic_chat.py,sha256=WjCXAMud7Rd0N178x_9NiRsQpx6OKUhbJtXkUuJ0ETU,8131
332
+ khoj/processor/conversation/anthropic/utils.py,sha256=kqNadU07M5XU5oe9_Qn4ZmPvhAHCxq9kdbUYthklhdU,5652
333
333
  khoj/processor/conversation/google/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
334
334
  khoj/processor/conversation/google/gemini_chat.py,sha256=gjaVq7TzooFBN7DpHcEULOd8wSqLIs51_PPCFjpXtGs,8362
335
- khoj/processor/conversation/google/utils.py,sha256=tqeF-Ig15QKILykZwUGkxRoQQROw1hICBJ-aT22bHM0,9902
335
+ khoj/processor/conversation/google/utils.py,sha256=73GsIUVC22DItey-rreMVXD26puw8yLpu6hq7RTHdvg,9490
336
336
  khoj/processor/conversation/offline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
337
337
  khoj/processor/conversation/offline/chat_model.py,sha256=aqAhf2N-Kw3klTg3StrKWev6FWmFCH2BN9Jqq2Nm_FU,9740
338
338
  khoj/processor/conversation/offline/utils.py,sha256=51McImxl6u1qgRYvMt7uzsgLGSLq5SMFy74ymlNjIcc,3033
@@ -341,13 +341,13 @@ khoj/processor/conversation/openai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
341
341
  khoj/processor/conversation/openai/gpt.py,sha256=QkSDxP_oKWmDrjP0GieO_VCztrZBj0Iltu6UWGkV7K8,7803
342
342
  khoj/processor/conversation/openai/utils.py,sha256=tGRUauPfrRGPQ7W_9-lBxpRLld8EWzMuRiTY9EptFgY,5313
343
343
  khoj/processor/conversation/openai/whisper.py,sha256=zoEeK1LNCg_tzP4xzYi5vRPzNPGuDGzpkrkG7d1LUn4,447
344
- khoj/processor/image/generate.py,sha256=czsxx3trVKc0zScTR5I2PxKeFU8YEl-a5vz7NXnv6dY,8950
344
+ khoj/processor/image/generate.py,sha256=AeHvIf6VKl9C2kfXc_VdyxTFluOOpIJn_76wOA1k5zg,9012
345
345
  khoj/processor/speech/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
346
346
  khoj/processor/speech/text_to_speech.py,sha256=Q7sapi5Hv6woXOumtrGqR0t6izZrFBkWXFOGrHM6dJ4,1929
347
347
  khoj/processor/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
348
348
  khoj/processor/tools/online_search.py,sha256=jqKvcvRyeWsBaRBKtRmNQHVoL_dhJs4C0K8yJrDhSK8,14299
349
349
  khoj/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
350
- khoj/routers/api.py,sha256=mFDs5VuQZN76ognirGzLF2bJh1GTmYHp36r_No1RXto,27960
350
+ khoj/routers/api.py,sha256=cMSvMtpLYvX3JBIAduREFQf0gj4YPdzY2T4PqzxBwBQ,28050
351
351
  khoj/routers/api_agents.py,sha256=4T0osmOGFmYC-BhdAkT5HpT2zaktlL7Agj47-To-jxo,9773
352
352
  khoj/routers/api_chat.py,sha256=XKcbYV4AS0Zs4z3pukW8ycgaoLY3Dnsp2zDjziQ2h-w,42119
353
353
  khoj/routers/api_content.py,sha256=lWunOwVWYvnl1ue_D81g9ZSwBc0UxHmBIrdJoVPxN_A,17900
@@ -356,7 +356,7 @@ khoj/routers/api_phone.py,sha256=p9yfc4WeMHDC0hg3aQk60a2VBy8rZPdEnz9wdJ7DzkU,220
356
356
  khoj/routers/api_subscription.py,sha256=sR5_XxQ4e_1hk3K4g0i3S8PZeULP23lnGtrWnfjhNDI,5307
357
357
  khoj/routers/auth.py,sha256=HO54PR-BkWA_iJIktEobUrObcXVYG-00jpnIcEVdR5s,6564
358
358
  khoj/routers/email.py,sha256=SGYNPQvfcvYeHf70F0YqpY0FLMRElF2ZekROXdwGI18,3821
359
- khoj/routers/helpers.py,sha256=VLsANjXF63h3O4xNooF7GWWz7y3YXQZYR2YOputEBts,74827
359
+ khoj/routers/helpers.py,sha256=FOIIfljds6p_4fJpWb21EabfQRUlJdS3HuHoYT5ytYo,75015
360
360
  khoj/routers/notion.py,sha256=Lp67xP9rVgpAF9BQoGTjZFcVdF1HYtvPP0kjq6uurKU,2802
361
361
  khoj/routers/storage.py,sha256=tJrwhFRVWv0MHv7V7huMc1Diwm-putZSwnZXJ3tqT_c,2338
362
362
  khoj/routers/twilio.py,sha256=MLsuCm4--ETvr3sLxbF0CL_ehlg_l2rKBSLR2Qh2Xls,1081
@@ -380,8 +380,8 @@ khoj/utils/models.py,sha256=Q5tcC9-z25sCiub048fLnvZ6_IIO1bcPNxt5payekk0,2009
380
380
  khoj/utils/rawconfig.py,sha256=kURDuk7x0MDtniGLU4x1IsvU4UIBS-V9dSM4GD8X-LY,4274
381
381
  khoj/utils/state.py,sha256=x4GTewP1YhOA6c_32N4wOjnV-3AA3xG_qbY1-wC2Uxc,1559
382
382
  khoj/utils/yaml.py,sha256=H0mfw0ZvBFUvFmCQn8pWkfxdmIebsrSykza7D8Wv6wQ,1430
383
- khoj-1.26.5.dev35.dist-info/METADATA,sha256=Bx9c0WS0mIlnTW2pFRCBfzcv0NXB-Xqe091kOOM8awI,7026
384
- khoj-1.26.5.dev35.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
385
- khoj-1.26.5.dev35.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
386
- khoj-1.26.5.dev35.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
387
- khoj-1.26.5.dev35.dist-info/RECORD,,
383
+ khoj-1.26.5.dev43.dist-info/METADATA,sha256=3pW0MPmsA7bnS3LiXNc3rDVRxOo0ScUpB0jQjVNPM_o,7026
384
+ khoj-1.26.5.dev43.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
385
+ khoj-1.26.5.dev43.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
386
+ khoj-1.26.5.dev43.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
387
+ khoj-1.26.5.dev43.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- div.agents_titleBar__FzYbY{padding:16px 0;text-align:left}.agents_agentPersonality__o0Ysz p{white-space:inherit;overflow:hidden;height:77px;line-height:1.5}div.agents_agentPersonality__o0Ysz{text-align:left;grid-column:span 3;overflow:hidden}div.agents_pageLayout__gR3S3{max-width:60vw;margin:auto auto 2rem}div.agents_sidePanel__wGVGc{position:fixed;height:100%;z-index:1}button.agents_infoButton__NqI7E{border:none;background-color:transparent!important;text-align:left;font-family:inherit;font-size:medium}div.agents_agentList__XVx4A{display:grid;gap:20px;padding-top:30px;margin-right:auto;grid-auto-flow:row;grid-template-columns:1fr 1fr;margin-left:auto}@media only screen and (max-width:768px){div.agents_agentList__XVx4A{width:100%;padding:0;margin-right:auto;margin-left:auto;grid-template-columns:1fr}div.agents_pageLayout__gR3S3{max-width:90vw}div.agents_sidePanel__wGVGc{position:relative;height:100%}}
@@ -1 +0,0 @@
1
- div.chat_main__8xQu5{height:100dvh;color:hsla(var(--foreground))}.chat_suggestions__m8n2t{display:flex;overflow-x:none;height:50%;padding:10px;white-space:nowrap;gap:1rem}div.chat_inputBox__LOFws{border:1px solid var(--border-color);margin-bottom:20px;gap:12px;align-content:center}input.chat_inputBox__LOFws{border:none}input.chat_inputBox__LOFws:focus{outline:none;background-color:transparent}div.chat_inputBox__LOFws:focus{box-shadow:0 8px 16px 0 rgba(0,0,0,.2)}div.chat_chatBodyFull__FfKEK{display:grid;grid-template-columns:1fr;height:100%}button.chat_inputBox__LOFws{border:none;outline:none;background-color:transparent;cursor:pointer;border-radius:.5rem;padding:.5rem;background:linear-gradient(var(--calm-green),var(--calm-blue))}div.chat_chatBody__sS1LX{display:grid;grid-template-columns:1fr 1fr;height:100%}.chat_inputBox__LOFws{color:hsla(var(--foreground))}div.chat_chatLayout__pR203{display:grid;grid-template-columns:auto 1fr;gap:1rem}div.chat_chatBox__FBct_{display:grid;height:100%}div.chat_titleBar__R5QlK{display:grid;grid-template-columns:1fr auto}div.chat_chatBoxBody__qT_SC{display:grid;height:100%;width:95%;margin:auto}div.chat_agentIndicator__8V55w a{display:flex;text-align:center;align-content:center;align-items:center}div.chat_agentIndicator__8V55w{padding:10px}div.chat_chatTitleWrapper__6ChWq{grid-template-columns:1fr auto}@media screen and (max-width:768px){div.chat_inputBox__LOFws{margin-bottom:0}div.chat_chatBoxBody__qT_SC{width:100%}div.chat_chatBody__sS1LX{grid-template-columns:0fr 1fr}div.chat_chatBox__FBct_{padding:0;height:100%}div.chat_chatLayout__pR203{gap:0;grid-template-columns:1fr}}div.sidePanel_session__R9wgH{padding:.5rem;margin-bottom:.25rem;border-radius:.5rem;cursor:pointer;max-width:14rem;font-size:medium;display:grid;grid-template-columns:minmax(auto,400px) 1fr;gap:0}div.sidePanel_compressed__YBPtM{grid-template-columns:minmax(12rem,100%) 1fr 1fr}div.sidePanel_sessionHover__iwfo8,div.sidePanel_session__R9wgH:hover{background-color:hsla(var(--popover))}div.sidePanel_session__R9wgH:hover{color:hsla(var(--popover-foreground))}div.sidePanel_session__R9wgH a{text-decoration:none}button.sidePanel_button__ihOfG{border:none;outline:none;background-color:transparent;cursor:pointer;color:var(--main-text-color);width:24px}button.sidePanel_showMoreButton__dt9Zw{border-radius:.5rem;padding:8px}div.sidePanel_panel__VZ8ye{display:flex;flex-direction:column;padding:1rem;overflow-y:auto;max-width:auto;transition:background-color .5s}div.sidePanel_expanded__ZjTHo{gap:1rem;background-color:hsla(var(--muted));height:100%}div.sidePanel_collapsed__OjVmG{display:grid;grid-template-columns:1fr;height:-moz-fit-content;height:fit-content;padding:1rem 0 0 1rem}p.sidePanel_session__R9wgH{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;font-size:small}div.sidePanel_header__d5cGA{display:grid;grid-template-columns:1fr auto}div.sidePanel_profile__x0w58{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;margin-top:auto}div.sidePanel_panelWrapper__k_lal{display:grid;grid-template-rows:1fr auto auto;height:100%}div.sidePanel_modalSessionsList__nKe2n{position:fixed;top:0;left:0;width:100%;height:100%;background-color:hsla(var(--frosted-background-color));z-index:1;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}div.sidePanel_modalSessionsList__nKe2n div.sidePanel_content__Wq20_{max-width:80%;max-height:80%;background-color:hsla(var(--frosted-background-color));overflow:auto;padding:20px;border-radius:10px}div.sidePanel_modalSessionsList__nKe2n div.sidePanel_session__R9wgH{max-width:100%;text-overflow:ellipsis}@media screen and (max-width:768px){div.sidePanel_panel__VZ8ye{padding:.25rem;width:100%}div.sidePanel_expanded__ZjTHo{z-index:1}div.sidePanel_singleReference__r9z1n{padding:4px}div.sidePanel_panelWrapper__k_lal{width:100%;padding:0 1rem}div.sidePanel_session__R9wgH.sidePanel_compressed__YBPtM{max-width:100%;display:grid;grid-template-columns:70vw auto;justify-content:space-between}div.sidePanel_session__R9wgH{max-width:100%;grid-template-columns:minmax(auto,70vw) 1fr}}menu.navMenu_menu__fqlFF a{text-decoration:none;font-size:medium;font-weight:400;padding:0 4px;border-radius:4px;display:flex;justify-self:center;margin:0;align-items:center;gap:4px}a.navMenu_selected__A__aP{background-color:hsl(var(--accent))}div.navMenu_titleBar__HJoio{display:flex;justify-content:space-between;align-content:space-evenly;align-items:start}div.navMenu_titleBar__HJoio menu{padding:0;margin:0;border-radius:.5rem;display:grid;grid-auto-flow:column;gap:32px}div.navMenu_settingsMenuProfile__3npiK img{border-radius:50%;width:32px;height:32px;margin:0}div.navMenu_settingsMenu__X2i2U{padding:0 4px;border-radius:4px;display:flex;justify-self:center;margin:0;align-items:center}div.navMenu_settingsMenuOptions__KWnLv{display:block;grid-auto-flow:row;position:absolute;background-color:var(--background-color);box-shadow:0 8px 16px 0 rgba(0,0,0,.2);top:64px;text-align:left;padding:8px;border-radius:8px}@media screen and (max-width:600px){menu.navMenu_menu__fqlFF span{display:none}div.navMenu_settingsMenuOptions__KWnLv{right:4px}div.navMenu_titleBar__HJoio{padding:8px}}div.chatHistory_chatHistory__CoaVT{display:flex;flex-direction:column;height:100%;margin:auto}div.chatHistory_agentIndicator__wOU1f a{display:flex;text-align:center;align-content:center;align-items:center}div.chatHistory_trainOfThought__mMWSR{border:1px solid var(--border-color);border-radius:16px;padding:8px 16px;margin:12px}div.chatMessage_chatMessageContainer__sAivf{display:flex;flex-direction:column;margin:12px;border-radius:16px;padding:8px 16px 0}div.chatMessage_chatMessageWrapper__u5m8A{padding-left:1rem;padding-bottom:1rem;max-width:80vw}div.chatMessage_chatMessageWrapper__u5m8A ol,div.chatMessage_chatMessageWrapper__u5m8A p:not(:last-child),div.chatMessage_chatMessageWrapper__u5m8A ul{margin-bottom:16px}div.chatMessage_chatMessageWrapper__u5m8A a span{display:revert!important}div.chatMessage_khojfullHistory__NPu2l{border-width:1px;padding-left:4px}div.chatMessage_youfullHistory__ioyfH{max-width:100%}div.chatMessage_chatMessageContainer__sAivf.chatMessage_youfullHistory__ioyfH{padding-left:0}div.chatMessage_you__6GUC4{background-color:hsla(var(--secondary));align-self:flex-end;border-radius:16px}div.chatMessage_khoj__cjWON{background-color:transparent;color:hsl(var(--accent-foreground));align-self:flex-start}div.chatMessage_khojChatMessage__BabQz{padding-top:8px;padding-left:16px}div.chatMessage_emptyChatMessage__J9JRn{display:none}div.chatMessage_imagesContainer__HTRjT{display:flex;overflow-x:auto;padding-bottom:8px;margin-bottom:8px}div.chatMessage_imageWrapper__DF92M{flex:0 0 auto;margin-right:8px}div.chatMessage_imageWrapper__DF92M img{width:auto;height:128px;-o-object-fit:cover;object-fit:cover;border-radius:8px}div.chatMessage_chatMessageContainer__sAivf>img{width:auto;height:auto;max-width:100%;max-height:80vh;-o-object-fit:contain;object-fit:contain;display:block;margin-top:.25rem;margin-right:auto}div.chatMessage_chatMessageContainer__sAivf h3 img{width:24px}div.chatMessage_you__6GUC4{color:hsla(var(--secondary-foreground))}div.chatMessage_author__muRtC{font-size:.75rem;color:grey;text-align:right}div.chatMessage_chatFooter__0vR8s{display:flex;justify-content:space-between;min-height:28px}div.chatMessage_chatButtons__Lbk8T{display:flex;justify-content:flex-end;width:-moz-min-content;width:min-content;border:1px solid var(--border-color);border-radius:16px;position:relative;bottom:-12px;background-color:hsla(var(--secondary))}div.chatMessage_chatFooter__0vR8s button{cursor:pointer;color:hsl(var(--muted-foreground));border:none;border-radius:16px;padding:4px;margin-left:4px;margin-right:4px}div.chatMessage_chatFooter__0vR8s button:hover{background-color:hsla(var(--frosted-background-color))}button.chatMessage_codeCopyButton__Y_Ujv{cursor:pointer;float:right;border-radius:8px}button.chatMessage_codeCopyButton__Y_Ujv:hover{color:hsla(var(--frosted-background-color))}button.chatMessage_codeCopyButton__Y_Ujv img,button.chatMessage_copyButton__jd7q7 img,div.chatMessage_feedbackButtons___Brdy img{width:24px}div.chatMessage_trainOfThought__mR2Gg strong{font-weight:500}div.chatMessage_trainOfThought__mR2Gg.chatMessage_primary__WYPEb strong{font-weight:500;color:hsla(var(--secondary-foreground))}div.chatMessage_trainOfThought__mR2Gg.chatMessage_primary__WYPEb p{color:inherit}div.chatMessage_trainOfThoughtElement__le_bC{display:grid;grid-template-columns:auto 1fr;align-items:start}div.chatMessage_trainOfThoughtElement__le_bC ol,div.chatMessage_trainOfThoughtElement__le_bC ul{margin:auto}@media screen and (max-width:768px){div.chatMessage_youfullHistory__ioyfH{max-width:90%}}div.chatInputArea_actualInputArea__Ha6cN{display:grid;grid-template-columns:auto 1fr auto auto}.agentCard_agentPersonality__MmRlN p{white-space:inherit;overflow:hidden;height:77px;line-height:1.5}div.agentCard_agentPersonality__MmRlN{text-align:left;grid-column:span 3;overflow:hidden}button.agentCard_infoButton__heh_w{border:none;background-color:transparent!important;text-align:left;font-family:inherit;font-size:medium}div.search_searchLayout__fP3m0{display:grid;grid-template-columns:1fr;gap:1rem;height:100vh}div.search_sidePanel__myfc9{position:fixed;height:100%;z-index:1}@media screen and (max-width:768px){div.search_searchLayout__fP3m0{gap:0}div.search_sidePanel__myfc9{position:relative;height:100%}}