alita-sdk 0.3.423__tar.gz → 0.3.458__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.

Potentially problematic release.


This version of alita-sdk might be problematic. Click here for more details.

Files changed (379) hide show
  1. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/PKG-INFO +2 -1
  2. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/client.py +45 -9
  3. alita_sdk-0.3.458/alita_sdk/runtime/clients/mcp_discovery.py +342 -0
  4. alita_sdk-0.3.458/alita_sdk/runtime/clients/mcp_manager.py +262 -0
  5. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/assistant.py +10 -2
  6. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/constants.py +1 -1
  7. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/langraph_agent.py +61 -16
  8. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/utils.py +19 -3
  9. alita_sdk-0.3.458/alita_sdk/runtime/models/mcp_models.py +61 -0
  10. alita_sdk-0.3.458/alita_sdk/runtime/toolkits/__init__.py +24 -0
  11. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/artifact.py +5 -6
  12. alita_sdk-0.3.458/alita_sdk/runtime/toolkits/mcp.py +895 -0
  13. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/tools.py +62 -3
  14. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/function.py +2 -1
  15. alita_sdk-0.3.458/alita_sdk/runtime/tools/mcp_inspect_tool.py +284 -0
  16. alita_sdk-0.3.458/alita_sdk/runtime/tools/mcp_remote_tool.py +166 -0
  17. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/mcp_server_tool.py +3 -1
  18. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/vectorstore_base.py +17 -2
  19. alita_sdk-0.3.458/alita_sdk/runtime/utils/mcp_oauth.py +164 -0
  20. alita_sdk-0.3.458/alita_sdk/runtime/utils/mcp_sse_client.py +405 -0
  21. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/streamlit.py +34 -3
  22. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/toolkit_utils.py +14 -4
  23. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/__init__.py +5 -0
  24. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/repos/__init__.py +1 -0
  25. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/test_plan/__init__.py +1 -1
  26. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/wiki/__init__.py +1 -5
  27. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/work_item/__init__.py +1 -5
  28. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/base_indexer_toolkit.py +10 -6
  29. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/bitbucket/__init__.py +1 -0
  30. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/sematic/proposal_chunker.py +1 -1
  31. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code/sonar/__init__.py +1 -1
  32. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/confluence/__init__.py +2 -2
  33. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/__init__.py +2 -2
  34. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab/__init__.py +2 -1
  35. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab/api_wrapper.py +5 -0
  36. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab_org/__init__.py +1 -2
  37. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google_places/__init__.py +2 -1
  38. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/jira/__init__.py +1 -0
  39. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/memory/__init__.py +1 -1
  40. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/__init__.py +1 -1
  41. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/postman/__init__.py +2 -1
  42. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pptx/__init__.py +2 -2
  43. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/qtest/__init__.py +3 -3
  44. alita_sdk-0.3.458/alita_sdk/tools/qtest/api_wrapper.py +2081 -0
  45. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/rally/__init__.py +1 -2
  46. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/report_portal/__init__.py +1 -0
  47. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/salesforce/__init__.py +1 -0
  48. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/servicenow/__init__.py +2 -3
  49. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sharepoint/__init__.py +1 -0
  50. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sharepoint/api_wrapper.py +22 -2
  51. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sharepoint/authorization_helper.py +17 -1
  52. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/slack/__init__.py +1 -0
  53. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sql/__init__.py +2 -1
  54. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/testio/__init__.py +1 -0
  55. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/testrail/__init__.py +1 -3
  56. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/xray/__init__.py +2 -1
  57. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr/__init__.py +2 -1
  58. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_enterprise/__init__.py +1 -0
  59. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_essential/__init__.py +1 -0
  60. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_scale/__init__.py +1 -0
  61. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_squad/__init__.py +1 -0
  62. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk.egg-info/PKG-INFO +2 -1
  63. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk.egg-info/SOURCES.txt +8 -0
  64. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk.egg-info/requires.txt +1 -0
  65. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/pyproject.toml +2 -2
  66. alita_sdk-0.3.423/alita_sdk/tools/qtest/api_wrapper.py +0 -759
  67. alita_sdk-0.3.423/alita_sdk/tools/vector_adapters/__init__.py +0 -0
  68. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/LICENSE +0 -0
  69. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/README.md +0 -0
  70. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/__init__.py +0 -0
  71. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/community/__init__.py +0 -0
  72. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/community/utils.py +0 -0
  73. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/__init__.py +0 -0
  74. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/ado.py +0 -0
  75. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/azure_search.py +0 -0
  76. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/bigquery.py +0 -0
  77. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/bitbucket.py +0 -0
  78. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/browser.py +0 -0
  79. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/carrier.py +0 -0
  80. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/confluence.py +0 -0
  81. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/delta_lake.py +0 -0
  82. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/embedding.py +0 -0
  83. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/figma.py +0 -0
  84. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/github.py +0 -0
  85. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/gitlab.py +0 -0
  86. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/google_places.py +0 -0
  87. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/jira.py +0 -0
  88. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/pgvector.py +0 -0
  89. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/postman.py +0 -0
  90. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/qtest.py +0 -0
  91. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/rally.py +0 -0
  92. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/report_portal.py +0 -0
  93. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/salesforce.py +0 -0
  94. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/service_now.py +0 -0
  95. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/sharepoint.py +0 -0
  96. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/slack.py +0 -0
  97. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/sonar.py +0 -0
  98. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/sql.py +0 -0
  99. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/testio.py +0 -0
  100. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/testrail.py +0 -0
  101. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/xray.py +0 -0
  102. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/zephyr.py +0 -0
  103. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/zephyr_enterprise.py +0 -0
  104. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/configurations/zephyr_essential.py +0 -0
  105. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/__init__.py +0 -0
  106. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/__init__.py +0 -0
  107. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/artifact.py +0 -0
  108. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/datasource.py +0 -0
  109. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/prompt.py +0 -0
  110. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/clients/sandbox_client.py +0 -0
  111. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/__init__.py +0 -0
  112. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/agents/__init__.py +0 -0
  113. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/agents/xml_chat.py +0 -0
  114. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/chat_message_template.py +0 -0
  115. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaBDDScenariosLoader.py +0 -0
  116. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaCSVLoader.py +0 -0
  117. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaConfluenceLoader.py +0 -0
  118. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaDirectoryLoader.py +0 -0
  119. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaDocxMammothLoader.py +0 -0
  120. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaExcelLoader.py +0 -0
  121. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaGitRepoLoader.py +0 -0
  122. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaImageLoader.py +0 -0
  123. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaJSONLoader.py +0 -0
  124. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaJiraLoader.py +0 -0
  125. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaMarkdownLoader.py +0 -0
  126. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaPDFLoader.py +0 -0
  127. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaPowerPointLoader.py +0 -0
  128. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaPythonLoader.py +0 -0
  129. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaQtestLoader.py +0 -0
  130. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaTableLoader.py +0 -0
  131. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/AlitaTextLoader.py +0 -0
  132. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/ImageParser.py +0 -0
  133. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/__init__.py +0 -0
  134. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/constants.py +0 -0
  135. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/document_loaders/utils.py +0 -0
  136. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/indexer.py +0 -0
  137. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/interfaces/__init__.py +0 -0
  138. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/interfaces/kwextractor.py +0 -0
  139. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/interfaces/llm_processor.py +0 -0
  140. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/interfaces/loaders.py +0 -0
  141. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/interfaces/splitters.py +0 -0
  142. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/mixedAgentParser.py +0 -0
  143. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/mixedAgentRenderes.py +0 -0
  144. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/retrievers/AlitaRetriever.py +0 -0
  145. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/retrievers/VectorstoreRetriever.py +0 -0
  146. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/retrievers/__init__.py +0 -0
  147. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/store_manager.py +0 -0
  148. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/__init__.py +0 -0
  149. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/bdd_parser/__init__.py +0 -0
  150. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_exceptions.py +0 -0
  151. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/bdd_parser/bdd_parser.py +0 -0
  152. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/bdd_parser/feature_types.py +0 -0
  153. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/bdd_parser/parser.py +0 -0
  154. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/git.py +0 -0
  155. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/log.py +0 -0
  156. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/quota.py +0 -0
  157. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/state.py +0 -0
  158. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/utils.py +0 -0
  159. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/langchain/tools/vector.py +0 -0
  160. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/llms/__init__.py +0 -0
  161. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/llms/preloaded.py +0 -0
  162. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/application.py +0 -0
  163. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/configurations.py +0 -0
  164. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/datasource.py +0 -0
  165. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/prompt.py +0 -0
  166. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/subgraph.py +0 -0
  167. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/toolkits/vectorstore.py +0 -0
  168. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/__init__.py +0 -0
  169. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/agent.py +0 -0
  170. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/application.py +0 -0
  171. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/artifact.py +0 -0
  172. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/datasource.py +0 -0
  173. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/echo.py +0 -0
  174. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/graph.py +0 -0
  175. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/image_generation.py +0 -0
  176. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/indexer_tool.py +0 -0
  177. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/llm.py +0 -0
  178. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/loop.py +0 -0
  179. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/loop_output.py +0 -0
  180. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/pgvector_search.py +0 -0
  181. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/prompt.py +0 -0
  182. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/router.py +0 -0
  183. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/sandbox.py +0 -0
  184. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/tool.py +0 -0
  185. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/tools/vectorstore.py +0 -0
  186. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/AlitaCallback.py +0 -0
  187. {alita_sdk-0.3.423/alita_sdk/runtime/toolkits → alita_sdk-0.3.458/alita_sdk/runtime/utils}/__init__.py +0 -0
  188. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/constants.py +0 -0
  189. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/evaluate.py +0 -0
  190. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/logging.py +0 -0
  191. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/save_dataframe.py +0 -0
  192. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/toolkit_runtime.py +0 -0
  193. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/runtime/utils/utils.py +0 -0
  194. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/__init__.py +0 -0
  195. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/repos/repos_wrapper.py +0 -0
  196. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/test_plan/test_plan_wrapper.py +0 -0
  197. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/utils.py +0 -0
  198. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/wiki/ado_wrapper.py +0 -0
  199. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ado/work_item/ado_wrapper.py +0 -0
  200. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/advanced_jira_mining/__init__.py +0 -0
  201. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/advanced_jira_mining/data_mining_wrapper.py +0 -0
  202. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/aws/__init__.py +0 -0
  203. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/aws/delta_lake/__init__.py +0 -0
  204. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/aws/delta_lake/api_wrapper.py +0 -0
  205. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/aws/delta_lake/schemas.py +0 -0
  206. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/aws/delta_lake/tool.py +0 -0
  207. {alita_sdk-0.3.423/alita_sdk/runtime/utils → alita_sdk-0.3.458/alita_sdk/tools/azure_ai}/__init__.py +0 -0
  208. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/azure_ai/search/__init__.py +0 -0
  209. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/azure_ai/search/api_wrapper.py +0 -0
  210. {alita_sdk-0.3.423/alita_sdk/tools/azure_ai → alita_sdk-0.3.458/alita_sdk/tools/base}/__init__.py +0 -0
  211. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/base/tool.py +0 -0
  212. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/bitbucket/api_wrapper.py +0 -0
  213. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/bitbucket/bitbucket_constants.py +0 -0
  214. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/bitbucket/cloud_api_wrapper.py +0 -0
  215. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/__init__.py +0 -0
  216. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/crawler.py +0 -0
  217. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/duck_duck_go_search.py +0 -0
  218. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/google_search_rag.py +0 -0
  219. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/utils.py +0 -0
  220. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/browser/wiki.py +0 -0
  221. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/__init__.py +0 -0
  222. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/api_wrapper.py +0 -0
  223. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/backend_reports_tool.py +0 -0
  224. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/backend_tests_tool.py +0 -0
  225. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/cancel_ui_test_tool.py +0 -0
  226. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/carrier_sdk.py +0 -0
  227. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/create_ui_excel_report_tool.py +0 -0
  228. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/create_ui_test_tool.py +0 -0
  229. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/excel_reporter.py +0 -0
  230. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/lighthouse_excel_reporter.py +0 -0
  231. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/run_ui_test_tool.py +0 -0
  232. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/tickets_tool.py +0 -0
  233. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/tools.py +0 -0
  234. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/ui_reports_tool.py +0 -0
  235. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/update_ui_test_schedule_tool.py +0 -0
  236. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/carrier/utils.py +0 -0
  237. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/__init__.py +0 -0
  238. {alita_sdk-0.3.423/alita_sdk/tools/base → alita_sdk-0.3.458/alita_sdk/tools/chunkers/code}/__init__.py +0 -0
  239. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/codeparser.py +0 -0
  240. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/constants.py +0 -0
  241. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/__init__.py +0 -0
  242. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter.py +0 -0
  243. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_c.py +0 -0
  244. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cpp.py +0 -0
  245. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_cs.py +0 -0
  246. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_go.py +0 -0
  247. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_hs.py +0 -0
  248. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_java.py +0 -0
  249. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_js.py +0 -0
  250. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_kt.py +0 -0
  251. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_py.py +0 -0
  252. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rb.py +0 -0
  253. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_registry.py +0 -0
  254. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_rs.py +0 -0
  255. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/code/treesitter/treesitter_ts.py +0 -0
  256. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/models.py +0 -0
  257. {alita_sdk-0.3.423/alita_sdk/tools/chunkers/code → alita_sdk-0.3.458/alita_sdk/tools/chunkers/sematic}/__init__.py +0 -0
  258. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/sematic/base.py +0 -0
  259. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/sematic/json_chunker.py +0 -0
  260. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/sematic/markdown_chunker.py +0 -0
  261. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/sematic/statistical_chunker.py +0 -0
  262. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/chunkers/utils.py +0 -0
  263. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/__init__.py +0 -0
  264. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/aws/__init__.py +0 -0
  265. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/aws/api_wrapper.py +0 -0
  266. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/azure/__init__.py +0 -0
  267. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/azure/api_wrapper.py +0 -0
  268. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/gcp/__init__.py +0 -0
  269. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/gcp/api_wrapper.py +0 -0
  270. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/k8s/__init__.py +0 -0
  271. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/cloud/k8s/api_wrapper.py +0 -0
  272. {alita_sdk-0.3.423/alita_sdk/tools/chunkers/sematic → alita_sdk-0.3.458/alita_sdk/tools/code}/__init__.py +0 -0
  273. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code/linter/__init__.py +0 -0
  274. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code/linter/api_wrapper.py +0 -0
  275. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code/loaders/codesearcher.py +0 -0
  276. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code/sonar/api_wrapper.py +0 -0
  277. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/code_indexer_toolkit.py +0 -0
  278. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/confluence/api_wrapper.py +0 -0
  279. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/confluence/loader.py +0 -0
  280. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/confluence/utils.py +0 -0
  281. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/custom_open_api/__init__.py +0 -0
  282. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/custom_open_api/api_wrapper.py +0 -0
  283. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/elastic/__init__.py +0 -0
  284. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/elastic/api_wrapper.py +0 -0
  285. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/elitea_base.py +0 -0
  286. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/figma/__init__.py +0 -0
  287. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/figma/api_wrapper.py +0 -0
  288. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/api_wrapper.py +0 -0
  289. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/github_client.py +0 -0
  290. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/graphql_client_wrapper.py +0 -0
  291. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/schemas.py +0 -0
  292. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/tool.py +0 -0
  293. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/github/tool_prompts.py +0 -0
  294. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab/tools.py +0 -0
  295. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab/utils.py +0 -0
  296. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gitlab_org/api_wrapper.py +0 -0
  297. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gmail/__init__.py +0 -0
  298. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gmail/gmail_wrapper.py +0 -0
  299. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/gmail/utils.py +0 -0
  300. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google/__init__.py +0 -0
  301. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google/bigquery/__init__.py +0 -0
  302. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google/bigquery/api_wrapper.py +0 -0
  303. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google/bigquery/schemas.py +0 -0
  304. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google/bigquery/tool.py +0 -0
  305. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/google_places/api_wrapper.py +0 -0
  306. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/jira/api_wrapper.py +0 -0
  307. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/keycloak/__init__.py +0 -0
  308. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/keycloak/api_wrapper.py +0 -0
  309. {alita_sdk-0.3.423/alita_sdk/tools/code → alita_sdk-0.3.458/alita_sdk/tools/llm}/__init__.py +0 -0
  310. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/llm/img_utils.py +0 -0
  311. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/llm/llm_utils.py +0 -0
  312. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/localgit/__init__.py +0 -0
  313. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/localgit/local_git.py +0 -0
  314. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/localgit/tool.py +0 -0
  315. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/non_code_indexer_toolkit.py +0 -0
  316. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ocr/__init__.py +0 -0
  317. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ocr/api_wrapper.py +0 -0
  318. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/ocr/text_detection.py +0 -0
  319. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/openapi/__init__.py +0 -0
  320. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/api_wrapper.py +0 -0
  321. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/__init__.py +0 -0
  322. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/errors.py +0 -0
  323. {alita_sdk-0.3.423/alita_sdk/tools/llm → alita_sdk-0.3.458/alita_sdk/tools/pandas/dataframe/executor}/__init__.py +0 -0
  324. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/executor/code_environment.py +0 -0
  325. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/executor/code_executor.py +0 -0
  326. {alita_sdk-0.3.423/alita_sdk/tools/pandas/dataframe/executor → alita_sdk-0.3.458/alita_sdk/tools/pandas/dataframe/generator}/__init__.py +0 -0
  327. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/generator/base.py +0 -0
  328. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/generator/code_cleaning.py +0 -0
  329. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/generator/code_validator.py +0 -0
  330. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/prompts.py +0 -0
  331. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/serializer.py +0 -0
  332. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/dataframe/utils.py +0 -0
  333. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/statsmodels/__init__.py +0 -0
  334. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/statsmodels/base_stats.py +0 -0
  335. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/statsmodels/descriptive.py +0 -0
  336. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/statsmodels/hypothesis_testing.py +0 -0
  337. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pandas/statsmodels/regression.py +0 -0
  338. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/postman/api_wrapper.py +0 -0
  339. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/postman/postman_analysis.py +0 -0
  340. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/pptx/pptx_wrapper.py +0 -0
  341. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/qtest/tool.py +0 -0
  342. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/rally/api_wrapper.py +0 -0
  343. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/report_portal/api_wrapper.py +0 -0
  344. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/report_portal/report_portal_client.py +0 -0
  345. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/salesforce/api_wrapper.py +0 -0
  346. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/salesforce/model.py +0 -0
  347. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/servicenow/api_wrapper.py +0 -0
  348. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/servicenow/servicenow_client.py +0 -0
  349. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sharepoint/utils.py +0 -0
  350. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/slack/api_wrapper.py +0 -0
  351. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sql/api_wrapper.py +0 -0
  352. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/sql/models.py +0 -0
  353. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/testio/api_wrapper.py +0 -0
  354. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/testrail/api_wrapper.py +0 -0
  355. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/utils/__init__.py +0 -0
  356. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/utils/available_tools_decorator.py +0 -0
  357. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/utils/content_parser.py +0 -0
  358. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/vector_adapters/VectorStoreAdapter.py +0 -0
  359. {alita_sdk-0.3.423/alita_sdk/tools/pandas/dataframe/generator → alita_sdk-0.3.458/alita_sdk/tools/vector_adapters}/__init__.py +0 -0
  360. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/xray/api_wrapper.py +0 -0
  361. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/yagmail/__init__.py +0 -0
  362. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/yagmail/yagmail_wrapper.py +0 -0
  363. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr/Zephyr.py +0 -0
  364. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr/api_wrapper.py +0 -0
  365. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr/rest_client.py +0 -0
  366. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_enterprise/api_wrapper.py +0 -0
  367. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_enterprise/zephyr_enterprise.py +0 -0
  368. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_essential/api_wrapper.py +0 -0
  369. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_essential/client.py +0 -0
  370. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_scale/api_wrapper.py +0 -0
  371. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_squad/api_wrapper.py +0 -0
  372. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk/tools/zephyr_squad/zephyr_squad_cloud_client.py +0 -0
  373. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk.egg-info/dependency_links.txt +0 -0
  374. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/alita_sdk.egg-info/top_level.txt +0 -0
  375. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/setup.cfg +0 -0
  376. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/tests/test_ado_analysis.py +0 -0
  377. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/tests/test_github_analysis.py +0 -0
  378. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/tests/test_gitlab_analysis.py +0 -0
  379. {alita_sdk-0.3.423 → alita_sdk-0.3.458}/tests/test_jira_analysis.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alita_sdk
3
- Version: 0.3.423
3
+ Version: 0.3.458
4
4
  Summary: SDK for building langchain agents using resources from Alita
5
5
  Author-email: Artem Rozumenko <artyom.rozumenko@gmail.com>, Mikalai Biazruchka <mikalai_biazruchka@epam.com>, Roman Mitusov <roman_mitusov@epam.com>, Ivan Krakhmaliuk <lifedj27@gmail.com>, Artem Dubrovskiy <ad13box@gmail.com>
6
6
  License-Expression: Apache-2.0
@@ -24,6 +24,7 @@ Requires-Dist: fastapi==0.115.9
24
24
  Requires-Dist: httpcore==1.0.7
25
25
  Requires-Dist: urllib3>=2
26
26
  Requires-Dist: certifi==2024.8.30
27
+ Requires-Dist: aiohttp>=3.9.0
27
28
  Provides-Extra: runtime
28
29
  Requires-Dist: streamlit>=1.28.0; extra == "runtime"
29
30
  Requires-Dist: langchain_core<0.4.0,>=0.3.76; extra == "runtime"
@@ -303,7 +303,7 @@ class AlitaClient:
303
303
  app_type=None, memory=None, runtime='langchain',
304
304
  application_variables: Optional[dict] = None,
305
305
  version_details: Optional[dict] = None, store: Optional[BaseStore] = None,
306
- llm: Optional[ChatOpenAI] = None):
306
+ llm: Optional[ChatOpenAI] = None, mcp_tokens: Optional[dict] = None):
307
307
  if tools is None:
308
308
  tools = []
309
309
  if chat_history is None:
@@ -342,13 +342,16 @@ class AlitaClient:
342
342
  app_type = "react"
343
343
  elif app_type == 'autogen':
344
344
  app_type = "react"
345
+
346
+ # LangChainAssistant constructor calls get_tools() which may raise McpAuthorizationRequired
347
+ # The exception will propagate naturally to the indexer worker's outer handler
345
348
  if runtime == 'nonrunnable':
346
349
  return LangChainAssistant(self, data, llm, chat_history, app_type,
347
- tools=tools, memory=memory, store=store)
350
+ tools=tools, memory=memory, store=store, mcp_tokens=mcp_tokens)
348
351
  if runtime == 'langchain':
349
352
  return LangChainAssistant(self, data, llm,
350
353
  chat_history, app_type,
351
- tools=tools, memory=memory, store=store).runnable()
354
+ tools=tools, memory=memory, store=store, mcp_tokens=mcp_tokens).runnable()
352
355
  elif runtime == 'llama':
353
356
  raise NotImplementedError("LLama runtime is not supported")
354
357
 
@@ -568,14 +571,17 @@ class AlitaClient:
568
571
  def predict_agent(self, llm: ChatOpenAI, instructions: str = "You are a helpful assistant.",
569
572
  tools: Optional[list] = None, chat_history: Optional[List[Any]] = None,
570
573
  memory=None, runtime='langchain', variables: Optional[list] = None,
571
- store: Optional[BaseStore] = None, debug_mode: Optional[bool] = False):
574
+ store: Optional[BaseStore] = None, debug_mode: Optional[bool] = False,
575
+ mcp_tokens: Optional[dict] = None):
572
576
  """
573
577
  Create a predict-type agent with minimal configuration.
574
578
 
575
579
  Args:
576
580
  llm: The LLM to use
577
581
  instructions: System instructions for the agent
578
- tools: Optional list of tools to provide to the agent
582
+ tools: Optional list of tool configurations (not tool instances) to provide to the agent.
583
+ Tool configs will be processed through get_tools() to create tool instances.
584
+ Each tool config should have 'type', 'settings', etc.
579
585
  chat_history: Optional chat history
580
586
  memory: Optional memory/checkpointer
581
587
  runtime: Runtime type (default: 'langchain')
@@ -595,13 +601,27 @@ class AlitaClient:
595
601
 
596
602
  # Create a minimal data structure for predict agent
597
603
  # All LLM settings are taken from the passed client instance
604
+ # Note: 'tools' here are tool CONFIGURATIONS, not tool instances
605
+ # They will be converted to tool instances by LangChainAssistant via get_tools()
598
606
  agent_data = {
599
607
  'instructions': instructions,
600
- 'tools': tools, # Tools are handled separately in predict agents
608
+ 'tools': tools, # Tool configs that will be processed by get_tools()
601
609
  'variables': variables
602
610
  }
603
- return LangChainAssistant(self, agent_data, llm,
604
- chat_history, "predict", memory=memory, store=store, debug_mode=debug_mode).runnable()
611
+
612
+ # LangChainAssistant constructor calls get_tools() which may raise McpAuthorizationRequired
613
+ # The exception will propagate naturally to the indexer worker's outer handler
614
+ return LangChainAssistant(
615
+ self,
616
+ agent_data,
617
+ llm,
618
+ chat_history,
619
+ "predict",
620
+ memory=memory,
621
+ store=store,
622
+ debug_mode=debug_mode,
623
+ mcp_tokens=mcp_tokens
624
+ ).runnable()
605
625
 
606
626
  def test_toolkit_tool(self, toolkit_config: dict, tool_name: str, tool_params: dict = None,
607
627
  runtime_config: dict = None, llm_model: str = None,
@@ -742,7 +762,23 @@ class AlitaClient:
742
762
  }
743
763
 
744
764
  # Instantiate the toolkit with client and LLM support
745
- tools = instantiate_toolkit_with_client(toolkit_config, llm, self)
765
+ try:
766
+ tools = instantiate_toolkit_with_client(toolkit_config, llm, self)
767
+ except Exception as toolkit_error:
768
+ # Re-raise McpAuthorizationRequired to allow proper handling upstream
769
+ from ..utils.mcp_oauth import McpAuthorizationRequired
770
+ if isinstance(toolkit_error, McpAuthorizationRequired):
771
+ raise
772
+ # For other errors, return error response
773
+ return {
774
+ "success": False,
775
+ "error": f"Failed to instantiate toolkit '{toolkit_config.get('toolkit_name')}': {str(toolkit_error)}",
776
+ "tool_name": tool_name,
777
+ "toolkit_config": toolkit_config_parsed_json,
778
+ "llm_model": llm_model,
779
+ "events_dispatched": events_dispatched,
780
+ "execution_time_seconds": 0.0
781
+ }
746
782
 
747
783
  if not tools:
748
784
  return {
@@ -0,0 +1,342 @@
1
+ """
2
+ Dynamic MCP Server Discovery Client.
3
+ Implements the MCP protocol for discovering tools from remote servers.
4
+ """
5
+
6
+ import asyncio
7
+ import json
8
+ import logging
9
+ import time
10
+ from dataclasses import dataclass, field
11
+ from typing import Dict, List, Optional, Any, Set
12
+ from urllib.parse import urlparse
13
+ import aiohttp
14
+ from datetime import datetime, timedelta
15
+
16
+ from ..models.mcp_models import McpConnectionConfig, McpToolMetadata
17
+
18
+ logger = logging.getLogger(__name__)
19
+
20
+
21
+ @dataclass
22
+ class McpServerInfo:
23
+ """Information about an MCP server."""
24
+ name: str
25
+ url: str
26
+ headers: Optional[Dict[str, str]] = None
27
+ last_discovery: Optional[datetime] = None
28
+ tools: List[McpToolMetadata] = field(default_factory=list)
29
+ status: str = "unknown" # unknown, online, offline, error
30
+ error: Optional[str] = None
31
+
32
+
33
+ class McpDiscoveryClient:
34
+ """
35
+ Client for dynamically discovering tools from MCP servers.
36
+ Implements the MCP protocol for tool discovery.
37
+ """
38
+
39
+ def __init__(
40
+ self,
41
+ discovery_interval: int = 300, # 5 minutes
42
+ request_timeout: int = 30,
43
+ max_retries: int = 3,
44
+ cache_ttl: int = 600 # 10 minutes
45
+ ):
46
+ self.discovery_interval = discovery_interval
47
+ self.request_timeout = request_timeout
48
+ self.max_retries = max_retries
49
+ self.cache_ttl = cache_ttl
50
+
51
+ # Server registry
52
+ self.servers: Dict[str, McpServerInfo] = {}
53
+ self.session: Optional[aiohttp.ClientSession] = None
54
+
55
+ # Discovery state
56
+ self._discovery_task: Optional[asyncio.Task] = None
57
+ self._running = False
58
+
59
+ async def __aenter__(self):
60
+ """Async context manager entry."""
61
+ await self.start()
62
+ return self
63
+
64
+ async def __aexit__(self, exc_type, exc_val, exc_tb):
65
+ """Async context manager exit."""
66
+ await self.stop()
67
+
68
+ async def start(self):
69
+ """Start the discovery client."""
70
+ if self._running:
71
+ return
72
+
73
+ self.session = aiohttp.ClientSession(
74
+ timeout=aiohttp.ClientTimeout(total=self.request_timeout)
75
+ )
76
+ self._running = True
77
+
78
+ # Start background discovery task
79
+ self._discovery_task = asyncio.create_task(self._discovery_loop())
80
+ logger.info("MCP Discovery Client started")
81
+
82
+ async def stop(self):
83
+ """Stop the discovery client."""
84
+ if not self._running:
85
+ return
86
+
87
+ self._running = False
88
+
89
+ if self._discovery_task:
90
+ self._discovery_task.cancel()
91
+ try:
92
+ await self._discovery_task
93
+ except asyncio.CancelledError:
94
+ pass
95
+
96
+ if self.session:
97
+ await self.session.close()
98
+
99
+ logger.info("MCP Discovery Client stopped")
100
+
101
+ def add_server(self, server_name: str, connection_config: McpConnectionConfig):
102
+ """Add an MCP server to discovery."""
103
+ server_info = McpServerInfo(
104
+ name=server_name,
105
+ url=connection_config.url,
106
+ headers=connection_config.headers
107
+ )
108
+ self.servers[server_name] = server_info
109
+ logger.info(f"Added MCP server for discovery: {server_name} at {connection_config.url}")
110
+
111
+ def remove_server(self, server_name: str):
112
+ """Remove an MCP server from discovery."""
113
+ if server_name in self.servers:
114
+ del self.servers[server_name]
115
+ logger.info(f"Removed MCP server from discovery: {server_name}")
116
+
117
+ async def discover_server_tools(self, server_name: str, force: bool = False) -> List[McpToolMetadata]:
118
+ """Discover tools from a specific MCP server."""
119
+ if server_name not in self.servers:
120
+ raise ValueError(f"Server {server_name} not registered for discovery")
121
+
122
+ server_info = self.servers[server_name]
123
+
124
+ # Check cache unless force refresh
125
+ if not force and self._is_cache_valid(server_info):
126
+ logger.debug(f"Using cached tools for server {server_name}")
127
+ return server_info.tools
128
+
129
+ try:
130
+ tools = await self._fetch_server_tools(server_info)
131
+ server_info.tools = tools
132
+ server_info.last_discovery = datetime.now()
133
+ server_info.status = "online"
134
+ server_info.error = None
135
+
136
+ logger.info(f"Discovered {len(tools)} tools from server {server_name}")
137
+ return tools
138
+
139
+ except Exception as e:
140
+ error_msg = f"Failed to discover tools from {server_name}: {e}"
141
+ logger.error(error_msg)
142
+ server_info.status = "error"
143
+ server_info.error = str(e)
144
+ return []
145
+
146
+ async def get_all_tools(self) -> Dict[str, List[McpToolMetadata]]:
147
+ """Get all discovered tools from all servers."""
148
+ all_tools = {}
149
+
150
+ for server_name in self.servers:
151
+ tools = await self.discover_server_tools(server_name)
152
+ all_tools[server_name] = tools
153
+
154
+ return all_tools
155
+
156
+ def get_server_status(self, server_name: str) -> Optional[McpServerInfo]:
157
+ """Get status information for a server."""
158
+ return self.servers.get(server_name)
159
+
160
+ def get_all_server_status(self) -> Dict[str, McpServerInfo]:
161
+ """Get status information for all servers."""
162
+ return self.servers.copy()
163
+
164
+ async def _discovery_loop(self):
165
+ """Background task for periodic tool discovery."""
166
+ while self._running:
167
+ try:
168
+ await self._perform_discovery()
169
+ await asyncio.sleep(self.discovery_interval)
170
+ except asyncio.CancelledError:
171
+ break
172
+ except Exception as e:
173
+ logger.error(f"Error in discovery loop: {e}")
174
+ await asyncio.sleep(60) # Wait before retrying
175
+
176
+ async def _perform_discovery(self):
177
+ """Perform discovery on all registered servers."""
178
+ if not self.servers:
179
+ return
180
+
181
+ discovery_tasks = [
182
+ self.discover_server_tools(server_name)
183
+ for server_name in self.servers
184
+ ]
185
+
186
+ results = await asyncio.gather(*discovery_tasks, return_exceptions=True)
187
+
188
+ # Log any errors
189
+ for i, result in enumerate(results):
190
+ if isinstance(result, Exception):
191
+ server_name = list(self.servers.keys())[i]
192
+ logger.error(f"Discovery failed for server {server_name}: {result}")
193
+
194
+ async def _fetch_server_tools(self, server_info: McpServerInfo) -> List[McpToolMetadata]:
195
+ """Fetch tools from an MCP server using HTTP requests."""
196
+ if not self.session:
197
+ raise RuntimeError("Discovery client not started")
198
+
199
+ # MCP protocol: list_tools request
200
+ mcp_request = {
201
+ "jsonrpc": "2.0",
202
+ "id": f"discover_{int(time.time())}",
203
+ "method": "tools/list",
204
+ "params": {}
205
+ }
206
+
207
+ headers = {"Content-Type": "application/json"}
208
+ if server_info.headers:
209
+ headers.update(server_info.headers)
210
+
211
+ async with self.session.post(
212
+ server_info.url,
213
+ json=mcp_request,
214
+ headers=headers
215
+ ) as response:
216
+
217
+ if response.status != 200:
218
+ raise Exception(f"HTTP {response.status}: {await response.text()}")
219
+
220
+ data = await response.json()
221
+
222
+ if "error" in data:
223
+ raise Exception(f"MCP Error: {data['error']}")
224
+
225
+ # Parse MCP response
226
+ tools_data = data.get("result", {}).get("tools", [])
227
+ tools = []
228
+
229
+ for tool_data in tools_data:
230
+ try:
231
+ tool_metadata = McpToolMetadata(
232
+ name=tool_data.get("name", ""),
233
+ description=tool_data.get("description", ""),
234
+ server=server_info.name,
235
+ input_schema=tool_data.get("inputSchema", {}),
236
+ enabled=True
237
+ )
238
+ tools.append(tool_metadata)
239
+ except Exception as e:
240
+ logger.warning(f"Failed to parse tool from {server_info.name}: {e}")
241
+
242
+ return tools
243
+
244
+ def _is_cache_valid(self, server_info: McpServerInfo) -> bool:
245
+ """Check if cached tools are still valid."""
246
+ if not server_info.last_discovery:
247
+ return False
248
+
249
+ cache_age = datetime.now() - server_info.last_discovery
250
+ return cache_age.total_seconds() < self.cache_ttl
251
+
252
+
253
+ class McpDiscoveryService:
254
+ """
255
+ High-level service for managing MCP server discovery.
256
+ Integrates with the existing toolkit system.
257
+ """
258
+
259
+ def __init__(self, discovery_client: Optional[McpDiscoveryClient] = None):
260
+ self.client = discovery_client or McpDiscoveryClient()
261
+ self._started = False
262
+
263
+ async def start(self):
264
+ """Start the discovery service."""
265
+ if not self._started:
266
+ await self.client.start()
267
+ self._started = True
268
+
269
+ async def stop(self):
270
+ """Stop the discovery service."""
271
+ if self._started:
272
+ await self.client.stop()
273
+ self._started = False
274
+
275
+ async def register_server(self, server_name: str, connection_config: McpConnectionConfig):
276
+ """Register an MCP server for discovery."""
277
+ self.client.add_server(server_name, connection_config)
278
+
279
+ # Perform immediate discovery
280
+ await self.client.discover_server_tools(server_name, force=True)
281
+
282
+ def unregister_server(self, server_name: str):
283
+ """Unregister an MCP server."""
284
+ self.client.remove_server(server_name)
285
+
286
+ async def get_server_tools(self, server_name: str) -> List[McpToolMetadata]:
287
+ """Get tools from a specific server."""
288
+ return await self.client.discover_server_tools(server_name)
289
+
290
+ async def get_all_available_tools(self) -> Dict[str, List[McpToolMetadata]]:
291
+ """Get all available tools from all registered servers."""
292
+ return await self.client.get_all_tools()
293
+
294
+ def get_server_health(self) -> Dict[str, Dict[str, Any]]:
295
+ """Get health status of all servers."""
296
+ status_info = {}
297
+
298
+ for name, server_info in self.client.get_all_server_status().items():
299
+ status_info[name] = {
300
+ "status": server_info.status,
301
+ "url": server_info.url,
302
+ "last_discovery": server_info.last_discovery.isoformat() if server_info.last_discovery else None,
303
+ "tool_count": len(server_info.tools),
304
+ "error": server_info.error
305
+ }
306
+
307
+ return status_info
308
+
309
+ async def refresh_server(self, server_name: str):
310
+ """Force refresh tools from a specific server."""
311
+ await self.client.discover_server_tools(server_name, force=True)
312
+
313
+ async def refresh_all_servers(self):
314
+ """Force refresh tools from all servers."""
315
+ for server_name in self.client.servers:
316
+ await self.client.discover_server_tools(server_name, force=True)
317
+
318
+
319
+ # Global discovery service instance
320
+ _discovery_service: Optional[McpDiscoveryService] = None
321
+
322
+
323
+ def get_discovery_service() -> McpDiscoveryService:
324
+ """Get the global MCP discovery service instance."""
325
+ global _discovery_service
326
+ if _discovery_service is None:
327
+ _discovery_service = McpDiscoveryService()
328
+ return _discovery_service
329
+
330
+
331
+ async def init_discovery_service():
332
+ """Initialize the global discovery service."""
333
+ service = get_discovery_service()
334
+ await service.start()
335
+
336
+
337
+ async def shutdown_discovery_service():
338
+ """Shutdown the global discovery service."""
339
+ global _discovery_service
340
+ if _discovery_service:
341
+ await _discovery_service.stop()
342
+ _discovery_service = None