open-swarm 0.1.1744942884__tar.gz → 0.1.1744943015__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/PKG-INFO +1 -1
  2. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/pyproject.toml +1 -1
  3. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/digitalbutlers/blueprint_digitalbutlers.py +1 -1
  4. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/divine_code/blueprint_divine_code.py +1 -1
  5. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/django_chat/blueprint_django_chat.py +1 -1
  6. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/echocraft/blueprint_echocraft.py +1 -1
  7. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/blueprint_family_ties.py +1 -1
  8. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/mcp_demo/blueprint_mcp_demo.py +30 -1
  9. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/mission_improbable/blueprint_mission_improbable.py +1 -1
  10. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/monkai_magic/blueprint_monkai_magic.py +1 -1
  11. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/nebula_shellz/blueprint_nebula_shellz.py +29 -1
  12. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/omniplex/blueprint_omniplex.py +28 -18
  13. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/rue_code/blueprint_rue_code.py +1 -1
  14. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/suggestion/blueprint_suggestion.py +1 -1
  15. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/unapologetic_press/blueprint_unapologetic_press.py +1 -1
  16. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/blueprint_management.py +3 -3
  17. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/config_management.py +5 -6
  18. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/edit_config.py +8 -6
  19. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/list_blueprints.py +1 -1
  20. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/validate_env.py +3 -3
  21. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/validate_envvars.py +6 -6
  22. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/.gitignore +0 -0
  23. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/LICENSE +0 -0
  24. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/README.md +0 -0
  25. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/__init__.py +0 -0
  26. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/agent/__init__.py +0 -0
  27. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/apps.py +0 -0
  28. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/auth.py +0 -0
  29. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/README.md +0 -0
  30. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/chatbot/blueprint_chatbot.py +0 -0
  31. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/chatbot/templates/chatbot/chatbot.html +0 -0
  32. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/codey/blueprint_codey.py +0 -0
  33. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/divine_code/__init__.py +0 -0
  34. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/divine_code/apps.py +0 -0
  35. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/django_chat/apps.py +0 -0
  36. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/django_chat/templates/django_chat/django_chat_webpage.html +0 -0
  37. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/django_chat/urls.py +0 -0
  38. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/django_chat/views.py +0 -0
  39. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/apps.py +0 -0
  40. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/models.py +0 -0
  41. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/serializers.py +0 -0
  42. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/settings.py +0 -0
  43. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/urls.py +0 -0
  44. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/family_ties/views.py +0 -0
  45. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/flock/__init__.py +0 -0
  46. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/gaggle/blueprint_gaggle.py +0 -0
  47. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/messenger/templates/messenger/messenger.html +0 -0
  48. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/rue_code/__init__.py +0 -0
  49. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/whiskeytango_foxtrot/__init__.py +0 -0
  50. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/whiskeytango_foxtrot/apps.py +0 -0
  51. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/blueprints/whiskeytango_foxtrot/blueprint_whiskeytango_foxtrot.py +0 -0
  52. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/consumers.py +0 -0
  53. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/__init__.py +0 -0
  54. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/__init__.py +0 -0
  55. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/cli_handler.py +0 -0
  56. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/django_utils.py +0 -0
  57. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/interactive_mode.py +0 -0
  58. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/modes/rest_mode.py +0 -0
  59. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/blueprint/runnable_blueprint.py +0 -0
  60. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/__init__.py +0 -0
  61. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/blueprint_runner.py +0 -0
  62. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/cli_args.py +0 -0
  63. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/commands/__init__.py +0 -0
  64. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/interactive_shell.py +0 -0
  65. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/main.py +0 -0
  66. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/selection.py +0 -0
  67. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/utils/discover_commands.py +0 -0
  68. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/utils/env_setup.py +0 -0
  69. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/cli/utils.py +0 -0
  70. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/config/__init__.py +0 -0
  71. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/config/config_loader.py +0 -0
  72. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/extensions/launchers/__init__.py +0 -0
  73. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/llm/chat_completion.py +0 -0
  74. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/management/__init__.py +0 -0
  75. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/management/commands/__init__.py +0 -0
  76. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/management/commands/runserver.py +0 -0
  77. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/messages.py +0 -0
  78. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/middleware.py +0 -0
  79. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/migrations/0010_initial_chat_models.py +0 -0
  80. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/migrations/__init__.py +0 -0
  81. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/models.py +0 -0
  82. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/permissions.py +0 -0
  83. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/repl/__init__.py +0 -0
  84. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/repl/repl.py +0 -0
  85. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/serializers.py +0 -0
  86. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/settings.py +0 -0
  87. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/fonts/fontawesome-webfont.ttf +0 -0
  88. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/fonts/fontawesome-webfont.woff +0 -0
  89. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/fonts/fontawesome-webfont.woff2 +0 -0
  90. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/markedjs/marked.min.js +0 -0
  91. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/adjustments-horizontal.svg +0 -0
  92. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/alert-triangle.svg +0 -0
  93. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/archive.svg +0 -0
  94. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/artboard.svg +0 -0
  95. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/automatic-gearbox.svg +0 -0
  96. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/box-multiple.svg +0 -0
  97. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/carambola.svg +0 -0
  98. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/copy.svg +0 -0
  99. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/download.svg +0 -0
  100. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/edit.svg +0 -0
  101. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/filled/carambola.svg +0 -0
  102. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/filled/paint.svg +0 -0
  103. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/headset.svg +0 -0
  104. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/layout-sidebar-left-collapse.svg +0 -0
  105. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/layout-sidebar-left-expand.svg +0 -0
  106. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/layout-sidebar-right-collapse.svg +0 -0
  107. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/layout-sidebar-right-expand.svg +0 -0
  108. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/message-chatbot.svg +0 -0
  109. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/message-star.svg +0 -0
  110. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/message-x.svg +0 -0
  111. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/message.svg +0 -0
  112. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/paperclip.svg +0 -0
  113. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/playlist-add.svg +0 -0
  114. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/robot.svg +0 -0
  115. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/search.svg +0 -0
  116. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/settings.svg +0 -0
  117. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/thumb-down.svg +0 -0
  118. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/contrib/tabler-icons/thumb-up.svg +0 -0
  119. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/css/dropdown.css +0 -0
  120. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/htmx/htmx.min.js +0 -0
  121. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/js/dropdown.js +0 -0
  122. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/base.css +0 -0
  123. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/chat-history.css +0 -0
  124. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/chat.css +0 -0
  125. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/chatbot.css +0 -0
  126. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/chatgpt.css +0 -0
  127. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/colors/corporate.css +0 -0
  128. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/colors/pastel.css +0 -0
  129. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/colors/tropical.css +0 -0
  130. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/general.css +0 -0
  131. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/layout.css +0 -0
  132. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/layouts/messenger-layout.css +0 -0
  133. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/layouts/minimalist-layout.css +0 -0
  134. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/layouts/mobile-layout.css +0 -0
  135. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/messages.css +0 -0
  136. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/messenger.css +0 -0
  137. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/settings.css +0 -0
  138. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/simple.css +0 -0
  139. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/slack.css +0 -0
  140. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/style.css +0 -0
  141. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/theme.css +0 -0
  142. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/css/toast.css +0 -0
  143. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/auth.js +0 -0
  144. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/blueprint.js +0 -0
  145. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/blueprintUtils.js +0 -0
  146. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/chatLogic.js +0 -0
  147. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/debug.js +0 -0
  148. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/events.js +0 -0
  149. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/main.js +0 -0
  150. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/messages.js +0 -0
  151. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/messengerLogic.js +0 -0
  152. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/apiService.js +0 -0
  153. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/blueprintManager.js +0 -0
  154. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/chatHistory.js +0 -0
  155. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/debugLogger.js +0 -0
  156. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/eventHandlers.js +0 -0
  157. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/messageProcessor.js +0 -0
  158. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/state.js +0 -0
  159. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/userInteractions.js +0 -0
  160. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/modules/validation.js +0 -0
  161. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/rendering.js +0 -0
  162. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/settings.js +0 -0
  163. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/sidebar.js +0 -0
  164. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/simpleLogic.js +0 -0
  165. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/slackLogic.js +0 -0
  166. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/splash.js +0 -0
  167. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/theme.js +0 -0
  168. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/toast.js +0 -0
  169. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/ui.js +0 -0
  170. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/js/validation.js +0 -0
  171. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/animated_spinner.svg +0 -0
  172. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/arrow_down.svg +0 -0
  173. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/arrow_left.svg +0 -0
  174. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/arrow_right.svg +0 -0
  175. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/arrow_up.svg +0 -0
  176. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/attach.svg +0 -0
  177. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/avatar.svg +0 -0
  178. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/canvas.svg +0 -0
  179. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/chat_history.svg +0 -0
  180. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/close.svg +0 -0
  181. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/copy.svg +0 -0
  182. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/dark_mode.svg +0 -0
  183. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/edit.svg +0 -0
  184. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/layout.svg +0 -0
  185. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/logo.svg +0 -0
  186. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/logout.svg +0 -0
  187. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/mobile.svg +0 -0
  188. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/new_chat.svg +0 -0
  189. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/not_visible.svg +0 -0
  190. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/plus.svg +0 -0
  191. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/run_code.svg +0 -0
  192. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/save.svg +0 -0
  193. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/search.svg +0 -0
  194. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/settings.svg +0 -0
  195. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/speaker.svg +0 -0
  196. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/stop.svg +0 -0
  197. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/thumbs_down.svg +0 -0
  198. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/thumbs_up.svg +0 -0
  199. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/toggle_off.svg +0 -0
  200. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/toggle_on.svg +0 -0
  201. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/trash.svg +0 -0
  202. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/undo.svg +0 -0
  203. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/visible.svg +0 -0
  204. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/static/rest_mode/svg/voice.svg +0 -0
  205. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/account/login.html +0 -0
  206. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/account/signup.html +0 -0
  207. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/base.html +0 -0
  208. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/chat.html +0 -0
  209. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/index.html +0 -0
  210. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/chat_sidebar.html +0 -0
  211. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/header.html +0 -0
  212. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/main_chat_pane.html +0 -0
  213. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/settings_dialog.html +0 -0
  214. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/splash_screen.html +0 -0
  215. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/components/top_bar.html +0 -0
  216. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/message_ui.html +0 -0
  217. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/rest_mode/slackbot.html +0 -0
  218. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/simple_blueprint_page.html +0 -0
  219. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/websocket_partials/final_system_message.html +0 -0
  220. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/websocket_partials/system_message.html +0 -0
  221. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/templates/websocket_partials/user_message.html +0 -0
  222. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/tool_executor.py +0 -0
  223. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/urls.py +0 -0
  224. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/util.py +0 -0
  225. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/color_utils.py +0 -0
  226. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/context_utils.py +0 -0
  227. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/general_utils.py +0 -0
  228. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/log_utils.py +0 -0
  229. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/logger.py +0 -0
  230. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/logger_setup.py +0 -0
  231. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/message_sequence.py +0 -0
  232. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/message_utils.py +0 -0
  233. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/utils/redact.py +0 -0
  234. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/__init__.py +0 -0
  235. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/api_views.py +0 -0
  236. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/chat_views.py +0 -0
  237. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/core_views.py +0 -0
  238. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/message_views.py +0 -0
  239. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/model_views.py +0 -0
  240. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/utils.py +0 -0
  241. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/views/web_views.py +0 -0
  242. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/src/swarm/wsgi.py +0 -0
  243. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/__init__.py +0 -0
  244. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/api/conftest.py +0 -0
  245. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/api/test_chat_completions_auth_async.py +0 -0
  246. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/api/test_chat_completions_failing_async.py +0 -0
  247. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/api/test_chat_completions_validation_async.py +0 -0
  248. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_chatbot.py +0 -0
  249. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_digitalbutlers.py +0 -0
  250. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_dilbot_universe.py +0 -0
  251. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_divine_code.py +0 -0
  252. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_echocraft.py +0 -0
  253. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_family_ties.py +0 -0
  254. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_gaggle.py +0 -0
  255. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_gotchaman.py +0 -0
  256. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_mcp_demo.py +0 -0
  257. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_mission_improbable.py +0 -0
  258. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_monkai_magic.py +0 -0
  259. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_nebula_shellz.py +0 -0
  260. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_omniplex.py +0 -0
  261. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_suggestion.py +0 -0
  262. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_unapologetic_press.py +0 -0
  263. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/blueprints/test_whiskeytangofoxtrot.py +0 -0
  264. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/cli/test_cli_config.py +0 -0
  265. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/cli/test_launchers.py +0 -0
  266. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/cli/test_list_blueprints.py +0 -0
  267. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/conftest.py +0 -0
  268. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/extensions/launchers/test_swarm_api_launcher.py +0 -0
  269. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/swarm_config.json +0 -0
  270. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_chucks_angels.sh +0 -0
  271. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_digitalbutlers.sh +0 -0
  272. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_dilbot_universe.sh +0 -0
  273. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_divine_code.sh +0 -0
  274. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_django_chat.sh +0 -0
  275. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_echocraft.sh +0 -0
  276. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_family_ties.sh +0 -0
  277. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_flock.sh +0 -0
  278. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_gaggle.sh +0 -0
  279. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_gotchaman.sh +0 -0
  280. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_monkai-magic.sh +0 -0
  281. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_nebula_shellz.sh +0 -0
  282. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_omniplex.sh +0 -0
  283. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_rue-code.sh +0 -0
  284. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_suggestion.sh +0 -0
  285. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_unapologetic_press.sh +0 -0
  286. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_university.sh +0 -0
  287. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/system/test_whiskeytango_foxtrot.sh +0 -0
  288. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_blueprint_loading.py +0 -0
  289. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_cli_mode_selection.py +0 -0
  290. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_core_filter_duplicate_system_messages.py +0 -0
  291. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_core_filter_messages.py +0 -0
  292. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_core_truncate_message_history.py +0 -0
  293. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_core_update_null_content.py +0 -0
  294. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_dummy.py +0 -0
  295. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/test_truncate_message_history.py +0 -0
  296. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/unit/blueprints/rue_code/test_rue_code_tools.py +0 -0
  297. {open_swarm-0.1.1744942884 → open_swarm-0.1.1744943015}/tests/unit/test_blueprint_base_config.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: open-swarm
3
- Version: 0.1.1744942884
3
+ Version: 0.1.1744943015
4
4
  Summary: Open Swarm: Orchestrating AI Agent Swarms with Django
5
5
  Project-URL: Homepage, https://github.com/yourusername/open-swarm
6
6
  Project-URL: Documentation, https://github.com/yourusername/open-swarm/blob/main/README.md
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "open-swarm"
7
- version = "0.1.1744942884"
7
+ version = "0.1.1744943015"
8
8
  description = "Open Swarm: Orchestrating AI Agent Swarms with Django"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -16,7 +16,7 @@ try:
16
16
  from agents.models.interface import Model
17
17
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
18
18
  from openai import AsyncOpenAI
19
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
19
+ from swarm.core.blueprint_base import BlueprintBase
20
20
  except ImportError as e:
21
21
  print(f"ERROR: Import failed in DigitalButlersBlueprint: {e}. Check 'openai-agents' install and project structure.")
22
22
  print(f"Attempted import from directory: {os.path.dirname(__file__)}")
@@ -16,7 +16,7 @@ try:
16
16
  from agents.models.interface import Model
17
17
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
18
18
  from openai import AsyncOpenAI
19
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
19
+ from swarm.core.blueprint_base import BlueprintBase
20
20
  except ImportError as e:
21
21
  print(f"ERROR: Import failed in DivineOpsBlueprint: {e}. Check 'openai-agents' install and project structure.")
22
22
  print(f"sys.path: {sys.path}")
@@ -44,7 +44,7 @@ from django.contrib.auth.decorators import login_required
44
44
  from django.views.decorators.csrf import csrf_exempt
45
45
  from django.contrib.auth.models import User
46
46
  from swarm.models import ChatConversation, ChatMessage
47
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase as Blueprint
47
+ from swarm.core.blueprint_base import BlueprintBase as Blueprint
48
48
  from swarm.utils.logger_setup import setup_logger
49
49
 
50
50
  logger = setup_logger(__name__)
@@ -6,7 +6,7 @@ from typing import List, Dict, Any, AsyncGenerator
6
6
  import uuid # Import uuid to generate IDs
7
7
  import time # Import time for timestamp
8
8
 
9
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
9
+ from swarm.core.blueprint_base import BlueprintBase
10
10
 
11
11
  logger = logging.getLogger(__name__)
12
12
 
@@ -16,7 +16,7 @@ try:
16
16
  from agents.models.interface import Model
17
17
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
18
18
  from openai import AsyncOpenAI
19
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
19
+ from swarm.core.blueprint_base import BlueprintBase
20
20
  except ImportError as e:
21
21
  print(f"ERROR: Import failed in FamilyTiesBlueprint: {e}. Check dependencies.")
22
22
  print(f"sys.path: {sys.path}")
@@ -14,7 +14,7 @@ try:
14
14
  from agents.models.interface import Model
15
15
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
16
16
  from openai import AsyncOpenAI
17
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
17
+ from swarm.core.blueprint_base import BlueprintBase
18
18
  except ImportError as e:
19
19
  print(f"ERROR: Import failed in MCPDemoBlueprint: {e}. Check dependencies.")
20
20
  print(f"sys.path: {sys.path}")
@@ -128,6 +128,35 @@ class MCPDemoBlueprint(BlueprintBase):
128
128
  logger.debug("Sage agent created.")
129
129
  return sage_agent
130
130
 
131
+ async def run(self, messages: List[dict], **kwargs):
132
+ """Main execution entry point for the MCP Demo blueprint."""
133
+ logger.info("MCPDemoBlueprint run method called.")
134
+ instruction = messages[-1].get("content", "") if messages else ""
135
+ try:
136
+ mcp_servers = kwargs.get("mcp_servers", [])
137
+ starting_agent = self.create_starting_agent(mcp_servers=mcp_servers)
138
+ from agents import Runner
139
+ if not starting_agent.model:
140
+ yield {"messages": [{"role": "assistant", "content": f"Error: No model instance available for MCPDemo agent. Check your OPENAI_API_KEY, or LITELLM_MODEL/LITELLM_BASE_URL config."}]}
141
+ return
142
+ if not starting_agent.tools:
143
+ yield {"messages": [{"role": "assistant", "content": f"Warning: No tools registered for MCPDemo agent. Only direct LLM output is possible."}]}
144
+ required_mcps = self.metadata.get('required_mcp_servers', [])
145
+ missing_mcps = [m for m in required_mcps if m not in [s.name for s in mcp_servers]]
146
+ if missing_mcps:
147
+ yield {"messages": [{"role": "assistant", "content": f"Warning: Missing required MCP servers: {', '.join(missing_mcps)}. Some features may not work."}]}
148
+ from rich.console import Console
149
+ console = Console()
150
+ with console.status("Generating...", spinner="dots") as status:
151
+ async for chunk in Runner.run(starting_agent, instruction):
152
+ content = chunk.get("content")
153
+ if content and ("function call" in content or "args" in content):
154
+ continue
155
+ yield chunk
156
+ logger.info("MCPDemoBlueprint run method finished.")
157
+ except Exception as e:
158
+ yield {"messages": [{"role": "assistant", "content": f"Error: {e}"}]}
159
+
131
160
  # Standard Python entry point
132
161
  if __name__ == "__main__":
133
162
  MCPDemoBlueprint.main()
@@ -17,7 +17,7 @@ try:
17
17
  from agents.models.interface import Model
18
18
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
19
19
  from openai import AsyncOpenAI
20
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
20
+ from swarm.core.blueprint_base import BlueprintBase
21
21
  except ImportError as e:
22
22
  print(f"ERROR: Import failed in MissionImprobableBlueprint: {e}. Check dependencies.")
23
23
  print(f"sys.path: {sys.path}")
@@ -29,7 +29,7 @@ try:
29
29
  from agents.models.interface import Model
30
30
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
31
31
  from openai import AsyncOpenAI
32
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
32
+ from swarm.core.blueprint_base import BlueprintBase
33
33
  except ImportError as e:
34
34
  print(f"ERROR: Import failed in MonkaiMagicBlueprint: {e}. Check dependencies.")
35
35
  print(f"sys.path: {sys.path}")
@@ -13,7 +13,7 @@ try:
13
13
  from agents.models.interface import Model
14
14
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
15
15
  from openai import AsyncOpenAI
16
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
16
+ from swarm.core.blueprint_base import BlueprintBase
17
17
  from rich.panel import Panel # Import Panel for splash screen
18
18
  except ImportError as e:
19
19
  print(f"ERROR: Import failed in nebula_shellz: {e}. Ensure 'openai-agents' install and structure.")
@@ -170,5 +170,33 @@ Initializing NebulaShellzzar Crew...
170
170
  logger.debug("NebulaShellzzar agent team created. Morpheus is the starting agent.") # Changed to DEBUG
171
171
  return morpheus
172
172
 
173
+ async def run(self, messages: List[dict], **kwargs):
174
+ logger.info("NebuchaShellzzarBlueprint run method called.")
175
+ instruction = messages[-1].get("content", "") if messages else ""
176
+ try:
177
+ mcp_servers = kwargs.get("mcp_servers", [])
178
+ starting_agent = self.create_starting_agent(mcp_servers=mcp_servers)
179
+ from agents import Runner
180
+ if not starting_agent.model:
181
+ yield {"messages": [{"role": "assistant", "content": f"Error: No model instance available for NebuchaShellzzar agent. Check your OPENAI_API_KEY, or LITELLM_MODEL/LITELLM_BASE_URL config."}]}
182
+ return
183
+ if not starting_agent.tools:
184
+ yield {"messages": [{"role": "assistant", "content": f"Warning: No tools registered for NebuchaShellzzar agent. Only direct LLM output is possible."}]}
185
+ required_mcps = self.metadata.get('required_mcp_servers', [])
186
+ missing_mcps = [m for m in required_mcps if m not in [s.name for s in mcp_servers]]
187
+ if missing_mcps:
188
+ yield {"messages": [{"role": "assistant", "content": f"Warning: Missing required MCP servers: {', '.join(missing_mcps)}. Some features may not work."}]}
189
+ from rich.console import Console
190
+ console = Console()
191
+ with console.status("Generating...", spinner="dots") as status:
192
+ async for chunk in Runner.run(starting_agent, instruction):
193
+ content = chunk.get("content")
194
+ if content and ("function call" in content or "args" in content):
195
+ continue
196
+ yield chunk
197
+ logger.info("NebuchaShellzzarBlueprint run method finished.")
198
+ except Exception as e:
199
+ yield {"messages": [{"role": "assistant", "content": f"Error: {e}"}]}
200
+
173
201
  if __name__ == "__main__":
174
202
  NebuchaShellzzarBlueprint.main()
@@ -14,7 +14,7 @@ try:
14
14
  from agents.models.interface import Model
15
15
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
16
16
  from openai import AsyncOpenAI
17
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
17
+ from swarm.core.blueprint_base import BlueprintBase
18
18
  except ImportError as e:
19
19
  print(f"ERROR: Import failed in OmniplexBlueprint: {e}. Check dependencies.")
20
20
  print(f"sys.path: {sys.path}")
@@ -216,26 +216,36 @@ class OmniplexBlueprint(BlueprintBase):
216
216
  logger.info(f"Omniplex Coordinator created with tools for: {[t.name for t in team_tools]}")
217
217
  return coordinator_agent
218
218
 
219
- async def run(self, messages: List[Dict[str, Any]], **kwargs) -> Any:
220
- """Main execution entry point for the Omniplex blueprint."""
221
- logger.info("OmniplexBlueprint run method called.")
219
+ async def run(self, messages: list, **kwargs):
220
+ import logging
221
+ if not hasattr(self, "logger"):
222
+ self.logger = logging.getLogger(__name__)
223
+ self.logger.info("OmniplexBlueprint run method called.")
222
224
  instruction = messages[-1].get("content", "") if messages else ""
223
- async for chunk in self._run_non_interactive(instruction, **kwargs):
224
- yield chunk
225
- logger.info("OmniplexBlueprint run method finished.")
226
-
227
- async def _run_non_interactive(self, instruction: str, **kwargs) -> Any:
228
- logger.info(f"Running OmniplexBlueprint non-interactively with instruction: '{instruction[:100]}...'")
229
- mcp_servers = kwargs.get("mcp_servers", [])
230
- agent = self.create_starting_agent(mcp_servers=mcp_servers)
231
- from agents import Runner
232
- model_name = os.getenv("LITELLM_MODEL") or os.getenv("DEFAULT_LLM") or "gpt-3.5-turbo"
233
225
  try:
234
- for chunk in Runner.run(agent, instruction):
235
- yield chunk
226
+ mcp_servers = kwargs.get("mcp_servers", [])
227
+ agent = self.create_starting_agent(mcp_servers=mcp_servers)
228
+ from agents import Runner
229
+ if not agent.model:
230
+ yield {"messages": [{"role": "assistant", "content": f"Error: No model instance available for Omniplex agent. Check your OPENAI_API_KEY, or LITELLM_MODEL/LITELLM_BASE_URL config."}]}
231
+ return
232
+ if not agent.tools:
233
+ yield {"messages": [{"role": "assistant", "content": f"Warning: No tools registered for Omniplex agent. Only direct LLM output is possible."}]}
234
+ required_mcps = self.metadata.get('required_mcp_servers', [])
235
+ missing_mcps = [m for m in required_mcps if m not in [s.name for s in mcp_servers]]
236
+ if missing_mcps:
237
+ yield {"messages": [{"role": "assistant", "content": f"Warning: Missing required MCP servers: {', '.join(missing_mcps)}. Some features may not work."}]}
238
+ from rich.console import Console
239
+ console = Console()
240
+ with console.status("Generating...", spinner="dots") as status:
241
+ async for chunk in Runner.run(agent, instruction):
242
+ content = chunk.get("content")
243
+ if content and ("function call" in content or "args" in content):
244
+ continue
245
+ yield chunk
246
+ self.logger.info("OmniplexBlueprint run method finished.")
236
247
  except Exception as e:
237
- logger.error(f"Error during non-interactive run: {e}", exc_info=True)
238
- yield {"messages": [{"role": "assistant", "content": f"An error occurred: {e}"}]}
248
+ yield {"messages": [{"role": "assistant", "content": f"Error: {e}"}]}
239
249
 
240
250
  # Standard Python entry point
241
251
  if __name__ == "__main__":
@@ -13,7 +13,7 @@ logger = logging.getLogger(__name__)
13
13
 
14
14
  # Attempt to import BlueprintBase, handle potential ImportError during early setup/testing
15
15
  try:
16
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
16
+ from swarm.core.blueprint_base import BlueprintBase
17
17
  except ImportError as e:
18
18
  logger.error(f"Import failed: {e}. Check 'openai-agents' install and project structure.")
19
19
  # *** REMOVED sys.exit(1) ***
@@ -14,7 +14,7 @@ try:
14
14
  from agents.models.interface import Model
15
15
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
16
16
  from openai import AsyncOpenAI
17
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
17
+ from swarm.core.blueprint_base import BlueprintBase
18
18
  except ImportError as e:
19
19
  print(f"ERROR: Failed to import 'agents' or 'BlueprintBase'. Is 'openai-agents' installed and src in PYTHONPATH? Details: {e}")
20
20
  sys.exit(1)
@@ -18,7 +18,7 @@ try:
18
18
  from agents.models.interface import Model
19
19
  from agents.models.openai_chatcompletions import OpenAIChatCompletionsModel
20
20
  from openai import AsyncOpenAI
21
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
21
+ from swarm.core.blueprint_base import BlueprintBase
22
22
  except ImportError as e:
23
23
  print(f"ERROR: Import failed in UnapologeticPressBlueprint: {e}. Check dependencies.")
24
24
  print(f"sys.path: {sys.path}")
@@ -1,7 +1,7 @@
1
1
  # Handles blueprint discovery and validation for the CLI
2
2
 
3
- from swarm.extensions.blueprint.discovery import discover_blueprints
4
- from swarm.extensions.config.config_loader import load_server_config
3
+ from swarm.core.blueprint_discovery import discover_blueprints
4
+ from swarm.core.config_loader import load_server_config
5
5
 
6
6
  def list_blueprints():
7
7
  """List available blueprints and their metadata."""
@@ -16,7 +16,7 @@ def list_blueprints():
16
16
  cat > src/swarm/extensions/cli/commands/config_management.py << 'EOF'
17
17
  # Handles configuration management workflows (e.g., LLM, MCP servers)
18
18
 
19
- from swarm.extensions.config.config_loader import (
19
+ from swarm.core.config_loader import (
20
20
  load_server_config,
21
21
  save_server_config,
22
22
  )
@@ -1,15 +1,14 @@
1
1
  # Handles configuration management workflows (e.g., LLM, MCP servers)
2
2
 
3
- from swarm.extensions.config.config_loader import (
4
- load_server_config,
5
- save_server_config,
6
- )
3
+ from swarm.core import config_loader
4
+ from swarm.core import config_manager
5
+ from swarm.core import server_config
7
6
 
8
7
  def add_llm(model_name, api_key):
9
8
  """Add a new LLM configuration."""
10
- config = load_server_config()
9
+ config = config_loader.load_server_config()
11
10
  if "llms" not in config:
12
11
  config["llms"] = {}
13
12
  config["llms"][model_name] = {"api_key": api_key}
14
- save_server_config(config)
13
+ config_manager.save_server_config(config)
15
14
  print(f"Added LLM '{model_name}' to configuration.")
@@ -1,8 +1,10 @@
1
1
  import argparse
2
2
  import json
3
- from swarm.extensions.config.config_loader import (
4
- load_server_config,
5
- save_server_config,
3
+ from swarm.core import (
4
+ config_loader,
5
+ config_manager,
6
+ server_config,
7
+ setup_wizard,
6
8
  )
7
9
  from pathlib import Path
8
10
 
@@ -60,7 +62,7 @@ def main():
60
62
  args = parser.parse_args()
61
63
 
62
64
  try:
63
- config = load_server_config(str(CONFIG_PATH))
65
+ config = config_loader.load_server_config(str(CONFIG_PATH))
64
66
  except FileNotFoundError as e:
65
67
  print(f"Error: {e}")
66
68
  return
@@ -69,9 +71,9 @@ def main():
69
71
  list_config(config)
70
72
  elif args.interactive:
71
73
  edit_config_interactive(config)
72
- save_server_config(str(CONFIG_PATH), config)
74
+ config_loader.save_server_config(str(CONFIG_PATH), config)
73
75
  elif args.field and args.value:
74
76
  edit_config_field(config, args.field, args.value)
75
- save_server_config(str(CONFIG_PATH), config)
77
+ config_loader.save_server_config(str(CONFIG_PATH), config)
76
78
  else:
77
79
  parser.print_help()
@@ -4,7 +4,7 @@ Description: Lists all blueprints available in the system.
4
4
  """
5
5
 
6
6
  from pathlib import Path
7
- from swarm.extensions.blueprint.blueprint_discovery import discover_blueprints
7
+ from swarm.core.blueprint_discovery import discover_blueprints
8
8
 
9
9
  # Metadata for dynamic registration
10
10
  description = "Lists all blueprints available in the system."
@@ -1,7 +1,7 @@
1
1
  import os
2
2
  import argparse
3
- from swarm.extensions.config.config_loader import load_server_config
4
- from swarm.extensions.blueprint.blueprint_base import BlueprintBase
3
+ from swarm.core import config_loader, config_manager, server_config
4
+ from swarm.core.blueprint_base import BlueprintBase
5
5
 
6
6
  CONFIG_PATH = "swarm_config.json"
7
7
 
@@ -43,7 +43,7 @@ def main():
43
43
  args = parser.parse_args()
44
44
 
45
45
  try:
46
- config = load_server_config(CONFIG_PATH)
46
+ config = server_config.load_server_config(CONFIG_PATH)
47
47
  except FileNotFoundError as e:
48
48
  print(f"Error: {e}")
49
49
  return
@@ -1,5 +1,5 @@
1
- from swarm.extensions.blueprint.blueprint_discovery import discover_blueprints
2
- from swarm.extensions.config.config_loader import load_env_config, validate_env_vars
1
+ from swarm.core.blueprint_discovery import discover_blueprints
2
+ from swarm.core import config_loader, config_manager, server_config
3
3
  import argparse
4
4
 
5
5
  def validate_envvars(blueprint_name=None):
@@ -19,16 +19,16 @@ def validate_envvars(blueprint_name=None):
19
19
  print(f"Blueprint '{blueprint_name}' not found.")
20
20
  return
21
21
  required_vars = blueprint.get("env_vars", [])
22
- env_vars = load_env_config()
23
- validation = validate_env_vars(env_vars, required_vars)
22
+ env_vars = config_loader.load_env_config()
23
+ validation = config_manager.validate_env_vars(env_vars, required_vars)
24
24
  print(f"Validation for '{blueprint_name}': {validation}")
25
25
  else:
26
26
  # Global validation
27
- env_vars = load_env_config()
27
+ env_vars = config_loader.load_env_config()
28
28
  print("Global Environment Validation:")
29
29
  for blueprint_name, blueprint_data in blueprints.items():
30
30
  required_vars = blueprint_data.get("env_vars", [])
31
- validation = validate_env_vars(env_vars, required_vars)
31
+ validation = config_manager.validate_env_vars(env_vars, required_vars)
32
32
  print(f"Validation for '{blueprint_name}': {validation}")
33
33
 
34
34
  def main():