solace-agent-mesh 1.1.0__py3-none-any.whl → 1.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of solace-agent-mesh might be problematic. Click here for more details.
- solace_agent_mesh/agent/adk/runner.py +18 -12
- solace_agent_mesh/agent/adk/services.py +3 -3
- solace_agent_mesh/agent/adk/setup.py +141 -34
- solace_agent_mesh/agent/protocol/event_handlers.py +27 -21
- solace_agent_mesh/agent/sac/app.py +0 -1
- solace_agent_mesh/agent/sac/component.py +0 -1
- solace_agent_mesh/agent/tools/__init__.py +1 -0
- solace_agent_mesh/agent/tools/dynamic_tool.py +362 -0
- solace_agent_mesh/assets/docs/404.html +3 -3
- solace_agent_mesh/assets/docs/assets/js/42b3f8d8.d97b8e94.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/483cef9a.4e972867.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/55f47984.cf3781c4.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/664b740a.1b744a32.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/75384d09.c193a8f0.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/9a09e75d.d6607c56.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/aba87c2f.071e2d94.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/ae0e903d.4d8dda10.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/c835a94d.146e3186.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/f284c35a.7334119c.js +1 -0
- solace_agent_mesh/assets/docs/assets/js/main.1c79039d.js +2 -0
- solace_agent_mesh/assets/docs/assets/js/runtime~main.858117b7.js +1 -0
- solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html +29 -0
- solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html +25 -0
- solace_agent_mesh/assets/docs/docs/documentation/{migration-guides/a2a-upgrade-to-0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html → Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html } +6 -6
- solace_agent_mesh/assets/docs/docs/documentation/{migration-guides/a2a-upgrade-to-0.3.0/a2a-technical-migration-map/index.html → Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html } +6 -6
- solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +19 -27
- solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html +5 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html +63 -0
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +4 -4
- solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +4 -4
- solace_agent_mesh/assets/docs/lunr-index-1757531604543.json +1 -0
- solace_agent_mesh/assets/docs/lunr-index.json +1 -1
- solace_agent_mesh/assets/docs/search-doc-1757531604543.json +1 -0
- solace_agent_mesh/assets/docs/search-doc.json +1 -1
- solace_agent_mesh/assets/docs/sitemap.xml +1 -1
- solace_agent_mesh/cli/__init__.py +1 -1
- solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py +125 -48
- solace_agent_mesh/cli/commands/eval_cmd.py +14 -0
- solace_agent_mesh/cli/commands/init_cmd/__init__.py +53 -31
- solace_agent_mesh/cli/commands/init_cmd/database_step.py +91 -0
- solace_agent_mesh/cli/commands/init_cmd/env_step.py +19 -8
- solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py +80 -25
- solace_agent_mesh/cli/commands/init_cmd/web_init_step.py +32 -10
- solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py +74 -15
- solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py +0 -2
- solace_agent_mesh/cli/commands/run_cmd.py +5 -3
- solace_agent_mesh/cli/utils.py +68 -12
- solace_agent_mesh/client/webui/frontend/static/assets/authCallback-CAX9u8a7.js +1 -0
- solace_agent_mesh/client/webui/frontend/static/assets/client-DXU9SPI5.js +25 -0
- solace_agent_mesh/client/webui/frontend/static/assets/main-C03yrETa.css +1 -0
- solace_agent_mesh/client/webui/frontend/static/assets/main-C1k9E0aC.js +339 -0
- solace_agent_mesh/client/webui/frontend/static/assets/vendor-B0BEKoAR.js +390 -0
- solace_agent_mesh/client/webui/frontend/static/auth-callback.html +3 -2
- solace_agent_mesh/client/webui/frontend/static/index.html +4 -3
- solace_agent_mesh/common/utils/embeds/resolver.py +1 -0
- solace_agent_mesh/config_portal/backend/common.py +2 -2
- solace_agent_mesh/config_portal/frontend/static/client/assets/_index-bFMKlzKf.js +98 -0
- solace_agent_mesh/config_portal/frontend/static/client/assets/{manifest-d845808d.js → manifest-89db7c30.js} +1 -1
- solace_agent_mesh/config_portal/frontend/static/client/index.html +1 -1
- solace_agent_mesh/evaluation/message_organizer.py +35 -56
- solace_agent_mesh/evaluation/run.py +26 -5
- solace_agent_mesh/evaluation/subscriber.py +35 -10
- solace_agent_mesh/evaluation/summary_builder.py +27 -34
- solace_agent_mesh/gateway/http_sse/ARCHITECTURE_GUIDE.md +676 -0
- solace_agent_mesh/gateway/http_sse/alembic/env.py +85 -0
- solace_agent_mesh/gateway/http_sse/alembic/script.py.mako +28 -0
- solace_agent_mesh/gateway/http_sse/alembic/versions/b1c2d3e4f5g6_add_database_indexes.py +83 -0
- solace_agent_mesh/gateway/http_sse/alembic/versions/d5b3f8f2e9a0_create_initial_database.py +58 -0
- solace_agent_mesh/gateway/http_sse/alembic.ini +147 -0
- solace_agent_mesh/gateway/http_sse/api/__init__.py +11 -0
- solace_agent_mesh/gateway/http_sse/api/controllers/__init__.py +9 -0
- solace_agent_mesh/gateway/http_sse/api/controllers/session_controller.py +355 -0
- solace_agent_mesh/gateway/http_sse/api/controllers/task_controller.py +279 -0
- solace_agent_mesh/gateway/http_sse/api/controllers/user_controller.py +35 -0
- solace_agent_mesh/gateway/http_sse/api/dto/__init__.py +10 -0
- solace_agent_mesh/gateway/http_sse/api/dto/requests/__init__.py +37 -0
- solace_agent_mesh/gateway/http_sse/api/dto/requests/session_requests.py +49 -0
- solace_agent_mesh/gateway/http_sse/api/dto/requests/task_requests.py +66 -0
- solace_agent_mesh/gateway/http_sse/api/dto/responses/__init__.py +43 -0
- solace_agent_mesh/gateway/http_sse/api/dto/responses/session_responses.py +68 -0
- solace_agent_mesh/gateway/http_sse/api/dto/responses/task_responses.py +74 -0
- solace_agent_mesh/gateway/http_sse/app.py +31 -1
- solace_agent_mesh/gateway/http_sse/application/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/application/services/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/application/services/session_service.py +135 -0
- solace_agent_mesh/gateway/http_sse/component.py +224 -62
- solace_agent_mesh/gateway/http_sse/dependencies.py +148 -45
- solace_agent_mesh/gateway/http_sse/domain/entities/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/domain/entities/session.py +90 -0
- solace_agent_mesh/gateway/http_sse/domain/repositories/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/domain/repositories/session_repository.py +54 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/__init__.py +4 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/dependency_injection/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/dependency_injection/container.py +123 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/persistence/__init__.py +4 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/persistence/database_persistence_service.py +16 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/persistence/database_service.py +119 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/persistence/models.py +31 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/persistence_service.py +12 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/repositories/__init__.py +3 -0
- solace_agent_mesh/gateway/http_sse/infrastructure/repositories/session_repository.py +174 -0
- solace_agent_mesh/gateway/http_sse/main.py +291 -87
- solace_agent_mesh/gateway/http_sse/routers/{agents.py → agent_cards.py} +7 -7
- solace_agent_mesh/gateway/http_sse/routers/artifacts.py +121 -54
- solace_agent_mesh/gateway/http_sse/routers/config.py +3 -1
- solace_agent_mesh/gateway/http_sse/routers/tasks.py +83 -2
- solace_agent_mesh/gateway/http_sse/routers/visualization.py +7 -7
- solace_agent_mesh/gateway/http_sse/services/{agent_service.py → agent_card_service.py} +19 -19
- solace_agent_mesh/gateway/http_sse/session_manager.py +64 -30
- solace_agent_mesh/gateway/http_sse/shared/__init__.py +9 -0
- solace_agent_mesh/gateway/http_sse/shared/auth_utils.py +29 -0
- solace_agent_mesh/gateway/http_sse/shared/enums.py +45 -0
- solace_agent_mesh/gateway/http_sse/shared/types.py +45 -0
- solace_agent_mesh/templates/shared_config.yaml +4 -5
- solace_agent_mesh/templates/webui.yaml +8 -10
- {solace_agent_mesh-1.1.0.dist-info → solace_agent_mesh-1.3.1.dist-info}/METADATA +5 -3
- {solace_agent_mesh-1.1.0.dist-info → solace_agent_mesh-1.3.1.dist-info}/RECORD +150 -104
- solace_agent_mesh/assets/docs/assets/js/42b3f8d8.8ccb9901.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/55f47984.c484bf96.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/6e0db977.39a79ca9.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/75384d09.bf78fbdb.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/90dd9cf6.88f385ea.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/aba87c2f.76376d7c.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/f284c35a.fb68323a.js +0 -1
- solace_agent_mesh/assets/docs/assets/js/main.a75ecc0d.js +0 -2
- solace_agent_mesh/assets/docs/assets/js/runtime~main.458efb1d.js +0 -1
- solace_agent_mesh/assets/docs/lunr-index-1756992446316.json +0 -1
- solace_agent_mesh/assets/docs/search-doc-1756992446316.json +0 -1
- solace_agent_mesh/client/webui/frontend/static/assets/authCallback-BmF2l6vg.js +0 -1
- solace_agent_mesh/client/webui/frontend/static/assets/client-D881Dttc.js +0 -49
- solace_agent_mesh/client/webui/frontend/static/assets/main-C0jZjYa8.js +0 -699
- solace_agent_mesh/client/webui/frontend/static/assets/main-CCeG324-.css +0 -1
- solace_agent_mesh/config_portal/frontend/static/client/assets/_index-Bym6YkMd.js +0 -98
- solace_agent_mesh/gateway/http_sse/routers/sessions.py +0 -85
- solace_agent_mesh/gateway/http_sse/routers/users.py +0 -59
- /solace_agent_mesh/assets/docs/assets/js/{main.a75ecc0d.js.LICENSE.txt → main.1c79039d.js.LICENSE.txt} +0 -0
- {solace_agent_mesh-1.1.0.dist-info → solace_agent_mesh-1.3.1.dist-info}/WHEEL +0 -0
- {solace_agent_mesh-1.1.0.dist-info → solace_agent_mesh-1.3.1.dist-info}/entry_points.txt +0 -0
- {solace_agent_mesh-1.1.0.dist-info → solace_agent_mesh-1.3.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -12,9 +12,9 @@ solace_agent_mesh/agent/adk/embed_resolving_mcp_toolset.py,sha256=KXr9zY8GBt8FzY
|
|
|
12
12
|
solace_agent_mesh/agent/adk/intelligent_mcp_callbacks.py,sha256=4h2riXiw6DqFi3VVRZ92w_YuQQJ_Du6iUgx3PRuzrb8,15839
|
|
13
13
|
solace_agent_mesh/agent/adk/invocation_monitor.py,sha256=_20-nQXVjGlAEyw9PLFTTvgti-WgqyNE58LPUELUWnA,11671
|
|
14
14
|
solace_agent_mesh/agent/adk/mcp_content_processor.py,sha256=8s3ytZ8qrKZCUt_u8aE_EHH1_01yewPoekkllCuz9ME,23850
|
|
15
|
-
solace_agent_mesh/agent/adk/runner.py,sha256=
|
|
16
|
-
solace_agent_mesh/agent/adk/services.py,sha256=
|
|
17
|
-
solace_agent_mesh/agent/adk/setup.py,sha256=
|
|
15
|
+
solace_agent_mesh/agent/adk/runner.py,sha256=CFpnWaNwpXBTZATBWDhmw4xJsMaFnjucqGbr0_HmqeE,12977
|
|
16
|
+
solace_agent_mesh/agent/adk/services.py,sha256=AFp67SD3Rxrd3EuTeSVrEY2a-foe52dcvWIGN9lw8RU,12894
|
|
17
|
+
solace_agent_mesh/agent/adk/setup.py,sha256=SMzAo0HwxfcZwWek_OWXtuKtYRYkBKY0Pmrv2HO8izQ,37839
|
|
18
18
|
solace_agent_mesh/agent/adk/stream_parser.py,sha256=3i5rFN7dDVgjLvK4GG0PKYmxgIdtqKABfM9oTCouSZ0,8278
|
|
19
19
|
solace_agent_mesh/agent/adk/tool_wrapper.py,sha256=yzkXjE4QtdVtO5edB-c-R_qJgaex9rmCHIswW1ltfxY,6513
|
|
20
20
|
solace_agent_mesh/agent/adk/artifacts/__init__.py,sha256=vAB8eqGwgPo3nx6YkT93Y7puYRMcqIKMAchBizvdw7Y,62
|
|
@@ -24,21 +24,22 @@ solace_agent_mesh/agent/adk/artifacts/s3_artifact_service.py,sha256=6CyKDOuQJ4b0
|
|
|
24
24
|
solace_agent_mesh/agent/adk/models/lite_llm.py,sha256=Enia0uFs2epagavdaCWNnvMFIL7VxRuo0A6mYBQZGWQ,30325
|
|
25
25
|
solace_agent_mesh/agent/adk/models/models_llm.txt,sha256=tpihTC3M1-WXduJgZerCGcJzNUfRSsbtol4VFhKyd6U,6119
|
|
26
26
|
solace_agent_mesh/agent/protocol/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
-
solace_agent_mesh/agent/protocol/event_handlers.py,sha256=
|
|
27
|
+
solace_agent_mesh/agent/protocol/event_handlers.py,sha256=2qpA-z1546HHEilywx4yJ4oIWy8btKbeMiOrlUB4ApU,69179
|
|
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
|
-
solace_agent_mesh/agent/sac/app.py,sha256=
|
|
31
|
-
solace_agent_mesh/agent/sac/component.py,sha256=
|
|
30
|
+
solace_agent_mesh/agent/sac/app.py,sha256=2H6DuYfWDLsHUhs09vH6zEDcuv0INiFFPy6ECCO5w-I,32799
|
|
31
|
+
solace_agent_mesh/agent/sac/component.py,sha256=tAc2UJkMSJzcVOGecwW5M2BMzZGEXqMlEAJouXMInEs,130085
|
|
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
|
|
35
35
|
solace_agent_mesh/agent/testing/__init__.py,sha256=Jo_gILQRyefq52v4zYml91xf04lduzam-2fwgNwuAy4,64
|
|
36
36
|
solace_agent_mesh/agent/testing/debug_utils.py,sha256=-nNJUs8aeRnEFbG0ZrXL3-FFcCDKC_-7KXViwp6fLqw,4972
|
|
37
37
|
solace_agent_mesh/agent/testing/testing_llm.txt,sha256=14tuiINvkLTel3zTM7MsRQrmGLWuuJ79ywTU7gjiwqg,2180
|
|
38
|
-
solace_agent_mesh/agent/tools/__init__.py,sha256=
|
|
38
|
+
solace_agent_mesh/agent/tools/__init__.py,sha256=3dURhTS7XdvQW1A5j-_eigcZNjhzog6C1O5SgYePn_8,500
|
|
39
39
|
solace_agent_mesh/agent/tools/audio_tools.py,sha256=LOjfD2tTsYanIbntpysX4gQZ1e8NHqmv_yQ7iHitvyQ,59717
|
|
40
40
|
solace_agent_mesh/agent/tools/builtin_artifact_tools.py,sha256=4zUqrPlBfIz2N3sAZXzk-ZmUCyRqA3-qmnTm3vaCcx4,77526
|
|
41
41
|
solace_agent_mesh/agent/tools/builtin_data_analysis_tools.py,sha256=nII4SNDYFt1QaHtXpcoFr3mIg3n1QXTNJfm3VQDD394,8767
|
|
42
|
+
solace_agent_mesh/agent/tools/dynamic_tool.py,sha256=Ewec4orBbGDx4JW-WGg5WemGGsYD6oRUmPvvKE3rRzA,12424
|
|
42
43
|
solace_agent_mesh/agent/tools/general_agent_tools.py,sha256=7ygxOwOMacWv7oMQumbIG4XEn3UwRWTSBDuutZPFKj8,21959
|
|
43
44
|
solace_agent_mesh/agent/tools/image_tools.py,sha256=sLIO-d4006CqJ-YaGYsE-1sfDTMCfI0foPLHieaaFZg,47968
|
|
44
45
|
solace_agent_mesh/agent/tools/peer_agent_tool.py,sha256=rCY7D3OKw_oQ6Oc33AkoxBHKFGL3zQwT5NLgUZ4C1cY,12308
|
|
@@ -105,7 +106,7 @@ solace_agent_mesh/common/utils/embeds/converter.py,sha256=WY2XogyR3mCZPNwTFc45lf
|
|
|
105
106
|
solace_agent_mesh/common/utils/embeds/embeds_llm.txt,sha256=Cy0rj25Bb3q69LnQFIDx94m623p_CT7nraXgztTI6m8,13245
|
|
106
107
|
solace_agent_mesh/common/utils/embeds/evaluators.py,sha256=-EONVHnzq2aGDIPNnc598tYwLl3yhnfT9srDtcWtST8,14284
|
|
107
108
|
solace_agent_mesh/common/utils/embeds/modifiers.py,sha256=LE3ZPtjq2IfXXgotiTfCE9Bof-TVFjsETn9JV7b8Fck,27941
|
|
108
|
-
solace_agent_mesh/common/utils/embeds/resolver.py,sha256=
|
|
109
|
+
solace_agent_mesh/common/utils/embeds/resolver.py,sha256=iJj1lU3KZazxNpQHvRc1SyyCoRHg_y_2MDV_WHIZp-U,32311
|
|
109
110
|
solace_agent_mesh/common/utils/embeds/types.py,sha256=jgXPjvZDoJS2ji-bNjiAbfBQuz_OfLHn-frfyI6uQtc,303
|
|
110
111
|
solace_agent_mesh/core_a2a/__init__.py,sha256=DSxiK4RT2IwAk4UOja9aF-G44u0G62yWh_Mz0G9tuv0,59
|
|
111
112
|
solace_agent_mesh/core_a2a/core_a2a_llm.txt,sha256=KykfzI3465QktMkqgNbS7-nEJndE6KnafBVuGb_7Mmc,4085
|
|
@@ -117,72 +118,110 @@ solace_agent_mesh/gateway/base/app.py,sha256=LWIdT9by6Dg3sWCUgmfF36TwMJ04tyYfZHQ
|
|
|
117
118
|
solace_agent_mesh/gateway/base/base_llm.txt,sha256=51U3VfwzCfptYxcFIjmNE8Wt07cgFfH3VlEp2kaXBZU,11291
|
|
118
119
|
solace_agent_mesh/gateway/base/component.py,sha256=chHk4h13XLhOOGjEBIu3b7Ksr_ALcoWw7TUBOj5kofE,55145
|
|
119
120
|
solace_agent_mesh/gateway/base/task_context.py,sha256=sFRRHyvBij-xms1f_VFc8om8-xIpRZawIctWtdmi6QY,2446
|
|
121
|
+
solace_agent_mesh/gateway/http_sse/ARCHITECTURE_GUIDE.md,sha256=oaCZAILbWxKWA00DjtEUT63gi6SFir3hjnx5xcpeh9U,20370
|
|
120
122
|
solace_agent_mesh/gateway/http_sse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
121
|
-
solace_agent_mesh/gateway/http_sse/
|
|
122
|
-
solace_agent_mesh/gateway/http_sse/
|
|
123
|
-
solace_agent_mesh/gateway/http_sse/
|
|
123
|
+
solace_agent_mesh/gateway/http_sse/alembic.ini,sha256=-LacLcmHWd11GCBfh5pfBcabzOuu712yph3LBENKtoo,4864
|
|
124
|
+
solace_agent_mesh/gateway/http_sse/app.py,sha256=5sYWVFgxA1tbjyKRSHw0E84mQ_TemDAWU2g7_IkWCmw,7696
|
|
125
|
+
solace_agent_mesh/gateway/http_sse/component.py,sha256=bByZa2z9PWoVu15ABPgKawD7Nu5SwDYBuUIfEgYtC5M,72165
|
|
126
|
+
solace_agent_mesh/gateway/http_sse/dependencies.py,sha256=ycOULWyFJM04IqGZlvcbL6Z5hjwXisKDLmkxwq8J_nc,15976
|
|
124
127
|
solace_agent_mesh/gateway/http_sse/http_sse_llm.txt,sha256=Jx6IJWYFl48LmW-xDuCtjpubs0iPY54bt6bLWF_SNUw,14271
|
|
125
|
-
solace_agent_mesh/gateway/http_sse/main.py,sha256=
|
|
126
|
-
solace_agent_mesh/gateway/http_sse/session_manager.py,sha256=
|
|
128
|
+
solace_agent_mesh/gateway/http_sse/main.py,sha256=j5hUGXTdXPTL-2UR_mLVBmceZVc2iOpy3NGTtCZPzXc,27614
|
|
129
|
+
solace_agent_mesh/gateway/http_sse/session_manager.py,sha256=0eFYMtWw5vSZUxe_LkJibwRrtbg4NyWu7SxfKrMpikQ,8711
|
|
127
130
|
solace_agent_mesh/gateway/http_sse/sse_manager.py,sha256=c51QIm80Q1G8aOzimk06ZaOH9wv2bl_WREP1GqevLZk,13507
|
|
131
|
+
solace_agent_mesh/gateway/http_sse/alembic/env.py,sha256=7jBSVgLhayvja-XKa7o5V92xsYSasI1ZBqV3NDdGVKE,2481
|
|
132
|
+
solace_agent_mesh/gateway/http_sse/alembic/script.py.mako,sha256=84_5EHZF90Ak58GV4R5YUwxvvzsaI6N9LxIHC8X7N1w,703
|
|
133
|
+
solace_agent_mesh/gateway/http_sse/alembic/versions/b1c2d3e4f5g6_add_database_indexes.py,sha256=HZbxw5PrpneWIwMFteu-LGsoef8GD1F43vLiFfvBTaw,2408
|
|
134
|
+
solace_agent_mesh/gateway/http_sse/alembic/versions/d5b3f8f2e9a0_create_initial_database.py,sha256=1n-kACCNTIjF9VagyZDf2Z7CXLB7yUuN4CnHpG0hdqk,1926
|
|
135
|
+
solace_agent_mesh/gateway/http_sse/api/__init__.py,sha256=70cF06AnEz72UUQPTaEEm2fw6BgZ3lx9GAA36Bcd-WE,262
|
|
136
|
+
solace_agent_mesh/gateway/http_sse/api/controllers/__init__.py,sha256=jcFhm0_URcZlP87hsc-VuGuSgjQKLBPNvJNeDikSCh8,271
|
|
137
|
+
solace_agent_mesh/gateway/http_sse/api/controllers/session_controller.py,sha256=PCir7OarV-lwrOdO4avj1_DRfbNKr-bElYBIGA9s9-8,11360
|
|
138
|
+
solace_agent_mesh/gateway/http_sse/api/controllers/task_controller.py,sha256=x0YIwCm1m1-C2BoixzZzBktza4Xgsnooydg-wEYKzfI,10217
|
|
139
|
+
solace_agent_mesh/gateway/http_sse/api/controllers/user_controller.py,sha256=YPcf-BHyvDSdf5NXzjY6hqdMlBDojiG6TpzyggppssI,883
|
|
140
|
+
solace_agent_mesh/gateway/http_sse/api/dto/__init__.py,sha256=DbFQNFsN7I0zCkYe2RKTYkcIXPSKgA6dbPITS3AhcX0,201
|
|
141
|
+
solace_agent_mesh/gateway/http_sse/api/dto/requests/__init__.py,sha256=F8xjjg6yHzqIf6uRBixUyUwz5Tf0N68pOoeqhtyt548,780
|
|
142
|
+
solace_agent_mesh/gateway/http_sse/api/dto/requests/session_requests.py,sha256=m1hLdQfMiozGzTcGfesdIkXS41NIkf9f3orMF5p9fyk,1406
|
|
143
|
+
solace_agent_mesh/gateway/http_sse/api/dto/requests/task_requests.py,sha256=XbrSIz60K_rwgwU90bDOId1B7ZCPCigBNtq5RPIlKIs,1987
|
|
144
|
+
solace_agent_mesh/gateway/http_sse/api/dto/responses/__init__.py,sha256=6gxVxOuY0YFPeGdhpwfO8VGBg9_Nw84gcZtYQT0roAw,926
|
|
145
|
+
solace_agent_mesh/gateway/http_sse/api/dto/responses/session_responses.py,sha256=txEDlgzp11aBz_dwNoetaN_zYkxSlRuPFPNSLFJc0vM,1877
|
|
146
|
+
solace_agent_mesh/gateway/http_sse/api/dto/responses/task_responses.py,sha256=H1jIyWyJJn02ViKvkKsQarwQXk8Dk5Qi6y2YTgrw58w,1965
|
|
147
|
+
solace_agent_mesh/gateway/http_sse/application/__init__.py,sha256=F_AcmC-hqExw6_4TwGeojxUMXBShlMTKcb3F4EqL5MA,83
|
|
148
|
+
solace_agent_mesh/gateway/http_sse/application/services/__init__.py,sha256=hm3LQQnjy19GqH8E4kH7mf-wEfwEzZ4RdOT8_xRPluA,74
|
|
149
|
+
solace_agent_mesh/gateway/http_sse/application/services/session_service.py,sha256=0A06MeCIt0JXtaoNSTZptszs8_Ga-xJsGTEt0BHo4x4,4421
|
|
128
150
|
solace_agent_mesh/gateway/http_sse/components/__init__.py,sha256=zSidQziYjSrjX5XXXbyBAJ7pgKr0Efy6RXiJiufdq0Q,186
|
|
129
151
|
solace_agent_mesh/gateway/http_sse/components/components_llm.txt,sha256=DF-kLoVXikA0-R_7-xA3gsf6vFq8av4CAvbgJUplSVg,3183
|
|
130
152
|
solace_agent_mesh/gateway/http_sse/components/visualization_forwarder_component.py,sha256=oHVnv4DK-nP9Mbp6i6CSJ63Ch6lx4epE3Cn0dn3BndQ,3941
|
|
153
|
+
solace_agent_mesh/gateway/http_sse/domain/entities/__init__.py,sha256=JRFpGNHQS5l4nw-kZqKe-Pm4IkssQXOJoOZ0DJxytQM,106
|
|
154
|
+
solace_agent_mesh/gateway/http_sse/domain/entities/session.py,sha256=wP1KHasPZE7xkiAenk9-Ep1aX8qjkd9u4cNmNTtUKp8,3028
|
|
155
|
+
solace_agent_mesh/gateway/http_sse/domain/repositories/__init__.py,sha256=1Zyg77gXLX8CkH-_gxJ8ikX0-0bHmndSg5ZELp2BwE0,127
|
|
156
|
+
solace_agent_mesh/gateway/http_sse/domain/repositories/session_repository.py,sha256=GHpCp2AvIbX4hahOncZoXbaQa2B91JaKgJyZy8QarQY,1320
|
|
157
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/__init__.py,sha256=Fsy7Q5cv4HKrMLAGQr9S9ZSjUSEwUjzRiYqjV19-p40,212
|
|
158
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/persistence_service.py,sha256=jyyYXU8YsJNq1bmeInnRHejqFjrkYrvUqb7zJoaq848,385
|
|
159
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/dependency_injection/__init__.py,sha256=stAAGvmye_h8rcWh9ThUJdBS06z_GO8WCPChk4vc85c,158
|
|
160
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/dependency_injection/container.py,sha256=KwSTsr__FdHqWb6l8ITE5BboZjt4cFTGlC0NxKGJLvc,4421
|
|
161
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/persistence/__init__.py,sha256=DZtIsgoef1u9HH3ko2AltQ327NXln7UJEY2u0-v4B7o,169
|
|
162
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/persistence/database_persistence_service.py,sha256=VxzgsUIqM52S1M7sgg8UBPfftJuwxEN_ONyaZ2qBUSg,422
|
|
163
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/persistence/database_service.py,sha256=myevwn3t5lPUyx1-ijsDnMgK8VaIGkLQ-xIxmabPHCQ,3543
|
|
164
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/persistence/models.py,sha256=A_MWRkf2pkdHiOGg8dZzKTBQ70FoyqI71PTe6G1JsHo,1115
|
|
165
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/repositories/__init__.py,sha256=i2xRj3OPF0mbYWCrrN5-B3LV1FPfVp8jgtopfkC5YfI,122
|
|
166
|
+
solace_agent_mesh/gateway/http_sse/infrastructure/repositories/session_repository.py,sha256=JHIvehjWBz0nqs_IYy_L4DjUzuDiZ7TDlawbaFBm7_0,6432
|
|
131
167
|
solace_agent_mesh/gateway/http_sse/routers/__init__.py,sha256=WxRX__xU4YIYhvjN0DTY9XdNYAB9dP81pabwiB23YSo,133
|
|
132
|
-
solace_agent_mesh/gateway/http_sse/routers/
|
|
133
|
-
solace_agent_mesh/gateway/http_sse/routers/artifacts.py,sha256=
|
|
168
|
+
solace_agent_mesh/gateway/http_sse/routers/agent_cards.py,sha256=zBckfOkUu9q9WC7fTOxXxSO6nMJpVPcjFbPrbU5W93M,1279
|
|
169
|
+
solace_agent_mesh/gateway/http_sse/routers/artifacts.py,sha256=OrYlA3UUTzCE0iVUuansLEPRpGXzBRcFvn69S85oRq4,34636
|
|
134
170
|
solace_agent_mesh/gateway/http_sse/routers/auth.py,sha256=LcgF45H7AGVPabFLdHcrEqSndadlpx6WbOdBY_l96X8,7201
|
|
135
|
-
solace_agent_mesh/gateway/http_sse/routers/config.py,sha256=
|
|
171
|
+
solace_agent_mesh/gateway/http_sse/routers/config.py,sha256=9rETW-5pPbwhFCua82hoeaLZQhITOxG0p-LDPioxcl8,2058
|
|
136
172
|
solace_agent_mesh/gateway/http_sse/routers/people.py,sha256=O2NvV6LD3g9vFXN31yUHKTgkzY1RVW5RDfQq_IP5Q14,2041
|
|
137
173
|
solace_agent_mesh/gateway/http_sse/routers/routers_llm.txt,sha256=B7W3Y_TlPJb1t5wdLYrWx1c4sOkjsPi5qCxD0gqPqR0,11715
|
|
138
|
-
solace_agent_mesh/gateway/http_sse/routers/sessions.py,sha256=RxQWnT8oqs0sP4g7fPmBKYtda-j1wNWVHmdDuErxGZ4,2781
|
|
139
174
|
solace_agent_mesh/gateway/http_sse/routers/sse.py,sha256=AUk2p3_KBJLPyAlZ13fHApfd05SQPSJJkwZNq4mJ4PY,5371
|
|
140
|
-
solace_agent_mesh/gateway/http_sse/routers/tasks.py,sha256=
|
|
141
|
-
solace_agent_mesh/gateway/http_sse/routers/
|
|
142
|
-
solace_agent_mesh/gateway/http_sse/routers/visualization.py,sha256=AZE5cjrx69W7mwtcKpjGgLunJV08vGHukuUXp-gp6DQ,44652
|
|
175
|
+
solace_agent_mesh/gateway/http_sse/routers/tasks.py,sha256=17FdEEkjUxQa-C-6ZBGqkH7ASL7fR7zzhbaDw0Dehr8,12945
|
|
176
|
+
solace_agent_mesh/gateway/http_sse/routers/visualization.py,sha256=tvLWL0HHyXmOdmrlEq2IPITvTG7OJIGLHvEGILMhD-0,44710
|
|
143
177
|
solace_agent_mesh/gateway/http_sse/services/__init__.py,sha256=Fk2FIbrJdG1StPCoggbdT2C4Vl5d6qICT6R8yj4IZPQ,92
|
|
144
|
-
solace_agent_mesh/gateway/http_sse/services/
|
|
178
|
+
solace_agent_mesh/gateway/http_sse/services/agent_card_service.py,sha256=gBoXQgENmCeJRyA1BLYnoEvjrFUfwM4W_CVLkrl6r7o,2365
|
|
145
179
|
solace_agent_mesh/gateway/http_sse/services/people_service.py,sha256=PbR6vbImQ95JO7p5fSbraBGsHg84dGVjDz4yd-wbrwg,4596
|
|
146
180
|
solace_agent_mesh/gateway/http_sse/services/services_llm.txt,sha256=hjMyBLidqh8VGFl7gsA-8VTM1zTUqu4oyI-UJQRReKA,5703
|
|
147
181
|
solace_agent_mesh/gateway/http_sse/services/task_service.py,sha256=KWtUi34rFCUYDu8w5qw2AXfoAkkNfDipje57FUdXKsY,4348
|
|
148
|
-
solace_agent_mesh/
|
|
182
|
+
solace_agent_mesh/gateway/http_sse/shared/__init__.py,sha256=qlCIQimjoNwbRGbhjNZ8ba0d9yJH8ZYXzqgi-25oRB0,188
|
|
183
|
+
solace_agent_mesh/gateway/http_sse/shared/auth_utils.py,sha256=F0kpTg5HYadRAEVNSNvnEFpdzkwVqbFMFVr27kywz_k,852
|
|
184
|
+
solace_agent_mesh/gateway/http_sse/shared/enums.py,sha256=fbZgHPXr49s9f3dQEEoicO56KnGBIeF03JfJbWxN3DM,934
|
|
185
|
+
solace_agent_mesh/gateway/http_sse/shared/types.py,sha256=zAojlvovTMvaB4o-U20cY3q2DxZs_xaCtcoYUhCLczg,1075
|
|
186
|
+
solace_agent_mesh/cli/__init__.py,sha256=-ypEJktJToAL9by62JJKWEzDo_KPCQtmE5kwFgX24z4,22
|
|
149
187
|
solace_agent_mesh/cli/main.py,sha256=yFbF4ijz7P6nxj26d-mTC8BnK6NKVnfqPh3y4pDBZqo,831
|
|
150
|
-
solace_agent_mesh/cli/utils.py,sha256=
|
|
188
|
+
solace_agent_mesh/cli/utils.py,sha256=7zntmVuvWbaWEhViSF2uw484-79a5I1XTUt-0eGQWY4,8036
|
|
151
189
|
solace_agent_mesh/cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
152
190
|
solace_agent_mesh/cli/commands/docs_cmd.py,sha256=vNXyKADt8RrKnP7wsLaj7fBaz6SUgXMMItygHrohE_Y,1953
|
|
153
|
-
solace_agent_mesh/cli/commands/eval_cmd.py,sha256=
|
|
154
|
-
solace_agent_mesh/cli/commands/run_cmd.py,sha256=
|
|
191
|
+
solace_agent_mesh/cli/commands/eval_cmd.py,sha256=25EJhddhZbBYcJDTQysX8ZepyWYRf5MmBeiMced7JCg,2748
|
|
192
|
+
solace_agent_mesh/cli/commands/run_cmd.py,sha256=cQcjMpdg_B8Yke03wAsaZwVF9Anf9J-V22AlK782SBg,7656
|
|
155
193
|
solace_agent_mesh/cli/commands/add_cmd/__init__.py,sha256=IGTXUx_AcoinYlzlZtQsjiCYbe76ZiLqxAcGc6-uoDE,280
|
|
156
194
|
solace_agent_mesh/cli/commands/add_cmd/add_cmd_llm.txt,sha256=x-UE5buoIEE_oUJ3opOzW8U33S3XUKCRNKWxNXNVk-c,10212
|
|
157
|
-
solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py,sha256=
|
|
195
|
+
solace_agent_mesh/cli/commands/add_cmd/agent_cmd.py,sha256=qO-gsoIfO5lK8L0mfThtOTp3sV7dGDd7pTcZV78L00s,29631
|
|
158
196
|
solace_agent_mesh/cli/commands/add_cmd/gateway_cmd.py,sha256=kV7XOo2CvYWPQ6AL8cLDm-2GACbLAUlQc2c9fNzybEY,12840
|
|
159
197
|
solace_agent_mesh/cli/commands/add_cmd/web_add_agent_step.py,sha256=niutiDp5neHtgEEtWKcK9TGLJHga87y46rrjVHdjkFU,3702
|
|
160
198
|
solace_agent_mesh/cli/commands/add_cmd/web_add_gateway_step.py,sha256=Gk6Mw54l_M9QJKBa0IkHOkKJmuTsb4HQkIUTyVN-tqE,4326
|
|
161
|
-
solace_agent_mesh/cli/commands/init_cmd/__init__.py,sha256=
|
|
199
|
+
solace_agent_mesh/cli/commands/init_cmd/__init__.py,sha256=X7xcuDTXKdZkojBRIwiMJHyaQi9I5tt5pVqGmIBIp30,15152
|
|
162
200
|
solace_agent_mesh/cli/commands/init_cmd/broker_step.py,sha256=FzY7yqRDZqy_B7lXWQvb8OLoOULPlt8cI-VxuzaNSUU,7010
|
|
201
|
+
solace_agent_mesh/cli/commands/init_cmd/database_step.py,sha256=sO52x4weVPpwyICn7k-YMe7ByEZV_Sf4ME3QpaGj7wo,2921
|
|
163
202
|
solace_agent_mesh/cli/commands/init_cmd/directory_step.py,sha256=3uPZybhDh84vtXqFfck4__6Dbi9LdqXqs0nRjP3VApY,862
|
|
164
|
-
solace_agent_mesh/cli/commands/init_cmd/env_step.py,sha256=
|
|
203
|
+
solace_agent_mesh/cli/commands/init_cmd/env_step.py,sha256=9C22bg6tNKvftLyEjN_1_mdxexNAf3y3x-chQPrYtBo,7340
|
|
165
204
|
solace_agent_mesh/cli/commands/init_cmd/init_cmd_llm.txt,sha256=7atW7HTy_2XQ3UoPttgIlyIF4_Du2068rqZE2imaHP8,13226
|
|
166
|
-
solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py,sha256=
|
|
205
|
+
solace_agent_mesh/cli/commands/init_cmd/orchestrator_step.py,sha256=ztv1yvXJu3asoj8wrvP45QNPTZKxcUWYuD8GfpbFLy0,19648
|
|
167
206
|
solace_agent_mesh/cli/commands/init_cmd/project_files_step.py,sha256=bOh7yYuaXIIs0q3-nd1nSVc6P6g6EHoDJjFDlKZVnf4,1352
|
|
168
|
-
solace_agent_mesh/cli/commands/init_cmd/web_init_step.py,sha256=
|
|
169
|
-
solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py,sha256=
|
|
207
|
+
solace_agent_mesh/cli/commands/init_cmd/web_init_step.py,sha256=YoHEiEMZf_ZPG1qvLMJads_ET6IYEKJCCCees5_tqbY,4197
|
|
208
|
+
solace_agent_mesh/cli/commands/init_cmd/webui_gateway_step.py,sha256=MIAu-tbbfDIcTrU7ZEVkvI91UdrX4QcY17JHCdzIH0c,8820
|
|
170
209
|
solace_agent_mesh/cli/commands/plugin_cmd/__init__.py,sha256=10F21lMHH6qBvzHcprntMChBAI8cL4wLj6_vSKe8hV0,495
|
|
171
210
|
solace_agent_mesh/cli/commands/plugin_cmd/add_cmd.py,sha256=G-MJEGwX7saxIeEVMFMX01_h-OTttAUb-5RXDW8st1M,14435
|
|
172
211
|
solace_agent_mesh/cli/commands/plugin_cmd/build_cmd.py,sha256=OzEO2lsezlIZe29jWiR08ajQeDEP1cYqrWaMSd8i8o4,2988
|
|
173
212
|
solace_agent_mesh/cli/commands/plugin_cmd/catalog_cmd.py,sha256=GskrCwJQ42upCIG2nvMomprPrT1f9sBnkGast2ZLb_c,5136
|
|
174
|
-
solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py,sha256=
|
|
213
|
+
solace_agent_mesh/cli/commands/plugin_cmd/create_cmd.py,sha256=5O5jQdI6LHh8x3l4U9y95wX4CAUzN_Jf3b7G2HdZIOE,11810
|
|
175
214
|
solace_agent_mesh/cli/commands/plugin_cmd/official_registry.py,sha256=rnzQq3LDvSzvCPoEhoSn6M3xQG4AVLd54PX9cA5GzPg,5218
|
|
176
215
|
solace_agent_mesh/cli/commands/plugin_cmd/plugin_cmd_llm.txt,sha256=-CS4uY1OrPSXDm8cxyrBAv6yLrP5P-GTzyeaZFqaHsM,10967
|
|
177
216
|
solace_agent_mesh/evaluation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
178
217
|
solace_agent_mesh/evaluation/config_loader.py,sha256=gmTqvLqcYnahwJODjCjUQBBAQ3L7iV7MVJAJf1A-5JI,23117
|
|
179
218
|
solace_agent_mesh/evaluation/evaluator.py,sha256=pm05eBtfVsKIkp4BUrumi8StyU9Ctxzeab4NCRPGHPw,23183
|
|
180
|
-
solace_agent_mesh/evaluation/message_organizer.py,sha256=
|
|
219
|
+
solace_agent_mesh/evaluation/message_organizer.py,sha256=yQ5EFl11F_AFr1jHQ9PTg3dbMQzLUiT8oWa6Zl7m6Iw,19516
|
|
181
220
|
solace_agent_mesh/evaluation/report_data_processor.py,sha256=6ieALwwCmyhRQWCas3SozvpixguOI7NWP6ACMYZZpcQ,39001
|
|
182
221
|
solace_agent_mesh/evaluation/report_generator.py,sha256=pNTQ9yLC9NteuiPNDHMfHSy2QuWMWJBKrLTeYx8TfnE,23113
|
|
183
|
-
solace_agent_mesh/evaluation/run.py,sha256=
|
|
184
|
-
solace_agent_mesh/evaluation/subscriber.py,sha256=
|
|
185
|
-
solace_agent_mesh/evaluation/summary_builder.py,sha256=
|
|
222
|
+
solace_agent_mesh/evaluation/run.py,sha256=NgaZ1zWq0MVPpnURoQ48R8yDDM1g1BDag2ODhwVIHMw,27959
|
|
223
|
+
solace_agent_mesh/evaluation/subscriber.py,sha256=C4_w6g3e25u_Vi8emJMRRu5ujmGgzoxttoLoQpFJl_E,29867
|
|
224
|
+
solace_agent_mesh/evaluation/summary_builder.py,sha256=a2I4XFf5zbolNWw0TIN5hAMLMNSqylIlpryR1q8pFrI,27639
|
|
186
225
|
solace_agent_mesh/evaluation/test_case_loader.py,sha256=lt-lM1USazWdJ9zynpoFlmFrJLkX8DvWeM8WsqhLguc,24449
|
|
187
226
|
solace_agent_mesh/evaluation/report/benchmark_info.html,sha256=bSjYFWC8qmLxk8VmSPBJHalPLJ9dm4Pim-sN9Zg2wd8,905
|
|
188
227
|
solace_agent_mesh/evaluation/report/chart_section.html,sha256=Cfi0E4_Bqe7fHT8EDM9AQhVcNZ7Sn9ag47BU0-aog0c,4310
|
|
@@ -208,15 +247,15 @@ solace_agent_mesh/templates/plugin_gateway_config_template.yaml,sha256=JmVLdW3Qo
|
|
|
208
247
|
solace_agent_mesh/templates/plugin_pyproject_template.toml,sha256=dcgdHwCUUYV2G8slWzKGVlrpijwTnArX-KMa2sKvXok,944
|
|
209
248
|
solace_agent_mesh/templates/plugin_readme_template.md,sha256=i094KPRPL_u3JTA1h6FRjMy0YlA_B4jNKDBiYdE6wbM,1271
|
|
210
249
|
solace_agent_mesh/templates/plugin_tools_template.py,sha256=GUVw556CtBYE6sHbpXnFf0uysp6furt4_tMZVOlpI6s,8465
|
|
211
|
-
solace_agent_mesh/templates/shared_config.yaml,sha256=
|
|
250
|
+
solace_agent_mesh/templates/shared_config.yaml,sha256=_-ytR25HSAfwjN6drkdUQgGeV_om6RSeM4BUCMxQ3vQ,3310
|
|
212
251
|
solace_agent_mesh/templates/templates_llm.txt,sha256=T3h8CcIowTbyBedlfRk7FZww8_xGmnY5fEqGhhdI3JU,9234
|
|
213
|
-
solace_agent_mesh/templates/webui.yaml,sha256=
|
|
214
|
-
solace_agent_mesh/assets/docs/404.html,sha256=
|
|
215
|
-
solace_agent_mesh/assets/docs/lunr-index-
|
|
216
|
-
solace_agent_mesh/assets/docs/lunr-index.json,sha256=
|
|
217
|
-
solace_agent_mesh/assets/docs/search-doc-
|
|
218
|
-
solace_agent_mesh/assets/docs/search-doc.json,sha256=
|
|
219
|
-
solace_agent_mesh/assets/docs/sitemap.xml,sha256=
|
|
252
|
+
solace_agent_mesh/templates/webui.yaml,sha256=Xb6nswsFpMtCnpUDY9sGuO4Q3IhR8x-lDDRtHaySUVo,1782
|
|
253
|
+
solace_agent_mesh/assets/docs/404.html,sha256=vBzx3XijAlkfMeP0BD0Fj0gJKep_WeCB1p0gWXmRpic,11749
|
|
254
|
+
solace_agent_mesh/assets/docs/lunr-index-1757531604543.json,sha256=AA5d59RsLdyANqbkxnF4qvLsVNeeDHqaUuUjCWvpfO0,1093347
|
|
255
|
+
solace_agent_mesh/assets/docs/lunr-index.json,sha256=AA5d59RsLdyANqbkxnF4qvLsVNeeDHqaUuUjCWvpfO0,1093347
|
|
256
|
+
solace_agent_mesh/assets/docs/search-doc-1757531604543.json,sha256=JWKOvAPKwwRldnkXdwPWnAWTyEJMlMc2whjX6AeWT4g,385401
|
|
257
|
+
solace_agent_mesh/assets/docs/search-doc.json,sha256=JWKOvAPKwwRldnkXdwPWnAWTyEJMlMc2whjX6AeWT4g,385401
|
|
258
|
+
solace_agent_mesh/assets/docs/sitemap.xml,sha256=MeU4E6b7O7RjK1CdC9W4zjle-yridFsVnyDf2HtnzyY,6830
|
|
220
259
|
solace_agent_mesh/assets/docs/assets/css/styles.906a1503.css,sha256=gQj16ydMLPiq6y-t8Ovto65hsvPbQX6coyIFOja-2eY,83293
|
|
221
260
|
solace_agent_mesh/assets/docs/assets/images/Solace_AI_Framework_With_Broker-85f0a306a9bcdd20b390b7a949f6d862.png,sha256=e6MbZpxlY1xJ8U01zQogm8vWgokQqDfhsyPyNxtuS00,447393
|
|
222
261
|
solace_agent_mesh/assets/docs/assets/images/sac-flows-80d5b603c6aafd33e87945680ce0abf3.png,sha256=868GgNJGPxn2G6c1Md_0umhg3xuAo7t6HEx8hOKbUJY,21098
|
|
@@ -246,32 +285,33 @@ solace_agent_mesh/assets/docs/assets/js/375.708d48db.js,sha256=tnoRKYgl89ieY_0s8
|
|
|
246
285
|
solace_agent_mesh/assets/docs/assets/js/3834.b6cd790e.js,sha256=LuFdgiur49yMqtwnhUN7ECJ2lPvBaWdDam3OANM5WcM,196
|
|
247
286
|
solace_agent_mesh/assets/docs/assets/js/3d406171.0b9eeed1.js,sha256=ysBVsGz8jiqpGJBMNGUCRXE5VGeVbbbKOXSo1004gak,45141
|
|
248
287
|
solace_agent_mesh/assets/docs/assets/js/4250.95455b28.js,sha256=y3OgeXf-tuJO5M6gJ70aW58HdFE7vZIPX7V4mduXL9c,197
|
|
249
|
-
solace_agent_mesh/assets/docs/assets/js/42b3f8d8.
|
|
288
|
+
solace_agent_mesh/assets/docs/assets/js/42b3f8d8.d97b8e94.js,sha256=B8PtMHdr70TYrVBRt-zn6UxOXEHkpL_ku8hN6LOHoAk,34795
|
|
250
289
|
solace_agent_mesh/assets/docs/assets/js/4356.d169ab5b.js,sha256=JJdBrbL2-8tn2jfAGsO1ezjcM37BAIZnZsNYgc4UoZs,195
|
|
251
290
|
solace_agent_mesh/assets/docs/assets/js/442a8107.b3159bb2.js,sha256=Q-EkgCGSjulBtLNhOpBQe0aIE2urIll5V9f3NlSsZt0,18468
|
|
252
291
|
solace_agent_mesh/assets/docs/assets/js/4458.518e66fa.js,sha256=oUPDT1LqnbeRts2CudqNueI-OQHML5gg9dWEvP6PiE4,25886
|
|
253
292
|
solace_agent_mesh/assets/docs/assets/js/4488.c7cc3442.js,sha256=r1GHmJIWPPQ07T92TAs1H59eHcs-e87AFDqi_0VK48A,435
|
|
254
293
|
solace_agent_mesh/assets/docs/assets/js/4494.6ee23046.js,sha256=UrwgwbJNRAZiY6UtdzHrpggUpkNGlIh9vHiSXdv5DDI,61052
|
|
294
|
+
solace_agent_mesh/assets/docs/assets/js/483cef9a.4e972867.js,sha256=NxfCv9dwsj2qOJgB8reK1pXJ_9y9Jiei-VqoYGfHmkQ,14249
|
|
255
295
|
solace_agent_mesh/assets/docs/assets/js/4855.fc4444b6.js,sha256=Rbhzs2AM-6i8Wyppb8a2Ws8kpNE8Pr5QMgx0sxAozxs,11494
|
|
256
296
|
solace_agent_mesh/assets/docs/assets/js/4866.22daefc0.js,sha256=bQRnSAwf0FIrdrYQLeyXv6f4utbEoi4nSU-kKchB4sw,3876
|
|
257
297
|
solace_agent_mesh/assets/docs/assets/js/4950.ca4caeda.js,sha256=Kq5gqn-p3ozVcUY7fWZnY4_35_sNcFN8z4bNY6Cqt-s,146409
|
|
258
298
|
solace_agent_mesh/assets/docs/assets/js/4c2787c2.fc6804f2.js,sha256=0IwIlLMkZe9HpIf5wa-lMgNTy4_6ZH0iusQJV5G2HZI,7849
|
|
259
299
|
solace_agent_mesh/assets/docs/assets/js/5388.7a136447.js,sha256=F9mKVkGI0I-fmfKn3kADJdVlVAe4lD7LQKjZ_kE7_cY,25022
|
|
260
|
-
solace_agent_mesh/assets/docs/assets/js/55f47984.
|
|
300
|
+
solace_agent_mesh/assets/docs/assets/js/55f47984.cf3781c4.js,sha256=cSnTXFAdQyURaNJQrAv412W6yy3bp7XZYEbM0LJyWjc,52803
|
|
261
301
|
solace_agent_mesh/assets/docs/assets/js/5607.081356f8.js,sha256=82P_IlhzwOSMkBDBTXHJsjSx0s1dFbcojWnOC-Vp7qU,194
|
|
262
302
|
solace_agent_mesh/assets/docs/assets/js/5864.b0d0e9de.js,sha256=XRxc9MFKvCVwmU2KY3io24cVMqk_dK8koh1B2rEQINQ,33926
|
|
263
303
|
solace_agent_mesh/assets/docs/assets/js/5b4258a4.0d080cd9.js,sha256=XO57DicV0rtbI8zv8qtZoe6fVbAFRWV3ddaDBUUFVSY,10721
|
|
264
304
|
solace_agent_mesh/assets/docs/assets/js/5e95c892.558d5167.js,sha256=LrlOoFsc_wTcyuzay3WDxkpYtVGn2kUIWCosBvg_z8I,377
|
|
265
305
|
solace_agent_mesh/assets/docs/assets/js/6143.0a1464c9.js,sha256=N9VlCMIQjWkazDtcal5eC7xe1YvOVCMRx119JzMQl1k,39122
|
|
266
306
|
solace_agent_mesh/assets/docs/assets/js/6395.e9c73649.js,sha256=-v8U5XdxnXthhTAYmuTbvDQRKDPxzQQS-Lew81sPN-8,440
|
|
307
|
+
solace_agent_mesh/assets/docs/assets/js/664b740a.1b744a32.js,sha256=VvilsxMRqDXggRKPPPgjl1DUEg0ekS1gTVq8i8DtBhU,32550
|
|
267
308
|
solace_agent_mesh/assets/docs/assets/js/6796.51d2c9b7.js,sha256=yeZg7UFFslMqrIQP-dqk-4vBwLDsJ5Rx6aD1VliW07U,6300
|
|
268
309
|
solace_agent_mesh/assets/docs/assets/js/6976.379be23b.js,sha256=Fe3y3jWBBUqmD4dIUwZUUjiCvv5uSLEss3cOEzUDB9E,193
|
|
269
310
|
solace_agent_mesh/assets/docs/assets/js/6978.ee0b945c.js,sha256=Fabb2n81BbNegY_9ZboMCBu-Zgd5-nETGqLxviUogDg,11834
|
|
270
|
-
solace_agent_mesh/assets/docs/assets/js/6e0db977.39a79ca9.js,sha256=IUgD6mX7LifBRlkWfJrYd4de9p9rawacatuithy8I1g,32591
|
|
271
311
|
solace_agent_mesh/assets/docs/assets/js/7040.cb436723.js,sha256=cmW7CCISvRnJNljTDg4jGJtG6rjSp0nWfZvchAKSdf4,36638
|
|
272
312
|
solace_agent_mesh/assets/docs/assets/js/7195.412f418a.js,sha256=8VHuob7jbA49epJL54bEU-mtOdSeUFXzqbgThE4walo,46219
|
|
273
313
|
solace_agent_mesh/assets/docs/assets/js/7280.3fb73bdb.js,sha256=XlDQpYplGuVoEqfXCt8Yzocd9uBTu64VUrNp4LQDyIY,659
|
|
274
|
-
solace_agent_mesh/assets/docs/assets/js/75384d09.
|
|
314
|
+
solace_agent_mesh/assets/docs/assets/js/75384d09.c193a8f0.js,sha256=6KzzOiNHd3k_vqS_kZazhFD77SOBRkB31X3GOYJZfTU,21751
|
|
275
315
|
solace_agent_mesh/assets/docs/assets/js/768e31b0.8b51cd70.js,sha256=RiCB8_hLIkx_-9iLJYC_SaDUb8trsfJ-zsETOTX6oLU,12950
|
|
276
316
|
solace_agent_mesh/assets/docs/assets/js/7845.e33e7c4c.js,sha256=sNEWPWBTnV-BmKI7vkcgRpTYeErGBXRbtH_X5YRnr-c,11143
|
|
277
317
|
solace_agent_mesh/assets/docs/assets/js/7900.69516146.js,sha256=MWXxfpYNV5CORkPa0r6EyyynbVJrNENknNv0Zb7TqS8,43021
|
|
@@ -285,68 +325,73 @@ solace_agent_mesh/assets/docs/assets/js/8591.d7c16be6.js.LICENSE.txt,sha256=W15K
|
|
|
285
325
|
solace_agent_mesh/assets/docs/assets/js/8709.7ecd4047.js,sha256=YU5vUOSZ5gdEKBbfOEXpm_8uA_Yq54lYaiwGqT68vyM,78161
|
|
286
326
|
solace_agent_mesh/assets/docs/assets/js/8731.49e930c2.js,sha256=ecg70IZRPAH8EOZxe0LHuP8bzUlB7Awf2vBj4DldxP4,336224
|
|
287
327
|
solace_agent_mesh/assets/docs/assets/js/8908.f9d1b506.js,sha256=LrKHDjwNk1bPFNWpwTeQmTNlC47BvAhr-S3I-AcB_FQ,30883
|
|
288
|
-
solace_agent_mesh/assets/docs/assets/js/90dd9cf6.88f385ea.js,sha256=a2enxSeT4tPXGf1jexQeNrvdr9lGL6K_9dkGeXRdtV0,22040
|
|
289
328
|
solace_agent_mesh/assets/docs/assets/js/9157.b4093d07.js,sha256=-LWKw3jEtKdkEjap1b0NI7tJLVEPj8SyTRq5cJvL0TA,22109
|
|
290
329
|
solace_agent_mesh/assets/docs/assets/js/9278.a4fd875d.js,sha256=Nm7cJgq11XXaYA3WxmU_H5Yk2S8L1fgF6RC9lX7eepU,143
|
|
291
330
|
solace_agent_mesh/assets/docs/assets/js/945fb41e.c63791d1.js,sha256=qlT-X_eLMyfcFJOm7WoWrZdKhbi3pwerMIbGk6tWHfY,15024
|
|
292
331
|
solace_agent_mesh/assets/docs/assets/js/9616.b75c2f6d.js,sha256=Ry0lLDd8HQzYAHmCKcXJ4iQ-9utISMjqcWk_iURtf1A,20576
|
|
293
332
|
solace_agent_mesh/assets/docs/assets/js/9793.c6d16376.js,sha256=-Xm7Yt1AJvEcfoYlQ04O5Douk4bsO4mgo_UJN8TVIUY,100459
|
|
333
|
+
solace_agent_mesh/assets/docs/assets/js/9a09e75d.d6607c56.js,sha256=vunpxmyjpCcccyR0vy8nbrKY0y29ERadFDk39NfV40s,15423
|
|
294
334
|
solace_agent_mesh/assets/docs/assets/js/9eff14a2.472b0310.js,sha256=Yo_IseS84vBMdHdeEqg6IqPlSh3p3WK4XtkNaJtjpBk,10567
|
|
295
335
|
solace_agent_mesh/assets/docs/assets/js/a3a92b25.4b7fa6a2.js,sha256=ZcppuNhcOhf8CkCipfepjr6hE9Us7-W5B6hQ933s1aA,5781
|
|
296
336
|
solace_agent_mesh/assets/docs/assets/js/a7bd4aaa.2204d2f7.js,sha256=v9wa2Q1Mt7cayLyMjyDTUT8J_kILQ2idmxDhgyBHlpE,756
|
|
297
337
|
solace_agent_mesh/assets/docs/assets/js/a94703ab.0438dbc2.js,sha256=drinuntIgk0lUv1Wc_WlHu5I8d5ZDszh329V_5WQrD4,11251
|
|
298
338
|
solace_agent_mesh/assets/docs/assets/js/aba21aa0.c42a534c.js,sha256=e8uMq6LJqDkt4o-uIbKH2CIw_7cQ4Kthlh4O9UqwWdw,211
|
|
299
|
-
solace_agent_mesh/assets/docs/assets/js/aba87c2f.
|
|
339
|
+
solace_agent_mesh/assets/docs/assets/js/aba87c2f.071e2d94.js,sha256=zGNNnpqAsakGq-eoC67VarW_VDqVnbUq1YnJl7uR6Es,17337
|
|
340
|
+
solace_agent_mesh/assets/docs/assets/js/ae0e903d.4d8dda10.js,sha256=O4L9GDbVf2rrmU1aXbUW4Fn3JmwXNUA6d472bCwsPc0,4885
|
|
300
341
|
solace_agent_mesh/assets/docs/assets/js/ae4415af.7a2f0bbf.js,sha256=F3xkR1q7_hS_UUfF9fg-3sPDJ-8bAOsHjbqaX-UoEMM,29047
|
|
301
342
|
solace_agent_mesh/assets/docs/assets/js/b7006a3a.73a79653.js,sha256=YYjvDTjQytUxcimeJinuha5T7SdUyHTYjRz7kLFOGOQ,12973
|
|
302
343
|
solace_agent_mesh/assets/docs/assets/js/bac0be12.f50d9bac.js,sha256=quA_kaWdOjhBBpvq5jhKpSqEKaOqy8y4oITXTObG8Yk,17998
|
|
303
344
|
solace_agent_mesh/assets/docs/assets/js/beecea0d.ae31f6a7.js,sha256=oEQqPzjzWdpvM2fMjLFEFg5uoaN9KtcPatNqiVDu4NU,26216
|
|
304
345
|
solace_agent_mesh/assets/docs/assets/js/c2c06897.587b4af5.js,sha256=sgWo2S9PB6F9eL3Z3nrbx1IS-vtwFi_dt5KX9rNVpk8,14948
|
|
346
|
+
solace_agent_mesh/assets/docs/assets/js/c835a94d.146e3186.js,sha256=AjMNPvk8MZbZ55MRODRpHICvJ4uhpj09vpNESxGP9zI,22106
|
|
305
347
|
solace_agent_mesh/assets/docs/assets/js/cc969b05.bd3e0d6c.js,sha256=9LqCerLmI1iU53gH096nOvASEvXnC3RvcNRKiS91LmE,23069
|
|
306
348
|
solace_agent_mesh/assets/docs/assets/js/cd3d4052.b6535013.js,sha256=wi8AuSgR-M8XtFY639DAVFuaiur6LaBabHKoh5qfuJY,9747
|
|
307
349
|
solace_agent_mesh/assets/docs/assets/js/ced92a13.fb92e7ca.js,sha256=96enCMQqnD-_WrFda13oJ3gPLYxmy93LXDFxDuxA5JY,25255
|
|
308
350
|
solace_agent_mesh/assets/docs/assets/js/cee5d587.f5b73ca1.js,sha256=ciDSktNPCP_cmpHCR-ycCpuFEeVmbV_D8uHydRZ225w,9508
|
|
309
|
-
solace_agent_mesh/assets/docs/assets/js/f284c35a.
|
|
351
|
+
solace_agent_mesh/assets/docs/assets/js/f284c35a.7334119c.js,sha256=wJOKH1ngi5UuVvqdrOiakHaiqN7bD007krZV1eqE4Hs,21400
|
|
310
352
|
solace_agent_mesh/assets/docs/assets/js/f897a61a.0aa29dbb.js,sha256=Bv0Itx75hHCRAiGKy34-NjK7CSWZ9CT1l5uyni3GCOw,16949
|
|
311
353
|
solace_agent_mesh/assets/docs/assets/js/fbfa3e75.aca209c9.js,sha256=vmq7isB22h2J_2cVIt1h6D2OhwU6wTBEnk1-CNZv9Wk,7314
|
|
312
|
-
solace_agent_mesh/assets/docs/assets/js/main.
|
|
313
|
-
solace_agent_mesh/assets/docs/assets/js/main.
|
|
314
|
-
solace_agent_mesh/assets/docs/assets/js/runtime~main.
|
|
315
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
316
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
317
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
318
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
319
|
-
solace_agent_mesh/assets/docs/docs/documentation/concepts/
|
|
320
|
-
solace_agent_mesh/assets/docs/docs/documentation/concepts/
|
|
321
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
322
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
323
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
324
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
325
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
326
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
327
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
328
|
-
solace_agent_mesh/assets/docs/docs/documentation/getting-started/
|
|
329
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
330
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
331
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
332
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
333
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
334
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
335
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
336
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
337
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
338
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
339
|
-
solace_agent_mesh/assets/docs/docs/documentation/tutorials/
|
|
340
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
341
|
-
solace_agent_mesh/assets/docs/docs/documentation/
|
|
342
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/
|
|
343
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/
|
|
344
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/
|
|
345
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/
|
|
346
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/
|
|
347
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/
|
|
348
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/
|
|
349
|
-
solace_agent_mesh/assets/docs/docs/documentation/user-guide/
|
|
354
|
+
solace_agent_mesh/assets/docs/assets/js/main.1c79039d.js,sha256=94pzp1S1vnR1A_yVAdk50EXKnCXuA3uFAp81_9VJcY8,482726
|
|
355
|
+
solace_agent_mesh/assets/docs/assets/js/main.1c79039d.js.LICENSE.txt,sha256=3Jia5o7yaxOtbxuy9khs-thK96m55yCiPaUA-IkWh0A,2069
|
|
356
|
+
solace_agent_mesh/assets/docs/assets/js/runtime~main.858117b7.js,sha256=SNGJ14EOL4aT8af0mapwlOKcVK1ACd3heWySBvE1wmY,6233
|
|
357
|
+
solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html,sha256=Dngen9x8vxUnbPOlnViMGRj5hM4KiHvYHDpyYPZQi0M,27051
|
|
358
|
+
solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html,sha256=OM991d0SYZ903rG7qeielkjg59Z4fTjRYnV31jX_aSE,69727
|
|
359
|
+
solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html,sha256=BNOOxIJfrLM9fQxS4meuheV5UF9wKpVheqsG-x9G978,84817
|
|
360
|
+
solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html,sha256=LgHCqPd6nAYzc1vWdviCqemcCduceIVcyBwBVBJK1hM,87750
|
|
361
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html,sha256=2m6qJUsXmgXy5Ofz8xtU-qTC5VR24DjBuT404oPn1Jg,39799
|
|
362
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html,sha256=UhamYmQbpB8yvQXnltkRK78feAdzlcLR5ccBds7yd9w,32769
|
|
363
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html,sha256=VGkYbml0N7oa6BM4ifz3P7qsZ8RDHpNnw6A3dbar43M,50214
|
|
364
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html,sha256=-9IOkZaf8BWAE4HXfExWsXKONsOMTZjeJ4lOUmQgF8w,30147
|
|
365
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html,sha256=wagZMZaPh4mjZg_-xZnSOf3-JDxzrrFf8UpL-C6Bav0,23853
|
|
366
|
+
solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html,sha256=j-ILQt-_6APyTPEkeWrslUhy86bC7SzmCcWl2_no2nw,39937
|
|
367
|
+
solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html,sha256=5NmVim94YDWq37g7GpqNNu-4MZ1jqlkIzquW_7i3vL8,45637
|
|
368
|
+
solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html,sha256=YbdCheVeMDVa0KOlmYUz7YEjN_3EKM_mm8RoL4Dq4FE,42547
|
|
369
|
+
solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html,sha256=ZqcxnV0k_hDPtyzZdilsKAlXlJSmkHHcZaF7F6M_5pI,26091
|
|
370
|
+
solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html,sha256=Z8xcC8fKUsu0AI_L1nPeySkj9SDUWkupIfhjZW6740c,21724
|
|
371
|
+
solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html,sha256=izQaytcXpjPGnPJdhPfytKWbt0ZmPHDl9bCnrwTKzsM,56647
|
|
372
|
+
solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html,sha256=DvqWZL17YtPYSdib8YZVnhkBIz4wt9tPz3XMI3WkX7Q,32553
|
|
373
|
+
solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html,sha256=I_5FIFMMLA7_rR1LApJGGaV0VR_xXnUhK13kss3CCrU,30461
|
|
374
|
+
solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html,sha256=bpb5ksraI_wuGg8Himd3D6JdmP1PZdL1B1L84_RUUGM,42540
|
|
375
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html,sha256=LqATXS4lRh8f1RpJjKUltDdz6pmMiWk97VQQjmLXfoE,75264
|
|
376
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html,sha256=1DsJw_iulAOk9QIshKLFmlO5pJRSjLJkRuR-qaI8BbU,383367
|
|
377
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html,sha256=idhX3J636AQtAIGmYSgZwXDYdn8FrkbLSgQLPdH5S8s,69270
|
|
378
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html,sha256=xPmp65tvytse8SIFuSCH9decxi9IW1zBLGV1TimV_4E,65034
|
|
379
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html,sha256=pVz778lZd3Ya9zIwo8vWgH3wsuqXwdxYz4KqNstcWto,87586
|
|
380
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html,sha256=Aa9gJPhq4s4bAG0fYyQ7T9iVUzskuZuQ3sNDgrkyF4U,80327
|
|
381
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html,sha256=zwMnBaQc2XfuF7X2aIRD2PEQ714HaXq1gAQQi4QJMK4,46701
|
|
382
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html,sha256=mCeDkSdAmVRuN3yZU_NDWwpwqi_ANHYpuqt8aShu8ts,49984
|
|
383
|
+
solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html,sha256=FFtALLOG_twHZ4dvZX_Bu_r46C7NtfM_i1JGYT9Puso,69291
|
|
384
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html,sha256=U8xWUcPTJgyhHGHeQFdjQ_erEepzoE79wwxzfLmEEg0,44864
|
|
385
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html,sha256=TQVGqbqNZ_R-BZNo6UJAlBT6XNm51DW_7PTdw0FSk_w,34816
|
|
386
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html,sha256=l7sanN_omQCUrsBzSfCPbveo3jIad_d7wVMQ5LaXyks,58271
|
|
387
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html,sha256=hwGzTllcAEiSwjdeW1EmCF4GFXKL1emQ9voFgiyjYYs,37820
|
|
388
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html,sha256=33k5cyn43qhTEN4N3YXplmvaNoiVebjNOzr5z4Star8,50700
|
|
389
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html,sha256=9k_svcQ_pmC6TUSVZt67OswA-8NqPQOu2uQ48bbb3o0,162692
|
|
390
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html,sha256=T4K3p6-nxZ1FR6u4IPdCRgHI_KBKFIprIw9e-mmq7tw,402941
|
|
391
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html,sha256=S_0SJccP-Zr3WMSiavx7ZJWuudAsO0-uloxrQI5Q8ZY,84500
|
|
392
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html,sha256=ysv3iyKoVrns95RUmcgn_OS90vNIkY3lMxPAEkHyWm0,59672
|
|
393
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html,sha256=Hxj0oit4BnxOq_UTwF5D0pMaNs2eMYLfAQm16Z-dt-4,25835
|
|
394
|
+
solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html,sha256=xu0oY7E0Kjlbnqtopq6Yx7jpaC_HVoXtfAdolQO9Dco,29843
|
|
350
395
|
solace_agent_mesh/assets/docs/img/Solace_AI_Framework_With_Broker.png,sha256=e6MbZpxlY1xJ8U01zQogm8vWgokQqDfhsyPyNxtuS00,447393
|
|
351
396
|
solace_agent_mesh/assets/docs/img/logo.png,sha256=TdXZ2wnkSkaFrGO-5fy2WcmjGXaGzwE29dM83raxoTg,45439
|
|
352
397
|
solace_agent_mesh/assets/docs/img/sac-flows.png,sha256=868GgNJGPxn2G6c1Md_0umhg3xuAo7t6HEx8hOKbUJY,21098
|
|
@@ -355,7 +400,7 @@ solace_agent_mesh/assets/docs/img/solace-logo-text.svg,sha256=-wslMOppjNAJqbWRfB
|
|
|
355
400
|
solace_agent_mesh/assets/docs/img/solace-logo.png,sha256=XY5zC_yIVxHdO14TMgW4eTsDWryPsgE_oTSJV4CQthw,17627
|
|
356
401
|
solace_agent_mesh/config_portal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
357
402
|
solace_agent_mesh/config_portal/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
358
|
-
solace_agent_mesh/config_portal/backend/common.py,sha256=
|
|
403
|
+
solace_agent_mesh/config_portal/backend/common.py,sha256=RmNUyUpFtbdZgUDh2nEOUCRhMj_H9ILtOmZFqRV9jpI,3036
|
|
359
404
|
solace_agent_mesh/config_portal/backend/plugin_catalog_server.py,sha256=Qr5cFUMyDq0qHDTa9ZRbczTi8BUWPZTvxAv3jRxa3hw,7875
|
|
360
405
|
solace_agent_mesh/config_portal/backend/server.py,sha256=gx8KIAopkeAmn4WfseP5z79GOE246Lf8nPaCw7QrBPo,23689
|
|
361
406
|
solace_agent_mesh/config_portal/backend/plugin_catalog/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -365,23 +410,24 @@ solace_agent_mesh/config_portal/backend/plugin_catalog/registry_manager.py,sha25
|
|
|
365
410
|
solace_agent_mesh/config_portal/backend/plugin_catalog/scraper.py,sha256=j7yJUEKjgsVs7TvSf8Uf_22bKotlYhocIYhfJhTpQPI,21238
|
|
366
411
|
solace_agent_mesh/config_portal/frontend/static/client/Solace_community_logo.png,sha256=ugNi5vBxTdFZMW2uWNZYcutyk4z8yw9e5KEL5XDcodU,5894
|
|
367
412
|
solace_agent_mesh/config_portal/frontend/static/client/favicon.ico,sha256=9z1ZdOqroxsg2-FzV79kTJ69hVqWVkrDlIv2RgmIhR8,15086
|
|
368
|
-
solace_agent_mesh/config_portal/frontend/static/client/index.html,sha256=
|
|
369
|
-
solace_agent_mesh/config_portal/frontend/static/client/assets/_index-
|
|
413
|
+
solace_agent_mesh/config_portal/frontend/static/client/index.html,sha256=CLGBDKFc1Zv25lpO0Y-IHbU9vJj-EWIxzWihXdZS73E,1419
|
|
414
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/_index-bFMKlzKf.js,sha256=JBJO4Nb-60JkEfQbVyseSfMexhK_v1c3-rA1kCtFYso,277760
|
|
370
415
|
solace_agent_mesh/config_portal/frontend/static/client/assets/components-Rk0n-9cK.js,sha256=dXPV9MnIciHjfm68Wp9aKpViYlXfyN_6etThgGS8KO8,40041
|
|
371
416
|
solace_agent_mesh/config_portal/frontend/static/client/assets/entry.client-mvZjNKiz.js,sha256=-9lo6je5RWC0Q4FKlTg-tdu1dsoNQvwbLr5zgfZwf58,3862
|
|
372
417
|
solace_agent_mesh/config_portal/frontend/static/client/assets/index-DzNKzXrc.js,sha256=4xvgTOvPkqnfRR2N9T199hzTFK6u_NdvA5ImbTe2UYU,217925
|
|
373
|
-
solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-
|
|
418
|
+
solace_agent_mesh/config_portal/frontend/static/client/assets/manifest-89db7c30.js,sha256=0TNl4hKVU240O_8gPn1BaH0ZEDUJyiEojjOnrgdouCM,781
|
|
374
419
|
solace_agent_mesh/config_portal/frontend/static/client/assets/root-BWvk5-gF.js,sha256=KoDaD7JSrkUDgUbDa0JqaB7mXNCc2fR-T5kKAcH5nho,1799
|
|
375
420
|
solace_agent_mesh/config_portal/frontend/static/client/assets/root-DxRwaWiE.css,sha256=HaETPzdva-2CpjK-MmIBI6lipZMiGHmAqLRJiD8s2QE,33607
|
|
376
|
-
solace_agent_mesh/client/webui/frontend/static/auth-callback.html,sha256=
|
|
377
|
-
solace_agent_mesh/client/webui/frontend/static/index.html,sha256=
|
|
378
|
-
solace_agent_mesh/client/webui/frontend/static/assets/authCallback-
|
|
379
|
-
solace_agent_mesh/client/webui/frontend/static/assets/client-
|
|
421
|
+
solace_agent_mesh/client/webui/frontend/static/auth-callback.html,sha256=3ajyFcWxvD3xWbS3ws5DLqgq1dLSauPV6VBy98E_ySw,570
|
|
422
|
+
solace_agent_mesh/client/webui/frontend/static/index.html,sha256=Z0xTzfpRnCH2EeILF3CjwIeyKZquPIXr3KlBkMUk2qI,635
|
|
423
|
+
solace_agent_mesh/client/webui/frontend/static/assets/authCallback-CAX9u8a7.js,sha256=rfRQ7ntt_kKVD80r_Lov_PURuasCSLeBv5EX8pNrSvM,528
|
|
424
|
+
solace_agent_mesh/client/webui/frontend/static/assets/client-DXU9SPI5.js,sha256=dMeFMeQYg87OEejBqjM6xDhqQESFflCxyWTnXmbFr4I,174527
|
|
380
425
|
solace_agent_mesh/client/webui/frontend/static/assets/favicon-BLgzUch9.ico,sha256=9z1ZdOqroxsg2-FzV79kTJ69hVqWVkrDlIv2RgmIhR8,15086
|
|
381
|
-
solace_agent_mesh/client/webui/frontend/static/assets/main-
|
|
382
|
-
solace_agent_mesh/client/webui/frontend/static/assets/main-
|
|
383
|
-
solace_agent_mesh-
|
|
384
|
-
solace_agent_mesh-1.1.
|
|
385
|
-
solace_agent_mesh-1.1.
|
|
386
|
-
solace_agent_mesh-1.1.
|
|
387
|
-
solace_agent_mesh-1.1.
|
|
426
|
+
solace_agent_mesh/client/webui/frontend/static/assets/main-C03yrETa.css,sha256=8i4G_OLqxxoF2D7-4uCwQVUEMnkH7QcNTmHLeBIeUNo,119785
|
|
427
|
+
solace_agent_mesh/client/webui/frontend/static/assets/main-C1k9E0aC.js,sha256=J6VK3MYhpqfjQPLy1PkltNMlhRJEVX0MHXlHhl7dLho,420685
|
|
428
|
+
solace_agent_mesh/client/webui/frontend/static/assets/vendor-B0BEKoAR.js,sha256=e8CQistS6OBV4DeTlX098z7pxx7tBpuCTJrRyb7K0s4,340510
|
|
429
|
+
solace_agent_mesh-1.3.1.dist-info/METADATA,sha256=CY5VtVCQ6h0KiX-Z5nKwPEb5CJStBoOgqQI0VzvPdjs,24785
|
|
430
|
+
solace_agent_mesh-1.3.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
431
|
+
solace_agent_mesh-1.3.1.dist-info/entry_points.txt,sha256=5pLVH8d8bd4sxUwBh7VTni8gTTSzTqGfY14zgdQZm1I,106
|
|
432
|
+
solace_agent_mesh-1.3.1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
433
|
+
solace_agent_mesh-1.3.1.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[3974],{6145:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>r,default:()=>g,frontMatter:()=>l,metadata:()=>o,toc:()=>c});const o=JSON.parse('{"id":"documentation/user-guide/create-agents","title":"Create Agents","description":"Introduction","source":"@site/docs/documentation/user-guide/create-agents.md","sourceDirName":"documentation/user-guide","slug":"/documentation/user-guide/create-agents","permalink":"/solace-agent-mesh/docs/documentation/user-guide/create-agents","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/user-guide/create-agents.md","tags":[],"version":"current","sidebarPosition":30,"frontMatter":{"title":"Create Agents","sidebar_position":30},"sidebar":"docSidebar","previous":{"title":"Structure","permalink":"/solace-agent-mesh/docs/documentation/user-guide/structure"},"next":{"title":"Create Gateways","permalink":"/solace-agent-mesh/docs/documentation/user-guide/create-gateways"}}');var i=t(4848),s=t(8453);const l={title:"Create Agents",sidebar_position:30},r="Creating Agents",a={},c=[{value:"Introduction",id:"introduction",level:2},{value:"Quick Start: Creating Your First Agent",id:"quick-start-creating-your-first-agent",level:2},{value:"CLI Options",id:"cli-options",level:3},{value:"Core Concepts",id:"core-concepts",level:2},{value:"Tools",id:"tools",level:3},{value:"Configuration File",id:"configuration-file",level:3},{value:"Tool Configuration",id:"tool-configuration",level:3},{value:"ToolContext",id:"toolcontext",level:3},{value:"Lifecycle Functions",id:"lifecycle-functions",level:3},{value:"Step-by-Step Guide",id:"step-by-step-guide",level:2},{value:"Step 1: Initialize your Agent",id:"step-1-initialize-your-agent",level:3},{value:"Step 2: The Tool Function",id:"step-2-the-tool-function",level:3},{value:"Step 3: The Agent Configuration",id:"step-3-the-agent-configuration",level:3},{value:"Step 4: The Lifecycle Function",id:"step-4-the-lifecycle-function",level:3},{value:"Advanced Concepts",id:"advanced-concepts",level:2},{value:"Working with Artifacts",id:"working-with-artifacts",level:3},{value:"Using Multiple Tool Configurations",id:"using-multiple-tool-configurations",level:3},{value:"Running Your Agent",id:"running-your-agent",level:2},{value:"Architecture Overview",id:"architecture-overview",level:2},{value:"Best Practices",id:"best-practices",level:2},{value:"Tool Design",id:"tool-design",level:3},{value:"Configuration",id:"configuration",level:3},{value:"Testing",id:"testing",level:3}];function d(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",mermaid:"mermaid",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.header,{children:(0,i.jsx)(n.h1,{id:"creating-agents",children:"Creating Agents"})}),"\n",(0,i.jsx)(n.h2,{id:"introduction",children:"Introduction"}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsxs)(n.p,{children:["For a more comprehensive tutorial example, see the ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/tutorials/custom-agent",children:"Build Your Own Agent"})," guide.\nThis page provides an in-depth theoretical overview of creating agents in Solace Agent Mesh."]})}),"\n",(0,i.jsxs)(n.p,{children:["Solace Agent Mesh (SAM) is a powerful platform that enables you to create intelligent agents that can communicate with each other and perform complex tasks. At its core, SAM uses a ",(0,i.jsx)(n.strong,{children:"tool-based architecture"})," where LLM-powered agents are equipped with specific capabilities (tools) that they can use to accomplish user requests."]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsxs)(n.strong,{children:["Before continuing with this tutorial, make sure you are familiar with the basic ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/agents",children:"agent concept"}),"."]})}),"\n",(0,i.jsx)(n.p,{children:"This tutorial guides you through creating your first SAM agent from scratch. You will learn how to:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Define tools as Python functions"}),"\n",(0,i.jsx)(n.li,{children:"Configure an agent using YAML"}),"\n",(0,i.jsx)(n.li,{children:"Set up agent lifecycle functions"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:'By the end of this tutorial, you should have a working "Hello World" agent that demonstrates the fundamental concepts of SAM agent development.'}),"\n",(0,i.jsx)(n.h2,{id:"quick-start-creating-your-first-agent",children:"Quick Start: Creating Your First Agent"}),"\n",(0,i.jsxs)(n.p,{children:["You can create an agent directly using the SAM CLI ",(0,i.jsx)(n.code,{children:"sam add agent"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sam add agent my-first-agent\n"})}),"\n",(0,i.jsx)(n.p,{children:"This command:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["Launches an interactive setup (or use ",(0,i.jsx)(n.code,{children:"--gui"})," for browser-based configuration)"]}),"\n",(0,i.jsx)(n.li,{children:"Generates the necessary files and configuration"}),"\n",(0,i.jsx)(n.li,{children:"Sets up the basic agent structure"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"Note that create agent as plugin is preferred over create agent directly."}),"\n",(0,i.jsx)(n.h3,{id:"cli-options",children:"CLI Options"}),"\n",(0,i.jsx)(n.p,{children:"You can customize the agent creation with provided CLI options."}),"\n",(0,i.jsx)(n.p,{children:"For a complete list of options, run:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sam add agent --help\n"})}),"\n",(0,i.jsx)(n.h2,{id:"core-concepts",children:"Core Concepts"}),"\n",(0,i.jsx)(n.p,{children:"Before diving into the implementation, it is important to understand the key concepts that make SAM agents work:"}),"\n",(0,i.jsx)(n.h3,{id:"tools",children:"Tools"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.strong,{children:"Tools are the fundamental building blocks of SAM agents."})," Each tool is implemented as a Python function that performs a specific task. Tools can:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Process text and data"}),"\n",(0,i.jsx)(n.li,{children:"Interact with external APIs"}),"\n",(0,i.jsx)(n.li,{children:"Create and manipulate files"}),"\n",(0,i.jsx)(n.li,{children:"Communicate with other agents"}),"\n",(0,i.jsx)(n.li,{children:"Access databases and services"}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"The LLM (Large Language Model) orchestrating your agent decides which tools to use based on the user's request and the tool descriptions you provide."}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsxs)(n.p,{children:["Solace Agent Mesh provides a set of ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/user-guide/builtin-tools/",children:"built-in tools"})," plus support for ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/tutorials/mcp-integration",children:"model context protocol (MCP)"})," servers, which can be configured in the tools list of your agent configuration."]})}),"\n",(0,i.jsx)(n.h3,{id:"configuration-file",children:"Configuration File"}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"config.yaml"})," (for plugin template) or ",(0,i.jsx)(n.code,{children:"agent-name.yaml"})," (for agent instances) file is the blueprint of your agent. It defines:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Agent identity"}),": Name, description, and capabilities"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Model configuration"}),": Which LLM to use"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Tools list"}),": Defines which tools the agent can access and how they're configured"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Lifecycle functions"}),": Setup and cleanup procedures"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Framework services"}),": Session management, artifact storage, and so on."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/agents#agent-card",children:"Agent card"})}),": Metadata describing the agent capabilities, skills and its visibility in the system"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"tool-configuration",children:"Tool Configuration"}),"\n",(0,i.jsxs)(n.p,{children:["Within the ",(0,i.jsx)(n.code,{children:"tools"})," list in your YAML config, each tool can have its own ",(0,i.jsx)(n.code,{children:"tool_config"})," section. This allows you to:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Configure the same tool function for different purposes"}),"\n",(0,i.jsx)(n.li,{children:"Pass specific parameters to tool instances"}),"\n",(0,i.jsx)(n.li,{children:"Customize tool behavior per agent"}),"\n"]}),"\n",(0,i.jsxs)(n.admonition,{type:"info",children:[(0,i.jsxs)(n.p,{children:['For tools of type "python", you can also use the ',(0,i.jsx)(n.code,{children:"tool_name"})," and ",(0,i.jsx)(n.code,{children:"tool_description"})," to overwrite the function name and description in the tool docstring."]}),(0,i.jsx)(n.p,{children:"This is useful when using a generic tool function for multiple purposes, allowing you to provide a more descriptive name and description for each instance."})]}),"\n",(0,i.jsx)(n.h3,{id:"toolcontext",children:"ToolContext"}),"\n",(0,i.jsxs)(n.p,{children:["The ",(0,i.jsx)(n.code,{children:"ToolContext"})," object (passed as one of the arguments to your tool function) provides your tools with access to SAM core services:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Logging"}),": Structured logging for debugging and monitoring"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Artifact Service"}),": File storage and retrieval"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Session Information"}),": Current user and session context"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Agent State"}),": Shared data between tool calls"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"lifecycle-functions",children:"Lifecycle Functions"}),"\n",(0,i.jsx)(n.p,{children:"Lifecycle functions allow you to manage resources that should persist for the agent's lifetime:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"agent_init_function"})}),": Runs when the agent starts (for example, database connections)"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"agent_cleanup_function"})}),": Runs when the agent shuts down (for example, closing connections)"]}),"\n"]}),"\n",(0,i.jsx)(n.admonition,{type:"note",children:(0,i.jsx)(n.p,{children:"Lifecycle functions are optional but recommended for managing resources effectively."})}),"\n",(0,i.jsx)(n.h2,{id:"step-by-step-guide",children:"Step-by-Step Guide"}),"\n",(0,i.jsx)(n.p,{children:"Create a simple agent that can greet users and demonstrate the core concepts."}),"\n",(0,i.jsxs)(n.p,{children:["You can create an agent either by using the ",(0,i.jsx)(n.code,{children:"sam add agent"})," command or by creating a new plugin of type agent, ",(0,i.jsx)(n.code,{children:"sam plugin create my-hello-agent --type agent"}),"."]}),"\n",(0,i.jsx)(n.admonition,{type:"tip",children:(0,i.jsxs)(n.p,{children:["For information and recommendations about these options, see ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/plugins#agent-or-plugin-which-to-use",children:(0,i.jsx)(n.code,{children:"Agent or Plugin: Which To use?"})}),"."]})}),"\n",(0,i.jsx)(n.h3,{id:"step-1-initialize-your-agent",children:"Step 1: Initialize your Agent"}),"\n",(0,i.jsxs)(n.p,{children:["In this tutorial, you create a new agent by creating a new plugin of type agent.\nFor an example of custom agents, see ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/tutorials/custom-agent",children:"Build Your Own Agent"})," guide."]}),"\n",(0,i.jsx)(n.p,{children:"Although the directory structure for plugins is slightly different than the one for agents, both require a YAML configuration file, and a python module with the tools and lifecycle functions you want."}),"\n",(0,i.jsx)(n.p,{children:"To create a new agent plugin, run the following command:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sam plugin create my-hello-agent --type agent\n"})}),"\n",(0,i.jsx)(n.p,{children:"And follow the prompts to set up your agent. The prompts create a new directory structure for your agent."}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"my-hello-agent/\n\u251c\u2500\u2500 src/\n\u2502 \u2514\u2500\u2500 my_hello_agent/\n\u2502 \u251c\u2500\u2500 __init__.py\n\u2502 \u251c\u2500\u2500 tools.py\n\u2502 \u2514\u2500\u2500 lifecycle.py # This file won't be automatically created\n\u251c\u2500\u2500 config.yaml\n\u251c\u2500\u2500 pyproject.toml\n\u2514\u2500\u2500 README.md\n"})}),"\n",(0,i.jsx)(n.mermaid,{value:"graph TD\n A[my-hello-agent/] --\x3e B[src/]\n A --\x3e C[config.yaml]\n A --\x3e D[pyproject.toml]\n A --\x3e E[README.md]\n \n B --\x3e F[my_hello_agent/]\n F --\x3e G[__init__.py]\n F --\x3e H[tools.py]\n F --\x3e I[lifecycle.py]\n \n style C fill:#b60000,stroke:#333,stroke-width:2px\n style H fill:#b60000,stroke:#333,stroke-width:2px\n style I fill:#007000,stroke:#333,stroke-width:2px"}),"\n",(0,i.jsx)(n.h3,{id:"step-2-the-tool-function",children:"Step 2: The Tool Function"}),"\n",(0,i.jsx)(n.p,{children:"Create your first tool function:\nThe following arguments are provided by the framework:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"tool_context: SAM framework context"}),"\n",(0,i.jsx)(n.li,{children:"tool_config: Tool-specific configuration (from config.yaml)"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:'# src/my_hello_agent/tools.py\n"""\nTools for the Hello World agent.\n"""\n\nfrom typing import Any, Dict, Optional\nfrom google.adk.tools import ToolContext\nfrom solace_ai_connector.common.log import log\n\n\nasync def hello_tool(\n name: str,\n tool_context: Optional[ToolContext] = None,\n tool_config: Optional[Dict[str, Any]] = None\n) -> Dict[str, Any]:\n """\n Greets a user with a personalized message.\n \n Args:\n name: The name of the person to greet\n \n Returns:\n A dictionary with the greeting message\n """\n log_identifier = "[HelloTool]"\n log.info(f"{log_identifier} Greeting user: {name}")\n \n # Get configuration from tool_config\n greeting_prefix = "Hello"\n if tool_config:\n greeting_prefix = tool_config.get("greeting_prefix", "Hello")\n \n # Create the greeting message\n greeting_message = f"{greeting_prefix}, {name}! Welcome to Solace Agent Mesh!"\n \n log.info(f"{log_identifier} Generated greeting: {greeting_message}")\n \n return {\n "status": "success",\n "message": greeting_message,\n "greeted_name": name\n }\n\n\nasync def farewell_tool(\n name: str,\n tool_context: Optional[ToolContext] = None,\n tool_config: Optional[Dict[str, Any]] = None\n) -> Dict[str, Any]:\n """\n Says goodbye to a user.\n \n Args:\n name: The name of the person to say goodbye to\n \n Returns:\n A dictionary with the farewell message\n """\n log_identifier = "[FarewellTool]"\n log.info(f"{log_identifier} Saying goodbye to user: {name}")\n \n # Get configuration from tool_config\n farewell_prefix = "Goodbye"\n if tool_config:\n farewell_prefix = tool_config.get("farewell_prefix", "Goodbye")\n \n # Create the farewell message\n farewell_message = f"{farewell_prefix}, {name}! Thanks for using Solace Agent Mesh!"\n \n log.info(f"{log_identifier} Generated farewell: {farewell_message}")\n \n return {\n "status": "success",\n "message": farewell_message,\n "farewell_name": name\n }\n'})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Key Points:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Function Signature"}),": All tool functions should be ",(0,i.jsx)(n.code,{children:"async"})," and accept ",(0,i.jsx)(n.code,{children:"tool_context"})," and ",(0,i.jsx)(n.code,{children:"tool_config"})," parameters"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Return Format"}),": Return a dictionary with at least a ",(0,i.jsx)(n.code,{children:"status"})," field"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Logging"}),": Use the SAM logger for consistent logging"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Configuration"}),": Access tool-specific config via the ",(0,i.jsx)(n.code,{children:"tool_config"})," parameter"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"step-3-the-agent-configuration",children:"Step 3: The Agent Configuration"}),"\n",(0,i.jsx)(n.p,{children:"Create the main configuration file for your agent:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:'# ... (additional services and configurations)\n\napps:\n - name: my-hello-agent\n app_module: solace_agent_mesh.agent.sac.app \n broker:\n <<: *broker_connection\n \n # Agent-specific configuration\n app_config:\n # Basic agent identity\n namespace: ${NAMESPACE} \n supports_streaming: true \n agent_name: "HelloAgent"\n display_name: "Hello World Agent"\n \n # LLM model configuration\n model: *general_model \n \n # Agent instructions (system prompt)\n instruction: |\n You are a friendly Hello World agent. Your purpose is to greet users and \n demonstrate the capabilities of Solace Agent Mesh. You can:\n \n 1. Greet users with personalized messages using the hello_tool\n 2. Say goodbye to users using the farewell_tool\n \n Always be polite and helpful. When greeting someone, ask for their name \n if they haven\'t provided it.\n \n # Lifecycle functions\n agent_init_function:\n module: "my_hello_agent.lifecycle" # This should point to your lifecycle python module\n name: "initialize_hello_agent"\n base_path: .\n config:\n startup_message: "Hello Agent is starting up!"\n log_level: "INFO"\n \n agent_cleanup_function:\n module: "my_hello_agent.lifecycle"\n base_path: .\n name: "cleanup_hello_agent"\n \n # Tools configuration\n tools:\n # Hello tool with custom greeting\n - tool_type: python\n component_module: "my_hello_agent.tools"\n component_base_path: .\n function_name: "hello_tool"\n tool_name: "greet_user" # Renaming the tool, must use this name in the agent card\n tool_config:\n greeting_prefix: "Hello there"\n \n # Farewell tool with custom farewell\n - tool_type: python\n component_module: "my_hello_agent.tools"\n component_base_path: .\n function_name: "farewell_tool"\n tool_name: "say_goodbye"\n tool_config:\n farewell_prefix: "See you later"\n \n # Built-in artifact tools for file operations\n - tool_type: builtin-group\n group_name: "artifact_management"\n \n # Agent card (describes the agent\'s capabilities)\n agent_card:\n description: "A friendly Hello World agent that demonstrates SAM capabilities"\n defaultInputModes: ["text"]\n defaultOutputModes: ["text"]\n skills:\n - id: "greet_user"\n name: "Greet User"\n description: "Greets users with personalized messages"\n - id: "say_goodbye"\n name: "Say Goodbye"\n description: "Says goodbye to users"\n - id: "file_operations"\n name: "File Operations"\n description: "Create, read, and manage files and artifacts"\n \n # Session and artifact services\n session_service: *default_session_service\n artifact_service: *default_artifact_service\n# ... (additional services and configurations)\n'})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Key Sections Explained:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"namespace"})}),": Unique identifier for your agent in the mesh"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"model"})}),": LLM configuration (can be a string or detailed config)"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"instruction"})}),": The system prompt that defines your agent's behavior"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"tools"})}),": List of tools your agent can use, with their configurations"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"agent_card"})}),": Metadata describing your agent's capabilities"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"step-4-the-lifecycle-function",children:"Step 4: The Lifecycle Function"}),"\n",(0,i.jsx)(n.p,{children:"Lifecycle functions are completely optional but useful for managing resources. They run when the agent starts and stops."}),"\n",(0,i.jsx)(n.p,{children:"The lifecycle file is not automatically created, so you need to create it manually:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"touch src/my_hello_agent/lifecycle.py\n"})}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:'# src/my_hello_agent/lifecycle.py\n"""\nLifecycle functions for the Hello World agent.\n"""\n\nfrom typing import Any, Dict\nfrom pydantic import BaseModel, Field\nfrom solace_ai_connector.common.log import log\n\n\nclass HelloAgentInitConfig(BaseModel):\n """\n Configuration model for the Hello Agent initialization.\n """\n startup_message: str = Field(description="Message to log on startup")\n log_level: str = Field(default="INFO", description="Logging level for the agent")\n\n\ndef initialize_hello_agent(host_component: Any, init_config: HelloAgentInitConfig):\n """\n Initializes the Hello World agent.\n \n Args:\n host_component: The agent host component\n init_config: Validated initialization configuration\n """\n log_identifier = f"[{host_component.agent_name}:init]"\n log.info(f"{log_identifier} Starting Hello Agent initialization...")\n \n # Log the startup message from config\n log.info(f"{log_identifier} {init_config.startup_message}")\n \n # You could initialize shared resources here, such as:\n # - Database connections\n # - API clients\n # - Caches or shared data structures\n \n # Store any shared state in the agent\n host_component.set_agent_specific_state("initialized_at", "2024-01-01T00:00:00Z")\n host_component.set_agent_specific_state("greeting_count", 0)\n \n log.info(f"{log_identifier} Hello Agent initialization completed successfully")\n\n\ndef cleanup_hello_agent(host_component: Any):\n """\n Cleans up resources when the Hello World agent shuts down.\n \n Args:\n host_component: The agent host component\n """\n log_identifier = f"[{host_component.agent_name}:cleanup]"\n log.info(f"{log_identifier} Starting Hello Agent cleanup...")\n \n # Retrieve any shared state\n greeting_count = host_component.get_agent_specific_state("greeting_count", 0)\n log.info(f"{log_identifier} Agent processed {greeting_count} greetings during its lifetime")\n \n # Clean up resources here, such as:\n # - Closing database connections\n # - Shutting down background tasks\n # - Saving final state\n \n log.info(f"{log_identifier} Hello Agent cleanup completed")\n'})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"Key Points:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Pydantic Models"}),": Use Pydantic for configuration validation"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Shared State"}),": Store data that persists across tool calls"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Resource Management"}),": Initialize connections in ",(0,i.jsx)(n.code,{children:"init"}),", clean up in ",(0,i.jsx)(n.code,{children:"cleanup"})]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"advanced-concepts",children:"Advanced Concepts"}),"\n",(0,i.jsx)(n.h3,{id:"working-with-artifacts",children:"Working with Artifacts"}),"\n",(0,i.jsx)(n.p,{children:"You can enhance our hello tool to save greetings to a file using SAM's artifact service:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-python",children:'\nfrom datetime import datetime\nfrom solace_agent_mesh.agent.utils.artifact_helpers import save_artifact_with_metadata\n\nasync def hello_tool_with_artifact(\n name: str,\n save_to_file: bool = False,\n tool_context: Optional[ToolContext] = None,\n tool_config: Optional[Dict[str, Any]] = None\n) -> Dict[str, Any]:\n """\n Greets a user and optionally saves the greeting to a file.\n """\n log_identifier = "[HelloToolWithArtifact]"\n \n # Generate greeting (same as before)\n greeting_prefix = tool_config.get("greeting_prefix", "Hello") if tool_config else "Hello"\n greeting_message = f"{greeting_prefix}, {name}! Welcome to Solace Agent Mesh!"\n \n result = {\n "status": "success",\n "message": greeting_message,\n "greeted_name": name\n }\n \n # Save to artifact if requested\n if save_to_file and tool_context:\n try:\n # Prepare content\n timestamp = datetime.now(timezone.utc)\n filename = f"greeting_{name}_{timestamp}.txt"\n content = f"Greeting: {greeting_message}\\nTimestamp: {timestamp}\\n"\n \n # Save artifact\n artifact_service = tool_context._invocation_context.artifact_service\n await save_artifact_with_metadata(\n artifact_service=artifact_service,\n app_name=tool_context._invocation_context.app_name,\n user_id=tool_context._invocation_context.user_id,\n session_id=tool_context._invocation_context.session.id,\n filename=filename,\n content_bytes=content.encode(\'utf-8\'),\n mime_type="application/json",\n metadata_dict={\n "description": "Greeting message",\n "source": "Greeting Agent",\n },\n timestamp=timestamp\n )\n \n result["artifact_saved"] = filename\n log.info(f"{log_identifier} Saved greeting to artifact: {filename}")\n \n except Exception as e:\n log.error(f"{log_identifier} Failed to save artifact: {e}")\n result["artifact_error"] = str(e)\n \n return result\n'})}),"\n",(0,i.jsx)(n.h3,{id:"using-multiple-tool-configurations",children:"Using Multiple Tool Configurations"}),"\n",(0,i.jsx)(n.p,{children:"You can configure the same tool function multiple times with different settings:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-yaml",children:'tools:\n # Formal greeting\n - tool_type: python\n component_module: "my_hello_agent.tools"\n function_name: "hello_tool"\n tool_name: "formal_greeting"\n tool_config:\n greeting_prefix: "Good day"\n \n # Casual greeting\n - tool_type: python\n component_module: "my_hello_agent.tools"\n function_name: "hello_tool"\n tool_name: "casual_greeting"\n tool_config:\n greeting_prefix: "Hey there"\n \n # Enthusiastic greeting\n - tool_type: python\n component_module: "my_hello_agent.tools"\n function_name: "hello_tool"\n tool_name: "enthusiastic_greeting"\n tool_config:\n greeting_prefix: "Hello and welcome"\n'})}),"\n",(0,i.jsx)(n.p,{children:"This gives your agent multiple greeting styles to choose from based on the context."}),"\n",(0,i.jsx)(n.h2,{id:"running-your-agent",children:"Running Your Agent"}),"\n",(0,i.jsx)(n.p,{children:"To run a plugin agent, you first need to package and install it as a plugin."}),"\n",(0,i.jsxs)(n.admonition,{title:"Quick Debug",type:"tip",children:[(0,i.jsxs)(n.p,{children:["For debugging or isolated development testing, you can run your agent from the ",(0,i.jsx)(n.code,{children:"src"})," directory directly using the SAM CLI."]}),(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"cd src\nsam run ../config.yaml\n"})}),(0,i.jsx)(n.p,{children:"Changing to the src directory allows the module path to be set correctly so that SAM can find your functions without your having to install them in your python environment as a plugin package."})]}),"\n",(0,i.jsxs)(n.p,{children:["To properly instantiate your plugin agent, first build the plugin.\nThe following command will produce a python wheel file under ",(0,i.jsx)(n.code,{children:"dist"})," directory:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"sam plugin build\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Check into ",(0,i.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/getting-started/quick-start#create-a-project",children:"your SAM project directory"}),", and add the plugin wheel with a given name:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"sam plugin add my-first-weather-agent --plugin PATH/TO/weather-agent/dist/weather-agent.whl\n"})}),"\n",(0,i.jsx)(n.admonition,{type:"note",children:(0,i.jsxs)(n.p,{children:["Using the ",(0,i.jsx)(n.code,{children:"sam plugin add"})," command installs your plugin as a python dependency into your python environment.\nThis also means changing the source code without reinstalling the plugin will not reflect the changes."]})}),"\n",(0,i.jsx)(n.p,{children:"Now, you can run the complete SAM application along with your newly added agent:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"sam run\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Alternatively, only run the newly added agent using ",(0,i.jsx)(n.code,{children:"sam run configs/agents/my-first-weather-agent.yaml"})]}),"\n",(0,i.jsx)(n.h2,{id:"architecture-overview",children:"Architecture Overview"}),"\n",(0,i.jsx)(n.p,{children:"Here is how all the pieces fit together:"}),"\n",(0,i.jsx)(n.mermaid,{value:"graph TD\n subgraph Agent Configuration\n direction LR\n A[config.yaml] --\x3e|Defines| B(Agent Properties);\n A --\x3e|Lists & Configures| C(Tools);\n end\n\n subgraph Agent Host\n direction TB\n D[SAM Host] --\x3e|Loads| A;\n D --\x3e|Instantiates| E[Agent];\n E --\x3e|Initializes with| F[Lifecycle Functions];\n end\n\n subgraph Tool Implementation\n direction LR\n G[Python Module tools.py] --\x3e|Contains| H[Tool Functions];\n end\n\n subgraph Execution Flow\n direction TB\n I[User Request] --\x3e J[LLM Orchestrator];\n J --\x3e|Selects Tool| K{ADKToolWrapper};\n K --\x3e|Calls| H;\n H --\x3e|Accesses| L[ToolContext];\n H --\x3e|Uses| M[tool_config];\n H --\x3e|Returns Result| J;\n end\n\n C --\x3e|Wrapped by| K;\n\n style A fill:#b60000,stroke:#faa,stroke-width:2px\n style H fill:#b60000,stroke:#faa,stroke-width:2px\n style F fill:#007000,stroke:#faa,stroke-width:2px"}),"\n",(0,i.jsx)(n.h2,{id:"best-practices",children:"Best Practices"}),"\n",(0,i.jsx)(n.h3,{id:"tool-design",children:"Tool Design"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Single Responsibility"}),": Each tool should do one thing well"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Clear Documentation"}),": Write detailed docstrings for your tools"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Error Handling"}),": Always return structured error responses"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Logging"}),": Use consistent logging for debugging and monitoring"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"configuration",children:"Configuration"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Environment Variables"}),": Use environment variables for sensitive data"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Validation"}),": Use Pydantic models for configuration validation"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Documentation"}),": Comment your configuration files thoroughly"]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"testing",children:"Testing"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Unit Tests"}),": Test your tool functions independently"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Integration Tests"}),": Test your agent with real SAM infrastructure"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:"Mock Dependencies"}),": Mock external services for reliable testing"]}),"\n"]})]})}function g(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>l,x:()=>r});var o=t(6540);const i={},s=o.createContext(i);function l(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:l(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]);
|