solace-agent-mesh 1.4.5__py3-none-any.whl → 1.4.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of solace-agent-mesh might be problematic. Click here for more details.

Files changed (101) hide show
  1. solace_agent_mesh/agent/adk/runner.py +24 -8
  2. solace_agent_mesh/agent/sac/component.py +35 -21
  3. solace_agent_mesh/assets/docs/404.html +3 -3
  4. solace_agent_mesh/assets/docs/assets/js/{04989206.b9dfe831.js → 04989206.a248f00c.js} +1 -1
  5. solace_agent_mesh/assets/docs/assets/js/166ab619.bdddc63a.js +1 -0
  6. solace_agent_mesh/assets/docs/assets/js/{1c6e87d2.43771adc.js → 1c6e87d2.e056b7e0.js} +1 -1
  7. solace_agent_mesh/assets/docs/assets/js/483cef9a.4736f2d8.js +1 -0
  8. solace_agent_mesh/assets/docs/assets/js/{4c2787c2.fc6804f2.js → 4c2787c2.c1290a40.js} +1 -1
  9. solace_agent_mesh/assets/docs/assets/js/{5b4258a4.dff11eca.js → 5b4258a4.fdfd2325.js} +1 -1
  10. solace_agent_mesh/assets/docs/assets/js/{75384d09.abdf9cf9.js → 75384d09.1e7d7cb7.js} +1 -1
  11. solace_agent_mesh/assets/docs/assets/js/85387663.be2bc838.js +1 -0
  12. solace_agent_mesh/assets/docs/assets/js/945fb41e.16e00776.js +1 -0
  13. solace_agent_mesh/assets/docs/assets/js/a12a4955.25fbed32.js +1 -0
  14. solace_agent_mesh/assets/docs/assets/js/a3a92b25.6def8980.js +1 -0
  15. solace_agent_mesh/assets/docs/assets/js/ae0e903d.5fe5203f.js +1 -0
  16. solace_agent_mesh/assets/docs/assets/js/bac0be12.bf0181cf.js +1 -0
  17. solace_agent_mesh/assets/docs/assets/js/beecea0d.ce915979.js +1 -0
  18. solace_agent_mesh/assets/docs/assets/js/cee5d587.47904f5e.js +1 -0
  19. solace_agent_mesh/assets/docs/assets/js/f284c35a.525933db.js +1 -0
  20. solace_agent_mesh/assets/docs/assets/js/f897a61a.126663fe.js +1 -0
  21. solace_agent_mesh/assets/docs/assets/js/{fbfa3e75.aca209c9.js → fbfa3e75.e144b16c.js} +1 -1
  22. solace_agent_mesh/assets/docs/assets/js/main.11f9f9f3.js +2 -0
  23. solace_agent_mesh/assets/docs/assets/js/runtime~main.5922bcf0.js +1 -0
  24. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/installation/index.html +5 -4
  25. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/rbac-setup-guilde/index.html +201 -0
  26. solace_agent_mesh/assets/docs/docs/documentation/Enterprise/single-sign-on/index.html +4 -4
  27. solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-gateway-upgrade-to-0.3.0/index.html +3 -3
  28. solace_agent_mesh/assets/docs/docs/documentation/Migrations/A2A Upgrade To 0.3.0/a2a-technical-migration-map/index.html +3 -3
  29. solace_agent_mesh/assets/docs/docs/documentation/concepts/agents/index.html +3 -3
  30. solace_agent_mesh/assets/docs/docs/documentation/concepts/architecture/index.html +6 -6
  31. solace_agent_mesh/assets/docs/docs/documentation/concepts/cli/index.html +3 -3
  32. solace_agent_mesh/assets/docs/docs/documentation/concepts/gateways/index.html +4 -4
  33. solace_agent_mesh/assets/docs/docs/documentation/concepts/orchestrator/index.html +3 -3
  34. solace_agent_mesh/assets/docs/docs/documentation/concepts/plugins/index.html +3 -3
  35. solace_agent_mesh/assets/docs/docs/documentation/deployment/debugging/index.html +4 -4
  36. solace_agent_mesh/assets/docs/docs/documentation/deployment/deploy/index.html +4 -4
  37. solace_agent_mesh/assets/docs/docs/documentation/deployment/observability/index.html +5 -5
  38. solace_agent_mesh/assets/docs/docs/documentation/getting-started/component-overview/index.html +6 -6
  39. solace_agent_mesh/assets/docs/docs/documentation/getting-started/configurations/index.html +4 -4
  40. solace_agent_mesh/assets/docs/docs/documentation/getting-started/installation/index.html +3 -3
  41. solace_agent_mesh/assets/docs/docs/documentation/getting-started/introduction/index.html +5 -5
  42. solace_agent_mesh/assets/docs/docs/documentation/getting-started/quick-start/index.html +5 -5
  43. solace_agent_mesh/assets/docs/docs/documentation/tutorials/bedrock-agents/index.html +3 -3
  44. solace_agent_mesh/assets/docs/docs/documentation/tutorials/custom-agent/index.html +3 -3
  45. solace_agent_mesh/assets/docs/docs/documentation/tutorials/event-mesh-gateway/index.html +6 -6
  46. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mcp-integration/index.html +3 -3
  47. solace_agent_mesh/assets/docs/docs/documentation/tutorials/mongodb-integration/index.html +3 -3
  48. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rag-integration/index.html +4 -4
  49. solace_agent_mesh/assets/docs/docs/documentation/tutorials/rest-gateway/index.html +4 -4
  50. solace_agent_mesh/assets/docs/docs/documentation/tutorials/slack-integration/index.html +3 -3
  51. solace_agent_mesh/assets/docs/docs/documentation/tutorials/sql-database/index.html +3 -3
  52. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/artifact-management/index.html +3 -3
  53. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/audio-tools/index.html +3 -3
  54. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/data-analysis-tools/index.html +3 -3
  55. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/embeds/index.html +3 -3
  56. solace_agent_mesh/assets/docs/docs/documentation/user-guide/builtin-tools/index.html +3 -3
  57. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-agents/index.html +3 -3
  58. solace_agent_mesh/assets/docs/docs/documentation/user-guide/create-gateways/index.html +3 -3
  59. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-python-tools/index.html +3 -3
  60. solace_agent_mesh/assets/docs/docs/documentation/user-guide/creating-service-providers/index.html +3 -3
  61. solace_agent_mesh/assets/docs/docs/documentation/user-guide/solace-ai-connector/index.html +5 -5
  62. solace_agent_mesh/assets/docs/docs/documentation/user-guide/structure/index.html +6 -6
  63. solace_agent_mesh/assets/docs/lunr-index-1759151175744.json +1 -0
  64. solace_agent_mesh/assets/docs/lunr-index.json +1 -1
  65. solace_agent_mesh/assets/docs/search-doc-1759151175744.json +1 -0
  66. solace_agent_mesh/assets/docs/search-doc.json +1 -1
  67. solace_agent_mesh/assets/docs/sitemap.xml +1 -1
  68. solace_agent_mesh/cli/__init__.py +1 -1
  69. solace_agent_mesh/client/webui/frontend/static/assets/main-BKIoiLSu.js +339 -0
  70. solace_agent_mesh/client/webui/frontend/static/assets/main-ChRwcV89.css +1 -0
  71. solace_agent_mesh/client/webui/frontend/static/index.html +2 -2
  72. solace_agent_mesh/gateway/http_sse/alembic/versions/20250916_f6e7d8c9b0a1_convert_timestamps_to_epoch_and_align_columns.py +112 -42
  73. solace_agent_mesh/gateway/http_sse/app.py +0 -28
  74. solace_agent_mesh/gateway/http_sse/component.py +29 -15
  75. solace_agent_mesh/gateway/http_sse/main.py +29 -13
  76. solace_agent_mesh/gateway/http_sse/routers/sessions.py +39 -1
  77. solace_agent_mesh/gateway/http_sse/routers/tasks.py +30 -40
  78. solace_agent_mesh/gateway/http_sse/services/session_service.py +18 -2
  79. {solace_agent_mesh-1.4.5.dist-info → solace_agent_mesh-1.4.7.dist-info}/METADATA +1 -1
  80. {solace_agent_mesh-1.4.5.dist-info → solace_agent_mesh-1.4.7.dist-info}/RECORD +84 -82
  81. solace_agent_mesh/assets/docs/assets/js/166ab619.e8f3a7c7.js +0 -1
  82. solace_agent_mesh/assets/docs/assets/js/483cef9a.8d318c2f.js +0 -1
  83. solace_agent_mesh/assets/docs/assets/js/85387663.6bf41934.js +0 -1
  84. solace_agent_mesh/assets/docs/assets/js/945fb41e.abf2be91.js +0 -1
  85. solace_agent_mesh/assets/docs/assets/js/a3a92b25.1d029b81.js +0 -1
  86. solace_agent_mesh/assets/docs/assets/js/ae0e903d.7c73bc4f.js +0 -1
  87. solace_agent_mesh/assets/docs/assets/js/bac0be12.27ee2c26.js +0 -1
  88. solace_agent_mesh/assets/docs/assets/js/beecea0d.8bbd852c.js +0 -1
  89. solace_agent_mesh/assets/docs/assets/js/cee5d587.f1e1ca86.js +0 -1
  90. solace_agent_mesh/assets/docs/assets/js/f284c35a.2b2f5048.js +0 -1
  91. solace_agent_mesh/assets/docs/assets/js/f897a61a.bc634a3e.js +0 -1
  92. solace_agent_mesh/assets/docs/assets/js/main.2b4fe82a.js +0 -2
  93. solace_agent_mesh/assets/docs/assets/js/runtime~main.c0805958.js +0 -1
  94. solace_agent_mesh/assets/docs/lunr-index-1758644347760.json +0 -1
  95. solace_agent_mesh/assets/docs/search-doc-1758644347760.json +0 -1
  96. solace_agent_mesh/client/webui/frontend/static/assets/main-8xbvgfVK.css +0 -1
  97. solace_agent_mesh/client/webui/frontend/static/assets/main-B67MsY-v.js +0 -339
  98. /solace_agent_mesh/assets/docs/assets/js/{main.2b4fe82a.js.LICENSE.txt → main.11f9f9f3.js.LICENSE.txt} +0 -0
  99. {solace_agent_mesh-1.4.5.dist-info → solace_agent_mesh-1.4.7.dist-info}/WHEEL +0 -0
  100. {solace_agent_mesh-1.4.5.dist-info → solace_agent_mesh-1.4.7.dist-info}/entry_points.txt +0 -0
  101. {solace_agent_mesh-1.4.5.dist-info → solace_agent_mesh-1.4.7.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[3514],{4373:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>h,frontMatter:()=>i,metadata:()=>o,toc:()=>c});const o=JSON.parse('{"id":"documentation/getting-started/quick-start","title":"Quick Start","description":"To get started with Solace Agent Mesh, you can either use the preset configuration from the Docker image or create your own complete project.","source":"@site/docs/documentation/getting-started/quick-start.md","sourceDirName":"documentation/getting-started","slug":"/documentation/getting-started/quick-start","permalink":"/solace-agent-mesh/docs/documentation/getting-started/quick-start","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/getting-started/quick-start.md","tags":[],"version":"current","sidebarPosition":30,"frontMatter":{"title":"Quick Start","sidebar_position":30},"sidebar":"docSidebar","previous":{"title":"Installation","permalink":"/solace-agent-mesh/docs/documentation/getting-started/installation"},"next":{"title":"Component Overview","permalink":"/solace-agent-mesh/docs/documentation/getting-started/component-overview"}}');var s=t(4848),a=t(8453);const i={title:"Quick Start",sidebar_position:30},r="Quick Start",l={},c=[{value:"Use Preset Agents",id:"use-preset-agents",level:2},{value:"Prerequisites",id:"prerequisites",level:3},{value:"Run Preset Agents",id:"run-preset-agents",level:3},{value:"Create a Project",id:"create-a-project",level:2},{value:"Prerequisites",id:"prerequisites-1",level:3},{value:"Running the Project",id:"running-the-project",level:2},{value:"Interacting with Solace Agent Mesh",id:"interacting-with-solace-agent-mesh",level:2},{value:"Try a Tutorial",id:"try-a-tutorial",level:2},{value:"Next Steps",id:"next-steps",level:2}];function d(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",header:"header",li:"li",ol:"ol",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,a.R)(),...e.components},{Details:t}=n;return t||function(e,n){throw new Error("Expected "+(n?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}("Details",!0),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"quick-start",children:"Quick Start"})}),"\n",(0,s.jsx)(n.p,{children:"To get started with Solace Agent Mesh, you can either use the preset configuration from the Docker image or create your own complete project."}),"\n",(0,s.jsx)(n.h2,{id:"use-preset-agents",children:"Use Preset Agents"}),"\n",(0,s.jsx)(n.h3,{id:"prerequisites",children:"Prerequisites"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsx)(n.li,{children:"You must have Docker (or Podman) installed."}),"\n",(0,s.jsx)(n.li,{children:"You must have an available AI provider and API key. For best results, use a state-of-the-art AI model like Anthropic Claude Sonnet 4, Google Gemini 2.5 pro, or OpenAI GPT-5."}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"run-preset-agents",children:"Run Preset Agents"}),"\n",(0,s.jsx)(n.p,{children:"You can run pre-made Solace Agent Mesh agents to quickly get started with Solace Agent Mesh without needing to set up a project from scratch."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"docker run --rm -it -p 8000:8000 --platform linux/amd64 --env-file <your-env-file-path> solace/solace-agent-mesh:latest\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Provide the required environment variables. You can also pass them as command-line arguments using the ",(0,s.jsx)(n.code,{children:"-e"})," flag."]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Alternatively, you can combine your project with the preset app or only run specific agents from it."}),"\n",(0,s.jsxs)(n.p,{children:["You can find a list of all available preset apps in the ",(0,s.jsx)(n.a,{href:"https://github.com/SolaceLabs/solace-agent-mesh/tree/main/preset/agents",children:"Solace Agent Mesh GitHub repository"}),"."]}),"\n",(0,s.jsxs)(n.admonition,{type:"tip",children:[(0,s.jsx)(n.p,{children:"To run your custom agent without creating a new project, you can use the Docker image as follows:"}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"docker run --rm -it --platform linux/amd64 -p 8000:8000 -v $(pwd):/app \\\n -e LLM_SERVICE_ENDPOINT=<your-llm-endpoint> \\\n -e LLM_SERVICE_API_KEY=<your-llm-api-key> \\\n -e LLM_SERVICE_PLANNING_MODEL_NAME=<your-llm-planning-model-name> \\\n -e LLM_SERVICE_GENERAL_MODEL_NAME=<your-llm-general-model-name> \\\n solace/solace-agent-mesh:latest run /preset/agents/basic /app/my-agent\n"})}),(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["You can update ",(0,s.jsx)(n.code,{children:"/app/my-agent"})," with the path to your agent YAML config. Note: You will still need either a ",(0,s.jsx)(n.code,{children:"shared_config.yaml"})," file or to hard code the settings in your agent configuration."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"/preset/agents/basic"})," only runs the required agents, you can use ",(0,s.jsx)(n.code,{children:"/preset/agents"})," to load all agents."]}),"\n",(0,s.jsx)(n.li,{children:"This example command only has the minimum required environment variables."}),"\n"]})]}),"\n",(0,s.jsx)(n.h2,{id:"create-a-project",children:"Create a Project"}),"\n",(0,s.jsx)(n.admonition,{title:"Plugins",type:"note",children:(0,s.jsxs)(n.p,{children:["Looking to get started with plugins? For more information, see the ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/plugins",children:"Plugins"}),"."]})}),"\n",(0,s.jsx)(n.h3,{id:"prerequisites-1",children:"Prerequisites"}),"\n",(0,s.jsxs)(n.ol,{children:["\n",(0,s.jsxs)(n.li,{children:["You must have installed the Solace Agent Mesh CLI. If not, see the ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/getting-started/installation",children:"Installation"})," page."]}),"\n",(0,s.jsxs)(n.li,{children:["You must have activated the virtual environment you created following the ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/getting-started/installation",children:"Installation"})," page. For containerized deployment such as Docker, ignore this prerequisite."]}),"\n",(0,s.jsx)(n.li,{children:"You must have an available AI provider and API key. For best results, use a state-of-the-art AI model like Anthropic Claude Sonnet 4, Google Gemini 2.5 pro, or OpenAI GPT-5."}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Create a directory for your project and navigate to it."}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"mkdir my-agent-mesh\ncd my-agent-mesh\n"})}),"\n",(0,s.jsxs)(n.p,{children:["Run the ",(0,s.jsx)(n.code,{children:"init"})," command and follow the prompts to create your project."]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"solace-agent-mesh init\n"})}),"\n",(0,s.jsxs)(n.p,{children:["During initialization, you can choose to configure your project directly in the terminal or through a web-based interface launched at ",(0,s.jsx)(n.code,{children:"http://127.0.0.1:5002"}),". You are asked for your preference once you run ",(0,s.jsx)(n.code,{children:"solace-agent-mesh init"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:["Alternatively, you can use the ",(0,s.jsx)(n.code,{children:"--gui"})," flag to skip the prompt and directly open the web-based configuration interface:"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"solace-agent-mesh init --gui\n"})}),"\n",(0,s.jsxs)(t,{children:[(0,s.jsx)("summary",{children:"Docker Alternative for Initialization"}),(0,s.jsx)(n.p,{children:"You can also initialize your Solace Agent Mesh project using the official Docker image. This is helpful if you want to avoid local Python/Solace Agent Mesh CLI installation or prefer a containerized workflow from the start."}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:'docker run --rm -it -v "$(pwd):/app" --platform linux/amd64 -p 5002:5002 solace/solace-agent-mesh:latest init --gui\n'})}),(0,s.jsx)(n.p,{children:"If the OS architecture on your host is not linux/amd64, you must add --platform linux/amd64 when you run the container."}),(0,s.jsxs)(n.p,{children:["For Broker Setup, do not select the Broker Type ",(0,s.jsx)(n.code,{children:"New local Solace broker container"}),". This option is incompatible with Docker deployments because the ",(0,s.jsx)(n.code,{children:"Download and Run Container"})," action attempts to download a container image from within the already running container, which causes the operation to fail."]})]}),"\n",(0,s.jsxs)(n.admonition,{title:"Non-Interactive Mode",type:"tip",children:[(0,s.jsxs)(n.p,{children:["You can run the ",(0,s.jsx)(n.code,{children:"init"})," command in a non-interactive mode by passing ",(0,s.jsx)(n.code,{children:"--skip"})," and all the other configurations as arguments."]}),(0,s.jsxs)(n.p,{children:["To get a list of all the available options, run ",(0,s.jsx)(n.code,{children:"solace-agent-mesh init --help"})]})]}),"\n",(0,s.jsxs)(n.admonition,{title:"Model name format",type:"info",children:[(0,s.jsxs)(t,{children:[(0,s.jsx)("summary",{children:"Browser-based Configurations"}),(0,s.jsx)(n.p,{children:"You need to select the LLM Provider first and supported models are populated under LLM Model Name."}),(0,s.jsxs)(n.p,{children:["If you're using a non-openai model but hosting it on a custom API that follows the OpenAI standards, like Ollama or LiteLLM, you can select the ",(0,s.jsx)(n.code,{children:"OpenAI Compatible Provider"}),"."]})]}),(0,s.jsxs)(t,{children:[(0,s.jsx)("summary",{children:"CLI-based Configurations"}),(0,s.jsxs)(n.p,{children:["You need to explicitly specify the model in the format provider/name. For example, ",(0,s.jsx)(n.code,{children:"openai/gpt-4o"}),"."]}),(0,s.jsxs)(n.p,{children:["If you're using a non-openai model but hosting it on a custom API that follows the OpenAI standards, like Ollama or LiteLLM, you can still use the ",(0,s.jsx)(n.code,{children:"openai"})," provider."]}),(0,s.jsxs)(n.p,{children:["For example: ",(0,s.jsx)(n.code,{children:"openai/llama-3.3-7b"})]})]}),(0,s.jsx)(n.p,{children:"This is the case for all the model names, such as LLMs, image generators, embedding models, etc."})]}),"\n",(0,s.jsx)(n.h2,{id:"running-the-project",children:"Running the Project"}),"\n",(0,s.jsxs)(n.p,{children:["To run the project, you can use the ",(0,s.jsx)(n.code,{children:"run"})," command to execute all the components in a single, multi-threaded application. It's possible to split the components into separate processes. See the ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/deployment/deploy",children:"deployment"})," page for more information."]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:"solace-agent-mesh run\n"})}),"\n",(0,s.jsx)(n.admonition,{type:"tip",children:(0,s.jsxs)(n.p,{children:["Environment variables are loaded from your configuration file (typically a ",(0,s.jsx)(n.code,{children:".env"})," file at the project root) by default. To use system environment variables instead, use the ",(0,s.jsx)(n.code,{children:"-u"})," or ",(0,s.jsx)(n.code,{children:"--system-env"})," option."]})}),"\n",(0,s.jsxs)(n.p,{children:["To learn more about the other CLI commands, see the ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/cli",children:"CLI documentation"}),"."]}),"\n",(0,s.jsxs)(t,{children:[(0,s.jsx)("summary",{children:"Docker Alternative for Running the Project"}),(0,s.jsx)(n.p,{children:"You can also run your Solace Agent Mesh project using the official Docker image. This is helpful if you want to avoid local Python/Solace Agent Mesh CLI installation or prefer a containerized workflow from the start."}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:'docker run --rm -it -v "$(pwd):/app" --platform linux/amd64 -p 8000:8000 solace/solace-agent-mesh:latest run\n'})}),(0,s.jsxs)(n.p,{children:["If your host system architecture is not ",(0,s.jsx)(n.code,{children:"linux/amd64"}),", add the ",(0,s.jsx)(n.code,{children:"--platform linux/amd64"})," flag when you run the container."]}),(0,s.jsxs)(n.admonition,{title:"Required Configurations",type:"info",children:[(0,s.jsx)(n.p,{children:"For deployments that use the official Docker image, ensure the following:"}),(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Do not use a local Solace broker container."}),"\n",(0,s.jsxs)(n.li,{children:["Set the environment variables ",(0,s.jsx)(n.code,{children:'FASTAPI_HOST="0.0.0.0"'})," in your ",(0,s.jsx)(n.code,{children:".env"})," file or system environment variables. This is necessary to expose the FastAPI server to the host machine."]}),"\n"]})]}),(0,s.jsxs)(n.admonition,{type:"warning",children:[(0,s.jsx)(n.p,{children:"If you are using third-party Python packages or Solace Agent Mesh plugins, you need to build a custom Docker image off the official image and install the required packages there, and then run that custom image instead."}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-Dockerfile",children:'FROM solace/solace-agent-mesh:latest\n# Option 1: Install a specific package\nRUN python3.11 -m pip install --no-cache-dir <your-package>\n# Option 2: use a requirements.txt file\nCOPY requirements.txt .\nRUN python3.11 -m pip install --no-cache-dir -r requirements.txt\n\nENTRYPOINT ["solace-agent-mesh"]\n'})}),(0,s.jsx)(n.p,{children:"Then build and run your custom image:"}),(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-sh",children:'docker build --platform linux/amd64 -t my-custom-image .\ndocker run --rm -it -v "$(pwd):/app" --platform linux/amd64 -p 8000:8000 my-custom-image run\n'})})]})]}),"\n",(0,s.jsx)(n.h2,{id:"interacting-with-solace-agent-mesh",children:"Interacting with Solace Agent Mesh"}),"\n",(0,s.jsx)(n.p,{children:"You can use different gateway interfaces to communicate with the system such as REST, Web UI, Slack, MS Teams, and so on. To keep it simple for this demo, we use the browser UI."}),"\n",(0,s.jsxs)(n.p,{children:["To access the browser UI, navigate to ",(0,s.jsx)(n.code,{children:"http://localhost:8000"})," in your web browser. If you specified a different port during the init step, use that port instead. For Docker deployments with custom port mappings (using the ",(0,s.jsx)(n.code,{children:"-p"})," flag), use the host port specified in your port mapping configuration."]}),"\n",(0,s.jsxs)(n.p,{children:["Try some commands like ",(0,s.jsx)(n.code,{children:"Suggest some good outdoor activities in London given the season and current weather conditions."}),"."]}),"\n",(0,s.jsx)(n.h2,{id:"try-a-tutorial",children:"Try a Tutorial"}),"\n",(0,s.jsxs)(n.p,{children:["Try adding a new agent to the system by following the tutorial on adding an ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/tutorials/sql-database",children:"SQL database agent"}),". This tutorial guides you through the process of adding the SQL agent plugin and adding some sample data to the database."]}),"\n",(0,s.jsx)(n.h2,{id:"next-steps",children:"Next Steps"}),"\n",(0,s.jsxs)(n.p,{children:["Solace Agent Mesh uses two main types of components, ",(0,s.jsx)(n.strong,{children:"agents"})," and ",(0,s.jsx)(n.strong,{children:"gateways"}),". The system comes with a built-in orchestrator agent and a web user interface gateway (which you enabled during the ",(0,s.jsx)(n.code,{children:"init"})," step)."]}),"\n",(0,s.jsxs)(n.p,{children:["You can learn more about ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/gateways",children:"gateways"}),". Alternatively, you can learn about ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/plugins#use-a-plugin",children:"using plugins"})," or ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/user-guide/create-gateways",children:"creating your own new gateways"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:["Also, you can learn more about ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/concepts/agents",children:"agents"})," or about ",(0,s.jsx)(n.a,{href:"/solace-agent-mesh/docs/documentation/user-guide/create-agents",children:"creating your own agents"}),"."]})]})}function h(e={}){const{wrapper:n}={...(0,a.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>r});var o=t(6540);const s={},a=o.createContext(s);function i(e){const n=o.useContext(a);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(s):e.components||s:i(e.components),o.createElement(a.Provider,{value:n},e.children)}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[2424],{2998:(e,s,i)=>{i.r(s),i.d(s,{assets:()=>a,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>n,toc:()=>c});const n=JSON.parse('{"id":"documentation/deployment/observability","title":"Observability","description":"Solace Agent Mesh provides a comprehensive set of tools for real-time system monitoring and key insights to help you understand system states, request flows, and key insights for debugging and optimizing your system.","source":"@site/docs/documentation/deployment/observability.md","sourceDirName":"documentation/deployment","slug":"/documentation/deployment/observability","permalink":"/solace-agent-mesh/docs/documentation/deployment/observability","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/deployment/observability.md","tags":[],"version":"current","sidebarPosition":20,"frontMatter":{"title":"Observability","sidebar_position":20},"sidebar":"docSidebar","previous":{"title":"Deployment","permalink":"/solace-agent-mesh/docs/documentation/deployment/deploy"},"next":{"title":"Debugging","permalink":"/solace-agent-mesh/docs/documentation/deployment/debugging"}}');var t=i(4848),o=i(8453);const r={title:"Observability",sidebar_position:20},l="Observability",a={},c=[{value:"Workflow Viewer",id:"workflow-viewer",level:2},{value:"Agents View",id:"agents-view",level:2},{value:"Broker Observability",id:"broker-observability",level:2},{value:"Stimulus Logs",id:"stimulus-logs",level:2}];function d(e){const s={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.header,{children:(0,t.jsx)(s.h1,{id:"observability",children:"Observability"})}),"\n",(0,t.jsx)(s.p,{children:"Solace Agent Mesh provides a comprehensive set of tools for real-time system monitoring and key insights to help you understand system states, request flows, and key insights for debugging and optimizing your system."}),"\n",(0,t.jsx)(s.h2,{id:"workflow-viewer",children:"Workflow Viewer"}),"\n",(0,t.jsx)(s.p,{children:"The Solace Agent Mesh web UI includes a built-in workflow viewer, which provides an interactive web-based UI for each user query and its corresponding response. This visualizer allows you to:"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Track the complete life cycle of a stimulus (request) as it moves through the system."}),"\n",(0,t.jsx)(s.li,{children:"Visualize the flow of requests/responses among agents, the user gateway and LLM."}),"\n",(0,t.jsx)(s.li,{children:"Monitor all participating agents and their activity in real-time."}),"\n"]}),"\n",(0,t.jsxs)(s.p,{children:["To launch the workflow viewer for a specific query/response pair, click the ",(0,t.jsx)(s.strong,{children:"View Agent Workflow"})," icon located at the bottom left of the final response. The complete workflow chart appears in the side panel on the right."]}),"\n",(0,t.jsx)(s.h2,{id:"agents-view",children:"Agents View"}),"\n",(0,t.jsxs)(s.p,{children:["The Solace Agent Mesh web UI also includes an ",(0,t.jsx)(s.strong,{children:"Agents"})," view, which provides a comprehensive overview of all registered agents in the system in real-time. This view allows you to:"]}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"See all agents currently registered in the system."}),"\n",(0,t.jsx)(s.li,{children:"View agents description, capabilities, and skills"}),"\n",(0,t.jsx)(s.li,{children:"View agent hierarchical topology and relationships."}),"\n"]}),"\n",(0,t.jsxs)(s.p,{children:["To access the Agents view, open the web interface in your browser and switch to the ",(0,t.jsx)(s.strong,{children:"Agents"})," tab."]}),"\n",(0,t.jsx)(s.h2,{id:"broker-observability",children:"Broker Observability"}),"\n",(0,t.jsx)(s.p,{children:"Solace Agent Mesh relies on a PubSub+ event broker for all its communication. Various tools are available to monitor the event broker\u2019s activity and message flows:"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:"PubSub+ Broker Manager"})," \u2013 A web-based interface where you can use the ",(0,t.jsx)(s.em,{children:"Try Me!"})," tab to send and receive messages interactively."]}),"\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:(0,t.jsx)(s.a,{href:"https://marketplace.visualstudio.com/items?itemName=solace-tools.solace-try-me-vsc-extension",children:"Solace Try Me VSCode Extension"})})," \u2013 A convenient way to test message flows within Visual Studio Code."]}),"\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:(0,t.jsx)(s.a,{href:"https://github.com/SolaceLabs/solace-tryme-cli",children:"Solace Try Me (STM) CLI Tool"})})," \u2013 A command-line tool for sending and receiving messages."]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:"To observe all message flows within the event broker, subscribe to the following topic:"}),"\n",(0,t.jsx)(s.pre,{children:(0,t.jsx)(s.code,{children:"[NAME_SPACES]a2a/v1/>\n"})}),"\n",(0,t.jsxs)(s.p,{children:["Replace ",(0,t.jsx)(s.code,{children:"[NAME_SPACES]"})," with the namespace you are using. If none, omit the ",(0,t.jsx)(s.code,{children:"[NAME_SPACES]"})," part."]}),"\n",(0,t.jsxs)(s.admonition,{type:"tip",children:[(0,t.jsx)(s.p,{children:"Agents periodically send registration messages, which may clutter your UI if you're using the STM VSCode extension. To filter out these messages, you can add the following topic to the ignore list:"}),(0,t.jsx)(s.pre,{children:(0,t.jsx)(s.code,{children:"[NAME_SPACES]/a2a/v1/discovery/agentcards\n"})})]}),"\n",(0,t.jsx)(s.h2,{id:"stimulus-logs",children:"Stimulus Logs"}),"\n",(0,t.jsxs)(s.p,{children:["Solace Agent Mesh includes a default monitor that records each request (stimulus) life cycle. These logs are stored as ",(0,t.jsx)(s.code,{children:".stim"})," files."]}),"\n",(0,t.jsxs)(s.p,{children:["Each ",(0,t.jsx)(s.code,{children:".stim"})," file captures a complete trace of a stimulus, including:"]}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Every component it passed through."}),"\n",(0,t.jsx)(s.li,{children:"Timing and sequencing details."}),"\n",(0,t.jsx)(s.li,{children:"Additional contextual metadata."}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:"These logs provide a valuable data source for further visualization, troubleshooting, and performance analysis."}),"\n",(0,t.jsxs)(s.p,{children:["By default, ",(0,t.jsx)(s.code,{children:".stim"})," files are written to the ",(0,t.jsx)(s.code,{children:"/tmp/solace-agent-mesh/"})," directory."]})]})}function h(e={}){const{wrapper:s}={...(0,o.R)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},8453:(e,s,i)=>{i.d(s,{R:()=>r,x:()=>l});var n=i(6540);const t={},o=n.createContext(t);function r(e){const s=n.useContext(o);return n.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function l(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:r(e.components),n.createElement(o.Provider,{value:s},e.children)}}}]);
1
+ "use strict";(self.webpackChunksolace_agenitc_mesh_docs=self.webpackChunksolace_agenitc_mesh_docs||[]).push([[2424],{2998:(e,s,i)=>{i.r(s),i.d(s,{assets:()=>a,contentTitle:()=>l,default:()=>h,frontMatter:()=>r,metadata:()=>n,toc:()=>c});const n=JSON.parse('{"id":"documentation/deployment/observability","title":"Observability","description":"Solace Agent Mesh provides a comprehensive set of tools for real-time system monitoring and key insights to help you understand system states, request flows, and key insights for debugging and optimizing your system.","source":"@site/docs/documentation/deployment/observability.md","sourceDirName":"documentation/deployment","slug":"/documentation/deployment/observability","permalink":"/solace-agent-mesh/docs/documentation/deployment/observability","draft":false,"unlisted":false,"editUrl":"https://github.com/SolaceLabs/solace-agent-mesh/edit/main/docs/docs/documentation/deployment/observability.md","tags":[],"version":"current","sidebarPosition":20,"frontMatter":{"title":"Observability","sidebar_position":20},"sidebar":"docSidebar","previous":{"title":"Deployment","permalink":"/solace-agent-mesh/docs/documentation/deployment/deploy"},"next":{"title":"Debugging","permalink":"/solace-agent-mesh/docs/documentation/deployment/debugging"}}');var t=i(4848),o=i(8453);const r={title:"Observability",sidebar_position:20},l="Observability",a={},c=[{value:"Workflow Viewer",id:"workflow-viewer",level:2},{value:"Agents View",id:"agents-view",level:2},{value:"Broker Observability",id:"broker-observability",level:2},{value:"Stimulus Logs",id:"stimulus-logs",level:2}];function d(e){const s={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",header:"header",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,o.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(s.header,{children:(0,t.jsx)(s.h1,{id:"observability",children:"Observability"})}),"\n",(0,t.jsx)(s.p,{children:"Solace Agent Mesh provides a comprehensive set of tools for real-time system monitoring and key insights to help you understand system states, request flows, and key insights for debugging and optimizing your system."}),"\n",(0,t.jsx)(s.h2,{id:"workflow-viewer",children:"Workflow Viewer"}),"\n",(0,t.jsx)(s.p,{children:"The Solace Agent Mesh web UI includes a built-in workflow viewer, which provides an interactive web-based UI for each user query and its corresponding response. This visualizer allows you to:"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Track the complete life cycle of a stimulus (request) as it moves through the system."}),"\n",(0,t.jsx)(s.li,{children:"Visualize the flow of requests/responses among agents, the user gateway and LLM."}),"\n",(0,t.jsx)(s.li,{children:"Monitor all participating agents and their activity in real-time."}),"\n"]}),"\n",(0,t.jsxs)(s.p,{children:["To launch the workflow viewer for a specific query/response pair, click the ",(0,t.jsx)(s.strong,{children:"View Agent Workflow"})," icon located at the bottom left of the final response. The complete workflow chart appears in the side panel on the right."]}),"\n",(0,t.jsx)(s.h2,{id:"agents-view",children:"Agents View"}),"\n",(0,t.jsxs)(s.p,{children:["The Solace Agent Mesh web UI also includes an ",(0,t.jsx)(s.strong,{children:"Agents"})," view, which provides a comprehensive overview of all registered agents in the system in real-time. This view allows you to:"]}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"See all agents currently registered in the system."}),"\n",(0,t.jsx)(s.li,{children:"View agents description, capabilities, and skills"}),"\n",(0,t.jsx)(s.li,{children:"View agent hierarchical topology and relationships."}),"\n"]}),"\n",(0,t.jsxs)(s.p,{children:["To access the Agents view, open the web interface in your browser and switch to the ",(0,t.jsx)(s.strong,{children:"Agents"})," tab."]}),"\n",(0,t.jsx)(s.h2,{id:"broker-observability",children:"Broker Observability"}),"\n",(0,t.jsx)(s.p,{children:"Solace Agent Mesh relies on a Solace event broker for all its communication. Various tools are available to monitor the event broker\u2019s activity and message flows:"}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:"Solace Broker Manager"})," \u2013 A web-based interface where you can use the ",(0,t.jsx)(s.em,{children:"Try Me!"})," tab to send and receive messages interactively."]}),"\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:(0,t.jsx)(s.a,{href:"https://marketplace.visualstudio.com/items?itemName=solace-tools.solace-try-me-vsc-extension",children:"Solace Try Me VSCode Extension"})})," \u2013 A convenient way to test message flows within Visual Studio Code."]}),"\n",(0,t.jsxs)(s.li,{children:[(0,t.jsx)(s.strong,{children:(0,t.jsx)(s.a,{href:"https://github.com/SolaceLabs/solace-tryme-cli",children:"Solace Try Me (STM) CLI Tool"})})," \u2013 A command-line tool for sending and receiving messages."]}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:"To observe all message flows within the event broker, subscribe to the following topic:"}),"\n",(0,t.jsx)(s.pre,{children:(0,t.jsx)(s.code,{children:"[NAME_SPACES]a2a/v1/>\n"})}),"\n",(0,t.jsxs)(s.p,{children:["Replace ",(0,t.jsx)(s.code,{children:"[NAME_SPACES]"})," with the namespace you are using. If none, omit the ",(0,t.jsx)(s.code,{children:"[NAME_SPACES]"})," part."]}),"\n",(0,t.jsxs)(s.admonition,{type:"tip",children:[(0,t.jsx)(s.p,{children:"Agents periodically send registration messages, which may clutter your UI if you're using the STM VSCode extension. To filter out these messages, you can add the following topic to the ignore list:"}),(0,t.jsx)(s.pre,{children:(0,t.jsx)(s.code,{children:"[NAME_SPACES]/a2a/v1/discovery/agentcards\n"})})]}),"\n",(0,t.jsx)(s.h2,{id:"stimulus-logs",children:"Stimulus Logs"}),"\n",(0,t.jsxs)(s.p,{children:["Solace Agent Mesh includes a default monitor that records each request (stimulus) life cycle. These logs are stored as ",(0,t.jsx)(s.code,{children:".stim"})," files."]}),"\n",(0,t.jsxs)(s.p,{children:["Each ",(0,t.jsx)(s.code,{children:".stim"})," file captures a complete trace of a stimulus, including:"]}),"\n",(0,t.jsxs)(s.ul,{children:["\n",(0,t.jsx)(s.li,{children:"Every component it passed through."}),"\n",(0,t.jsx)(s.li,{children:"Timing and sequencing details."}),"\n",(0,t.jsx)(s.li,{children:"Additional contextual metadata."}),"\n"]}),"\n",(0,t.jsx)(s.p,{children:"These logs provide a valuable data source for further visualization, troubleshooting, and performance analysis."}),"\n",(0,t.jsxs)(s.p,{children:["By default, ",(0,t.jsx)(s.code,{children:".stim"})," files are written to the ",(0,t.jsx)(s.code,{children:"/tmp/solace-agent-mesh/"})," directory."]})]})}function h(e={}){const{wrapper:s}={...(0,o.R)(),...e.components};return s?(0,t.jsx)(s,{...e,children:(0,t.jsx)(d,{...e})}):d(e)}},8453:(e,s,i)=>{i.d(s,{R:()=>r,x:()=>l});var n=i(6540);const t={},o=n.createContext(t);function r(e){const s=n.useContext(o);return n.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function l(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:r(e.components),n.createElement(o.Provider,{value:s},e.children)}}}]);