letta-client 1.0.0a19__tar.gz → 1.6.0__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-client might be problematic. Click here for more details.
- letta_client-1.6.0/.release-please-manifest.json +3 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/CHANGELOG.md +227 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/CONTRIBUTING.md +1 -1
- letta_client-1.6.0/PKG-INFO +436 -0
- letta_client-1.6.0/README.md +401 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/api.md +121 -37
- {letta_client-1.0.0a19 → letta_client-1.6.0}/pyproject.toml +12 -9
- {letta_client-1.0.0a19 → letta_client-1.6.0}/requirements-dev.lock +62 -50
- {letta_client-1.0.0a19 → letta_client-1.6.0}/requirements.lock +20 -19
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_base_client.py +9 -2
- letta_client-1.6.0/src/letta_client/_client.py +1212 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_files.py +1 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_models.py +29 -12
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_streaming.py +50 -48
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_types.py +3 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_version.py +1 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/__init__.py +42 -0
- letta_client-1.6.0/src/letta_client/resources/access_tokens.py +396 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/__init__.py +14 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/agents.py +606 -472
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/blocks.py +179 -179
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/folders.py +4 -4
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/messages.py +621 -989
- letta_client-1.6.0/src/letta_client/resources/agents/passages.py +638 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/tools.py +105 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/archives/archives.py +122 -112
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/archives/passages.py +5 -5
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/blocks/blocks.py +218 -216
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/folders/folders.py +133 -133
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/groups/groups.py +133 -133
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/groups/messages.py +254 -254
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/identities/identities.py +145 -141
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/identities/properties.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/mcp_servers/mcp_servers.py +105 -674
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/mcp_servers/tools.py +5 -5
- letta_client-1.6.0/src/letta_client/resources/messages.py +348 -0
- letta_client-1.6.0/src/letta_client/resources/passages.py +259 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/runs/messages.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/templates/agents.py +6 -7
- letta_client-1.6.0/src/letta_client/resources/templates/templates.py +540 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/tools.py +251 -170
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/__init__.py +29 -11
- letta_client-1.6.0/src/letta_client/types/access_token_create_params.py +32 -0
- letta_client-1.6.0/src/letta_client/types/access_token_create_response.py +34 -0
- letta_client-1.6.0/src/letta_client/types/access_token_delete_params.py +11 -0
- letta_client-1.6.0/src/letta_client/types/access_token_list_params.py +23 -0
- letta_client-1.6.0/src/letta_client/types/access_token_list_response.py +40 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_create_params.py +89 -6
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_import_file_params.py +19 -4
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_import_file_response.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_state.py +90 -4
- letta_client-1.0.0a19/src/letta_client/types/agent_modify_params.py → letta_client-1.6.0/src/letta_client/types/agent_update_params.py +87 -7
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/__init__.py +13 -5
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/approval_create_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/approval_request_message.py +10 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/approval_response_message.py +12 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/assistant_message.py +9 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/block.py +2 -0
- letta_client-1.0.0a19/src/letta_client/types/agents/block_modify_params.py → letta_client-1.6.0/src/letta_client/types/agents/block_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/event_message.py +5 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/file_list_response.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/folder_list_response.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/hidden_reasoning_message.py +13 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/internal_message.py +30 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_response.py +28 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_streaming_response.py +56 -1
- letta_client-1.6.0/src/letta_client/types/agents/message_compact_params.py +82 -0
- letta_client-1.6.0/src/letta_client/types/agents/message_compact_response.py +13 -0
- letta_client-1.0.0a19/src/letta_client/types/agents/message_send_async_params.py → letta_client-1.6.0/src/letta_client/types/agents/message_create_async_params.py +4 -2
- letta_client-1.0.0a19/src/letta_client/types/agents/message_send_params.py → letta_client-1.6.0/src/letta_client/types/agents/message_create_params.py +9 -7
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_stream_params.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/omitted_reasoning_content.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/omitted_reasoning_content_param.py +4 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_create_params.py +23 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_create_response.py +10 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_list_params.py +28 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_list_response.py +10 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_search_params.py +35 -0
- letta_client-1.6.0/src/letta_client/types/agents/passage_search_response.py +26 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/reasoning_content.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/reasoning_content_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/reasoning_message.py +12 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/redacted_reasoning_content.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/redacted_reasoning_content_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/run.py +7 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/summary_message.py +5 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/system_message.py +11 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_call_message.py +10 -0
- {letta_client-1.0.0a19/src/letta_client/types → letta_client-1.6.0/src/letta_client/types/agents}/tool_execution_result.py +2 -2
- letta_client-1.6.0/src/letta_client/types/agents/tool_run_params.py +16 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/user_message.py +11 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/anthropic_model_settings.py +23 -3
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/anthropic_model_settings_param.py +20 -3
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/archive.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/archive_create_params.py +6 -3
- letta_client-1.0.0a19/src/letta_client/types/archive_modify_params.py → letta_client-1.6.0/src/letta_client/types/archive_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/archives/__init__.py +0 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/azure_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/azure_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/batch_create_params.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/bedrock_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/bedrock_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/block_list_params.py +12 -8
- letta_client-1.0.0a19/src/letta_client/types/block_modify_params.py → letta_client-1.6.0/src/letta_client/types/block_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/child_tool_rule.py +8 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/child_tool_rule_param.py +8 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/conditional_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/conditional_tool_rule_param.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/continue_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/continue_tool_rule_param.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/create_block_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/create_sse_mcp_server_param.py +2 -3
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/create_stdio_mcp_server_param.py +3 -4
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/create_streamable_http_mcp_server_param.py +2 -3
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/deepseek_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/deepseek_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/embedding_config.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/embedding_config_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folder.py +2 -0
- letta_client-1.0.0a19/src/letta_client/types/folder_modify_params.py → letta_client-1.6.0/src/letta_client/types/folder_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/file_list_response.py +6 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/file_upload_response.py +6 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/google_ai_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/google_ai_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/google_vertex_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/google_vertex_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/groq_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/groq_model_settings_param.py +2 -0
- letta_client-1.0.0a19/src/letta_client/types/group_modify_params.py → letta_client-1.6.0/src/letta_client/types/group_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/groups/__init__.py +3 -3
- letta_client-1.0.0a19/src/letta_client/types/groups/message_send_params.py → letta_client-1.6.0/src/letta_client/types/groups/message_create_params.py +4 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/groups/message_stream_params.py +2 -0
- letta_client-1.0.0a19/src/letta_client/types/groups/message_modify_params.py → letta_client-1.6.0/src/letta_client/types/groups/message_update_params.py +2 -2
- letta_client-1.0.0a19/src/letta_client/types/groups/message_modify_response.py → letta_client-1.6.0/src/letta_client/types/groups/message_update_response.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/health_response.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_list_params.py +1 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_property.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_property_param.py +2 -0
- letta_client-1.0.0a19/src/letta_client/types/identity_modify_params.py → letta_client-1.6.0/src/letta_client/types/identity_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/init_tool_rule.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/init_tool_rule_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/json_object_response_format.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/json_object_response_format_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/json_schema_response_format.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/json_schema_response_format_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/llm_config.py +38 -5
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/llm_config_param.py +34 -5
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/max_count_per_step_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/max_count_per_step_tool_rule_param.py +4 -0
- letta_client-1.6.0/src/letta_client/types/mcp_server_create_params.py +23 -0
- letta_client-1.6.0/src/letta_client/types/mcp_server_update_params.py +23 -0
- letta_client-1.0.0a19/src/letta_client/types/mcp_server_modify_response.py → letta_client-1.6.0/src/letta_client/types/mcp_server_update_response.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_servers/tool_run_params.py +1 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/message_create_param.py +2 -0
- letta_client-1.6.0/src/letta_client/types/message_list_params.py +31 -0
- letta_client-1.0.0a19/src/letta_client/types/tool_upsert_base_tools_response.py → letta_client-1.6.0/src/letta_client/types/message_list_response.py +3 -3
- letta_client-1.6.0/src/letta_client/types/message_search_params.py +28 -0
- letta_client-1.6.0/src/letta_client/types/message_search_response.py +124 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/model.py +26 -4
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/openai_model_settings.py +3 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/openai_model_settings_param.py +3 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/parent_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/parent_tool_rule_param.py +4 -0
- letta_client-1.0.0a19/src/letta_client/types/archives/passage_create_response.py → letta_client-1.6.0/src/letta_client/types/passage.py +7 -5
- letta_client-1.6.0/src/letta_client/types/passage_search_params.py +41 -0
- letta_client-1.6.0/src/letta_client/types/passage_search_response.py +25 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/provider_trace.py +11 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/required_before_exit_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/required_before_exit_tool_rule_param.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/requires_approval_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/requires_approval_tool_rule_param.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/runs/usage_retrieve_response.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/sse_mcp_server.py +4 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/stdio_mcp_server.py +4 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/step.py +7 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/stop_reason_type.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/streamable_http_mcp_server.py +4 -2
- letta_client-1.6.0/src/letta_client/types/template_create_params.py +46 -0
- letta_client-1.6.0/src/letta_client/types/template_create_response.py +29 -0
- letta_client-1.6.0/src/letta_client/types/template_delete_response.py +9 -0
- letta_client-1.6.0/src/letta_client/types/template_update_params.py +25 -0
- letta_client-1.6.0/src/letta_client/types/template_update_response.py +13 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/templates/__init__.py +1 -0
- letta_client-1.6.0/src/letta_client/types/templates/agent_create_response.py +20 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/terminal_tool_rule.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/terminal_tool_rule_param.py +4 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/text_response_format.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/text_response_format_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/together_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/together_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tool.py +5 -0
- letta_client-1.6.0/src/letta_client/types/tool_return_message.py +60 -0
- letta_client-1.6.0/src/letta_client/types/tool_search_params.py +27 -0
- letta_client-1.6.0/src/letta_client/types/tool_search_response.py +10 -0
- letta_client-1.6.0/src/letta_client/types/tool_search_result.py +27 -0
- letta_client-1.0.0a19/src/letta_client/types/tool_modify_params.py → letta_client-1.6.0/src/letta_client/types/tool_update_params.py +2 -2
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/update_sse_mcp_server_param.py +7 -9
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/update_stdio_mcp_server_param.py +7 -6
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/update_streamable_http_mcp_server_param.py +7 -9
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/xai_model_settings.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/xai_model_settings_param.py +2 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_blocks.py +124 -124
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_folders.py +13 -13
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_messages.py +325 -895
- letta_client-1.6.0/tests/api_resources/agents/test_passages.py +531 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_tools.py +127 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/archives/test_passages.py +9 -9
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/groups/test_messages.py +285 -285
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/mcp_servers/test_tools.py +2 -1
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/templates/test_agents.py +10 -8
- letta_client-1.6.0/tests/api_resources/test_access_tokens.py +347 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_agents.py +350 -268
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_archives.py +116 -144
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_blocks.py +142 -142
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_folders.py +132 -132
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_groups.py +116 -116
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_identities.py +124 -124
- letta_client-1.6.0/tests/api_resources/test_mcp_servers.py +635 -0
- letta_client-1.6.0/tests/api_resources/test_messages.py +195 -0
- letta_client-1.6.0/tests/api_resources/test_passages.py +123 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_runs.py +2 -2
- letta_client-1.6.0/tests/api_resources/test_templates.py +416 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_tools.py +177 -153
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_client.py +12 -96
- letta_client-1.0.0a19/.release-please-manifest.json +0 -3
- letta_client-1.0.0a19/PKG-INFO +0 -494
- letta_client-1.0.0a19/README.md +0 -460
- letta_client-1.0.0a19/src/letta_client/_client.py +0 -692
- letta_client-1.0.0a19/src/letta_client/resources/templates/templates.py +0 -102
- letta_client-1.0.0a19/src/letta_client/types/agents/message_modify_params.py +0 -70
- letta_client-1.0.0a19/src/letta_client/types/agents/message_modify_response.py +0 -36
- letta_client-1.0.0a19/src/letta_client/types/mcp_server_create_params.py +0 -67
- letta_client-1.0.0a19/src/letta_client/types/mcp_server_modify_params.py +0 -67
- letta_client-1.0.0a19/src/letta_client/types/tool_return_message.py +0 -45
- letta_client-1.0.0a19/tests/api_resources/test_mcp_servers.py +0 -1075
- {letta_client-1.0.0a19 → letta_client-1.6.0}/.gitignore +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/LICENSE +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/SECURITY.md +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/bin/check-release-environment +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/bin/publish-pypi +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/examples/.keep +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/noxfile.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/release-please-config.json +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_compat.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_constants.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_exceptions.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_qs.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_resource.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_compat.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_datetime_parse.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_logs.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_proxy.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_reflection.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_resources_proxy.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_streams.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_sync.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_transform.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_typing.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/_utils/_utils.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/lib/.keep +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/pagination.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/py.typed +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/archives.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/groups.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/agents/identities.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/archives/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/batches/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/batches/batches.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/batches/messages.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/blocks/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/blocks/agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/folders/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/folders/agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/folders/files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/groups/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/identities/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/identities/agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/identities/blocks.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/mcp_servers/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/models/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/models/embeddings.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/models/models.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/runs/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/runs/runs.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/runs/steps.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/runs/usage.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/feedback.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/messages.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/metrics.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/steps.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/steps/trace.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/tags.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/resources/templates/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_environment_variable.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_export_file_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_export_file_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_retrieve_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agent_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/approval_return.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/approval_return_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/block_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/file_close_all_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/file_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/file_open_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/folder_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/group_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/image_content.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/image_content_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/job_status.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/job_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_assistant_message_content_union.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_assistant_message_content_union_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_user_message_content_union.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/letta_user_message_content_union_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_cancel_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_cancel_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_reset_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_role.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/message_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/text_content.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/text_content_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_call.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_call_content.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_call_content_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_call_delta.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_return.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_return_content.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_return_content_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_return_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/tool_update_approval_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/update_assistant_message_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/update_reasoning_message_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/update_system_message_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/agents/update_user_message_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/archive_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/archives/passage_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/batch_job.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/batch_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/batches/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/batches/message_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/block_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/block_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/blocks/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/blocks/agent_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/dynamic_manager_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/embedding_model.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folder_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folder_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/agent_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/agent_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/file_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/folders/file_upload_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/group.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/group_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/group_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/groups/message_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identities/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identities/agent_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identities/block_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identities/property_upsert_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/identity_upsert_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/letta_message_content_union_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/manager_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_server_create_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_server_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_server_refresh_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_server_retrieve_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_servers/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/mcp_servers/tool_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/model_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/model_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/models/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/models/embedding_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/npm_requirement.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/npm_requirement_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/pip_requirement.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/pip_requirement_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/provider_category.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/provider_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/round_robin_manager_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/run_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/runs/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/runs/message_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/runs/message_stream_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/runs/step_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/sleeptime_manager_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/step_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/steps/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/steps/feedback_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/steps/message_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/steps/message_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/steps/metric_retrieve_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/supervisor_manager_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tag_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tag_list_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/templates/agent_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tool_create_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tool_list_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tool_type.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/tool_upsert_params.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/vector_db_provider.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_client/types/voice_sleeptime_manager_param.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/src/letta_sdk/lib/.keep +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_archives.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_groups.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/agents/test_identities.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/archives/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/batches/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/batches/test_messages.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/blocks/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/blocks/test_agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/folders/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/folders/test_agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/folders/test_files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/groups/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/identities/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/identities/test_agents.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/identities/test_blocks.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/identities/test_properties.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/mcp_servers/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/models/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/models/test_embeddings.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/runs/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/runs/test_messages.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/runs/test_steps.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/runs/test_usage.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/steps/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/steps/test_feedback.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/steps/test_messages.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/steps/test_metrics.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/steps/test_trace.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/templates/__init__.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_batches.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_client.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_models.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_steps.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/api_resources/test_tags.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/conftest.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/sample_file.txt +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_deepcopy.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_extract_files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_files.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_models.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_qs.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_required_args.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_response.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_streaming.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_transform.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_utils/test_datetime_parse.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_utils/test_proxy.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/test_utils/test_typing.py +0 -0
- {letta_client-1.0.0a19 → letta_client-1.6.0}/tests/utils.py +0 -0
|
@@ -1,5 +1,232 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.6.0 (2025-12-18)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v1.5.0...v1.6.0](https://github.com/letta-ai/letta-python/compare/v1.5.0...v1.6.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* add compaction response ([2b34802](https://github.com/letta-ai/letta-python/commit/2b348028c316f56d691bcc94595283b05e4c0749))
|
|
10
|
+
|
|
11
|
+
## 1.5.0 (2025-12-18)
|
|
12
|
+
|
|
13
|
+
Full Changelog: [v1.4.0...v1.5.0](https://github.com/letta-ai/letta-python/compare/v1.4.0...v1.5.0)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* add msg id to search endpoint response ([43669d7](https://github.com/letta-ai/letta-python/commit/43669d76a38274d41e0fe7b37608d728b6925829))
|
|
18
|
+
* allow for configuration compaction and return message delta ([203f65e](https://github.com/letta-ai/letta-python/commit/203f65e469c3c44c85eb212f1bdc5c86e1538ed9))
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
### Bug Fixes
|
|
22
|
+
|
|
23
|
+
* use async_to_httpx_files in patch method ([a0095bb](https://github.com/letta-ai/letta-python/commit/a0095bb7bc4c525edc406c8be58ae34f2968d0aa))
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Chores
|
|
27
|
+
|
|
28
|
+
* speedup initial import ([a4a4f90](https://github.com/letta-ai/letta-python/commit/a4a4f90bf8d8e6de1796963181b0ba2d2cf8a9bd))
|
|
29
|
+
|
|
30
|
+
## 1.4.0 (2025-12-15)
|
|
31
|
+
|
|
32
|
+
Full Changelog: [v1.3.3...v1.4.0](https://github.com/letta-ai/letta-python/compare/v1.3.3...v1.4.0)
|
|
33
|
+
|
|
34
|
+
### Features
|
|
35
|
+
|
|
36
|
+
* add `agent_id` to search results ([3d78133](https://github.com/letta-ai/letta-python/commit/3d78133291ee4ed9b77b0f0b5af1f0f7a537cb84))
|
|
37
|
+
* add `compaction_settings` to agents ([42b5520](https://github.com/letta-ai/letta-python/commit/42b5520152785d0b70d6709e4bd1dd6808884d8e))
|
|
38
|
+
* Add max tokens exceeded to stop reasons [LET-6480] ([1c09fbc](https://github.com/letta-ai/letta-python/commit/1c09fbc41f24332a5f89cda9149aa0254d0957e3))
|
|
39
|
+
* add project id scoping backend changes ([a8cbf43](https://github.com/letta-ai/letta-python/commit/a8cbf4366da627d1e18dfeed2911847381e8c90f))
|
|
40
|
+
* refactor summarization and message persistence code ([91165d8](https://github.com/letta-ai/letta-python/commit/91165d808b072441aa06f6dad03b3560c537698c))
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
### Bug Fixes
|
|
44
|
+
|
|
45
|
+
* fix `prompt_acknowledgement` usage ([eb72984](https://github.com/letta-ai/letta-python/commit/eb72984c95c48e653e3c9b4037b5841dc07dca65))
|
|
46
|
+
* **types:** allow pyright to infer TypedDict types within SequenceNotStr ([b2d9116](https://github.com/letta-ai/letta-python/commit/b2d9116b07e59511c33aa8e288c9b0b0bbed1823))
|
|
47
|
+
* use `model` instead of `model_settings` ([07c1bdc](https://github.com/letta-ai/letta-python/commit/07c1bdc08cda66c8b4a6de37ef0a553948e04ece))
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
### Chores
|
|
51
|
+
|
|
52
|
+
* add missing docstrings ([f40eef6](https://github.com/letta-ai/letta-python/commit/f40eef68197f582ca96dc6d9e3234c30e8e3d12a))
|
|
53
|
+
* **docs:** use environment variables for authentication in code snippets ([826753b](https://github.com/letta-ai/letta-python/commit/826753bdc8efe7a56f72046a6d9b1ed10d7dbdfd))
|
|
54
|
+
* **internal:** add missing files argument to base client ([3c49896](https://github.com/letta-ai/letta-python/commit/3c49896c8eec32865f40d406c73922db315b1cd3))
|
|
55
|
+
|
|
56
|
+
## 1.3.3 (2025-12-02)
|
|
57
|
+
|
|
58
|
+
Full Changelog: [v1.3.2...v1.3.3](https://github.com/letta-ai/letta-python/compare/v1.3.2...v1.3.3)
|
|
59
|
+
|
|
60
|
+
### Chores
|
|
61
|
+
|
|
62
|
+
* add letta source header ([#58](https://github.com/letta-ai/letta-python/issues/58)) ([51c6027](https://github.com/letta-ai/letta-python/commit/51c6027b976b17146f25eab52d9442cbe5e3cfa9))
|
|
63
|
+
* add passages convenience sdk methods to agents route ([f515461](https://github.com/letta-ai/letta-python/commit/f5154617a6dfe9c5fcd5aee0e3604470182813e9))
|
|
64
|
+
* update lockfile ([e57249f](https://github.com/letta-ai/letta-python/commit/e57249ff2a30fdbaeba9fd160be44bc1398dec6d))
|
|
65
|
+
|
|
66
|
+
## 1.3.2 (2025-12-01)
|
|
67
|
+
|
|
68
|
+
Full Changelog: [v1.3.1...v1.3.2](https://github.com/letta-ai/letta-python/compare/v1.3.1...v1.3.2)
|
|
69
|
+
|
|
70
|
+
### Features
|
|
71
|
+
|
|
72
|
+
* add delete/create template endpoint ([b3fb93d](https://github.com/letta-ai/letta-python/commit/b3fb93de1b3eb063c02b3d6fdb13df14169d0993))
|
|
73
|
+
* add tracking of advanced usage data (eg caching) [LET-6372] ([eca8dda](https://github.com/letta-ai/letta-python/commit/eca8dda6ab5583ae560e3e714fd5d20f83dabfc7))
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
### Bug Fixes
|
|
77
|
+
|
|
78
|
+
* **core:** distinguish between null and 0 for prompt caching ([00a938f](https://github.com/letta-ai/letta-python/commit/00a938f9b6b92f7330683913701f67cf2ace6e87))
|
|
79
|
+
* ensure streams are always closed ([7efff66](https://github.com/letta-ai/letta-python/commit/7efff66b0da512182aab0f19e007128d39b08ba5))
|
|
80
|
+
* remove project_id from identities list ([77dee4b](https://github.com/letta-ai/letta-python/commit/77dee4b26fcafdc85beb179ae7d34e4ec7ed45bc))
|
|
81
|
+
* remove upsert base tools from sdk ([665ce21](https://github.com/letta-ai/letta-python/commit/665ce21a49cbf9ddc221d014bb84514d376fa19e))
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
### Chores
|
|
85
|
+
|
|
86
|
+
* **deps:** mypy 1.18.1 has a regression, pin to 1.17 ([3468c79](https://github.com/letta-ai/letta-python/commit/3468c7933fe85faf6348ef26f25666df8b26060f))
|
|
87
|
+
* update endpoints ([693d7c9](https://github.com/letta-ai/letta-python/commit/693d7c97ffa94f16eb7f2a33fb6c10dd33078eed))
|
|
88
|
+
|
|
89
|
+
## 1.3.1 (2025-11-26)
|
|
90
|
+
|
|
91
|
+
Full Changelog: [v1.3.0...v1.3.1](https://github.com/letta-ai/letta-python/compare/v1.3.0...v1.3.1)
|
|
92
|
+
|
|
93
|
+
### Features
|
|
94
|
+
|
|
95
|
+
* Fix template alignment ([0380268](https://github.com/letta-ai/letta-python/commit/0380268aab9df514c7d0948e9c31b63953d7b249))
|
|
96
|
+
* query param validation block label, name, and search ([9559f56](https://github.com/letta-ai/letta-python/commit/9559f56e0374603ff3977ee6952b3fb691ab9163))
|
|
97
|
+
* run tool by for a given agent ([4706b60](https://github.com/letta-ai/letta-python/commit/4706b6010115f3a89c82674d40ce7277663c332b))
|
|
98
|
+
* Shub/let 6339 add endpoint for counting non hidden agents [LET-6339] ([cfee192](https://github.com/letta-ai/letta-python/commit/cfee1925329419dfd1f2f65b6e47b74bc24781de))
|
|
99
|
+
* structured outputs for anthropic ([7dd7254](https://github.com/letta-ai/letta-python/commit/7dd72547133d23e171c6bf9d27d54631a10eb144))
|
|
100
|
+
* structured outputs for openai [LET-6233] ([96e56fa](https://github.com/letta-ai/letta-python/commit/96e56fa56612e293d8b7beef6e3d74a216ea07f2))
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
### Chores
|
|
104
|
+
|
|
105
|
+
* add tools search to stainless ([e1dfa06](https://github.com/letta-ai/letta-python/commit/e1dfa064626578158483db163d511af7f153d921))
|
|
106
|
+
|
|
107
|
+
## 1.3.0 (2025-11-25)
|
|
108
|
+
|
|
109
|
+
Full Changelog: [v1.2.0...v1.3.0](https://github.com/letta-ai/letta-python/compare/v1.2.0...v1.3.0)
|
|
110
|
+
|
|
111
|
+
### Features
|
|
112
|
+
|
|
113
|
+
* add messages + passages to stainless.yml ([44aac08](https://github.com/letta-ai/letta-python/commit/44aac08d1d31a4fa1cb7f805dd5de9744c674daa))
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
### Chores
|
|
117
|
+
|
|
118
|
+
* use main branch in sdk repos ([b71fff8](https://github.com/letta-ai/letta-python/commit/b71fff88a4c194f478fe3e5fc0ac1430607c1947))
|
|
119
|
+
|
|
120
|
+
## 1.2.0 (2025-11-25)
|
|
121
|
+
|
|
122
|
+
Full Changelog: [v1.1.2...v1.2.0](https://github.com/letta-ai/letta-python/compare/v1.1.2...v1.2.0)
|
|
123
|
+
|
|
124
|
+
### Features
|
|
125
|
+
|
|
126
|
+
* add search routes ([71094b3](https://github.com/letta-ai/letta-python/commit/71094b371fc636bdc3a8956ce36793b8218a96e0))
|
|
127
|
+
* add support for new model ([03a1d2d](https://github.com/letta-ai/letta-python/commit/03a1d2d9c7fc4b3ba4b7aa14020c3ef5118d5506))
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
### Bug Fixes
|
|
131
|
+
|
|
132
|
+
* disable messages + passages for now ([f6c4e54](https://github.com/letta-ai/letta-python/commit/f6c4e545e0eac72f03829cfd08da2e8dfa37b2b0))
|
|
133
|
+
* properly limit runs query ([eccc942](https://github.com/letta-ai/letta-python/commit/eccc942c424192fed7993024b88edb37b130e434))
|
|
134
|
+
|
|
135
|
+
|
|
136
|
+
### Chores
|
|
137
|
+
|
|
138
|
+
* add Python 3.14 classifier and testing ([4d3c6e8](https://github.com/letta-ai/letta-python/commit/4d3c6e851c009dcb1aa667e459df4788cadf050b))
|
|
139
|
+
|
|
140
|
+
## 1.1.2 (2025-11-21)
|
|
141
|
+
|
|
142
|
+
Full Changelog: [v1.1.1...v1.1.2](https://github.com/letta-ai/letta-python/compare/v1.1.1...v1.1.2)
|
|
143
|
+
|
|
144
|
+
### Bug Fixes
|
|
145
|
+
|
|
146
|
+
* api key not optional for stainless sdk ([6ef0456](https://github.com/letta-ai/letta-python/commit/6ef04566b0e8a0924132684ab22d0a96620f2e28))
|
|
147
|
+
|
|
148
|
+
## 1.1.1 (2025-11-21)
|
|
149
|
+
|
|
150
|
+
Full Changelog: [v1.1.0...v1.1.1](https://github.com/letta-ai/letta-python/compare/v1.1.0...v1.1.1)
|
|
151
|
+
|
|
152
|
+
### Features
|
|
153
|
+
|
|
154
|
+
* parallel tool calling in model settings ([d9fb097](https://github.com/letta-ai/letta-python/commit/d9fb0970aff1e28599f0ed14a69db2127919ce00))
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
### Bug Fixes
|
|
158
|
+
|
|
159
|
+
* create agent for template openapi response schema ([adb1515](https://github.com/letta-ai/letta-python/commit/adb151525142f77e4fcd1331cf8e5e0a17e20f87))
|
|
160
|
+
|
|
161
|
+
## 1.1.0 (2025-11-20)
|
|
162
|
+
|
|
163
|
+
Full Changelog: [v1.0.0...v1.1.0](https://github.com/letta-ai/letta-python/compare/v1.0.0...v1.1.0)
|
|
164
|
+
|
|
165
|
+
### Features
|
|
166
|
+
|
|
167
|
+
* add new letta error message stream response type ([dfa5f65](https://github.com/letta-ai/letta-python/commit/dfa5f6577d26e9b0ad684ebb9123cbbd1637f06d))
|
|
168
|
+
* rename upsert properties endpoint ([7764513](https://github.com/letta-ai/letta-python/commit/7764513a9cf431e4ee97e2e63e11804de480f06f))
|
|
169
|
+
|
|
170
|
+
## 1.0.0 (2025-11-19)
|
|
171
|
+
|
|
172
|
+
Full Changelog: [v1.0.0-alpha.22...v1.0.0](https://github.com/letta-ai/letta-python/compare/v1.0.0-alpha.22...v1.0.0)
|
|
173
|
+
|
|
174
|
+
### Features
|
|
175
|
+
|
|
176
|
+
* add client side access tokens to stainless ([770bfdb](https://github.com/letta-ai/letta-python/commit/770bfdbbd9e77ce0d305295f8c081ca03e6971c0))
|
|
177
|
+
* hack at gpt51 [LET-6178] ([d93a58c](https://github.com/letta-ai/letta-python/commit/d93a58c390c7995cecd890667c76d393dd8834b8))
|
|
178
|
+
* Revert "feat: support anthropic structured outputs [LET-6190]" ([e3aed33](https://github.com/letta-ai/letta-python/commit/e3aed33178bf71fa15e5e739a908cb5bc85d03f4))
|
|
179
|
+
|
|
180
|
+
## 1.0.0-alpha.22 (2025-11-18)
|
|
181
|
+
|
|
182
|
+
Full Changelog: [v1.0.0-alpha.21...v1.0.0-alpha.22](https://github.com/letta-ai/letta-python/compare/v1.0.0-alpha.21...v1.0.0-alpha.22)
|
|
183
|
+
|
|
184
|
+
### Features
|
|
185
|
+
|
|
186
|
+
* make config for mcp_servers and messages.modify nested ([8d9ec52](https://github.com/letta-ai/letta-python/commit/8d9ec52526ede5a82bc950bce56937dba1c2ac1a))
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
### Bug Fixes
|
|
190
|
+
|
|
191
|
+
* make attach/detach routes return None if sdk verion 1.0 ([c8496f1](https://github.com/letta-ai/letta-python/commit/c8496f1fb953b75bc08ea4bbcf61884d5a50c747))
|
|
192
|
+
|
|
193
|
+
## 1.0.0-alpha.21 (2025-11-17)
|
|
194
|
+
|
|
195
|
+
Full Changelog: [v1.0.0-alpha.20...v1.0.0-alpha.21](https://github.com/letta-ai/letta-python/compare/v1.0.0-alpha.20...v1.0.0-alpha.21)
|
|
196
|
+
|
|
197
|
+
### Features
|
|
198
|
+
|
|
199
|
+
* make attach/detach routes return None if version is 1.0 [LET-5844] ([799aa31](https://github.com/letta-ai/letta-python/commit/799aa31b7124a3d9841d3153aff09457d47bded6))
|
|
200
|
+
* move sources to folders ([4b86f41](https://github.com/letta-ai/letta-python/commit/4b86f41014ad19c7751039ad718f7ed3542c8d1a))
|
|
201
|
+
* rename .af parameters [LET-6154] ([90c47e6](https://github.com/letta-ai/letta-python/commit/90c47e6d4bb58e9054c8c63f1707bff086165d06))
|
|
202
|
+
* Revert "feat: make attach/detach routes return None if version is 1.0 [LET-5844]" ([417acb3](https://github.com/letta-ai/letta-python/commit/417acb3c34d6da398a9feb0a2c247f6062703277))
|
|
203
|
+
* support anthropic structured outputs [LET-6190] ([626a22c](https://github.com/letta-ai/letta-python/commit/626a22c4ebc3030072155b84e4c8cb4062a9dae3))
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
### Chores
|
|
207
|
+
|
|
208
|
+
* remove mcp-servers connect for stainless [LET-6166] ([9f1072b](https://github.com/letta-ai/letta-python/commit/9f1072b5998452ac8fd376bf36729c50981e98ba))
|
|
209
|
+
* rename summarize to compact in sdk ([48a3217](https://github.com/letta-ai/letta-python/commit/48a32175cf56f655b02cc25fc62b2861ed2def8d))
|
|
210
|
+
|
|
211
|
+
## 1.0.0-alpha.20 (2025-11-12)
|
|
212
|
+
|
|
213
|
+
Full Changelog: [v1.0.0-alpha.19...v1.0.0-alpha.20](https://github.com/letta-ai/letta-python/compare/v1.0.0-alpha.19...v1.0.0-alpha.20)
|
|
214
|
+
|
|
215
|
+
### Features
|
|
216
|
+
|
|
217
|
+
* deprecate `EmbeddingConfig` from archives ([d6cbbc3](https://github.com/letta-ai/letta-python/commit/d6cbbc39933572367b06194c87affcf35d2c38f6))
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
### Bug Fixes
|
|
221
|
+
|
|
222
|
+
* **compat:** update signatures of `model_dump` and `model_dump_json` for Pydantic v1 ([4724b32](https://github.com/letta-ai/letta-python/commit/4724b328a03756d769f38f5939604131a67ac83d))
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
### Chores
|
|
226
|
+
|
|
227
|
+
* rename send to create and modify to update ([c8e0661](https://github.com/letta-ai/letta-python/commit/c8e0661e694c3511239e806bffba3ef7cda69d25))
|
|
228
|
+
* update stainless send to create ([7f55f59](https://github.com/letta-ai/letta-python/commit/7f55f59807e6a2483ce7ae38bff92f16eb40b5b4))
|
|
229
|
+
|
|
3
230
|
## 1.0.0-alpha.19 (2025-11-12)
|
|
4
231
|
|
|
5
232
|
Full Changelog: [v1.0.0-alpha.18...v1.0.0-alpha.19](https://github.com/letta-ai/letta-python/compare/v1.0.0-alpha.18...v1.0.0-alpha.19)
|
|
@@ -62,7 +62,7 @@ If you’d like to use the repository from source, you can either install from g
|
|
|
62
62
|
To install via git:
|
|
63
63
|
|
|
64
64
|
```sh
|
|
65
|
-
$ pip install git+ssh://git@github.com/letta-ai/letta-python
|
|
65
|
+
$ pip install git+ssh://git@github.com/letta-ai/letta-python.git
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
Alternatively, you can build from source and install the wheel file:
|
|
@@ -0,0 +1,436 @@
|
|
|
1
|
+
Metadata-Version: 2.3
|
|
2
|
+
Name: letta-client
|
|
3
|
+
Version: 1.6.0
|
|
4
|
+
Summary: The official Python library for the letta API
|
|
5
|
+
Project-URL: Homepage, https://github.com/letta-ai/letta-python
|
|
6
|
+
Project-URL: Repository, https://github.com/letta-ai/letta-python
|
|
7
|
+
Author: Letta
|
|
8
|
+
License: Apache-2.0
|
|
9
|
+
Classifier: Intended Audience :: Developers
|
|
10
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
11
|
+
Classifier: Operating System :: MacOS
|
|
12
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
13
|
+
Classifier: Operating System :: OS Independent
|
|
14
|
+
Classifier: Operating System :: POSIX
|
|
15
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
22
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
23
|
+
Classifier: Typing :: Typed
|
|
24
|
+
Requires-Python: >=3.9
|
|
25
|
+
Requires-Dist: anyio<5,>=3.5.0
|
|
26
|
+
Requires-Dist: distro<2,>=1.7.0
|
|
27
|
+
Requires-Dist: httpx<1,>=0.23.0
|
|
28
|
+
Requires-Dist: pydantic<3,>=1.9.0
|
|
29
|
+
Requires-Dist: sniffio
|
|
30
|
+
Requires-Dist: typing-extensions<5,>=4.10
|
|
31
|
+
Provides-Extra: aiohttp
|
|
32
|
+
Requires-Dist: aiohttp; extra == 'aiohttp'
|
|
33
|
+
Requires-Dist: httpx-aiohttp>=0.1.9; extra == 'aiohttp'
|
|
34
|
+
Description-Content-Type: text/markdown
|
|
35
|
+
|
|
36
|
+
# Letta Python SDK
|
|
37
|
+
|
|
38
|
+
[](https://pypi.python.org/pypi/letta-client)
|
|
39
|
+
|
|
40
|
+
Letta is the platform for building stateful agents: open AI with advanced memory that can learn and self-improve over time.
|
|
41
|
+
|
|
42
|
+
### Quicklinks:
|
|
43
|
+
* [**Developer Documentation**](https://docs.letta.com): Learn how to create agents using Python or TypeScript
|
|
44
|
+
* [**Python API Reference**](https://github.com/letta-ai/letta-python/tree/main/./reference.md): Complete Python SDK documentation
|
|
45
|
+
* [**Agent Development Environment (ADE)**](https://docs.letta.com/guides/ade/overview): A no-code UI for building stateful agents
|
|
46
|
+
* [**Letta Cloud**](https://app.letta.com/): The fastest way to try Letta
|
|
47
|
+
|
|
48
|
+
## Get started
|
|
49
|
+
|
|
50
|
+
Install the Letta Python SDK:
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
pip install letta-client
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Simple Hello World example
|
|
57
|
+
|
|
58
|
+
In the example below, we'll create a stateful agent with two memory blocks. We'll initialize the `human` memory block with incorrect information, and correct the agent in our first message - which will trigger the agent to update its own memory with a tool call.
|
|
59
|
+
|
|
60
|
+
*To run the examples, you'll need to get a `LETTA_API_KEY` from [Letta Cloud](https://app.letta.com/api-keys), or run your own self-hosted server (see [our guide](https://docs.letta.com/guides/selfhosting))*
|
|
61
|
+
|
|
62
|
+
```python
|
|
63
|
+
from letta_client import Letta
|
|
64
|
+
|
|
65
|
+
client = Letta(api_key="LETTA_API_KEY")
|
|
66
|
+
# client = Letta(base_url="http://localhost:8283") # if self-hosting
|
|
67
|
+
|
|
68
|
+
agent_state = client.agents.create(
|
|
69
|
+
model="openai/gpt-4o-mini",
|
|
70
|
+
embedding="openai/text-embedding-3-small",
|
|
71
|
+
memory_blocks=[
|
|
72
|
+
{
|
|
73
|
+
"label": "human",
|
|
74
|
+
"value": "The human's name is Chad. They like vibe coding."
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"label": "persona",
|
|
78
|
+
"value": "My name is Sam, a helpful assistant."
|
|
79
|
+
}
|
|
80
|
+
],
|
|
81
|
+
tools=["web_search", "run_code"]
|
|
82
|
+
)
|
|
83
|
+
|
|
84
|
+
print(agent_state.id)
|
|
85
|
+
# agent-d9be...0846
|
|
86
|
+
|
|
87
|
+
response = client.agents.messages.create(
|
|
88
|
+
agent_id=agent_state.id,
|
|
89
|
+
messages=[
|
|
90
|
+
{
|
|
91
|
+
"role": "user",
|
|
92
|
+
"content": "Hey, nice to meet you, my name is Brad."
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
)
|
|
96
|
+
|
|
97
|
+
# the agent will think, then edit its memory using a tool
|
|
98
|
+
for message in response.messages:
|
|
99
|
+
print(message)
|
|
100
|
+
|
|
101
|
+
# The content of this memory block will be something like
|
|
102
|
+
# "The human's name is Brad. They like vibe coding."
|
|
103
|
+
# Fetch this block's content with:
|
|
104
|
+
human_block = client.agents.blocks.retrieve(agent_id=agent_state.id, block_label="human")
|
|
105
|
+
print(human_block.value)
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Core concepts in Letta:
|
|
109
|
+
|
|
110
|
+
Letta is built on the [MemGPT](https://arxiv.org/abs/2310.08560) research paper, which introduced the concept of the "LLM Operating System" for memory management:
|
|
111
|
+
|
|
112
|
+
1. [**Memory Hierarchy**](https://docs.letta.com/guides/agents/memory): Agents have self-editing memory split between in-context and out-of-context memory
|
|
113
|
+
2. [**Memory Blocks**](https://docs.letta.com/guides/agents/memory-blocks): In-context memory is composed of persistent editable blocks
|
|
114
|
+
3. [**Agentic Context Engineering**](https://docs.letta.com/guides/agents/context-engineering): Agents control their context window using tools to edit, delete, or search memory
|
|
115
|
+
4. [**Perpetual Self-Improving Agents**](https://docs.letta.com/guides/agents/overview): Every agent has a perpetual (infinite) message history
|
|
116
|
+
|
|
117
|
+
## Local Development
|
|
118
|
+
|
|
119
|
+
Connect to a local Letta server instead of the cloud:
|
|
120
|
+
|
|
121
|
+
```python
|
|
122
|
+
from letta_client import Letta
|
|
123
|
+
|
|
124
|
+
client = Letta(base_url="http://localhost:8283")
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
Run Letta locally with Docker:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
docker run \
|
|
131
|
+
-v ~/.letta/.persist/pgdata:/var/lib/postgresql/data \
|
|
132
|
+
-p 8283:8283 \
|
|
133
|
+
-e OPENAI_API_KEY="your_key" \
|
|
134
|
+
letta/letta:latest
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
See the [self-hosting guide](https://docs.letta.com/guides/selfhosting) for more options.
|
|
138
|
+
|
|
139
|
+
## Key Features
|
|
140
|
+
|
|
141
|
+
### Memory Management ([full guide](https://docs.letta.com/guides/agents/memory-blocks))
|
|
142
|
+
|
|
143
|
+
Memory blocks are persistent, editable sections of an agent's context window:
|
|
144
|
+
|
|
145
|
+
```python
|
|
146
|
+
# Create agent with memory blocks
|
|
147
|
+
agent = client.agents.create(
|
|
148
|
+
memory_blocks=[
|
|
149
|
+
{"label": "persona", "value": "I'm a helpful assistant."},
|
|
150
|
+
{"label": "human", "value": "User preferences and info."}
|
|
151
|
+
]
|
|
152
|
+
)
|
|
153
|
+
|
|
154
|
+
# Update blocks manually
|
|
155
|
+
client.agents.blocks.update(
|
|
156
|
+
agent_id=agent.id,
|
|
157
|
+
block_label="human",
|
|
158
|
+
value="Updated user information"
|
|
159
|
+
)
|
|
160
|
+
|
|
161
|
+
# Retrieve a block
|
|
162
|
+
block = client.agents.blocks.retrieve(agent_id=agent.id, block_label="human")
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Multi-agent Shared Memory ([full guide](https://docs.letta.com/guides/agents/multi-agent-shared-memory))
|
|
166
|
+
|
|
167
|
+
Memory blocks can be attached to multiple agents. All agents will have an up-to-date view on the contents of the memory block -- if one agent modifies it, the other will see it immediately.
|
|
168
|
+
|
|
169
|
+
Here is how to attach a single memory block to multiple agents:
|
|
170
|
+
|
|
171
|
+
```python
|
|
172
|
+
# Create shared block
|
|
173
|
+
shared_block = client.blocks.create(
|
|
174
|
+
label="organization",
|
|
175
|
+
value="Shared team context"
|
|
176
|
+
)
|
|
177
|
+
|
|
178
|
+
# Attach to multiple agents
|
|
179
|
+
agent1 = client.agents.create(
|
|
180
|
+
memory_blocks=[{"label": "persona", "value": "I am a supervisor"}],
|
|
181
|
+
block_ids=[shared_block.id]
|
|
182
|
+
)
|
|
183
|
+
|
|
184
|
+
agent2 = client.agents.create(
|
|
185
|
+
memory_blocks=[{"label": "persona", "value": "I am a worker"}],
|
|
186
|
+
block_ids=[shared_block.id]
|
|
187
|
+
)
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Sleep-time Agents ([full guide](https://docs.letta.com/guides/agents/architectures/sleeptime))
|
|
191
|
+
|
|
192
|
+
Background agents that share memory with your primary agent:
|
|
193
|
+
|
|
194
|
+
```python
|
|
195
|
+
agent = client.agents.create(
|
|
196
|
+
model="openai/gpt-4o-mini",
|
|
197
|
+
enable_sleeptime=True # creates a sleep-time agent
|
|
198
|
+
)
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
### Agent File Import/Export ([full guide](https://docs.letta.com/guides/agents/agent-file))
|
|
202
|
+
|
|
203
|
+
Save and share agents with the `.af` file format:
|
|
204
|
+
|
|
205
|
+
```python
|
|
206
|
+
# Import agent
|
|
207
|
+
with open('/path/to/agent.af', 'rb') as f:
|
|
208
|
+
agent = client.agents.import_file(file=f)
|
|
209
|
+
|
|
210
|
+
# Export agent
|
|
211
|
+
schema = client.agents.export_file(agent_id=agent.id)
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
### MCP Tools ([full guide](https://docs.letta.com/guides/mcp/overview))
|
|
215
|
+
|
|
216
|
+
Connect to Model Context Protocol servers:
|
|
217
|
+
|
|
218
|
+
```python
|
|
219
|
+
# First, create an MCP server (example: weather server)
|
|
220
|
+
weather_server = client.mcp_servers.create(
|
|
221
|
+
server_name="weather-server",
|
|
222
|
+
config={
|
|
223
|
+
"mcp_server_type": "streamable_http",
|
|
224
|
+
"server_url": "https://weather-mcp.example.com/mcp",
|
|
225
|
+
}
|
|
226
|
+
)
|
|
227
|
+
|
|
228
|
+
# List tools available from the MCP server
|
|
229
|
+
tools = client.mcp_servers.tools.list(weather_server.id)
|
|
230
|
+
|
|
231
|
+
# Create agent with MCP tool
|
|
232
|
+
agent = client.agents.create(
|
|
233
|
+
model="openai/gpt-4o-mini",
|
|
234
|
+
tool_ids=[tool.id]
|
|
235
|
+
)
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### Filesystem ([full guide](https://docs.letta.com/guides/agents/filesystem))
|
|
239
|
+
|
|
240
|
+
Give agents access to files:
|
|
241
|
+
|
|
242
|
+
```python
|
|
243
|
+
# Create folder and upload file
|
|
244
|
+
folder = client.folders.create(
|
|
245
|
+
name="my_folder",
|
|
246
|
+
)
|
|
247
|
+
|
|
248
|
+
with open("file.txt", "rb") as f:
|
|
249
|
+
client.folders.files.upload(file=f, folder_id=folder.id)
|
|
250
|
+
|
|
251
|
+
# Attach to agent
|
|
252
|
+
client.agents.folders.attach(agent_id=agent.id, folder_id=folder.id)
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
### Long-running Agents ([full guide](https://docs.letta.com/guides/agents/long-running))
|
|
256
|
+
|
|
257
|
+
Background execution with resumable streaming:
|
|
258
|
+
|
|
259
|
+
```python
|
|
260
|
+
stream = client.agents.messages.create(
|
|
261
|
+
agent_id=agent.id,
|
|
262
|
+
messages=[{"role": "user", "content": "Analyze this dataset"}],
|
|
263
|
+
background=True
|
|
264
|
+
)
|
|
265
|
+
|
|
266
|
+
run_id = None
|
|
267
|
+
last_seq_id = None
|
|
268
|
+
for chunk in stream:
|
|
269
|
+
run_id = chunk.run_id
|
|
270
|
+
last_seq_id = chunk.seq_id
|
|
271
|
+
|
|
272
|
+
# Resume if disconnected
|
|
273
|
+
for chunk in client.runs.stream(run_id=run_id, starting_after=last_seq_id):
|
|
274
|
+
print(chunk)
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
### Streaming ([full guide](https://docs.letta.com/guides/agents/streaming))
|
|
278
|
+
|
|
279
|
+
Stream responses in real-time:
|
|
280
|
+
|
|
281
|
+
```python
|
|
282
|
+
stream = client.agents.messages.stream(
|
|
283
|
+
agent_id=agent.id,
|
|
284
|
+
messages=[{"role": "user", "content": "Hello!"}]
|
|
285
|
+
)
|
|
286
|
+
|
|
287
|
+
for chunk in stream:
|
|
288
|
+
print(chunk)
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
These methods return an [`APIResponse`](https://github.com/letta-ai/letta-python/tree/main/src/letta_client/_response.py) object.
|
|
292
|
+
|
|
293
|
+
The async client returns an [`AsyncAPIResponse`](https://github.com/letta-ai/letta-python/tree/main/src/letta_client/_response.py) with the same structure, the only difference being `await`able methods for reading the response content.
|
|
294
|
+
|
|
295
|
+
### Message Types ([full guide](https://docs.letta.com/guides/agents/message-types))
|
|
296
|
+
|
|
297
|
+
Agent responses contain different message types. Handle them with the `message_type` discriminator:
|
|
298
|
+
|
|
299
|
+
```python
|
|
300
|
+
messages = client.agents.messages.list(agent_id=agent.id)
|
|
301
|
+
|
|
302
|
+
for message in messages:
|
|
303
|
+
if message.message_type == "user_message":
|
|
304
|
+
print(f"User: {message.content}")
|
|
305
|
+
elif message.message_type == "assistant_message":
|
|
306
|
+
print(f"Agent: {message.content}")
|
|
307
|
+
elif message.message_type == "reasoning_message":
|
|
308
|
+
print(f"Reasoning: {message.reasoning}")
|
|
309
|
+
elif message.message_type == "tool_call_message":
|
|
310
|
+
print(f"Tool: {message.tool_call.name}")
|
|
311
|
+
elif message.message_type == "tool_return_message":
|
|
312
|
+
print(f"Result: {message.tool_return}")
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
## Python Support
|
|
316
|
+
|
|
317
|
+
Full type hints and async support:
|
|
318
|
+
|
|
319
|
+
```python
|
|
320
|
+
from letta_client import Letta
|
|
321
|
+
from letta_client.types import CreateAgentRequest
|
|
322
|
+
|
|
323
|
+
# Sync client
|
|
324
|
+
client = Letta(token="LETTA_API_KEY")
|
|
325
|
+
|
|
326
|
+
# Async client
|
|
327
|
+
from letta_client import AsyncLetta
|
|
328
|
+
|
|
329
|
+
async_client = AsyncLetta(token="LETTA_API_KEY")
|
|
330
|
+
agent = await async_client.agents.create(
|
|
331
|
+
model="openai/gpt-4o-mini",
|
|
332
|
+
memory_blocks=[...]
|
|
333
|
+
)
|
|
334
|
+
```
|
|
335
|
+
|
|
336
|
+
## Error Handling
|
|
337
|
+
|
|
338
|
+
```python
|
|
339
|
+
from letta_client.core.api_error import ApiError
|
|
340
|
+
|
|
341
|
+
try:
|
|
342
|
+
client.agents.messages.create(agent_id=agent_id, messages=[...])
|
|
343
|
+
except ApiError as e:
|
|
344
|
+
print(e.status_code)
|
|
345
|
+
print(e.message)
|
|
346
|
+
print(e.body)
|
|
347
|
+
```
|
|
348
|
+
|
|
349
|
+
## Advanced Configuration
|
|
350
|
+
|
|
351
|
+
### Retries
|
|
352
|
+
|
|
353
|
+
```python
|
|
354
|
+
response = client.agents.create(
|
|
355
|
+
{...},
|
|
356
|
+
request_options={"max_retries": 3} # Default: 2
|
|
357
|
+
)
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### Timeouts
|
|
361
|
+
|
|
362
|
+
```python
|
|
363
|
+
response = client.agents.create(
|
|
364
|
+
{...},
|
|
365
|
+
request_options={"timeout_in_seconds": 30} # Default: 60
|
|
366
|
+
)
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
### Custom Headers
|
|
370
|
+
|
|
371
|
+
```python
|
|
372
|
+
response = client.agents.create(
|
|
373
|
+
{...},
|
|
374
|
+
request_options={
|
|
375
|
+
"additional_headers": {
|
|
376
|
+
"X-Custom-Header": "value"
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
)
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
### Raw Response Access
|
|
383
|
+
|
|
384
|
+
```python
|
|
385
|
+
response = client.agents.with_raw_response.create({...})
|
|
386
|
+
|
|
387
|
+
print(response.headers["X-My-Header"])
|
|
388
|
+
print(response.data) # access the underlying object
|
|
389
|
+
```
|
|
390
|
+
|
|
391
|
+
### Custom HTTP Client
|
|
392
|
+
|
|
393
|
+
```python
|
|
394
|
+
import httpx
|
|
395
|
+
from letta_client import Letta
|
|
396
|
+
|
|
397
|
+
client = Letta(
|
|
398
|
+
httpx_client=httpx.Client(
|
|
399
|
+
proxies="http://my.test.proxy.example.com",
|
|
400
|
+
transport=httpx.HTTPTransport(local_address="0.0.0.0"),
|
|
401
|
+
)
|
|
402
|
+
)
|
|
403
|
+
```
|
|
404
|
+
|
|
405
|
+
## Runtime Compatibility
|
|
406
|
+
|
|
407
|
+
Works with:
|
|
408
|
+
- Python 3.8+
|
|
409
|
+
- Supports async/await
|
|
410
|
+
- Compatible with type checkers (mypy, pyright)
|
|
411
|
+
|
|
412
|
+
## Contributing
|
|
413
|
+
|
|
414
|
+
Letta is an open source project built by over a hundred contributors. There are many ways to get involved in the Letta OSS project!
|
|
415
|
+
|
|
416
|
+
* [**Join the Discord**](https://discord.gg/letta): Chat with the Letta devs and other AI developers.
|
|
417
|
+
* [**Chat on our forum**](https://forum.letta.com/): If you're not into Discord, check out our developer forum.
|
|
418
|
+
* **Follow our socials**: [Twitter/X](https://twitter.com/Letta_AI), [LinkedIn](https://www.linkedin.com/company/letta-ai/), [YouTube](https://www.youtube.com/@letta-ai)
|
|
419
|
+
|
|
420
|
+
This SDK is generated programmatically. For SDK changes, please [open an issue](https://github.com/letta-ai/letta-python/issues).
|
|
421
|
+
|
|
422
|
+
README contributions are always welcome!
|
|
423
|
+
|
|
424
|
+
## Resources
|
|
425
|
+
|
|
426
|
+
- [Documentation](https://docs.letta.com)
|
|
427
|
+
- [Python API Reference](https://github.com/letta-ai/letta-python/tree/main/./reference.md)
|
|
428
|
+
- [Example Applications](https://github.com/letta-ai/letta-chatbot-example)
|
|
429
|
+
|
|
430
|
+
## License
|
|
431
|
+
|
|
432
|
+
MIT
|
|
433
|
+
|
|
434
|
+
---
|
|
435
|
+
|
|
436
|
+
***Legal notices**: By using Letta and related Letta services (such as the Letta endpoint or hosted service), you are agreeing to our [privacy policy](https://www.letta.com/privacy-policy) and [terms of service](https://www.letta.com/terms-of-service).*
|