letta-nightly 0.6.37.dev20250310103931__tar.gz → 0.6.38.dev20250312104155__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 letta-nightly might be problematic. Click here for more details.

Files changed (284) hide show
  1. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/PKG-INFO +18 -17
  2. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/__init__.py +1 -1
  3. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/agent.py +34 -12
  4. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/client/client.py +1 -50
  5. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/constants.py +1 -1
  6. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/function_sets/multi_agent.py +9 -8
  7. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/helpers.py +33 -6
  8. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/anthropic.py +20 -0
  9. letta_nightly-0.6.38.dev20250312104155/letta/llm_api/google_ai_client.py +332 -0
  10. letta_nightly-0.6.38.dev20250312104155/letta/llm_api/google_vertex_client.py +214 -0
  11. letta_nightly-0.6.38.dev20250312104155/letta/llm_api/llm_client.py +48 -0
  12. letta_nightly-0.6.38.dev20250312104155/letta/llm_api/llm_client_base.py +129 -0
  13. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/step.py +1 -0
  14. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/block.py +4 -48
  15. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/letta_message.py +26 -0
  16. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/message.py +1 -1
  17. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/step.py +1 -0
  18. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/agent.py +8 -1
  19. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/interface.py +9 -7
  20. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/openai/chat_completions/chat_completions.py +2 -7
  21. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/agents.py +12 -8
  22. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/steps.py +2 -0
  23. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/voice.py +3 -6
  24. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/agent_manager.py +56 -3
  25. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/helpers/agent_manager_helper.py +12 -1
  26. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/identity_manager.py +7 -1
  27. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/message_manager.py +40 -0
  28. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/step_manager.py +8 -1
  29. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/pyproject.toml +5 -4
  30. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/LICENSE +0 -0
  31. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/README.md +0 -0
  32. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/__main__.py +0 -0
  33. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/agents/__init__.py +0 -0
  34. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/agents/base_agent.py +0 -0
  35. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/agents/ephemeral_agent.py +0 -0
  36. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/agents/low_latency_agent.py +0 -0
  37. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/benchmark/benchmark.py +0 -0
  38. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/benchmark/constants.py +0 -0
  39. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/cli/cli.py +0 -0
  40. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/cli/cli_config.py +0 -0
  41. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/cli/cli_load.py +0 -0
  42. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/client/__init__.py +0 -0
  43. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/client/streaming.py +0 -0
  44. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/client/utils.py +0 -0
  45. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/config.py +0 -0
  46. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/data_sources/connectors.py +0 -0
  47. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/data_sources/connectors_helper.py +0 -0
  48. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/embeddings.py +0 -0
  49. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/errors.py +0 -0
  50. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/__init__.py +0 -0
  51. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/ast_parsers.py +0 -0
  52. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/function_sets/base.py +0 -0
  53. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/function_sets/extras.py +0 -0
  54. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/functions.py +0 -0
  55. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/interface.py +0 -0
  56. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/functions/schema_generator.py +0 -0
  57. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/__init__.py +0 -0
  58. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/composio_helpers.py +0 -0
  59. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/converters.py +0 -0
  60. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/datetime_helpers.py +0 -0
  61. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/json_helpers.py +0 -0
  62. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/tool_execution_helper.py +0 -0
  63. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/helpers/tool_rule_solver.py +0 -0
  64. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/humans/__init__.py +0 -0
  65. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/humans/examples/basic.txt +0 -0
  66. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/humans/examples/cs_phd.txt +0 -0
  67. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/interface.py +0 -0
  68. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/interfaces/__init__.py +0 -0
  69. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/interfaces/openai_chat_completions_streaming_interface.py +0 -0
  70. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/interfaces/utils.py +0 -0
  71. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/__init__.py +0 -0
  72. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/aws_bedrock.py +0 -0
  73. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/azure_openai.py +0 -0
  74. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/azure_openai_constants.py +0 -0
  75. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/cohere.py +0 -0
  76. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/deepseek.py +0 -0
  77. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/google_ai.py +0 -0
  78. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/google_constants.py +0 -0
  79. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/google_vertex.py +0 -0
  80. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/helpers.py +0 -0
  81. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/llm_api_tools.py +0 -0
  82. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/mistral.py +0 -0
  83. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/llm_api/openai.py +0 -0
  84. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/README.md +0 -0
  85. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/__init__.py +0 -0
  86. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/chat_completion_proxy.py +0 -0
  87. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/constants.py +0 -0
  88. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/function_parser.py +0 -0
  89. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/grammars/__init__.py +0 -0
  90. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/grammars/gbnf_grammar_generator.py +0 -0
  91. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/grammars/json.gbnf +0 -0
  92. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/grammars/json_func_calls_with_inner_thoughts.gbnf +0 -0
  93. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/json_parser.py +0 -0
  94. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/koboldcpp/api.py +0 -0
  95. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/koboldcpp/settings.py +0 -0
  96. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llamacpp/api.py +0 -0
  97. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llamacpp/settings.py +0 -0
  98. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/__init__.py +0 -0
  99. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/airoboros.py +0 -0
  100. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/chatml.py +0 -0
  101. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/configurable_wrapper.py +0 -0
  102. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/dolphin.py +0 -0
  103. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/llama3.py +0 -0
  104. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/simple_summary_wrapper.py +0 -0
  105. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/wrapper_base.py +0 -0
  106. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/llm_chat_completion_wrappers/zephyr.py +0 -0
  107. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/lmstudio/api.py +0 -0
  108. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/lmstudio/settings.py +0 -0
  109. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/ollama/api.py +0 -0
  110. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/ollama/settings.py +0 -0
  111. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/settings/__init__.py +0 -0
  112. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/settings/deterministic_mirostat.py +0 -0
  113. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/settings/settings.py +0 -0
  114. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/settings/simple.py +0 -0
  115. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/utils.py +0 -0
  116. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/vllm/api.py +0 -0
  117. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/webui/api.py +0 -0
  118. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/webui/legacy_api.py +0 -0
  119. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/webui/legacy_settings.py +0 -0
  120. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/local_llm/webui/settings.py +0 -0
  121. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/log.py +0 -0
  122. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/main.py +0 -0
  123. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/memory.py +0 -0
  124. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/offline_memory_agent.py +0 -0
  125. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/openai_backcompat/__init__.py +0 -0
  126. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/openai_backcompat/openai_object.py +0 -0
  127. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/__all__.py +0 -0
  128. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/__init__.py +0 -0
  129. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/agent.py +0 -0
  130. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/agents_tags.py +0 -0
  131. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/base.py +0 -0
  132. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/block.py +0 -0
  133. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/blocks_agents.py +0 -0
  134. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/custom_columns.py +0 -0
  135. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/enums.py +0 -0
  136. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/errors.py +0 -0
  137. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/file.py +0 -0
  138. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/identities_agents.py +0 -0
  139. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/identity.py +0 -0
  140. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/job.py +0 -0
  141. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/job_messages.py +0 -0
  142. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/message.py +0 -0
  143. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/mixins.py +0 -0
  144. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/organization.py +0 -0
  145. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/passage.py +0 -0
  146. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/provider.py +0 -0
  147. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/sandbox_config.py +0 -0
  148. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/source.py +0 -0
  149. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/sources_agents.py +0 -0
  150. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/sqlalchemy_base.py +0 -0
  151. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/sqlite_functions.py +0 -0
  152. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/tool.py +0 -0
  153. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/tools_agents.py +0 -0
  154. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/orm/user.py +0 -0
  155. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/__init__.py +0 -0
  156. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/anna_pa.txt +0 -0
  157. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/google_search_persona.txt +0 -0
  158. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/memgpt_doc.txt +0 -0
  159. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/memgpt_starter.txt +0 -0
  160. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/o1_persona.txt +0 -0
  161. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/offline_memory_persona.txt +0 -0
  162. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/sam.txt +0 -0
  163. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/sam_pov.txt +0 -0
  164. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/sam_simple_pov_gpt35.txt +0 -0
  165. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/personas/examples/sqldb/test.db +0 -0
  166. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/__init__.py +0 -0
  167. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/gpt_summarize.py +0 -0
  168. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/gpt_system.py +0 -0
  169. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_base.txt +0 -0
  170. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_chat.txt +0 -0
  171. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_chat_compressed.txt +0 -0
  172. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_chat_fstring.txt +0 -0
  173. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_convo_only.txt +0 -0
  174. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_doc.txt +0 -0
  175. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_gpt35_extralong.txt +0 -0
  176. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_intuitive_knowledge.txt +0 -0
  177. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_memory_only.txt +0 -0
  178. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_modified_chat.txt +0 -0
  179. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_modified_o1.txt +0 -0
  180. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_offline_memory.txt +0 -0
  181. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/prompts/system/memgpt_offline_memory_chat.txt +0 -0
  182. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/pytest.ini +0 -0
  183. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/agent.py +0 -0
  184. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/embedding_config.py +0 -0
  185. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/embedding_config_overrides.py +0 -0
  186. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/enums.py +0 -0
  187. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/environment_variables.py +0 -0
  188. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/file.py +0 -0
  189. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/health.py +0 -0
  190. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/identity.py +0 -0
  191. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/job.py +0 -0
  192. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/letta_base.py +0 -0
  193. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/letta_request.py +0 -0
  194. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/letta_response.py +0 -0
  195. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/llm_config.py +0 -0
  196. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/llm_config_overrides.py +0 -0
  197. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/memory.py +0 -0
  198. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/openai/chat_completion_request.py +0 -0
  199. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/openai/chat_completion_response.py +0 -0
  200. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/openai/chat_completions.py +0 -0
  201. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/openai/embedding_response.py +0 -0
  202. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/openai/openai.py +0 -0
  203. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/organization.py +0 -0
  204. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/passage.py +0 -0
  205. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/providers.py +0 -0
  206. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/run.py +0 -0
  207. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/sandbox_config.py +0 -0
  208. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/source.py +0 -0
  209. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/tool.py +0 -0
  210. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/tool_rule.py +0 -0
  211. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/usage.py +0 -0
  212. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/schemas/user.py +0 -0
  213. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/__init__.py +0 -0
  214. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/agent_environment_variable.py +0 -0
  215. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/base.py +0 -0
  216. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/block.py +0 -0
  217. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/custom_fields.py +0 -0
  218. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/message.py +0 -0
  219. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/tag.py +0 -0
  220. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/serialize_schemas/tool.py +0 -0
  221. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/__init__.py +0 -0
  222. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/constants.py +0 -0
  223. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/db.py +0 -0
  224. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/generate_openapi_schema.sh +0 -0
  225. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/__init__.py +0 -0
  226. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/app.py +0 -0
  227. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/auth/__init__.py +0 -0
  228. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/auth/index.py +0 -0
  229. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/auth_token.py +0 -0
  230. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/chat_completions_interface.py +0 -0
  231. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/optimistic_json_parser.py +0 -0
  232. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/__init__.py +0 -0
  233. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/openai/chat_completions/__init__.py +0 -0
  234. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/__init__.py +0 -0
  235. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/blocks.py +0 -0
  236. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/health.py +0 -0
  237. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/identities.py +0 -0
  238. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/jobs.py +0 -0
  239. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/llms.py +0 -0
  240. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/organizations.py +0 -0
  241. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/providers.py +0 -0
  242. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/runs.py +0 -0
  243. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/sandbox_configs.py +0 -0
  244. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/sources.py +0 -0
  245. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/tags.py +0 -0
  246. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/tools.py +0 -0
  247. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/routers/v1/users.py +0 -0
  248. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/static_files.py +0 -0
  249. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/rest_api/utils.py +0 -0
  250. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/server.py +0 -0
  251. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/startup.sh +0 -0
  252. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/static_files/assets/index-048c9598.js +0 -0
  253. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/static_files/assets/index-0e31b727.css +0 -0
  254. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/static_files/favicon.ico +0 -0
  255. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/static_files/index.html +0 -0
  256. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/static_files/memgpt_logo_transparent.png +0 -0
  257. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/utils.py +0 -0
  258. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/ws_api/__init__.py +0 -0
  259. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/ws_api/example_client.py +0 -0
  260. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/ws_api/interface.py +0 -0
  261. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/ws_api/protocol.py +0 -0
  262. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/server/ws_api/server.py +0 -0
  263. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/__init__.py +0 -0
  264. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/block_manager.py +0 -0
  265. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/helpers/tool_execution_helper.py +0 -0
  266. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/job_manager.py +0 -0
  267. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/organization_manager.py +0 -0
  268. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/passage_manager.py +0 -0
  269. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/per_agent_lock_manager.py +0 -0
  270. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/provider_manager.py +0 -0
  271. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/sandbox_config_manager.py +0 -0
  272. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/source_manager.py +0 -0
  273. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/summarizer/__init__.py +0 -0
  274. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/summarizer/enums.py +0 -0
  275. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/summarizer/summarizer.py +0 -0
  276. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/tool_execution_sandbox.py +0 -0
  277. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/tool_manager.py +0 -0
  278. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/services/user_manager.py +0 -0
  279. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/settings.py +0 -0
  280. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/streaming_interface.py +0 -0
  281. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/streaming_utils.py +0 -0
  282. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/system.py +0 -0
  283. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/tracing.py +0 -0
  284. {letta_nightly-0.6.37.dev20250310103931 → letta_nightly-0.6.38.dev20250312104155}/letta/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: letta-nightly
3
- Version: 0.6.37.dev20250310103931
3
+ Version: 0.6.38.dev20250312104155
4
4
  Summary: Create LLM agents with long-term memory and custom tools
5
5
  License: Apache License
6
6
  Author: Letta Team
@@ -14,6 +14,7 @@ Classifier: Programming Language :: Python :: 3.12
14
14
  Provides-Extra: all
15
15
  Provides-Extra: bedrock
16
16
  Provides-Extra: cloud-tool-sandbox
17
+ Provides-Extra: desktop
17
18
  Provides-Extra: dev
18
19
  Provides-Extra: external-tools
19
20
  Provides-Extra: google
@@ -28,17 +29,17 @@ Requires-Dist: black[jupyter] (>=24.2.0,<25.0.0) ; extra == "dev" or extra == "a
28
29
  Requires-Dist: boto3 (>=1.36.24,<2.0.0) ; extra == "bedrock"
29
30
  Requires-Dist: brotli (>=1.1.0,<2.0.0)
30
31
  Requires-Dist: colorama (>=0.4.6,<0.5.0)
31
- Requires-Dist: composio-core (>=0.7.2,<0.8.0)
32
- Requires-Dist: composio-langchain (>=0.7.2,<0.8.0)
33
- Requires-Dist: datamodel-code-generator[http] (>=0.25.0,<0.26.0)
34
- Requires-Dist: datasets (>=2.14.6,<3.0.0) ; extra == "dev" or extra == "all"
32
+ Requires-Dist: composio-core (>=0.7.7,<0.8.0)
33
+ Requires-Dist: composio-langchain (>=0.7.7,<0.8.0)
34
+ Requires-Dist: datamodel-code-generator[http] (>=0.25.0,<0.26.0) ; extra == "desktop" or extra == "all"
35
+ Requires-Dist: datasets (>=2.14.6,<3.0.0) ; extra == "dev" or extra == "desktop" or extra == "all"
35
36
  Requires-Dist: demjson3 (>=3.0.6,<4.0.0)
36
- Requires-Dist: docker (>=7.1.0,<8.0.0) ; extra == "external-tools" or extra == "all"
37
+ Requires-Dist: docker (>=7.1.0,<8.0.0) ; extra == "external-tools" or extra == "desktop" or extra == "all"
37
38
  Requires-Dist: docstring-parser (>=0.16,<0.17)
38
39
  Requires-Dist: docx2txt (>=0.8,<0.9)
39
40
  Requires-Dist: e2b-code-interpreter (>=1.0.3,<2.0.0) ; extra == "cloud-tool-sandbox"
40
41
  Requires-Dist: faker (>=36.1.0,<37.0.0)
41
- Requires-Dist: fastapi (>=0.115.6,<0.116.0) ; extra == "server" or extra == "all"
42
+ Requires-Dist: fastapi (>=0.115.6,<0.116.0) ; extra == "server" or extra == "desktop" or extra == "all"
42
43
  Requires-Dist: google-genai (>=1.1.0,<2.0.0) ; extra == "google"
43
44
  Requires-Dist: grpcio (>=1.68.1,<2.0.0)
44
45
  Requires-Dist: grpcio-tools (>=1.68.1,<2.0.0)
@@ -47,12 +48,12 @@ Requires-Dist: httpx (>=0.28.0,<0.29.0)
47
48
  Requires-Dist: httpx-sse (>=0.4.0,<0.5.0)
48
49
  Requires-Dist: isort (>=5.13.2,<6.0.0) ; extra == "dev" or extra == "all"
49
50
  Requires-Dist: jinja2 (>=3.1.5,<4.0.0)
50
- Requires-Dist: langchain (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "all"
51
- Requires-Dist: langchain-community (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "all"
51
+ Requires-Dist: langchain (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "desktop" or extra == "all"
52
+ Requires-Dist: langchain-community (>=0.3.7,<0.4.0) ; extra == "external-tools" or extra == "desktop" or extra == "all"
52
53
  Requires-Dist: letta_client (>=0.1.54,<0.2.0)
53
54
  Requires-Dist: llama-index (>=0.12.2,<0.13.0)
54
55
  Requires-Dist: llama-index-embeddings-openai (>=0.3.1,<0.4.0)
55
- Requires-Dist: locust (>=2.31.5,<3.0.0) ; extra == "dev" or extra == "all"
56
+ Requires-Dist: locust (>=2.31.5,<3.0.0) ; extra == "dev" or extra == "desktop" or extra == "all"
56
57
  Requires-Dist: marshmallow-sqlalchemy (>=1.4.1,<2.0.0)
57
58
  Requires-Dist: nltk (>=3.8.1,<4.0.0)
58
59
  Requires-Dist: numpy (>=1.26.2,<2.0.0)
@@ -63,16 +64,16 @@ Requires-Dist: opentelemetry-instrumentation-requests (==0.51b0)
63
64
  Requires-Dist: opentelemetry-sdk (==1.30.0)
64
65
  Requires-Dist: pathvalidate (>=3.2.1,<4.0.0)
65
66
  Requires-Dist: pexpect (>=4.9.0,<5.0.0) ; extra == "dev" or extra == "all"
66
- Requires-Dist: pg8000 (>=1.30.3,<2.0.0) ; extra == "postgres" or extra == "all"
67
- Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "all"
67
+ Requires-Dist: pg8000 (>=1.30.3,<2.0.0) ; extra == "postgres" or extra == "desktop" or extra == "all"
68
+ Requires-Dist: pgvector (>=0.2.3,<0.3.0) ; extra == "postgres" or extra == "desktop" or extra == "all"
68
69
  Requires-Dist: pre-commit (>=3.5.0,<4.0.0) ; extra == "dev" or extra == "all"
69
70
  Requires-Dist: prettytable (>=3.9.0,<4.0.0)
70
- Requires-Dist: psycopg2 (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "all"
71
- Requires-Dist: psycopg2-binary (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "all"
71
+ Requires-Dist: psycopg2 (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "desktop" or extra == "all"
72
+ Requires-Dist: psycopg2-binary (>=2.9.10,<3.0.0) ; extra == "postgres" or extra == "desktop" or extra == "all"
72
73
  Requires-Dist: pydantic (>=2.7.4,<2.10.0)
73
74
  Requires-Dist: pydantic-settings (>=2.2.1,<3.0.0)
74
75
  Requires-Dist: pyhumps (>=3.8.0,<4.0.0)
75
- Requires-Dist: pyright (>=1.1.347,<2.0.0) ; extra == "dev" or extra == "all"
76
+ Requires-Dist: pyright (>=1.1.347,<2.0.0) ; extra == "dev" or extra == "desktop" or extra == "all"
76
77
  Requires-Dist: pytest-asyncio (>=0.23.2,<0.24.0) ; extra == "dev" or extra == "all"
77
78
  Requires-Dist: pytest-order (>=1.2.0,<2.0.0) ; extra == "dev" or extra == "all"
78
79
  Requires-Dist: python-box (>=7.1.1,<8.0.0)
@@ -90,8 +91,8 @@ Requires-Dist: sqlalchemy-utils (>=0.41.2,<0.42.0)
90
91
  Requires-Dist: sqlmodel (>=0.0.16,<0.0.17)
91
92
  Requires-Dist: tqdm (>=4.66.1,<5.0.0)
92
93
  Requires-Dist: typer[all] (>=0.9.0,<0.10.0)
93
- Requires-Dist: uvicorn (>=0.24.0.post1,<0.25.0) ; extra == "server" or extra == "all"
94
- Requires-Dist: wikipedia (>=1.4.0,<2.0.0) ; extra == "external-tools" or extra == "tests" or extra == "all"
94
+ Requires-Dist: uvicorn (>=0.24.0.post1,<0.25.0) ; extra == "server" or extra == "desktop" or extra == "all"
95
+ Requires-Dist: wikipedia (>=1.4.0,<2.0.0) ; extra == "external-tools" or extra == "tests" or extra == "desktop" or extra == "all"
95
96
  Description-Content-Type: text/markdown
96
97
 
97
98
  <p align="center">
@@ -1,4 +1,4 @@
1
- __version__ = "0.6.37"
1
+ __version__ = "0.6.38"
2
2
 
3
3
  # import clients
4
4
  from letta.client.client import LocalClient, RESTClient, create_client
@@ -29,6 +29,7 @@ from letta.helpers.json_helpers import json_dumps, json_loads
29
29
  from letta.interface import AgentInterface
30
30
  from letta.llm_api.helpers import calculate_summarizer_cutoff, get_token_counts_for_messages, is_context_overflow_error
31
31
  from letta.llm_api.llm_api_tools import create
32
+ from letta.llm_api.llm_client import LLMClient
32
33
  from letta.local_llm.utils import num_tokens_from_functions, num_tokens_from_messages
33
34
  from letta.log import get_logger
34
35
  from letta.memory import summarize_messages
@@ -356,19 +357,38 @@ class Agent(BaseAgent):
356
357
  for attempt in range(1, empty_response_retry_limit + 1):
357
358
  try:
358
359
  log_telemetry(self.logger, "_get_ai_reply create start")
359
- response = create(
360
+ # New LLM client flow
361
+ llm_client = LLMClient.create(
362
+ agent_id=self.agent_state.id,
360
363
  llm_config=self.agent_state.llm_config,
361
- messages=message_sequence,
362
- user_id=self.agent_state.created_by_id,
363
- functions=allowed_functions,
364
- # functions_python=self.functions_python, do we need this?
365
- function_call=function_call,
366
- first_message=first_message,
367
- force_tool_call=force_tool_call,
368
- stream=stream,
369
- stream_interface=self.interface,
370
364
  put_inner_thoughts_first=put_inner_thoughts_first,
365
+ actor_id=self.agent_state.created_by_id,
371
366
  )
367
+
368
+ if llm_client and not stream:
369
+ response = llm_client.send_llm_request(
370
+ messages=message_sequence,
371
+ tools=allowed_functions,
372
+ tool_call=function_call,
373
+ stream=stream,
374
+ first_message=first_message,
375
+ force_tool_call=force_tool_call,
376
+ )
377
+ else:
378
+ # Fallback to existing flow
379
+ response = create(
380
+ llm_config=self.agent_state.llm_config,
381
+ messages=message_sequence,
382
+ user_id=self.agent_state.created_by_id,
383
+ functions=allowed_functions,
384
+ # functions_python=self.functions_python, do we need this?
385
+ function_call=function_call,
386
+ first_message=first_message,
387
+ force_tool_call=force_tool_call,
388
+ stream=stream,
389
+ stream_interface=self.interface,
390
+ put_inner_thoughts_first=put_inner_thoughts_first,
391
+ )
372
392
  log_telemetry(self.logger, "_get_ai_reply create finish")
373
393
 
374
394
  # These bottom two are retryable
@@ -632,7 +652,7 @@ class Agent(BaseAgent):
632
652
  function_args,
633
653
  function_response,
634
654
  messages,
635
- [tool_return] if tool_return else None,
655
+ [tool_return],
636
656
  include_function_failed_message=True,
637
657
  )
638
658
  return messages, False, True # force a heartbeat to allow agent to handle error
@@ -659,7 +679,7 @@ class Agent(BaseAgent):
659
679
  "content": function_response,
660
680
  "tool_call_id": tool_call_id,
661
681
  },
662
- tool_returns=[tool_return] if tool_return else None,
682
+ tool_returns=[tool_return] if sandbox_run_result else None,
663
683
  )
664
684
  ) # extend conversation with function response
665
685
  self.interface.function_message(f"Ran {function_name}({function_args})", msg_obj=messages[-1])
@@ -909,6 +929,7 @@ class Agent(BaseAgent):
909
929
  # Log step - this must happen before messages are persisted
910
930
  step = self.step_manager.log_step(
911
931
  actor=self.user,
932
+ agent_id=self.agent_state.id,
912
933
  provider_name=self.agent_state.llm_config.model_endpoint_type,
913
934
  model=self.agent_state.llm_config.model,
914
935
  model_endpoint=self.agent_state.llm_config.model_endpoint,
@@ -1174,6 +1195,7 @@ class Agent(BaseAgent):
1174
1195
  memory_edit_timestamp=get_utc_time(),
1175
1196
  previous_message_count=self.message_manager.size(actor=self.user, agent_id=self.agent_state.id),
1176
1197
  archival_memory_size=self.agent_manager.passage_size(actor=self.user, agent_id=self.agent_state.id),
1198
+ recent_passages=self.agent_manager.list_passages(actor=self.user, agent_id=self.agent_state.id, ascending=False, limit=10),
1177
1199
  )
1178
1200
  num_tokens_external_memory_summary = count_tokens(external_memory_summary)
1179
1201
 
@@ -4,7 +4,6 @@ import time
4
4
  from typing import Callable, Dict, Generator, List, Optional, Union
5
5
 
6
6
  import requests
7
- from openai.types.chat.chat_completion_message_tool_call import ChatCompletionMessageToolCall as OpenAIToolCall
8
7
 
9
8
  import letta.utils
10
9
  from letta.constants import ADMIN_PREFIX, BASE_MEMORY_TOOLS, BASE_TOOLS, DEFAULT_HUMAN, DEFAULT_PERSONA, FUNCTION_RETURN_CHAR_LIMIT
@@ -29,7 +28,7 @@ from letta.schemas.letta_request import LettaRequest, LettaStreamingRequest
29
28
  from letta.schemas.letta_response import LettaResponse, LettaStreamingResponse
30
29
  from letta.schemas.llm_config import LLMConfig
31
30
  from letta.schemas.memory import ArchivalMemorySummary, ChatMemory, CreateArchivalMemory, Memory, RecallMemorySummary
32
- from letta.schemas.message import Message, MessageCreate, MessageUpdate
31
+ from letta.schemas.message import Message, MessageCreate
33
32
  from letta.schemas.openai.chat_completion_response import UsageStatistics
34
33
  from letta.schemas.organization import Organization
35
34
  from letta.schemas.passage import Passage
@@ -640,30 +639,6 @@ class RESTClient(AbstractClient):
640
639
  # refresh and return agent
641
640
  return self.get_agent(agent_state.id)
642
641
 
643
- def update_message(
644
- self,
645
- agent_id: str,
646
- message_id: str,
647
- role: Optional[MessageRole] = None,
648
- text: Optional[str] = None,
649
- name: Optional[str] = None,
650
- tool_calls: Optional[List[OpenAIToolCall]] = None,
651
- tool_call_id: Optional[str] = None,
652
- ) -> Message:
653
- request = MessageUpdate(
654
- role=role,
655
- content=text,
656
- name=name,
657
- tool_calls=tool_calls,
658
- tool_call_id=tool_call_id,
659
- )
660
- response = requests.patch(
661
- f"{self.base_url}/{self.api_prefix}/agents/{agent_id}/messages/{message_id}", json=request.model_dump(), headers=self.headers
662
- )
663
- if response.status_code != 200:
664
- raise ValueError(f"Failed to update message: {response.text}")
665
- return Message(**response.json())
666
-
667
642
  def update_agent(
668
643
  self,
669
644
  agent_id: str,
@@ -2436,30 +2411,6 @@ class LocalClient(AbstractClient):
2436
2411
  # TODO: get full agent state
2437
2412
  return self.server.agent_manager.get_agent_by_id(agent_state.id, actor=self.user)
2438
2413
 
2439
- def update_message(
2440
- self,
2441
- agent_id: str,
2442
- message_id: str,
2443
- role: Optional[MessageRole] = None,
2444
- text: Optional[str] = None,
2445
- name: Optional[str] = None,
2446
- tool_calls: Optional[List[OpenAIToolCall]] = None,
2447
- tool_call_id: Optional[str] = None,
2448
- ) -> Message:
2449
- message = self.server.update_agent_message(
2450
- agent_id=agent_id,
2451
- message_id=message_id,
2452
- request=MessageUpdate(
2453
- role=role,
2454
- content=text,
2455
- name=name,
2456
- tool_calls=tool_calls,
2457
- tool_call_id=tool_call_id,
2458
- ),
2459
- actor=self.user,
2460
- )
2461
- return message
2462
-
2463
2414
  def update_agent(
2464
2415
  self,
2465
2416
  agent_id: str,
@@ -50,7 +50,7 @@ BASE_TOOLS = ["send_message", "conversation_search", "archival_memory_insert", "
50
50
  # Base memory tools CAN be edited, and are added by default by the server
51
51
  BASE_MEMORY_TOOLS = ["core_memory_append", "core_memory_replace"]
52
52
  # Multi agent tools
53
- MULTI_AGENT_TOOLS = ["send_message_to_agent_and_wait_for_reply", "send_message_to_agents_matching_all_tags", "send_message_to_agent_async"]
53
+ MULTI_AGENT_TOOLS = ["send_message_to_agent_and_wait_for_reply", "send_message_to_agents_matching_tags", "send_message_to_agent_async"]
54
54
  # Set of all built-in Letta tools
55
55
  LETTA_TOOL_SET = set(BASE_TOOLS + BASE_MEMORY_TOOLS + MULTI_AGENT_TOOLS)
56
56
 
@@ -2,7 +2,7 @@ import asyncio
2
2
  from typing import TYPE_CHECKING, List
3
3
 
4
4
  from letta.functions.helpers import (
5
- _send_message_to_agents_matching_all_tags_async,
5
+ _send_message_to_agents_matching_tags_async,
6
6
  execute_send_message_to_agent,
7
7
  fire_and_forget_send_to_agent,
8
8
  )
@@ -70,18 +70,19 @@ def send_message_to_agent_async(self: "Agent", message: str, other_agent_id: str
70
70
  return "Successfully sent message"
71
71
 
72
72
 
73
- def send_message_to_agents_matching_all_tags(self: "Agent", message: str, tags: List[str]) -> List[str]:
73
+ def send_message_to_agents_matching_tags(self: "Agent", message: str, match_all: List[str], match_some: List[str]) -> List[str]:
74
74
  """
75
- Sends a message to all agents within the same organization that match all of the specified tags. Messages are dispatched in parallel for improved performance, with retries to handle transient issues and timeouts to ensure responsiveness. This function enforces a limit of 100 agents and does not support pagination (cursor-based queries). Each agent must match all specified tags (`match_all_tags=True`) to be included.
75
+ Sends a message to all agents within the same organization that match the specified tag criteria. Agents must possess *all* of the tags in `match_all` and *at least one* of the tags in `match_some` to receive the message.
76
76
 
77
77
  Args:
78
78
  message (str): The content of the message to be sent to each matching agent.
79
- tags (List[str]): A list of tags that an agent must possess to receive the message.
79
+ match_all (List[str]): A list of tags that an agent must possess to receive the message.
80
+ match_some (List[str]): A list of tags where an agent must have at least one to qualify.
80
81
 
81
82
  Returns:
82
- List[str]: A list of responses from the agents that matched all tags. Each
83
- response corresponds to a single agent. Agents that do not respond will not
84
- have an entry in the returned list.
83
+ List[str]: A list of responses from the agents that matched the filtering criteria. Each
84
+ response corresponds to a single agent. Agents that do not respond will not have an entry
85
+ in the returned list.
85
86
  """
86
87
 
87
- return asyncio.run(_send_message_to_agents_matching_all_tags_async(self, message, tags))
88
+ return asyncio.run(_send_message_to_agents_matching_tags_async(self, message, match_all, match_some))
@@ -518,8 +518,16 @@ def fire_and_forget_send_to_agent(
518
518
  run_in_background_thread(background_task())
519
519
 
520
520
 
521
- async def _send_message_to_agents_matching_all_tags_async(sender_agent: "Agent", message: str, tags: List[str]) -> List[str]:
522
- log_telemetry(sender_agent.logger, "_send_message_to_agents_matching_all_tags_async start", message=message, tags=tags)
521
+ async def _send_message_to_agents_matching_tags_async(
522
+ sender_agent: "Agent", message: str, match_all: List[str], match_some: List[str]
523
+ ) -> List[str]:
524
+ log_telemetry(
525
+ sender_agent.logger,
526
+ "_send_message_to_agents_matching_tags_async start",
527
+ message=message,
528
+ match_all=match_all,
529
+ match_some=match_some,
530
+ )
523
531
  server = get_letta_server()
524
532
 
525
533
  augmented_message = (
@@ -529,9 +537,22 @@ async def _send_message_to_agents_matching_all_tags_async(sender_agent: "Agent",
529
537
  )
530
538
 
531
539
  # Retrieve up to 100 matching agents
532
- log_telemetry(sender_agent.logger, "_send_message_to_agents_matching_all_tags_async listing agents start", message=message, tags=tags)
533
- matching_agents = server.agent_manager.list_agents(actor=sender_agent.user, tags=tags, match_all_tags=True, limit=100)
534
- log_telemetry(sender_agent.logger, "_send_message_to_agents_matching_all_tags_async listing agents finish", message=message, tags=tags)
540
+ log_telemetry(
541
+ sender_agent.logger,
542
+ "_send_message_to_agents_matching_tags_async listing agents start",
543
+ message=message,
544
+ match_all=match_all,
545
+ match_some=match_some,
546
+ )
547
+ matching_agents = server.agent_manager.list_agents_matching_tags(actor=sender_agent.user, match_all=match_all, match_some=match_some)
548
+
549
+ log_telemetry(
550
+ sender_agent.logger,
551
+ "_send_message_to_agents_matching_tags_async listing agents finish",
552
+ message=message,
553
+ match_all=match_all,
554
+ match_some=match_some,
555
+ )
535
556
 
536
557
  # Create a system message
537
558
  messages = [MessageCreate(role=MessageRole.system, content=augmented_message, name=sender_agent.agent_state.name)]
@@ -559,7 +580,13 @@ async def _send_message_to_agents_matching_all_tags_async(sender_agent: "Agent",
559
580
  else:
560
581
  final.append(r)
561
582
 
562
- log_telemetry(sender_agent.logger, "_send_message_to_agents_matching_all_tags_async finish", message=message, tags=tags)
583
+ log_telemetry(
584
+ sender_agent.logger,
585
+ "_send_message_to_agents_matching_tags_async finish",
586
+ message=message,
587
+ match_all=match_all,
588
+ match_some=match_some,
589
+ )
563
590
  return final
564
591
 
565
592
 
@@ -53,6 +53,11 @@ MODEL_LIST = [
53
53
  "name": "claude-3-opus-20240229",
54
54
  "context_window": 200000,
55
55
  },
56
+ # latest
57
+ {
58
+ "name": "claude-3-opus-latest",
59
+ "context_window": 200000,
60
+ },
56
61
  ## Sonnet
57
62
  # 3.0
58
63
  {
@@ -69,11 +74,21 @@ MODEL_LIST = [
69
74
  "name": "claude-3-5-sonnet-20241022",
70
75
  "context_window": 200000,
71
76
  },
77
+ # 3.5 latest
78
+ {
79
+ "name": "claude-3-5-sonnet-latest",
80
+ "context_window": 200000,
81
+ },
72
82
  # 3.7
73
83
  {
74
84
  "name": "claude-3-7-sonnet-20250219",
75
85
  "context_window": 200000,
76
86
  },
87
+ # 3.7 latest
88
+ {
89
+ "name": "claude-3-7-sonnet-latest",
90
+ "context_window": 200000,
91
+ },
77
92
  ## Haiku
78
93
  # 3.0
79
94
  {
@@ -85,6 +100,11 @@ MODEL_LIST = [
85
100
  "name": "claude-3-5-haiku-20241022",
86
101
  "context_window": 200000,
87
102
  },
103
+ # 3.5 latest
104
+ {
105
+ "name": "claude-3-5-haiku-latest",
106
+ "context_window": 200000,
107
+ },
88
108
  ]
89
109
 
90
110
  DUMMY_FIRST_USER_MESSAGE = "User initializing bootup sequence."