solace-agent-mesh 1.4.12__py3-none-any.whl → 1.5.1__py3-none-any.whl

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 solace-agent-mesh might be problematic. Click here for more details.

Files changed (359) hide show
  1. solace_agent_mesh/agent/adk/adk_llm.txt +3 -4
  2. solace_agent_mesh/agent/adk/adk_llm_detail.txt +566 -0
  3. solace_agent_mesh/agent/adk/artifacts/artifacts_llm.txt +1 -1
  4. solace_agent_mesh/agent/adk/callbacks.py +56 -5
  5. solace_agent_mesh/agent/adk/embed_resolving_mcp_toolset.py +3 -1
  6. solace_agent_mesh/agent/adk/intelligent_mcp_callbacks.py +2 -1
  7. solace_agent_mesh/agent/adk/mcp_content_processor.py +2 -1
  8. solace_agent_mesh/agent/adk/models/lite_llm.py +1 -0
  9. solace_agent_mesh/agent/adk/models/models_llm.txt +1 -2
  10. solace_agent_mesh/agent/adk/runner.py +3 -1
  11. solace_agent_mesh/agent/adk/services.py +4 -1
  12. solace_agent_mesh/agent/adk/setup.py +3 -1
  13. solace_agent_mesh/agent/adk/tool_wrapper.py +2 -2
  14. solace_agent_mesh/agent/agent_llm.txt +1 -1
  15. solace_agent_mesh/agent/agent_llm_detail.txt +1702 -0
  16. solace_agent_mesh/agent/protocol/event_handlers.py +4 -14
  17. solace_agent_mesh/agent/protocol/protocol_llm.txt +15 -2
  18. solace_agent_mesh/agent/protocol/protocol_llm_detail.txt +92 -0
  19. solace_agent_mesh/agent/sac/app.py +3 -1
  20. solace_agent_mesh/agent/sac/component.py +55 -22
  21. solace_agent_mesh/agent/sac/sac_llm.txt +15 -1
  22. solace_agent_mesh/agent/sac/sac_llm_detail.txt +200 -0
  23. solace_agent_mesh/agent/sac/task_execution_context.py +73 -0
  24. solace_agent_mesh/agent/testing/testing_llm_detail.txt +68 -0
  25. solace_agent_mesh/agent/tools/audio_tools.py +2 -1
  26. solace_agent_mesh/agent/tools/builtin_artifact_tools.py +3 -1
  27. solace_agent_mesh/agent/tools/builtin_data_analysis_tools.py +3 -1
  28. solace_agent_mesh/agent/tools/dynamic_tool.py +2 -1
  29. solace_agent_mesh/agent/tools/general_agent_tools.py +2 -1
  30. solace_agent_mesh/agent/tools/image_tools.py +2 -1
  31. solace_agent_mesh/agent/tools/peer_agent_tool.py +2 -1
  32. solace_agent_mesh/agent/tools/registry.py +3 -1
  33. solace_agent_mesh/agent/tools/test_tools.py +2 -1
  34. solace_agent_mesh/agent/tools/tools_llm.txt +148 -154
  35. solace_agent_mesh/agent/tools/tools_llm_detail.txt +274 -0
  36. solace_agent_mesh/agent/tools/web_tools.py +2 -1
  37. solace_agent_mesh/agent/utils/artifact_helpers.py +3 -1
  38. solace_agent_mesh/agent/utils/config_parser.py +3 -1
  39. solace_agent_mesh/agent/utils/utils_llm.txt +1 -1
  40. solace_agent_mesh/agent/utils/utils_llm_detail.txt +149 -0
  41. solace_agent_mesh/assets/docs/404.html +3 -3
  42. solace_agent_mesh/assets/docs/assets/js/{b7006a3a.73a79653.js → 032c2d61.f3d37824.js} +1 -1
  43. solace_agent_mesh/assets/docs/assets/js/0bcf40b7.c019ad46.js +1 -0
  44. solace_agent_mesh/assets/docs/assets/js/15ba94aa.932dd2db.js +1 -0
  45. solace_agent_mesh/assets/docs/assets/js/2131ec11.5c7a1f6e.js +1 -0
  46. solace_agent_mesh/assets/docs/assets/js/{2334.622a6395.js → 2334.1cf50a20.js} +1 -1
  47. solace_agent_mesh/assets/docs/assets/js/240a0364.7eac6021.js +1 -0
  48. solace_agent_mesh/assets/docs/assets/js/2e32b5e0.33f5d75b.js +1 -0
  49. solace_agent_mesh/assets/docs/assets/js/341393d4.0fac2613.js +1 -0
  50. solace_agent_mesh/assets/docs/assets/js/{3624.b524e433.js → 3624.0eaa1fd0.js} +1 -1
  51. solace_agent_mesh/assets/docs/assets/js/3a6c6137.f5940cfa.js +1 -0
  52. solace_agent_mesh/assets/docs/assets/js/3ac1795d.76654dd9.js +1 -0
  53. solace_agent_mesh/assets/docs/assets/js/3ff0015d.2be20244.js +1 -0
  54. solace_agent_mesh/assets/docs/assets/js/509e993c.4c7a1a6d.js +1 -0
  55. solace_agent_mesh/assets/docs/assets/js/547e15cc.2cbb060a.js +1 -0
  56. solace_agent_mesh/assets/docs/assets/js/55b7b518.f2b1d1ba.js +1 -0
  57. solace_agent_mesh/assets/docs/assets/js/5c2bd65f.e49689dd.js +1 -0
  58. solace_agent_mesh/assets/docs/assets/js/6063ff4c.ef84f702.js +1 -0
  59. solace_agent_mesh/assets/docs/assets/js/631738c7.a8b1ef8b.js +1 -0
  60. solace_agent_mesh/assets/docs/assets/js/6a520c9d.ba015d81.js +1 -0
  61. solace_agent_mesh/assets/docs/assets/js/6ad8f0bd.39d5851d.js +1 -0
  62. solace_agent_mesh/assets/docs/assets/js/6d84eae0.4a5fbf39.js +1 -0
  63. solace_agent_mesh/assets/docs/assets/js/6fdfefc7.99de744e.js +1 -0
  64. solace_agent_mesh/assets/docs/assets/js/71da7b71.804d6567.js +1 -0
  65. solace_agent_mesh/assets/docs/assets/js/722f809d.965da774.js +1 -0
  66. solace_agent_mesh/assets/docs/assets/js/742f027b.46c07808.js +1 -0
  67. solace_agent_mesh/assets/docs/assets/js/77cf947d.64c9bd6c.js +1 -0
  68. solace_agent_mesh/assets/docs/assets/js/8024126c.56e59919.js +1 -0
  69. solace_agent_mesh/assets/docs/assets/js/81a99df0.07034dd9.js +1 -0
  70. solace_agent_mesh/assets/docs/assets/js/82fbfb93.139a1a1f.js +1 -0
  71. solace_agent_mesh/assets/docs/assets/js/{8591.d7c16be6.js → 8591.5d015485.js} +2 -2
  72. solace_agent_mesh/assets/docs/assets/js/{8731.49e930c2.js → 8731.6c1dbf0c.js} +1 -1
  73. solace_agent_mesh/assets/docs/assets/js/945fb41e.6f4cdffd.js +1 -0
  74. solace_agent_mesh/assets/docs/assets/js/94e8668d.b5ddb7a1.js +1 -0
  75. solace_agent_mesh/assets/docs/assets/js/9bb13469.dd1c9b54.js +1 -0
  76. solace_agent_mesh/assets/docs/assets/js/9e9d0a82.dd810042.js +1 -0
  77. solace_agent_mesh/assets/docs/assets/js/ab9708a8.3e6dd091.js +1 -0
  78. solace_agent_mesh/assets/docs/assets/js/ad71b5ed.60668e9e.js +1 -0
  79. solace_agent_mesh/assets/docs/assets/js/c198a0dc.8f31f867.js +1 -0
  80. solace_agent_mesh/assets/docs/assets/js/c93cbaa0.eaff365e.js +1 -0
  81. solace_agent_mesh/assets/docs/assets/js/da0b5bad.9d369087.js +1 -0
  82. solace_agent_mesh/assets/docs/assets/js/db924877.cbc66f02.js +1 -0
  83. solace_agent_mesh/assets/docs/assets/js/dd817ffc.0aa9630a.js +1 -0
  84. solace_agent_mesh/assets/docs/assets/js/dd81e2b8.d590bc9e.js +1 -0
  85. solace_agent_mesh/assets/docs/assets/js/de5f4c65.e8241890.js +1 -0
  86. solace_agent_mesh/assets/docs/assets/js/de915948.139b4b9c.js +1 -0
  87. solace_agent_mesh/assets/docs/assets/js/e3d9abda.2b916f9e.js +1 -0
  88. solace_agent_mesh/assets/docs/assets/js/e6f9706b.582a78ca.js +1 -0
  89. solace_agent_mesh/assets/docs/assets/js/e92d0134.cf6d6522.js +1 -0
  90. solace_agent_mesh/assets/docs/assets/js/f284c35a.5766a13d.js +1 -0
  91. solace_agent_mesh/assets/docs/assets/js/ff4d71f2.9c0297a6.js +1 -0
  92. solace_agent_mesh/assets/docs/assets/js/main.bd3c34f3.js +2 -0
  93. solace_agent_mesh/assets/docs/assets/js/runtime~main.18dc45dd.js +1 -0
  94. solace_agent_mesh/assets/docs/docs/documentation/components/agents/index.html +143 -0
  95. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → components}/builtin-tools/artifact-management/index.html +7 -7
  96. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → components}/builtin-tools/audio-tools/index.html +7 -7
  97. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → components}/builtin-tools/data-analysis-tools/index.html +8 -8
  98. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → components}/builtin-tools/embeds/index.html +6 -6
  99. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → components}/builtin-tools/index.html +11 -11
  100. solace_agent_mesh/assets/docs/docs/documentation/{concepts → components}/cli/index.html +25 -25
  101. solace_agent_mesh/assets/docs/docs/documentation/components/gateways/index.html +91 -0
  102. solace_agent_mesh/assets/docs/docs/documentation/components/index.html +29 -0
  103. solace_agent_mesh/assets/docs/docs/documentation/components/orchestrator/index.html +55 -0
  104. solace_agent_mesh/assets/docs/docs/documentation/components/plugins/index.html +110 -0
  105. solace_agent_mesh/assets/docs/docs/documentation/deploying/debugging/index.html +104 -0
  106. solace_agent_mesh/assets/docs/docs/documentation/deploying/deployment-options/index.html +57 -0
  107. solace_agent_mesh/assets/docs/docs/documentation/deploying/index.html +25 -0
  108. solace_agent_mesh/assets/docs/docs/documentation/deploying/observability/index.html +59 -0
  109. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → developing}/create-agents/index.html +113 -152
  110. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → developing}/create-gateways/index.html +9 -9
  111. solace_agent_mesh/assets/docs/docs/documentation/{user-guide → developing}/creating-python-tools/index.html +12 -12
  112. solace_agent_mesh/assets/docs/docs/documentation/developing/creating-service-providers/index.html +54 -0
  113. solace_agent_mesh/assets/docs/docs/documentation/developing/index.html +32 -0
  114. solace_agent_mesh/assets/docs/docs/documentation/developing/structure/index.html +55 -0
  115. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/bedrock-agents/index.html +25 -25
  116. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/custom-agent/index.html +13 -13
  117. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/event-mesh-gateway/index.html +11 -11
  118. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/mcp-integration/index.html +10 -10
  119. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/mongodb-integration/index.html +13 -13
  120. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/rag-integration/index.html +13 -13
  121. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/rest-gateway/index.html +10 -10
  122. solace_agent_mesh/assets/docs/docs/documentation/developing/tutorials/slack-integration/index.html +72 -0
  123. solace_agent_mesh/assets/docs/docs/documentation/{tutorials → developing/tutorials}/sql-database/index.html +14 -14
  124. solace_agent_mesh/assets/docs/docs/documentation/enterprise/index.html +33 -0
  125. solace_agent_mesh/assets/docs/docs/documentation/enterprise/installation/index.html +83 -0
  126. solace_agent_mesh/assets/docs/docs/documentation/enterprise/rbac-setup-guide/index.html +222 -0
  127. solace_agent_mesh/assets/docs/docs/documentation/enterprise/single-sign-on/index.html +161 -0
  128. solace_agent_mesh/assets/docs/docs/documentation/getting-started/architecture/index.html +75 -0
  129. solace_agent_mesh/assets/docs/docs/documentation/getting-started/index.html +53 -0
  130. solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +35 -100
  131. solace_agent_mesh/assets/docs/docs/documentation/getting-started/try-agent-mesh/index.html +41 -0
  132. solace_agent_mesh/assets/docs/docs/documentation/{getting-started → installing-and-configuring}/configurations/index.html +56 -50
  133. solace_agent_mesh/assets/docs/docs/documentation/installing-and-configuring/index.html +25 -0
  134. solace_agent_mesh/assets/docs/docs/documentation/installing-and-configuring/installation/index.html +76 -0
  135. solace_agent_mesh/assets/docs/docs/documentation/installing-and-configuring/large_language_models/index.html +63 -0
  136. solace_agent_mesh/assets/docs/docs/documentation/installing-and-configuring/run-project/index.html +142 -0
  137. solace_agent_mesh/assets/docs/docs/documentation/migrations/a2a-upgrade/a2a-gateway-upgrade-to-0.3.0/index.html +100 -0
  138. solace_agent_mesh/assets/docs/docs/documentation/{Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html → migrations/a2a-upgrade/a2a-technical-migration-map/index.html} +10 -11
  139. solace_agent_mesh/assets/docs/img/solace-logo.png +0 -0
  140. solace_agent_mesh/assets/docs/lunr-index-1760121512891.json +1 -0
  141. solace_agent_mesh/assets/docs/lunr-index.json +1 -1
  142. solace_agent_mesh/assets/docs/search-doc-1760121512891.json +1 -0
  143. solace_agent_mesh/assets/docs/search-doc.json +1 -1
  144. solace_agent_mesh/assets/docs/sitemap.xml +1 -1
  145. solace_agent_mesh/cli/__init__.py +1 -1
  146. solace_agent_mesh/client/webui/frontend/static/assets/{authCallback-j1LW-wlq.js → authCallback-DwrxZE0E.js} +1 -1
  147. solace_agent_mesh/client/webui/frontend/static/assets/{client-B9p_nFNA.js → client-DarGQzyw.js} +1 -1
  148. solace_agent_mesh/client/webui/frontend/static/assets/main-2nd1gbaH.js +339 -0
  149. solace_agent_mesh/client/webui/frontend/static/assets/main-DoKXctCM.css +1 -0
  150. solace_agent_mesh/client/webui/frontend/static/assets/{vendor-CS5YMf8a.js → vendor-BKIeiHj_.js} +80 -70
  151. solace_agent_mesh/client/webui/frontend/static/auth-callback.html +3 -3
  152. solace_agent_mesh/client/webui/frontend/static/index.html +4 -4
  153. solace_agent_mesh/common/a2a/a2a_llm.txt +1 -1
  154. solace_agent_mesh/common/a2a/a2a_llm_detail.txt +193 -0
  155. solace_agent_mesh/common/a2a/artifact.py +2 -1
  156. solace_agent_mesh/common/a2a/protocol.py +3 -2
  157. solace_agent_mesh/common/a2a/translation.py +3 -1
  158. solace_agent_mesh/common/a2a_spec/a2a_spec_llm.txt +1 -1
  159. solace_agent_mesh/common/a2a_spec/a2a_spec_llm_detail.txt +736 -0
  160. solace_agent_mesh/common/a2a_spec/schemas/llm_invocation.json +23 -0
  161. solace_agent_mesh/common/a2a_spec/schemas/schemas_llm.txt +93 -15
  162. solace_agent_mesh/common/a2a_spec/schemas/tool_result.json +23 -0
  163. solace_agent_mesh/common/common_llm.txt +24 -39
  164. solace_agent_mesh/common/common_llm_detail.txt +2562 -0
  165. solace_agent_mesh/common/data_parts.py +9 -1
  166. solace_agent_mesh/common/middleware/config_resolver.py +3 -1
  167. solace_agent_mesh/common/middleware/middleware_llm_detail.txt +185 -0
  168. solace_agent_mesh/common/middleware/registry.py +3 -1
  169. solace_agent_mesh/common/sac/sac_llm.txt +1 -1
  170. solace_agent_mesh/common/sac/sac_llm_detail.txt +82 -0
  171. solace_agent_mesh/common/sac/sam_component_base.py +2 -1
  172. solace_agent_mesh/common/sam_events/event_service.py +3 -2
  173. solace_agent_mesh/common/sam_events/sam_events_llm.txt +104 -0
  174. solace_agent_mesh/common/sam_events/sam_events_llm_detail.txt +115 -0
  175. solace_agent_mesh/common/services/employee_service.py +3 -1
  176. solace_agent_mesh/common/services/identity_service.py +2 -1
  177. solace_agent_mesh/common/services/providers/local_file_identity_service.py +2 -1
  178. solace_agent_mesh/common/services/services_llm.txt +57 -6
  179. solace_agent_mesh/common/services/services_llm_detail.txt +459 -0
  180. solace_agent_mesh/common/utils/artifact_utils.py +3 -1
  181. solace_agent_mesh/common/utils/asyncio_macos_fix.py +3 -1
  182. solace_agent_mesh/common/utils/embeds/converter.py +3 -1
  183. solace_agent_mesh/common/utils/embeds/embeds_llm.txt +1 -1
  184. solace_agent_mesh/common/utils/embeds/evaluators.py +2 -1
  185. solace_agent_mesh/common/utils/embeds/modifiers.py +3 -2
  186. solace_agent_mesh/common/utils/embeds/resolver.py +2 -1
  187. solace_agent_mesh/common/utils/initializer.py +3 -1
  188. solace_agent_mesh/common/utils/message_utils.py +2 -1
  189. solace_agent_mesh/common/utils/push_notification_auth.py +3 -2
  190. solace_agent_mesh/common/utils/utils_llm.txt +75 -87
  191. solace_agent_mesh/common/utils/utils_llm_detail.txt +572 -0
  192. solace_agent_mesh/core_a2a/core_a2a_llm_detail.txt +101 -0
  193. solace_agent_mesh/core_a2a/service.py +2 -2
  194. solace_agent_mesh/gateway/base/app.py +3 -2
  195. solace_agent_mesh/gateway/base/base_llm.txt +1 -1
  196. solace_agent_mesh/gateway/base/base_llm_detail.txt +235 -0
  197. solace_agent_mesh/gateway/base/component.py +3 -1
  198. solace_agent_mesh/gateway/base/task_context.py +2 -1
  199. solace_agent_mesh/gateway/gateway_llm.txt +242 -235
  200. solace_agent_mesh/gateway/gateway_llm_detail.txt +3885 -0
  201. solace_agent_mesh/gateway/http_sse/alembic/alembic_llm.txt +295 -0
  202. solace_agent_mesh/gateway/http_sse/alembic/env.py +10 -1
  203. solace_agent_mesh/gateway/http_sse/alembic/versions/20251006_98882922fa59_add_tasks_events_feedback_chat_tasks.py +190 -0
  204. solace_agent_mesh/gateway/http_sse/alembic/versions/versions_llm.txt +155 -0
  205. solace_agent_mesh/gateway/http_sse/alembic.ini +1 -1
  206. solace_agent_mesh/gateway/http_sse/app.py +150 -3
  207. solace_agent_mesh/gateway/http_sse/component.py +372 -61
  208. solace_agent_mesh/gateway/http_sse/components/components_llm.txt +46 -6
  209. solace_agent_mesh/gateway/http_sse/components/task_logger_forwarder.py +109 -0
  210. solace_agent_mesh/gateway/http_sse/components/visualization_forwarder_component.py +4 -2
  211. solace_agent_mesh/gateway/http_sse/dependencies.py +119 -27
  212. solace_agent_mesh/gateway/http_sse/http_sse_llm.txt +172 -172
  213. solace_agent_mesh/gateway/http_sse/http_sse_llm_detail.txt +3278 -0
  214. solace_agent_mesh/gateway/http_sse/main.py +149 -42
  215. solace_agent_mesh/gateway/http_sse/repository/__init__.py +3 -12
  216. solace_agent_mesh/gateway/http_sse/repository/chat_task_repository.py +103 -0
  217. solace_agent_mesh/gateway/http_sse/repository/entities/__init__.py +5 -3
  218. solace_agent_mesh/gateway/http_sse/repository/entities/chat_task.py +75 -0
  219. solace_agent_mesh/gateway/http_sse/repository/entities/entities_llm.txt +263 -0
  220. solace_agent_mesh/gateway/http_sse/repository/entities/feedback.py +20 -0
  221. solace_agent_mesh/gateway/http_sse/repository/entities/session_history.py +0 -16
  222. solace_agent_mesh/gateway/http_sse/repository/entities/task.py +25 -0
  223. solace_agent_mesh/gateway/http_sse/repository/entities/task_event.py +21 -0
  224. solace_agent_mesh/gateway/http_sse/repository/feedback_repository.py +81 -0
  225. solace_agent_mesh/gateway/http_sse/repository/interfaces.py +73 -18
  226. solace_agent_mesh/gateway/http_sse/repository/models/__init__.py +9 -5
  227. solace_agent_mesh/gateway/http_sse/repository/models/chat_task_model.py +31 -0
  228. solace_agent_mesh/gateway/http_sse/repository/models/feedback_model.py +21 -0
  229. solace_agent_mesh/gateway/http_sse/repository/models/models_llm.txt +266 -0
  230. solace_agent_mesh/gateway/http_sse/repository/models/session_model.py +3 -3
  231. solace_agent_mesh/gateway/http_sse/repository/models/task_event_model.py +25 -0
  232. solace_agent_mesh/gateway/http_sse/repository/models/task_model.py +32 -0
  233. solace_agent_mesh/gateway/http_sse/repository/repository_llm.txt +340 -0
  234. solace_agent_mesh/gateway/http_sse/repository/session_repository.py +4 -53
  235. solace_agent_mesh/gateway/http_sse/repository/task_repository.py +173 -0
  236. solace_agent_mesh/gateway/http_sse/routers/agent_cards.py +3 -2
  237. solace_agent_mesh/gateway/http_sse/routers/artifacts.py +3 -3
  238. solace_agent_mesh/gateway/http_sse/routers/auth.py +3 -1
  239. solace_agent_mesh/gateway/http_sse/routers/config.py +29 -6
  240. solace_agent_mesh/gateway/http_sse/routers/dto/dto_llm.txt +346 -0
  241. solace_agent_mesh/gateway/http_sse/routers/dto/requests/__init__.py +3 -3
  242. solace_agent_mesh/gateway/http_sse/routers/dto/requests/requests_llm.txt +83 -0
  243. solace_agent_mesh/gateway/http_sse/routers/dto/requests/session_requests.py +2 -10
  244. solace_agent_mesh/gateway/http_sse/routers/dto/requests/task_requests.py +58 -0
  245. solace_agent_mesh/gateway/http_sse/routers/dto/responses/__init__.py +5 -3
  246. solace_agent_mesh/gateway/http_sse/routers/dto/responses/responses_llm.txt +107 -0
  247. solace_agent_mesh/gateway/http_sse/routers/dto/responses/session_responses.py +1 -15
  248. solace_agent_mesh/gateway/http_sse/routers/dto/responses/task_responses.py +30 -0
  249. solace_agent_mesh/gateway/http_sse/routers/feedback.py +37 -0
  250. solace_agent_mesh/gateway/http_sse/routers/people.py +3 -1
  251. solace_agent_mesh/gateway/http_sse/routers/routers_llm.txt +255 -204
  252. solace_agent_mesh/gateway/http_sse/routers/sessions.py +223 -41
  253. solace_agent_mesh/gateway/http_sse/routers/sse.py +3 -2
  254. solace_agent_mesh/gateway/http_sse/routers/tasks.py +170 -43
  255. solace_agent_mesh/gateway/http_sse/routers/users.py +3 -1
  256. solace_agent_mesh/gateway/http_sse/routers/visualization.py +2 -1
  257. solace_agent_mesh/gateway/http_sse/services/agent_card_service.py +3 -1
  258. solace_agent_mesh/gateway/http_sse/services/data_retention_service.py +273 -0
  259. solace_agent_mesh/gateway/http_sse/services/feedback_service.py +242 -0
  260. solace_agent_mesh/gateway/http_sse/services/people_service.py +2 -82
  261. solace_agent_mesh/gateway/http_sse/services/services_llm.txt +177 -13
  262. solace_agent_mesh/gateway/http_sse/services/session_service.py +154 -85
  263. solace_agent_mesh/gateway/http_sse/services/task_logger_service.py +318 -0
  264. solace_agent_mesh/gateway/http_sse/services/task_service.py +3 -2
  265. solace_agent_mesh/gateway/http_sse/session_manager.py +2 -1
  266. solace_agent_mesh/gateway/http_sse/shared/exception_handlers.py +25 -14
  267. solace_agent_mesh/gateway/http_sse/shared/shared_llm.txt +285 -0
  268. solace_agent_mesh/gateway/http_sse/shared/types.py +7 -0
  269. solace_agent_mesh/gateway/http_sse/sse_event_buffer.py +2 -1
  270. solace_agent_mesh/gateway/http_sse/sse_manager.py +2 -2
  271. solace_agent_mesh/gateway/http_sse/utils/__init__.py +1 -0
  272. solace_agent_mesh/gateway/http_sse/utils/stim_utils.py +32 -0
  273. solace_agent_mesh/gateway/http_sse/utils/utils_llm.txt +47 -0
  274. solace_agent_mesh/solace_agent_mesh_llm.txt +1 -1
  275. solace_agent_mesh/solace_agent_mesh_llm_detail.txt +8599 -0
  276. solace_agent_mesh/templates/gateway_app_template.py +4 -2
  277. solace_agent_mesh/templates/gateway_component_template.py +3 -1
  278. solace_agent_mesh/templates/logging_config_template.ini +22 -45
  279. solace_agent_mesh/templates/plugin_tools_template.py +2 -2
  280. {solace_agent_mesh-1.4.12.dist-info → solace_agent_mesh-1.5.1.dist-info}/METADATA +2 -2
  281. solace_agent_mesh-1.5.1.dist-info/RECORD +504 -0
  282. solace_agent_mesh/agent/adk/invocation_monitor.py +0 -295
  283. solace_agent_mesh/assets/docs/assets/images/sac-flows-80d5b603c6aafd33e87945680ce0abf3.png +0 -0
  284. solace_agent_mesh/assets/docs/assets/images/sac_parts_of_a_component-cb3d0424b1d0c17734c5435cca6b4082.png +0 -0
  285. solace_agent_mesh/assets/docs/assets/js/04989206.a248f00c.js +0 -1
  286. solace_agent_mesh/assets/docs/assets/js/0e682baa.d54b8668.js +0 -1
  287. solace_agent_mesh/assets/docs/assets/js/1023fc19.8a8a9309.js +0 -1
  288. solace_agent_mesh/assets/docs/assets/js/1523c6b4.2645ef68.js +0 -1
  289. solace_agent_mesh/assets/docs/assets/js/166ab619.e27886d9.js +0 -1
  290. solace_agent_mesh/assets/docs/assets/js/1c6e87d2.e056b7e0.js +0 -1
  291. solace_agent_mesh/assets/docs/assets/js/21ceee5f.3bf39250.js +0 -1
  292. solace_agent_mesh/assets/docs/assets/js/2a9cab12.2afaee76.js +0 -1
  293. solace_agent_mesh/assets/docs/assets/js/332e10b5.f7629851.js +0 -1
  294. solace_agent_mesh/assets/docs/assets/js/3d406171.5560fdf9.js +0 -1
  295. solace_agent_mesh/assets/docs/assets/js/42b3f8d8.508ae8db.js +0 -1
  296. solace_agent_mesh/assets/docs/assets/js/442a8107.b5c2532a.js +0 -1
  297. solace_agent_mesh/assets/docs/assets/js/453a82a6.3c6bb61d.js +0 -1
  298. solace_agent_mesh/assets/docs/assets/js/483cef9a.4736f2d8.js +0 -1
  299. solace_agent_mesh/assets/docs/assets/js/4c2787c2.c1290a40.js +0 -1
  300. solace_agent_mesh/assets/docs/assets/js/55f47984.bcd00a86.js +0 -1
  301. solace_agent_mesh/assets/docs/assets/js/5b4258a4.fdfd2325.js +0 -1
  302. solace_agent_mesh/assets/docs/assets/js/664b740a.ba305a89.js +0 -1
  303. solace_agent_mesh/assets/docs/assets/js/75384d09.c19e8b51.js +0 -1
  304. solace_agent_mesh/assets/docs/assets/js/768e31b0.9abcdc48.js +0 -1
  305. solace_agent_mesh/assets/docs/assets/js/85387663.be2bc838.js +0 -1
  306. solace_agent_mesh/assets/docs/assets/js/945fb41e.16e00776.js +0 -1
  307. solace_agent_mesh/assets/docs/assets/js/9a09e75d.92de8cf5.js +0 -1
  308. solace_agent_mesh/assets/docs/assets/js/9eff14a2.d62aad71.js +0 -1
  309. solace_agent_mesh/assets/docs/assets/js/a12a4955.25fbed32.js +0 -1
  310. solace_agent_mesh/assets/docs/assets/js/a3a92b25.af35e313.js +0 -1
  311. solace_agent_mesh/assets/docs/assets/js/aba87c2f.4ddf32f2.js +0 -1
  312. solace_agent_mesh/assets/docs/assets/js/ae0e903d.5fe5203f.js +0 -1
  313. solace_agent_mesh/assets/docs/assets/js/ae4415af.16cc58d3.js +0 -1
  314. solace_agent_mesh/assets/docs/assets/js/bac0be12.17de4316.js +0 -1
  315. solace_agent_mesh/assets/docs/assets/js/c2c06897.87cb1f47.js +0 -1
  316. solace_agent_mesh/assets/docs/assets/js/c835a94d.ce21f0bf.js +0 -1
  317. solace_agent_mesh/assets/docs/assets/js/cc969b05.feef7dcc.js +0 -1
  318. solace_agent_mesh/assets/docs/assets/js/cd3d4052.a19e7d78.js +0 -1
  319. solace_agent_mesh/assets/docs/assets/js/ced92a13.fb92e7ca.js +0 -1
  320. solace_agent_mesh/assets/docs/assets/js/cee5d587.47904f5e.js +0 -1
  321. solace_agent_mesh/assets/docs/assets/js/d6a81ee7.829198f1.js +0 -1
  322. solace_agent_mesh/assets/docs/assets/js/f284c35a.ed8dd236.js +0 -1
  323. solace_agent_mesh/assets/docs/assets/js/f897a61a.126663fe.js +0 -1
  324. solace_agent_mesh/assets/docs/assets/js/fbfa3e75.e144b16c.js +0 -1
  325. solace_agent_mesh/assets/docs/assets/js/main.f67fc9f4.js +0 -2
  326. solace_agent_mesh/assets/docs/assets/js/runtime~main.40527046.js +0 -1
  327. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html +0 -46
  328. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/rbac-setup-guilde/index.html +0 -201
  329. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html +0 -25
  330. solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html +0 -105
  331. solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +0 -144
  332. solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +0 -91
  333. solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +0 -91
  334. solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +0 -55
  335. solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +0 -111
  336. solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +0 -77
  337. solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +0 -48
  338. solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +0 -54
  339. solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +0 -45
  340. solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/litellm_models/index.html +0 -49
  341. solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +0 -76
  342. solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +0 -73
  343. solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +0 -72
  344. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +0 -54
  345. solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +0 -69
  346. solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +0 -59
  347. solace_agent_mesh/assets/docs/lunr-index-1759936913198.json +0 -1
  348. solace_agent_mesh/assets/docs/search-doc-1759936913198.json +0 -1
  349. solace_agent_mesh/client/webui/frontend/static/assets/main-ChRwcV89.css +0 -1
  350. solace_agent_mesh/client/webui/frontend/static/assets/main-DnnE01OM.js +0 -339
  351. solace_agent_mesh/gateway/http_sse/repository/entities/message.py +0 -41
  352. solace_agent_mesh/gateway/http_sse/repository/message_repository.py +0 -84
  353. solace_agent_mesh/gateway/http_sse/repository/models/message_model.py +0 -45
  354. solace_agent_mesh-1.4.12.dist-info/RECORD +0 -448
  355. /solace_agent_mesh/assets/docs/assets/js/{8591.d7c16be6.js.LICENSE.txt → 8591.5d015485.js.LICENSE.txt} +0 -0
  356. /solace_agent_mesh/assets/docs/assets/js/{main.f67fc9f4.js.LICENSE.txt → main.bd3c34f3.js.LICENSE.txt} +0 -0
  357. {solace_agent_mesh-1.4.12.dist-info → solace_agent_mesh-1.5.1.dist-info}/WHEEL +0 -0
  358. {solace_agent_mesh-1.4.12.dist-info → solace_agent_mesh-1.5.1.dist-info}/entry_points.txt +0 -0
  359. {solace_agent_mesh-1.4.12.dist-info → solace_agent_mesh-1.5.1.dist-info}/licenses/LICENSE +0 -0
@@ -12,6 +12,29 @@
12
12
  "request": {
13
13
  "type": "object",
14
14
  "description": "A sanitized representation of the LlmRequest object sent to the model."
15
+ },
16
+ "usage": {
17
+ "type": "object",
18
+ "description": "Token usage information for this LLM call.",
19
+ "properties": {
20
+ "input_tokens": {
21
+ "type": "integer",
22
+ "description": "Number of input/prompt tokens."
23
+ },
24
+ "output_tokens": {
25
+ "type": "integer",
26
+ "description": "Number of output/completion tokens."
27
+ },
28
+ "cached_input_tokens": {
29
+ "type": "integer",
30
+ "description": "Number of cached input tokens (optional)."
31
+ },
32
+ "model": {
33
+ "type": "string",
34
+ "description": "Model identifier used for this call."
35
+ }
36
+ },
37
+ "required": ["input_tokens", "output_tokens", "model"]
15
38
  }
16
39
  },
17
40
  "required": ["type", "request"]
@@ -6,9 +6,9 @@ This directory contains JSON Schema definitions for various agent-to-agent (A2A)
6
6
  ## Files Overview
7
7
  - `agent_progress_update.json` - Schema for general agent progress status messages
8
8
  - `artifact_creation_progress.json` - Schema for tracking file/artifact creation progress with chunked data
9
- - `llm_invocation.json` - Schema for LLM model invocation signals
9
+ - `llm_invocation.json` - Schema for LLM model invocation signals with usage tracking
10
10
  - `tool_invocation_start.json` - Schema for tool execution start notifications
11
- - `tool_result.json` - Schema for tool execution completion results
11
+ - `tool_result.json` - Schema for tool execution completion results with optional LLM usage
12
12
  - `schemas_llm.txt` - Previous developer guide (legacy documentation)
13
13
 
14
14
  ## Developer API Reference
@@ -16,6 +16,12 @@ This directory contains JSON Schema definitions for various agent-to-agent (A2A)
16
16
  ### agent_progress_update.json
17
17
  **Purpose:** Defines the schema for agent progress update signals that communicate human-readable status messages between agents.
18
18
 
19
+ **Import:** Load as JSON schema for validation
20
+ ```python
21
+ import json
22
+ from jsonschema import validate
23
+ ```
24
+
19
25
  **Schema Structure:**
20
26
  ```json
21
27
  {
@@ -48,6 +54,12 @@ validate(instance=data, schema=schema)
48
54
  ### artifact_creation_progress.json
49
55
  **Purpose:** Defines the schema for tracking progress during file or artifact creation operations with chunked data transfer.
50
56
 
57
+ **Import:** Load as JSON schema for validation
58
+ ```python
59
+ import json
60
+ from jsonschema import validate
61
+ ```
62
+
51
63
  **Schema Structure:**
52
64
  ```json
53
65
  {
@@ -84,19 +96,36 @@ validate(instance=data, schema=schema)
84
96
  ```
85
97
 
86
98
  ### llm_invocation.json
87
- **Purpose:** Defines the schema for LLM invocation signals that communicate when an agent is calling a language model.
99
+ **Purpose:** Defines the schema for LLM invocation signals that communicate when an agent is calling a language model, including token usage tracking.
100
+
101
+ **Import:** Load as JSON schema for validation
102
+ ```python
103
+ import json
104
+ from jsonschema import validate
105
+ ```
88
106
 
89
107
  **Schema Structure:**
90
108
  ```json
91
109
  {
92
110
  "type": "llm_invocation",
93
- "request": "object"
111
+ "request": "object",
112
+ "usage": {
113
+ "input_tokens": "integer",
114
+ "output_tokens": "integer",
115
+ "cached_input_tokens": "integer",
116
+ "model": "string"
117
+ }
94
118
  }
95
119
  ```
96
120
 
97
121
  **Properties:**
98
122
  - `type: "llm_invocation"` - Constant identifier for this signal type (required)
99
123
  - `request: object` - Sanitized representation of the LlmRequest object sent to the model (required)
124
+ - `usage: object` - Token usage information for this LLM call (optional)
125
+ - `input_tokens: integer` - Number of input/prompt tokens (required in usage)
126
+ - `output_tokens: integer` - Number of output/completion tokens (required in usage)
127
+ - `cached_input_tokens: integer` - Number of cached input tokens (optional)
128
+ - `model: string` - Model identifier used for this call (required in usage)
100
129
 
101
130
  **Usage Examples:**
102
131
  ```python
@@ -107,13 +136,19 @@ from jsonschema import validate
107
136
  with open('solace_agent_mesh/common/a2a_spec/schemas/llm_invocation.json') as f:
108
137
  schema = json.load(f)
109
138
 
110
- # Valid data example
139
+ # Valid data example with usage tracking
111
140
  data = {
112
141
  "type": "llm_invocation",
113
142
  "request": {
114
143
  "model": "gpt-4",
115
144
  "messages": [{"role": "user", "content": "Analyze this data"}],
116
145
  "temperature": 0.7
146
+ },
147
+ "usage": {
148
+ "input_tokens": 150,
149
+ "output_tokens": 75,
150
+ "cached_input_tokens": 50,
151
+ "model": "gpt-4"
117
152
  }
118
153
  }
119
154
  validate(instance=data, schema=schema)
@@ -122,6 +157,12 @@ validate(instance=data, schema=schema)
122
157
  ### tool_invocation_start.json
123
158
  **Purpose:** Defines the schema for tool invocation start signals that notify when an agent begins executing a tool.
124
159
 
160
+ **Import:** Load as JSON schema for validation
161
+ ```python
162
+ import json
163
+ from jsonschema import validate
164
+ ```
165
+
125
166
  **Schema Structure:**
126
167
  ```json
127
168
  {
@@ -161,7 +202,13 @@ validate(instance=data, schema=schema)
161
202
  ```
162
203
 
163
204
  ### tool_result.json
164
- **Purpose:** Defines the schema for tool execution result signals that communicate the completion and results of tool invocations.
205
+ **Purpose:** Defines the schema for tool execution result signals that communicate the completion and results of tool invocations, with optional LLM usage tracking.
206
+
207
+ **Import:** Load as JSON schema for validation
208
+ ```python
209
+ import json
210
+ from jsonschema import validate
211
+ ```
165
212
 
166
213
  **Schema Structure:**
167
214
  ```json
@@ -169,7 +216,13 @@ validate(instance=data, schema=schema)
169
216
  "type": "tool_result",
170
217
  "tool_name": "string",
171
218
  "result_data": "any",
172
- "function_call_id": "string"
219
+ "function_call_id": "string",
220
+ "llm_usage": {
221
+ "input_tokens": "integer",
222
+ "output_tokens": "integer",
223
+ "cached_input_tokens": "integer",
224
+ "model": "string"
225
+ }
173
226
  }
174
227
  ```
175
228
 
@@ -178,6 +231,11 @@ validate(instance=data, schema=schema)
178
231
  - `tool_name: string` - Name of the tool that was called (required)
179
232
  - `result_data: any` - The data returned by the tool (required, can be any type)
180
233
  - `function_call_id: string` - ID from the LLM's function call that this result corresponds to (required)
234
+ - `llm_usage: object` - Token usage if this tool made LLM calls (optional)
235
+ - `input_tokens: integer` - Total input tokens used by tool's LLM calls (required in llm_usage)
236
+ - `output_tokens: integer` - Total output tokens used by tool's LLM calls (required in llm_usage)
237
+ - `cached_input_tokens: integer` - Number of cached input tokens (optional)
238
+ - `model: string` - Model identifier(s) used by the tool (required in llm_usage)
181
239
 
182
240
  **Usage Examples:**
183
241
  ```python
@@ -188,16 +246,20 @@ from jsonschema import validate
188
246
  with open('solace_agent_mesh/common/a2a_spec/schemas/tool_result.json') as f:
189
247
  schema = json.load(f)
190
248
 
191
- # Valid data example
249
+ # Valid data example with LLM usage
192
250
  data = {
193
251
  "type": "tool_result",
194
- "tool_name": "file_reader",
252
+ "tool_name": "web_search",
195
253
  "result_data": {
196
- "content": "File contents here...",
197
- "size": 1024,
198
- "encoding": "utf-8"
254
+ "results": ["Result 1", "Result 2"],
255
+ "count": 2
199
256
  },
200
- "function_call_id": "call_abc123"
257
+ "function_call_id": "call_abc123",
258
+ "llm_usage": {
259
+ "input_tokens": 200,
260
+ "output_tokens": 100,
261
+ "model": "gpt-4"
262
+ }
201
263
  }
202
264
  validate(instance=data, schema=schema)
203
265
  ```
@@ -207,8 +269,9 @@ validate(instance=data, schema=schema)
207
269
  import json
208
270
  from jsonschema import validate
209
271
  from pathlib import Path
272
+ from typing import Dict, Any
210
273
 
211
- def validate_a2a_signal(signal_data: dict, schema_name: str) -> bool:
274
+ def validate_a2a_signal(signal_data: Dict[str, Any], schema_name: str) -> bool:
212
275
  """Validate A2A signal data against its schema."""
213
276
  schema_path = Path(f"solace_agent_mesh/common/a2a_spec/schemas/{schema_name}.json")
214
277
 
@@ -222,6 +285,12 @@ def validate_a2a_signal(signal_data: dict, schema_name: str) -> bool:
222
285
  print(f"Validation failed: {e}")
223
286
  return False
224
287
 
288
+ def load_schema(schema_name: str) -> Dict[str, Any]:
289
+ """Load a specific A2A signal schema."""
290
+ schema_path = Path(f"solace_agent_mesh/common/a2a_spec/schemas/{schema_name}.json")
291
+ with open(schema_path) as f:
292
+ return json.load(f)
293
+
225
294
  # Example usage
226
295
  progress_data = {
227
296
  "type": "agent_progress_update",
@@ -230,6 +299,15 @@ progress_data = {
230
299
 
231
300
  if validate_a2a_signal(progress_data, "agent_progress_update"):
232
301
  print("Signal is valid!")
302
+
303
+ # Load all schemas for batch validation
304
+ schemas = {
305
+ "agent_progress": load_schema("agent_progress_update"),
306
+ "artifact_progress": load_schema("artifact_creation_progress"),
307
+ "llm_invocation": load_schema("llm_invocation"),
308
+ "tool_start": load_schema("tool_invocation_start"),
309
+ "tool_result": load_schema("tool_result")
310
+ }
233
311
  ```
234
312
 
235
- # content_hash: 3e5a2f693dc3f4536f9c958168677fe2e3a0e18b3dc319891aceccb5ccfdda8a
313
+ # content_hash: 8d0325636918fd8bdabc0ba61bed79ae2b2be06778893406197aebfb7c3e3a21
@@ -19,6 +19,29 @@
19
19
  "function_call_id": {
20
20
  "type": "string",
21
21
  "description": "The ID from the LLM's function call that this result corresponds to."
22
+ },
23
+ "llm_usage": {
24
+ "type": "object",
25
+ "description": "Token usage if this tool made LLM calls.",
26
+ "properties": {
27
+ "input_tokens": {
28
+ "type": "integer",
29
+ "description": "Total input tokens used by tool's LLM calls."
30
+ },
31
+ "output_tokens": {
32
+ "type": "integer",
33
+ "description": "Total output tokens used by tool's LLM calls."
34
+ },
35
+ "cached_input_tokens": {
36
+ "type": "integer",
37
+ "description": "Number of cached input tokens (optional)."
38
+ },
39
+ "model": {
40
+ "type": "string",
41
+ "description": "Model identifier(s) used by the tool."
42
+ }
43
+ },
44
+ "required": ["input_tokens", "output_tokens", "model"]
22
45
  }
23
46
  },
24
47
  "required": ["type", "tool_name", "result_data", "function_call_id"]
@@ -31,6 +31,8 @@ Together, these components form a cohesive ecosystem, enabling developers to eit
31
31
  - `a2a_spec/`: Complete JSON Schema specification for the A2A protocol.
32
32
  - `client/`: Provides a high-level client for discovering and communicating with remote A2A agents.
33
33
  - `middleware/`: A pluggable framework for configuration resolution and system extensibility.
34
+ - `sac/`: Base component framework for Solace Agent Mesh implementations in the Solace AI Connector.
35
+ - `sam_events/`: System-level event messaging for session lifecycle, agent health, and configuration changes.
34
36
  - `server/`: A complete A2A server implementation with JSON-RPC support and task management.
35
37
  - `services/`: Provides shared services like identity management using a factory pattern.
36
38
  - `utils/`: Contains common utility functions and an embedded expression processing system.
@@ -77,6 +79,8 @@ Together, these components form a cohesive ecosystem, enabling developers to eit
77
79
 
78
80
  **Classes/Functions/Constants:**
79
81
  - `DEFAULT_COMMUNICATION_TIMEOUT: int`: Default timeout for communication operations (600 seconds / 10 minutes).
82
+ - `TEXT_ARTIFACT_CONTEXT_MAX_LENGTH_CAPACITY: int`: Maximum number of characters that can be loaded from a text artifact (200,000).
83
+ - `TEXT_ARTIFACT_CONTEXT_DEFAULT_LENGTH: int`: Default number of characters to load from a text artifact (100,000).
80
84
 
81
85
  #### data_parts.py
82
86
  **Purpose:** Defines Pydantic models for structured data payloads used in A2A DataPart objects, corresponding to JSON schemas for agent communication signals.
@@ -91,6 +95,7 @@ Together, these components form a cohesive ecosystem, enabling developers to eit
91
95
  - **`LlmInvocationData`**: Data model for LLM invocation signals.
92
96
  - `type: Literal["llm_invocation"]`: The constant type identifier.
93
97
  - `request: Dict[str, Any]`: A sanitized representation of the LlmRequest object.
98
+ - `usage: Optional[Dict[str, Any]]`: Token usage information for this LLM call.
94
99
  - **`AgentProgressUpdateData`**: Data model for agent progress update signals.
95
100
  - `type: Literal["agent_progress_update"]`: The constant type identifier.
96
101
  - `status_text: str`: A human-readable progress message.
@@ -104,6 +109,7 @@ Together, these components form a cohesive ecosystem, enabling developers to eit
104
109
  - `tool_name: str`: The name of the tool that was called.
105
110
  - `result_data: Any`: The data returned by the tool.
106
111
  - `function_call_id: str`: The ID from the LLM's function call.
112
+ - `llm_usage: Optional[Dict[str, Any]]`: Token usage if this tool made LLM calls.
107
113
 
108
114
  #### exceptions.py
109
115
  **Purpose:** Defines custom exceptions specific to the Solace Agent Mesh system.
@@ -177,6 +183,22 @@ from solace_agent_mesh.common.client import A2AClient, A2ACardResolver
177
183
  from solace_agent_mesh.common.middleware import ConfigResolver, MiddlewareRegistry
178
184
  ```
179
185
 
186
+ #### sac/
187
+ **Purpose:** Base component framework for Solace Agent Mesh implementations in the Solace AI Connector with async operations management
188
+ **Key Exports:** `SamComponentBase`
189
+ **Import Examples:**
190
+ ```python
191
+ from solace_agent_mesh.common.sac.sam_component_base import SamComponentBase
192
+ ```
193
+
194
+ #### sam_events/
195
+ **Purpose:** System-level event messaging for session lifecycle, agent health, and configuration changes separate from A2A task communication
196
+ **Key Exports:** `SamEventService`, `SamEvent`, `SessionDeletedEvent`
197
+ **Import Examples:**
198
+ ```python
199
+ from solace_agent_mesh.common.sam_events import SamEventService, SamEvent, SessionDeletedEvent
200
+ ```
201
+
180
202
  #### server/
181
203
  **Purpose:** A complete, stand-alone server for building A2A-compliant agents, handling HTTP requests, JSON-RPC, and task lifecycle management.
182
204
  **Key Exports:** `A2AServer`, `TaskManager`, `InMemoryTaskManager`
@@ -224,43 +246,6 @@ from solace_agent_mesh.common.types import (
224
246
  TaskState,
225
247
  AgentCard
226
248
  )
227
- from solace_agent_mesh.common.agent_registry import AgentRegistry
228
-
229
- # Create a message
230
- message = Message(
231
- role="user",
232
- parts=[TextPart(text="Hello, can you help me analyze this document?")]
233
- )
234
-
235
- # Translate to ADK format for processing
236
- adk_content = translate_a2a_to_adk_content(message, "[Example]")
237
- print(f"ADK Content: {adk_content}")
238
-
239
- # Generate topic names for communication
240
- namespace = "my-company/ai-agents"
241
- agent_name = "document-analyzer"
242
- gateway_id = "gateway-001"
243
- task_id = str(uuid.uuid4())
244
-
245
- request_topic = get_agent_request_topic(namespace, agent_name)
246
- status_topic = get_gateway_status_topic(namespace, gateway_id, task_id)
247
-
248
- print(f"Request Topic: {request_topic}")
249
- print(f"Status Topic: {status_topic}")
250
-
251
- # Use agent registry to track discovered agents
252
- registry = AgentRegistry()
253
- agent_card = AgentCard(
254
- name="document-analyzer",
255
- display_name="Document Analyzer",
256
- description="Analyzes and extracts information from documents",
257
- url="https://agents.company.com/document-analyzer",
258
- version="1.0.0",
259
- capabilities={"streaming": True, "pushNotifications": False},
260
- skills=[],
261
- peer_agents={}
262
- )
263
-
264
- registry.add_or_update_agent(agent_
249
+ from solace_
265
250
 
266
- # content_hash: 1e02a8692a4f781b66ebf5b56ec8adedbbcfec3a02cc8f1cd02a22b95e057b14
251
+ # content_hash: 4cbf98260b5f5bef314fae44cf680520f4581948d2bfd8b08e7c6455bbcac1bc