khoj 1.30.11.dev13__tar.gz → 1.30.11.dev46__tar.gz

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 (409) hide show
  1. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/PKG-INFO +2 -1
  2. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/pyproject.toml +1 -0
  3. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/app/settings.py +21 -0
  4. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/admin.py +47 -37
  5. khoj-1.30.11.dev46/src/khoj/database/migrations/0075_migrate_generated_assets_and_validate.py +85 -0
  6. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/models/__init__.py +164 -31
  7. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/404/index.html +1 -1
  8. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/1603-f5babe72ba9f6a59.js +1 -0
  9. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/5538-0ea2d3944ca051e1.js +1 -0
  10. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/agents/layout-1878cc328ea380bd.js +1 -0
  11. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/agents/page-8eead7920b0ff92a.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/agents/page-f5c0801b27a8e95e.js +1 -1
  12. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/automations/page-b5800b5286306140.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/automations/page-8691f6c09a0acd44.js +1 -1
  13. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/chat/layout-9219a85f3477e722.js +1 -0
  14. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/chat/page-d7d2ab93e519f0b2.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/chat/page-135d56dd4263e40d.js +1 -1
  15. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/layout-6310c57b674dd6f5.js +1 -0
  16. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/page-3c32ad5472f75965.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/page-e79ace822d51557b.js +1 -1
  17. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/search/page-faa998c71eb7ca8e.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/search/page-e8b578d155550386.js +1 -1
  18. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/settings/page-cbe7f56b1f87d77a.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/settings/page-b6c835050c970be7.js +1 -1
  19. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-6f4879fbbf8b90f7.js +1 -0
  20. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/page-cd5757199539bbf2.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/page-635635e4fb39fe29.js +1 -1
  21. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/webpack-3a2dfd74acf6e193.js → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/webpack-5203c3872078c10c.js +1 -1
  22. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/css/bedf49fbfc598358.css → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/css/089de1d8526b96e9.css +1 -1
  23. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/css/4cae6c0e5c72fb2d.css +1 -0
  24. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/css/edd3abaf11580924.css +1 -0
  25. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/1d8a05b60287ae6c-s.p.woff2 +0 -0
  26. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/6f22fce21a7c433c-s.woff2 +0 -0
  27. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/77c207b095007c34-s.p.woff2 +0 -0
  28. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/82ef96de0e8f4d8c-s.p.woff2 +0 -0
  29. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/a6ecd16fa044d500-s.p.woff2 +0 -0
  30. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/bd82c78e5b7b3fe9-s.p.woff2 +0 -0
  31. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/c32c8052c071fc42-s.woff2 +0 -0
  32. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/media/c4250770ab8708b6-s.p.woff2 +0 -0
  33. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/agents/index.html +1 -1
  34. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/agents/index.txt +2 -2
  35. khoj-1.30.11.dev46/src/khoj/interface/compiled/assets/icons/khoj_lantern.svg +100 -0
  36. khoj-1.30.11.dev46/src/khoj/interface/compiled/assets/icons/khoj_lantern_128x128_dark.png +0 -0
  37. khoj-1.30.11.dev46/src/khoj/interface/compiled/automations/index.html +1 -0
  38. khoj-1.30.11.dev46/src/khoj/interface/compiled/automations/index.txt +8 -0
  39. khoj-1.30.11.dev46/src/khoj/interface/compiled/chat/index.html +1 -0
  40. khoj-1.30.11.dev46/src/khoj/interface/compiled/chat/index.txt +7 -0
  41. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/index.html +1 -1
  42. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/index.txt +2 -2
  43. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/search/index.html +1 -1
  44. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/search/index.txt +2 -2
  45. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/settings/index.html +1 -1
  46. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/settings/index.txt +2 -2
  47. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/share/chat/index.html +1 -1
  48. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/share/chat/index.txt +2 -2
  49. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/anthropic/anthropic_chat.py +11 -3
  50. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/google/gemini_chat.py +11 -3
  51. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/offline/chat_model.py +6 -2
  52. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/openai/gpt.py +10 -2
  53. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/prompts.py +18 -0
  54. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/utils.py +82 -26
  55. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/image/generate.py +10 -13
  56. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_chat.py +49 -98
  57. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/helpers.py +41 -1
  58. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/1603-c68d44bc4ae6039a.js +0 -1
  59. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/5538-e5f3c9f4d67a64b9.js +0 -1
  60. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/agents/layout-f2ea2b26fc0e78b1.js +0 -1
  61. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/chat/layout-1072c3b0ab136e74.js +0 -1
  62. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/layout-72ec1be8afd0b1ab.js +0 -1
  63. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-dc97434f0354a74e.js +0 -1
  64. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/css/2d097a35da6bfe8d.css +0 -1
  65. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/css/80bd6301fc657983.css +0 -1
  66. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/5455839c73f146e7-s.p.woff2 +0 -0
  67. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/5984b96ba4822821-s.p.woff2 +0 -0
  68. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/684adc3dde1b03f1-s.p.woff2 +0 -0
  69. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/82e3b9a1bdaf0c26-s.p.woff2 +0 -0
  70. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/8d1ea331386a0db8-s.p.woff2 +0 -0
  71. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/91475f6526542a4f-s.woff2 +0 -0
  72. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/b98b13dbc1c3b59c-s.p.woff2 +0 -0
  73. khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/media/c824d7a20139e39d-s.woff2 +0 -0
  74. khoj-1.30.11.dev13/src/khoj/interface/compiled/automations/index.html +0 -1
  75. khoj-1.30.11.dev13/src/khoj/interface/compiled/automations/index.txt +0 -8
  76. khoj-1.30.11.dev13/src/khoj/interface/compiled/chat/index.html +0 -1
  77. khoj-1.30.11.dev13/src/khoj/interface/compiled/chat/index.txt +0 -7
  78. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/.gitignore +0 -0
  79. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/LICENSE +0 -0
  80. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/README.md +0 -0
  81. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/__init__.py +0 -0
  82. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/app/README.md +0 -0
  83. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/app/__init__.py +0 -0
  84. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/app/asgi.py +0 -0
  85. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/app/urls.py +0 -0
  86. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/configure.py +0 -0
  87. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/__init__.py +0 -0
  88. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/adapters/__init__.py +0 -0
  89. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/apps.py +0 -0
  90. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/management/__init__.py +0 -0
  91. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/management/commands/__init__.py +0 -0
  92. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/management/commands/change_default_model.py +0 -0
  93. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/management/commands/change_generated_images_url.py +0 -0
  94. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/management/commands/convert_images_png_to_webp.py +0 -0
  95. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0001_khojuser.py +0 -0
  96. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0002_googleuser.py +0 -0
  97. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0003_vector_extension.py +0 -0
  98. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0004_content_types_and_more.py +0 -0
  99. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0005_embeddings_corpus_id.py +0 -0
  100. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0006_embeddingsdates.py +0 -0
  101. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0007_add_conversation.py +0 -0
  102. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0008_alter_conversation_conversation_log.py +0 -0
  103. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0009_khojapiuser.py +0 -0
  104. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0010_chatmodeloptions_and_more.py +0 -0
  105. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0010_rename_embeddings_entry_and_more.py +0 -0
  106. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0011_merge_20231102_0138.py +0 -0
  107. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0012_entry_file_source.py +0 -0
  108. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0013_subscription.py +0 -0
  109. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0014_alter_googleuser_picture.py +0 -0
  110. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0015_alter_subscription_user.py +0 -0
  111. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0016_alter_subscription_renewal_date.py +0 -0
  112. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0017_searchmodel.py +0 -0
  113. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0018_searchmodelconfig_delete_searchmodel.py +0 -0
  114. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0019_alter_googleuser_family_name_and_more.py +0 -0
  115. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0020_reflectivequestion.py +0 -0
  116. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0021_speechtotextmodeloptions_and_more.py +0 -0
  117. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0022_texttoimagemodelconfig.py +0 -0
  118. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0023_usersearchmodelconfig.py +0 -0
  119. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0024_alter_entry_embeddings.py +0 -0
  120. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0025_clientapplication_khojuser_phone_number_and_more.py +0 -0
  121. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0025_searchmodelconfig_embeddings_inference_endpoint_and_more.py +0 -0
  122. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0026_searchmodelconfig_cross_encoder_inference_endpoint_and_more.py +0 -0
  123. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0027_merge_20240118_1324.py +0 -0
  124. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0028_khojuser_verified_phone_number.py +0 -0
  125. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0029_userrequests.py +0 -0
  126. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0030_conversation_slug_and_title.py +0 -0
  127. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0031_agent_conversation_agent.py +0 -0
  128. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0031_alter_googleuser_locale.py +0 -0
  129. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0032_merge_20240322_0427.py +0 -0
  130. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0033_rename_tuning_agent_personality.py +0 -0
  131. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0034_alter_chatmodeloptions_chat_model.py +0 -0
  132. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0035_processlock.py +0 -0
  133. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0036_alter_processlock_name.py +0 -0
  134. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0036_delete_offlinechatprocessorconversationconfig.py +0 -0
  135. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0036_publicconversation.py +0 -0
  136. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0037_chatmodeloptions_openai_config_and_more.py +0 -0
  137. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0037_searchmodelconfig_bi_encoder_docs_encode_config_and_more.py +0 -0
  138. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0038_merge_20240425_0857.py +0 -0
  139. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0038_merge_20240426_1640.py +0 -0
  140. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0039_merge_20240501_0301.py +0 -0
  141. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0040_alter_processlock_name.py +0 -0
  142. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0040_merge_20240504_1010.py +0 -0
  143. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0041_merge_20240505_1234.py +0 -0
  144. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0042_serverchatsettings.py +0 -0
  145. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0043_alter_chatmodeloptions_model_type.py +0 -0
  146. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0044_conversation_file_filters.py +0 -0
  147. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0045_fileobject.py +0 -0
  148. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0046_khojuser_email_verification_code_and_more.py +0 -0
  149. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0047_alter_entry_file_type.py +0 -0
  150. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0048_voicemodeloption_uservoicemodelconfig.py +0 -0
  151. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0049_datastore.py +0 -0
  152. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0049_texttoimagemodelconfig_api_key_and_more.py +0 -0
  153. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0050_alter_processlock_name.py +0 -0
  154. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0051_merge_20240702_1220.py +0 -0
  155. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0052_alter_searchmodelconfig_bi_encoder_docs_encode_config_and_more.py +0 -0
  156. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0053_agent_style_color_agent_style_icon.py +0 -0
  157. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0054_alter_agent_style_color.py +0 -0
  158. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0055_alter_agent_style_icon.py +0 -0
  159. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0056_chatmodeloptions_vision_enabled.py +0 -0
  160. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0056_searchmodelconfig_cross_encoder_model_config.py +0 -0
  161. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0057_merge_20240816_1409.py +0 -0
  162. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0057_remove_serverchatsettings_default_model_and_more.py +0 -0
  163. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0058_alter_chatmodeloptions_chat_model.py +0 -0
  164. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0059_searchmodelconfig_bi_encoder_confidence_threshold.py +0 -0
  165. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0060_merge_20240905_1828.py +0 -0
  166. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0061_alter_chatmodeloptions_model_type.py +0 -0
  167. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0061_alter_texttoimagemodelconfig_model_type.py +0 -0
  168. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0062_merge_20240913_0222.py +0 -0
  169. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0063_conversation_temp_id.py +0 -0
  170. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0064_remove_conversation_temp_id_alter_conversation_id.py +0 -0
  171. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0065_remove_agent_avatar_remove_agent_public_and_more.py +0 -0
  172. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0066_remove_agent_tools_agent_input_tools_and_more.py +0 -0
  173. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0067_alter_agent_style_icon.py +0 -0
  174. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0068_alter_agent_output_modes.py +0 -0
  175. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0069_webscraper_serverchatsettings_web_scraper.py +0 -0
  176. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0070_alter_agent_input_tools_alter_agent_output_modes.py +0 -0
  177. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0071_subscription_enabled_trial_at_and_more.py +0 -0
  178. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0072_entry_search_model.py +0 -0
  179. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0073_delete_usersearchmodelconfig.py +0 -0
  180. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/0074_alter_conversation_title.py +0 -0
  181. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/migrations/__init__.py +0 -0
  182. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/database/tests.py +0 -0
  183. {khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/K_WyVARSz0loPVvwOW1gg → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/VhbBwTudxbu82AwZhVKwF}/_buildManifest.js +0 -0
  184. {khoj-1.30.11.dev13/src/khoj/interface/compiled/_next/static/K_WyVARSz0loPVvwOW1gg → khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/VhbBwTudxbu82AwZhVKwF}/_ssgManifest.js +0 -0
  185. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/1210.ef7a0f9a7e43da1d.js +0 -0
  186. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/1279-4cb23143aa2c0228.js +0 -0
  187. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/1459.690bf20e7d7b7090.js +0 -0
  188. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/1970-1b63ac1497b03a10.js +0 -0
  189. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/2646-92ba433951d02d52.js +0 -0
  190. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/3072-be830e4f8412b9d2.js +0 -0
  191. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/3463-081c031e873b7966.js +0 -0
  192. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/3690-51312931ba1eae30.js +0 -0
  193. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/3717-b46079dbe9f55694.js +0 -0
  194. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/4504-62ac13e7d94c52f9.js +0 -0
  195. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/4602-460621c3241e0d13.js +0 -0
  196. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/4752-554a3db270186ce3.js +0 -0
  197. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/5512-7cc62049bbe60e11.js +0 -0
  198. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/7023-e8de2bded4df6539.js +0 -0
  199. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/7592-a09c39a38e60634b.js +0 -0
  200. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/8423-1dda16bc56236523.js +0 -0
  201. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/94ca1967.5584df65931cfe83.js +0 -0
  202. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/964ecbae.ea4eab2a3a835ffe.js +0 -0
  203. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/app/_not-found/page-cfba071f5a657256.js +0 -0
  204. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/app/automations/layout-f1050c1f20a3af67.js +0 -0
  205. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/app/search/layout-cae84c87073877f0.js +0 -0
  206. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/app/settings/layout-fe8a2f65ccafd142.js +0 -0
  207. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/d3ac728e-a9e3522eef9b6b28.js +0 -0
  208. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/fd9d1056-2e6c8140e79afc3b.js +0 -0
  209. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js +0 -0
  210. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/main-1ea5c2e0fdef4626.js +0 -0
  211. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/main-app-6d6ee3495efe03d4.js +0 -0
  212. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/pages/_app-f870474a17b7f2fd.js +0 -0
  213. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js +0 -0
  214. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js +0 -0
  215. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/css/1f293605f2871853.css +0 -0
  216. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/css/3c34171b174cc381.css +0 -0
  217. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/css/3cf13271869a4aeb.css +0 -0
  218. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css +0 -0
  219. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/css/5a400c87d295e68a.css +0 -0
  220. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  221. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  222. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  223. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  224. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  225. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  226. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  227. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  228. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  229. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  230. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  231. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  232. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  233. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  234. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  235. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  236. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  237. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
  238. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  239. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  240. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  241. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  242. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  243. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
  244. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  245. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  246. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  247. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  248. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  249. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  250. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
  251. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
  252. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  253. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  254. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  255. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  256. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  257. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  258. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  259. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  260. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  261. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  262. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  263. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
  264. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  265. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  266. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  267. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  268. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
  269. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  270. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  271. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  272. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  273. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  274. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  275. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  276. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  277. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  278. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  279. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  280. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/e098aaaecc9cfbb2-s.p.woff2 +0 -0
  281. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp +0 -0
  282. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp +0 -0
  283. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/globe.98e105ca.webp +0 -0
  284. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp +0 -0
  285. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/agents.svg +0 -0
  286. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern.ico +0 -0
  287. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern_1200x1200.png +0 -0
  288. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern_128x128.png +0 -0
  289. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern_256x256.png +0 -0
  290. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern_512x512.png +0 -0
  291. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/icons/khoj_lantern_logomarktype_1200x630.png +0 -0
  292. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/desktop-browse-draw-sample.png +0 -0
  293. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/desktop-plain-chat-sample.png +0 -0
  294. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png +0 -0
  295. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png +0 -0
  296. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png +0 -0
  297. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png +0 -0
  298. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/automation.svg +0 -0
  299. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/chat.svg +0 -0
  300. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/close.svg +0 -0
  301. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/copy-button-success.svg +0 -0
  302. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/copy-button.svg +0 -0
  303. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/khoj.webmanifest +0 -0
  304. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/logo.svg +0 -0
  305. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/send.svg +0 -0
  306. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/share.svg +0 -0
  307. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/thumbs-down.svg +0 -0
  308. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/compiled/thumbs-up.svg +0 -0
  309. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/email/feedback.html +0 -0
  310. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/email/magic_link.html +0 -0
  311. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/email/task.html +0 -0
  312. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/email/welcome.html +0 -0
  313. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/.well-known/assetlinks.json +0 -0
  314. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/agents.svg +0 -0
  315. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/automation.svg +0 -0
  316. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/chat.svg +0 -0
  317. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/github.svg +0 -0
  318. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/khoj-logo-sideways-200.png +0 -0
  319. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/khoj-logo-sideways-500.png +0 -0
  320. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/khoj-logo-sideways.svg +0 -0
  321. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/khoj.svg +0 -0
  322. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/logotype.svg +0 -0
  323. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/search.svg +0 -0
  324. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/icons/sync.svg +0 -0
  325. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/khoj.css +0 -0
  326. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/assets/utils.js +0 -0
  327. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/base_config.html +0 -0
  328. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/content_source_github_input.html +0 -0
  329. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/login.html +0 -0
  330. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/interface/web/utils.html +0 -0
  331. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/main.py +0 -0
  332. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/manage.py +0 -0
  333. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/__init__.py +0 -0
  334. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_offline_chat_default_model.py +0 -0
  335. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_offline_chat_default_model_2.py +0 -0
  336. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_offline_chat_schema.py +0 -0
  337. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_offline_model.py +0 -0
  338. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_processor_config_openai.py +0 -0
  339. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_server_pg.py +0 -0
  340. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/migrations/migrate_version.py +0 -0
  341. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/__init__.py +0 -0
  342. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/__init__.py +0 -0
  343. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/docx/__init__.py +0 -0
  344. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/docx/docx_to_entries.py +0 -0
  345. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/github/__init__.py +0 -0
  346. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/github/github_to_entries.py +0 -0
  347. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/images/__init__.py +0 -0
  348. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/images/image_to_entries.py +0 -0
  349. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/markdown/__init__.py +0 -0
  350. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/markdown/markdown_to_entries.py +0 -0
  351. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/notion/notion_to_entries.py +0 -0
  352. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/org_mode/__init__.py +0 -0
  353. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/org_mode/org_to_entries.py +0 -0
  354. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/org_mode/orgnode.py +0 -0
  355. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/pdf/__init__.py +0 -0
  356. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/pdf/pdf_to_entries.py +0 -0
  357. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/plaintext/__init__.py +0 -0
  358. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/plaintext/plaintext_to_entries.py +0 -0
  359. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/content/text_to_entries.py +0 -0
  360. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/__init__.py +0 -0
  361. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/anthropic/__init__.py +0 -0
  362. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/anthropic/utils.py +0 -0
  363. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/google/__init__.py +0 -0
  364. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/google/utils.py +0 -0
  365. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/offline/__init__.py +0 -0
  366. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/offline/utils.py +0 -0
  367. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/offline/whisper.py +0 -0
  368. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/openai/__init__.py +0 -0
  369. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/openai/utils.py +0 -0
  370. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/conversation/openai/whisper.py +0 -0
  371. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/embeddings.py +0 -0
  372. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/speech/__init__.py +0 -0
  373. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/speech/text_to_speech.py +0 -0
  374. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/tools/__init__.py +0 -0
  375. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/tools/online_search.py +0 -0
  376. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/processor/tools/run_code.py +0 -0
  377. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/__init__.py +0 -0
  378. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api.py +0 -0
  379. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_agents.py +0 -0
  380. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_content.py +0 -0
  381. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_model.py +0 -0
  382. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_phone.py +0 -0
  383. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/api_subscription.py +0 -0
  384. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/auth.py +0 -0
  385. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/email.py +0 -0
  386. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/notion.py +0 -0
  387. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/research.py +0 -0
  388. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/storage.py +0 -0
  389. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/twilio.py +0 -0
  390. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/routers/web_client.py +0 -0
  391. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_filter/__init__.py +0 -0
  392. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_filter/base_filter.py +0 -0
  393. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_filter/date_filter.py +0 -0
  394. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_filter/file_filter.py +0 -0
  395. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_filter/word_filter.py +0 -0
  396. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_type/__init__.py +0 -0
  397. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/search_type/text_search.py +0 -0
  398. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/__init__.py +0 -0
  399. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/cli.py +0 -0
  400. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/config.py +0 -0
  401. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/constants.py +0 -0
  402. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/fs_syncer.py +0 -0
  403. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/helpers.py +0 -0
  404. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/initialization.py +0 -0
  405. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/jsonl.py +0 -0
  406. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/models.py +0 -0
  407. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/rawconfig.py +0 -0
  408. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/state.py +0 -0
  409. {khoj-1.30.11.dev13 → khoj-1.30.11.dev46}/src/khoj/utils/yaml.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: khoj
3
- Version: 1.30.11.dev13
3
+ Version: 1.30.11.dev46
4
4
  Summary: Your Second Brain
5
5
  Project-URL: Homepage, https://khoj.dev
6
6
  Project-URL: Documentation, https://docs.khoj.dev
@@ -31,6 +31,7 @@ Requires-Dist: dateparser>=1.1.1
31
31
  Requires-Dist: defusedxml==0.7.1
32
32
  Requires-Dist: django-apscheduler==0.6.2
33
33
  Requires-Dist: django-phonenumber-field==7.3.0
34
+ Requires-Dist: django-unfold==0.42.0
34
35
  Requires-Dist: django==5.0.9
35
36
  Requires-Dist: docx2txt==0.8
36
37
  Requires-Dist: einops==0.8.0
@@ -64,6 +64,7 @@ dependencies = [
64
64
  "anyio == 3.7.1",
65
65
  "pymupdf == 1.24.11",
66
66
  "django == 5.0.9",
67
+ "django-unfold == 0.42.0",
67
68
  "authlib == 1.2.1",
68
69
  "llama-cpp-python == 0.2.88",
69
70
  "itsdangerous == 2.1.2",
@@ -13,6 +13,8 @@ https://docs.djangoproject.com/en/4.2/ref/settings/
13
13
  import os
14
14
  from pathlib import Path
15
15
 
16
+ from django.templatetags.static import static
17
+
16
18
  from khoj.utils.helpers import in_debug_mode, is_env_var_true
17
19
 
18
20
  # Build paths inside the project like this: BASE_DIR / 'subdir'.
@@ -72,6 +74,7 @@ INSTALLED_APPS = [
72
74
  "django.contrib.auth",
73
75
  "django.contrib.contenttypes",
74
76
  "khoj.database.apps.DatabaseConfig",
77
+ "unfold",
75
78
  "django.contrib.admin",
76
79
  "django.contrib.sessions",
77
80
  "django.contrib.messages",
@@ -195,3 +198,21 @@ APSCHEDULER_DATETIME_FORMAT = "N j, Y, f:s a"
195
198
  # that supports multiple background worker processes instead (e.g. Dramatiq, Celery, Django-RQ,
196
199
  # etc. See: https://djangopackages.org/grids/g/workers-queues-tasks/ for popular options).
197
200
  APSCHEDULER_RUN_NOW_TIMEOUT = 240 # Seconds
201
+
202
+ UNFOLD = {
203
+ "SITE_TITLE": "Khoj Admin Panel",
204
+ "SITE_HEADER": "Khoj Admin Panel",
205
+ "SITE_URL": "/",
206
+ "SITE_ICON": {
207
+ "light": lambda request: static("assets/icons/khoj_lantern_128x128.png"),
208
+ "dark": lambda request: static("assets/icons/khoj_lantern_128x128_dark.png"),
209
+ },
210
+ "SITE_FAVICONS": [
211
+ {
212
+ "rel": "icon",
213
+ "sizes": "32x32",
214
+ "type": "image/svg+xml",
215
+ "href": lambda request: static("assets/icons/khoj_lantern.svg"),
216
+ },
217
+ ],
218
+ }
@@ -4,11 +4,14 @@ from datetime import date, datetime, timedelta, timezone
4
4
 
5
5
  from apscheduler.job import Job
6
6
  from django.contrib import admin, messages
7
- from django.contrib.auth.admin import UserAdmin
7
+ from django.contrib.auth.admin import GroupAdmin as BaseGroupAdmin
8
+ from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
9
+ from django.contrib.auth.models import Group
8
10
  from django.http import HttpResponse
9
- from django_apscheduler.admin import DjangoJobAdmin
11
+ from django_apscheduler.admin import DjangoJobAdmin, DjangoJobExecutionAdmin
10
12
  from django_apscheduler.jobstores import DjangoJobStore
11
- from django_apscheduler.models import DjangoJob
13
+ from django_apscheduler.models import DjangoJob, DjangoJobExecution
14
+ from unfold import admin as unfold_admin
12
15
 
13
16
  from khoj.database.models import (
14
17
  Agent,
@@ -35,10 +38,8 @@ from khoj.database.models import (
35
38
  )
36
39
  from khoj.utils.helpers import ImageIntentType
37
40
 
38
- admin.site.unregister(DjangoJob)
39
-
40
41
 
41
- class KhojDjangoJobAdmin(DjangoJobAdmin):
42
+ class KhojDjangoJobAdmin(DjangoJobAdmin, unfold_admin.ModelAdmin):
42
43
  list_display = (
43
44
  "id",
44
45
  "next_run_time",
@@ -62,10 +63,25 @@ class KhojDjangoJobAdmin(DjangoJobAdmin):
62
63
  return queryset, use_distinct
63
64
 
64
65
 
66
+ class KhojDjangoJobExecutionAdmin(DjangoJobExecutionAdmin, unfold_admin.ModelAdmin):
67
+ pass
68
+
69
+
70
+ admin.site.unregister(DjangoJob)
65
71
  admin.site.register(DjangoJob, KhojDjangoJobAdmin)
72
+ admin.site.unregister(DjangoJobExecution)
73
+ admin.site.register(DjangoJobExecution, KhojDjangoJobExecutionAdmin)
66
74
 
67
75
 
68
- class KhojUserAdmin(UserAdmin):
76
+ class GroupAdmin(BaseGroupAdmin, unfold_admin.ModelAdmin):
77
+ pass
78
+
79
+
80
+ class UserAdmin(BaseUserAdmin, unfold_admin.ModelAdmin):
81
+ pass
82
+
83
+
84
+ class KhojUserAdmin(UserAdmin, unfold_admin.ModelAdmin):
69
85
  class DateJoinedAfterFilter(admin.SimpleListFilter):
70
86
  title = "Joined after"
71
87
  parameter_name = "joined_after"
@@ -137,21 +153,22 @@ class KhojUserAdmin(UserAdmin):
137
153
  get_email_login_url.short_description = "Get email login URL" # type: ignore
138
154
 
139
155
 
156
+ admin.site.unregister(Group)
140
157
  admin.site.register(KhojUser, KhojUserAdmin)
141
158
 
142
- admin.site.register(ProcessLock)
143
- admin.site.register(SpeechToTextModelOptions)
144
- admin.site.register(ReflectiveQuestion)
145
- admin.site.register(ClientApplication)
146
- admin.site.register(GithubConfig)
147
- admin.site.register(NotionConfig)
148
- admin.site.register(UserVoiceModelConfig)
149
- admin.site.register(VoiceModelOption)
150
- admin.site.register(UserRequests)
159
+ admin.site.register(ProcessLock, unfold_admin.ModelAdmin)
160
+ admin.site.register(SpeechToTextModelOptions, unfold_admin.ModelAdmin)
161
+ admin.site.register(ReflectiveQuestion, unfold_admin.ModelAdmin)
162
+ admin.site.register(ClientApplication, unfold_admin.ModelAdmin)
163
+ admin.site.register(GithubConfig, unfold_admin.ModelAdmin)
164
+ admin.site.register(NotionConfig, unfold_admin.ModelAdmin)
165
+ admin.site.register(UserVoiceModelConfig, unfold_admin.ModelAdmin)
166
+ admin.site.register(VoiceModelOption, unfold_admin.ModelAdmin)
167
+ admin.site.register(UserRequests, unfold_admin.ModelAdmin)
151
168
 
152
169
 
153
170
  @admin.register(Agent)
154
- class AgentAdmin(admin.ModelAdmin):
171
+ class AgentAdmin(unfold_admin.ModelAdmin):
155
172
  list_display = (
156
173
  "id",
157
174
  "name",
@@ -161,7 +178,7 @@ class AgentAdmin(admin.ModelAdmin):
161
178
 
162
179
 
163
180
  @admin.register(Entry)
164
- class EntryAdmin(admin.ModelAdmin):
181
+ class EntryAdmin(unfold_admin.ModelAdmin):
165
182
  list_display = (
166
183
  "id",
167
184
  "created_at",
@@ -183,7 +200,7 @@ class EntryAdmin(admin.ModelAdmin):
183
200
 
184
201
 
185
202
  @admin.register(Subscription)
186
- class KhojUserSubscription(admin.ModelAdmin):
203
+ class KhojUserSubscription(unfold_admin.ModelAdmin):
187
204
  list_display = (
188
205
  "id",
189
206
  "user",
@@ -195,7 +212,7 @@ class KhojUserSubscription(admin.ModelAdmin):
195
212
 
196
213
 
197
214
  @admin.register(ChatModelOptions)
198
- class ChatModelOptionsAdmin(admin.ModelAdmin):
215
+ class ChatModelOptionsAdmin(unfold_admin.ModelAdmin):
199
216
  list_display = (
200
217
  "id",
201
218
  "chat_model",
@@ -206,7 +223,7 @@ class ChatModelOptionsAdmin(admin.ModelAdmin):
206
223
 
207
224
 
208
225
  @admin.register(TextToImageModelConfig)
209
- class TextToImageModelOptionsAdmin(admin.ModelAdmin):
226
+ class TextToImageModelOptionsAdmin(unfold_admin.ModelAdmin):
210
227
  list_display = (
211
228
  "id",
212
229
  "model_name",
@@ -216,7 +233,7 @@ class TextToImageModelOptionsAdmin(admin.ModelAdmin):
216
233
 
217
234
 
218
235
  @admin.register(OpenAIProcessorConversationConfig)
219
- class OpenAIProcessorConversationConfigAdmin(admin.ModelAdmin):
236
+ class OpenAIProcessorConversationConfigAdmin(unfold_admin.ModelAdmin):
220
237
  list_display = (
221
238
  "id",
222
239
  "name",
@@ -227,7 +244,7 @@ class OpenAIProcessorConversationConfigAdmin(admin.ModelAdmin):
227
244
 
228
245
 
229
246
  @admin.register(SearchModelConfig)
230
- class SearchModelConfigAdmin(admin.ModelAdmin):
247
+ class SearchModelConfigAdmin(unfold_admin.ModelAdmin):
231
248
  list_display = (
232
249
  "id",
233
250
  "name",
@@ -238,7 +255,7 @@ class SearchModelConfigAdmin(admin.ModelAdmin):
238
255
 
239
256
 
240
257
  @admin.register(ServerChatSettings)
241
- class ServerChatSettingsAdmin(admin.ModelAdmin):
258
+ class ServerChatSettingsAdmin(unfold_admin.ModelAdmin):
242
259
  list_display = (
243
260
  "chat_default",
244
261
  "chat_advanced",
@@ -247,7 +264,7 @@ class ServerChatSettingsAdmin(admin.ModelAdmin):
247
264
 
248
265
 
249
266
  @admin.register(WebScraper)
250
- class WebScraperAdmin(admin.ModelAdmin):
267
+ class WebScraperAdmin(unfold_admin.ModelAdmin):
251
268
  list_display = (
252
269
  "priority",
253
270
  "name",
@@ -261,7 +278,7 @@ class WebScraperAdmin(admin.ModelAdmin):
261
278
 
262
279
 
263
280
  @admin.register(Conversation)
264
- class ConversationAdmin(admin.ModelAdmin):
281
+ class ConversationAdmin(unfold_admin.ModelAdmin):
265
282
  list_display = (
266
283
  "id",
267
284
  "user",
@@ -286,17 +303,10 @@ class ConversationAdmin(admin.ModelAdmin):
286
303
  modified_log = conversation.conversation_log
287
304
  chat_log = modified_log.get("chat", [])
288
305
  for idx, log in enumerate(chat_log):
289
- if (
290
- log["by"] == "khoj"
291
- and log["intent"]
292
- and log["intent"]["type"]
293
- and (
294
- log["intent"]["type"] == ImageIntentType.TEXT_TO_IMAGE.value
295
- or log["intent"]["type"] == ImageIntentType.TEXT_TO_IMAGE_V3.value
296
- )
297
- ):
298
- log["message"] = "inline image redacted for space"
306
+ if log["by"] == "khoj" and log["images"]:
307
+ log["images"] = ["inline image redacted for space"]
299
308
  chat_log[idx] = log
309
+
300
310
  modified_log["chat"] = chat_log
301
311
 
302
312
  writer.writerow(
@@ -367,7 +377,7 @@ class ConversationAdmin(admin.ModelAdmin):
367
377
 
368
378
 
369
379
  @admin.register(UserConversationConfig)
370
- class UserConversationConfigAdmin(admin.ModelAdmin):
380
+ class UserConversationConfigAdmin(unfold_admin.ModelAdmin):
371
381
  list_display = (
372
382
  "id",
373
383
  "get_user_email",
@@ -0,0 +1,85 @@
1
+ # Made manually by sabaimran for use by Django 5.0.9 on 2024-12-01 16:59
2
+
3
+ from django.db import migrations, models
4
+
5
+ # This script was written alongside when Pydantic validation was added to the Conversation conversation_log field.
6
+
7
+
8
+ def migrate_generated_assets(apps, schema_editor):
9
+ Conversation = apps.get_model("database", "Conversation")
10
+
11
+ # Process conversations in chunks
12
+ for conversation in Conversation.objects.iterator():
13
+ try:
14
+ meta_log = conversation.conversation_log
15
+ modified = False
16
+
17
+ for chat in meta_log.get("chat", []):
18
+ intent_type = chat.get("intent", {}).get("type")
19
+
20
+ if intent_type and chat["by"] == "khoj":
21
+ if intent_type and "text-to-image" in intent_type:
22
+ # Migrate the generated image to the new format
23
+ chat["images"] = [chat.get("message")]
24
+ chat["message"] = chat["intent"]["inferred-queries"][0]
25
+ modified = True
26
+
27
+ if intent_type and "excalidraw" in intent_type:
28
+ # Migrate the generated excalidraw to the new format
29
+ chat["excalidrawDiagram"] = chat.get("message")
30
+ chat["message"] = chat["intent"]["inferred-queries"][0]
31
+ modified = True
32
+
33
+ # Only save if changes were made
34
+ if modified:
35
+ conversation.conversation_log = meta_log
36
+ conversation.save()
37
+
38
+ except Exception as e:
39
+ print(f"Error processing conversation {conversation.id}: {str(e)}")
40
+ continue
41
+
42
+
43
+ def reverse_migration(apps, schema_editor):
44
+ Conversation = apps.get_model("database", "Conversation")
45
+
46
+ # Process conversations in chunks
47
+ for conversation in Conversation.objects.iterator():
48
+ try:
49
+ meta_log = conversation.conversation_log
50
+ modified = False
51
+
52
+ for chat in meta_log.get("chat", []):
53
+ intent_type = chat.get("intent", {}).get("type")
54
+
55
+ if intent_type and chat["by"] == "khoj":
56
+ if intent_type and "text-to-image" in intent_type:
57
+ # Migrate the generated image back to the old format
58
+ chat["message"] = chat.get("images", [])[0]
59
+ chat.pop("images", None)
60
+ modified = True
61
+
62
+ if intent_type and "excalidraw" in intent_type:
63
+ # Migrate the generated excalidraw back to the old format
64
+ chat["message"] = chat.get("excalidrawDiagram")
65
+ chat.pop("excalidrawDiagram", None)
66
+ modified = True
67
+
68
+ # Only save if changes were made
69
+ if modified:
70
+ conversation.conversation_log = meta_log
71
+ conversation.save()
72
+
73
+ except Exception as e:
74
+ print(f"Error processing conversation {conversation.id}: {str(e)}")
75
+ continue
76
+
77
+
78
+ class Migration(migrations.Migration):
79
+ dependencies = [
80
+ ("database", "0074_alter_conversation_title"),
81
+ ]
82
+
83
+ operations = [
84
+ migrations.RunPython(migrate_generated_assets, reverse_migration),
85
+ ]