khoj 2.0.0b7.dev1__py3-none-any.whl → 2.0.0b8__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 (59) hide show
  1. khoj/database/adapters/__init__.py +2 -1
  2. khoj/interface/compiled/404/index.html +2 -2
  3. khoj/interface/compiled/_next/static/chunks/app/agents/layout-1b6273baddb72146.js +1 -0
  4. khoj/interface/compiled/_next/static/chunks/app/agents/{page-0006674668eb5a4d.js → page-9a4610474cd59a71.js} +1 -1
  5. khoj/interface/compiled/_next/static/chunks/app/automations/{page-4c465cde2d14cb52.js → page-f7bb9d777b7745d4.js} +1 -1
  6. khoj/interface/compiled/_next/static/chunks/app/chat/layout-ad4d1792ab1a4108.js +1 -0
  7. khoj/interface/compiled/_next/static/chunks/app/chat/page-605eb8a5b75ae10f.js +1 -0
  8. khoj/interface/compiled/_next/static/chunks/app/{page-6e91caf9bc0c8aba.js → page-2025944ec1f80144.js} +1 -1
  9. khoj/interface/compiled/_next/static/chunks/app/search/layout-4505b79deb734a30.js +1 -0
  10. khoj/interface/compiled/_next/static/chunks/app/search/{page-883b7d8d2e3abe3e.js → page-4885df3cd175c957.js} +1 -1
  11. khoj/interface/compiled/_next/static/chunks/app/settings/{page-95e994ddac31473f.js → page-8be3b35178abf2ec.js} +1 -1
  12. khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-e8e5db7830bf3f47.js +1 -0
  13. khoj/interface/compiled/_next/static/chunks/app/share/chat/{page-8c8c175f7f212b03.js → page-ee8ef5270163e7f2.js} +1 -1
  14. khoj/interface/compiled/_next/static/chunks/{webpack-ad333982c1412e1c.js → webpack-6d019c38afe1fe65.js} +1 -1
  15. khoj/interface/compiled/_next/static/css/{6ab9f0a425580544.css → 102b97d6472fdd3a.css} +1 -1
  16. khoj/interface/compiled/_next/static/css/37a73b87f02df402.css +1 -0
  17. khoj/interface/compiled/_next/static/css/c34713c98384ee87.css +1 -0
  18. khoj/interface/compiled/agents/index.html +2 -2
  19. khoj/interface/compiled/agents/index.txt +2 -2
  20. khoj/interface/compiled/automations/index.html +2 -2
  21. khoj/interface/compiled/automations/index.txt +3 -3
  22. khoj/interface/compiled/chat/index.html +2 -2
  23. khoj/interface/compiled/chat/index.txt +2 -2
  24. khoj/interface/compiled/index.html +2 -2
  25. khoj/interface/compiled/index.txt +2 -2
  26. khoj/interface/compiled/search/index.html +2 -2
  27. khoj/interface/compiled/search/index.txt +2 -2
  28. khoj/interface/compiled/settings/index.html +2 -2
  29. khoj/interface/compiled/settings/index.txt +4 -4
  30. khoj/interface/compiled/share/chat/index.html +2 -2
  31. khoj/interface/compiled/share/chat/index.txt +2 -2
  32. khoj/main.py +1 -0
  33. khoj/processor/conversation/anthropic/utils.py +5 -1
  34. khoj/processor/conversation/google/utils.py +2 -2
  35. khoj/processor/conversation/openai/utils.py +22 -9
  36. khoj/processor/conversation/utils.py +4 -3
  37. khoj/processor/tools/run_code.py +5 -2
  38. khoj/routers/research.py +30 -13
  39. khoj/utils/initialization.py +2 -0
  40. {khoj-2.0.0b7.dev1.dist-info → khoj-2.0.0b8.dist-info}/METADATA +1 -1
  41. {khoj-2.0.0b7.dev1.dist-info → khoj-2.0.0b8.dist-info}/RECORD +52 -52
  42. khoj/interface/compiled/_next/static/chunks/app/agents/layout-e3d72f0edda6aa0c.js +0 -1
  43. khoj/interface/compiled/_next/static/chunks/app/chat/layout-01fa675d4d56157c.js +0 -1
  44. khoj/interface/compiled/_next/static/chunks/app/chat/page-d9c7aa9d3969c0e9.js +0 -1
  45. khoj/interface/compiled/_next/static/chunks/app/search/layout-52594c685679f537.js +0 -1
  46. khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-64a53f8ec4afa6b3.js +0 -1
  47. khoj/interface/compiled/_next/static/css/ee66643a6a5bf71c.css +0 -1
  48. khoj/interface/compiled/_next/static/css/fbacbdfd5e7f3f0e.css +0 -1
  49. /khoj/interface/compiled/_next/static/{kv2VFg4VPqhfhPbW7POfA → KYnLswBdMI-yacz4a0Xnp}/_buildManifest.js +0 -0
  50. /khoj/interface/compiled/_next/static/{kv2VFg4VPqhfhPbW7POfA → KYnLswBdMI-yacz4a0Xnp}/_ssgManifest.js +0 -0
  51. /khoj/interface/compiled/_next/static/chunks/{1327-3b1a41af530fa8ee.js → 1327-1a9107b9a2a04a98.js} +0 -0
  52. /khoj/interface/compiled/_next/static/chunks/{1915-fbfe167c84ad60c5.js → 1915-5c6508f6ebb62a30.js} +0 -0
  53. /khoj/interface/compiled/_next/static/chunks/{2117-e78b6902ad6f75ec.js → 2117-080746c8e170c81a.js} +0 -0
  54. /khoj/interface/compiled/_next/static/chunks/{2939-4d4084c5b888b960.js → 2939-4af3fd24b8ffc9ad.js} +0 -0
  55. /khoj/interface/compiled/_next/static/chunks/{4447-d6cf93724d57e34b.js → 4447-cd95608f8e93e711.js} +0 -0
  56. /khoj/interface/compiled/_next/static/chunks/{8667-4b7790573b08c50d.js → 8667-50b03a89e82e0ba7.js} +0 -0
  57. {khoj-2.0.0b7.dev1.dist-info → khoj-2.0.0b8.dist-info}/WHEEL +0 -0
  58. {khoj-2.0.0b7.dev1.dist-info → khoj-2.0.0b8.dist-info}/entry_points.txt +0 -0
  59. {khoj-2.0.0b7.dev1.dist-info → khoj-2.0.0b8.dist-info}/licenses/LICENSE +0 -0
khoj/routers/research.py CHANGED
@@ -58,7 +58,7 @@ async def apick_next_tool(
58
58
  query_files: str = None,
59
59
  max_document_searches: int = 7,
60
60
  max_online_searches: int = 3,
61
- max_webpages_to_read: int = 1,
61
+ max_webpages_to_read: int = 3,
62
62
  send_status_func: Optional[Callable] = None,
63
63
  tracer: dict = {},
64
64
  ):
@@ -86,25 +86,40 @@ async def apick_next_tool(
86
86
  # Construct tool options for the agent to choose from
87
87
  tools = []
88
88
  tool_options_str = ""
89
- agent_tools = agent.input_tools if agent else []
89
+ agent_input_tools = agent.input_tools if agent else []
90
+ agent_tools = []
91
+
92
+ # Map agent user facing tools to research tools to include in agents toolbox
93
+ document_research_tools = [
94
+ ConversationCommand.SemanticSearchFiles,
95
+ ConversationCommand.RegexSearchFiles,
96
+ ConversationCommand.ViewFile,
97
+ ConversationCommand.ListFiles,
98
+ ]
99
+ input_tools_to_research_tools = {
100
+ ConversationCommand.Notes.value: [tool.value for tool in document_research_tools],
101
+ ConversationCommand.Webpage.value: [ConversationCommand.ReadWebpage.value],
102
+ ConversationCommand.Online.value: [ConversationCommand.SearchWeb.value],
103
+ ConversationCommand.Code.value: [ConversationCommand.RunCode.value],
104
+ ConversationCommand.Operator.value: [ConversationCommand.OperateComputer.value],
105
+ }
106
+ for input_tool, research_tools in input_tools_to_research_tools.items():
107
+ if input_tool in agent_input_tools:
108
+ agent_tools += research_tools
109
+
90
110
  user_has_entries = await EntryAdapters.auser_has_entries(user)
91
111
  for tool, tool_data in tools_for_research_llm.items():
92
112
  # Skip showing operator tool as an option if not enabled
93
- if tool == ConversationCommand.Operator and not is_operator_enabled():
113
+ if tool == ConversationCommand.OperateComputer and not is_operator_enabled():
94
114
  continue
95
115
  # Skip showing document related tools if user has no documents
96
- if (
97
- tool == ConversationCommand.SemanticSearchFiles
98
- or tool == ConversationCommand.RegexSearchFiles
99
- or tool == ConversationCommand.ViewFile
100
- or tool == ConversationCommand.ListFiles
101
- ) and not user_has_entries:
116
+ if tool in document_research_tools and not user_has_entries:
102
117
  continue
103
118
  if tool == ConversationCommand.SemanticSearchFiles:
104
119
  description = tool_data.description.format(max_search_queries=max_document_searches)
105
- elif tool == ConversationCommand.Webpage:
120
+ elif tool == ConversationCommand.ReadWebpage:
106
121
  description = tool_data.description.format(max_webpages_to_read=max_webpages_to_read)
107
- elif tool == ConversationCommand.Online:
122
+ elif tool == ConversationCommand.SearchWeb:
108
123
  description = tool_data.description.format(max_search_queries=max_online_searches)
109
124
  else:
110
125
  description = tool_data.description
@@ -321,7 +336,9 @@ async def research(
321
336
  try:
322
337
  async for result in search_online(
323
338
  **this_iteration.query.args,
324
- conversation_history=construct_tool_chat_history(previous_iterations, ConversationCommand.Online),
339
+ conversation_history=construct_tool_chat_history(
340
+ previous_iterations, ConversationCommand.SearchWeb
341
+ ),
325
342
  location=location,
326
343
  user=user,
327
344
  send_status_func=send_status_func,
@@ -377,7 +394,7 @@ async def research(
377
394
  try:
378
395
  async for result in run_code(
379
396
  **this_iteration.query.args,
380
- conversation_history=construct_tool_chat_history(previous_iterations, ConversationCommand.Code),
397
+ conversation_history=construct_tool_chat_history(previous_iterations, ConversationCommand.RunCode),
381
398
  context="",
382
399
  location_data=location,
383
400
  user=user,
@@ -235,6 +235,7 @@ def initialization(interactive: bool = True):
235
235
 
236
236
  chat_model_options = {
237
237
  "name": chat_model,
238
+ "friendly_name": chat_model,
238
239
  "model_type": model_type,
239
240
  "max_prompt_size": default_max_tokens,
240
241
  "vision_enabled": vision_enabled,
@@ -275,6 +276,7 @@ def initialization(interactive: bool = True):
275
276
  if not existing_models.filter(name=model_name).exists():
276
277
  ChatModel.objects.create(
277
278
  name=model_name,
279
+ friendly_name=model_name,
278
280
  model_type=ChatModel.ModelType.OPENAI,
279
281
  max_prompt_size=model_to_prompt_size.get(model_name),
280
282
  vision_enabled=model_name in default_openai_chat_models,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: khoj
3
- Version: 2.0.0b7.dev1
3
+ Version: 2.0.0b8
4
4
  Summary: Your Second Brain
5
5
  Project-URL: Homepage, https://khoj.dev
6
6
  Project-URL: Documentation, https://docs.khoj.dev
@@ -1,6 +1,6 @@
1
1
  khoj/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  khoj/configure.py,sha256=Z3c3cE4-pqZ5eqGA8lRqcpNlDRby4cjtcFYVD2RD4i8,18994
3
- khoj/main.py,sha256=UScenj61cw-FK8mrf6G2P6jE63SztDsQzWwNjFRfBkg,8523
3
+ khoj/main.py,sha256=IGqt13JZoGLWYsSWM8bv-ChJSEFJwpN1zL5bX3GhIOo,8638
4
4
  khoj/manage.py,sha256=njo6uLxGaMamTPesHjFEOIBJbpIUrz39e1V59zKj544,664
5
5
  khoj/app/README.md,sha256=PSQjKCdpU2hgszLVF8yEhV7TWhbEEb-1aYLTRuuAsKI,2832
6
6
  khoj/app/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -11,7 +11,7 @@ khoj/database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  khoj/database/admin.py,sha256=CfIAnwxV_HfbnhyjVqk9wtrz8hHnStFu-7ap82x6lYU,13256
12
12
  khoj/database/apps.py,sha256=pM4tkX5Odw4YW_hLLKK8Nd5kqGddf1en0oMCea44RZw,153
13
13
  khoj/database/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
14
- khoj/database/adapters/__init__.py,sha256=cLYuuQorXD2DH8e2iMYP1G23dyFrzk3lMP_1O365vcA,82975
14
+ khoj/database/adapters/__init__.py,sha256=b1PZyRqnlJrVqaB98ChsiW7ajrFoJXpE4rEZ5BoXNt8,83018
15
15
  khoj/database/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  khoj/database/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  khoj/database/management/commands/change_default_model.py,sha256=6QXJttG58gpU7vZApQEeEPVNAuhjU2xa6_BwJsfz320,4877
@@ -131,33 +131,35 @@ khoj/interface/compiled/chat.svg,sha256=l2JoYRRgk201adTTdvJ-buKUrc0WGfsudix5xEvt
131
131
  khoj/interface/compiled/close.svg,sha256=hQ2iFLkNzHk0_iyTrSbwnWAeXYlgA-c2Eof2Iqh76n4,417
132
132
  khoj/interface/compiled/copy-button-success.svg,sha256=byqWAYD3Pn9IOXRjOKudJ-TJbP2UESbQGvtLWazNGjY,829
133
133
  khoj/interface/compiled/copy-button.svg,sha256=05bKM2eRxksfBlAPT7yMaoNJEk85bZCxQg67EVrPeHo,669
134
- khoj/interface/compiled/index.html,sha256=C61N8YvfEQzMkf9o5yFPAIifm16RG2dj0wmEG2Jzn3Q,53660
135
- khoj/interface/compiled/index.txt,sha256=dpd0-y_XEzrcwa89lO3lpe3oJqquHnnZoYkHyotxb84,7880
134
+ khoj/interface/compiled/index.html,sha256=y1PdgNdmRcgLNJp_P7qJ5yuP81i7Gbs8e8U_nGcjtcU,53350
135
+ khoj/interface/compiled/index.txt,sha256=7OaDngzCIYpJ50oso_YPtQ1mlLwX9lUgx-FS-OFYbXc,7747
136
136
  khoj/interface/compiled/khoj.webmanifest,sha256=9wOK2BMS6xH5NKd2eaUgTLg9WepIxB2K2U33KU89LD8,2543
137
137
  khoj/interface/compiled/logo.svg,sha256=_QCKVYM4WT2Qhcf7aVFImjq_s5CwjynGXYAOgI7yf8w,8059
138
138
  khoj/interface/compiled/send.svg,sha256=VdavOWkVddcwcGcld6pdfmwfz7S91M-9O28cfeiKJkM,635
139
139
  khoj/interface/compiled/share.svg,sha256=91lwo75PvMDrgocuZQab6EQ62CxRbubh9Bhw7CWMKbg,1221
140
140
  khoj/interface/compiled/thumbs-down.svg,sha256=JGNl-DwoRmH2XFMPWwFFklmoYtKxaQbkLE3nuYKe8ZY,1019
141
141
  khoj/interface/compiled/thumbs-up.svg,sha256=yS1wxTRtiztkN-6nZciLoYQUB_KTYNPV8xFRwH2TQFw,1036
142
- khoj/interface/compiled/404/index.html,sha256=uhd1eLElfkreRDq-3Em8vv7WNeE5PqvTxTj5f3LFFi0,17407
142
+ khoj/interface/compiled/404/index.html,sha256=B3TTIL-VLQ4N9rbb4qsH4Pc2vNCJ0Rw-kg6kblZeQY0,17407
143
+ khoj/interface/compiled/_next/static/KYnLswBdMI-yacz4a0Xnp/_buildManifest.js,sha256=f2_nYnw25hHWQJ-39Lf5OH1u6kgdbOInyfplqgjvAV4,224
144
+ khoj/interface/compiled/_next/static/KYnLswBdMI-yacz4a0Xnp/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
143
145
  khoj/interface/compiled/_next/static/chunks/1191.b547ec13349b4aed.js,sha256=3qtdOft2SSaGT0qhyPunEraJEZUxIqDV4q3ULnFantg,10913
144
- khoj/interface/compiled/_next/static/chunks/1327-3b1a41af530fa8ee.js,sha256=7NmSOycXRGHpTN98sMAirnWN8ZUL971FsQpWmOs4Fxs,442974
146
+ khoj/interface/compiled/_next/static/chunks/1327-1a9107b9a2a04a98.js,sha256=7NmSOycXRGHpTN98sMAirnWN8ZUL971FsQpWmOs4Fxs,442974
145
147
  khoj/interface/compiled/_next/static/chunks/1588.f0558a0bdffc4761.js,sha256=ZSpLe7ui7FG7AvK00JHPg1YjYz8R9l1Obzu1mYHpzjo,89845
146
- khoj/interface/compiled/_next/static/chunks/1915-fbfe167c84ad60c5.js,sha256=qP_naVeN_Vqu4o2bOYGBoDEYCFVDphWwLqa_3_WeYjU,11294
148
+ khoj/interface/compiled/_next/static/chunks/1915-5c6508f6ebb62a30.js,sha256=qP_naVeN_Vqu4o2bOYGBoDEYCFVDphWwLqa_3_WeYjU,11294
147
149
  khoj/interface/compiled/_next/static/chunks/1918.925cb4a35518d258.js,sha256=WWqQcBDm9KEZUpj0P9p-iiVxoVjnM4PGtAyQXGAZ4yo,6088
148
- khoj/interface/compiled/_next/static/chunks/2117-e78b6902ad6f75ec.js,sha256=yOBtQrL5NRMjI60r4pmZRRTHZv8_xwZm4DQp-RI8H9M,123994
150
+ khoj/interface/compiled/_next/static/chunks/2117-080746c8e170c81a.js,sha256=yOBtQrL5NRMjI60r4pmZRRTHZv8_xwZm4DQp-RI8H9M,123994
149
151
  khoj/interface/compiled/_next/static/chunks/2242.9a07e19f1a3a8b16.js,sha256=gE2wenv7eMCWo8FlC8uOffniVrbcSyi2BfpoDygPJbQ,6535
150
152
  khoj/interface/compiled/_next/static/chunks/2327-ea623ca2d22f78e9.js,sha256=Cwaj5_kmqMRmZH2CdtZG5T5dvdyBL8fL2HrpY4jfLCI,127516
151
153
  khoj/interface/compiled/_next/static/chunks/2612.bcf5a623b3da209e.js,sha256=_odabGQTNjtpFLdU6FmDdC9zZQkYKJOs8_8QVgMJmEI,76988
152
154
  khoj/interface/compiled/_next/static/chunks/2849.dc00ae5ba7219cfc.js,sha256=cVUiYRj2GweNQ4unKpJIhdr_xO5s2hRy3UWK-81rZW8,182
153
- khoj/interface/compiled/_next/static/chunks/2939-4d4084c5b888b960.js,sha256=8BI0oAQSZQj37UZX_igaTvuTgW0nGvVtvyG9G9byr_k,35749
155
+ khoj/interface/compiled/_next/static/chunks/2939-4af3fd24b8ffc9ad.js,sha256=8BI0oAQSZQj37UZX_igaTvuTgW0nGvVtvyG9G9byr_k,35749
154
156
  khoj/interface/compiled/_next/static/chunks/303.fe76de943e930fbd.js,sha256=gvkmkEYSLe4Iy-8Ti4Ty_OYjkHyrIpgUnfuoQSX577g,178
155
157
  khoj/interface/compiled/_next/static/chunks/3265.924139c4146ee344.js,sha256=O0nwy9HzDY8Df66o72--Lw9RguS5Mh4ExT-uBxdRUbA,636
156
158
  khoj/interface/compiled/_next/static/chunks/3489.c523fe96a2eee74f.js,sha256=s2F6I_29rsqcu-8229-nssfws7vZO7cuQJYqehK7tbk,21715
157
159
  khoj/interface/compiled/_next/static/chunks/3592-b2a2444b0ec7b119.js,sha256=ADfFNp0QHqmz0sHmTSpE-hWnh09AxVVzZb6zcx_ATmg,42200
158
160
  khoj/interface/compiled/_next/static/chunks/3595-ac8e81e04ecb89cb.js,sha256=43eYa6m0ZuFnnBOPTa6S-T0WeLftHEZDlkMe4b7fmIA,21564
159
161
  khoj/interface/compiled/_next/static/chunks/4327.8d2a1b8f1ea78208.js,sha256=VKeC1Y6778Nlt-spX9W9dL8Ex-d2N5AEj53AOVUXGWE,322147
160
- khoj/interface/compiled/_next/static/chunks/4447-d6cf93724d57e34b.js,sha256=PUldPCrWRAgi5rxqTzWS1boopyuyAQpzzBg-p4TQnNw,19716
162
+ khoj/interface/compiled/_next/static/chunks/4447-cd95608f8e93e711.js,sha256=PUldPCrWRAgi5rxqTzWS1boopyuyAQpzzBg-p4TQnNw,19716
161
163
  khoj/interface/compiled/_next/static/chunks/4533.586e74b45a2bde25.js,sha256=eDHOyGa-CuCVeyXtnx3YWmjvlpWveAj6Mu-bMlm3OJg,25567
162
164
  khoj/interface/compiled/_next/static/chunks/4551.82ce1476b5516bc2.js,sha256=G1EoTZRkMLtwYqsLCyQ9iA_9nvi8oj7_t3qboNWtdfY,71097
163
165
  khoj/interface/compiled/_next/static/chunks/4609-33aa487dff03a9fd.js,sha256=1M6QAfVZa2g2Q4jXRdSI1wjrZ4G9yKjINJt8qyTKm1A,24698
@@ -183,7 +185,7 @@ khoj/interface/compiled/_next/static/chunks/7760.35649cc21d9585bd.js,sha256=MJ9q
183
185
  khoj/interface/compiled/_next/static/chunks/83.48e2db193a940052.js,sha256=j8X0kemaNExxw4lDZCgkev1HeK37NM_kE6p73WuHjs8,175
184
186
  khoj/interface/compiled/_next/static/chunks/8427.844694e06133fb51.js,sha256=U388feyx6dj6PZblInnwOgAKlPg1f2Vp-oCFhh2SiXY,186
185
187
  khoj/interface/compiled/_next/static/chunks/8665.4db7e6b2e8933497.js,sha256=HovLNJSM0SJRkjLNg0cim_NDnGiVPbUrEQG8YQkGA2Y,45791
186
- khoj/interface/compiled/_next/static/chunks/8667-4b7790573b08c50d.js,sha256=kyiAVJTylsiOPFTb63uZn_pMlk4pYhDYt_N7xL76PTM,7214
188
+ khoj/interface/compiled/_next/static/chunks/8667-50b03a89e82e0ba7.js,sha256=kyiAVJTylsiOPFTb63uZn_pMlk4pYhDYt_N7xL76PTM,7214
187
189
  khoj/interface/compiled/_next/static/chunks/8694.2bd9c2f65d8c5847.js,sha256=JKqMqrtPf1LK-SmVgLk_F8EjAC6IGKl4lnfWU6q4JXA,33661
188
190
  khoj/interface/compiled/_next/static/chunks/872.caf84cc1a39ae59f.js,sha256=xdPZDnCGiugQ4JwV1FzzYyBEvuXQLOqSw_cMbOJKjtw,11253
189
191
  khoj/interface/compiled/_next/static/chunks/8888.ebe0e552b59e7fed.js,sha256=c5icsYFTx7epn588gtjfP9lKKMdINc07w1P7t56ac8E,3775
@@ -207,35 +209,33 @@ khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js,sha256
207
209
  khoj/interface/compiled/_next/static/chunks/main-app-de1f09df97a3cfc7.js,sha256=bqnztujKItXfFBzQlaBmDZyfJpQt_M93CXOuchJfpD0,471
208
210
  khoj/interface/compiled/_next/static/chunks/main-fc8e0fefa2ef3d8c.js,sha256=t9FZIByh6V52m41LQ2yyAReF1CAuY7gLMBuWBeKCX2g,116793
209
211
  khoj/interface/compiled/_next/static/chunks/polyfills-42372ed130431b0a.js,sha256=CXPB1kyIrcjjyVBBDLWLKI9yEY1ZZbeASUON648vloM,112594
210
- khoj/interface/compiled/_next/static/chunks/webpack-ad333982c1412e1c.js,sha256=etG98E6WX04Qfhp63n7VWB3X5lAlQlDLB4c_6xNFys8,4951
212
+ khoj/interface/compiled/_next/static/chunks/webpack-6d019c38afe1fe65.js,sha256=YSEoxPmdoCr5sPdDqyLuywTliJrVdJY2sfmCy08ePcs,4949
211
213
  khoj/interface/compiled/_next/static/chunks/app/layout-c2de87a25fededbb.js,sha256=jcU3C37p73V24B118uVRQffNaQES9jihsTGYF4fZ_8o,3949
212
- khoj/interface/compiled/_next/static/chunks/app/page-6e91caf9bc0c8aba.js,sha256=zXHvQ3IpAsPr8cLzKvcxzE2Y0SWnjJ3IKv22d2-eXJo,29935
214
+ khoj/interface/compiled/_next/static/chunks/app/page-2025944ec1f80144.js,sha256=rz32GmtosFqTqGeK833or3Hjq6Q64yuTsv-vaWh1XAE,29929
213
215
  khoj/interface/compiled/_next/static/chunks/app/_not-found/page-84f94d15b2da4eac.js,sha256=zElhiTkdu2JqrEvJ8Lrxh4HCyfLmPllBHHWOuDtrVlw,1755
214
- khoj/interface/compiled/_next/static/chunks/app/agents/layout-e3d72f0edda6aa0c.js,sha256=FeKQJdykhxnWEDPTdB4jbsqbkKu2UmsIEiTSZevNegg,180
215
- khoj/interface/compiled/_next/static/chunks/app/agents/page-0006674668eb5a4d.js,sha256=JZZS6jOjzfVYE6E76Fl0iou8Jc_1T_-PzPh6rCAYOjY,17488
216
+ khoj/interface/compiled/_next/static/chunks/app/agents/layout-1b6273baddb72146.js,sha256=mLo7avyr3x2HXbQwaL5vwu7szO_576TnQdOXdtinRI8,180
217
+ khoj/interface/compiled/_next/static/chunks/app/agents/page-9a4610474cd59a71.js,sha256=itxLHi5MI0FicmxrMQidcn-TiDOEec_Jr9M94Aqbhew,17483
216
218
  khoj/interface/compiled/_next/static/chunks/app/automations/layout-63603d2cb33279f7.js,sha256=4OX_fcTQdNVs6HxDdJVWdadMVC_gM86Tkqo2TjBA4gw,5143
217
- khoj/interface/compiled/_next/static/chunks/app/automations/page-4c465cde2d14cb52.js,sha256=X--w9ZCke8H6d-oGLF97ihEA3E5_lIusQlwDeb80CMI,34834
218
- khoj/interface/compiled/_next/static/chunks/app/chat/layout-01fa675d4d56157c.js,sha256=1dS2MBx00yyKfsMfrfdS65tNKvaQW_PYdeuTr1lGl80,180
219
- khoj/interface/compiled/_next/static/chunks/app/chat/page-d9c7aa9d3969c0e9.js,sha256=cddBqPUVgc9x8zns0S_-ekI9-mDrVyZ7fS_apZEXPMM,29326
220
- khoj/interface/compiled/_next/static/chunks/app/search/layout-52594c685679f537.js,sha256=LJ3SCpxL_nd20lf0L0jLxrwAn-1-kwP3D4I7leYSDQU,180
221
- khoj/interface/compiled/_next/static/chunks/app/search/page-883b7d8d2e3abe3e.js,sha256=GCSw4fBzRPRnj9YKz1lwEpVbwwOfWmp8p3n-jDeTGGk,30929
219
+ khoj/interface/compiled/_next/static/chunks/app/automations/page-f7bb9d777b7745d4.js,sha256=2qWZHB-9I9wtGTmajkSbdqLHfJFuPnHAsw7E42Wwomc,34829
220
+ khoj/interface/compiled/_next/static/chunks/app/chat/layout-ad4d1792ab1a4108.js,sha256=g815zvSZenVssWcOYjyqAOPDjTCa359nqspXeIsXQ5A,180
221
+ khoj/interface/compiled/_next/static/chunks/app/chat/page-605eb8a5b75ae10f.js,sha256=0eRRJvmxbUygQVzuLO38Ug6y-p20DuaqPMToQmkIZAM,29354
222
+ khoj/interface/compiled/_next/static/chunks/app/search/layout-4505b79deb734a30.js,sha256=HPQfR8XLd1MObIR-vRu0kAWYesDP3yGGTA7jyORnrX4,180
223
+ khoj/interface/compiled/_next/static/chunks/app/search/page-4885df3cd175c957.js,sha256=DFDpUem-27PpUEfqc72xv3zo7TcZpTFjvyXszZSGrNM,30929
222
224
  khoj/interface/compiled/_next/static/chunks/app/settings/layout-f88cedfe9ad4df7c.js,sha256=aFBEgUCsKnoeyULmh7g-DmaznQ0ztcq6y2pj4bSMCIY,6132
223
- khoj/interface/compiled/_next/static/chunks/app/settings/page-95e994ddac31473f.js,sha256=bUMhd4ALsGVOaMrH-n0wxsDNtAmaZvMaQbK_K9C-Osk,27897
224
- khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-64a53f8ec4afa6b3.js,sha256=vSWDZtrfHaKt9-zHQXCliMs5g3Ivwli2qaH83lo6x_4,180
225
- khoj/interface/compiled/_next/static/chunks/app/share/chat/page-8c8c175f7f212b03.js,sha256=4zHoETDoZ7mw0K3yLPcoMAoWvc6WRa0G2naxUA6QEZE,5563
225
+ khoj/interface/compiled/_next/static/chunks/app/settings/page-8be3b35178abf2ec.js,sha256=bjgxTUvgwJtv0R8zVFrH-1L8PiUDL5BlolZkDrYk-e4,27892
226
+ khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-e8e5db7830bf3f47.js,sha256=rcoit2AQboqPwZMTVlVhz1AbyHRJOs-xNMTdYonejCU,180
227
+ khoj/interface/compiled/_next/static/chunks/app/share/chat/page-ee8ef5270163e7f2.js,sha256=8B0LDeYsH_tp9WzvzoTCI15GZoBprbG0a5ePjywqrrw,5557
226
228
  khoj/interface/compiled/_next/static/chunks/pages/_app-3c9ca398d360b709.js,sha256=UqtikLsCsOWtDUJOW6Tuk9P-bV1V3MhYd3ghrQuEmfs,286
227
229
  khoj/interface/compiled/_next/static/chunks/pages/_error-cf5ca766ac8f493f.js,sha256=w_It3VzKT8O1M3CrJ_hZHsaU7M7dq3EAaVG8KvJ-fhU,253
230
+ khoj/interface/compiled/_next/static/css/102b97d6472fdd3a.css,sha256=Bgp42fbn5uQu_g0IXo55zpMLiBEyYHSGO3iWbFoaO90,34067
228
231
  khoj/interface/compiled/_next/static/css/3090706713c12a32.css,sha256=lHBNcr2SPiAMdZQONh2MMlVM_huteuNSM9jCqGkS2d0,3075782
232
+ khoj/interface/compiled/_next/static/css/37a73b87f02df402.css,sha256=hp0vlekKu0K2eITR5YIqFmLHQPqV3JETFnRd_-Uh0mk,165
229
233
  khoj/interface/compiled/_next/static/css/5b28ced915454767.css,sha256=Bk56AIRHovIWNUw8QWvMbXIxxPiyWEiObkMA7RwpMrs,4842
230
- khoj/interface/compiled/_next/static/css/6ab9f0a425580544.css,sha256=tI-s9mFjdnfES7A-z7mevb7UHDdUvPNy3wY88su--nU,34162
231
234
  khoj/interface/compiled/_next/static/css/7889a30fe9c83846.css,sha256=IUkZhkx4GpYOIhN-EJw9T1DqGMO3Wa3mNpUwaOBuZoY,7204
235
+ khoj/interface/compiled/_next/static/css/c34713c98384ee87.css,sha256=uypGqyDrKf-9vcU_Rf9as1XLvMSMDDfKQjmHnLaixfM,9831
232
236
  khoj/interface/compiled/_next/static/css/db7d90554f3ab82b.css,sha256=A3ZAf0StEG3sr_LxAIizczSTYRe1NbtNUpfslvmkqgk,17713
233
237
  khoj/interface/compiled/_next/static/css/ea5485b3f3859a5a.css,sha256=tn6qi2xSLTWhtzDUE8UlC8iipH9QGV6A9oGj1ap-Sk4,1659
234
- khoj/interface/compiled/_next/static/css/ee66643a6a5bf71c.css,sha256=3JbJLrnwlX_IHdvjmS3l9y3Vgp5_V0XbfFI44ekLh9E,3106
235
- khoj/interface/compiled/_next/static/css/fbacbdfd5e7f3f0e.css,sha256=83EGhzX5xQHd-qC-hAcrRUaUAHJJBowDdzi-7Lp81v8,6795
236
238
  khoj/interface/compiled/_next/static/css/fc82e43baa9ae218.css,sha256=Be_9BdHEyKPRPxUfj8TohYKFuadPKlvY6aiIh7yGMNQ,2408
237
- khoj/interface/compiled/_next/static/kv2VFg4VPqhfhPbW7POfA/_buildManifest.js,sha256=f2_nYnw25hHWQJ-39Lf5OH1u6kgdbOInyfplqgjvAV4,224
238
- khoj/interface/compiled/_next/static/kv2VFg4VPqhfhPbW7POfA/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
239
239
  khoj/interface/compiled/_next/static/media/1d8a05b60287ae6c-s.p.woff2,sha256=IzKBwB_bpSGvO7C9aRv29Js-jAbZPRDI-D-P4H2P918,14508
240
240
  khoj/interface/compiled/_next/static/media/2aa11a72f7f24b58-s.woff2,sha256=QjuuSKmViymmy-itXLB1UbSARxFNHWuMiPpCrYqClFI,22728
241
241
  khoj/interface/compiled/_next/static/media/383a65b63658737d-s.woff2,sha256=VH1XkI87HdFVhsurH5D5ekEjG_ZORTVBVg6xz7p87C8,16704
@@ -313,8 +313,8 @@ khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp,sha256=M2AW_HLpBn
313
313
  khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp,sha256=BBeRPBZkxY3-aKkMnYv5TSkxmbeMbyUH4VRIPfrWg1E,137406
314
314
  khoj/interface/compiled/_next/static/media/globe.98e105ca.webp,sha256=g3ofb8-W9GM75zIhlvQhaS8I2py9TtrovOKR3_7Jf04,514
315
315
  khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp,sha256=I_N7Yke3IOoS-0CC6XD8o0IUWG8PdPbrHmf6lpgWlZY,1380
316
- khoj/interface/compiled/agents/index.html,sha256=xExDzyK7XRYwVAEcgTAjoIyu2kwZ-RHmG75bfKDK-HA,16842
317
- khoj/interface/compiled/agents/index.txt,sha256=l4UmaulAS2D_oqy5Tp0jt_UnY_EnM7x9XkKFioyJtlI,7484
316
+ khoj/interface/compiled/agents/index.html,sha256=Xfbh88MdugXIzXjCz72C4QGNrV7xWkHw32wW12jH9BU,16532
317
+ khoj/interface/compiled/agents/index.txt,sha256=S9Ax5qSdgsOL5WCvPoxV7H_9iP2rfLsD6z4_vC0va10,7351
318
318
  khoj/interface/compiled/assets/icons/khoj_lantern.ico,sha256=eggu-B_v3z1R53EjOFhIqqPnICBGdoaw1xnc0NrzHck,174144
319
319
  khoj/interface/compiled/assets/icons/khoj_lantern.svg,sha256=I_8XP5X84gEOoCRhCRKOQn_GKZrz3SUBXct7WxHvY7c,8767
320
320
  khoj/interface/compiled/assets/icons/khoj_lantern_1200x1200.png,sha256=xDx0bbD-WMflgg8zck9oPIIuTIvywtuED2k7CjSQS4w,66194
@@ -329,16 +329,16 @@ khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png,sha256=i
329
329
  khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png,sha256=Dd4fPwtFl6BWqnHjeb1mCK_ND0hhHsWtx8sNE7EiMuE,406179
330
330
  khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png,sha256=DEDaNRCkfEWUeh3kYZWIQDTVK1a6KKnYdwj5ZWisN_Q,82985
331
331
  khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png,sha256=Ma3blirRmq3X4oYSsDbbT7MDn29rymDrjwmUfA9BMuM,236285
332
- khoj/interface/compiled/automations/index.html,sha256=wH3nQaVH4RM40frZwEtYRcZCLwuXODScPnN8_S5foEk,54712
333
- khoj/interface/compiled/automations/index.txt,sha256=GotdbWlKDCZe2L6tZNa-eteseP-UVb_ow1EkWCMs4fA,7713
334
- khoj/interface/compiled/chat/index.html,sha256=ySytlRBFnqRoDIUp2xAI7ipIu5RR4nhEPSKlmadiBkU,54152
335
- khoj/interface/compiled/chat/index.txt,sha256=bRRR5jCbZPhq_7F4W1iIpss3wW7jLwjcRM3zZAgv53M,8257
336
- khoj/interface/compiled/search/index.html,sha256=IjEr3RWtRFLTWPOsXF2Al-E82tTayluYxkmME8suCHA,55611
337
- khoj/interface/compiled/search/index.txt,sha256=J0UkDP7KBG71wjH1GD5lQ5cJxffPnAz6Qri5AOJFnuU,6698
338
- khoj/interface/compiled/settings/index.html,sha256=DprGidPQQSAsxPrNiV7Uu9a6_8j4f0F4xwhIPJR0q0w,53360
339
- khoj/interface/compiled/settings/index.txt,sha256=o7sd9jUogFd2do3yldKiW0grctk2pL7gklxx-zR4Byg,7967
340
- khoj/interface/compiled/share/chat/index.html,sha256=tR9BfhT0tl2Yc66DezxaRlVlJEAT7Db4HSVB9bIiYKI,54112
341
- khoj/interface/compiled/share/chat/index.txt,sha256=LZYir6ro1PxnTlEFXyRKem1Nj4RNLZjzg8hfLT-YMgk,8453
332
+ khoj/interface/compiled/automations/index.html,sha256=yJov-I9kIKpjw7nmmehaLkU8-5jbsZVJIC4h-We8HNs,54402
333
+ khoj/interface/compiled/automations/index.txt,sha256=KYv-6dVhA4Db6XHdINEUqsx2w8EDxRK-7tGmPFx2OME,7580
334
+ khoj/interface/compiled/chat/index.html,sha256=z1TcajS-I0avKQQZQxlIrKu_q8FdTADoncxsSf421hw,53842
335
+ khoj/interface/compiled/chat/index.txt,sha256=MnMCMGGsVQcYjrGBLpw0MVp50I0qhHdvOjNlJcG_gDk,8124
336
+ khoj/interface/compiled/search/index.html,sha256=5lNvD8rUAZagECulvEUzfes4rNPNeCBGvr0Z5xH5gFo,55611
337
+ khoj/interface/compiled/search/index.txt,sha256=PtNb0s3nQEZbqlCqIojuqDqxusABVU6wCEEz5DCyLt0,6698
338
+ khoj/interface/compiled/settings/index.html,sha256=ocMn877tnpXGRrzBvNNSv8-FVV1qWxSJUkY-61SdjkU,53050
339
+ khoj/interface/compiled/settings/index.txt,sha256=eePG2J499Lrm-0ezMPY4apsnpZ3QcM4mQeqtg0e0UTE,7834
340
+ khoj/interface/compiled/share/chat/index.html,sha256=BAkYRQzATzTKLpQ0kBwL1T3lT9N2u8bhy-E01YW28OY,53802
341
+ khoj/interface/compiled/share/chat/index.txt,sha256=H9dRAJmbT6CCuSJ3xy-YIcbDXvwqfG8xTwYGBNhHFAc,8320
342
342
  khoj/interface/email/feedback.html,sha256=xksuPFamx4hGWyTTxZKRgX_eiYQQEuv-eK9Xmkt-nwU,1216
343
343
  khoj/interface/email/magic_link.html,sha256=372ESbTPKM9acekuZcOIKOw6kBl-KikFg_L9MOHqJkg,2094
344
344
  khoj/interface/email/task.html,sha256=tY7a0gzVeQ2lSQNu7WyXR_s7VYeWTrxWEj1iHVuoVE4,2813
@@ -391,20 +391,20 @@ khoj/processor/content/plaintext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRk
391
391
  khoj/processor/content/plaintext/plaintext_to_entries.py,sha256=wFZwK_zIc7gWbRtO9sOHo9KvfhGAzL9psX_nKWYFduo,4975
392
392
  khoj/processor/conversation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
393
393
  khoj/processor/conversation/prompts.py,sha256=F0MVg81Tr7L4W7ubx_UJ-D4PqgGCElTg8KLpQjdPuIk,54207
394
- khoj/processor/conversation/utils.py,sha256=OQGu_LOJEuRWVy6e4obeCkAdc39D_IeUHMf9kM2Wqrk,48532
394
+ khoj/processor/conversation/utils.py,sha256=bnJeBZkcwVMYHpidnAEt2g0oOSlx8p1Lv-UDgP-YonY,48645
395
395
  khoj/processor/conversation/anthropic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
396
396
  khoj/processor/conversation/anthropic/anthropic_chat.py,sha256=6IG-YlpFx86EgW3PdGuv4xGMRzvHx4xVUcQMqkKn4vs,5358
397
- khoj/processor/conversation/anthropic/utils.py,sha256=tvI3s8bh4tW9qxJAyvQqhoqqjLs3wCd5dc78cq0HSwo,16293
397
+ khoj/processor/conversation/anthropic/utils.py,sha256=Z7mz-LnunLHubZvdzNEAozlJxukl2eNoLvYzeYzsglc,16568
398
398
  khoj/processor/conversation/google/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
399
399
  khoj/processor/conversation/google/gemini_chat.py,sha256=8AzlMunj-QMzV_g_p5UH-H_IS3p5Qk1wNDTAkYCFuDI,5690
400
- khoj/processor/conversation/google/utils.py,sha256=qBQNXwf-gF_-0RkenqspJs1yMUJa1EqUkDOzh8avZUE,20342
400
+ khoj/processor/conversation/google/utils.py,sha256=qGGP9dttsDMbJr0lDCJ6Gzlc6PFSDfoYOL9Aw22O6UE,20346
401
401
  khoj/processor/conversation/offline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
402
402
  khoj/processor/conversation/offline/chat_model.py,sha256=zsb6HJhfHJ5l6cegq0A6k7YAeYIo3CTLhjaD-jW556g,8597
403
403
  khoj/processor/conversation/offline/utils.py,sha256=51McImxl6u1qgRYvMt7uzsgLGSLq5SMFy74ymlNjIcc,3033
404
404
  khoj/processor/conversation/offline/whisper.py,sha256=DJI-8y8DULO2cQ49m2VOvRyIZ2TxBypc15gM8O3HuMI,470
405
405
  khoj/processor/conversation/openai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
406
  khoj/processor/conversation/openai/gpt.py,sha256=w-VeVoI8xTyS1n36y0sbI2TPP6v-LFriFx9xyfgnt7g,6096
407
- khoj/processor/conversation/openai/utils.py,sha256=tv_MFdC2L7VpI0yA1LWX-0Az_Ff0cLypwb47sRSU-m8,35824
407
+ khoj/processor/conversation/openai/utils.py,sha256=0P-vjY4ip4T3ZZg-VI0y8WgOzppr7m0WI2035vsWU9w,36624
408
408
  khoj/processor/conversation/openai/whisper.py,sha256=zoEeK1LNCg_tzP4xzYi5vRPzNPGuDGzpkrkG7d1LUn4,447
409
409
  khoj/processor/image/generate.py,sha256=bF80fjsHKkU2f2ADiXJei8-ViqcT0EHaM0wH78KPUC8,12199
410
410
  khoj/processor/operator/README.md,sha256=QaV00W1IB7i8ZrvhNkpjmFMVDtORFt-OASieRQGE_UE,2308
@@ -423,7 +423,7 @@ khoj/processor/speech/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
423
423
  khoj/processor/speech/text_to_speech.py,sha256=Q7sapi5Hv6woXOumtrGqR0t6izZrFBkWXFOGrHM6dJ4,1929
424
424
  khoj/processor/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
425
425
  khoj/processor/tools/online_search.py,sha256=JWliYq_IT5EVFk24qo6GWvXuVL5enpSHJQtlmdlrFAc,25976
426
- khoj/processor/tools/run_code.py,sha256=cyuCz61FYPWChuDwxoZHih-kAuC3J4GbL92dV4pOh6Q,12518
426
+ khoj/processor/tools/run_code.py,sha256=Olsy6TL-CdZhugSLrvjWmSNcsT58dUcJTlBQ2hhFl2o,12667
427
427
  khoj/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
428
428
  khoj/routers/api.py,sha256=BFiKwdYjkR-4aHBumM7Hu4XdN2RvQ0Z9V4_2Wd8aPiM,8633
429
429
  khoj/routers/api_agents.py,sha256=QcognyY9FwClgOZw21BF9K7IX16i2070kRoM7c_bKn8,17264
@@ -437,7 +437,7 @@ khoj/routers/auth.py,sha256=jk2lqAS_650lQsoaOFTlZd9W_LL8HbN5zhHTZza_lqs,11258
437
437
  khoj/routers/email.py,sha256=wvr6_fpk0RuKcTPC6suI8JDZPLYzJ9hAhz_G41yZytc,3923
438
438
  khoj/routers/helpers.py,sha256=mwRiVdmJ9A1blkwFlohrFq8Mm09wL9yox10urTbLZuo,116467
439
439
  khoj/routers/notion.py,sha256=g53xyYFmjr2JnuIrTW2vytbfkiK_UkoRTxqnnLSmD5o,2802
440
- khoj/routers/research.py,sha256=GPQJhqpAdmPtcN2gtxzVbDPVQqPg9DqeWPIYF8CZf3s,24197
440
+ khoj/routers/research.py,sha256=PoEWW89iR9BrnQlp8lDWV2VeB9zJ5SoLHZr6ABr3nws,25007
441
441
  khoj/routers/storage.py,sha256=lao0DvsF49QleZvOdjKM98RU2cGfCJDBb7WeoI7Rr3I,2172
442
442
  khoj/routers/twilio.py,sha256=MLsuCm4--ETvr3sLxbF0CL_ehlg_l2rKBSLR2Qh2Xls,1081
443
443
  khoj/routers/web_client.py,sha256=_vyfDaHZZjNoI2LwGNQFRiFmGLkNcgYJe7dOr3mrxH8,4386
@@ -454,14 +454,14 @@ khoj/utils/config.py,sha256=aiOkH0je8A30DAGYTHMRePrgJonFv_i07_7CdhhhcdA,1805
454
454
  khoj/utils/constants.py,sha256=4pIq5yimBR-uFwqrukwjlFvfr8Ir190x4rCkysn-sbE,4244
455
455
  khoj/utils/fs_syncer.py,sha256=5nqwAZqRk3Nwhkwd8y4IomTPZQmW32GwAqyMzal5KyY,9996
456
456
  khoj/utils/helpers.py,sha256=tLO-rn0eThQVuomSxCMtlEN0WKsSaOZw23-4SCRRwy8,42593
457
- khoj/utils/initialization.py,sha256=5eULsvGQv_Kp9bMfrHP8T_QFPjurIFyfq3-rVMWiGa4,15066
457
+ khoj/utils/initialization.py,sha256=_KslgIsoo-1A_ZuouHH3WDbV-TpqBSaID_0b-1xXE0U,15169
458
458
  khoj/utils/jsonl.py,sha256=0Ac_COqr8sLCXntzZtquxuCEVRM2c3yKeDRGhgOBRpQ,1192
459
459
  khoj/utils/models.py,sha256=Q5tcC9-z25sCiub048fLnvZ6_IIO1bcPNxt5payekk0,2009
460
460
  khoj/utils/rawconfig.py,sha256=U8tOr7FPPzn0h-oyK_8Wqlp2ZrnxpFp44iifcTbltqs,5444
461
461
  khoj/utils/state.py,sha256=s_GFWOqRzpEDx0eCPStuzBTK2VEw-qgRpH0aiEdGnDo,1791
462
462
  khoj/utils/yaml.py,sha256=qy1Tkc61rDMesBw_Cyx2vOR6H-Hngcsm5kYfjwQBwkE,1543
463
- khoj-2.0.0b7.dev1.dist-info/METADATA,sha256=mWOL--_NwfikG8cC4s0knir1W2Ae6VvcTQUEnli9tlQ,8973
464
- khoj-2.0.0b7.dev1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
465
- khoj-2.0.0b7.dev1.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
466
- khoj-2.0.0b7.dev1.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
467
- khoj-2.0.0b7.dev1.dist-info/RECORD,,
463
+ khoj-2.0.0b8.dist-info/METADATA,sha256=ngIH_3nzMzKl424cRyw0Tj84NTik3bIxOVM_Ypypc_g,8968
464
+ khoj-2.0.0b8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
465
+ khoj-2.0.0b8.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
466
+ khoj-2.0.0b8.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
467
+ khoj-2.0.0b8.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8459,244,7138,3317],{63521:function(){}},function(n){n.O(0,[2971,2117,1744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3317,244,7138,8459],{63521:function(){}},function(n){n.O(0,[2971,2117,1744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1929],{39929:function(e,s,t){Promise.resolve().then(t.bind(t,42780))},42780:function(e,s,t){"use strict";t.r(s),t.d(s,{default:function(){return er}});var a=t(57437),n=t(63136),i=t.n(n),l=t(2265),o=t(27127),r=t(99376),d=t(14308),c=t(59199);t(2446);var u=t(7436),h=t(5477),m=t(56937),x=t(55287),f=t(60729),p=t(34124),g=t(6512),j=t(37104),v=t(62869),y=t(91890),N=t(68772),b=t(79603),w=t(23594),_=t(34153),S=t(43551),C=t(32046),O=t(5223),k=t(76818),I=t(75256),M=t(24148),E=t(94508),T=t(23518),z=t(57054),B=t(16605);let R=B.fC,L=B.xz,F=l.forwardRef((e,s)=>{let{className:t,align:n="center",sideOffset:i=4,...l}=e;return(0,a.jsx)(B.VY,{ref:s,align:n,sideOffset:i,className:(0,E.cn)("z-50 w-64 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",t),...l})});F.displayName=B.VY.displayName;var A=t(93022);function P(e){var s;let{...t}=e,[n,i]=l.useState(!1),[o,r]=(0,l.useState)(void 0),[d,c]=(0,l.useState)(void 0),{data:h,error:x,isLoading:f}=(0,m.h2)(!0),[p,g]=(0,l.useState)([]),j=(0,u.IC)();return((0,l.useEffect)(()=>{if(!f&&h){if(g(h.chat_model_options),t.initialModel)c(h.chat_model_options.find(e=>e.name===t.initialModel));else{let e=h.chat_model_options.find(e=>e.id===h.selected_chat_model_config);!e&&h.chat_model_options.length>0?c(h.chat_model_options[0]):c(e)}}},[h,t.initialModel,f]),(0,l.useEffect)(()=>{d&&h&&t.onSelect(d)},[d,h,t.onSelect]),f)?(0,a.jsx)(A.O,{className:"w-full h-10"}):x?(0,a.jsx)("div",{className:"text-sm text-error",children:x.message}):(0,a.jsx)("div",{className:"grid gap-2 w-[250px]",children:(0,a.jsxs)(z.J2,{open:n,onOpenChange:i,...t,children:[(0,a.jsx)(z.xo,{asChild:!0,children:(0,a.jsxs)(v.z,{variant:"outline",role:"combobox","aria-expanded":n,"aria-label":"Select a model",className:"w-full justify-between text-left",disabled:null!==(s=t.disabled)&&void 0!==s&&s,children:[(0,a.jsx)("p",{className:"truncate",children:d?d.name.substring(0,20):"Select a model..."}),(0,a.jsx)(I.K,{className:"opacity-50"})]})}),(0,a.jsx)(z.yk,{align:"end",className:"w-[250px] p-0",children:j?(0,a.jsx)("div",{children:(0,a.jsx)(T.mY,{loop:!0,children:(0,a.jsxs)(T.e8,{className:"h-[var(--cmdk-list-height)]",children:[(0,a.jsx)(T.sZ,{placeholder:"Search Models..."}),(0,a.jsx)(T.rb,{children:"No Models found."}),(0,a.jsx)(T.fu,{heading:"Models",children:p&&p.length>0&&p.map(e=>(0,a.jsx)(Z,{model:e,isSelected:(null==d?void 0:d.id)===e.id,onPeek:e=>r(e),onSelect:()=>{c(e),i(!1)},isActive:t.isActive},e.id))},"models")]})})}):(0,a.jsxs)(R,{children:[(0,a.jsx)(F,{side:"left",align:"start",forceMount:!0,className:"min-h-[280px]",children:(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsx)("h4",{className:"font-medium leading-none",children:null==o?void 0:o.name}),(0,a.jsx)("div",{className:"text-sm text-muted-foreground",children:null==o?void 0:o.description}),(null==o?void 0:o.strengths)?(0,a.jsxs)("div",{className:"mt-4 grid gap-2",children:[(0,a.jsx)("h5",{className:"text-sm font-medium leading-none",children:"Strengths"}),(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:o.strengths})]}):null]})}),(0,a.jsxs)("div",{children:[(0,a.jsx)(L,{}),(0,a.jsx)(T.mY,{loop:!0,children:(0,a.jsxs)(T.e8,{className:"h-[var(--cmdk-list-height)]",children:[(0,a.jsx)(T.sZ,{placeholder:"Search Models..."}),(0,a.jsx)(T.rb,{children:"No Models found."}),(0,a.jsx)(T.fu,{heading:"Models",children:p&&p.length>0&&p.map(e=>(0,a.jsx)(Z,{model:e,isSelected:(null==d?void 0:d.id)===e.id,onPeek:e=>r(e),onSelect:()=>{c(e),i(!1)},isActive:t.isActive},e.id))},"models")]})})]})]})})]})})}function Z(e){let{model:s,isSelected:t,onSelect:n,onPeek:i,isActive:o}=e,r=l.useRef(null);return(0,u.Iy)(r,e=>{e.forEach(e=>{var t;"attributes"===e.type&&"aria-selected"===e.attributeName&&(null===(t=r.current)||void 0===t?void 0:t.getAttribute("aria-selected"))==="true"&&i(s)})}),(0,a.jsxs)(T.di,{onSelect:n,ref:r,className:"data-[selected=true]:bg-muted data-[selected=true]:text-secondary-foreground",disabled:!o&&"free"!==s.tier,children:[s.name," ","standard"===s.tier&&(0,a.jsx)("span",{className:"text-green-500 ml-2",children:"(Futurist)"}),(0,a.jsx)(M.J,{className:(0,E.cn)("ml-auto",t?"opacity-100":"opacity-0")})]},s.id)}var J=t(17200),W=t(2602),D=t(69304),K=t(42225),U=t(26815),V=t(9270),H=t(30401);let G=l.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(V.fC,{ref:s,className:(0,E.cn)("peer h-4 w-4 shrink-0 rounded-sm border border-secondary-foreground ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-gray-500 data-[state=checked]:text-primary-foreground",t),...n,children:(0,a.jsx)(V.z$,{className:(0,E.cn)("flex items-center justify-center text-current"),children:(0,a.jsx)(H.Z,{className:"h-4 w-4"})})})});G.displayName=V.fC.displayName;var Q=t(81103),q=t(61312),Y=t(26110),$=t(53647),X=t(84671),ee=t(95186),es=t(27648),et=t(14368);let ea=e=>fetch(e).then(e=>e.json());function en(e){let{...s}=e;return s.isMobileWidth?(0,a.jsx)(D.yo,{open:s.isOpen,onOpenChange:s.onOpenChange,children:(0,a.jsx)(D.ue,{className:"w-[300px] bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",children:(0,a.jsx)(el,{...s})})}):(0,a.jsx)("div",{className:"relative",children:(0,a.jsx)(el,{...s})})}function ei(e){let s=(0,K.BI)(),t=X.xF,[n,i]=(0,l.useState)(!1),[o,r]=(0,l.useState)(),[d,c]=(0,l.useState)(),[u,h]=(0,l.useState)(),[m,x]=(0,l.useState)(!1),[f,p]=(0,l.useState)(),[g,j]=(0,l.useState)(!1),[y,S]=(0,l.useState)();return(0,l.useEffect)(()=>{o&&d&&u?j(!0):j(!1)},[o,d,u]),(0,a.jsxs)(Y.Vq,{children:[(0,a.jsx)(Y.hg,{asChild:!0,children:(0,a.jsx)(v.z,{className:"w-full",variant:"secondary",children:"Create Agent"})}),(0,a.jsxs)(Y.cZ,{children:[(0,a.jsxs)(Y.fK,{children:[m&&f?(0,a.jsxs)(Y.$N,{children:["Created ",o]}):(0,a.jsx)(Y.$N,{children:"Create a New Agent"}),(0,a.jsx)(Y.GG,{}),(0,a.jsx)(Y.Be,{children:"If these settings have been helpful, create a dedicated agent you can re-use across conversations."})]}),(0,a.jsx)("div",{className:"py-4",children:m&&f?(0,a.jsxs)("div",{className:"flex flex-col items-center justify-center gap-4 py-8",children:[(0,a.jsx)(et.E.div,{initial:{scale:0},animate:{scale:1},transition:{type:"spring",stiffness:260,damping:20},children:(0,a.jsx)(N.f,{className:"w-16 h-16 text-green-500",weight:"fill"})}),(0,a.jsx)(et.E.p,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{delay:.2},className:"text-center text-lg font-medium text-accent-foreground",children:"Created successfully!"}),(0,a.jsx)(et.E.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},transition:{delay:.4},children:(0,a.jsx)(es.default,{href:"/agents?agent=".concat(f),children:(0,a.jsx)(v.z,{variant:"secondary",className:"mt-2",children:"Manage Agent"})})})]}):(0,a.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(U._,{htmlFor:"agent_name",children:"Name"}),(0,a.jsx)(ee.I,{id:"agent_name",className:"w-full p-2 border mt-4 border-slate-500 rounded-lg",disabled:n,value:o,onChange:e=>r(e.target.value)})]}),(0,a.jsxs)("div",{className:"flex gap-4",children:[(0,a.jsx)("div",{className:"flex-1",children:(0,a.jsxs)($.Ph,{onValueChange:h,defaultValue:u,children:[(0,a.jsx)($.i4,{className:"w-full dark:bg-muted",disabled:n,children:(0,a.jsx)($.ki,{placeholder:"Color"})}),(0,a.jsx)($.Bw,{className:"items-center space-y-1 inline-flex flex-col",children:t.map(e=>(0,a.jsx)($.Ql,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,a.jsx)(b.C,{className:"w-6 h-6 mr-2 ".concat((0,X.oz)(e)),weight:"fill"}),e]})},e))})]})}),(0,a.jsx)("div",{className:"flex-1",children:(0,a.jsxs)($.Ph,{onValueChange:c,defaultValue:d,children:[(0,a.jsx)($.i4,{className:"w-full dark:bg-muted",disabled:n,children:(0,a.jsx)($.ki,{placeholder:"Icon"})}),(0,a.jsx)($.Bw,{className:"items-center space-y-1 inline-flex flex-col",children:s.map(e=>(0,a.jsx)($.Ql,{value:e,children:(0,a.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,K.TI)(e,null!=u?u:"gray","w-6","h-6"),e]})},e))})]})})]})]})}),(0,a.jsxs)(Y.cN,{children:[y&&(0,a.jsx)("div",{className:"text-red-500 text-sm",children:y}),!m&&(0,a.jsxs)(v.z,{type:"submit",onClick:()=>void(!n&&(i(!0),fetch("/api/agents",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:o,icon:d,color:u,persona:e.customPrompt,chat_model:e.selectedModel,input_tools:e.inputTools,output_modes:e.outputModes,privacy_level:"private"})}).then(e=>e.json()).then(e=>{if(console.log("Success:",e),"detail"in e){S("Error creating agent: ".concat(e.detail)),i(!1);return}x(!0),p(e.slug),i(!1)}).catch(e=>{console.error("Error:",e),S("Error creating agent: ".concat(e)),i(!1)}))),disabled:n||!g,children:[n?(0,a.jsx)(w.U,{className:"animate-spin"}):(0,a.jsx)(_.R,{}),"Create"]}),(0,a.jsx)(Y.GG,{})]})]})]})}function el(e){var s,t,n,i,o;let{...r}=e,[d,c]=(0,l.useState)(!1),{data:u,error:h}=(0,J.ZP)("/api/agents/options",ea),{data:p,isLoading:g,error:j}=(0,J.ZP)("/api/agents/conversation?conversation_id=".concat(r.conversationId),ea),{data:y,error:N,isLoading:b}=(0,m.GW)(),[_,I]=(0,l.useState)(),[M,E]=(0,l.useState)(),[T,B]=(0,l.useState)(),[R,L]=(0,l.useState)(),[F,A]=(0,l.useState)(!1),[Z,D]=(0,l.useState)(!p||(null==p?void 0:null===(s=p.slug)||void 0===s?void 0:s.toLowerCase())==="khoj"),[V,H]=(0,l.useState)(),[Y,$]=(0,l.useState)(),[X,ee]=(0,l.useState)(!1),es=null!==(t=null==y?void 0:y.is_active)&&void 0!==t&&t;function et(){if(p){var e,s;B(p.input_tools),H(p.input_tools),(void 0===p.input_tools||0===p.input_tools.length)&&H((null==u?void 0:u.input_tools)?Object.keys(u.input_tools):[]),L(p.output_modes),$(p.output_modes),(void 0===p.output_modes||0===p.output_modes.length)&&$((null==u?void 0:u.output_modes)?Object.keys(u.output_modes):[]),((null===(e=p.name)||void 0===e?void 0:e.toLowerCase())==="khoj"||!0===p.is_hidden)&&c(!0),(null===(s=p.slug)||void 0===s?void 0:s.toLowerCase())==="khoj"?(E(void 0),I(void 0),D(!0)):(D(!1),I(p.persona),E(p.chat_model))}}function en(e,s){return s.includes(e)?s.filter(s=>s!==e):[...s,e]}return(0,l.useEffect)(()=>{et(),A(!1)},[p]),(0,l.useEffect)(()=>{var e,s;if(!p||g)return;let t=!!M&&M!==p.chat_model,a=!!_&&_!==p.persona,n=JSON.stringify((null==T?void 0:T.sort())||[])!==JSON.stringify(null===(e=p.input_tools)||void 0===e?void 0:e.sort()),i=JSON.stringify((null==R?void 0:R.sort())||[])!==JSON.stringify(null===(s=p.output_modes)||void 0===s?void 0:s.sort());A(t||a||n||i)},[M,_,T,R,p,g]),(0,a.jsxs)(f.DD,{collapsible:"none",className:"ml-auto opacity-30 rounded-lg p-2 transition-all transform duration-300 ease-in-out\n ".concat(r.isOpen?"translate-x-0 opacity-100 w-[300px] relative":"translate-x-full opacity-100 w-0 p-0 m-0","\n "),variant:"floating",children:[(0,a.jsxs)(f.TZ,{children:[(0,a.jsx)(f.$l,{children:p&&!d?(0,a.jsx)("div",{className:"flex items-center relative text-sm",children:(0,a.jsxs)("a",{className:"text-lg font-bold flex flex-row items-center",href:"/agents?agent=".concat(p.slug),children:[(0,K.TI)(p.icon,p.color),p.name]})}):(0,a.jsx)("div",{className:"flex items-center relative text-sm justify-between",children:(0,a.jsx)("p",{children:"Chat Options"})})}),(0,a.jsx)(f.Hz,{className:"border-b last:border-none",children:(0,a.jsx)(f.Ks,{className:"gap-0",children:(0,a.jsx)(f.w3,{className:"p-0 m-0",children:p&&p.has_files?(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsxs)("div",{className:"flex items-center space-x-2 rounded-full",children:[(0,a.jsx)("div",{className:"text-muted-foreground",children:(0,a.jsx)(S.J,{})}),(0,a.jsx)("div",{className:"text-muted-foreground text-sm",children:"Using custom knowledge base"})]})},"agent_knowledge"):null})})},"knowledge"),(0,a.jsx)(f.Hz,{children:(0,a.jsxs)(f.Ks,{children:[(0,a.jsx)(f.nO,{children:"Instructions"}),(0,a.jsx)(f.w3,{className:"p-0 m-0",children:(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsx)(k.g,{className:"w-full h-32 resize-none hover:resize-y",value:_||"",onChange:e=>{I(e.target.value)},readOnly:!d,disabled:!d})})})]})},"instructions"),!g&&p&&(0,a.jsx)(f.Hz,{children:(0,a.jsxs)(f.Ks,{children:[(0,a.jsxs)(f.nO,{children:["Model",!es&&(0,a.jsx)("a",{href:"/settings",className:"hover:font-bold text-accent-foreground m-2 bg-accent bg-opacity-10 p-1 rounded-lg",children:"Upgrade"})]}),(0,a.jsx)(f.w3,{className:"p-0 m-0",children:(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsx)(P,{disabled:!d,onSelect:e=>{E(e.name)},initialModel:Z?void 0:null==p?void 0:p.chat_model,isActive:r.isActive})},"model")})]})},"model"),(0,a.jsx)(z.J2,{defaultOpen:!1,children:(0,a.jsxs)(f.Hz,{children:[(0,a.jsx)(f.nO,{asChild:!0,children:(0,a.jsxs)(z.xo,{children:["Tools",(0,a.jsx)(C._,{className:"ml-auto transition-transform group-data-[state=open]/collapsible:rotate-180"})]})}),(0,a.jsx)(z.yk,{children:(0,a.jsx)(f.Ks,{children:(0,a.jsxs)(f.w3,{className:"p-1 m-0",children:[Object.entries(null!==(n=null==u?void 0:u.input_tools)&&void 0!==n?n:{}).map(e=>{let[s,t]=e;return(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsxs)(Q.u,{children:[(0,a.jsx)(Q.aJ,{asChild:!0,children:(0,a.jsxs)("div",{className:"flex items-center space-x-2 py-1 justify-between",children:[(0,a.jsxs)(U._,{htmlFor:s,className:"flex items-center gap-2 text-accent-foreground p-1 cursor-pointer",children:[(0,K.vH)(s),(0,a.jsx)("p",{className:"text-sm my-auto flex items-center",children:s})]}),(0,a.jsx)(G,{id:s,className:"".concat(d?"cursor-pointer":""),checked:(null!=V?V:[]).includes(s),onCheckedChange:()=>{let e=en(s,null!=V?V:[]);B(e),H(e)},disabled:!d,children:s})]})},s),(0,a.jsx)(q._v,{sideOffset:5,side:"left",align:"start",className:"text-sm bg-background text-foreground shadow-sm border border-slate-500 border-opacity-20 p-2 rounded-lg",children:t})]})},s)}),Object.entries(null!==(i=null==u?void 0:u.output_modes)&&void 0!==i?i:{}).map(e=>{let[s,t]=e;return(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsxs)(Q.u,{children:[(0,a.jsx)(Q.aJ,{asChild:!0,children:(0,a.jsxs)("div",{className:"flex items-center space-x-2 py-1 justify-between",children:[(0,a.jsxs)(U._,{htmlFor:s,className:"flex items-center gap-2 p-1 rounded-lg cursor-pointer",children:[(0,K.vH)(s),(0,a.jsx)("p",{className:"text-sm my-auto flex items-center",children:s})]}),(0,a.jsx)(G,{id:s,className:"".concat(d?"cursor-pointer":""),checked:(null!=Y?Y:[]).includes(s),onCheckedChange:()=>{let e=en(s,null!=Y?Y:[]);L(e),$(e)},disabled:!d,children:s})]})},s),(0,a.jsx)(q._v,{sideOffset:5,side:"left",align:"start",className:"text-sm bg-background text-foreground shadow-sm border border-slate-500 border-opacity-20 p-2 rounded-lg",children:t})]})},s)})]})})})]})}),(0,a.jsx)(f.Hz,{children:(0,a.jsxs)(f.Ks,{children:[(0,a.jsx)(f.nO,{children:"Files"}),(0,a.jsx)(f.w3,{className:"p-0 m-0",children:(0,a.jsx)(f.LO,{className:"list-none",children:(0,a.jsx)(x.J_,{conversationId:r.conversationId,uploadedFiles:[],isMobileWidth:null!==(o=r.isMobileWidth)&&void 0!==o&&o})},"files-conversation")})]})},"files")]}),r.isOpen&&(0,a.jsx)(f.ZW,{children:(0,a.jsx)(f.w3,{className:"p-0 m-0",children:p&&!d&&p.is_creator?(0,a.jsx)(f.LO,{children:(0,a.jsx)(f.bb,{asChild:!0,children:(0,a.jsx)(v.z,{className:"w-full",variant:"ghost",onClick:()=>window.location.href="/agents?agent=".concat(null==p?void 0:p.slug),children:"Manage"})})}):(0,a.jsxs)(a.Fragment,{children:[!F&&d&&_&&!Z&&M&&(0,a.jsx)(f.LO,{children:(0,a.jsx)(f.bb,{asChild:!0,children:(0,a.jsx)(ei,{customPrompt:_,selectedModel:M,inputTools:null!=V?V:[],outputModes:null!=Y?Y:[]})})}),(0,a.jsx)(f.LO,{children:(0,a.jsx)(f.bb,{asChild:!0,children:(0,a.jsx)(v.z,{className:"w-full",onClick:()=>void(et(),A(!1)),variant:"ghost",disabled:!d||!F,children:"Reset"})})}),(0,a.jsx)(f.LO,{children:(0,a.jsx)(f.bb,{asChild:!0,children:(0,a.jsxs)(v.z,{className:"w-full ".concat(F?"bg-accent-foreground text-accent":""),variant:"secondary",onClick:()=>(function(){if(F){if(!Z&&(null==p?void 0:p.is_hidden)===!1){alert("This agent is not a hidden agent. It cannot be modified from this interface.");return}let e="PATCH";Z&&(e="POST");let s={persona:_,chat_model:M,input_tools:T,output_modes:R,...Z?{}:{slug:null==p?void 0:p.slug}};ee(!0),fetch(Z?"/api/agents/hidden?conversation_id=".concat(r.conversationId):"/api/agents/hidden",{method:e,headers:{"Content-Type":"application/json"},body:JSON.stringify(s)}).then(e=>{ee(!1),e.json()}).then(e=>{(0,W.j)("/api/agents/conversation?conversation_id=".concat(r.conversationId)),A(!1)}).catch(e=>{console.error("Error:",e),ee(!1)})}})(),disabled:!d||!F||X,children:[X?(0,a.jsx)(w.U,{className:"animate-spin"}):(0,a.jsx)(O.Z,{}),X?"Saving":"Save"]})})})]})})},"actions")]})}function eo(e){let s=(0,r.useSearchParams)().get("conversationId"),[t,n]=(0,l.useState)(""),[d,c]=(0,l.useState)([]),[u,m]=(0,l.useState)(!1),[x,f]=(0,l.useState)(null),[p,g]=(0,l.useState)(!1),j=(0,l.useRef)(null),v=e.setQueryToProcess,y=e.onConversationIdChange,N=e.isMobileWidth?"w-full":"w-4/6";if((0,l.useEffect)(()=>{if(d.length>0){let s=d.map(e=>encodeURIComponent(e));e.setImages(s)}},[d,e.setImages]),(0,l.useEffect)(()=>{let s=localStorage.getItem("images");if(s){let t=JSON.parse(s);c(t);let a=t.map(e=>encodeURIComponent(e));e.setImages(a),localStorage.removeItem("images")}let t=localStorage.getItem("message");t&&(m(!0),v(t),t.trim().startsWith("/research")&&g(!0));let a=localStorage.getItem("uploadedFiles");if(a){let s=a?JSON.parse(a):[],t=[];for(let e of s)t.push({name:e.name,file_type:e.file_type,content:e.content,size:e.size});localStorage.removeItem("uploadedFiles"),e.setUploadedFiles(t)}},[v,e.setImages,s]),(0,l.useEffect)(()=>{t&&(m(!0),v(t))},[t,v]),(0,l.useEffect)(()=>{s&&(null==y||y(s))},[s,y]),(0,l.useEffect)(()=>{e.streamedMessages&&e.streamedMessages.length>0&&e.streamedMessages[e.streamedMessages.length-1].completed?(m(!1),c([]),e.setUploadedFiles(void 0)):n("")},[e.streamedMessages]),!s){window.location.href="/";return}return(0,a.jsxs)("div",{className:"flex flex-row h-full w-full",children:[(0,a.jsxs)("div",{className:"flex flex-col h-full w-full",children:[(0,a.jsx)("div",{className:i().chatBodyFull,children:(0,a.jsx)(o.Z,{conversationId:s,setTitle:e.setTitle,setAgent:f,pendingMessage:u?t:"",incomingMessages:e.streamedMessages,setIncomingMessages:e.setStreamedMessages,customClassName:N,setIsChatSideBarOpen:e.setIsChatSideBarOpen,onRetryMessage:e.onRetryMessage})}),(0,a.jsx)("div",{className:"".concat(i().inputBox," print-hidden p-1 md:px-2 shadow-md bg-background align-middle items-center justify-center dark:bg-neutral-700 dark:border-0 dark:shadow-sm rounded-2xl md:rounded-xl h-fit ").concat(N," mr-auto ml-auto mt-auto"),children:(0,a.jsx)(h.a,{agentColor:null==x?void 0:x.color,isLoggedIn:e.isLoggedIn,sendMessage:e=>n(e),sendImage:e=>c(s=>[...s,e]),sendDisabled:e.isParentProcessing||!1,chatOptionsData:e.chatOptionsData,conversationId:s,isMobileWidth:e.isMobileWidth,setUploadedFiles:e.setUploadedFiles,ref:j,isResearchModeEnabled:p,setTriggeredAbort:e.setTriggeredAbort})})]}),(0,a.jsx)("div",{className:"print-hidden",children:(0,a.jsx)(en,{conversationId:s,isActive:e.isActive,isOpen:e.isChatSideBarOpen,onOpenChange:e.setIsChatSideBarOpen,isMobileWidth:e.isMobileWidth})})]})}function er(){let e="Khoj AI - Chat",[s,t]=(0,l.useState)(null),[n,o]=(0,l.useState)(!0),[r,h]=(0,l.useState)(e),[N,b]=(0,l.useState)(null),[w,_]=(0,l.useState)([]),[S,C]=(0,l.useState)(""),[O,k]=(0,l.useState)(!1),[I,M]=(0,l.useState)(void 0),[E,T]=(0,l.useState)([]),[z,B]=(0,l.useState)(null),[R,L]=(0,l.useState)(!1),[F,A]=(0,l.useState)(!1),{locationData:P,locationDataError:Z,locationDataLoading:J}=(0,u.k6)()||{locationData:{timezone:Intl.DateTimeFormat().resolvedOptions().timeZone}},{data:W,error:D,isLoading:K}=(0,m.GW)(),U=(0,u.IC)(),[V,H]=(0,l.useState)(!1);async function G(e){if(!e.ok)throw Error(e.statusText);if(!e.body)throw Error("Response body is null");let s=e.body.getReader(),t=new TextDecoder,a="␃\uD83D\uDD1A␗",n="",i=[],l={},o={};for(;;){let e;let{done:r,value:d}=await s.read();if(r){C(""),k(!1),T([]),N&&(0,c.tQ)(N,h);break}for(n+=t.decode(d,{stream:!0});-1!==(e=n.indexOf(a));){let s=n.slice(0,e);if(n=n.slice(e+a.length),s){let e=w.find(e=>!e.completed);if(!e){console.error("No current message found");return}({context:i,onlineContext:l,codeContext:o}=(0,c.VK)(s,e,i,l,o)),_([...w])}}}}async function Q(){if(localStorage.removeItem("message"),!S||!N){k(!1);return}let e={q:S,conversation_id:N,stream:!0,interrupt:F,...P&&{city:P.city,region:P.region,country:P.country,country_code:P.countryCode,timezone:P.timezone},...E.length>0&&{images:E},...I&&{files:I}};A(!1);let s=await fetch("/api/chat?client=web",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e),signal:null==z?void 0:z.signal});try{await G(s)}catch(i){let e;try{e=await s.json()}catch(s){e={streamError:"Error reading API error response stream. Expected JSON response."}}console.error(e);let t=w.find(e=>!e.completed);if(!t)return;let a=i.message,n=i.name;a.includes("Error in input stream")?t.rawResponse="Woops! The connection broke while I was writing my thoughts down. Maybe try again in a bit or dislike this message if the issue persists?":e.streamError?t.rawResponse="Umm, not sure what just happened but I lost my train of thought. Could you try again or ask my developers to look into this if the issue persists? They can be contacted at the Khoj Github, Discord or team@khoj.dev.":429===s.status?"detail"in e?t.rawResponse="".concat(e.detail):t.rawResponse="I'm a bit overwhelmed at the moment. Could you try again in a bit or dislike this message if the issue persists?":"AbortError"===n?t.rawResponse="I've stopped processing this message. If you'd like to continue, please send the message again.":t.rawResponse="Umm, not sure what just happened. I see this error message: ".concat(a,". Could you try again or dislike this message if the issue persists?"),t.completed=!0,_([...w]),C(""),k(!1)}}return(0,l.useEffect)(()=>{fetch("/api/chat/options").then(e=>e.json()).then(e=>{o(!1),e&&t(e)}).catch(e=>{console.error(e)}),(0,u.EK)()},[]),(0,l.useEffect)(()=>{R&&(null==z||z.abort(),function(){let e=w.find(e=>!e.completed);e&&(e.completed=!0,_([...w]),k(!1))}(),A(!0),L(!1))},[R]),(0,l.useEffect)(()=>{if(S){let e={rawResponse:"",trainOfThought:[],context:[],onlineContext:{},codeContext:{},completed:!1,timestamp:new Date().toISOString(),rawQuery:S||"",images:E,queryFiles:I};_(s=>[...s,e]),k(!0),B(new AbortController)}},[S]),(0,l.useEffect)(()=>{O&&!J&&Q()},[O,J]),n?(0,a.jsx)(d.Z,{}):(0,a.jsxs)(f.Hn,{children:[(0,a.jsx)("div",{className:"print-hidden",children:(0,a.jsx)(p.S,{conversationId:N||""})}),(0,a.jsxs)(f.kV,{children:[(0,a.jsxs)("header",{className:"flex h-16 shrink-0 items-center gap-2 border-b px-4 print-hidden",children:[(0,a.jsx)(f.vP,{className:"-ml-1"}),(0,a.jsx)(g.Z,{orientation:"vertical",className:"mr-2 h-4"}),N&&(0,a.jsx)("div",{className:"".concat(i().chatTitleWrapper," text-nowrap text-ellipsis overflow-hidden max-w-screen-md grid items-top font-bold mx-2 md:mr-8 col-auto h-fit"),children:U?(0,a.jsx)("a",{className:"p-0 no-underline",href:"/",children:(0,a.jsx)(j.VO,{className:"h-auto w-16"})}):r&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("h2",{className:"text-lg text-ellipsis whitespace-nowrap overflow-x-hidden mr-4",children:r}),(0,a.jsx)(x.En,{conversationId:N,setTitle:h,sizing:"md"})]})}),(0,a.jsx)("div",{className:"flex justify-end items-start gap-2 text-sm ml-auto",children:(0,a.jsx)(v.z,{variant:"ghost",size:"icon",className:"h-12 w-12 data-[state=open]:bg-accent print-hidden",onClick:()=>H(!V),children:(0,a.jsx)(y.T,{className:"w-6 h-6"})})})]}),(0,a.jsxs)("div",{className:"".concat(i().main," ").concat(i().chatLayout),children:[(0,a.jsx)("title",{children:"".concat(e).concat(r&&r!==e?": ".concat(r):"")}),(0,a.jsx)("div",{className:i().chatBox,children:(0,a.jsx)("div",{className:i().chatBoxBody,children:(0,a.jsx)(l.Suspense,{fallback:(0,a.jsx)(d.Z,{}),children:(0,a.jsx)(eo,{isLoggedIn:!!W,streamedMessages:w,setStreamedMessages:_,chatOptionsData:s,setTitle:h,setQueryToProcess:C,setUploadedFiles:M,isMobileWidth:U,onConversationIdChange:e=>{b(e)},setImages:T,setTriggeredAbort:L,isChatSideBarOpen:V,setIsChatSideBarOpen:H,isActive:null==W?void 0:W.is_active,isParentProcessing:O,onRetryMessage:(e,s)=>{if(!e){console.warn("No query provided for retry");return}s&&(_(e=>e.filter(e=>e.turnId!==s)),fetch("/api/chat/conversation/message",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({conversation_id:N,turn_id:s})}).catch(e=>{console.error("Failed to delete message for retry:",e)})),C(e)}})})})})]})]})]})}},26815:function(e,s,t){"use strict";t.d(s,{_:function(){return d}});var a=t(57437),n=t(2265),i=t(6394),l=t(90535),o=t(94508);let r=(0,l.j)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=n.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(i.f,{ref:s,className:(0,o.cn)(r(),t),...n})});d.displayName=i.f.displayName},53647:function(e,s,t){"use strict";t.d(s,{Bw:function(){return f},Ph:function(){return c},Ql:function(){return p},i4:function(){return h},ki:function(){return u}});var a=t(57437),n=t(2265),i=t(56873),l=t(40875),o=t(22135),r=t(30401),d=t(94508);let c=i.fC;i.ZA;let u=i.B4,h=n.forwardRef((e,s)=>{let{className:t,children:n,...o}=e;return(0,a.jsxs)(i.xz,{ref:s,className:(0,d.cn)("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",t),...o,children:[n,(0,a.jsx)(i.JO,{asChild:!0,children:(0,a.jsx)(l.Z,{className:"h-4 w-4 opacity-50"})})]})});h.displayName=i.xz.displayName;let m=n.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(i.u_,{ref:s,className:(0,d.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(o.Z,{className:"h-4 w-4"})})});m.displayName=i.u_.displayName;let x=n.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(i.$G,{ref:s,className:(0,d.cn)("flex cursor-default items-center justify-center py-1",t),...n,children:(0,a.jsx)(l.Z,{className:"h-4 w-4"})})});x.displayName=i.$G.displayName;let f=n.forwardRef((e,s)=>{let{className:t,children:n,position:l="popper",...o}=e;return(0,a.jsx)(i.h_,{children:(0,a.jsxs)(i.VY,{ref:s,className:(0,d.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===l&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:l,...o,children:[(0,a.jsx)(m,{}),(0,a.jsx)(i.l_,{className:(0,d.cn)("p-1","popper"===l&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,a.jsx)(x,{})]})})});f.displayName=i.VY.displayName,n.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(i.__,{ref:s,className:(0,d.cn)("py-1.5 pl-8 pr-2 text-sm font-semibold",t),...n})}).displayName=i.__.displayName;let p=n.forwardRef((e,s)=>{let{className:t,children:n,...l}=e;return(0,a.jsxs)(i.ck,{ref:s,className:(0,d.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",t),...l,children:[(0,a.jsx)("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:(0,a.jsx)(i.wU,{children:(0,a.jsx)(r.Z,{className:"h-4 w-4"})})}),(0,a.jsx)(i.eT,{children:n})]})});p.displayName=i.ck.displayName,n.forwardRef((e,s)=>{let{className:t,...n}=e;return(0,a.jsx)(i.Z0,{ref:s,className:(0,d.cn)("-mx-1 my-1 h-px bg-muted",t),...n})}).displayName=i.Z0.displayName},63136:function(e){e.exports={main:"chat_main__8xQu5",suggestions:"chat_suggestions__m8n2t",inputBox:"chat_inputBox__LOFws",chatBodyFull:"chat_chatBodyFull__FfKEK",chatBody:"chat_chatBody__sS1LX",chatLayout:"chat_chatLayout__pR203",chatBox:"chat_chatBox__FBct_",titleBar:"chat_titleBar__R5QlK",chatBoxBody:"chat_chatBoxBody__qT_SC",agentIndicator:"chat_agentIndicator__8V55w",chatTitleWrapper:"chat_chatTitleWrapper__6ChWq",chatHistory:"chat_chatHistory__EzBJM"}}},function(e){e.O(0,[3849,2421,9853,1189,3954,1860,2939,7200,8667,1327,4447,3592,5639,9568,2327,5477,7127,2971,2117,1744],function(){return e(e.s=39929)}),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[244,7138,3317,8459],{63521:function(){}},function(n){n.O(0,[2971,2117,1744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7138,244,3317,8459],{63521:function(){}},function(n){n.O(0,[2971,2117,1744],function(){return n(n.s=63521)}),_N_E=n.O()}]);
@@ -1 +0,0 @@
1
- div.search_searchLayout__fP3m0{display:grid;grid-template-columns:1fr;gap:1rem;height:100%}@media screen and (max-width:768px){div.search_searchLayout__fP3m0{gap:0}}div.sidePanel_session__EeNjH{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__CUgIn{grid-template-columns:minmax(12rem,100%) 1fr 1fr}div.sidePanel_sessionHover__cf_VO,div.sidePanel_session__EeNjH:hover{background-color:hsla(var(--popover))}div.sidePanel_session__EeNjH:hover{color:hsla(var(--popover-foreground))}div.sidePanel_session__EeNjH a{text-decoration:none}button.sidePanel_button__NzdN_{border:none;outline:none;background-color:transparent;cursor:pointer;color:var(--main-text-color);width:24px}button.sidePanel_showMoreButton__nDt4Z{border-radius:.5rem;padding:8px}div.sidePanel_panel__9offQ{display:flex;flex-direction:column;padding:1rem;overflow-y:auto;max-width:auto;transition:background-color .5s}div.sidePanel_expanded__aHnYV{gap:1rem;background-color:hsla(var(--muted));height:100%}div.sidePanel_collapsed__ewO3e{display:grid;grid-template-columns:1fr;height:-moz-fit-content;height:fit-content;padding:1rem 0 0 1rem}p.sidePanel_session__EeNjH{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;font-size:small}p.sidePanel_compressed__CUgIn{width:11rem}p.sidePanel_expanded__aHnYV{max-width:20rem}div.sidePanel_header__NCT_v{display:grid;grid-template-columns:1fr auto}div.sidePanel_profile__pfAJU{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;margin-top:auto}div.sidePanel_panelWrapper__cDMvb{display:grid;grid-template-rows:1fr auto auto;height:100%}div.sidePanel_modalSessionsList___u3aa{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___u3aa div.sidePanel_content__z60YO{max-width:80%;max-height:80%;background-color:hsla(var(--frosted-background-color));overflow:auto;padding:20px;border-radius:10px}div.sidePanel_modalSessionsList___u3aa div.sidePanel_session__EeNjH{max-width:100%;text-overflow:ellipsis}@media screen and (max-width:768px){div.sidePanel_panel__9offQ{padding:.25rem;width:100%}div.sidePanel_expanded__aHnYV{z-index:1}div.sidePanel_singleReference__vmXZr{padding:4px}div.sidePanel_panelWrapper__cDMvb{width:100%;padding:0 1rem}div.sidePanel_session__EeNjH.sidePanel_compressed__CUgIn{max-width:100%;display:grid;grid-template-columns:70vw auto;justify-content:space-between}div.sidePanel_session__EeNjH{max-width:100%;grid-template-columns:minmax(auto,70vw) 1fr}}.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}
@@ -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}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}}.loginPrompt_gsiMaterialButton__8QVFH{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-image:none;border-radius:20px;box-sizing:border-box;color:#1f1f1f;cursor:pointer;font-family:Roboto,arial,sans-serif;font-size:14px;height:40px;letter-spacing:.25px;outline:none;overflow:hidden;padding:0;position:relative;text-align:center;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;width:40px;max-width:400px;min-width:-moz-min-content;min-width:min-content}.loginPrompt_gsiMaterialButton__8QVFH .loginPrompt_gsiMaterialButtonIcon__6TSC5{height:100%;min-width:20px;width:100%;margin:0;padding:9px}.loginPrompt_gsiMaterialButton__8QVFH .loginPrompt_gsiMaterialButtonContentWrapper__9tahB{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.loginPrompt_gsiMaterialButton__8QVFH .loginPrompt_gsiMaterialButtonContents__3_YcB{flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.loginPrompt_gsiMaterialButton__8QVFH .loginPrompt_gsiMaterialButtonState__CDGQm{transition:opacity .218s;bottom:0;left:0;opacity:0;position:absolute;right:0;top:0}.loginPrompt_gsiMaterialButton__8QVFH:disabled{cursor:default;background-color:#ffffff61;border-color:#1f1f1f1f}.loginPrompt_gsiMaterialButton__8QVFH:disabled .loginPrompt_gsiMaterialButtonContents__3_YcB,.loginPrompt_gsiMaterialButton__8QVFH:disabled .loginPrompt_gsiMaterialButtonIcon__6TSC5{opacity:38%}.loginPrompt_gsiMaterialButton__8QVFH:not(:disabled):active .loginPrompt_gsiMaterialButton-State__mAfCZ,.loginPrompt_gsiMaterialButton__8QVFH:not(:disabled):focus .loginPrompt_gsiMaterialButtonState__CDGQm{background-color:#303030;opacity:12%}.loginPrompt_gsiMaterialButton__8QVFH:not(:disabled):hover{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15)}.loginPrompt_gsiMaterialButton__8QVFH:not(:disabled):hover .loginPrompt_gsiMaterialButtonState__CDGQm{background-color:#303030;opacity:8%}div.automations_automationsLayout__Atoh_{display:grid;grid-template-columns:1fr 1fr;gap:1rem}div.automations_automationCard__BKidA{display:grid;grid-template-rows:auto 1fr auto}div.automations_pageLayout__OaoYA{max-width:60vw;margin:auto auto 2rem}@media screen and (max-width:768px){div.automations_automationsLayout__Atoh_{grid-template-columns:1fr}div.automations_pageLayout__OaoYA{max-width:90vw}}.trainOfThoughtVideoPlayer_videoPlayer__Dz3mA{border:1px solid hsl(var(--border));border-radius:8px;background-color:hsl(var(--background));margin:16px 0;overflow:hidden}.trainOfThoughtVideoPlayer_screen__dvEVh{position:relative;background-color:hsl(var(--muted));min-height:300px;display:flex;align-items:center;justify-content:center}.trainOfThoughtVideoPlayer_screenImage__3SgOQ{max-width:100%;max-height:400px;-o-object-fit:contain;object-fit:contain;border-radius:4px}.trainOfThoughtVideoPlayer_textOverlay__BGbhO{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.8));padding:20px 16px 12px;color:#fff}.trainOfThoughtVideoPlayer_thoughtText__zn_vT{font-size:14px;line-height:1.4;max-height:100px;overflow-y:auto}.trainOfThoughtVideoPlayer_controls__HDkO_{padding:12px 16px;background-color:hsl(var(--card));border-top:1px solid hsl(var(--border))}.trainOfThoughtVideoPlayer_timeline__hSpWu{position:relative;margin-bottom:12px}.trainOfThoughtVideoPlayer_timelineSlider__GQ8dx{width:100%;height:4px;background-color:hsl(var(--muted));border-radius:2px;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.trainOfThoughtVideoPlayer_timelineSlider__GQ8dx::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background-color:hsl(var(--primary));cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.2)}.trainOfThoughtVideoPlayer_timelineSlider__GQ8dx::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background-color:hsl(var(--primary));cursor:pointer;border:2px solid #fff;box-shadow:0 2px 4px rgba(0,0,0,.2)}.trainOfThoughtVideoPlayer_frameMarkers__5y3He{position:absolute;top:-2px;left:0;right:0;height:8px;display:flex;justify-content:space-between;pointer-events:none}.trainOfThoughtVideoPlayer_frameMarker__DBO9Y{width:6px;height:8px;border-radius:1px;cursor:pointer;pointer-events:auto;transition:all .2s ease}.trainOfThoughtVideoPlayer_frameMarker__DBO9Y.trainOfThoughtVideoPlayer_hasImage__GFGAk{background-color:hsl(var(--primary))}.trainOfThoughtVideoPlayer_frameMarker__DBO9Y.trainOfThoughtVideoPlayer_textOnly__okufk{background-color:hsl(var(--muted-foreground))}.trainOfThoughtVideoPlayer_frameMarker__DBO9Y.trainOfThoughtVideoPlayer_active__zp6u9{background-color:hsl(var(--accent))!important;transform:scaleY(1.5)}.trainOfThoughtVideoPlayer_frameMarker__DBO9Y:hover{transform:scaleY(1.2)}.trainOfThoughtVideoPlayer_controlButtons__rqfIH{display:flex;align-items:center;gap:8px;margin-bottom:8px}.trainOfThoughtVideoPlayer_controlButton___RdE_{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid hsl(var(--border));border-radius:4px;background-color:hsl(var(--background));color:hsl(var(--foreground));cursor:pointer;transition:all .2s ease}.trainOfThoughtVideoPlayer_controlButton___RdE_:hover:not(:disabled){background-color:hsl(var(--muted))}.trainOfThoughtVideoPlayer_controlButton___RdE_:disabled{opacity:.5;cursor:not-allowed}.trainOfThoughtVideoPlayer_controlButton___RdE_.trainOfThoughtVideoPlayer_active__zp6u9{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.trainOfThoughtVideoPlayer_frameInfo__u5nwA{display:flex;justify-content:center;font-size:12px;color:hsl(var(--muted-foreground))}@media (prefers-color-scheme:dark){.trainOfThoughtVideoPlayer_textOverlay__BGbhO{background:linear-gradient(transparent,rgba(0,0,0,.9))}}