langgraph-agent-toolkit 0.7.0__tar.gz → 0.7.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (155) hide show
  1. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.env.example +1 -25
  2. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/CHANGELOG.md +24 -0
  3. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/PKG-INFO +13 -10
  4. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/README.md +3 -0
  5. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/agent_executor.py +6 -1
  6. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/langfuse.py +14 -3
  7. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/settings.py +4 -4
  8. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/pyproject.toml +16 -16
  9. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/agents/test_agent_executor.py +30 -27
  10. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/core/test_prompts.py +2 -0
  11. langgraph_agent_toolkit-0.7.1/uv.lock +4467 -0
  12. langgraph_agent_toolkit-0.7.0/uv.lock +0 -4331
  13. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.coveragerc +0 -0
  14. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.dockerignore +0 -0
  15. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  16. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  17. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  18. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/RELEASE_TEMPLATE/release-template.md +0 -0
  19. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/codecov.yml +0 -0
  20. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/dependabot.yml +0 -0
  21. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/scripts/tag_from_pyproject.sh +0 -0
  22. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/workflows/deploy.yml +0 -0
  23. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/workflows/release.yml +0 -0
  24. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/workflows/sphinx.yml +0 -0
  25. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.github/workflows/test.yml +0 -0
  26. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.gitignore +0 -0
  27. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.pre-commit-config.yaml +0 -0
  28. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/.project-root +0 -0
  29. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/CONTRIBUTING.md +0 -0
  30. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/LICENSE +0 -0
  31. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/Makefile +0 -0
  32. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/clickhouse/.clickhouse.env.example +0 -0
  33. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/langfuse/.langfuse.env.example +0 -0
  34. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/litellm/.litellm.env.example +0 -0
  35. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/litellm/config.example.yaml +0 -0
  36. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/minio/.minio.env.example +0 -0
  37. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/postgres/.postgres.env.example +0 -0
  38. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/configs/redis/.redis.env.example +0 -0
  39. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docker/app/Dockerfile +0 -0
  40. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docker/service/Dockerfile +0 -0
  41. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docker-compose.yaml +0 -0
  42. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/.gitignore +0 -0
  43. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/Makefile +0 -0
  44. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/_static/custom.css +0 -0
  45. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/_templates/class.rst +0 -0
  46. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/_templates/layout.html +0 -0
  47. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/_templates/module.rst +0 -0
  48. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/conf.py +0 -0
  49. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/contributing.rst +0 -0
  50. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/environment_setup.rst +0 -0
  51. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/index.rst +0 -0
  52. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/installation.rst +0 -0
  53. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/make.bat +0 -0
  54. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/media/agent_architecture.excalidraw +0 -0
  55. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/media/agent_architecture.png +0 -0
  56. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/media/agent_diagram.png +0 -0
  57. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/media/logo.svg +0 -0
  58. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/docs/usage.rst +0 -0
  59. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph.json +0 -0
  60. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/__init__.py +0 -0
  61. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/__init__.py +0 -0
  62. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/agent.py +0 -0
  63. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/__init__.py +0 -0
  64. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/__init__.py +0 -0
  65. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/agent.py +0 -0
  66. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/task.py +0 -0
  67. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/bg_task_agent/utils.py +0 -0
  68. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/chatbot/__init__.py +0 -0
  69. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/chatbot/agent.py +0 -0
  70. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/command_agent/__init__.py +0 -0
  71. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/command_agent/agent.py +0 -0
  72. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/interrupt_agent/__init__.py +0 -0
  73. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/interrupt_agent/agent.py +0 -0
  74. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/knowledge_base_agent/__init__.py +0 -0
  75. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/knowledge_base_agent/agent.py +0 -0
  76. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/react/__init__.py +0 -0
  77. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/react/agent.py +0 -0
  78. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/react_so/__init__.py +0 -0
  79. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/react_so/agent.py +0 -0
  80. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/supervisor_agent/__init__.py +0 -0
  81. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/blueprints/supervisor_agent/agent.py +0 -0
  82. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/components/__init__.py +0 -0
  83. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/components/creators/__init__.py +0 -0
  84. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/components/creators/create_react_agent.py +0 -0
  85. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/components/tools.py +0 -0
  86. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/agents/components/utils.py +0 -0
  87. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/client/__init__.py +0 -0
  88. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/client/client.py +0 -0
  89. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/__init__.py +0 -0
  90. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/__init__.py +0 -0
  91. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/base.py +0 -0
  92. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/factory.py +0 -0
  93. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/postgres.py +0 -0
  94. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/sqlite.py +0 -0
  95. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/memory/types.py +0 -0
  96. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/models/__init__.py +0 -0
  97. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/models/chat_openai.py +0 -0
  98. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/models/factory.py +0 -0
  99. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/models/fake.py +0 -0
  100. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/__init__.py +0 -0
  101. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/base.py +0 -0
  102. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/empty.py +0 -0
  103. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/factory.py +0 -0
  104. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/langsmith.py +0 -0
  105. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/observability/types.py +0 -0
  106. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/prompts/__init__.py +0 -0
  107. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/core/prompts/chat_prompt_template.py +0 -0
  108. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/helper/__init__.py +0 -0
  109. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/helper/constants.py +0 -0
  110. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/helper/logging.py +0 -0
  111. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/helper/types.py +0 -0
  112. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/helper/utils.py +0 -0
  113. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/run_agent.py +0 -0
  114. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/run_client.py +0 -0
  115. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/run_service.py +0 -0
  116. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/schema/__init__.py +0 -0
  117. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/schema/models.py +0 -0
  118. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/schema/schema.py +0 -0
  119. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/schema/task_data.py +0 -0
  120. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/__init__.py +0 -0
  121. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/exception_handlers.py +0 -0
  122. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/factory.py +0 -0
  123. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/handler.py +0 -0
  124. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/middleware.py +0 -0
  125. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/routes.py +0 -0
  126. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/types.py +0 -0
  127. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/service/utils.py +0 -0
  128. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/langgraph_agent_toolkit/streamlit_app.py +0 -0
  129. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/postgres-init/create_databases.sql +0 -0
  130. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/01-invoke-proxy.py +0 -0
  131. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/02-test-local-pm.py +0 -0
  132. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/03-test-langfuse-pm.py +0 -0
  133. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/04-test-langsmith-pm.py +0 -0
  134. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/05-test-prompt-types.py +0 -0
  135. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/06-test-custom-chat-prompt-template.py +0 -0
  136. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/07-test-get-chat-history.py +0 -0
  137. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/08-test-update-chat-history.py +0 -0
  138. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/scripts/python/09-test-clear-chat-history.py +0 -0
  139. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/agents/test_service_streaming.py +0 -0
  140. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/app/conftest.py +0 -0
  141. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/app/test_streamlit_app.py +0 -0
  142. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/client/conftest.py +0 -0
  143. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/client/test_client.py +0 -0
  144. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/conftest.py +0 -0
  145. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/core/test_llm.py +0 -0
  146. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/core/test_memory.py +0 -0
  147. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/core/test_observability.py +0 -0
  148. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/core/test_settings.py +0 -0
  149. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/integration/test_docker_e2e.py +0 -0
  150. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/conftest.py +0 -0
  151. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/test_auth.py +0 -0
  152. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/test_factory.py +0 -0
  153. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/test_service.py +0 -0
  154. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/test_service_e2e.py +0 -0
  155. {langgraph_agent_toolkit-0.7.0 → langgraph_agent_toolkit-0.7.1}/tests/service/test_utils.py +0 -0
@@ -85,31 +85,7 @@ OLLAMA_BASE_URL=
85
85
 
86
86
  # Model configurations - use multiline format with line continuation for readability
87
87
  # It can be useful if you want to use different models for different agents or use different models from different providers.
88
- MODEL_CONFIGS={\
89
- "gpt4o": {\
90
- "provider": "azure_openai",\
91
- "name": "gpt-4o",\
92
- "api_key": "azure-key-123",\
93
- "endpoint": "https://your-resource.openai.azure.com/",\
94
- "api_version": "2023-05-15",\
95
- "deployment": "gpt4o-deployment",\
96
- "temperature": 0.7\
97
- },\
98
- "gpt4o-mini": {\
99
- "provider": "azure_openai",\
100
- "name": "gpt-4o-mini",\
101
- "api_key": "azure-key-123",\
102
- "endpoint": "https://your-resource.openai.azure.com/",\
103
- "api_version": "2023-05-15",\
104
- "deployment": "gpt4o-mini-deployment"\
105
- },\
106
- "gemini": {\
107
- "provider": "google_genai",\
108
- "name": "gemini-pro",\
109
- "api_key": "google-key-123",\
110
- "temperature": 0.7\
111
- }\
112
- }
88
+ MODEL_CONFIGS={"router":{"provider":"azure_openai","model_name":"gpt-4o","openai_api_key":"your-azure-key-here","azure_endpoint":"https://your-resource.openai.azure.com/","openai_api_version":"2024-12-01-preview","deployment_name":"gpt-4o-deployment"},"assistant":{"provider":"azure_openai","model_name":"gpt-4o-mini","openai_api_key":"your-azure-key-here","azure_endpoint":"https://your-resource.openai.azure.com/","openai_api_version":"2024-12-01-preview","deployment_name":"gpt-4o-mini-deployment"},"analyzer":{"provider":"google_genai","model_name":"gemini-pro","api_key":"your-google-key-here","temperature":0.7}}
113
89
 
114
90
  # Amazon Bedrock Knowledge Base ID
115
91
  AWS_KB_ID=
@@ -6,6 +6,30 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to
7
7
  [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
8
8
 
9
+ ## [0.7.1]
10
+
11
+ ### Fixed
12
+
13
+ - Agent executor test mock assertion to include additional `environment` and
14
+ `tags` parameters
15
+ - Async test methods missing `@pytest.mark.asyncio` decorator in prompts tests
16
+
17
+ ### Updated
18
+
19
+ - Dependencies to latest versions
20
+ - Agent executor `get_callback_handler` method to pass additional parameters:
21
+ - Added `environment` parameter from settings.ENV_MODE
22
+ - Added `tags` parameter with agent name for better observability tracking
23
+
24
+ ### Improved
25
+
26
+ - Langfuse observability prompt hash detection with fallback mechanism:
27
+ - Enhanced `push_prompt` method to use tags as fallback when commit_message is
28
+ empty
29
+ - Added robust `hasattr` checks for both `commit_message` and `tags`
30
+ attributes
31
+ - Improved logging to show old vs new hash values for better debugging
32
+
9
33
  ## [0.7.0]
10
34
 
11
35
  ### Fixed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: langgraph-agent-toolkit
3
- Version: 0.7.0
3
+ Version: 0.7.1
4
4
  Summary: Full toolkit for running an AI agent service built with LangGraph, FastAPI and Streamlit
5
5
  Project-URL: documentation, https://kryvokhyzha.github.io/langgraph-agent-toolkit
6
6
  Project-URL: repository, https://github.com/kryvokhyzha/langgraph-agent-toolkit
@@ -33,24 +33,24 @@ Requires-Dist: langchain-community~=0.3.24
33
33
  Requires-Dist: langchain-core~=0.3.60
34
34
  Requires-Dist: langgraph-checkpoint-postgres~=2.0.21
35
35
  Requires-Dist: langgraph-checkpoint-sqlite~=2.0.7
36
- Requires-Dist: langgraph-cli[inmem]~=0.2.10
36
+ Requires-Dist: langgraph-cli[inmem]<0.4.0,>=0.2.10
37
37
  Requires-Dist: langgraph-supervisor~=0.0.21
38
38
  Requires-Dist: langgraph~=0.4.5
39
39
  Requires-Dist: loguru~=0.7.3
40
40
  Requires-Dist: multidict>6.3.2
41
+ Requires-Dist: numpy<2.4.0,>=2.2.3; python_version >= '3.13'
41
42
  Requires-Dist: numpy~=1.26.4; python_version <= '3.12'
42
- Requires-Dist: numpy~=2.2.3; python_version >= '3.13'
43
43
  Requires-Dist: onnxruntime~=1.22.0
44
- Requires-Dist: pandas~=2.2.3
44
+ Requires-Dist: pandas<2.4.0,>=2.2.3
45
45
  Requires-Dist: psycopg[binary,pool]~=3.2.4
46
46
  Requires-Dist: pyarrow>=19.0.1
47
- Requires-Dist: pydantic-settings~=2.9.1
47
+ Requires-Dist: pydantic-settings<2.11.0,>=2.9.1
48
48
  Requires-Dist: pydantic~=2.11.1
49
49
  Requires-Dist: pyowm~=3.3.0
50
50
  Requires-Dist: python-dotenv~=1.1.0
51
51
  Requires-Dist: rootutils>=1.0.7
52
52
  Requires-Dist: setuptools>=75.6.0
53
- Requires-Dist: streamlit~=1.45.0
53
+ Requires-Dist: streamlit<1.47,>=1.45
54
54
  Requires-Dist: uvicorn~=0.34.0
55
55
  Requires-Dist: watchdog~=6.0.0
56
56
  Provides-Extra: all-backends
@@ -68,8 +68,8 @@ Requires-Dist: langchain-groq~=0.3.2; extra == 'all-llms'
68
68
  Requires-Dist: langchain-ollama~=0.3.2; extra == 'all-llms'
69
69
  Requires-Dist: langchain-openai~=0.3.16; extra == 'all-llms'
70
70
  Provides-Extra: all-observability
71
- Requires-Dist: langfuse~=2.60.3; extra == 'all-observability'
72
- Requires-Dist: langsmith~=0.3.31; extra == 'all-observability'
71
+ Requires-Dist: langfuse<3.1.0,>=2.60.3; extra == 'all-observability'
72
+ Requires-Dist: langsmith<0.5.0,>=0.3.31; extra == 'all-observability'
73
73
  Provides-Extra: anthropic
74
74
  Requires-Dist: langchain-anthropic~=0.3.12; extra == 'anthropic'
75
75
  Provides-Extra: aws
@@ -90,9 +90,9 @@ Provides-Extra: gunicorn-backend
90
90
  Requires-Dist: gunicorn~=23.0.0; extra == 'gunicorn-backend'
91
91
  Requires-Dist: uvicorn[standard]~=0.34.2; extra == 'gunicorn-backend'
92
92
  Provides-Extra: langfuse
93
- Requires-Dist: langfuse~=2.60.3; extra == 'langfuse'
93
+ Requires-Dist: langfuse<3.1.0,>=2.60.3; extra == 'langfuse'
94
94
  Provides-Extra: langsmith
95
- Requires-Dist: langsmith~=0.3.31; extra == 'langsmith'
95
+ Requires-Dist: langsmith<0.5.0,>=0.3.31; extra == 'langsmith'
96
96
  Provides-Extra: ollama
97
97
  Requires-Dist: langchain-ollama~=0.3.2; extra == 'ollama'
98
98
  Provides-Extra: openai
@@ -150,6 +150,9 @@ Whether you're building a simple chatbot or complex multi-agent system, this
150
150
  toolkit provides the infrastructure to develop, test, and deploy your
151
151
  LangGraph-based agents with confidence.
152
152
 
153
+ You can use [DeepWiki](https://deepwiki.com/kryvokhyzha/langgraph-agent-toolkit)
154
+ to learn more about this repository.
155
+
153
156
  ## 📑 Contents
154
157
 
155
158
  - [Introduction](#-introduction)
@@ -47,6 +47,9 @@ Whether you're building a simple chatbot or complex multi-agent system, this
47
47
  toolkit provides the infrastructure to develop, test, and deploy your
48
48
  LangGraph-based agents with confidence.
49
49
 
50
+ You can use [DeepWiki](https://deepwiki.com/kryvokhyzha/langgraph-agent-toolkit)
51
+ to learn more about this repository.
52
+
50
53
  ## 📑 Contents
51
54
 
52
55
  - [Introduction](#-introduction)
@@ -237,7 +237,12 @@ class AgentExecutor:
237
237
  if agent_config:
238
238
  configurable.update(agent_config)
239
239
 
240
- callback = agent.observability.get_callback_handler(session_id=thread_id, user_id=user_id)
240
+ callback = agent.observability.get_callback_handler(
241
+ session_id=thread_id,
242
+ user_id=user_id,
243
+ environment=settings.ENV_MODE,
244
+ tags=[agent.name],
245
+ )
241
246
 
242
247
  config = RunnableConfig(
243
248
  configurable=configurable,
@@ -67,11 +67,21 @@ class LangfuseObservability(BaseObservabilityPlatform):
67
67
  existing_prompt = langfuse.get_prompt(name=name)
68
68
 
69
69
  # Check if content has changed by comparing hashes
70
- if existing_prompt.commit_message and existing_prompt.commit_message == prompt_hash:
70
+ # First try commit_message, then fall back to tags
71
+ existing_hash = None
72
+ if hasattr(existing_prompt, "commit_message") and existing_prompt.commit_message:
73
+ existing_hash = existing_prompt.commit_message
74
+ elif hasattr(existing_prompt, "tags") and existing_prompt.tags and len(existing_prompt.tags) > 0:
75
+ # Use the first tag as the hash (assuming it contains the prompt hash)
76
+ existing_hash = existing_prompt.tags[0]
77
+
78
+ if existing_hash and existing_hash == prompt_hash:
71
79
  content_changed = False
72
- logger.debug(f"Prompt '{name}' content unchanged")
80
+ logger.debug(f"Prompt '{name}' content unchanged (hash: {existing_hash})")
73
81
  else:
74
- logger.debug(f"Prompt '{name}' content changed from previous version")
82
+ logger.debug(
83
+ f"Prompt '{name}' content changed from previous version (old: {existing_hash}, new: {prompt_hash})"
84
+ )
75
85
  except Exception:
76
86
  logger.debug(f"Existing prompt '{name}' not found, will create a new one")
77
87
 
@@ -95,6 +105,7 @@ class LangfuseObservability(BaseObservabilityPlatform):
95
105
  prompt=prompt_template,
96
106
  labels=labels,
97
107
  type=type_prompt,
108
+ tags=[prompt_hash], # for v2 version
98
109
  commit_message=prompt_hash, # Store hash in commit_message
99
110
  )
100
111
  if existing_prompt is None:
@@ -86,7 +86,7 @@ class Settings(BaseSettings):
86
86
 
87
87
  LANGFUSE_SECRET_KEY: SecretStr | None = None
88
88
  LANGFUSE_PUBLIC_KEY: SecretStr | None = None
89
- LANGFUSE_HOST: Annotated[str, BeforeValidator(check_str_is_http)] = "http://localhost:3000"
89
+ LANGFUSE_HOST: Annotated[str, BeforeValidator(check_str_is_http)] = "https://cloud.langfuse.com"
90
90
 
91
91
  # Database Configuration
92
92
  MEMORY_BACKEND: MemoryBackends = MemoryBackends.SQLITE
@@ -98,9 +98,9 @@ class Settings(BaseSettings):
98
98
  POSTGRES_HOST: str | None = None
99
99
  POSTGRES_PORT: int | None = None
100
100
  POSTGRES_DB: str | None = None
101
- POSTGRES_POOL_SIZE: int = Field(default=10, description="Maximum number of connections in the pool")
102
- POSTGRES_MIN_SIZE: int = Field(default=3, description="Minimum number of connections in the pool")
103
- POSTGRES_MAX_IDLE: int = Field(default=5, description="Maximum number of idle connections")
101
+ POSTGRES_POOL_SIZE: int = Field(default=200, description="Maximum number of connections in the pool")
102
+ POSTGRES_MIN_SIZE: int = Field(default=10, description="Minimum number of connections in the pool")
103
+ POSTGRES_MAX_IDLE: int = Field(default=300, description="Maximum number of idle connections")
104
104
 
105
105
  # Model configurations dictionary
106
106
  MODEL_CONFIGS: Dict[str, Dict[str, Any]] = Field(default_factory=dict)
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "langgraph-agent-toolkit"
7
- version = "0.7.0"
7
+ version = "0.7.1"
8
8
  description = "Full toolkit for running an AI agent service built with LangGraph, FastAPI and Streamlit"
9
9
  readme = "README.md"
10
10
  authors = [{ name = "Roman Kryvokhyzha", email = "kriwohizha@gmail.com" }, { name = "Joshua Carroll", email = "carroll.joshk@gmail.com" }]
@@ -37,22 +37,22 @@ dependencies = [
37
37
  "langchain-core ~= 0.3.60",
38
38
  "langchain-community ~= 0.3.24",
39
39
  "langgraph ~= 0.4.5",
40
- "langgraph-cli[inmem] ~= 0.2.10",
40
+ "langgraph-cli[inmem] >= 0.2.10,< 0.4.0",
41
41
  "langgraph-checkpoint-sqlite ~= 2.0.7",
42
42
  "langgraph-checkpoint-postgres ~= 2.0.21",
43
43
  "langgraph-supervisor ~= 0.0.21",
44
44
  "numpy ~= 1.26.4; python_version <= '3.12'",
45
- "numpy ~= 2.2.3; python_version >= '3.13'",
45
+ "numpy >= 2.2.3,< 2.4.0; python_version >= '3.13'",
46
46
  "onnxruntime ~= 1.22.0",
47
- "pandas ~= 2.2.3",
47
+ "pandas >= 2.2.3,< 2.4.0",
48
48
  "psycopg[binary,pool] ~= 3.2.4",
49
49
  "pyarrow >= 19.0.1",
50
50
  "pydantic ~= 2.11.1",
51
- "pydantic-settings ~= 2.9.1",
51
+ "pydantic-settings >= 2.9.1,< 2.11.0",
52
52
  "pyowm ~= 3.3.0",
53
53
  "python-dotenv ~= 1.1.0",
54
54
  "setuptools >= 75.6.0",
55
- "streamlit ~= 1.45.0",
55
+ "streamlit >= 1.45,< 1.47",
56
56
  "watchdog ~= 6.0.0",
57
57
  "joblib >= 1.4.2",
58
58
  "uvicorn ~= 0.34.0",
@@ -81,7 +81,7 @@ client = [
81
81
  "httpx ~= 0.28.1",
82
82
  "pydantic ~= 2.11.1",
83
83
  "python-dotenv ~= 1.1.0",
84
- "streamlit ~= 1.45.0",
84
+ "streamlit >= 1.45,< 1.47",
85
85
  "watchdog ~= 6.0.0",
86
86
  ]
87
87
 
@@ -158,17 +158,17 @@ all-llms = [
158
158
 
159
159
  # Observability tools and platforms
160
160
  langfuse = [
161
- "langfuse ~= 2.60.3",
162
- ]
161
+ "langfuse >= 2.60.3,< 3.1.0",
162
+ ]
163
163
 
164
- langsmith = [
165
- "langsmith ~= 0.3.31",
166
- ]
164
+ langsmith = [
165
+ "langsmith >= 0.3.31,< 0.5.0",
166
+ ]
167
167
 
168
- all-observability = [
169
- "langfuse ~= 2.60.3",
170
- "langsmith ~= 0.3.31",
171
- ]
168
+ all-observability = [
169
+ "langfuse >= 2.60.3,< 3.1.0",
170
+ "langsmith >= 0.3.31,< 0.5.0",
171
+ ]
172
172
 
173
173
  [project.urls]
174
174
  documentation = "https://kryvokhyzha.github.io/langgraph-agent-toolkit"
@@ -331,38 +331,41 @@ async def test_setup_agent_execution(agent_executor, mock_agent):
331
331
  message_content = "Hello, setup!"
332
332
  input_obj = MockInput(message=message_content)
333
333
 
334
- # Call the setup method directly
335
- agent, input_data, config, run_id = await agent_executor._setup_agent_execution(
336
- agent_id="test-agent",
337
- input=input_obj,
338
- thread_id="test-thread-123",
339
- user_id="test-user-456",
340
- model_name="test-model",
341
- agent_config={"temperature": 0.7},
342
- )
334
+ with patch("langgraph_agent_toolkit.agents.agent_executor.settings") as mock_settings:
335
+ mock_settings.ENV_MODE = "test"
336
+
337
+ # Call the setup method directly
338
+ agent, input_data, config, run_id = await agent_executor._setup_agent_execution(
339
+ agent_id="test-agent",
340
+ input=input_obj,
341
+ thread_id="test-thread-123",
342
+ user_id="test-user-456",
343
+ model_name="test-model",
344
+ agent_config={"temperature": 0.7},
345
+ )
343
346
 
344
- # Verify agent is correct
345
- assert agent is mock_agent
347
+ # Verify agent is correct
348
+ assert agent is mock_agent
346
349
 
347
- # Verify input is a HumanMessage with expected content
348
- assert isinstance(input_data, dict)
349
- assert "messages" in input_data
350
- assert isinstance(input_data["messages"][0], HumanMessage)
351
- assert input_data["messages"][0].content == message_content
350
+ # Verify input is a HumanMessage with expected content
351
+ assert isinstance(input_data, dict)
352
+ assert "messages" in input_data
353
+ assert isinstance(input_data["messages"][0], HumanMessage)
354
+ assert input_data["messages"][0].content == message_content
352
355
 
353
- # Verify config is correct - access as a dictionary, not an object
354
- assert config["configurable"]["thread_id"] == "test-thread-123"
355
- assert config["configurable"]["user_id"] == "test-user-456"
356
- assert config["configurable"]["model_name"] == "test-model"
357
- assert config["configurable"]["temperature"] == 0.7
356
+ # Verify config is correct - access as a dictionary, not an object
357
+ assert config["configurable"]["thread_id"] == "test-thread-123"
358
+ assert config["configurable"]["user_id"] == "test-user-456"
359
+ assert config["configurable"]["model_name"] == "test-model"
360
+ assert config["configurable"]["temperature"] == 0.7
358
361
 
359
- # Verify run_id is a UUID
360
- assert isinstance(run_id, UUID)
362
+ # Verify run_id is a UUID
363
+ assert isinstance(run_id, UUID)
361
364
 
362
- # Verify observability callback was requested with both session_id and user_id
363
- mock_agent.observability.get_callback_handler.assert_called_once_with(
364
- session_id="test-thread-123", user_id="test-user-456"
365
- )
365
+ # Verify observability callback was requested with both session_id and user_id
366
+ mock_agent.observability.get_callback_handler.assert_called_once_with(
367
+ session_id="test-thread-123", user_id="test-user-456", environment="test", tags=["test-agent"]
368
+ )
366
369
 
367
370
 
368
371
  @pytest.mark.asyncio
@@ -402,6 +402,7 @@ class TestObservabilityChatPromptTemplate:
402
402
  template.invoke(input=dict(test_var="test4"))
403
403
  assert mock_platform.pull_prompt.call_count == 2
404
404
 
405
+ @pytest.mark.asyncio
405
406
  async def test_async_invoke(self):
406
407
  """Test asynchronous invocation."""
407
408
  template = ObservabilityChatPromptTemplate.from_observability_platform(
@@ -575,6 +576,7 @@ class TestObservabilityChatPromptTemplate:
575
576
  assert "Follow-up answer" in messages2[4].content
576
577
  assert "Human prompt with human value" in messages2[5].content
577
578
 
579
+ @pytest.mark.asyncio
578
580
  async def test_async_message_placeholder(self):
579
581
  """Test asynchronous handling of MessagesPlaceholder."""
580
582
  # Use the same approach as in test_message_placeholder_handling