solace-agent-mesh 1.4.7__py3-none-any.whl → 1.4.8__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 (117) hide show
  1. solace_agent_mesh/agent/sac/component.py +2 -3
  2. solace_agent_mesh/assets/docs/404.html +3 -3
  3. solace_agent_mesh/assets/docs/assets/js/{0e682baa.da822665.js → 0e682baa.d054e1d8.js} +1 -1
  4. solace_agent_mesh/assets/docs/assets/js/166ab619.e27886d9.js +1 -0
  5. solace_agent_mesh/assets/docs/assets/js/453a82a6.3c6bb61d.js +1 -0
  6. solace_agent_mesh/assets/docs/assets/js/{75384d09.1e7d7cb7.js → 75384d09.c19e8b51.js} +1 -1
  7. solace_agent_mesh/assets/docs/assets/js/a3a92b25.af35e313.js +1 -0
  8. solace_agent_mesh/assets/docs/assets/js/{bac0be12.bf0181cf.js → bac0be12.17de4316.js} +1 -1
  9. solace_agent_mesh/assets/docs/assets/js/d6a81ee7.829198f1.js +1 -0
  10. solace_agent_mesh/assets/docs/assets/js/f284c35a.ed8dd236.js +1 -0
  11. solace_agent_mesh/assets/docs/assets/js/{main.11f9f9f3.js → main.86924c42.js} +2 -2
  12. solace_agent_mesh/assets/docs/assets/js/runtime~main.0d2ff2b6.js +1 -0
  13. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html +4 -4
  14. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/rbac-setup-guilde/index.html +4 -4
  15. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html +4 -4
  16. solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html +4 -4
  17. solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html +4 -4
  18. solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +4 -4
  19. solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +4 -4
  20. solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html +4 -4
  21. solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +4 -4
  22. solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +4 -4
  23. solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +4 -4
  24. solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +4 -4
  25. solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +4 -4
  26. solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +4 -4
  27. solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +4 -4
  28. solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html +11 -12
  29. solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/litellm_models/index.html +49 -0
  30. solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +4 -4
  31. solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +4 -4
  32. solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +4 -4
  33. solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html +4 -4
  34. solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html +4 -4
  35. solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html +5 -5
  36. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html +5 -5
  37. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html +4 -4
  38. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html +6 -6
  39. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html +4 -4
  40. solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +4 -4
  41. solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html +4 -4
  42. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html +4 -4
  43. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html +4 -4
  44. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html +4 -4
  45. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html +4 -4
  46. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html +4 -4
  47. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html +4 -4
  48. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html +4 -4
  49. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html +4 -4
  50. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +4 -4
  51. solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +4 -4
  52. solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +4 -4
  53. solace_agent_mesh/assets/docs/lunr-index-1759246102819.json +1 -0
  54. solace_agent_mesh/assets/docs/lunr-index.json +1 -1
  55. solace_agent_mesh/assets/docs/search-doc-1759246102819.json +1 -0
  56. solace_agent_mesh/assets/docs/search-doc.json +1 -1
  57. solace_agent_mesh/assets/docs/sitemap.xml +1 -1
  58. solace_agent_mesh/cli/__init__.py +1 -1
  59. solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py +6 -3
  60. solace_agent_mesh/cli/commands/init_cmd/__init__.py +3 -3
  61. solace_agent_mesh/cli/commands/init_cmd/broker_step.py +1 -1
  62. solace_agent_mesh/cli/commands/init_cmd/env_step.py +1 -1
  63. solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt +4 -4
  64. solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py +12 -1
  65. solace_agent_mesh/cli/commands/plugin_cmd/install_cmd.py +5 -5
  66. solace_agent_mesh/client/webui/frontend/static/assets/main-B0PHV3hm.js +339 -0
  67. solace_agent_mesh/client/webui/frontend/static/index.html +1 -1
  68. solace_agent_mesh/config_portal/backend/common.py +1 -1
  69. solace_agent_mesh/config_portal/frontend/static/client/assets/{_index-bFMKlzKf.js → _index-BNuqpWDc.js} +1 -1
  70. solace_agent_mesh/config_portal/frontend/static/client/assets/{manifest-89db7c30.js → manifest-44d62be6.js} +1 -1
  71. solace_agent_mesh/config_portal/frontend/static/client/index.html +1 -1
  72. solace_agent_mesh/gateway/http_sse/component.py +21 -15
  73. solace_agent_mesh/gateway/http_sse/dependencies.py +84 -88
  74. solace_agent_mesh/gateway/http_sse/main.py +8 -2
  75. solace_agent_mesh/gateway/http_sse/repository/entities/message.py +3 -1
  76. solace_agent_mesh/gateway/http_sse/repository/entities/session.py +3 -1
  77. solace_agent_mesh/gateway/http_sse/repository/interfaces.py +5 -0
  78. solace_agent_mesh/gateway/http_sse/repository/message_repository.py +25 -23
  79. solace_agent_mesh/gateway/http_sse/repository/models/__init__.py +12 -4
  80. solace_agent_mesh/gateway/http_sse/repository/models/message_model.py +19 -1
  81. solace_agent_mesh/gateway/http_sse/repository/models/session_model.py +19 -1
  82. solace_agent_mesh/gateway/http_sse/repository/session_repository.py +46 -42
  83. solace_agent_mesh/gateway/http_sse/routers/artifacts.py +199 -59
  84. solace_agent_mesh/gateway/http_sse/routers/dto/requests/__init__.py +1 -6
  85. solace_agent_mesh/gateway/http_sse/routers/dto/requests/session_requests.py +3 -17
  86. solace_agent_mesh/gateway/http_sse/routers/people.py +4 -37
  87. solace_agent_mesh/gateway/http_sse/routers/sessions.py +33 -68
  88. solace_agent_mesh/gateway/http_sse/routers/tasks.py +54 -28
  89. solace_agent_mesh/gateway/http_sse/services/session_service.py +60 -28
  90. solace_agent_mesh/gateway/http_sse/shared/__init__.py +122 -1
  91. solace_agent_mesh/gateway/http_sse/shared/base_repository.py +278 -0
  92. solace_agent_mesh/gateway/http_sse/shared/database_exceptions.py +274 -0
  93. solace_agent_mesh/gateway/http_sse/shared/database_helpers.py +43 -0
  94. solace_agent_mesh/gateway/http_sse/shared/error_dto.py +107 -0
  95. solace_agent_mesh/gateway/http_sse/shared/exception_handlers.py +192 -0
  96. solace_agent_mesh/gateway/http_sse/shared/exceptions.py +192 -0
  97. solace_agent_mesh/gateway/http_sse/shared/pagination.py +138 -0
  98. solace_agent_mesh/gateway/http_sse/shared/response_utils.py +134 -0
  99. solace_agent_mesh/gateway/http_sse/shared/utils.py +22 -0
  100. solace_agent_mesh/templates/plugin_agent_config_template.yaml +1 -1
  101. solace_agent_mesh/templates/plugin_custom_config_template.yaml +1 -1
  102. solace_agent_mesh/templates/plugin_gateway_config_template.yaml +1 -1
  103. solace_agent_mesh/templates/shared_config.yaml +1 -1
  104. {solace_agent_mesh-1.4.7.dist-info → solace_agent_mesh-1.4.8.dist-info}/METADATA +34 -35
  105. {solace_agent_mesh-1.4.7.dist-info → solace_agent_mesh-1.4.8.dist-info}/RECORD +109 -98
  106. solace_agent_mesh/assets/docs/assets/js/166ab619.bdddc63a.js +0 -1
  107. solace_agent_mesh/assets/docs/assets/js/a3a92b25.6def8980.js +0 -1
  108. solace_agent_mesh/assets/docs/assets/js/beecea0d.ce915979.js +0 -1
  109. solace_agent_mesh/assets/docs/assets/js/f284c35a.525933db.js +0 -1
  110. solace_agent_mesh/assets/docs/assets/js/runtime~main.5922bcf0.js +0 -1
  111. solace_agent_mesh/assets/docs/lunr-index-1759151175744.json +0 -1
  112. solace_agent_mesh/assets/docs/search-doc-1759151175744.json +0 -1
  113. solace_agent_mesh/client/webui/frontend/static/assets/main-BKIoiLSu.js +0 -339
  114. /solace_agent_mesh/assets/docs/assets/js/{main.11f9f9f3.js.LICENSE.txt → main.86924c42.js.LICENSE.txt} +0 -0
  115. {solace_agent_mesh-1.4.7.dist-info → solace_agent_mesh-1.4.8.dist-info}/WHEEL +0 -0
  116. {solace_agent_mesh-1.4.7.dist-info → solace_agent_mesh-1.4.8.dist-info}/entry_points.txt +0 -0
  117. {solace_agent_mesh-1.4.7.dist-info → solace_agent_mesh-1.4.8.dist-info}/licenses/LICENSE +0 -0
@@ -28,7 +28,7 @@ solace_agent_mesh/agent/protocol/event_handlers.py,sha256=qLpQoGsB_8ZazrFmGdPmmC
28
28
  solace_agent_mesh/agent/protocol/protocol_llm.txt,sha256=3-ojfRlRtmmr6RuiAx_r1ib3LzSaRWjJdDaUpM9mZ5E,3929
29
29
  solace_agent_mesh/agent/sac/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
30
  solace_agent_mesh/agent/sac/app.py,sha256=XWfkemxu5KA3NAidJLOO-w9XxuGN8nU05ADQAaJX-Tw,18453
31
- solace_agent_mesh/agent/sac/component.py,sha256=AvHe8jajjPpNOoX6d45mT8ot8nXeWQIJA10G9a9ce_U,132625
31
+ solace_agent_mesh/agent/sac/component.py,sha256=EwdeDA7iFsuf6l41Q-V6FNS-UmJyyXuvOb_RNfihgPY,132711
32
32
  solace_agent_mesh/agent/sac/patch_adk.py,sha256=LQhPvwpEVeeDVUgZD-p8CTxft-jRv_OadMR-gR1uTXk,4266
33
33
  solace_agent_mesh/agent/sac/sac_llm.txt,sha256=KcnVBK8oBuyguMkrCzG773GOQyPqscGxK7VdK2RYYco,9101
34
34
  solace_agent_mesh/agent/sac/task_execution_context.py,sha256=EpX6IWUtlv9ot9aW4_5bjEctJXd-O5Ozmq-FsJE9MBU,7663
@@ -126,10 +126,10 @@ solace_agent_mesh/gateway/base/task_context.py,sha256=sFRRHyvBij-xms1f_VFc8om8-x
126
126
  solace_agent_mesh/gateway/http_sse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
127
127
  solace_agent_mesh/gateway/http_sse/alembic.ini,sha256=jPWjnjnvk5tr691YUcCv-jo7ZApFEgqS01Iz70U93Mc,4650
128
128
  solace_agent_mesh/gateway/http_sse/app.py,sha256=T9fHBRy5HyiG31lrV44q-VxEzHn_aAh2fjddHc6sm-I,6476
129
- solace_agent_mesh/gateway/http_sse/component.py,sha256=v5uD7Ih2bzfHy8QxQrEfPL7w6Bj-IIAfG5F4G728XKg,74087
130
- solace_agent_mesh/gateway/http_sse/dependencies.py,sha256=vj8ByzbhTAnd_oiKvERaO48ieo_37ZwAS6CycKo4LpA,17752
129
+ solace_agent_mesh/gateway/http_sse/component.py,sha256=SdlcVrUmDWkjmo_50jmm0yGc_uYiH2p0wrOLaPTTtoQ,74468
130
+ solace_agent_mesh/gateway/http_sse/dependencies.py,sha256=xgXt4GWFYEamXArxJBEDCRQ4BNIWUgOO2OZ2YakK0t8,17478
131
131
  solace_agent_mesh/gateway/http_sse/http_sse_llm.txt,sha256=Jx6IJWYFl48LmW-xDuCtjpubs0iPY54bt6bLWF_SNUw,14271
132
- solace_agent_mesh/gateway/http_sse/main.py,sha256=3Iw_Dk0eAvI7dK5tAxDrgoyw76uH2dsnU-YVpSyeHfk,24669
132
+ solace_agent_mesh/gateway/http_sse/main.py,sha256=3pyYY6-8hv6L5P0zZuV_FcjX9JeiSahUSdgSNdmlDSE,24995
133
133
  solace_agent_mesh/gateway/http_sse/session_manager.py,sha256=4AReeS6-p-2MqE0AOlBrHSoU-ADC4W7dJ28aVtZbDp0,8538
134
134
  solace_agent_mesh/gateway/http_sse/sse_event_buffer.py,sha256=GsC-kh2D5Fd3A3SZUU0zeGk74FB8617u-YsYMSNLPCI,3210
135
135
  solace_agent_mesh/gateway/http_sse/sse_manager.py,sha256=qCfh9aYwR-nX7Ps8DnumKTmh5bO-QwS4E7AlWjS113o,14638
@@ -142,32 +142,32 @@ solace_agent_mesh/gateway/http_sse/components/__init__.py,sha256=zSidQziYjSrjX5X
142
142
  solace_agent_mesh/gateway/http_sse/components/components_llm.txt,sha256=DF-kLoVXikA0-R_7-xA3gsf6vFq8av4CAvbgJUplSVg,3183
143
143
  solace_agent_mesh/gateway/http_sse/components/visualization_forwarder_component.py,sha256=oHVnv4DK-nP9Mbp6i6CSJ63Ch6lx4epE3Cn0dn3BndQ,3941
144
144
  solace_agent_mesh/gateway/http_sse/repository/__init__.py,sha256=1t6cXo3WzuodK-cEAHLeliadeVMPjBeAwUAzHJ7QiJ0,904
145
- solace_agent_mesh/gateway/http_sse/repository/interfaces.py,sha256=jxP2wdKf3Ow_uSLsw0On3ULzNxOseZehM6G3RgwOunk,1812
146
- solace_agent_mesh/gateway/http_sse/repository/message_repository.py,sha256=MwxDNbBbn4saDmucQwQsaR5PHgu_mPjZOXRRPEMTijs,2746
147
- solace_agent_mesh/gateway/http_sse/repository/session_repository.py,sha256=VBr_sYyfSCwL_mL1nj7Wf3z6O_rtslss8vfQZBTLhpA,4737
145
+ solace_agent_mesh/gateway/http_sse/repository/interfaces.py,sha256=-aJedG0BNHeUCRklu8Og4lSmChlbx_k8VDu5Bj_dalM,1955
146
+ solace_agent_mesh/gateway/http_sse/repository/message_repository.py,sha256=MQRL-GhERpsYNcjWa0lwL9iFVgVMqd8djpx-yjgzTR0,3137
147
+ solace_agent_mesh/gateway/http_sse/repository/session_repository.py,sha256=yUDZC1jXVLO8DMcSWhbo8kI1MYVo-EeIMlaW_7CkpLo,5095
148
148
  solace_agent_mesh/gateway/http_sse/repository/entities/__init__.py,sha256=VLhwNk7X3ZsVqDQytNkqwA4xQON0W3P-kojV6ZCgw_c,204
149
- solace_agent_mesh/gateway/http_sse/repository/entities/message.py,sha256=YPhPGRxRlX8iwuiVVoO2FaIHFx2x434dmY33lduSqvo,1186
150
- solace_agent_mesh/gateway/http_sse/repository/entities/session.py,sha256=ezCFWJ3zyJz3WzKd2Cp9AEEtc5KClq47iRSOAn7Ehek,1249
149
+ solace_agent_mesh/gateway/http_sse/repository/entities/message.py,sha256=FqMWh_p9sTEE3AbamcZjQp6doZmxwdYapcMOMAt6IbY,1251
150
+ solace_agent_mesh/gateway/http_sse/repository/entities/session.py,sha256=CCLnj10NCP3wcG7WH0QRRYSSu2eR13idia7SDCzprUk,1314
151
151
  solace_agent_mesh/gateway/http_sse/repository/entities/session_history.py,sha256=uDSEt6Tp8vcYxaeODTn5SVAFnuF9lOsIabctI-I4_Dc,328
152
- solace_agent_mesh/gateway/http_sse/repository/models/__init__.py,sha256=PiusowOAMYGcjUPiyre2yF964JqhXvjjNFukxS-5wjk,207
152
+ solace_agent_mesh/gateway/http_sse/repository/models/__init__.py,sha256=99HmlFGIf27DoMLBW7FRZpM3XAIeFvkKYUK0YU3zRQw,426
153
153
  solace_agent_mesh/gateway/http_sse/repository/models/base.py,sha256=_LoXoFISq4X7eFK4Mnoa8yuUcQWfZnAhV1Nqa2tOw6c,130
154
- solace_agent_mesh/gateway/http_sse/repository/models/message_model.py,sha256=LpNgjxMkbFcGq1g7JnUdHu8rO6_TIQlAG9r1uFzfUK8,755
155
- solace_agent_mesh/gateway/http_sse/repository/models/session_model.py,sha256=6NqvAA5zg2p8Edikws3ZmVM0QMHIJJxYaLBpN52c6Y4,794
154
+ solace_agent_mesh/gateway/http_sse/repository/models/message_model.py,sha256=bierEegS5wfN5uyDPbE66TDAxCc57msFvfEg5rfuBbA,1184
155
+ solace_agent_mesh/gateway/http_sse/repository/models/session_model.py,sha256=JtcaMHIupTOBVZ749bxTjWxHxFsvXUqMdxpGR71zPBE,1252
156
156
  solace_agent_mesh/gateway/http_sse/routers/__init__.py,sha256=WxRX__xU4YIYhvjN0DTY9XdNYAB9dP81pabwiB23YSo,133
157
157
  solace_agent_mesh/gateway/http_sse/routers/agent_cards.py,sha256=zBckfOkUu9q9WC7fTOxXxSO6nMJpVPcjFbPrbU5W93M,1279
158
- solace_agent_mesh/gateway/http_sse/routers/artifacts.py,sha256=OrYlA3UUTzCE0iVUuansLEPRpGXzBRcFvn69S85oRq4,34636
158
+ solace_agent_mesh/gateway/http_sse/routers/artifacts.py,sha256=vNcTrl9MzTLGcm2S-1ph3XO95UySRFUwTd6f4IZI-Dw,40404
159
159
  solace_agent_mesh/gateway/http_sse/routers/auth.py,sha256=LcgF45H7AGVPabFLdHcrEqSndadlpx6WbOdBY_l96X8,7201
160
160
  solace_agent_mesh/gateway/http_sse/routers/config.py,sha256=6lIW_mcX8pbZJNvAx4fX0Ex-8dBPYUAKA024i6SoZoI,2158
161
- solace_agent_mesh/gateway/http_sse/routers/people.py,sha256=O2NvV6LD3g9vFXN31yUHKTgkzY1RVW5RDfQq_IP5Q14,2041
161
+ solace_agent_mesh/gateway/http_sse/routers/people.py,sha256=D6DDmNQnrqRvFp9gED87sNpjRm6YRJTVVC2QC0ylrKs,1158
162
162
  solace_agent_mesh/gateway/http_sse/routers/routers_llm.txt,sha256=B7W3Y_TlPJb1t5wdLYrWx1c4sOkjsPi5qCxD0gqPqR0,11715
163
- solace_agent_mesh/gateway/http_sse/routers/sessions.py,sha256=Ka5lCeNeasyCbifLmEnocExxrWKydPbtTcmkEw2yNqE,10890
163
+ solace_agent_mesh/gateway/http_sse/routers/sessions.py,sha256=D-Uapkv4nSH3PeDnY6AVgNAjSYJ6-O0OY5vfxBL4ng4,9898
164
164
  solace_agent_mesh/gateway/http_sse/routers/sse.py,sha256=AUk2p3_KBJLPyAlZ13fHApfd05SQPSJJkwZNq4mJ4PY,5371
165
- solace_agent_mesh/gateway/http_sse/routers/tasks.py,sha256=xib57lcQa4dp-OPjYJk6FvgnsIQde1NziWv4aR6lwdU,10824
165
+ solace_agent_mesh/gateway/http_sse/routers/tasks.py,sha256=S-M0Al2-3UdRG_BllHn888Z6ix0q5gySMO3se-jeHVA,11902
166
166
  solace_agent_mesh/gateway/http_sse/routers/users.py,sha256=jxVgDXchaDCj2igdZ3T4CyQvw3lOGpUmOAuJCWrdxsY,882
167
167
  solace_agent_mesh/gateway/http_sse/routers/visualization.py,sha256=tvLWL0HHyXmOdmrlEq2IPITvTG7OJIGLHvEGILMhD-0,44710
168
168
  solace_agent_mesh/gateway/http_sse/routers/dto/__init__.py,sha256=DbFQNFsN7I0zCkYe2RKTYkcIXPSKgA6dbPITS3AhcX0,201
169
- solace_agent_mesh/gateway/http_sse/routers/dto/requests/__init__.py,sha256=OdAP81u2Tk5EnI2x9QAwBS-ibyLLFf_8tbit4Z8ndwg,381
170
- solace_agent_mesh/gateway/http_sse/routers/dto/requests/session_requests.py,sha256=dM0nAO7OnWNHhRkcuDiHtqTtK5On9mXjpnYQ28x91Q8,1136
169
+ solace_agent_mesh/gateway/http_sse/routers/dto/requests/__init__.py,sha256=7YYun9YcIhjQKylE9KiBW_sH3_22nPyBDnZjWPRDJMY,253
170
+ solace_agent_mesh/gateway/http_sse/routers/dto/requests/session_requests.py,sha256=_Gf1RKwF_hjWntaJ2gTsr1Fq_6UIlxpFNFhVOSYgIYc,738
171
171
  solace_agent_mesh/gateway/http_sse/routers/dto/responses/__init__.py,sha256=MzauxZU28yY0B9Zh8J8-97yuv77yqqdblsFMjjs5D-4,255
172
172
  solace_agent_mesh/gateway/http_sse/routers/dto/responses/base_responses.py,sha256=YOYmjfXsFMFTRkhke4gg5klCFJSgosr7M_93x1lf81E,1463
173
173
  solace_agent_mesh/gateway/http_sse/routers/dto/responses/session_responses.py,sha256=q0YGkOmXlpEcTfeE8KijL9701VuGsFjAHyWItkfWMvs,1397
@@ -175,14 +175,23 @@ solace_agent_mesh/gateway/http_sse/services/__init__.py,sha256=Fk2FIbrJdG1StPCog
175
175
  solace_agent_mesh/gateway/http_sse/services/agent_card_service.py,sha256=gBoXQgENmCeJRyA1BLYnoEvjrFUfwM4W_CVLkrl6r7o,2365
176
176
  solace_agent_mesh/gateway/http_sse/services/people_service.py,sha256=PbR6vbImQ95JO7p5fSbraBGsHg84dGVjDz4yd-wbrwg,4596
177
177
  solace_agent_mesh/gateway/http_sse/services/services_llm.txt,sha256=hjMyBLidqh8VGFl7gsA-8VTM1zTUqu4oyI-UJQRReKA,5703
178
- solace_agent_mesh/gateway/http_sse/services/session_service.py,sha256=JaGl6KrP2qC2aaXKLp1pkYWZ0P7qcrD6Xml0sxh0CfE,8415
178
+ solace_agent_mesh/gateway/http_sse/services/session_service.py,sha256=twEoEdViQGu9H5CNIoTMF-TUvD_AeON3w5wzxuqzWPs,9659
179
179
  solace_agent_mesh/gateway/http_sse/services/task_service.py,sha256=KWtUi34rFCUYDu8w5qw2AXfoAkkNfDipje57FUdXKsY,4348
180
- solace_agent_mesh/gateway/http_sse/shared/__init__.py,sha256=WChEllPqEP-NKFroy8N0FGyOSKXSu1kCSUQ2vRM78sg,527
180
+ solace_agent_mesh/gateway/http_sse/shared/__init__.py,sha256=QaFnYoCRmznXoB4fmpGXegKhhEpjj6_b3gmZl24E5JA,3520
181
181
  solace_agent_mesh/gateway/http_sse/shared/auth_utils.py,sha256=F0kpTg5HYadRAEVNSNvnEFpdzkwVqbFMFVr27kywz_k,852
182
+ solace_agent_mesh/gateway/http_sse/shared/base_repository.py,sha256=4J8860eUcc97236GURL9mOfdn26Y53zlrB0nkMUVzeU,8043
183
+ solace_agent_mesh/gateway/http_sse/shared/database_exceptions.py,sha256=J9-M5PAXdQFfnxf-IbJHdDEhUXEmo6d0aHlfp6nNhK4,10978
184
+ solace_agent_mesh/gateway/http_sse/shared/database_helpers.py,sha256=5YjJ_CfOEBvkvi2xFaWmR8D0NHpxVvibTy1RF_u37Lk,1522
182
185
  solace_agent_mesh/gateway/http_sse/shared/enums.py,sha256=gcU_hApRkWcBy0JykqGXSESGyglLXN3FzkimITmwnnE,802
186
+ solace_agent_mesh/gateway/http_sse/shared/error_dto.py,sha256=U8jvCquD0usm3Smb8csTU0cnCSn3SWYQ7NJrRQLd5dw,3115
187
+ solace_agent_mesh/gateway/http_sse/shared/exception_handlers.py,sha256=fRrg79qKWqVwHMP_B_3RVoWx9W-bOubtXDRPw644un8,8011
188
+ solace_agent_mesh/gateway/http_sse/shared/exceptions.py,sha256=T9mLhBgtKgwut--_uCVV9qeFOAAhHKhcAZPtsjmkG2M,6434
189
+ solace_agent_mesh/gateway/http_sse/shared/pagination.py,sha256=yPhMvuGOeun9m2wKRhl-m_NSkzW3aXlZ3Ra1TvBF-OQ,3751
190
+ solace_agent_mesh/gateway/http_sse/shared/response_utils.py,sha256=-_z86YA02965CTC3FNSz2QUAKWEuJgZd8UBnXLSpYCw,3556
183
191
  solace_agent_mesh/gateway/http_sse/shared/timestamp_utils.py,sha256=o3pJKPR6DA8sbOgflnmcotFp4H-I-Hij3lA-7F-yUAM,2380
184
192
  solace_agent_mesh/gateway/http_sse/shared/types.py,sha256=ISN1jjxOOLcak_o-Gm0W7yVW2dWcVmiHQ2wXzttOwPg,1291
185
- solace_agent_mesh/cli/__init__.py,sha256=pHClr_RD94RdAO4nIJOBug2vXKKjcRzEGxsyrQcqnHY,22
193
+ solace_agent_mesh/gateway/http_sse/shared/utils.py,sha256=SAfrRjBc_bwrEVFafGbswBShky2GlzLhp_c7C47QG-w,493
194
+ solace_agent_mesh/cli/__init__.py,sha256=F1u2mSK8Wly-J_mt7oHk_RJLir3nEN_Ri1OneijYSlc,22
186
195
  solace_agent_mesh/cli/main.py,sha256=yFbF4ijz7P6nxj26d-mTC8BnK6NKVnfqPh3y4pDBZqo,831
187
196
  solace_agent_mesh/cli/utils.py,sha256=7zntmVuvWbaWEhViSF2uw484-79a5I1XTUt-0eGQWY4,8036
188
197
  solace_agent_mesh/cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -191,17 +200,17 @@ solace_agent_mesh/cli/commands/eval_cmd.py,sha256=o1HuXKodwh_XH7AFPuXlRDMP0A75uQ
191
200
  solace_agent_mesh/cli/commands/run_cmd.py,sha256=vgR6UDaZ_f7H95cr5_8XCh0ifGp2z0E9CZaaJ2xR5lM,7437
192
201
  solace_agent_mesh/cli/commands/add_cmd/__init__.py,sha256=IGTXUx_AcoinYlzlZtQsjiCYbe76ZiLqxAcGc6-uoDE,280
193
202
  solace_agent_mesh/cli/commands/add_cmd/add_cmd_llm.txt,sha256=x-UE5buoIEE_oUJ3opOzW8U33S3XUKCRNKWxNXNVk-c,10212
194
- solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py,sha256=qO-gsoIfO5lK8L0mfThtOTp3sV7dGDd7pTcZV78L00s,29631
203
+ solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py,sha256=J4Th6KKGOpvXA0zg9StbV6I1OrYLy1Sy0mezoMMQca8,29953
195
204
  solace_agent_mesh/cli/commands/add_cmd/gateway_cmd.py,sha256=kV7XOo2CvYWPQ6AL8cLDm-2GACbLAUlQc2c9fNzybEY,12840
196
205
  solace_agent_mesh/cli/commands/add_cmd/web_add_agent_step.py,sha256=niutiDp5neHtgEEtWKcK9TGLJHga87y46rrjVHdjkFU,3702
197
206
  solace_agent_mesh/cli/commands/add_cmd/web_add_gateway_step.py,sha256=Gk6Mw54l_M9QJKBa0IkHOkKJmuTsb4HQkIUTyVN-tqE,4326
198
- solace_agent_mesh/cli/commands/init_cmd/__init__.py,sha256=X7xcuDTXKdZkojBRIwiMJHyaQi9I5tt5pVqGmIBIp30,15152
199
- solace_agent_mesh/cli/commands/init_cmd/broker_step.py,sha256=FzY7yqRDZqy_B7lXWQvb8OLoOULPlt8cI-VxuzaNSUU,7010
207
+ solace_agent_mesh/cli/commands/init_cmd/__init__.py,sha256=wgML5Ru7zByIFfcM92wGepfx-htI_FtMKCacKPBfq2A,15152
208
+ solace_agent_mesh/cli/commands/init_cmd/broker_step.py,sha256=FcDTrzZITTPaFPS8iUFyDDOK4Bbd_kiXl7ftsF1EMYU,7010
200
209
  solace_agent_mesh/cli/commands/init_cmd/database_step.py,sha256=sO52x4weVPpwyICn7k-YMe7ByEZV_Sf4ME3QpaGj7wo,2921
201
210
  solace_agent_mesh/cli/commands/init_cmd/directory_step.py,sha256=3uPZybhDh84vtXqFfck4__6Dbi9LdqXqs0nRjP3VApY,862
202
- solace_agent_mesh/cli/commands/init_cmd/env_step.py,sha256=9C22bg6tNKvftLyEjN_1_mdxexNAf3y3x-chQPrYtBo,7340
203
- solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt,sha256=7atW7HTy_2XQ3UoPttgIlyIF4_Du2068rqZE2imaHP8,13226
204
- solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py,sha256=ztv1yvXJu3asoj8wrvP45QNPTZKxcUWYuD8GfpbFLy0,19648
211
+ solace_agent_mesh/cli/commands/init_cmd/env_step.py,sha256=D3AnwnfJwH-QWQbbE6O-Mv0xuuepJ840wbeD5f7d6JA,7340
212
+ solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt,sha256=mCUzKbriK0FSdsRvBANLac50x8t39gT0D3jS-4Zirjc,13226
213
+ solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py,sha256=ZHqz2qjNosJ3WnzHm5eDLSoC1xjh10AjrEfZ1wUcAYY,20014
205
214
  solace_agent_mesh/cli/commands/init_cmd/project_files_step.py,sha256=bOh7yYuaXIIs0q3-nd1nSVc6P6g6EHoDJjFDlKZVnf4,1352
206
215
  solace_agent_mesh/cli/commands/init_cmd/web_init_step.py,sha256=YoHEiEMZf_ZPG1qvLMJads_ET6IYEKJCCCees5_tqbY,4197
207
216
  solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py,sha256=MIAu-tbbfDIcTrU7ZEVkvI91UdrX4QcY17JHCdzIH0c,8820
@@ -210,7 +219,7 @@ solace_agent_mesh/cli/commands/plugin_cmd/add_cmd.py,sha256=qJedNQtBZ1oyxXlS09KQ
210
219
  solace_agent_mesh/cli/commands/plugin_cmd/build_cmd.py,sha256=OzEO2lsezlIZe29jWiR08ajQeDEP1cYqrWaMSd8i8o4,2988
211
220
  solace_agent_mesh/cli/commands/plugin_cmd/catalog_cmd.py,sha256=GskrCwJQ42upCIG2nvMomprPrT1f9sBnkGast2ZLb_c,5136
212
221
  solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py,sha256=5O5jQdI6LHh8x3l4U9y95wX4CAUzN_Jf3b7G2HdZIOE,11810
213
- solace_agent_mesh/cli/commands/plugin_cmd/install_cmd.py,sha256=8ARhw9EyXkvqkZCZArhoLqEgT-KrvNtkWbSiFk1XYNw,11066
222
+ solace_agent_mesh/cli/commands/plugin_cmd/install_cmd.py,sha256=DYi9GTs99Xv5PTEhtvx5id8nh6ZTOZ-t7N6yJzmkKZ4,11081
214
223
  solace_agent_mesh/cli/commands/plugin_cmd/official_registry.py,sha256=rnzQq3LDvSzvCPoEhoSn6M3xQG4AVLd54PX9cA5GzPg,5218
215
224
  solace_agent_mesh/cli/commands/plugin_cmd/plugin_cmd_llm.txt,sha256=-CS4uY1OrPSXDm8cxyrBAv6yLrP5P-GTzyeaZFqaHsM,10967
216
225
  solace_agent_mesh/evaluation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -240,29 +249,29 @@ solace_agent_mesh/templates/gateway_component_template.py,sha256=2WyKdOMe8U7kxoI
240
249
  solace_agent_mesh/templates/gateway_config_template.yaml,sha256=sSDJ5C1BO4lTVuRMnCUr6qQTq8BXLUIJrJZrGH7J_0A,1289
241
250
  solace_agent_mesh/templates/logging_config_template.ini,sha256=FggFniB1XZ23CG2lF7Y_3VTey2-9nlXIssFvevXtcSw,1275
242
251
  solace_agent_mesh/templates/main_orchestrator.yaml,sha256=Ig4DwYViFXN-1KFn1gR5CVIEeK0dbC8PxfNz5bFqFAE,1757
243
- solace_agent_mesh/templates/plugin_agent_config_template.yaml,sha256=RO4m2YyIeZznHH4-53VDv89yT0sMchtp3f2zmLlrREM,4493
244
- solace_agent_mesh/templates/plugin_custom_config_template.yaml,sha256=5LXQeNoTq6dz2XyRa6_pTZCPQsPO27MF2kHEK8_sv9U,1117
252
+ solace_agent_mesh/templates/plugin_agent_config_template.yaml,sha256=giUU5YSqT5xIRkM7H1YR5bmP9KdRFvWfjwlK9lgs3rw,4493
253
+ solace_agent_mesh/templates/plugin_custom_config_template.yaml,sha256=bv7Sep_5sUKMpzzPRYO98SHGt0zuLIfDIDLKBdpPBfM,1117
245
254
  solace_agent_mesh/templates/plugin_custom_template.py,sha256=-c7JD_AGfgBqatPMvJBpSDaiwKp5LsbjrKn_sDSAy_4,360
246
- solace_agent_mesh/templates/plugin_gateway_config_template.yaml,sha256=JmVLdW3Qoqa0qORNlU8WyVe5FMnQL6FSoZNt65C4IFI,2500
255
+ solace_agent_mesh/templates/plugin_gateway_config_template.yaml,sha256=cB5uw_7NfmtAVvHk8UlyAnhjPDtzxJxcGgxYaXcB278,2500
247
256
  solace_agent_mesh/templates/plugin_pyproject_template.toml,sha256=dcgdHwCUUYV2G8slWzKGVlrpijwTnArX-KMa2sKvXok,944
248
257
  solace_agent_mesh/templates/plugin_readme_template.md,sha256=i094KPRPL_u3JTA1h6FRjMy0YlA_B4jNKDBiYdE6wbM,1271
249
258
  solace_agent_mesh/templates/plugin_tools_template.py,sha256=GUVw556CtBYE6sHbpXnFf0uysp6furt4_tMZVOlpI6s,8465
250
- solace_agent_mesh/templates/shared_config.yaml,sha256=_-ytR25HSAfwjN6drkdUQgGeV_om6RSeM4BUCMxQ3vQ,3310
259
+ solace_agent_mesh/templates/shared_config.yaml,sha256=85EEcZDzomstQNBnOR2yjYpnTEXGGNs1VGduvHFk-HE,3310
251
260
  solace_agent_mesh/templates/templates_llm.txt,sha256=T3h8CcIowTbyBedlfRk7FZww8_xGmnY5fEqGhhdI3JU,9234
252
261
  solace_agent_mesh/templates/webui.yaml,sha256=4cEkPXLRhpATVD3A0UuJuo5aG0ApEseiADGtY3-W5qw,1784
253
- solace_agent_mesh/assets/docs/404.html,sha256=rDpbpAhG-PFn5cZhFOh2Z8f19FKCNseTRm-qScoIi7s,11749
254
- solace_agent_mesh/assets/docs/lunr-index-1759151175744.json,sha256=6yRFlD4D0TiPPhnnZZA_efqbt13kFRpOdWKxFBvvTP0,1189636
255
- solace_agent_mesh/assets/docs/lunr-index.json,sha256=6yRFlD4D0TiPPhnnZZA_efqbt13kFRpOdWKxFBvvTP0,1189636
256
- solace_agent_mesh/assets/docs/search-doc-1759151175744.json,sha256=AiyGTRmtLL4Cvcyl8luTT7HY-Am6S7n6h0qV_0RfbIo,421011
257
- solace_agent_mesh/assets/docs/search-doc.json,sha256=AiyGTRmtLL4Cvcyl8luTT7HY-Am6S7n6h0qV_0RfbIo,421011
258
- solace_agent_mesh/assets/docs/sitemap.xml,sha256=9qanseWlSrGziSYlVwrAZyAsTJ31u1OSowWQAjMD5Nc,7001
262
+ solace_agent_mesh/assets/docs/404.html,sha256=K-jnh_p8zXh2iEu7sXs-ARX-FyOnWFWIsBXeX_4i4Oc,11749
263
+ solace_agent_mesh/assets/docs/lunr-index-1759246102819.json,sha256=8g5gNT6VDvE3QOyzKJSDl9iAWbpde-wEl3pC0F_LNjI,1202794
264
+ solace_agent_mesh/assets/docs/lunr-index.json,sha256=8g5gNT6VDvE3QOyzKJSDl9iAWbpde-wEl3pC0F_LNjI,1202794
265
+ solace_agent_mesh/assets/docs/search-doc-1759246102819.json,sha256=Y2RpQQWnLPP9ME0aKIQhEL0Iuh1bUqpgx4_uMUPj-0w,425790
266
+ solace_agent_mesh/assets/docs/search-doc.json,sha256=Y2RpQQWnLPP9ME0aKIQhEL0Iuh1bUqpgx4_uMUPj-0w,425790
267
+ solace_agent_mesh/assets/docs/sitemap.xml,sha256=rQaMKdLMLb0GOc5KpWYBiiVN_4OZgH8iRuCL3K1uHpI,7190
259
268
  solace_agent_mesh/assets/docs/assets/css/styles.906a1503.css,sha256=gQj16ydMLPiq6y-t8Ovto65hsvPbQX6coyIFOja-2eY,83293
260
269
  solace_agent_mesh/assets/docs/assets/images/Solace_AI_Framework_With_Broker-85f0a306a9bcdd20b390b7a949f6d862.png,sha256=e6MbZpxlY1xJ8U01zQogm8vWgokQqDfhsyPyNxtuS00,447393
261
270
  solace_agent_mesh/assets/docs/assets/images/sac-flows-80d5b603c6aafd33e87945680ce0abf3.png,sha256=868GgNJGPxn2G6c1Md_0umhg3xuAo7t6HEx8hOKbUJY,21098
262
271
  solace_agent_mesh/assets/docs/assets/images/sac_parts_of_a_component-cb3d0424b1d0c17734c5435cca6b4082.png,sha256=Z7-TCXxDC2fd6iZ3Lkr-F3OHhqr6m_glnzVIcwUhv4k,12283
263
272
  solace_agent_mesh/assets/docs/assets/images/sam-enterprise-credentials-b269f095349473118b2b33bdfcc40122.png,sha256=pJb4UjHrgDm22w1beXrbE9l1ElMeK546-PwMNNoBPXM,594985
264
273
  solace_agent_mesh/assets/docs/assets/js/04989206.a248f00c.js,sha256=IdnIPYlOB5uhiZL6pwOD5q2LZc23gXp3cnIVVn0hkIE,10856
265
- solace_agent_mesh/assets/docs/assets/js/0e682baa.da822665.js,sha256=8z2LRUHckuWnYEtvELV0BBuGurlFuK6VsnKAto5Szc4,12573
274
+ solace_agent_mesh/assets/docs/assets/js/0e682baa.d054e1d8.js,sha256=Rd3y0MSJ_-wdERfPoHMkO2_2TSoz_RqzkyMCjuxJbXc,12573
266
275
  solace_agent_mesh/assets/docs/assets/js/1001.0182a8bd.js,sha256=wnldyGaqrut3ES6Q5UDpRGsaNwlX_JoL2FDB_f7_hBI,90563
267
276
  solace_agent_mesh/assets/docs/assets/js/1023fc19.8a8a9309.js,sha256=Ccrvfzh6h7Mw-fDTHDYgkdinADChMthSzis02V4wjnM,14601
268
277
  solace_agent_mesh/assets/docs/assets/js/1039.0bd46aa1.js,sha256=3gOxMCGWPNyBymsv8WkRfDuOlc7UZ1c9c794Q7gmNyQ,71713
@@ -270,7 +279,7 @@ solace_agent_mesh/assets/docs/assets/js/149.b797a808.js,sha256=BZRazTFuXMaIQkDiX
270
279
  solace_agent_mesh/assets/docs/assets/js/1523c6b4.2645ef68.js,sha256=nHm7VzEAuw_CKJ-B-IXdco_vp8x76ebI5isys9orJsU,16498
271
280
  solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js,sha256=LbpDL4NSduNRTSI3RUIg5dLdMd4wawHU4Qta2vf8ryg,428812
272
281
  solace_agent_mesh/assets/docs/assets/js/165.6a39807d.js.LICENSE.txt,sha256=QX5NnNHHE912JA-8rhkyT6_OOM9KmKb6eM5ZwZ_m0fk,485
273
- solace_agent_mesh/assets/docs/assets/js/166ab619.bdddc63a.js,sha256=LNPA9NY1-5TcqlOdRKOKA0gMziWi2e1WRJ4d1I8dpVw,17587
282
+ solace_agent_mesh/assets/docs/assets/js/166ab619.e27886d9.js,sha256=-wsycxZ4oVb_6Ev7S_DetOSD9Xv7ZQgVGpLMqdfR5_s,17598
274
283
  solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js,sha256=tVREW18iBlO-P7JNPvgX1-RR8tnFAoLarHSSTNAYfTw,568073
275
284
  solace_agent_mesh/assets/docs/assets/js/17896441.a5e82f9b.js.LICENSE.txt,sha256=WX8R_ZUDUISsiSypR5LNXXo_QEtn2JZPIpsBgCIh88Y,322
276
285
  solace_agent_mesh/assets/docs/assets/js/1c6e87d2.e056b7e0.js,sha256=Hi4YrLubQHI05HkHUWxJLtZ-GenxweIzK4a-6ZgwPIc,11805
@@ -292,6 +301,7 @@ solace_agent_mesh/assets/docs/assets/js/442a8107.b5c2532a.js,sha256=LivKRCvxmyUQ
292
301
  solace_agent_mesh/assets/docs/assets/js/4458.518e66fa.js,sha256=oUPDT1LqnbeRts2CudqNueI-OQHML5gg9dWEvP6PiE4,25886
293
302
  solace_agent_mesh/assets/docs/assets/js/4488.c7cc3442.js,sha256=r1GHmJIWPPQ07T92TAs1H59eHcs-e87AFDqi_0VK48A,435
294
303
  solace_agent_mesh/assets/docs/assets/js/4494.6ee23046.js,sha256=UrwgwbJNRAZiY6UtdzHrpggUpkNGlIh9vHiSXdv5DDI,61052
304
+ solace_agent_mesh/assets/docs/assets/js/453a82a6.3c6bb61d.js,sha256=tRgzoOgRy5p3WnhACn0v2V2D4Oimimu2LyWn_NGh41A,26979
295
305
  solace_agent_mesh/assets/docs/assets/js/483cef9a.4736f2d8.js,sha256=-oDaPe690zIvbABUVR17sMsaExdwEsWt2f4Vi-YI5mQ,14205
296
306
  solace_agent_mesh/assets/docs/assets/js/4855.fc4444b6.js,sha256=Rbhzs2AM-6i8Wyppb8a2Ws8kpNE8Pr5QMgx0sxAozxs,11494
297
307
  solace_agent_mesh/assets/docs/assets/js/4866.22daefc0.js,sha256=bQRnSAwf0FIrdrYQLeyXv6f4utbEoi4nSU-kKchB4sw,3876
@@ -312,7 +322,7 @@ solace_agent_mesh/assets/docs/assets/js/6978.ee0b945c.js,sha256=Fabb2n81BbNegY_9
312
322
  solace_agent_mesh/assets/docs/assets/js/7040.cb436723.js,sha256=cmW7CCISvRnJNljTDg4jGJtG6rjSp0nWfZvchAKSdf4,36638
313
323
  solace_agent_mesh/assets/docs/assets/js/7195.412f418a.js,sha256=8VHuob7jbA49epJL54bEU-mtOdSeUFXzqbgThE4walo,46219
314
324
  solace_agent_mesh/assets/docs/assets/js/7280.3fb73bdb.js,sha256=XlDQpYplGuVoEqfXCt8Yzocd9uBTu64VUrNp4LQDyIY,659
315
- solace_agent_mesh/assets/docs/assets/js/75384d09.1e7d7cb7.js,sha256=1bxZO3YmVKK2YKW2QGHQMiUxJ5cSFFX4-MUv0YJ57EQ,21864
325
+ solace_agent_mesh/assets/docs/assets/js/75384d09.c19e8b51.js,sha256=gowF5WoMHv30ESz1721ZkFOE8msW23fD4M3JgZyPOIs,21864
316
326
  solace_agent_mesh/assets/docs/assets/js/768e31b0.9abcdc48.js,sha256=UkbCT6QjuavRsdzU6WlionAa1M2BqeGIW_LE4YkjMEM,12938
317
327
  solace_agent_mesh/assets/docs/assets/js/7845.e33e7c4c.js,sha256=sNEWPWBTnV-BmKI7vkcgRpTYeErGBXRbtH_X5YRnr-c,11143
318
328
  solace_agent_mesh/assets/docs/assets/js/7900.69516146.js,sha256=MWXxfpYNV5CORkPa0r6EyyynbVJrNENknNv0Zb7TqS8,43021
@@ -334,7 +344,7 @@ solace_agent_mesh/assets/docs/assets/js/9793.c6d16376.js,sha256=-Xm7Yt1AJvEcfoYl
334
344
  solace_agent_mesh/assets/docs/assets/js/9a09e75d.92de8cf5.js,sha256=tZRusy1HbEgsV-VhErB4zpnz0ncfP0lTYhxyLZfA-xc,33827
335
345
  solace_agent_mesh/assets/docs/assets/js/9eff14a2.d62aad71.js,sha256=iR2JsabRjQemymeBxgOq8WQFkWjTQQ7mHjfgN5a2e14,10569
336
346
  solace_agent_mesh/assets/docs/assets/js/a12a4955.25fbed32.js,sha256=xN8C0NdfKNMjfB5AQ2zRwapl-iOQATmLfPcr_ElkveE,25800
337
- solace_agent_mesh/assets/docs/assets/js/a3a92b25.6def8980.js,sha256=59BU0hGXFauN5vGuF-cjgq-3RNJ72L5oSAjrWaMrZIM,5802
347
+ solace_agent_mesh/assets/docs/assets/js/a3a92b25.af35e313.js,sha256=rgO0aq8AmVmKm9LkUYdZO3d8V5g8uiWTAE8izXTKVxI,5803
338
348
  solace_agent_mesh/assets/docs/assets/js/a7bd4aaa.2204d2f7.js,sha256=v9wa2Q1Mt7cayLyMjyDTUT8J_kILQ2idmxDhgyBHlpE,756
339
349
  solace_agent_mesh/assets/docs/assets/js/a94703ab.0438dbc2.js,sha256=drinuntIgk0lUv1Wc_WlHu5I8d5ZDszh329V_5WQrD4,11251
340
350
  solace_agent_mesh/assets/docs/assets/js/aba21aa0.c42a534c.js,sha256=e8uMq6LJqDkt4o-uIbKH2CIw_7cQ4Kthlh4O9UqwWdw,211
@@ -342,59 +352,60 @@ solace_agent_mesh/assets/docs/assets/js/aba87c2f.4ddf32f2.js,sha256=uPt4W5mjlBoY
342
352
  solace_agent_mesh/assets/docs/assets/js/ae0e903d.5fe5203f.js,sha256=ExrqXGaWwiuUGA7fgqsdbZ5m8LaJv2qb6pcLRjBw7cg,8680
343
353
  solace_agent_mesh/assets/docs/assets/js/ae4415af.16cc58d3.js,sha256=3RlFYeEWrwn6u4JADZ7eTYfVJ9pzMZYGcTZheq9LSZs,31053
344
354
  solace_agent_mesh/assets/docs/assets/js/b7006a3a.73a79653.js,sha256=YYjvDTjQytUxcimeJinuha5T7SdUyHTYjRz7kLFOGOQ,12973
345
- solace_agent_mesh/assets/docs/assets/js/bac0be12.bf0181cf.js,sha256=KBpNC74gMZHJeVQ1eMoevq8gKlXszvy5rFpIbZjg2wo,17983
346
- solace_agent_mesh/assets/docs/assets/js/beecea0d.ce915979.js,sha256=LHnucpILFsiRTq8L73-gRwPpCv0snvul-6_8lXdWRgs,28740
355
+ solace_agent_mesh/assets/docs/assets/js/bac0be12.17de4316.js,sha256=x3CIl5K1HCSm30nNmhwiTuYGhnjfJaTvLNNSaM4xJ0E,17983
347
356
  solace_agent_mesh/assets/docs/assets/js/c2c06897.87cb1f47.js,sha256=JodGkXjuFPEBSlBMpaPOOIuj_Tut0AbwolDniGVPuZE,15020
348
357
  solace_agent_mesh/assets/docs/assets/js/c835a94d.ce21f0bf.js,sha256=JdrkXlYTQYJgKwVH5yCN7S3NSlsBnTS3MkNFpdoxark,22108
349
358
  solace_agent_mesh/assets/docs/assets/js/cc969b05.feef7dcc.js,sha256=gsMm5-DPoDd6MNJOJE3tNJRkTry1Lu3eSIos4De64RI,23141
350
359
  solace_agent_mesh/assets/docs/assets/js/cd3d4052.a19e7d78.js,sha256=LcU10wDKu9Ax9XbTc0fyQff_7QikR6sEc4SXyP4lpLg,9791
351
360
  solace_agent_mesh/assets/docs/assets/js/ced92a13.fb92e7ca.js,sha256=96enCMQqnD-_WrFda13oJ3gPLYxmy93LXDFxDuxA5JY,25255
352
361
  solace_agent_mesh/assets/docs/assets/js/cee5d587.47904f5e.js,sha256=H05aPZ-oQ3RAdKEsPyNYwy097BU6KJo5fuMQOpYiTBk,9520
353
- solace_agent_mesh/assets/docs/assets/js/f284c35a.525933db.js,sha256=T76oBobITL24oKWYJYbYauZwHcIDYsdCH9Hc1rFj35c,22038
362
+ solace_agent_mesh/assets/docs/assets/js/d6a81ee7.829198f1.js,sha256=6adqCXcWhOhKsYWDC7wGYTZW2nhkNJuDjTLU5s_IEFQ,10223
363
+ solace_agent_mesh/assets/docs/assets/js/f284c35a.ed8dd236.js,sha256=_zvWxe9mrWJrDNZHrkFtGWcd8dj6Q6_qQGCVJ8EZ0pM,22493
354
364
  solace_agent_mesh/assets/docs/assets/js/f897a61a.126663fe.js,sha256=hY5NvBKRQIFTHG_WQJ_B0ek3PAGTcq_zBSS0M7Gi7bM,17031
355
365
  solace_agent_mesh/assets/docs/assets/js/fbfa3e75.e144b16c.js,sha256=Li4QOuQnso5c1xJULcdtVFYVy3WeK5CRzYBVukX25s8,7312
356
- solace_agent_mesh/assets/docs/assets/js/main.11f9f9f3.js,sha256=yqc6W0ixiOWbqlaw9Y-urSsORCC6oJSbyX-UqT3jlSY,483297
357
- solace_agent_mesh/assets/docs/assets/js/main.11f9f9f3.js.LICENSE.txt,sha256=3Jia5o7yaxOtbxuy9khs-thK96m55yCiPaUA-IkWh0A,2069
358
- solace_agent_mesh/assets/docs/assets/js/runtime~main.5922bcf0.js,sha256=5DoxmLhVc_drjAjI8-yjAStx6MLzGf2MJaBbpmpG6RU,6281
359
- solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html,sha256=3HR4bz0B-oNCpMOyxE6u4KXQl_OUM8dlBJw-w4eysAY,33790
360
- solace_agent_mesh/assets/docs/docs/documentation/Enterprise/rbac-setup-guilde/index.html,sha256=4GwKFd594XMYQcvtZWerGGBZG4O5jcnTInLTM8IBMMs,84357
361
- solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html,sha256=8-mVK-jT9u-xz-dn9ET1AlfZuz4yGvujHhgUFWBoFzg,69857
362
- solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html,sha256=c4lhLJ5h6bh_-VYB08s3ynaqb1W2kOVPeO8-goXHoVQ,84925
363
- solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html,sha256=8sYaFn2zr3mkIxYPxOf5hdoIfNuQoAW93EPQCDKdCCU,87760
364
- solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html,sha256=YzDdE0ZK9ffqtf5vOgGhmTBrAfthCB4ZWR7_1Dn4Ib4,39841
365
- solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html,sha256=xD6Cd-EKQZonlGc21eRBzlpShu-4KJuQ0_-Nvmx4itM,32700
366
- solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html,sha256=QuLKOYY2NdDkzLbyEI2U_X0TfpkyYT40CgVbYlpJqrQ,52656
367
- solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html,sha256=NB7fTyhMpxsqfUc5hwF5oXrWoCKBsiOHxgL8bPcgn2s,30152
368
- solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html,sha256=-dqCPn323sBvpfN0oHXt_K1gZqA-3b9h8Kdcyp2iWsg,23853
369
- solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html,sha256=5m0-eGge3rDHcaMajib-dVvnEOKrE-yVAnrxeSxD5Ws,40029
370
- solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html,sha256=H4BH2_7nUhI6E1u6RK9JEGii0MxeoBY__OXtpuwIxRQ,45630
371
- solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html,sha256=U1NqfsZe4Qe2cjBYxeufJGnCF9YedcgyQiC8Q1mn_-Q,42537
372
- solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html,sha256=3f0eK38RVuieicYvuV3UTQzrePVvHR5szpFsQcj13fg,26089
373
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html,sha256=h72LYb9FYGgKU5BzHnqRRpHPGZkJyVt4Clg2ziOP_kA,21742
374
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html,sha256=ygdZXJLv71S_9fYQMKC5M078jVmZEx9b0_t_HM3JPJ4,58315
375
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html,sha256=E4aowAK6_pvFQhK2nKlwlPT-eH472NMjOAACCB44TqE,32597
376
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html,sha256=kXUEofI0aeKiVxRlS8kUnU7eQ18lrHS89gVR24SdQJs,30498
377
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html,sha256=LqH4RW57bZNIXEpQVKrfW2sINI_ikS-Si7M3Q0m3XI8,42664
378
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html,sha256=fNGA-h83YQ1feAgA8vwIzJU6t8IM81nv_iIZ4DhBCVQ,75786
379
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html,sha256=3eYNXbx6SrgdjFFlKCNkHymCr4JcxqUUeZATE1Huey4,383395
380
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html,sha256=jioalGZDNoNroXjOkgbZmE4c3o0m5gW5SFMdSofwsJU,69244
381
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html,sha256=qJ5D5Tmh22394-wgvziT7ddQo1sLbyHwAWlT_hLXMyQ,65048
382
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html,sha256=Il7tqaCFgg5Q4pwhOakxsN1n9wYWQXwlXibd9sDs38U,87666
383
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html,sha256=3UvksAthejXPoG6H-vK0H_3fgCbpUto99V1RDko3TQ0,80476
384
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html,sha256=lzqfPd1rH51R5AIDIFnYa-JdNHcMJcGnX7yB2bt14GQ,46757
385
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html,sha256=lrtnD-el6jx9tHVx6ityrKOeHMHl547g6ylgtuXjygM,49986
386
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html,sha256=n3B5aOk7-B2cOo1PSykCofTCKpMJvAdaM9m00QIgrfA,69371
387
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html,sha256=PxOqQyu5tWDu7UeyoHynhG9aws9ILn6xau1n_raaxpc,44846
388
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html,sha256=vU98eW18XGPuICSU0G07prDTW5CQTUyCyPsgCRp-RY0,34816
389
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html,sha256=t3EpAzl8dVmSNaD2x8VHUl9PXO2OYcIm-HFnwxWSVM4,58253
390
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html,sha256=pPXcaZUuvHHSEOdqbgT79OAxPTTlEhmL-ZAuuR6DCD0,37802
391
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html,sha256=Wmi-vvjhiOpjUe-AEgSy_rza_DF-az82k76iwMFgxII,50700
392
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html,sha256=UOp94gRMCVe3hg-jKKGBUED41RSXWemb5P1btqFsxRQ,163552
393
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html,sha256=Yj_9WbyYLzyhWXAhF6tbx2V5IU53-y81rTBJEK3lc9M,402951
394
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html,sha256=wfATpo_nUWMMG38_R5KGGRp15BgOBHglaiewZMbrOdc,175658
395
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html,sha256=KhFTuCLI180z4zEmpuKvAJr2H0AisSlMVqVTmAx2Zzg,59738
396
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html,sha256=YeL0nBnRV56R_lMPYY6KVABPq7h_da-58E1heTiaWgs,25853
397
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html,sha256=TfCaOFLWACoO4cg2CYnHOApk-penqR8lnOzp6V-AdL0,29858
366
+ solace_agent_mesh/assets/docs/assets/js/main.86924c42.js,sha256=HZ1MABuQTU1Li4wOC4bNsc_AT1cZutOpr6fGFq_DR3Q,484007
367
+ solace_agent_mesh/assets/docs/assets/js/main.86924c42.js.LICENSE.txt,sha256=3Jia5o7yaxOtbxuy9khs-thK96m55yCiPaUA-IkWh0A,2069
368
+ solace_agent_mesh/assets/docs/assets/js/runtime~main.0d2ff2b6.js,sha256=YM42hTqOpyOm0lVe1etdyRs0PSKqvJ5woNqamzwOx_U,6334
369
+ solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html,sha256=b0pkBC-x6H21Thb6r0z5IHximNb9mZo-gU4250-VIS4,34111
370
+ solace_agent_mesh/assets/docs/docs/documentation/Enterprise/rbac-setup-guilde/index.html,sha256=rfPMKrmcUNx7jaa5rR98GbHXe1Pgo0GEBBgXvwnOxgE,84678
371
+ solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html,sha256=Sve1w_bIHnxafoCsDzO0VvSusRbMXhHMFXNDmIwap8o,70178
372
+ solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html,sha256=1UsUlwbiMxcTf5coZr2KOmxtXZJigGsz2iFUjQ_fedo,85246
373
+ solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html,sha256=n6ilChVzvtohW4Ta9KcRdabyR_ikrZwXCoE2pR6Gjq8,88081
374
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html,sha256=EVRVAfA9LRL_GTAHK2mpaRsTCiKQkWVwFP5Byh2OU7k,40162
375
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html,sha256=6FkUTSX6yLlvRbgnofgFMMgIVNtgl2aXExD9fi8ULNo,33032
376
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html,sha256=bGiaw9GYlYhnqb4bBPUWgFDJcJruh2--yZUunrKOn34,52977
377
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html,sha256=Zan1dKt67-LLK-X9yROcCYkp9IYFIwSLOLUV_C1PsxU,30473
378
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html,sha256=qa76b7qSVE-Pq0fb3s0-xNMxJluFT2CoC7hUzpQwN_E,24174
379
+ solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html,sha256=GeAO1URZT8WyDxxrGP7849Yi2itzrAeglOSv2j7FMH0,40350
380
+ solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html,sha256=MOTR8eEnC2CT-eyR01HUAGQ5p8E1zk05LDQ_wd55p6E,45951
381
+ solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html,sha256=irEjA2DkIpp_Wfg-TPIytIbLbCOdD05--NoLaydaVwE,42858
382
+ solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html,sha256=jv56Zt2VxOBW3Pko4mjBCr9b89WjzhSPFZNed9EeCl0,26410
383
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html,sha256=Kyh3XdC5VzLR95GwZ26Iquf1XEdhPJ8lXae5mS3Kiqg,22064
384
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html,sha256=-EnJ7qwN4vXNNgfEEhxN6uwGyNW1F9F96Up6W1pQ5qA,58706
385
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/litellm_models/index.html,sha256=xGwDLRndMQbzo722S80wU4KwC2PuuPwqp-5yACClKEM,38567
386
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html,sha256=q81BiNbxSgFpTzcvyeQ0RS1djPc412AcbnD-DfOgBq4,32918
387
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html,sha256=ULG8HD6olDlW642VRPSC_gbN3-Knho5hkSrpmiK7dw8,30819
388
+ solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html,sha256=Al2oInMy0Ixw_XXPz14OZfmkFh5ySEIU105aub2ntn8,42985
389
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html,sha256=OD8P7AVBMNRplxtmtcvZK0HUARnLKBhc_cHHR4pC04U,76107
390
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html,sha256=Ld8BLfB66fqOIl3McBEprHlrgAcXWGLkD4-1VYVT_3c,383716
391
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html,sha256=wMvaD1sKl2GnDeMqEwHVtds8IB6I0WDA1X9-sz71o8c,69565
392
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html,sha256=GExTrodoI00RE17AbE04eznqQCbteOYV4nBpo5D1hkE,65369
393
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html,sha256=VUp1ydRXnqiW3nbahKReyPZaZ0rQMWnmM5lysQ1atUE,87987
394
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html,sha256=8C3ueRA1K-1WUpg_FKKUJcT0oglNM2ufNA1y_AtWyxk,80797
395
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html,sha256=4HS3lkH9yAmMRNFDgcUU79pxbAXSWh576C7roU3MElQ,47078
396
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html,sha256=PQEvzkWPwRiNRQHXnbtyvWnVsxcZmTaMQy0QFlkdm6s,50307
397
+ solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html,sha256=BnlKOjW-0PjEB5TP7Q4Hu2ClL1CQl1MgekCD9aLS8dk,69692
398
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html,sha256=wmzQjhVOhsea_4qCdw1nkIvW6VumxKd2cgbt8KmSwS4,45167
399
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html,sha256=E83A8DmTep48fKn379pVKcHiwZoxh-4JGObpru9p56I,35137
400
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html,sha256=nWBjyM48WnZV4zo1OyEuT1RGQdi4U3RVqw_CDtj70KI,58574
401
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html,sha256=5kOod31Z8cMbChP9u04rL0RaMK2vJZ_-9MM5rCb2oEg,38123
402
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html,sha256=ko8aHOISYelIhmGCvzOdu9INcz_39fNbfkDMr0WDuek,51021
403
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html,sha256=ciG7_VgfEroHtJnR8_r3OGMBXDRW4gUYBei0_nMPOb4,163873
404
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html,sha256=UySm6AvR09by7NTh3meDVlfkEXqIZsCxZdikfcC9dgE,403272
405
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html,sha256=9RqcpLjg5kUVWiSA-cQ4K25VwqRLBJGhBn65ExXUQZ8,175979
406
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html,sha256=UFPy4qAozEVOqi1TBfy9WSu5dlobTBBog8Ly9n773N4,60059
407
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html,sha256=AibgyfNNJFYSwvXHI4bjlwBQCQpZHXxqUvsgUh_-A_c,26174
408
+ solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html,sha256=fJRNYZPwFe0xSIfEiYme4nheYPJCVmm0NSDl1jk1cM4,30179
398
409
  solace_agent_mesh/assets/docs/img/Solace_AI_Framework_With_Broker.png,sha256=e6MbZpxlY1xJ8U01zQogm8vWgokQqDfhsyPyNxtuS00,447393
399
410
  solace_agent_mesh/assets/docs/img/logo.png,sha256=TdXZ2wnkSkaFrGO-5fy2WcmjGXaGzwE29dM83raxoTg,45439
400
411
  solace_agent_mesh/assets/docs/img/sac-flows.png,sha256=868GgNJGPxn2G6c1Md_0umhg3xuAo7t6HEx8hOKbUJY,21098
@@ -404,7 +415,7 @@ solace_agent_mesh/assets/docs/img/solace-logo-text.svg,sha256=-wslMOppjNAJqbWRfB
404
415
  solace_agent_mesh/assets/docs/img/solace-logo.png,sha256=XY5zC_yIVxHdO14TMgW4eTsDWryPsgE_oTSJV4CQthw,17627
405
416
  solace_agent_mesh/config_portal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
417
  solace_agent_mesh/config_portal/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
407
- solace_agent_mesh/config_portal/backend/common.py,sha256=RmNUyUpFtbdZgUDh2nEOUCRhMj_H9ILtOmZFqRV9jpI,3036
418
+ solace_agent_mesh/config_portal/backend/common.py,sha256=gcMGgGYY7o6vBz2jXOc4fMTSPPvlMtcAbpjWd57QVOE,3057
408
419
  solace_agent_mesh/config_portal/backend/plugin_catalog_server.py,sha256=Qr5cFUMyDq0qHDTa9ZRbczTi8BUWPZTvxAv3jRxa3hw,7875
409
420
  solace_agent_mesh/config_portal/backend/server.py,sha256=gx8KIAopkeAmn4WfseP5z79GOE246Lf8nPaCw7QrBPo,23689
410
421
  solace_agent_mesh/config_portal/backend/plugin_catalog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -414,24 +425,24 @@ solace_agent_mesh/config_portal/backend/plugin_catalog/registry_manager.py,sha25
414
425
  solace_agent_mesh/config_portal/backend/plugin_catalog/scraper.py,sha256=j7yJUEKjgsVs7TvSf8Uf_22bKotlYhocIYhfJhTpQPI,21238
415
426
  solace_agent_mesh/config_portal/frontend/static/client/Solace_community_logo.png,sha256=ugNi5vBxTdFZMW2uWNZYcutyk4z8yw9e5KEL5XDcodU,5894
416
427
  solace_agent_mesh/config_portal/frontend/static/client/favicon.ico,sha256=9z1ZdOqroxsg2-FzV79kTJ69hVqWVkrDlIv2RgmIhR8,15086
417
- solace_agent_mesh/config_portal/frontend/static/client/index.html,sha256=CLGBDKFc1Zv25lpO0Y-IHbU9vJj-EWIxzWihXdZS73E,1419
418
- solace_agent_mesh/config_portal/frontend/static/client/assets/_index-bFMKlzKf.js,sha256=JBJO4Nb-60JkEfQbVyseSfMexhK_v1c3-rA1kCtFYso,277760
428
+ solace_agent_mesh/config_portal/frontend/static/client/index.html,sha256=mMl9TTN67LiqAWlZU86X7v0hkSwuT8dv56lUBFMx_Fw,1419
429
+ solace_agent_mesh/config_portal/frontend/static/client/assets/_index-BNuqpWDc.js,sha256=rmfCcFnx6k5B7ckQff4FM4UJ2fy4Vzan5RpmbhyqpzQ,277936
419
430
  solace_agent_mesh/config_portal/frontend/static/client/assets/components-Rk0n-9cK.js,sha256=dXPV9MnIciHjfm68Wp9aKpViYlXfyN_6etThgGS8KO8,40041
420
431
  solace_agent_mesh/config_portal/frontend/static/client/assets/entry.client-mvZjNKiz.js,sha256=-9lo6je5RWC0Q4FKlTg-tdu1dsoNQvwbLr5zgfZwf58,3862
421
432
  solace_agent_mesh/config_portal/frontend/static/client/assets/index-DzNKzXrc.js,sha256=4xvgTOvPkqnfRR2N9T199hzTFK6u_NdvA5ImbTe2UYU,217925
422
- solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-89db7c30.js,sha256=0TNl4hKVU240O_8gPn1BaH0ZEDUJyiEojjOnrgdouCM,781
433
+ solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-44d62be6.js,sha256=GzdcIFPHxV0yEt_dTo_EmGs8KPVuV1sQpkgUauoCTi0,781
423
434
  solace_agent_mesh/config_portal/frontend/static/client/assets/root-BWvk5-gF.js,sha256=KoDaD7JSrkUDgUbDa0JqaB7mXNCc2fR-T5kKAcH5nho,1799
424
435
  solace_agent_mesh/config_portal/frontend/static/client/assets/root-DxRwaWiE.css,sha256=HaETPzdva-2CpjK-MmIBI6lipZMiGHmAqLRJiD8s2QE,33607
425
436
  solace_agent_mesh/client/webui/frontend/static/auth-callback.html,sha256=t6KrhAoqGSNuw4LDJBHYyAKhP8W78bJfyHCB1RyuVlU,604
426
- solace_agent_mesh/client/webui/frontend/static/index.html,sha256=QY6MjdS5W_cbBUwFpedeZNiJJAeIx4K-Rw1EGIazw2s,671
437
+ solace_agent_mesh/client/webui/frontend/static/index.html,sha256=z7Wq7zKZ7DB40nbO76pBIb-SJCI9SjetHuH9T_lbR6g,671
427
438
  solace_agent_mesh/client/webui/frontend/static/assets/authCallback-j1LW-wlq.js,sha256=VIDe3uws3j2A7_PHUKHwGizPYBmzNqdjumjyTuyBClc,528
428
439
  solace_agent_mesh/client/webui/frontend/static/assets/client-B9p_nFNA.js,sha256=6lG8UbVPMnZxsZIprKnq4yRHGZ5Cx8tsyV6dsRox83A,174527
429
440
  solace_agent_mesh/client/webui/frontend/static/assets/favicon-BLgzUch9.ico,sha256=9z1ZdOqroxsg2-FzV79kTJ69hVqWVkrDlIv2RgmIhR8,15086
430
- solace_agent_mesh/client/webui/frontend/static/assets/main-BKIoiLSu.js,sha256=d5UHRDlx0z1gXgKa2ITntebaW_j7WUS7haMyYW9cNXU,422079
441
+ solace_agent_mesh/client/webui/frontend/static/assets/main-B0PHV3hm.js,sha256=84ECnk_tK1uGzRqL0Q3-QkwYtVEnJfRZLrZJf863_c8,424473
431
442
  solace_agent_mesh/client/webui/frontend/static/assets/main-ChRwcV89.css,sha256=eWc7an60oiobwKiH4LOAhC77AAE50q95HRc3xh8CdB0,119934
432
443
  solace_agent_mesh/client/webui/frontend/static/assets/vendor-CS5YMf8a.js,sha256=pySecfbg42jjmh23Z4dRsbST36DQM8SCo4X7_o7nhIs,340916
433
- solace_agent_mesh-1.4.7.dist-info/METADATA,sha256=Z7V1VO8bc6a1pdByt_DcH8PAHdffXSAC1ww8rGnri8w,24921
434
- solace_agent_mesh-1.4.7.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
435
- solace_agent_mesh-1.4.7.dist-info/entry_points.txt,sha256=5pLVH8d8bd4sxUwBh7VTni8gTTSzTqGfY14zgdQZm1I,106
436
- solace_agent_mesh-1.4.7.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
437
- solace_agent_mesh-1.4.7.dist-info/RECORD,,
444
+ solace_agent_mesh-1.4.8.dist-info/METADATA,sha256=bAcPit__BJZio0WZGKVUvlDm7yRSatyY1qRsS2VvLrQ,24925
445
+ solace_agent_mesh-1.4.8.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
446
+ solace_agent_mesh-1.4.8.dist-info/entry_points.txt,sha256=5pLVH8d8bd4sxUwBh7VTni8gTTSzTqGfY14zgdQZm1I,106
447
+ solace_agent_mesh-1.4.8.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
448
+ solace_agent_mesh-1.4.8.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[515],{644:(e,t,s)=>{s.r(t),s.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>o,metadata:()=>n,toc:()=>l});const n=JSON.parse('{"id":"documentation/concepts/architecture","title":"Architecture","description":"Overview","source":"@site/docs/documentation/concepts/architecture.md","sourceDirName":"documentation/concepts","slug":"/documentation/concepts/architecture","permalink":"/solace-agent-mesh/docs/documentation/concepts/architecture","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/concepts/architecture.md","tags":[],"version":"current","sidebarPosition":4,"frontMatter":{"title":"Architecture","sidebar_position":4},"sidebar":"docSidebar","previous":{"title":"Configurations","permalink":"/solace-agent-mesh/docs/documentation/getting-started/configurations"},"next":{"title":"Solace Agent Mesh CLI","permalink":"/solace-agent-mesh/docs/documentation/concepts/cli"}}');var i=s(4848),r=s(8453);const o={title:"Architecture",sidebar_position:4},a="Solace Agent Mesh Architecture",c={},l=[{value:"Overview",id:"overview",level:2},{value:"Architectural Principles",id:"architectural-principles",level:2},{value:"System Components",id:"system-components",level:2},{value:"Solace Event Broker",id:"solace-event-broker",level:3},{value:"Gateways",id:"gateways",level:3},{value:"Agent Hosts",id:"agent-hosts",level:3},{value:"Agents",id:"agents",level:3},{value:"Key Architectural Flows",id:"key-architectural-flows",level:2},{value:"User Task Processing Flow",id:"user-task-processing-flow",level:3},{value:"Agent-to-Agent Delegation Flow",id:"agent-to-agent-delegation-flow",level:3},{value:"Agent Discovery Flow",id:"agent-discovery-flow",level:3},{value:"A2A Protocol and Topic Structure",id:"a2a-protocol-and-topic-structure",level:2}];function d(e){const t={code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",mermaid:"mermaid",ol:"ol",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.header,{children:(0,i.jsx)(t.h1,{id:"solace-agent-mesh-architecture",children:"Solace Agent Mesh Architecture"})}),"\n",(0,i.jsx)(t.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(t.p,{children:"Solace Agent Mesh is an event-driven framework for creating a distributed ecosystem of collaborative AI agents. The architecture is designed to decouple agent logic from communication and orchestration, enabling scalability, resilience, and modularity."}),"\n",(0,i.jsx)(t.p,{children:"It integrates three primary technologies:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Solace Event Broker"}),": Provides the messaging fabric for all asynchronous communication, utilizing topic-based routing for the Agent-to-Agent (A2A) protocol."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Solace AI Connector (SAC)"}),": Serves as the runtime environment for hosting and managing the lifecycle of all system components (Agents and Gateways)."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Google Agent Development Kit (ADK)"}),": Provides the core logic for individual agents, including LLM interaction, tool execution, and state management."]}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"architectural-principles",children:"Architectural Principles"}),"\n",(0,i.jsx)(t.p,{children:"The design of Solace Agent Mesh is founded on several key architectural principles:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Event-Driven Architecture (EDA)"}),": All interactions between major components are asynchronous and mediated by the event broker. This eliminates direct dependencies, allowing components to be developed, deployed, and scaled independently."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Component Decoupling"}),": Gateways, Agent Hosts, and other services communicate through standardized A2A protocol messages over the event mesh. They do not require knowledge of each other's network location, implementation language, or internal logic."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Scalability and Resilience"}),": The architecture supports horizontal scaling of Agent Hosts and Gateways. The event broker provides fault tolerance and guaranteed message delivery, ensuring system resilience even if individual components fail or are restarted."]}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"system-components",children:"System Components"}),"\n",(0,i.jsx)(t.p,{children:"The architecture comprises several distinct types of components that interact through the Solace broker."}),"\n",(0,i.jsx)(t.mermaid,{value:'graph TD\n subgraph External Systems\n direction TB\n UserInterfaces["User Interfaces<br/>(Web UI, Slack, CLI)"]\n APIs["External Systems & APIs"]\n end\n\n subgraph SolaceAgentMesh [Solace Agent Mesh]\n direction TB\n subgraph Gateways\n WebUIGateway["Web UI Gateway"]\n CustomGateway["Custom Gateway"]\n end\n\n Broker["Solace Broker<br/>(A2A Protocol over Topics)"]\n\n subgraph AgentHosts ["Agent Hosts (SAC Applications)"]\n AgentHost1["Agent Host<br/>(Runs Agent A)"]\n AgentHost2["Agent Host<br/>(Runs Agent B)"]\n AgentHostN["..."]\n end\n end\n\n subgraph BackendServices [Backend Services & Tools]\n LLM["Large Language Models"]\n CustomTools["Custom Tools<br/>(Python, MCP)"]\n DataStores["Databases & Vector Stores"]\n ArtifactService["Artifact Service<br/>(Filesystem, Cloud Storage)"]\n end\n\n %% Connections\n UserInterfaces -- Interacts with --\x3e Gateways\n APIs -- Interacts with --\x3e Gateways\n\n Gateways -- Pub/Sub --\x3e Broker\n AgentHosts -- Pub/Sub --\x3e Broker\n\n AgentHost1 -- Uses --\x3e LLM\n AgentHost1 -- Uses --\x3e CustomTools\n AgentHost1 -- Uses --\x3e DataStores\n AgentHost1 -- Uses --\x3e ArtifactService\n\n AgentHost2 -- Uses --\x3e LLM\n AgentHost2 -- Uses --\x3e CustomTools\n AgentHost2 -- Uses --\x3e DataStores\n AgentHost2 -- Uses --\x3e ArtifactService\n\n %% Styling\n classDef external fill:#E3F2FD,stroke:#1976D2,stroke-width:2px,color:#0D47A1;\n classDef gateway fill:#E8F5E8,stroke:#388E3C,stroke-width:2px,color:#1B5E20;\n classDef mesh fill:#FFF8E1,stroke:#F57C00,stroke-width:2px,color:#E65100;\n classDef agent fill:#FFF3E0,stroke:#FF9800,stroke-width:2px,color:#E65100;\n classDef service fill:#F3E5F5,stroke:#7B1FA2,stroke-width:2px,color:#4A148C;\n\n class UserInterfaces,APIs external;\n class WebUIGateway,CustomGateway gateway;\n class Broker,SolaceAgentMesh mesh;\n class AgentHosts,AgentHost1,AgentHost2,AgentHostN agent;\n class LLM,CustomTools,DataStores,ArtifactService service;'}),"\n",(0,i.jsx)(t.h3,{id:"solace-event-broker",children:"Solace Event Broker"}),"\n",(0,i.jsx)(t.p,{children:"The broker is the central messaging fabric. It is responsible for routing all A2A protocol messages between components using a hierarchical topic structure. This enables patterns like request/reply, streaming updates, and publish/subscribe for discovery."}),"\n",(0,i.jsx)(t.h3,{id:"gateways",children:"Gateways"}),"\n",(0,i.jsx)(t.p,{children:"Gateways are SAC applications that act as bridges between external systems and the agent mesh. Their primary responsibilities are:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Protocol Translation"}),": Convert external protocols (for example, HTTP, WebSockets, Slack RTM) into the standardized A2A protocol, and vice-versa."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Authentication and Authorization"}),": Authenticate incoming requests and, using a pluggable ",(0,i.jsx)(t.code,{children:"AuthorizationService"}),", retrieve the user's permission scopes."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Session Management"}),": Manage external user sessions and map them to A2A task lifecycles."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Response Handling"}),": Receive asynchronous A2A responses and status updates from agents and deliver them to the external client."]}),"\n"]}),"\n",(0,i.jsxs)(t.p,{children:["The ",(0,i.jsx)(t.strong,{children:"Gateway Development Kit (GDK)"})," provides ",(0,i.jsx)(t.code,{children:"BaseGatewayApp"})," and ",(0,i.jsx)(t.code,{children:"BaseGatewayComponent"})," classes to abstract common gateway logic, such as A2A protocol handling, agent discovery, and late-stage embed resolution, simplifying the creation of new gateways."]}),"\n",(0,i.jsx)(t.h3,{id:"agent-hosts",children:"Agent Hosts"}),"\n",(0,i.jsxs)(t.p,{children:["An Agent Host is a SAC application (",(0,i.jsx)(t.code,{children:"SamAgentApp"}),") that hosts a single ADK-based agent. Its key architectural functions include:"]}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Hosting the ADK Runtime"}),": It manages the lifecycle of the ADK ",(0,i.jsx)(t.code,{children:"Runner"})," and ",(0,i.jsx)(t.code,{children:"LlmAgent"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"A2A Protocol Handling"}),": The internal ",(0,i.jsx)(t.code,{children:"SamAgentComponent"})," translates incoming A2A requests into ADK ",(0,i.jsx)(t.code,{children:"Task"})," objects and converts ADK ",(0,i.jsx)(t.code,{children:"Event"})," objects into outgoing A2A ",(0,i.jsx)(t.code,{children:"TaskStatusUpdateEvent"}),", ",(0,i.jsx)(t.code,{children:"TaskArtifactUpdateEvent"}),", or final response messages."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Scope Enforcement"}),": It extracts permission scopes from incoming message properties and filters the agent's available tools accordingly."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Service Initialization"}),": It initializes ADK services like the ",(0,i.jsx)(t.code,{children:"ArtifactService"})," and ",(0,i.jsx)(t.code,{children:"MemoryService"})," based on its configuration."]}),"\n"]}),"\n",(0,i.jsx)(t.h3,{id:"agents",children:"Agents"}),"\n",(0,i.jsx)(t.p,{children:"An agent is the logical entity within an Agent Host that performs tasks. It is defined by its configuration, which includes:"}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Instructions"}),": The base prompt that defines its persona, capabilities, and constraints."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"LLM Configuration"}),": The specific large language model to use."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Toolset"}),": A collection of available tools, which can be built-in, custom Python functions, or MCP Toolsets."]}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"key-architectural-flows",children:"Key Architectural Flows"}),"\n",(0,i.jsx)(t.h3,{id:"user-task-processing-flow",children:"User Task Processing Flow"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsxs)(t.li,{children:["An external client sends a request to a ",(0,i.jsx)(t.strong,{children:"Gateway"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:["The Gateway authenticates the request, retrieves the user's permission scopes via its ",(0,i.jsx)(t.code,{children:"AuthorizationService"}),", and translates the request into an A2A task message. It includes the scopes in the Solace message's user properties."]}),"\n",(0,i.jsxs)(t.li,{children:["The Gateway publishes the message to the target agent's request topic on the ",(0,i.jsx)(t.strong,{children:"Solace Broker"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:["The corresponding ",(0,i.jsx)(t.strong,{children:"Agent Host"})," receives the message. The ",(0,i.jsx)(t.code,{children:"SamAgentComponent"})," extracts the scopes and initiates an ADK task."]}),"\n",(0,i.jsxs)(t.li,{children:["The ADK ",(0,i.jsx)(t.code,{children:"LlmAgent"})," processes the task. Before invoking the LLM, a ",(0,i.jsx)(t.code,{children:"before_model_callback"})," filters the available tools based on the user's scopes."]}),"\n",(0,i.jsxs)(t.li,{children:["As the agent executes, the ",(0,i.jsx)(t.code,{children:"SamAgentComponent"})," translates ADK events into A2A status and artifact update messages, publishing them to the originating Gateway's status topic."]}),"\n",(0,i.jsxs)(t.li,{children:["The Gateway receives these streaming updates, performs any necessary late-stage processing (like resolving ",(0,i.jsx)(t.code,{children:"artifact_content"})," embeds), and forwards them to the client."]}),"\n",(0,i.jsx)(t.li,{children:"Upon completion, the Agent Host sends a final A2A response message to the Gateway, which delivers it to the client."}),"\n"]}),"\n",(0,i.jsx)(t.h3,{id:"agent-to-agent-delegation-flow",children:"Agent-to-Agent Delegation Flow"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Agent A"}),", while processing a task, determines a sub-task should be delegated to ",(0,i.jsx)(t.strong,{children:"Agent B"}),"."]}),"\n",(0,i.jsxs)(t.li,{children:["Agent A uses its ",(0,i.jsx)(t.code,{children:"PeerAgentTool"})," to construct a new A2A task request for Agent B. It propagates the original user's permission scopes to maintain the security context."]}),"\n",(0,i.jsx)(t.li,{children:"The request is published to Agent B's request topic."}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Agent B's Host"})," receives and processes the sub-task, enforcing the propagated scopes on its own toolset."]}),"\n",(0,i.jsx)(t.li,{children:"Agent B sends status updates and a final response to topics designated by Agent A."}),"\n",(0,i.jsx)(t.li,{children:"Agent A receives the results and incorporates them into its ongoing task."}),"\n"]}),"\n",(0,i.jsx)(t.h3,{id:"agent-discovery-flow",children:"Agent Discovery Flow"}),"\n",(0,i.jsxs)(t.ol,{children:["\n",(0,i.jsxs)(t.li,{children:["On startup and periodically, each ",(0,i.jsx)(t.strong,{children:"Agent Host"})," publishes an ",(0,i.jsx)(t.code,{children:"AgentCard"})," (a JSON document describing its agent's capabilities) to a well-known discovery topic (for example, ",(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/discovery/agentcards"}),")."]}),"\n",(0,i.jsxs)(t.li,{children:[(0,i.jsx)(t.strong,{children:"Gateways"})," and other ",(0,i.jsx)(t.strong,{children:"Agent Hosts"})," subscribe to this topic."]}),"\n",(0,i.jsxs)(t.li,{children:["Upon receiving an ",(0,i.jsx)(t.code,{children:"AgentCard"}),", components update their local ",(0,i.jsx)(t.code,{children:"AgentRegistry"}),", making them aware of available agents for user selection (at the Gateway) or peer delegation (at the Agent)."]}),"\n"]}),"\n",(0,i.jsx)(t.h2,{id:"a2a-protocol-and-topic-structure",children:"A2A Protocol and Topic Structure"}),"\n",(0,i.jsx)(t.p,{children:"The A2A protocol is based on JSON-RPC 2.0 and defines the message formats for all interactions. Communication is routed via a hierarchical topic structure on the Solace broker."}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Purpose"}),(0,i.jsx)(t.th,{children:"Topic Pattern"})]})}),(0,i.jsxs)(t.tbody,{children:[(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Agent Discovery"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/discovery/agentcards"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Task Requests"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/agent/request/{target_agent_name}"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Status Updates"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/gateway/status/{gateway_id}/{task_id}"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Final Responses"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/gateway/response/{gateway_id}/{task_id}"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Peer Delegation Status"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/agent/status/{delegating_agent_name}/{sub_task_id}"})})]}),(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:(0,i.jsx)(t.strong,{children:"Peer Delegation Response"})}),(0,i.jsx)(t.td,{children:(0,i.jsx)(t.code,{children:"{namespace}/a2a/v1/agent/response/{delegating_agent_name}/{sub_task_id}"})})]})]})]}),"\n",(0,i.jsx)(t.p,{children:"This topic structure allows for precise, point-to-point routing in a decoupled, asynchronous environment."})]})}function h(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,t,s)=>{s.d(t,{R:()=>o,x:()=>a});var n=s(6540);const i={},r=n.createContext(i);function o(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:o(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[6634],{1893:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>l});const o=JSON.parse('{"id":"documentation/getting-started/component-overview","title":"Component Overview","description":"Solace Agent Mesh is built on event-driven architecture principles using the A2A (Agent-to-Agent) protocol, with all components communicating through a standardized protocol over the Solace broker. This architectural choice enables loose coupling between components, making the system highly flexible and scalable.","source":"@site/docs/documentation/getting-started/component-overview.md","sourceDirName":"documentation/getting-started","slug":"/documentation/getting-started/component-overview","permalink":"/solace-agent-mesh/docs/documentation/getting-started/component-overview","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/getting-started/component-overview.md","tags":[],"version":"current","sidebarPosition":40,"frontMatter":{"title":"Component Overview","sidebar_position":40},"sidebar":"docSidebar","previous":{"title":"Quick Start","permalink":"/solace-agent-mesh/docs/documentation/getting-started/quick-start"},"next":{"title":"Configurations","permalink":"/solace-agent-mesh/docs/documentation/getting-started/configurations"}}');var s=n(4848),i=n(8453);const r={title:"Component Overview",sidebar_position:40},a="Component Overview",c={},l=[];function d(e){const t={a:"a",h1:"h1",header:"header",li:"li",ol:"ol",p:"p",strong:"strong",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.header,{children:(0,s.jsx)(t.h1,{id:"component-overview",children:"Component Overview"})}),"\n",(0,s.jsx)(t.p,{children:"Solace Agent Mesh is built on event-driven architecture principles using the A2A (Agent-to-Agent) protocol, with all components communicating through a standardized protocol over the Solace broker. This architectural choice enables loose coupling between components, making the system highly flexible and scalable."}),"\n",(0,s.jsx)(t.p,{children:'Solace Agent Mesh integrates the Google Agent Development Kit (ADK) with a Solace event mesh to provide a "Universal A2A Agent Host" that enables distributed AI agent communication. Each component is designed to perform specific roles while working together seamlessly through the A2A protocol.'}),"\n",(0,s.jsx)(t.p,{children:"The key components that make up Solace Agent Mesh are:"}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Solace Event Broker or Event Mesh"}),": The central nervous system of the framework, facilitating A2A protocol communication between all components. ",(0,s.jsx)(t.a,{href:"https://solace.com/products/event-broker/",children:"more \ud83d\udd17"})]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"A2A Protocol & Agent Registry"}),": The standardized communication protocol that enables agent discovery, task delegation, and peer-to-peer communication."]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Orchestrator"}),": A specialized agent responsible for breaking down requests into tasks and managing the overall workflow. ",(0,s.jsx)(t.a,{href:"/solace-agent-mesh/docs/documentation/concepts/orchestrator",children:"more \ud83d\udd17"})]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Gateways"}),": The entry and exit points for the system, providing various interfaces (REST, HTTP SSE, webhooks, event mesh) that translate external requests into A2A protocol messages. ",(0,s.jsx)(t.a,{href:"/solace-agent-mesh/docs/documentation/concepts/gateways",children:"more \ud83d\udd17"})]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Agents"}),": ADK-powered processing units that communicate through the A2A protocol, each bringing specialized capabilities and tools. ",(0,s.jsx)(t.a,{href:"/solace-agent-mesh/docs/documentation/concepts/agents",children:"more \ud83d\udd17"})]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"ADK Runtime"}),": The Google Agent Development Kit provides the core intelligence layer with tool execution, session management, and artifact handling capabilities."]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Built-in Tools"}),": Comprehensive tool ecosystem including artifact management, data analysis, web tools, and peer agent delegation capabilities."]}),"\n"]}),"\n",(0,s.jsxs)(t.li,{children:["\n",(0,s.jsxs)(t.p,{children:[(0,s.jsx)(t.strong,{children:"Real-time Monitoring and Debugging Component"}),": Enables real-time monitoring of system activities and provides interactive debugging capabilities for administrators. ",(0,s.jsx)(t.a,{href:"/solace-agent-mesh/docs/documentation/deployment/observability",children:"more \ud83d\udd17"})]}),"\n"]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>a});var o=n(6540);const s={},i=o.createContext(s);function r(e){const t=o.useContext(i);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function a(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),o.createElement(i.Provider,{value:t},e.children)}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[246],{6854:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>o,contentTitle:()=>d,default:()=>h,frontMatter:()=>r,metadata:()=>i,toc:()=>c});const i=JSON.parse('{"id":"documentation/getting-started/configurations","title":"Configurations","description":"Shared Configurations","source":"@site/docs/documentation/getting-started/configurations.md","sourceDirName":"documentation/getting-started","slug":"/documentation/getting-started/configurations","permalink":"/solace-agent-mesh/docs/documentation/getting-started/configurations","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/getting-started/configurations.md","tags":[],"version":"current","sidebarPosition":50,"frontMatter":{"title":"Configurations","sidebar_position":50,"toc_max_heading_level":4},"sidebar":"docSidebar","previous":{"title":"Component Overview","permalink":"/solace-agent-mesh/docs/documentation/getting-started/component-overview"},"next":{"title":"Architecture","permalink":"/solace-agent-mesh/docs/documentation/concepts/architecture"}}');var s=n(4848),l=n(8453);const r={title:"Configurations",sidebar_position:50,toc_max_heading_level:4},d="Configurations",o={},c=[{value:"Shared Configurations",id:"shared-configurations",level:2},{value:"Using Shared Configurations",id:"using-shared-configurations",level:3},{value:"Managing Multiple Shared Configuration Files",id:"managing-multiple-shared-configuration-files",level:3},{value:"Parameters",id:"parameters",level:3},{value:"Example <code>shared_config.yaml</code>",id:"example-shared_configyaml",level:5},{value:"Broker Connection",id:"broker-connection",level:4},{value:"Models",id:"models",level:4},{value:"Model Configuration Structure",id:"model-configuration-structure",level:5},{value:"Pre-Defined Model Types",id:"pre-defined-model-types",level:5},{value:"Services",id:"services",level:4},{value:"Session Service",id:"session-service",level:5},{value:"Artifact Service",id:"artifact-service",level:5},{value:"Data Tools Config",id:"data-tools-config",level:5},{value:"SSL/TLS Configuration",id:"ssltls-configuration",level:2},{value:"System Logs",id:"system-logs",level:2}];function a(e){const t={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,l.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.header,{children:(0,s.jsx)(t.h1,{id:"configurations",children:"Configurations"})}),"\n",(0,s.jsx)(t.h2,{id:"shared-configurations",children:"Shared Configurations"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"shared_config.yaml"})," file is used to define configurations that can be shared across multiple agents or components in Solace Agent Mesh. This allows for centralized management of common settings like broker connections and language model configurations."]}),"\n",(0,s.jsx)(t.h3,{id:"using-shared-configurations",children:"Using Shared Configurations"}),"\n",(0,s.jsxs)(t.p,{children:["All agents and gateways require access to a ",(0,s.jsx)(t.code,{children:"shared_config"})," object. You can provide configuration in the following ways:"]}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:"Hard-coding values"}),": You can directly embed the ",(0,s.jsx)(t.code,{children:"shared_config"})," values within your agent or gateway YAML files."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsxs)(t.strong,{children:["Using ",(0,s.jsx)(t.code,{children:"!include"})]}),": For better project consistency and management, you can use the ",(0,s.jsx)(t.code,{children:"!include"})," directive to load a shared configuration file."]}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["When a plugin is installed, it may come with hard-coded default values. It is a best practice to remove this section and use ",(0,s.jsx)(t.code,{children:"!include"})," to point to the centralized ",(0,s.jsx)(t.code,{children:"shared_config"})," file. This ensures that all components are using the same base configuration."]}),"\n",(0,s.jsx)(t.h3,{id:"managing-multiple-shared-configuration-files",children:"Managing Multiple Shared Configuration Files"}),"\n",(0,s.jsx)(t.p,{children:"You can use multiple shared configuration files to manage different environments or setups (e.g., for different cloud providers). You must follow these rules:"}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:"Filename"}),": The filename must always start with ",(0,s.jsx)(t.code,{children:"shared_config"})," (e.g., ",(0,s.jsx)(t.code,{children:"shared_config_aws.yaml"}),", ",(0,s.jsx)(t.code,{children:"shared_config_gcp.yaml"}),")."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:"Sub-directories"}),": You can organize these files into sub-directories (e.g., ",(0,s.jsx)(t.code,{children:"configs/agents/shared_config.yaml"}),"). When you do this, you must update the ",(0,s.jsx)(t.code,{children:"!include"})," path in your agent or gateway configurations to point to the correct location."]}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["The file uses YAML anchors (",(0,s.jsx)(t.code,{children:"&anchor_name"}),") to create reusable configuration blocks, which can then be referenced in agent configuration files."]}),"\n",(0,s.jsx)(t.h3,{id:"parameters",children:"Parameters"}),"\n",(0,s.jsxs)(t.h5,{id:"example-shared_configyaml",children:["Example ",(0,s.jsx)(t.code,{children:"shared_config.yaml"})]}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-yaml",children:"shared_config:\n - broker_connection: &broker_connection\n dev_mode: ${SOLACE_DEV_MODE, false}\n broker_url: ${SOLACE_BROKER_URL, ws://localhost:8080}\n broker_username: ${SOLACE_BROKER_USERNAME, default}\n broker_password: ${SOLACE_BROKER_PASSWORD, default}\n broker_vpn: ${SOLACE_BROKER_VPN, default}\n temporary_queue: ${USE_TEMPORARY_QUEUES, true}\n # Ensure high enough limits if many agents are running\n # max_connection_retries: -1 # Retry forever\n\n - models:\n planning: &planning_model\n # This dictionary structure tells ADK to use the LiteLlm wrapper.\n # 'model' uses the specific model identifier your endpoint expects.\n model: ${LLM_SERVICE_PLANNING_MODEL_NAME} # Use env var for model name\n # 'api_base' tells LiteLLM where to send the request.\n api_base: ${LLM_SERVICE_ENDPOINT} # Use env var for endpoint URL\n # 'api_key' provides authentication.\n api_key: ${LLM_SERVICE_API_KEY} # Use env var for API key\n # Enable parallel tool calls for planning model\n parallel_tool_calls: true \n # max_tokens: ${MAX_TOKENS, 16000} # Set a reasonable max token limit for planning\n # temperature: 0.1 # Lower temperature for more deterministic planning\n \n general: &general_model\n # This dictionary structure tells ADK to use the LiteLlm wrapper.\n # 'model' uses the specific model identifier your endpoint expects.\n model: ${LLM_SERVICE_GENERAL_MODEL_NAME} # Use env var for model name\n # 'api_base' tells LiteLLM where to send the request.\n api_base: ${LLM_SERVICE_ENDPOINT} # Use env var for endpoint URL\n # 'api_key' provides authentication.\n api_key: ${LLM_SERVICE_API_KEY} # Use env var for API key\n\n # ... (similar structure)\n\n - services:\n # Default session service configuration\n session_service: &default_session_service\n type: \"memory\"\n default_behavior: \"PERSISTENT\"\n \n # Default artifact service configuration\n artifact_service: &default_artifact_service\n type: \"filesystem\"\n base_path: \"/tmp/samv2\"\n artifact_scope: namespace\n \n # Default data tools configuration\n data_tools_config: &default_data_tools_config\n sqlite_memory_threshold_mb: 100\n max_result_preview_rows: 50\n max_result_preview_bytes: 4096\n"})}),"\n",(0,s.jsx)(t.h4,{id:"broker-connection",children:"Broker Connection"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"broker_connection"})," section configures the connection to the Solace event broker. The connection parameters are described in the following table:"]}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Parameter"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Environment Variable"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Default"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"dev_mode"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"SOLACE_DEV_MODE"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["When set to ",(0,s.jsx)(t.code,{children:"true"}),", uses an in-memory broker for testing."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"false"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"broker_url"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"SOLACE_BROKER_URL"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The URL of the Solace broker."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"ws://localhost:8080"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"broker_username"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"SOLACE_BROKER_USERNAME"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The username for authenticating with the broker."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"default"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"broker_password"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"SOLACE_BROKER_PASSWORD"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The password for authenticating with the broker."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"default"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"broker_vpn"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"SOLACE_BROKER_VPN"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The Message VPN to connect to on the broker."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"default"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"temporary_queue"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"USE_TEMPORARY_QUEUES"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Whether to use temporary queues for communication. If ",(0,s.jsx)(t.code,{children:"false"}),", a durable queue will be created."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"true"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"max_connection_retries"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"MAX_CONNECTION_RETRIES"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["The maximum number of times to retry connecting to the broker if the connection fails. A value of ",(0,s.jsx)(t.code,{children:"-1"})," means retry forever."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"-1"})})]})]})]}),"\n",(0,s.jsx)(t.admonition,{type:"tip",children:(0,s.jsxs)(t.p,{children:["If you need to configure multiple brokers, you can do so by adding additional entries under ",(0,s.jsx)(t.code,{children:"shared_config"})," with a unique name (For example, ",(0,s.jsx)(t.code,{children:"broker_connection_eu: &broker_connection_eu"})," or ",(0,s.jsx)(t.code,{children:"broker_connection_us: &broker_connection_us"}),") and then use the proper reference in your agent configurations. (Example: ",(0,s.jsx)(t.code,{children:"<<: *broker_connection_eu"}),")"]})}),"\n",(0,s.jsx)(t.h4,{id:"models",children:"Models"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"models"})," section is used to configure the various Large Language Models (LLMs) and other generative models used by the agents. The configuration uses the ",(0,s.jsx)(t.a,{href:"https://litellm.ai/",children:"LiteLLM"})," library, which provides a standardized way to interact with ",(0,s.jsx)(t.a,{href:"https://docs.litellm.ai/docs/providers",children:"different model providers"}),"."]}),"\n",(0,s.jsx)(t.h5,{id:"model-configuration-structure",children:"Model Configuration Structure"}),"\n",(0,s.jsx)(t.p,{children:"The following table describes the parameters that tell the system how to interact with the model:"}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Parameter"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Environment Variable"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Description"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"model"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"LLM_SERVICE_<MODEL_NAME>_MODEL_NAME"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["The specific model identifier that the endpoint expects in the format of ",(0,s.jsx)(t.code,{children:"provider/model"})," (e.g., ",(0,s.jsx)(t.code,{children:"openai/gpt-4"}),", ",(0,s.jsx)(t.code,{children:"anthropic/claude-3-opus-20240229"}),")."]})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"api_base"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"LLM_SERVICE_ENDPOINT"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The base URL of the LLM provider's API endpoint."})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"api_key"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"LLM_SERVICE_API_KEY"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The API key for authenticating with the service."})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"parallel_tool_calls"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"PARALLEL_TOOL_CALLS"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"Enable parallel tool calls for the model."})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"max_tokens"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"MAX_TOKENS"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"Set a reasonable max token limit for the model."})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"temperature"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"TEMPERATURE"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"Lower temperature for more deterministic planning."})]})]})]}),"\n",(0,s.jsx)(t.p,{children:"Alternatively, you can use Gemini models directly through Google Studio AI or Vertex AI:"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-yaml",children:"model: gemini-2.5-pro\n"})}),"\n",(0,s.jsxs)(t.p,{children:["See the ",(0,s.jsx)(t.a,{href:"https://google.github.io/adk-docs/agents/models/#using-google-gemini-models",children:"documentation"})," for details on setting the environment for Gemini models."]}),"\n",(0,s.jsx)(t.h5,{id:"pre-defined-model-types",children:"Pre-Defined Model Types"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"shared_config.yaml"})," example defines several models for different purposes. A pre-defined model serves as an alias for the model configuration. This alias allows you to refer to a configuration by its use case rather than its specific parameters."]}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"planning"})}),": Used by agents for planning and decision-making. It's configured for deterministic outputs (",(0,s.jsx)(t.code,{children:"temperature: 0.1"}),") and can use tools in parallel."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"general"})}),": A general-purpose model for various tasks."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"image_gen"})}),": A model for generating images."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"image_describe"})}),": A model for describing the content of images."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"audio_transcription"})}),": A model for transcribing audio files."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"report_gen"})}),": A model specialized for generating reports."]}),"\n",(0,s.jsxs)(t.li,{children:[(0,s.jsx)(t.strong,{children:(0,s.jsx)(t.code,{children:"multimodal"})}),": A simple string reference to a multimodal model (e.g., ",(0,s.jsx)(t.code,{children:'"gemini-1.5-flash-latest"'}),")."]}),"\n"]}),"\n",(0,s.jsxs)(t.p,{children:["You can define any number of models in this section and reference them in your agent configurations. ",(0,s.jsxs)(t.strong,{children:["By default, the system only uses the ",(0,s.jsx)(t.code,{children:"planning"})," and the ",(0,s.jsx)(t.code,{children:"general"})," models. No need to fill the other fields"]})]}),"\n",(0,s.jsx)(t.h4,{id:"services",children:"Services"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"services"})," section in ",(0,s.jsx)(t.code,{children:"shared_config.yaml"})," is used to configure various services that are available to agents."]}),"\n",(0,s.jsx)(t.h5,{id:"session-service",children:"Session Service"}),"\n",(0,s.jsx)(t.p,{children:"The parameters are described in the following table:"}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Parameter"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Options"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Default"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"type"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,s.jsx)(t.code,{children:"memory"}),", ",(0,s.jsx)(t.code,{children:"vertex_rag"})]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"Configuration for ADK Session Service"}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"memory"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"default_behavior"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,s.jsx)(t.code,{children:"PERSISTENT"}),", ",(0,s.jsx)(t.code,{children:"RUN_BASED"})]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The default behavior of keeping the session history"}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"PERSISTENT"})})]})]})]}),"\n",(0,s.jsx)(t.h5,{id:"artifact-service",children:"Artifact Service"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"artifact_service"})," is responsible for managing artifacts, which are files or data generated by agents."]}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Parameter"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Options"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Default"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"type"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,s.jsx)(t.code,{children:"memory"}),", ",(0,s.jsx)(t.code,{children:"gcs"}),", ",(0,s.jsx)(t.code,{children:"filesystem"})]}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Service type for artifact storage. Use ",(0,s.jsx)(t.code,{children:"memory"})," for in-memory, ",(0,s.jsx)(t.code,{children:"gcs"})," for Google Cloud Storage, or ",(0,s.jsx)(t.code,{children:"filesystem"})," for local file storage."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"memory"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"base_path"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"local path"}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Base directory path for storing artifacts. Required only if ",(0,s.jsx)(t.code,{children:"type"})," is ",(0,s.jsx)(t.code,{children:"filesystem"}),"."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"(none)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"bucket_name"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"bucket name"}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Google Cloud Storage bucket name. Required only if ",(0,s.jsx)(t.code,{children:"type"})," is ",(0,s.jsx)(t.code,{children:"gcs"}),"."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"(none)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"artifact_scope"})}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:[(0,s.jsx)(t.code,{children:"namespace"}),", ",(0,s.jsx)(t.code,{children:"app"})]}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Scope for artifact sharing. ",(0,s.jsx)(t.code,{children:"namespace"}),": shared by all components in the namespace. ",(0,s.jsx)(t.code,{children:"app"}),": isolated by agent/gateway name. Must be consistent for all components in the same process."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"namespace"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"artifact_scope_value"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"custom scope id"}),(0,s.jsxs)(t.td,{style:{textAlign:"left"},children:["Custom identifier for artifact scope. Required if ",(0,s.jsx)(t.code,{children:"artifact_scope"})," is set to a custom value."]}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"(none)"})]})]})]}),"\n",(0,s.jsx)(t.h5,{id:"data-tools-config",children:"Data Tools Config"}),"\n",(0,s.jsxs)(t.p,{children:["The ",(0,s.jsx)(t.code,{children:"data_tools_config"})," section configures the behavior of data analysis tools."]}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Parameter"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Type"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Description"}),(0,s.jsx)(t.th,{style:{textAlign:"left"},children:"Default"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"sqlite_memory_threshold_mb"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"integer"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The memory threshold in megabytes for using an in-memory SQLite database."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"100"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"max_result_preview_rows"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"integer"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The maximum number of rows to show in a result preview."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"50"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"max_result_preview_bytes"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"integer"})}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:"The maximum number of bytes to show in a result preview."}),(0,s.jsx)(t.td,{style:{textAlign:"left"},children:(0,s.jsx)(t.code,{children:"4096"})})]})]})]}),"\n",(0,s.jsx)(t.h2,{id:"ssltls-configuration",children:"SSL/TLS Configuration"}),"\n",(0,s.jsx)(t.p,{children:"Solace agent mesh allows for fine tunning SSL connection to your LLM endpoints through environment variables. The connection parameters are described in the following table:"}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{children:"Parameter"}),(0,s.jsx)(t.th,{children:"Type"}),(0,s.jsx)(t.th,{children:"Description"}),(0,s.jsx)(t.th,{children:"Default"})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"SSL_VERIFY"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"boolean"})}),(0,s.jsx)(t.td,{children:"Controls SSL certificate verification for outbound connections."}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"true"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"SSL_SECURITY_LEVEL"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"integer"})}),(0,s.jsx)(t.td,{children:"Sets the SSL security level (higher values enforce stricter checks)."}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"2"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"SSL_CERT_FILE"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"string"})}),(0,s.jsx)(t.td,{children:"Path to a custom SSL certificate file to use for verification."}),(0,s.jsx)(t.td,{children:"(none)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"SSL_CERTIFICATE"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"string"})}),(0,s.jsx)(t.td,{children:"Direct content of the SSL certificate (PEM format)."}),(0,s.jsx)(t.td,{children:"(none)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"DISABLE_AIOHTTP_TRANSPORT"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"boolean"})}),(0,s.jsx)(t.td,{children:"Flag to disable the use of aiohttp transport for HTTP requests."}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"false"})})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"AIOHTTP_TRUST_ENV"})}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"boolean"})}),(0,s.jsx)(t.td,{children:"Flag to enable aiohttp to trust environment proxy settings."}),(0,s.jsx)(t.td,{children:(0,s.jsx)(t.code,{children:"false"})})]})]})]}),"\n",(0,s.jsx)(t.h2,{id:"system-logs",children:"System Logs"}),"\n",(0,s.jsxs)(t.p,{children:["For details on how to configure system logging, including log rotation and verbosity levels, please see the ",(0,s.jsx)(t.a,{href:"/solace-agent-mesh/docs/documentation/deployment/debugging#system-logs",children:"System Logs"})," section in the debugging documentation."]})]})}function h(e={}){const{wrapper:t}={...(0,l.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},8453:(e,t,n)=>{n.d(t,{R:()=>r,x:()=>d});var i=n(6540);const s={},l=i.createContext(s);function r(e){const t=i.useContext(l);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:r(e.components),i.createElement(l.Provider,{value:t},e.children)}}}]);