khoj 1.32.3.dev34__py3-none-any.whl → 1.32.3.dev61__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.
- khoj/database/adapters/__init__.py +14 -1
- khoj/interface/compiled/404/index.html +1 -1
- khoj/interface/compiled/_next/static/chunks/1010-8f39bb4648b5ba10.js +1 -0
- khoj/interface/compiled/_next/static/chunks/4124-f5c857c57e5391d9.js +1 -0
- khoj/interface/compiled/_next/static/chunks/5427-b52d95253e692bfa.js +1 -0
- khoj/interface/compiled/_next/static/chunks/5477-0bbddb79c25a54a7.js +1 -0
- khoj/interface/compiled/_next/static/chunks/{3175-b2e522f8ca392f7e.js → 6293-469dd16402ea8a6f.js} +2 -2
- khoj/interface/compiled/_next/static/chunks/app/agents/layout-e49165209d2e406c.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/agents/page-f6f93b8b4457f1f7.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/automations/page-e8f13a995ae7f2fa.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/chat/{page-a0b61f10b0bf6dd5.js → page-4645a696ec970a94.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/page-8ebd7e62c0542aa1.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/settings/page-1bf10e8d882533b6.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-6fb51c5c80f8ec67.js +1 -0
- khoj/interface/compiled/_next/static/chunks/app/share/chat/{page-02dc1f2e2a41e522.js → page-3067638b97048e5f.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/webpack-4f582c9505ac1fb8.js +1 -0
- khoj/interface/compiled/_next/static/css/307dd5243338dfd8.css +1 -0
- khoj/interface/compiled/_next/static/css/{c3acbadc30537d04.css → 4e4e6a4a1c920d06.css} +1 -1
- khoj/interface/compiled/_next/static/css/5dd9bb87a50b706e.css +25 -0
- khoj/interface/compiled/agents/index.html +1 -1
- khoj/interface/compiled/agents/index.txt +2 -2
- khoj/interface/compiled/automations/index.html +1 -1
- khoj/interface/compiled/automations/index.txt +3 -3
- khoj/interface/compiled/chat/index.html +1 -1
- khoj/interface/compiled/chat/index.txt +2 -2
- khoj/interface/compiled/index.html +1 -1
- khoj/interface/compiled/index.txt +2 -2
- khoj/interface/compiled/search/index.html +1 -1
- khoj/interface/compiled/search/index.txt +2 -2
- khoj/interface/compiled/settings/index.html +1 -1
- khoj/interface/compiled/settings/index.txt +4 -4
- khoj/interface/compiled/share/chat/index.html +1 -1
- khoj/interface/compiled/share/chat/index.txt +2 -2
- khoj/processor/conversation/prompts.py +37 -17
- khoj/routers/api.py +23 -20
- khoj/routers/auth.py +32 -14
- khoj/routers/helpers.py +129 -14
- {khoj-1.32.3.dev34.dist-info → khoj-1.32.3.dev61.dist-info}/METADATA +1 -1
- {khoj-1.32.3.dev34.dist-info → khoj-1.32.3.dev61.dist-info}/RECORD +50 -50
- khoj/interface/compiled/_next/static/chunks/4124-0baa32400521e909.js +0 -1
- khoj/interface/compiled/_next/static/chunks/4357-03ea130575287c27.js +0 -1
- khoj/interface/compiled/_next/static/chunks/5427-3e7360c8e6ac9728.js +0 -1
- khoj/interface/compiled/_next/static/chunks/5477-c5d7eabee28a789a.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/agents/layout-e00fb81dca656a10.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/agents/page-ab5ebe4efba9b582.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/automations/page-37d56a7bbfd307df.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/page-33a3375b1414d1bd.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/settings/page-430db6215e48aea2.js +0 -1
- khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-e8e5db7830bf3f47.js +0 -1
- khoj/interface/compiled/_next/static/chunks/webpack-b0a1b08bb62bdc15.js +0 -1
- khoj/interface/compiled/_next/static/css/0f04760e76bba6c1.css +0 -25
- khoj/interface/compiled/_next/static/css/e546bf5cc4914244.css +0 -1
- /khoj/interface/compiled/_next/static/chunks/{182-8cd8b17d40e6e989.js → 182-f1c48a203dc91e0e.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{1915-605f698f2573cfd4.js → 1915-d3c36ad6ce697ce7.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{2117-9886e6a0232dc093.js → 2117-165ef4747a5b836b.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{8667-d3e5bc726e4ff4e3.js → 8667-b6bf63c72b2d76eb.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{9259-27d1ff42af9a43e0.js → 9259-1172dbaca0515237.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{9665-1ab5c8c667b74dca.js → 9665-391df1e5c51c960a.js} +0 -0
- /khoj/interface/compiled/_next/static/{mqcIHpVqVWkmBuN0npYHA → iX3n9kOMMR5_Xg2yB-YVv}/_buildManifest.js +0 -0
- /khoj/interface/compiled/_next/static/{mqcIHpVqVWkmBuN0npYHA → iX3n9kOMMR5_Xg2yB-YVv}/_ssgManifest.js +0 -0
- {khoj-1.32.3.dev34.dist-info → khoj-1.32.3.dev61.dist-info}/WHEEL +0 -0
- {khoj-1.32.3.dev34.dist-info → khoj-1.32.3.dev61.dist-info}/entry_points.txt +0 -0
- {khoj-1.32.3.dev34.dist-info → khoj-1.32.3.dev61.dist-info}/licenses/LICENSE +0 -0
khoj/routers/helpers.py
CHANGED
@@ -325,7 +325,7 @@ async def acheck_if_safe_prompt(system_prompt: str, user: KhojUser = None, lax:
|
|
325
325
|
|
326
326
|
response = response.strip()
|
327
327
|
try:
|
328
|
-
response =
|
328
|
+
response = clean_json(response)
|
329
329
|
is_safe = response.get("safe", "True") == "True"
|
330
330
|
if not is_safe:
|
331
331
|
reason = response.get("reason", "")
|
@@ -551,9 +551,37 @@ async def generate_online_subqueries(
|
|
551
551
|
return {q}
|
552
552
|
|
553
553
|
|
554
|
-
|
554
|
+
def schedule_query(
|
555
555
|
q: str, conversation_history: dict, user: KhojUser, query_images: List[str] = None, tracer: dict = {}
|
556
|
-
) -> Tuple[str,
|
556
|
+
) -> Tuple[str, str, str]:
|
557
|
+
"""
|
558
|
+
Schedule the date, time to run the query. Assume the server timezone is UTC.
|
559
|
+
"""
|
560
|
+
chat_history = construct_chat_history(conversation_history)
|
561
|
+
|
562
|
+
crontime_prompt = prompts.crontime_prompt.format(
|
563
|
+
query=q,
|
564
|
+
chat_history=chat_history,
|
565
|
+
)
|
566
|
+
|
567
|
+
raw_response = send_message_to_model_wrapper_sync(
|
568
|
+
crontime_prompt, query_images=query_images, response_type="json_object", user=user, tracer=tracer
|
569
|
+
)
|
570
|
+
|
571
|
+
# Validate that the response is a non-empty, JSON-serializable list
|
572
|
+
try:
|
573
|
+
raw_response = raw_response.strip()
|
574
|
+
response: Dict[str, str] = json.loads(clean_json(raw_response))
|
575
|
+
if not response or not isinstance(response, Dict) or len(response) != 3:
|
576
|
+
raise AssertionError(f"Invalid response for scheduling query : {response}")
|
577
|
+
return response.get("crontime"), response.get("query"), response.get("subject")
|
578
|
+
except Exception:
|
579
|
+
raise AssertionError(f"Invalid response for scheduling query: {raw_response}")
|
580
|
+
|
581
|
+
|
582
|
+
async def aschedule_query(
|
583
|
+
q: str, conversation_history: dict, user: KhojUser, query_images: List[str] = None, tracer: dict = {}
|
584
|
+
) -> Tuple[str, str, str]:
|
557
585
|
"""
|
558
586
|
Schedule the date, time to run the query. Assume the server timezone is UTC.
|
559
587
|
"""
|
@@ -571,7 +599,7 @@ async def schedule_query(
|
|
571
599
|
# Validate that the response is a non-empty, JSON-serializable list
|
572
600
|
try:
|
573
601
|
raw_response = raw_response.strip()
|
574
|
-
response: Dict[str, str] = json.loads(raw_response)
|
602
|
+
response: Dict[str, str] = json.loads(clean_json(raw_response))
|
575
603
|
if not response or not isinstance(response, Dict) or len(response) != 3:
|
576
604
|
raise AssertionError(f"Invalid response for scheduling query : {response}")
|
577
605
|
return response.get("crontime"), response.get("query"), response.get("subject")
|
@@ -1065,6 +1093,7 @@ def send_message_to_model_wrapper_sync(
|
|
1065
1093
|
system_message: str = "",
|
1066
1094
|
response_type: str = "text",
|
1067
1095
|
user: KhojUser = None,
|
1096
|
+
query_images: List[str] = None,
|
1068
1097
|
query_files: str = "",
|
1069
1098
|
tracer: dict = {},
|
1070
1099
|
):
|
@@ -1090,6 +1119,7 @@ def send_message_to_model_wrapper_sync(
|
|
1090
1119
|
max_prompt_size=max_tokens,
|
1091
1120
|
vision_enabled=vision_available,
|
1092
1121
|
model_type=chat_model.model_type,
|
1122
|
+
query_images=query_images,
|
1093
1123
|
query_files=query_files,
|
1094
1124
|
)
|
1095
1125
|
|
@@ -1112,6 +1142,7 @@ def send_message_to_model_wrapper_sync(
|
|
1112
1142
|
max_prompt_size=max_tokens,
|
1113
1143
|
vision_enabled=vision_available,
|
1114
1144
|
model_type=chat_model.model_type,
|
1145
|
+
query_images=query_images,
|
1115
1146
|
query_files=query_files,
|
1116
1147
|
)
|
1117
1148
|
|
@@ -1134,6 +1165,7 @@ def send_message_to_model_wrapper_sync(
|
|
1134
1165
|
max_prompt_size=max_tokens,
|
1135
1166
|
vision_enabled=vision_available,
|
1136
1167
|
model_type=chat_model.model_type,
|
1168
|
+
query_images=query_images,
|
1137
1169
|
query_files=query_files,
|
1138
1170
|
)
|
1139
1171
|
|
@@ -1154,6 +1186,7 @@ def send_message_to_model_wrapper_sync(
|
|
1154
1186
|
max_prompt_size=max_tokens,
|
1155
1187
|
vision_enabled=vision_available,
|
1156
1188
|
model_type=chat_model.model_type,
|
1189
|
+
query_images=query_images,
|
1157
1190
|
query_files=query_files,
|
1158
1191
|
)
|
1159
1192
|
|
@@ -1634,6 +1667,25 @@ class CommonQueryParamsClass:
|
|
1634
1667
|
CommonQueryParams = Annotated[CommonQueryParamsClass, Depends()]
|
1635
1668
|
|
1636
1669
|
|
1670
|
+
def format_automation_response(scheduling_request: str, executed_query: str, ai_response: str, user: KhojUser) -> bool:
|
1671
|
+
"""
|
1672
|
+
Format the AI response to send in automation email to user.
|
1673
|
+
"""
|
1674
|
+
name = get_user_name(user)
|
1675
|
+
if name:
|
1676
|
+
username = prompts.user_name.format(name=name)
|
1677
|
+
|
1678
|
+
automation_format_prompt = prompts.automation_format_prompt.format(
|
1679
|
+
original_query=scheduling_request,
|
1680
|
+
executed_query=executed_query,
|
1681
|
+
response=ai_response,
|
1682
|
+
username=username,
|
1683
|
+
)
|
1684
|
+
|
1685
|
+
with timer("Chat actor: Format automation response", logger):
|
1686
|
+
return send_message_to_model_wrapper_sync(automation_format_prompt, user=user)
|
1687
|
+
|
1688
|
+
|
1637
1689
|
def should_notify(original_query: str, executed_query: str, ai_response: str, user: KhojUser) -> bool:
|
1638
1690
|
"""
|
1639
1691
|
Decide whether to notify the user of the AI response.
|
@@ -1651,12 +1703,19 @@ def should_notify(original_query: str, executed_query: str, ai_response: str, us
|
|
1651
1703
|
with timer("Chat actor: Decide to notify user of automation response", logger):
|
1652
1704
|
try:
|
1653
1705
|
# TODO Replace with async call so we don't have to maintain a sync version
|
1654
|
-
|
1655
|
-
|
1656
|
-
|
1706
|
+
raw_response = send_message_to_model_wrapper_sync(to_notify_or_not, user=user, response_type="json_object")
|
1707
|
+
response = json.loads(raw_response)
|
1708
|
+
should_notify_result = response["decision"] == "Yes"
|
1709
|
+
reason = response.get("reason", "unknown")
|
1710
|
+
logger.info(
|
1711
|
+
f'Decided to {"not " if not should_notify_result else ""}notify user of automation response because of reason: {reason}.'
|
1712
|
+
)
|
1657
1713
|
return should_notify_result
|
1658
|
-
except:
|
1659
|
-
logger.warning(
|
1714
|
+
except Exception as e:
|
1715
|
+
logger.warning(
|
1716
|
+
f"Fallback to notify user of automation response as failed to infer should notify or not. {e}",
|
1717
|
+
exc_info=True,
|
1718
|
+
)
|
1660
1719
|
return True
|
1661
1720
|
|
1662
1721
|
|
@@ -1751,10 +1810,12 @@ def scheduled_chat(
|
|
1751
1810
|
if should_notify(
|
1752
1811
|
original_query=scheduling_request, executed_query=cleaned_query, ai_response=ai_response, user=user
|
1753
1812
|
):
|
1813
|
+
formatted_response = format_automation_response(scheduling_request, cleaned_query, ai_response, user)
|
1814
|
+
|
1754
1815
|
if is_resend_enabled():
|
1755
|
-
send_task_email(user.get_short_name(), user.email, cleaned_query,
|
1816
|
+
send_task_email(user.get_short_name(), user.email, cleaned_query, formatted_response, subject, is_image)
|
1756
1817
|
else:
|
1757
|
-
return
|
1818
|
+
return formatted_response
|
1758
1819
|
|
1759
1820
|
|
1760
1821
|
async def create_automation(
|
@@ -1766,12 +1827,66 @@ async def create_automation(
|
|
1766
1827
|
conversation_id: str = None,
|
1767
1828
|
tracer: dict = {},
|
1768
1829
|
):
|
1769
|
-
crontime, query_to_run, subject = await
|
1770
|
-
job = await
|
1830
|
+
crontime, query_to_run, subject = await aschedule_query(q, meta_log, user, tracer=tracer)
|
1831
|
+
job = await aschedule_automation(query_to_run, subject, crontime, timezone, q, user, calling_url, conversation_id)
|
1771
1832
|
return job, crontime, query_to_run, subject
|
1772
1833
|
|
1773
1834
|
|
1774
|
-
|
1835
|
+
def schedule_automation(
|
1836
|
+
query_to_run: str,
|
1837
|
+
subject: str,
|
1838
|
+
crontime: str,
|
1839
|
+
timezone: str,
|
1840
|
+
scheduling_request: str,
|
1841
|
+
user: KhojUser,
|
1842
|
+
calling_url: URL,
|
1843
|
+
conversation_id: str,
|
1844
|
+
):
|
1845
|
+
# Disable minute level automation recurrence
|
1846
|
+
minute_value = crontime.split(" ")[0]
|
1847
|
+
if not minute_value.isdigit():
|
1848
|
+
# Run automation at some random minute (to distribute request load) instead of running every X minutes
|
1849
|
+
crontime = " ".join([str(math.floor(random() * 60))] + crontime.split(" ")[1:])
|
1850
|
+
|
1851
|
+
user_timezone = pytz.timezone(timezone)
|
1852
|
+
trigger = CronTrigger.from_crontab(crontime, user_timezone)
|
1853
|
+
trigger.jitter = 60
|
1854
|
+
# Generate id and metadata used by task scheduler and process locks for the task runs
|
1855
|
+
job_metadata = json.dumps(
|
1856
|
+
{
|
1857
|
+
"query_to_run": query_to_run,
|
1858
|
+
"scheduling_request": scheduling_request,
|
1859
|
+
"subject": subject,
|
1860
|
+
"crontime": crontime,
|
1861
|
+
"conversation_id": str(conversation_id),
|
1862
|
+
}
|
1863
|
+
)
|
1864
|
+
query_id = hashlib.md5(f"{query_to_run}_{crontime}".encode("utf-8")).hexdigest()
|
1865
|
+
job_id = f"automation_{user.uuid}_{query_id}"
|
1866
|
+
job = state.scheduler.add_job(
|
1867
|
+
run_with_process_lock,
|
1868
|
+
trigger=trigger,
|
1869
|
+
args=(
|
1870
|
+
scheduled_chat,
|
1871
|
+
f"{ProcessLock.Operation.SCHEDULED_JOB}_{user.uuid}_{query_id}",
|
1872
|
+
),
|
1873
|
+
kwargs={
|
1874
|
+
"query_to_run": query_to_run,
|
1875
|
+
"scheduling_request": scheduling_request,
|
1876
|
+
"subject": subject,
|
1877
|
+
"user": user,
|
1878
|
+
"calling_url": calling_url,
|
1879
|
+
"job_id": job_id,
|
1880
|
+
"conversation_id": conversation_id,
|
1881
|
+
},
|
1882
|
+
id=job_id,
|
1883
|
+
name=job_metadata,
|
1884
|
+
max_instances=2, # Allow second instance to kill any previous instance with stale lock
|
1885
|
+
)
|
1886
|
+
return job
|
1887
|
+
|
1888
|
+
|
1889
|
+
async def aschedule_automation(
|
1775
1890
|
query_to_run: str,
|
1776
1891
|
subject: str,
|
1777
1892
|
crontime: str,
|
@@ -11,7 +11,7 @@ khoj/database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
11
|
khoj/database/admin.py,sha256=0Z1jB2Dq8PLf9Fnvv9t9bWb5CymzwpghoStpr_aLrHw,12645
|
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=
|
14
|
+
khoj/database/adapters/__init__.py,sha256=Qo8ZMTFIYmgx5XkE7-AXjQ079XaL0Ns1BU9--yO9ddA,69691
|
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=HkFQOI-2rFjlu7YiulyRcTrITzSzXmY4WiV2hBmml0w,5209
|
@@ -115,68 +115,70 @@ khoj/interface/compiled/chat.svg,sha256=l2JoYRRgk201adTTdvJ-buKUrc0WGfsudix5xEvt
|
|
115
115
|
khoj/interface/compiled/close.svg,sha256=hQ2iFLkNzHk0_iyTrSbwnWAeXYlgA-c2Eof2Iqh76n4,417
|
116
116
|
khoj/interface/compiled/copy-button-success.svg,sha256=byqWAYD3Pn9IOXRjOKudJ-TJbP2UESbQGvtLWazNGjY,829
|
117
117
|
khoj/interface/compiled/copy-button.svg,sha256=05bKM2eRxksfBlAPT7yMaoNJEk85bZCxQg67EVrPeHo,669
|
118
|
-
khoj/interface/compiled/index.html,sha256=
|
119
|
-
khoj/interface/compiled/index.txt,sha256=
|
118
|
+
khoj/interface/compiled/index.html,sha256=xRFFq5IO2q6MqlkUfN8RQjYFyoVi1o1eaCs5d3Vj4G0,15886
|
119
|
+
khoj/interface/compiled/index.txt,sha256=U0C2f3fNtXiC636-ZSAY7WIRnyr5s3lRJLadN1N4VvI,6792
|
120
120
|
khoj/interface/compiled/khoj.webmanifest,sha256=9wOK2BMS6xH5NKd2eaUgTLg9WepIxB2K2U33KU89LD8,2543
|
121
121
|
khoj/interface/compiled/logo.svg,sha256=_QCKVYM4WT2Qhcf7aVFImjq_s5CwjynGXYAOgI7yf8w,8059
|
122
122
|
khoj/interface/compiled/send.svg,sha256=VdavOWkVddcwcGcld6pdfmwfz7S91M-9O28cfeiKJkM,635
|
123
123
|
khoj/interface/compiled/share.svg,sha256=91lwo75PvMDrgocuZQab6EQ62CxRbubh9Bhw7CWMKbg,1221
|
124
124
|
khoj/interface/compiled/thumbs-down.svg,sha256=JGNl-DwoRmH2XFMPWwFFklmoYtKxaQbkLE3nuYKe8ZY,1019
|
125
125
|
khoj/interface/compiled/thumbs-up.svg,sha256=yS1wxTRtiztkN-6nZciLoYQUB_KTYNPV8xFRwH2TQFw,1036
|
126
|
-
khoj/interface/compiled/404/index.html,sha256=
|
127
|
-
khoj/interface/compiled/_next/static/chunks/
|
128
|
-
khoj/interface/compiled/_next/static/chunks/
|
129
|
-
khoj/interface/compiled/_next/static/chunks/
|
126
|
+
khoj/interface/compiled/404/index.html,sha256=urgZwrBx75ozLstIeOJt0RMcNmeO_POGHveRRSpEBNA,15705
|
127
|
+
khoj/interface/compiled/_next/static/chunks/1010-8f39bb4648b5ba10.js,sha256=5YkAi84Tc3fqa83pPShWPNf6GInBsRvVDurP6WOjrqI,48173
|
128
|
+
khoj/interface/compiled/_next/static/chunks/182-f1c48a203dc91e0e.js,sha256=JRaMKdCDyIPYNIJkRYwiBj5I4h8JG8uj4I7Mxv9qiNA,469751
|
129
|
+
khoj/interface/compiled/_next/static/chunks/1915-d3c36ad6ce697ce7.js,sha256=qArqL3leavWRcZkX4ZuWgemtKnmV6c-_yrNtMu_8SeY,11277
|
130
|
+
khoj/interface/compiled/_next/static/chunks/2117-165ef4747a5b836b.js,sha256=vTLu_qp-db5dk72ycjiCIq96HAsdHWNB3rC84EmAr-k,123993
|
130
131
|
khoj/interface/compiled/_next/static/chunks/2581-455000f8aeb08fc3.js,sha256=Ym3HUf6T2AJZNSPk0X3e_j2-n6htoq39Uh-UPSzlQpk,27056
|
131
|
-
khoj/interface/compiled/_next/static/chunks/3175-b2e522f8ca392f7e.js,sha256=3W8bnHqqDtcvNuKvXiUEjFH9ZLn_04YXs6aTRlfvb3o,1105077
|
132
132
|
khoj/interface/compiled/_next/static/chunks/3727.dcea8f2193111552.js,sha256=nPBaUoj--93LLnMYWR149vLsp3ZaViwX_6os6JJlujs,34242
|
133
133
|
khoj/interface/compiled/_next/static/chunks/3789-a09e37a819171a9d.js,sha256=zaxGAee4SqCU7ngN5Hij1fsKoyqrRKnLZNx8LpagYa0,31652
|
134
|
-
khoj/interface/compiled/_next/static/chunks/4124-
|
135
|
-
khoj/interface/compiled/_next/static/chunks/4357-03ea130575287c27.js,sha256=5FPNF2yXaXxgumg4KfPWQQcOrqeF0RnsTTS0jsviAyQ,45294
|
134
|
+
khoj/interface/compiled/_next/static/chunks/4124-f5c857c57e5391d9.js,sha256=bq1Z7M0jagSLiYXsPf6ZtpVbv6h5eVOw6r1cQ54YvME,124919
|
136
135
|
khoj/interface/compiled/_next/static/chunks/5243-f7f0a2a6e1ac5d28.js,sha256=FutSaX8UMYk7J_47NcsCB6H8hOpUbIHD10xHVyiycKY,221570
|
137
|
-
khoj/interface/compiled/_next/static/chunks/5427-
|
136
|
+
khoj/interface/compiled/_next/static/chunks/5427-b52d95253e692bfa.js,sha256=tPljJFjx3mRvd5QswmQ8xCiRCOGY48Ze2KtEgyIFdfA,31779
|
138
137
|
khoj/interface/compiled/_next/static/chunks/5473-b1cf56dedac6577a.js,sha256=GggNQkdq_W4LyMcshYk7g6JEVnjHYGHXyloI05rGP58,45616
|
139
|
-
khoj/interface/compiled/_next/static/chunks/5477-
|
138
|
+
khoj/interface/compiled/_next/static/chunks/5477-0bbddb79c25a54a7.js,sha256=gKDUs15ajWWuxIMV-CAYqumgqvcEMp_36liD1tRfdU0,14553
|
140
139
|
khoj/interface/compiled/_next/static/chunks/6065-64db9ad305ba0bcd.js,sha256=QHRBp6KEitIXyCMG4IOQyrDisokI7NR6rO5vBlLK0x8,23715
|
141
|
-
khoj/interface/compiled/_next/static/chunks/
|
142
|
-
khoj/interface/compiled/_next/static/chunks/
|
140
|
+
khoj/interface/compiled/_next/static/chunks/6293-469dd16402ea8a6f.js,sha256=eYDSoU5ouQST98It9-bq9BT-Juf_HzPTw2DHJ4iic80,1102198
|
141
|
+
khoj/interface/compiled/_next/static/chunks/8667-b6bf63c72b2d76eb.js,sha256=kyiAVJTylsiOPFTb63uZn_pMlk4pYhDYt_N7xL76PTM,7214
|
142
|
+
khoj/interface/compiled/_next/static/chunks/9259-1172dbaca0515237.js,sha256=VPDpPt7r_7xpFB-OxF6mnr2dvKuwFFZltMkpnc98dc8,34824
|
143
143
|
khoj/interface/compiled/_next/static/chunks/94ca1967.1d9b42d929a1ee8c.js,sha256=4NgDGkBrtrBndP5tKblKoLgi9xpn4aDpIRH4kDop9Q0,1174520
|
144
144
|
khoj/interface/compiled/_next/static/chunks/9597.83583248dfbf6e73.js,sha256=CndAkafBFeXVlIIlItX7fkn5pQSFPUUULHUZUSnolSM,2121
|
145
145
|
khoj/interface/compiled/_next/static/chunks/964ecbae.51d6faf8801d15e6.js,sha256=c2w-Bc3Ru91uRlwy-IZZs8tMBZF84I7YvVGwG3gofhI,1175120
|
146
|
-
khoj/interface/compiled/_next/static/chunks/9665-
|
146
|
+
khoj/interface/compiled/_next/static/chunks/9665-391df1e5c51c960a.js,sha256=sVVdXfK3a6QbJk91E0uJm36r6jrjlRZiKNrjOizrEuA,105531
|
147
147
|
khoj/interface/compiled/_next/static/chunks/d3ac728e-44ebd2a0c99b12a0.js,sha256=W6sCoyCDYdfvkNjo_DZDyj9ArHFk216-aJcAHwdzIwk,268303
|
148
148
|
khoj/interface/compiled/_next/static/chunks/fd9d1056-4482b99a36fd1673.js,sha256=IMKXmjolTYmQ_XEzOGc7GLgTH1e6iDJXu6rhdxT1Fn0,172834
|
149
149
|
khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js,sha256=sFFnSyDnFoOc61lP-EtTzTyf-zGA78ejDyMgPFMDw2Q,140001
|
150
150
|
khoj/interface/compiled/_next/static/chunks/main-app-de1f09df97a3cfc7.js,sha256=bqnztujKItXfFBzQlaBmDZyfJpQt_M93CXOuchJfpD0,471
|
151
151
|
khoj/interface/compiled/_next/static/chunks/main-db4bfac6b0a8d00b.js,sha256=vPSmGIy1oxKoIImN-yu0Cac-8hxcwGJJvJ9V4UTGQ6k,111273
|
152
152
|
khoj/interface/compiled/_next/static/chunks/polyfills-42372ed130431b0a.js,sha256=CXPB1kyIrcjjyVBBDLWLKI9yEY1ZZbeASUON648vloM,112594
|
153
|
-
khoj/interface/compiled/_next/static/chunks/webpack-
|
153
|
+
khoj/interface/compiled/_next/static/chunks/webpack-4f582c9505ac1fb8.js,sha256=oBfUYoPOJQ8seIH0GbiqcRYxI8W4uSCqVvM6tW0MhcU,4007
|
154
154
|
khoj/interface/compiled/_next/static/chunks/app/layout-30e7fda7262713ce.js,sha256=U_kFR0Vycl8EfeY4NGizdPrucrgy5QnWZ4jqkkLJD20,712
|
155
|
-
khoj/interface/compiled/_next/static/chunks/app/page-
|
155
|
+
khoj/interface/compiled/_next/static/chunks/app/page-8ebd7e62c0542aa1.js,sha256=lHSSldEF1Kjani2rP_3reEP9_72rycgdQcUj5SFZ0s4,27621
|
156
156
|
khoj/interface/compiled/_next/static/chunks/app/_not-found/page-a834eddae3e235df.js,sha256=zElhiTkdu2JqrEvJ8Lrxh4HCyfLmPllBHHWOuDtrVlw,1755
|
157
|
-
khoj/interface/compiled/_next/static/chunks/app/agents/layout-
|
158
|
-
khoj/interface/compiled/_next/static/chunks/app/agents/page-
|
157
|
+
khoj/interface/compiled/_next/static/chunks/app/agents/layout-e49165209d2e406c.js,sha256=WFG6nsdtjnYHsKazIx5-xBXemVzEKXfW_U6Q9dnc7CU,180
|
158
|
+
khoj/interface/compiled/_next/static/chunks/app/agents/page-f6f93b8b4457f1f7.js,sha256=FKTuIUdWj-Yk85ZG84Tb2B3A0GNlaMtUj-mDWUre5Fg,17985
|
159
159
|
khoj/interface/compiled/_next/static/chunks/app/automations/layout-1fe1537449f43496.js,sha256=s2wHeQ-ai9rKyU9EjOGY1Yo51L4ZEkjLtML85BqN3Zc,5143
|
160
|
-
khoj/interface/compiled/_next/static/chunks/app/automations/page-
|
160
|
+
khoj/interface/compiled/_next/static/chunks/app/automations/page-e8f13a995ae7f2fa.js,sha256=2RU2CnraApW3Z6qccppCvpAGNuNEfcM2KcPtKv8e7IY,34761
|
161
161
|
khoj/interface/compiled/_next/static/chunks/app/chat/layout-33934fc2d6ae6838.js,sha256=zKdgnv4zZCkeNWFODWPJKYB3VjkTq4X5LtTCs0sqxaQ,180
|
162
|
-
khoj/interface/compiled/_next/static/chunks/app/chat/page-
|
162
|
+
khoj/interface/compiled/_next/static/chunks/app/chat/page-4645a696ec970a94.js,sha256=DrQV-djAxgsoVEBooX95toh_xcNEzrW-7d-2Rg0lNxo,7455
|
163
163
|
khoj/interface/compiled/_next/static/chunks/app/search/layout-c02531d586972d7d.js,sha256=VQACqzXZcJUaa3W_0wHsrdLP22pj8yqeAOGBQfVnQxw,180
|
164
164
|
khoj/interface/compiled/_next/static/chunks/app/search/page-bbbfda90fa03c5be.js,sha256=0I-BcFFH48DLqY17gYilS7s0RGrkjEBZZ2OjFV6zA5k,7137
|
165
165
|
khoj/interface/compiled/_next/static/chunks/app/settings/layout-d09d6510a45cd4bd.js,sha256=dIfmM5C_Al-Zh_uqaJmniSxjXbu3LqPzrEw4SQ7vs0I,6132
|
166
|
-
khoj/interface/compiled/_next/static/chunks/app/settings/page-
|
167
|
-
khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-
|
168
|
-
khoj/interface/compiled/_next/static/chunks/app/share/chat/page-
|
166
|
+
khoj/interface/compiled/_next/static/chunks/app/settings/page-1bf10e8d882533b6.js,sha256=BkTXpbUdtW4uxjr9dgiD_j3qsHAWsw-cbiXXunSoWLM,31267
|
167
|
+
khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-6fb51c5c80f8ec67.js,sha256=MRWVUV6hiulN_DJo7uyZvW0HaMGGqoq6fdGK_jt4kJE,180
|
168
|
+
khoj/interface/compiled/_next/static/chunks/app/share/chat/page-3067638b97048e5f.js,sha256=88oe0tt76OHy-UyeFaYHihUjhEoF0atm9oTsf-u2Iac,4640
|
169
169
|
khoj/interface/compiled/_next/static/chunks/pages/_app-3c9ca398d360b709.js,sha256=UqtikLsCsOWtDUJOW6Tuk9P-bV1V3MhYd3ghrQuEmfs,286
|
170
170
|
khoj/interface/compiled/_next/static/chunks/pages/_error-cf5ca766ac8f493f.js,sha256=w_It3VzKT8O1M3CrJ_hZHsaU7M7dq3EAaVG8KvJ-fhU,253
|
171
171
|
khoj/interface/compiled/_next/static/css/089de1d8526b96e9.css,sha256=sjpmNlk7H2uKEYK9_DFccNq9J8V9uR799cS0yT-E7EI,4041
|
172
|
-
khoj/interface/compiled/_next/static/css/
|
172
|
+
khoj/interface/compiled/_next/static/css/307dd5243338dfd8.css,sha256=p5NIKY-t0BSsK_1vv-jU52o_6g7OchhVqC_4pq8chyc,17569
|
173
173
|
khoj/interface/compiled/_next/static/css/37a73b87f02df402.css,sha256=hp0vlekKu0K2eITR5YIqFmLHQPqV3JETFnRd_-Uh0mk,165
|
174
|
+
khoj/interface/compiled/_next/static/css/4e4e6a4a1c920d06.css,sha256=v52KOOFVYsJajTXsn7R2-B8ZU1dDPdmyN5J2a1d2dwk,1696
|
175
|
+
khoj/interface/compiled/_next/static/css/5dd9bb87a50b706e.css,sha256=FlAYD9w3ogdYu-0MZL_w0wT-SLvYHphm5OSaMcYVb7E,3072695
|
174
176
|
khoj/interface/compiled/_next/static/css/8e6a3ca11a60b189.css,sha256=KR0nA1LdEJ-BwslNVZPATvBu6pCWJMMDyqAW5fljCkI,5858
|
175
177
|
khoj/interface/compiled/_next/static/css/9c164d9727dd8092.css,sha256=89nMwZaML1CQfnzEPwbi_6vfauV5D8QwIiJBfsg3Hc8,30651
|
176
|
-
khoj/interface/compiled/_next/static/css/c3acbadc30537d04.css,sha256=DkW_MqKz7IXbXtwsh_AT2AfWymZxi_7pzkUGgEknKH8,1597
|
177
178
|
khoj/interface/compiled/_next/static/css/dac88c17aaee5fcf.css,sha256=ZfRdWDktxctcmm_P9OmtA46MT7pPYRo2oHIQBt3DLQ0,401
|
178
179
|
khoj/interface/compiled/_next/static/css/df4b47a2d0d85eae.css,sha256=EsBNJADFxaffgFa5iSYHPswGl9RAN9UdK3jD3d_W9Hs,1736
|
179
|
-
khoj/interface/compiled/_next/static/
|
180
|
+
khoj/interface/compiled/_next/static/iX3n9kOMMR5_Xg2yB-YVv/_buildManifest.js,sha256=f2_nYnw25hHWQJ-39Lf5OH1u6kgdbOInyfplqgjvAV4,224
|
181
|
+
khoj/interface/compiled/_next/static/iX3n9kOMMR5_Xg2yB-YVv/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
|
180
182
|
khoj/interface/compiled/_next/static/media/1d8a05b60287ae6c-s.p.woff2,sha256=IzKBwB_bpSGvO7C9aRv29Js-jAbZPRDI-D-P4H2P918,14508
|
181
183
|
khoj/interface/compiled/_next/static/media/6f22fce21a7c433c-s.woff2,sha256=T773llrgKNUxGlJzhaH0DUs2rcuRHU7bQpf0DTC4sSU,21812
|
182
184
|
khoj/interface/compiled/_next/static/media/77c207b095007c34-s.p.woff2,sha256=vk9tBKB084h1U8mxwJ5WNHDz_pdUVqE_xb9-ILVhKXY,168144
|
@@ -250,10 +252,8 @@ khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp,sha256=M2AW_HLpBn
|
|
250
252
|
khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp,sha256=BBeRPBZkxY3-aKkMnYv5TSkxmbeMbyUH4VRIPfrWg1E,137406
|
251
253
|
khoj/interface/compiled/_next/static/media/globe.98e105ca.webp,sha256=g3ofb8-W9GM75zIhlvQhaS8I2py9TtrovOKR3_7Jf04,514
|
252
254
|
khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp,sha256=I_N7Yke3IOoS-0CC6XD8o0IUWG8PdPbrHmf6lpgWlZY,1380
|
253
|
-
khoj/interface/compiled/
|
254
|
-
khoj/interface/compiled/
|
255
|
-
khoj/interface/compiled/agents/index.html,sha256=5byMEydz2nZ1EzPlZO0y2CyX7f1zHjo_QTaB4bptyxc,16633
|
256
|
-
khoj/interface/compiled/agents/index.txt,sha256=A5KTT10C0W3vCIAHaCNACZmYqHY8USlSlt8SK0ILP54,7344
|
255
|
+
khoj/interface/compiled/agents/index.html,sha256=PshumNYoyIrSg5UsrkjF7NWnOOoxRqX7Yc0nOXSgXgM,16633
|
256
|
+
khoj/interface/compiled/agents/index.txt,sha256=4LgH0hNWeGqxLIwgwX8w2Gu3PvrnV0fi1oFaiCQcAQ8,7344
|
257
257
|
khoj/interface/compiled/assets/icons/khoj_lantern.ico,sha256=eggu-B_v3z1R53EjOFhIqqPnICBGdoaw1xnc0NrzHck,174144
|
258
258
|
khoj/interface/compiled/assets/icons/khoj_lantern.svg,sha256=I_8XP5X84gEOoCRhCRKOQn_GKZrz3SUBXct7WxHvY7c,8767
|
259
259
|
khoj/interface/compiled/assets/icons/khoj_lantern_1200x1200.png,sha256=xDx0bbD-WMflgg8zck9oPIIuTIvywtuED2k7CjSQS4w,66194
|
@@ -268,16 +268,16 @@ khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png,sha256=i
|
|
268
268
|
khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png,sha256=Dd4fPwtFl6BWqnHjeb1mCK_ND0hhHsWtx8sNE7EiMuE,406179
|
269
269
|
khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png,sha256=DEDaNRCkfEWUeh3kYZWIQDTVK1a6KKnYdwj5ZWisN_Q,82985
|
270
270
|
khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png,sha256=Ma3blirRmq3X4oYSsDbbT7MDn29rymDrjwmUfA9BMuM,236285
|
271
|
-
khoj/interface/compiled/automations/index.html,sha256=
|
272
|
-
khoj/interface/compiled/automations/index.txt,sha256=
|
273
|
-
khoj/interface/compiled/chat/index.html,sha256=
|
274
|
-
khoj/interface/compiled/chat/index.txt,sha256=
|
275
|
-
khoj/interface/compiled/search/index.html,sha256=
|
276
|
-
khoj/interface/compiled/search/index.txt,sha256=
|
277
|
-
khoj/interface/compiled/settings/index.html,sha256=
|
278
|
-
khoj/interface/compiled/settings/index.txt,sha256=
|
279
|
-
khoj/interface/compiled/share/chat/index.html,sha256=
|
280
|
-
khoj/interface/compiled/share/chat/index.txt,sha256=
|
271
|
+
khoj/interface/compiled/automations/index.html,sha256=YwYPuQmzKx5txyDK8thCM5AogSlvCZvQqYfkv4Hl-T4,52500
|
272
|
+
khoj/interface/compiled/automations/index.txt,sha256=Y8uiKWVzzORSI3oYQbVOn4nuj4ZsVLncfCJxT6LTN80,7644
|
273
|
+
khoj/interface/compiled/chat/index.html,sha256=hWPQvVv9woqgzChNjwOhehVsYinXkQUP-5dI0xOSEAQ,17782
|
274
|
+
khoj/interface/compiled/chat/index.txt,sha256=q6uXoGT82bMWaLs4VMsMcbYzt1Gfn1j5As_14tRwim0,7882
|
275
|
+
khoj/interface/compiled/search/index.html,sha256=C8qe7l3VPno9ftpZnBuRalbanmko6xhr1lg6TA37KSM,50985
|
276
|
+
khoj/interface/compiled/search/index.txt,sha256=8M3l_w8vNQf1F3kc4b5sPUM18szxw3OUCPDA4p3nC2E,6677
|
277
|
+
khoj/interface/compiled/settings/index.html,sha256=ueQUBJeCNxj47zs7WTy4HoGhQDux6w6wr_Z_hAPnN3U,17441
|
278
|
+
khoj/interface/compiled/settings/index.txt,sha256=nusPRifBhRAHxhx84S-dZvyrFdeWwKFihATz4dqOsoY,7779
|
279
|
+
khoj/interface/compiled/share/chat/index.html,sha256=DsSJlWzsbflg9qVcqxoa51PNjvmLFCIV72mwTWWANys,18621
|
280
|
+
khoj/interface/compiled/share/chat/index.txt,sha256=0nb26CT5HfrUJNnjuvCMelq6hvcLIDFa2F_W3NpVIVc,8440
|
281
281
|
khoj/interface/email/feedback.html,sha256=xksuPFamx4hGWyTTxZKRgX_eiYQQEuv-eK9Xmkt-nwU,1216
|
282
282
|
khoj/interface/email/magic_link.html,sha256=372ESbTPKM9acekuZcOIKOw6kBl-KikFg_L9MOHqJkg,2094
|
283
283
|
khoj/interface/email/task.html,sha256=tY7a0gzVeQ2lSQNu7WyXR_s7VYeWTrxWEj1iHVuoVE4,2813
|
@@ -329,7 +329,7 @@ khoj/processor/content/pdf/pdf_to_entries.py,sha256=GQUvab61okhV9_DK0g2MCrMq8wKp
|
|
329
329
|
khoj/processor/content/plaintext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
330
330
|
khoj/processor/content/plaintext/plaintext_to_entries.py,sha256=wFZwK_zIc7gWbRtO9sOHo9KvfhGAzL9psX_nKWYFduo,4975
|
331
331
|
khoj/processor/conversation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
332
|
-
khoj/processor/conversation/prompts.py,sha256=
|
332
|
+
khoj/processor/conversation/prompts.py,sha256=8NPOieonOdksIEVZepOLJ3udCvscugNAGJMtUYZbx3c,52258
|
333
333
|
khoj/processor/conversation/utils.py,sha256=shGBCU1gtfGbWZgm1_zQtezt9RmVFcftopugQob7EhA,32709
|
334
334
|
khoj/processor/conversation/anthropic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
335
335
|
khoj/processor/conversation/anthropic/anthropic_chat.py,sha256=2jLTh-5WiGcsm1b5pla9UDjeTrPFfck2TOPPex5MN4c,8962
|
@@ -352,16 +352,16 @@ khoj/processor/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
|
|
352
352
|
khoj/processor/tools/online_search.py,sha256=LM-r9ED42RL5JEZhx61vUcwdyz5U7nwYMaRP1KvkPpg,19067
|
353
353
|
khoj/processor/tools/run_code.py,sha256=pa8slKYU21yDxBxK2CoQTEwHxZIANA_-bI8GhEDjvxc,6547
|
354
354
|
khoj/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
355
|
-
khoj/routers/api.py,sha256=
|
355
|
+
khoj/routers/api.py,sha256=8qq9MFmMlMC-M3E0cBb6qV7r643uYOKO9ocdSF0jueA,28621
|
356
356
|
khoj/routers/api_agents.py,sha256=d6i2MQ6cxU5KjeH6MXTM6k2MOQcRdizV-OhCB4PiJ8s,9675
|
357
357
|
khoj/routers/api_chat.py,sha256=O4dpo_xrFeSx-OEfa1k_G5-4B26cT5OGeiTkVouLQGA,49299
|
358
358
|
khoj/routers/api_content.py,sha256=WNlB6lVwRW8hHDthO2HypbpPvqrqt9rTU5oMRNknpMU,21070
|
359
359
|
khoj/routers/api_model.py,sha256=cEXEH9-213Mt7kv_YqfDjiN7uC0N1sdkdSajCIbZO58,3612
|
360
360
|
khoj/routers/api_phone.py,sha256=p9yfc4WeMHDC0hg3aQk60a2VBy8rZPdEnz9wdJ7DzkU,2208
|
361
361
|
khoj/routers/api_subscription.py,sha256=qnbKwA6N1TWK8Aiu1FFLka_JhbPOuwqT262NSHGZDiQ,5569
|
362
|
-
khoj/routers/auth.py,sha256=
|
362
|
+
khoj/routers/auth.py,sha256=944BdNZaFlwX2f8dD1_Rj7KqJljowoha-XXRP6urgDc,10811
|
363
363
|
khoj/routers/email.py,sha256=rHn8ZizG9TbKm0TK7xnio8qrf9T3tNH1vEBSaAEwRzs,3902
|
364
|
-
khoj/routers/helpers.py,sha256
|
364
|
+
khoj/routers/helpers.py,sha256=-E5G2EKyBtqX4lFr7n_MZpehK-zb-mJ_NfT7cETMnvg,89129
|
365
365
|
khoj/routers/notion.py,sha256=g53xyYFmjr2JnuIrTW2vytbfkiK_UkoRTxqnnLSmD5o,2802
|
366
366
|
khoj/routers/research.py,sha256=KjUuo-rwtSqUX-0BYjXgP6cWeH3xazffwtxfxKXZL00,16083
|
367
367
|
khoj/routers/storage.py,sha256=tJrwhFRVWv0MHv7V7huMc1Diwm-putZSwnZXJ3tqT_c,2338
|
@@ -386,8 +386,8 @@ khoj/utils/models.py,sha256=Q5tcC9-z25sCiub048fLnvZ6_IIO1bcPNxt5payekk0,2009
|
|
386
386
|
khoj/utils/rawconfig.py,sha256=bQ_MGbBzYt6ZUIsHUwZjaHKDLh6GQ7h-sENkv3fyVbQ,5028
|
387
387
|
khoj/utils/state.py,sha256=axjZhnby8L3bY-N1VVoWgBH1RpFGK6U3_ZeNo1Kt7hs,1679
|
388
388
|
khoj/utils/yaml.py,sha256=qy1Tkc61rDMesBw_Cyx2vOR6H-Hngcsm5kYfjwQBwkE,1543
|
389
|
-
khoj-1.32.3.
|
390
|
-
khoj-1.32.3.
|
391
|
-
khoj-1.32.3.
|
392
|
-
khoj-1.32.3.
|
393
|
-
khoj-1.32.3.
|
389
|
+
khoj-1.32.3.dev61.dist-info/METADATA,sha256=hB_rDiHFME5eEadO7L_GA3s6ZjaLppu7Zl-oC2rco6g,7533
|
390
|
+
khoj-1.32.3.dev61.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
391
|
+
khoj-1.32.3.dev61.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
|
392
|
+
khoj-1.32.3.dev61.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
393
|
+
khoj-1.32.3.dev61.dist-info/RECORD,,
|