massgen 0.0.3__py3-none-any.whl → 0.1.0__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 massgen might be problematic. Click here for more details.

Files changed (268) hide show
  1. massgen/__init__.py +142 -8
  2. massgen/adapters/__init__.py +29 -0
  3. massgen/adapters/ag2_adapter.py +483 -0
  4. massgen/adapters/base.py +183 -0
  5. massgen/adapters/tests/__init__.py +0 -0
  6. massgen/adapters/tests/test_ag2_adapter.py +439 -0
  7. massgen/adapters/tests/test_agent_adapter.py +128 -0
  8. massgen/adapters/utils/__init__.py +2 -0
  9. massgen/adapters/utils/ag2_utils.py +236 -0
  10. massgen/adapters/utils/tests/__init__.py +0 -0
  11. massgen/adapters/utils/tests/test_ag2_utils.py +138 -0
  12. massgen/agent_config.py +329 -55
  13. massgen/api_params_handler/__init__.py +10 -0
  14. massgen/api_params_handler/_api_params_handler_base.py +99 -0
  15. massgen/api_params_handler/_chat_completions_api_params_handler.py +176 -0
  16. massgen/api_params_handler/_claude_api_params_handler.py +113 -0
  17. massgen/api_params_handler/_response_api_params_handler.py +130 -0
  18. massgen/backend/__init__.py +39 -4
  19. massgen/backend/azure_openai.py +385 -0
  20. massgen/backend/base.py +341 -69
  21. massgen/backend/base_with_mcp.py +1102 -0
  22. massgen/backend/capabilities.py +386 -0
  23. massgen/backend/chat_completions.py +577 -130
  24. massgen/backend/claude.py +1033 -537
  25. massgen/backend/claude_code.py +1203 -0
  26. massgen/backend/cli_base.py +209 -0
  27. massgen/backend/docs/BACKEND_ARCHITECTURE.md +126 -0
  28. massgen/backend/{CLAUDE_API_RESEARCH.md → docs/CLAUDE_API_RESEARCH.md} +18 -18
  29. massgen/backend/{GEMINI_API_DOCUMENTATION.md → docs/GEMINI_API_DOCUMENTATION.md} +9 -9
  30. massgen/backend/docs/Gemini MCP Integration Analysis.md +1050 -0
  31. massgen/backend/docs/MCP_IMPLEMENTATION_CLAUDE_BACKEND.md +177 -0
  32. massgen/backend/docs/MCP_INTEGRATION_RESPONSE_BACKEND.md +352 -0
  33. massgen/backend/docs/OPENAI_GPT5_MODELS.md +211 -0
  34. massgen/backend/{OPENAI_RESPONSES_API_FORMAT.md → docs/OPENAI_RESPONSE_API_TOOL_CALLS.md} +3 -3
  35. massgen/backend/docs/OPENAI_response_streaming.md +20654 -0
  36. massgen/backend/docs/inference_backend.md +257 -0
  37. massgen/backend/docs/permissions_and_context_files.md +1085 -0
  38. massgen/backend/external.py +126 -0
  39. massgen/backend/gemini.py +1850 -241
  40. massgen/backend/grok.py +40 -156
  41. massgen/backend/inference.py +156 -0
  42. massgen/backend/lmstudio.py +171 -0
  43. massgen/backend/response.py +1095 -322
  44. massgen/chat_agent.py +131 -113
  45. massgen/cli.py +1560 -275
  46. massgen/config_builder.py +2396 -0
  47. massgen/configs/BACKEND_CONFIGURATION.md +458 -0
  48. massgen/configs/README.md +559 -216
  49. massgen/configs/ag2/ag2_case_study.yaml +27 -0
  50. massgen/configs/ag2/ag2_coder.yaml +34 -0
  51. massgen/configs/ag2/ag2_coder_case_study.yaml +36 -0
  52. massgen/configs/ag2/ag2_gemini.yaml +27 -0
  53. massgen/configs/ag2/ag2_groupchat.yaml +108 -0
  54. massgen/configs/ag2/ag2_groupchat_gpt.yaml +118 -0
  55. massgen/configs/ag2/ag2_single_agent.yaml +21 -0
  56. massgen/configs/basic/multi/fast_timeout_example.yaml +37 -0
  57. massgen/configs/basic/multi/gemini_4o_claude.yaml +31 -0
  58. massgen/configs/basic/multi/gemini_gpt5nano_claude.yaml +36 -0
  59. massgen/configs/{gemini_4o_claude.yaml → basic/multi/geminicode_4o_claude.yaml} +3 -3
  60. massgen/configs/basic/multi/geminicode_gpt5nano_claude.yaml +36 -0
  61. massgen/configs/basic/multi/glm_gemini_claude.yaml +25 -0
  62. massgen/configs/basic/multi/gpt4o_audio_generation.yaml +30 -0
  63. massgen/configs/basic/multi/gpt4o_image_generation.yaml +31 -0
  64. massgen/configs/basic/multi/gpt5nano_glm_qwen.yaml +26 -0
  65. massgen/configs/basic/multi/gpt5nano_image_understanding.yaml +26 -0
  66. massgen/configs/{three_agents_default.yaml → basic/multi/three_agents_default.yaml} +8 -4
  67. massgen/configs/basic/multi/three_agents_opensource.yaml +27 -0
  68. massgen/configs/basic/multi/three_agents_vllm.yaml +20 -0
  69. massgen/configs/basic/multi/two_agents_gemini.yaml +19 -0
  70. massgen/configs/{two_agents.yaml → basic/multi/two_agents_gpt5.yaml} +14 -6
  71. massgen/configs/basic/multi/two_agents_opensource_lmstudio.yaml +31 -0
  72. massgen/configs/basic/multi/two_qwen_vllm_sglang.yaml +28 -0
  73. massgen/configs/{single_agent.yaml → basic/single/single_agent.yaml} +1 -1
  74. massgen/configs/{single_flash2.5.yaml → basic/single/single_flash2.5.yaml} +1 -2
  75. massgen/configs/basic/single/single_gemini2.5pro.yaml +16 -0
  76. massgen/configs/basic/single/single_gpt4o_audio_generation.yaml +22 -0
  77. massgen/configs/basic/single/single_gpt4o_image_generation.yaml +22 -0
  78. massgen/configs/basic/single/single_gpt4o_video_generation.yaml +24 -0
  79. massgen/configs/basic/single/single_gpt5nano.yaml +20 -0
  80. massgen/configs/basic/single/single_gpt5nano_file_search.yaml +18 -0
  81. massgen/configs/basic/single/single_gpt5nano_image_understanding.yaml +17 -0
  82. massgen/configs/basic/single/single_gptoss120b.yaml +15 -0
  83. massgen/configs/basic/single/single_openrouter_audio_understanding.yaml +15 -0
  84. massgen/configs/basic/single/single_qwen_video_understanding.yaml +15 -0
  85. massgen/configs/debug/code_execution/command_filtering_blacklist.yaml +29 -0
  86. massgen/configs/debug/code_execution/command_filtering_whitelist.yaml +28 -0
  87. massgen/configs/debug/code_execution/docker_verification.yaml +29 -0
  88. massgen/configs/debug/skip_coordination_test.yaml +27 -0
  89. massgen/configs/debug/test_sdk_migration.yaml +17 -0
  90. massgen/configs/docs/DISCORD_MCP_SETUP.md +208 -0
  91. massgen/configs/docs/TWITTER_MCP_ENESCINAR_SETUP.md +82 -0
  92. massgen/configs/providers/azure/azure_openai_multi.yaml +21 -0
  93. massgen/configs/providers/azure/azure_openai_single.yaml +19 -0
  94. massgen/configs/providers/claude/claude.yaml +14 -0
  95. massgen/configs/providers/gemini/gemini_gpt5nano.yaml +28 -0
  96. massgen/configs/providers/local/lmstudio.yaml +11 -0
  97. massgen/configs/providers/openai/gpt5.yaml +46 -0
  98. massgen/configs/providers/openai/gpt5_nano.yaml +46 -0
  99. massgen/configs/providers/others/grok_single_agent.yaml +19 -0
  100. massgen/configs/providers/others/zai_coding_team.yaml +108 -0
  101. massgen/configs/providers/others/zai_glm45.yaml +12 -0
  102. massgen/configs/{creative_team.yaml → teams/creative/creative_team.yaml} +16 -6
  103. massgen/configs/{travel_planning.yaml → teams/creative/travel_planning.yaml} +16 -6
  104. massgen/configs/{news_analysis.yaml → teams/research/news_analysis.yaml} +16 -6
  105. massgen/configs/{research_team.yaml → teams/research/research_team.yaml} +15 -7
  106. massgen/configs/{technical_analysis.yaml → teams/research/technical_analysis.yaml} +16 -6
  107. massgen/configs/tools/code-execution/basic_command_execution.yaml +25 -0
  108. massgen/configs/tools/code-execution/code_execution_use_case_simple.yaml +41 -0
  109. massgen/configs/tools/code-execution/docker_claude_code.yaml +32 -0
  110. massgen/configs/tools/code-execution/docker_multi_agent.yaml +32 -0
  111. massgen/configs/tools/code-execution/docker_simple.yaml +29 -0
  112. massgen/configs/tools/code-execution/docker_with_resource_limits.yaml +32 -0
  113. massgen/configs/tools/code-execution/multi_agent_playwright_automation.yaml +57 -0
  114. massgen/configs/tools/filesystem/cc_gpt5_gemini_filesystem.yaml +34 -0
  115. massgen/configs/tools/filesystem/claude_code_context_sharing.yaml +68 -0
  116. massgen/configs/tools/filesystem/claude_code_flash2.5.yaml +43 -0
  117. massgen/configs/tools/filesystem/claude_code_flash2.5_gptoss.yaml +49 -0
  118. massgen/configs/tools/filesystem/claude_code_gpt5nano.yaml +31 -0
  119. massgen/configs/tools/filesystem/claude_code_single.yaml +40 -0
  120. massgen/configs/tools/filesystem/fs_permissions_test.yaml +87 -0
  121. massgen/configs/tools/filesystem/gemini_gemini_workspace_cleanup.yaml +54 -0
  122. massgen/configs/tools/filesystem/gemini_gpt5_filesystem_casestudy.yaml +30 -0
  123. massgen/configs/tools/filesystem/gemini_gpt5nano_file_context_path.yaml +43 -0
  124. massgen/configs/tools/filesystem/gemini_gpt5nano_protected_paths.yaml +45 -0
  125. massgen/configs/tools/filesystem/gpt5mini_cc_fs_context_path.yaml +31 -0
  126. massgen/configs/tools/filesystem/grok4_gpt5_gemini_filesystem.yaml +32 -0
  127. massgen/configs/tools/filesystem/multiturn/grok4_gpt5_claude_code_filesystem_multiturn.yaml +58 -0
  128. massgen/configs/tools/filesystem/multiturn/grok4_gpt5_gemini_filesystem_multiturn.yaml +58 -0
  129. massgen/configs/tools/filesystem/multiturn/two_claude_code_filesystem_multiturn.yaml +47 -0
  130. massgen/configs/tools/filesystem/multiturn/two_gemini_flash_filesystem_multiturn.yaml +48 -0
  131. massgen/configs/tools/mcp/claude_code_discord_mcp_example.yaml +27 -0
  132. massgen/configs/tools/mcp/claude_code_simple_mcp.yaml +35 -0
  133. massgen/configs/tools/mcp/claude_code_twitter_mcp_example.yaml +32 -0
  134. massgen/configs/tools/mcp/claude_mcp_example.yaml +24 -0
  135. massgen/configs/tools/mcp/claude_mcp_test.yaml +27 -0
  136. massgen/configs/tools/mcp/five_agents_travel_mcp_test.yaml +157 -0
  137. massgen/configs/tools/mcp/five_agents_weather_mcp_test.yaml +103 -0
  138. massgen/configs/tools/mcp/gemini_mcp_example.yaml +24 -0
  139. massgen/configs/tools/mcp/gemini_mcp_filesystem_test.yaml +23 -0
  140. massgen/configs/tools/mcp/gemini_mcp_filesystem_test_sharing.yaml +23 -0
  141. massgen/configs/tools/mcp/gemini_mcp_filesystem_test_single_agent.yaml +17 -0
  142. massgen/configs/tools/mcp/gemini_mcp_filesystem_test_with_claude_code.yaml +24 -0
  143. massgen/configs/tools/mcp/gemini_mcp_test.yaml +27 -0
  144. massgen/configs/tools/mcp/gemini_notion_mcp.yaml +52 -0
  145. massgen/configs/tools/mcp/gpt5_nano_mcp_example.yaml +24 -0
  146. massgen/configs/tools/mcp/gpt5_nano_mcp_test.yaml +27 -0
  147. massgen/configs/tools/mcp/gpt5mini_claude_code_discord_mcp_example.yaml +38 -0
  148. massgen/configs/tools/mcp/gpt_oss_mcp_example.yaml +25 -0
  149. massgen/configs/tools/mcp/gpt_oss_mcp_test.yaml +28 -0
  150. massgen/configs/tools/mcp/grok3_mini_mcp_example.yaml +24 -0
  151. massgen/configs/tools/mcp/grok3_mini_mcp_test.yaml +27 -0
  152. massgen/configs/tools/mcp/multimcp_gemini.yaml +111 -0
  153. massgen/configs/tools/mcp/qwen_api_mcp_example.yaml +25 -0
  154. massgen/configs/tools/mcp/qwen_api_mcp_test.yaml +28 -0
  155. massgen/configs/tools/mcp/qwen_local_mcp_example.yaml +24 -0
  156. massgen/configs/tools/mcp/qwen_local_mcp_test.yaml +27 -0
  157. massgen/configs/tools/planning/five_agents_discord_mcp_planning_mode.yaml +140 -0
  158. massgen/configs/tools/planning/five_agents_filesystem_mcp_planning_mode.yaml +151 -0
  159. massgen/configs/tools/planning/five_agents_notion_mcp_planning_mode.yaml +151 -0
  160. massgen/configs/tools/planning/five_agents_twitter_mcp_planning_mode.yaml +155 -0
  161. massgen/configs/tools/planning/gpt5_mini_case_study_mcp_planning_mode.yaml +73 -0
  162. massgen/configs/tools/web-search/claude_streamable_http_test.yaml +43 -0
  163. massgen/configs/tools/web-search/gemini_streamable_http_test.yaml +43 -0
  164. massgen/configs/tools/web-search/gpt5_mini_streamable_http_test.yaml +43 -0
  165. massgen/configs/tools/web-search/gpt_oss_streamable_http_test.yaml +44 -0
  166. massgen/configs/tools/web-search/grok3_mini_streamable_http_test.yaml +43 -0
  167. massgen/configs/tools/web-search/qwen_api_streamable_http_test.yaml +44 -0
  168. massgen/configs/tools/web-search/qwen_local_streamable_http_test.yaml +43 -0
  169. massgen/coordination_tracker.py +708 -0
  170. massgen/docker/README.md +462 -0
  171. massgen/filesystem_manager/__init__.py +21 -0
  172. massgen/filesystem_manager/_base.py +9 -0
  173. massgen/filesystem_manager/_code_execution_server.py +545 -0
  174. massgen/filesystem_manager/_docker_manager.py +477 -0
  175. massgen/filesystem_manager/_file_operation_tracker.py +248 -0
  176. massgen/filesystem_manager/_filesystem_manager.py +813 -0
  177. massgen/filesystem_manager/_path_permission_manager.py +1261 -0
  178. massgen/filesystem_manager/_workspace_tools_server.py +1815 -0
  179. massgen/formatter/__init__.py +10 -0
  180. massgen/formatter/_chat_completions_formatter.py +284 -0
  181. massgen/formatter/_claude_formatter.py +235 -0
  182. massgen/formatter/_formatter_base.py +156 -0
  183. massgen/formatter/_response_formatter.py +263 -0
  184. massgen/frontend/__init__.py +1 -2
  185. massgen/frontend/coordination_ui.py +471 -286
  186. massgen/frontend/displays/base_display.py +56 -11
  187. massgen/frontend/displays/create_coordination_table.py +1956 -0
  188. massgen/frontend/displays/rich_terminal_display.py +1259 -619
  189. massgen/frontend/displays/simple_display.py +9 -4
  190. massgen/frontend/displays/terminal_display.py +27 -68
  191. massgen/logger_config.py +681 -0
  192. massgen/mcp_tools/README.md +232 -0
  193. massgen/mcp_tools/__init__.py +105 -0
  194. massgen/mcp_tools/backend_utils.py +1035 -0
  195. massgen/mcp_tools/circuit_breaker.py +195 -0
  196. massgen/mcp_tools/client.py +894 -0
  197. massgen/mcp_tools/config_validator.py +138 -0
  198. massgen/mcp_tools/docs/circuit_breaker.md +646 -0
  199. massgen/mcp_tools/docs/client.md +950 -0
  200. massgen/mcp_tools/docs/config_validator.md +478 -0
  201. massgen/mcp_tools/docs/exceptions.md +1165 -0
  202. massgen/mcp_tools/docs/security.md +854 -0
  203. massgen/mcp_tools/exceptions.py +338 -0
  204. massgen/mcp_tools/hooks.py +212 -0
  205. massgen/mcp_tools/security.py +780 -0
  206. massgen/message_templates.py +342 -64
  207. massgen/orchestrator.py +1515 -241
  208. massgen/stream_chunk/__init__.py +35 -0
  209. massgen/stream_chunk/base.py +92 -0
  210. massgen/stream_chunk/multimodal.py +237 -0
  211. massgen/stream_chunk/text.py +162 -0
  212. massgen/tests/mcp_test_server.py +150 -0
  213. massgen/tests/multi_turn_conversation_design.md +0 -8
  214. massgen/tests/test_azure_openai_backend.py +156 -0
  215. massgen/tests/test_backend_capabilities.py +262 -0
  216. massgen/tests/test_backend_event_loop_all.py +179 -0
  217. massgen/tests/test_chat_completions_refactor.py +142 -0
  218. massgen/tests/test_claude_backend.py +15 -28
  219. massgen/tests/test_claude_code.py +268 -0
  220. massgen/tests/test_claude_code_context_sharing.py +233 -0
  221. massgen/tests/test_claude_code_orchestrator.py +175 -0
  222. massgen/tests/test_cli_backends.py +180 -0
  223. massgen/tests/test_code_execution.py +679 -0
  224. massgen/tests/test_external_agent_backend.py +134 -0
  225. massgen/tests/test_final_presentation_fallback.py +237 -0
  226. massgen/tests/test_gemini_planning_mode.py +351 -0
  227. massgen/tests/test_grok_backend.py +7 -10
  228. massgen/tests/test_http_mcp_server.py +42 -0
  229. massgen/tests/test_integration_simple.py +198 -0
  230. massgen/tests/test_mcp_blocking.py +125 -0
  231. massgen/tests/test_message_context_building.py +29 -47
  232. massgen/tests/test_orchestrator_final_presentation.py +48 -0
  233. massgen/tests/test_path_permission_manager.py +2087 -0
  234. massgen/tests/test_rich_terminal_display.py +14 -13
  235. massgen/tests/test_timeout.py +133 -0
  236. massgen/tests/test_v3_3agents.py +11 -12
  237. massgen/tests/test_v3_simple.py +8 -13
  238. massgen/tests/test_v3_three_agents.py +11 -18
  239. massgen/tests/test_v3_two_agents.py +8 -13
  240. massgen/token_manager/__init__.py +7 -0
  241. massgen/token_manager/token_manager.py +400 -0
  242. massgen/utils.py +52 -16
  243. massgen/v1/agent.py +45 -91
  244. massgen/v1/agents.py +18 -53
  245. massgen/v1/backends/gemini.py +50 -153
  246. massgen/v1/backends/grok.py +21 -54
  247. massgen/v1/backends/oai.py +39 -111
  248. massgen/v1/cli.py +36 -93
  249. massgen/v1/config.py +8 -12
  250. massgen/v1/logging.py +43 -127
  251. massgen/v1/main.py +18 -32
  252. massgen/v1/orchestrator.py +68 -209
  253. massgen/v1/streaming_display.py +62 -163
  254. massgen/v1/tools.py +8 -12
  255. massgen/v1/types.py +9 -23
  256. massgen/v1/utils.py +5 -23
  257. massgen-0.1.0.dist-info/METADATA +1245 -0
  258. massgen-0.1.0.dist-info/RECORD +273 -0
  259. massgen-0.1.0.dist-info/entry_points.txt +2 -0
  260. massgen/frontend/logging/__init__.py +0 -9
  261. massgen/frontend/logging/realtime_logger.py +0 -197
  262. massgen-0.0.3.dist-info/METADATA +0 -568
  263. massgen-0.0.3.dist-info/RECORD +0 -76
  264. massgen-0.0.3.dist-info/entry_points.txt +0 -2
  265. /massgen/backend/{Function calling openai responses.md → docs/Function calling openai responses.md} +0 -0
  266. {massgen-0.0.3.dist-info → massgen-0.1.0.dist-info}/WHEEL +0 -0
  267. {massgen-0.0.3.dist-info → massgen-0.1.0.dist-info}/licenses/LICENSE +0 -0
  268. {massgen-0.0.3.dist-info → massgen-0.1.0.dist-info}/top_level.txt +0 -0
@@ -5,9 +5,14 @@ agents:
5
5
  - id: "travel_researcher"
6
6
  backend:
7
7
  type: "openai"
8
- model: "gpt-4o"
9
- temperature: 0.6
10
- max_tokens: 3000
8
+ model: "gpt-5-nano"
9
+ text:
10
+ verbosity: "medium"
11
+ reasoning:
12
+ effort: "medium"
13
+ summary: "auto"
14
+ enable_web_search: true
15
+ enable_code_interpreter: true
11
16
  system_message: |
12
17
  You are a travel researcher who excels at finding comprehensive
13
18
  information about destinations, attractions, and travel logistics. Focus on:
@@ -33,9 +38,14 @@ agents:
33
38
  - id: "travel_planner"
34
39
  backend:
35
40
  type: "openai"
36
- model: "gpt-4o-mini"
37
- temperature: 0.6
38
- max_tokens: 3000
41
+ model: "gpt-5-nano"
42
+ text:
43
+ verbosity: "medium"
44
+ reasoning:
45
+ effort: "medium"
46
+ summary: "auto"
47
+ enable_web_search: true
48
+ enable_code_interpreter: true
39
49
  system_message: |
40
50
  You are a travel planner who organizes information into practical,
41
51
  actionable travel itineraries and recommendations. Focus on:
@@ -5,9 +5,14 @@ agents:
5
5
  - id: "news_gatherer"
6
6
  backend:
7
7
  type: "openai"
8
- model: "gpt-4o"
9
- temperature: 0.4
10
- max_tokens: 2500
8
+ model: "gpt-5-nano"
9
+ text:
10
+ verbosity: "medium"
11
+ reasoning:
12
+ effort: "medium"
13
+ summary: "auto"
14
+ enable_web_search: true
15
+ enable_code_interpreter: true
11
16
  system_message: |
12
17
  You are a news researcher who specializes in finding and curating current
13
18
  events and breaking news. Focus on:
@@ -33,9 +38,14 @@ agents:
33
38
  - id: "news_synthesizer"
34
39
  backend:
35
40
  type: "openai"
36
- model: "gpt-4o-mini"
37
- temperature: 0.4
38
- max_tokens: 2500
41
+ model: "gpt-5-nano"
42
+ text:
43
+ verbosity: "medium"
44
+ reasoning:
45
+ effort: "medium"
46
+ summary: "auto"
47
+ enable_web_search: true
48
+ enable_code_interpreter: true
39
49
  system_message: |
40
50
  You are a news editor who synthesizes multiple news sources into
41
51
  comprehensive, balanced summaries. Focus on:
@@ -19,7 +19,13 @@ agents:
19
19
  - id: "domain_expert"
20
20
  backend:
21
21
  type: "openai"
22
- model: "gpt-4o"
22
+ model: "gpt-5-nano"
23
+ text:
24
+ verbosity: "medium"
25
+ reasoning:
26
+ effort: "medium"
27
+ summary: "auto"
28
+ enable_web_search: true
23
29
  enable_code_interpreter: true
24
30
  system_message: |
25
31
  You are a domain expert with analytical capabilities. Your role is to
@@ -32,7 +38,14 @@ agents:
32
38
  - id: "synthesizer"
33
39
  backend:
34
40
  type: "openai"
35
- model: "gpt-4o-mini"
41
+ model: "gpt-5-nano"
42
+ text:
43
+ verbosity: "medium"
44
+ reasoning:
45
+ effort: "medium"
46
+ summary: "auto"
47
+ enable_web_search: true
48
+ enable_code_interpreter: true
36
49
  system_message: |
37
50
  You are a synthesis specialist who excels at combining multiple perspectives
38
51
  into coherent, actionable insights. Your role is to:
@@ -44,8 +57,3 @@ agents:
44
57
  ui:
45
58
  display_type: "rich_terminal"
46
59
  logging_enabled: true
47
-
48
- # Research-optimized settings
49
- backend_params:
50
- temperature: 0.3 # Lower temperature for more focused research
51
- max_tokens: 3000 # Longer responses for detailed research
@@ -5,9 +5,14 @@ agents:
5
5
  - id: "technical_researcher"
6
6
  backend:
7
7
  type: "openai"
8
- model: "gpt-4o"
9
- temperature: 0.2
10
- max_tokens: 3000
8
+ model: "gpt-5-nano"
9
+ text:
10
+ verbosity: "medium"
11
+ reasoning:
12
+ effort: "medium"
13
+ summary: "auto"
14
+ enable_web_search: true
15
+ enable_code_interpreter: true
11
16
  system_message: |
12
17
  You are a technical researcher who specializes in finding accurate
13
18
  technical specifications, pricing, and system requirements. Focus on:
@@ -33,9 +38,14 @@ agents:
33
38
  - id: "technical_advisor"
34
39
  backend:
35
40
  type: "openai"
36
- model: "gpt-4o-mini"
37
- temperature: 0.2
38
- max_tokens: 3000
41
+ model: "gpt-5-nano"
42
+ text:
43
+ verbosity: "medium"
44
+ reasoning:
45
+ effort: "medium"
46
+ summary: "auto"
47
+ enable_web_search: true
48
+ enable_code_interpreter: true
39
49
  system_message: |
40
50
  You are a technical advisor who synthesizes technical information
41
51
  into practical recommendations and insights. Focus on:
@@ -0,0 +1,25 @@
1
+ # Basic Command Execution with Auto-detect Virtual Environment
2
+ # Run with: uv run python -m massgen.cli --config massgen/configs/tools/code-execution/basic_command_execution.yaml "Write a Python function to calculate factorial and test it"
3
+
4
+ agents:
5
+ - id: "agent_a"
6
+ backend:
7
+ type: "openai"
8
+ model: "gpt-5-mini"
9
+ cwd: "workspace1"
10
+ enable_mcp_command_line: true
11
+
12
+ - id: "agent_b"
13
+ backend:
14
+ type: "openai"
15
+ model: "gpt-5-mini"
16
+ cwd: "workspace2"
17
+ enable_mcp_command_line: true
18
+
19
+ orchestrator:
20
+ snapshot_storage: "snapshots"
21
+ agent_temporary_workspace: "temp_workspaces"
22
+
23
+ ui:
24
+ display_type: "rich_terminal"
25
+ logging_enabled: true
@@ -0,0 +1,41 @@
1
+ # Simple Code Execution Use Case: Add a Real Test Case
2
+ #
3
+ # Run with:
4
+ # uv run python -m massgen.cli --config massgen/configs/examples/code_execution_use_case_simple.yaml "Create a test case for ensuring the config file is a valid format and all the parameters are supported. Then, run it on /Users/ncrispin/GitHubProjects/MassGenOther/massgen/configs/examples/code_execution_use_case_simple.yaml to ensure that the config is valid. Note you can use uv run for testing."
5
+
6
+ agents:
7
+ - id: "agent_a"
8
+ backend:
9
+ type: "gemini"
10
+ model: "gemini-2.5-pro"
11
+ cwd: "workspace1"
12
+ enable_mcp_command_line: true
13
+ command_line_allowed_commands:
14
+ - "uv run python.*"
15
+ - "uv run pytest.*"
16
+ - "python.*"
17
+ - "pytest.*"
18
+
19
+ - id: "agent_b"
20
+ backend:
21
+ type: "openai"
22
+ model: "gpt-5-mini"
23
+ cwd: "workspace2"
24
+ enable_mcp_command_line: true
25
+ command_line_allowed_commands:
26
+ - "uv run python.*"
27
+ - "uv run pytest.*"
28
+ - "python.*"
29
+ - "pytest.*"
30
+
31
+ orchestrator:
32
+ agent_temporary_workspace: "temp_workspaces"
33
+ snapshot_storage: "snapshots"
34
+ context_paths:
35
+ - path: "massgen"
36
+ permission: "read"
37
+
38
+
39
+ ui:
40
+ display_type: "rich_terminal"
41
+ logging_enabled: true
@@ -0,0 +1,32 @@
1
+ # Multi-Agent with Mixed Execution Modes
2
+ # Run with: uv run python -m massgen.cli --config massgen/configs/tools/code-execution/docker_claude_code.yaml "Build a Flask website about Bob Dylan"
3
+ # Expected behavior: Trusted agent uses local execution, untrusted agent uses Docker isolation
4
+ # Prerequisites: Docker installed and running, massgen/mcp-runtime:latest image built (run massgen/docker/build.sh)
5
+
6
+ agents:
7
+ - id: "agent_a"
8
+ backend:
9
+ type: "claude_code"
10
+ model: "claude-sonnet-4-20250514"
11
+ cwd: "workspace1"
12
+ enable_mcp_command_line: true
13
+ command_line_execution_mode: "docker"
14
+
15
+ - id: "agent_b"
16
+ backend:
17
+ type: "gemini"
18
+ model: "gemini-2.5-pro"
19
+ cwd: "workspace2"
20
+ enable_mcp_command_line: true
21
+ command_line_execution_mode: "docker"
22
+
23
+ orchestrator:
24
+ snapshot_storage: "snapshots"
25
+ agent_temporary_workspace: "temp_workspaces"
26
+
27
+ timeout_settings:
28
+ orchestrator_timeout_seconds: 300 # Docker startup adds ~5-10s overhead
29
+
30
+ ui:
31
+ display_type: "rich_terminal"
32
+ logging_enabled: true
@@ -0,0 +1,32 @@
1
+ # Multi-Agent with Mixed Execution Modes
2
+ # Run with: uv run python -m massgen.cli --config massgen/configs/tools/code-execution/docker_multi_agent.yaml "Build a Flask website about Bob Dylan"
3
+ # Expected behavior: Trusted agent uses local execution, untrusted agent uses Docker isolation
4
+ # Prerequisites: Docker installed and running, massgen/mcp-runtime:latest image built (run massgen/docker/build.sh)
5
+
6
+ agents:
7
+ - id: "agent_a"
8
+ backend:
9
+ type: "openai"
10
+ model: "gpt-5-mini"
11
+ cwd: "workspace1"
12
+ enable_mcp_command_line: true
13
+ command_line_execution_mode: "docker"
14
+
15
+ - id: "agent_b"
16
+ backend:
17
+ type: "gemini"
18
+ model: "gemini-2.5-pro"
19
+ cwd: "workspace2"
20
+ enable_mcp_command_line: true
21
+ command_line_execution_mode: "docker"
22
+
23
+ orchestrator:
24
+ snapshot_storage: "snapshots"
25
+ agent_temporary_workspace: "temp_workspaces"
26
+
27
+ timeout_settings:
28
+ orchestrator_timeout_seconds: 300 # Docker startup adds ~5-10s overhead
29
+
30
+ ui:
31
+ display_type: "rich_terminal"
32
+ logging_enabled: true
@@ -0,0 +1,29 @@
1
+ # Simple Docker Isolation for Command Execution
2
+ # Run with: uv run python -m massgen.cli --config massgen/configs/tools/code-execution/docker_simple.yaml "Write a factorial function and test it"
3
+ # Expected behavior: Commands execute in isolated Docker container with persistent state (packages stay installed across turns)
4
+ # Prerequisites: Docker installed and running, massgen/mcp-runtime:latest image built (run massgen/docker/build.sh)
5
+
6
+ agent:
7
+ id: "docker_agent"
8
+ backend:
9
+ type: "openai"
10
+ model: "gpt-5-mini"
11
+ cwd: "workspace1"
12
+
13
+ # Enable command execution with Docker isolation
14
+ enable_mcp_command_line: true
15
+ command_line_execution_mode: "docker" # This is the key change!
16
+
17
+ # Optional: Specify custom image (default: massgen/mcp-runtime:latest)
18
+ # command_line_docker_image: "massgen/mcp-runtime:latest"
19
+
20
+ orchestrator:
21
+ snapshot_storage: "snapshots"
22
+ agent_temporary_workspace: "temp_workspaces"
23
+
24
+ timeout_settings:
25
+ orchestrator_timeout_seconds: 180 # Docker startup adds ~5-10s overhead
26
+
27
+ ui:
28
+ display_type: "rich_terminal"
29
+ logging_enabled: true
@@ -0,0 +1,32 @@
1
+ # Docker Isolation with Resource Limits and Network Access
2
+ # Run with: uv run python -m massgen.cli --config massgen/configs/tools/code-execution/docker_with_resource_limits.yaml "Fetch data from an API and analyze it"
3
+ # Expected behavior: Agent can make network requests, but constrained by memory/CPU limits
4
+ # Prerequisites: Docker installed and running, massgen/mcp-runtime:latest image built
5
+
6
+ agent:
7
+ id: "resource_limited_agent"
8
+ backend:
9
+ type: "gemini"
10
+ model: "gemini-2.5-flash"
11
+ cwd: "workspace1"
12
+
13
+ # Enable command execution with Docker isolation
14
+ enable_mcp_command_line: true
15
+ command_line_execution_mode: "docker"
16
+
17
+ # Docker configuration
18
+ command_line_docker_image: "massgen/mcp-runtime:latest"
19
+ command_line_docker_memory_limit: "2g" # Limit memory to 2GB
20
+ command_line_docker_cpu_limit: 4.0 # Limit to 4 CPU cores
21
+ command_line_docker_network_mode: "bridge" # Enable network access (default: none)
22
+
23
+ orchestrator:
24
+ snapshot_storage: "snapshots"
25
+ agent_temporary_workspace: "temp_workspaces"
26
+
27
+ timeout_settings:
28
+ orchestrator_timeout_seconds: 180
29
+
30
+ ui:
31
+ display_type: "rich_terminal"
32
+ logging_enabled: true
@@ -0,0 +1,57 @@
1
+ # massgen --config @examples/tools/code-execution/multi_agent_playwright_automation "Browse three issues in https://github.com/Leezekun/MassGen and suggest documentation improvements. Include screenshots and suggestions in a website."
2
+ agents:
3
+ - id: "agent_a"
4
+ backend:
5
+ type: "openai"
6
+ model: "gpt-5-mini"
7
+ text:
8
+ verbosity: "medium"
9
+ reasoning:
10
+ effort: "medium"
11
+ summary: "auto"
12
+ cwd: "workspace1"
13
+ # Playwright MCP server with advanced configuration
14
+ mcp_servers:
15
+ playwright:
16
+ type: "stdio"
17
+ command: "npx"
18
+ args: [
19
+ "@playwright/mcp@latest",
20
+ "--browser=chrome", # Use Chrome browser
21
+ "--caps=vision,pdf", # Enable vision and PDF capabilities
22
+ "--user-data-dir=${cwd}/playwright-profile", # Persistent browser profile within workspace
23
+ "--output-dir=${cwd}", # Save screenshots/PDFs directly to workspace
24
+ # "--save-trace" # Save Playwright traces for debugging
25
+ ]
26
+
27
+ - id: "agent_b"
28
+ backend:
29
+ type: "openai"
30
+ model: "gpt-5-mini"
31
+ cwd: "workspace2"
32
+ text:
33
+ verbosity: "medium"
34
+ reasoning:
35
+ effort: "medium"
36
+ summary: "auto"
37
+ mcp_servers:
38
+ playwright:
39
+ type: "stdio"
40
+ command: "npx"
41
+ args: [
42
+ "@playwright/mcp@latest",
43
+ "--browser=chrome", # Use Chrome browser
44
+ "--caps=vision,pdf", # Enable vision and PDF capabilities
45
+ "--output-dir=${cwd}", # Save screenshots/PDFs directly to workspace
46
+ "--user-data-dir=${cwd}/playwright-profile", # Persistent browser profile within workspace
47
+ # "--user-data-dir=/tmp/playwright-profile", # Persistent browser profile
48
+ # "--save-trace" # Save Playwright traces for debugging
49
+ ]
50
+
51
+ ui:
52
+ display_type: "rich_terminal"
53
+ logging_enabled: true
54
+
55
+ orchestrator:
56
+ snapshot_storage: "snapshots" # Directory to store workspace snapshots
57
+ agent_temporary_workspace: "temp_workspaces" # Directory for temporary agent workspaces
@@ -0,0 +1,34 @@
1
+ # uv tool run massgen --config tools/filesystem/cc_gpt5_gemini_filesystem.yaml
2
+ agents:
3
+ - id: "agent_a"
4
+ backend:
5
+ type: "claude_code"
6
+ model: "claude-sonnet-4-5-20250929"
7
+ cwd: "workspace1"
8
+
9
+ - id: "agent_b"
10
+ backend:
11
+ type: "openai"
12
+ model: "gpt-5-mini"
13
+ text:
14
+ verbosity: "medium"
15
+ reasoning:
16
+ effort: "medium"
17
+ summary: "auto"
18
+ cwd: "workspace2"
19
+ enable_web_search: true
20
+
21
+ - id: "agent_c"
22
+ backend:
23
+ type: "gemini"
24
+ model: "gemini-2.5-pro"
25
+ cwd: "workspace3"
26
+ enable_web_search: true
27
+
28
+ orchestrator:
29
+ snapshot_storage: "snapshots" # Directory to store workspace snapshots
30
+ agent_temporary_workspace: "temp_workspaces" # Directory for temporary agent workspaces
31
+
32
+ ui:
33
+ display_type: "rich_terminal"
34
+ logging_enabled: true
@@ -0,0 +1,68 @@
1
+ # Single agent configuration using Claude Code Stream backend
2
+ # This demonstrates integration with claude-code-sdk-python for native Claude Code capabilities
3
+
4
+ agents:
5
+ - id: "claude_code_agent1"
6
+ backend:
7
+ type: "claude_code"
8
+ cwd: "claude_code_workspace1" # Working directory for file operations
9
+ model: "claude-sonnet-4-20250514"
10
+
11
+ # Claude Code Stream specific options
12
+ # append_system_prompt: "You are a helpful AI assistant powered by Claude Code. You have access to a comprehensive set of development tools including file operations, code execution, web search, and more. Use these capabilities thoughtfully to provide the best assistance."
13
+ # max_turns: 3 # Allow unlimited conversation turns
14
+
15
+ # Tool configuration (Claude Code's native tools)
16
+ # allowed_tools:
17
+ # - "Read" # Read files from filesystem
18
+ # - "Write" # Write files to filesystem
19
+ # - "Edit" # Edit existing files
20
+ # - "MultiEdit" # Multiple edits in one operation
21
+ # - "Bash" # Execute shell commands
22
+ # - "Grep" # Search within files
23
+ # - "Glob" # Find files by pattern
24
+ # - "LS" # List directory contents
25
+ # - "WebSearch" # Search the web
26
+ # - "WebFetch" # Fetch web content
27
+ # - "TodoWrite" # Task management
28
+ # - "NotebookEdit" # Jupyter notebook editing
29
+ # # MCP tools (if available)
30
+ # - "mcp__ide__getDiagnostics"
31
+ # - "mcp__ide__executeCode"
32
+
33
+ - id: "claude_code_agent2"
34
+ backend:
35
+ type: "claude_code"
36
+ cwd: "claude_code_workspace2" # Working directory for file operations
37
+ model: "claude-sonnet-4-20250514"
38
+
39
+ # Claude Code Stream specific options
40
+ # append_system_prompt: "You are a helpful AI assistant powered by Claude Code. You have access to a comprehensive set of development tools including file operations, code execution, web search, and more. Use these capabilities thoughtfully to provide the best assistance."
41
+ # max_turns: 3 # Allow unlimited conversation turns
42
+
43
+ # Tool configuration (Claude Code's native tools)
44
+ # allowed_tools:
45
+ # - "Read" # Read files from filesystem
46
+ # - "Write" # Write files to filesystem
47
+ # - "Edit" # Edit existing files
48
+ # - "MultiEdit" # Multiple edits in one operation
49
+ # - "Bash" # Execute shell commands
50
+ # - "Grep" # Search within files
51
+ # - "Glob" # Find files by pattern
52
+ # - "LS" # List directory contents
53
+ # - "WebSearch" # Search the web
54
+ # - "WebFetch" # Fetch web content
55
+ # - "TodoWrite" # Task management
56
+ # - "NotebookEdit" # Jupyter notebook editing
57
+ # # MCP tools (if available)
58
+ # - "mcp__ide__getDiagnostics"
59
+ # - "mcp__ide__executeCode"
60
+
61
+ orchestrator:
62
+ snapshot_storage: "claude_code_snapshots" # Directory to store workspace snapshots
63
+ agent_temporary_workspace: "claude_code_temp_workspaces" # Directory for temporary agent workspaces
64
+
65
+ # UI Configuration
66
+ ui:
67
+ type: "rich_terminal"
68
+ logging_enabled: true
@@ -0,0 +1,43 @@
1
+ # Single agent configuration using Claude Code Stream backend
2
+ # This demonstrates integration with claude-code-sdk-python for native Claude Code capabilities
3
+
4
+ agents:
5
+ - id: "claude_code_agent"
6
+ backend:
7
+ type: "claude_code"
8
+ cwd: "claude_code_workspace" # Working directory for file operations
9
+ # model: "claude-sonnet-4-20250514"
10
+
11
+ # Claude Code Stream specific options
12
+ # append_system_prompt: "You are a helpful AI assistant powered by Claude Code. You have access to a comprehensive set of development tools including file operations, code execution, web search, and more. Use these capabilities thoughtfully to provide the best assistance."
13
+ # max_turns: 3 # Allow unlimited conversation turns
14
+
15
+ # Tool configuration (Claude Code's native tools)
16
+ # allowed_tools:
17
+ # - "Read" # Read files from filesystem
18
+ # - "Write" # Write files to filesystem
19
+ # - "Edit" # Edit existing files
20
+ # - "MultiEdit" # Multiple edits in one operation
21
+ # - "Bash" # Execute shell commands
22
+ # - "Grep" # Search within files
23
+ # - "Glob" # Find files by pattern
24
+ # - "LS" # List directory contents
25
+ # - "WebSearch" # Search the web
26
+ # - "WebFetch" # Fetch web content
27
+ # - "TodoWrite" # Task management
28
+ # - "NotebookEdit" # Jupyter notebook editing
29
+ # # MCP tools (if available)
30
+ # - "mcp__ide__getDiagnostics"
31
+ # - "mcp__ide__executeCode"
32
+
33
+ - id: "gemini-2.5-flash"
34
+ backend:
35
+ type: "gemini"
36
+ model: "gemini-2.5-flash"
37
+ enable_web_search: true
38
+ enable_code_execution: true
39
+
40
+ # UI Configuration
41
+ ui:
42
+ type: "rich_terminal"
43
+ logging_enabled: true
@@ -0,0 +1,49 @@
1
+ # Single agent configuration using Claude Code Stream backend
2
+ # This demonstrates integration with claude-code-sdk-python for native Claude Code capabilities
3
+
4
+ agents:
5
+ - id: "claude_code_agent"
6
+ backend:
7
+ type: "claude_code"
8
+ cwd: "claude_code_workspace" # Working directory for file operations
9
+ # model: "claude-sonnet-4-20250514"
10
+
11
+ # Claude Code Stream specific options
12
+ # append_system_prompt: "You are a helpful AI assistant powered by Claude Code. You have access to a comprehensive set of development tools including file operations, code execution, web search, and more. Use these capabilities thoughtfully to provide the best assistance."
13
+ # max_turns: 3 # Allow unlimited conversation turns
14
+
15
+ # Tool configuration (Claude Code's native tools)
16
+ # allowed_tools:
17
+ # - "Read" # Read files from filesystem
18
+ # - "Write" # Write files to filesystem
19
+ # - "Edit" # Edit existing files
20
+ # - "MultiEdit" # Multiple edits in one operation
21
+ # - "Bash" # Execute shell commands
22
+ # - "Grep" # Search within files
23
+ # - "Glob" # Find files by pattern
24
+ # - "LS" # List directory contents
25
+ # - "WebSearch" # Search the web
26
+ # - "WebFetch" # Fetch web content
27
+ # - "TodoWrite" # Task management
28
+ # - "NotebookEdit" # Jupyter notebook editing
29
+ # # MCP tools (if available)
30
+ # - "mcp__ide__getDiagnostics"
31
+ # - "mcp__ide__executeCode"
32
+
33
+ - id: "gemini-2.5-flash"
34
+ backend:
35
+ type: "gemini"
36
+ model: "gemini-2.5-flash"
37
+ enable_web_search: true
38
+ enable_code_execution: true
39
+
40
+ - id: "gpt-oss-120b"
41
+ backend:
42
+ type: "chatcompletion"
43
+ model: "gpt-oss-120b"
44
+ base_url: "https://api.cerebras.ai/v1"
45
+
46
+ # UI Configuration
47
+ ui:
48
+ type: "rich_terminal"
49
+ logging_enabled: true
@@ -0,0 +1,31 @@
1
+ agents:
2
+ - id: "claude_code"
3
+ backend:
4
+ type: "claude_code"
5
+ cwd: "workspace1"
6
+
7
+ allowed_tools:
8
+ - "Read"
9
+ - "Write"
10
+ - "Bash"
11
+ - "LS"
12
+ - "WebSearch"
13
+
14
+ - id: "gpt-5-nano"
15
+ backend:
16
+ type: "openai"
17
+ model: "gpt-5-nano"
18
+ reasoning:
19
+ effort: "medium"
20
+ summary: "auto"
21
+ cwd: "workspace2"
22
+ enable_web_search: true
23
+ enable_code_interpreter: true
24
+
25
+ orchestrator:
26
+ snapshot_storage: "snapshots"
27
+ agent_temporary_workspace: "temp_workspaces"
28
+
29
+ ui:
30
+ display_type: "rich_terminal"
31
+ logging_enabled: true
@@ -0,0 +1,40 @@
1
+ # Single agent configuration using Claude Code Stream backend
2
+ # This demonstrates integration with claude-code-sdk-python for native Claude Code capabilities
3
+
4
+ agents:
5
+ - id: "claude_code_agent"
6
+ backend:
7
+ type: "claude_code"
8
+ cwd: "claude_code_workspace" # Working directory for file operations
9
+ # model: "claude-sonnet-4-20250514"
10
+
11
+ # Claude Code Stream specific options
12
+ # system_prompt: "You are a helpful AI assistant powered by Claude Code. You have access to a comprehensive set of development tools including file operations, code execution, web search, and more. Use these capabilities thoughtfully to provide the best assistance."
13
+ # max_turns: 3 # Allow unlimited conversation turns
14
+
15
+ # Tool configuration (Claude Code's native tools)
16
+ # allowed_tools:
17
+ # - "Read" # Read files from filesystem
18
+ # - "Write" # Write files to filesystem
19
+ # - "Edit" # Edit existing files
20
+ # - "MultiEdit" # Multiple edits in one operation
21
+ # - "Bash" # Execute shell commands
22
+ # - "Grep" # Search within files
23
+ # - "Glob" # Find files by pattern
24
+ # - "LS" # List directory contents
25
+ # - "WebSearch" # Search the web
26
+ # - "WebFetch" # Fetch web content
27
+ # - "TodoWrite" # Task management
28
+ # - "NotebookEdit" # Jupyter notebook editing
29
+ # # MCP tools (if available)
30
+ # - "mcp__ide__getDiagnostics"
31
+ # - "mcp__ide__executeCode"
32
+
33
+ orchestrator:
34
+ snapshot_storage: "claude_code_snapshots" # Directory to store workspace snapshots
35
+ agent_temporary_workspace: "claude_code_temp_workspaces" # Directory for temporary agent workspaces
36
+
37
+ # UI Configuration
38
+ ui:
39
+ type: "rich_terminal"
40
+ logging_enabled: true