massgen 0.1.5__py3-none-any.whl → 0.1.6__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 (57) hide show
  1. massgen/__init__.py +1 -1
  2. massgen/backend/base_with_custom_tool_and_mcp.py +453 -23
  3. massgen/backend/capabilities.py +39 -0
  4. massgen/backend/chat_completions.py +111 -197
  5. massgen/backend/claude.py +210 -181
  6. massgen/backend/gemini.py +1015 -1559
  7. massgen/backend/grok.py +3 -2
  8. massgen/backend/response.py +160 -220
  9. massgen/cli.py +73 -6
  10. massgen/config_builder.py +20 -54
  11. massgen/config_validator.py +931 -0
  12. massgen/configs/README.md +51 -8
  13. massgen/configs/tools/custom_tools/claude_code_custom_tool_with_mcp_example.yaml +1 -0
  14. massgen/configs/tools/custom_tools/claude_custom_tool_example_no_path.yaml +1 -1
  15. massgen/configs/tools/custom_tools/claude_custom_tool_with_mcp_example.yaml +1 -0
  16. massgen/configs/tools/custom_tools/computer_use_browser_example.yaml +1 -1
  17. massgen/configs/tools/custom_tools/computer_use_docker_example.yaml +1 -1
  18. massgen/configs/tools/custom_tools/gemini_custom_tool_with_mcp_example.yaml +1 -0
  19. massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_with_mcp_example.yaml +1 -0
  20. massgen/configs/tools/custom_tools/gpt_oss_custom_tool_with_mcp_example.yaml +1 -0
  21. massgen/configs/tools/custom_tools/grok3_mini_custom_tool_with_mcp_example.yaml +1 -0
  22. massgen/configs/tools/custom_tools/interop/ag2_and_langgraph_lesson_planner.yaml +65 -0
  23. massgen/configs/tools/custom_tools/interop/ag2_and_openai_assistant_lesson_planner.yaml +65 -0
  24. massgen/configs/tools/custom_tools/interop/ag2_lesson_planner_example.yaml +48 -0
  25. massgen/configs/tools/custom_tools/interop/agentscope_lesson_planner_example.yaml +48 -0
  26. massgen/configs/tools/custom_tools/interop/langgraph_lesson_planner_example.yaml +49 -0
  27. massgen/configs/tools/custom_tools/interop/openai_assistant_lesson_planner_example.yaml +50 -0
  28. massgen/configs/tools/custom_tools/interop/smolagent_lesson_planner_example.yaml +49 -0
  29. massgen/configs/tools/custom_tools/qwen_api_custom_tool_with_mcp_example.yaml +1 -0
  30. massgen/configs/tools/custom_tools/two_models_with_tools_example.yaml +44 -0
  31. massgen/formatter/_gemini_formatter.py +61 -15
  32. massgen/tests/test_ag2_lesson_planner.py +223 -0
  33. massgen/tests/test_config_validator.py +1156 -0
  34. massgen/tests/test_langgraph_lesson_planner.py +223 -0
  35. massgen/tool/__init__.py +2 -9
  36. massgen/tool/_decorators.py +52 -0
  37. massgen/tool/_extraframework_agents/ag2_lesson_planner_tool.py +251 -0
  38. massgen/tool/_extraframework_agents/agentscope_lesson_planner_tool.py +303 -0
  39. massgen/tool/_extraframework_agents/langgraph_lesson_planner_tool.py +275 -0
  40. massgen/tool/_extraframework_agents/openai_assistant_lesson_planner_tool.py +247 -0
  41. massgen/tool/_extraframework_agents/smolagent_lesson_planner_tool.py +180 -0
  42. massgen/tool/_manager.py +102 -16
  43. massgen/tool/_registered_tool.py +3 -0
  44. massgen/tool/_result.py +3 -0
  45. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/METADATA +104 -76
  46. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/RECORD +50 -39
  47. massgen/backend/gemini_mcp_manager.py +0 -545
  48. massgen/backend/gemini_trackers.py +0 -344
  49. massgen/configs/tools/custom_tools/multimodal_tools/playwright_with_img_understanding.yaml +0 -98
  50. massgen/configs/tools/custom_tools/multimodal_tools/understand_video_example.yaml +0 -54
  51. massgen/tools/__init__.py +0 -8
  52. massgen/tools/_planning_mcp_server.py +0 -520
  53. massgen/tools/planning_dataclasses.py +0 -434
  54. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/WHEEL +0 -0
  55. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/entry_points.txt +0 -0
  56. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/licenses/LICENSE +0 -0
  57. {massgen-0.1.5.dist-info → massgen-0.1.6.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: massgen
3
- Version: 0.1.5
3
+ Version: 0.1.6
4
4
  Summary: Multi-Agent Scaling System - A powerful framework for collaborative AI
5
5
  Author-email: MassGen Team <contact@massgen.dev>
6
6
  License: Apache-2.0
@@ -49,6 +49,11 @@ Requires-Dist: ag2>=0.9.10
49
49
  Requires-Dist: pyautogen>=0.10.0
50
50
  Requires-Dist: vertexai>=1.71.1
51
51
  Requires-Dist: pytest>=8.4.2
52
+ Requires-Dist: langchain-openai>=1.0.0
53
+ Requires-Dist: langgraph>=1.0.0
54
+ Requires-Dist: langchain-core>=1.0.0
55
+ Requires-Dist: agentscope>=1.0.6
56
+ Requires-Dist: smolagents[litellm]>=1.22.0
52
57
  Requires-Dist: python-docx>=1.2.0
53
58
  Requires-Dist: openpyxl>=3.1.5
54
59
  Requires-Dist: python-pptx>=1.0.2
@@ -127,7 +132,7 @@ Dynamic: license-file
127
132
  </p>
128
133
 
129
134
  <p align="center">
130
- <i>Multi-agent scaling through intelligent collaboration in Grok Heavy style</i>
135
+ <i>Scaling AI with collaborative, continuously improving agents</i>
131
136
  </p>
132
137
 
133
138
  MassGen is a cutting-edge multi-agent system that leverages the power of collaborative AI to solve complex tasks. It assigns a task to multiple AI agents who work in parallel, observe each other's progress, and refine their approaches to converge on the best solution to deliver a comprehensive and high-quality result. The power of this "parallel study group" approach is exemplified by advanced systems like xAI's Grok Heavy and Google DeepMind's Gemini Deep Think.
@@ -151,7 +156,7 @@ This project started with the "threads of thought" and "iterative refinement" id
151
156
  <details open>
152
157
  <summary><h3>🆕 Latest Features</h3></summary>
153
158
 
154
- - [v0.1.5 Features](#-latest-features-v015)
159
+ - [v0.1.6 Features](#-latest-features-v016)
155
160
  </details>
156
161
 
157
162
  <details open>
@@ -196,15 +201,15 @@ This project started with the "threads of thought" and "iterative refinement" id
196
201
  <summary><h3>🗺️ Roadmap</h3></summary>
197
202
 
198
203
  - Recent Achievements
199
- - [v0.1.5](#recent-achievements-v015)
200
- - [v0.0.3 - v0.1.4](#previous-achievements-v003---v014)
204
+ - [v0.1.6](#recent-achievements-v016)
205
+ - [v0.0.3 - v0.1.5](#previous-achievements-v003---v015)
201
206
  - [Key Future Enhancements](#key-future-enhancements)
202
207
  - Bug Fixes & Backend Improvements
203
208
  - Advanced Agent Collaboration
204
209
  - Expanded Model, Tool & Agent Integrations
205
210
  - Improved Performance & Scalability
206
211
  - Enhanced Developer Experience
207
- - [v0.1.6 Roadmap](#v016-roadmap)
212
+ - [v0.1.7 Roadmap](#v017-roadmap)
208
213
  </details>
209
214
 
210
215
  <details open>
@@ -229,49 +234,54 @@ This project started with the "threads of thought" and "iterative refinement" id
229
234
 
230
235
  ---
231
236
 
232
- ## 🆕 Latest Features (v0.1.5)
237
+ ## 🆕 Latest Features (v0.1.6)
233
238
 
234
- **🎉 Released: October 2025**
239
+ **🎉 Released: October 31, 2025**
235
240
 
236
- **What's New in v0.1.5:**
237
- - **🧠 Long-Term Memory System** - Semantic memory with retrieval across sessions
238
- - **🗜️ Automatic Context Compression** - Smart compression when approaching token limits
239
- - **🔄 Memory Sharing for Multi-Turn Conversations** - Agents access knowledge from previous turns
241
+ **What's New in v0.1.6:**
242
+ - **🔗 Framework Interoperability** - Use agents from AG2, LangGraph, AgentScope, OpenAI Assistants, and SmoLAgent as tools
243
+ - **✅ Configuration Validator** - Pre-flight YAML validation with detailed error messages and suggestions
244
+ - **🔧 Unified Tool Execution** - Streamlined backend architecture with consistent tool handling
245
+ - **⚡ Gemini Backend Simplification** - Major cleanup reducing codebase by 1,598 lines
240
246
 
241
247
  **Key Improvements:**
242
- - Persistent memory via mem0 integration with vector storage
243
- - Conversational memory for short-term context tracking
244
- - Context monitoring with real-time token usage tracking
245
- - Session management for memory isolation and continuation
246
- - Qdrant vector database integration for semantic search
248
+ - External agent frameworks work as MassGen custom tools
249
+ - Comprehensive config validation with pre-commit hooks
250
+ - ToolExecutionConfig dataclass for standardized tool handling across backends
251
+ - Simplified Gemini backend with improved maintainability
252
+ - Enhanced ToolManager with category management
247
253
 
248
- **Get Started with v0.1.5:**
254
+ **Try v0.1.6 Features:**
249
255
  ```bash
250
256
  # Install or upgrade from PyPI
251
257
  pip install --upgrade massgen
252
258
 
253
- # Multi-agent collaboration with context compression
254
- massgen --config @examples/memory/gpt5mini_gemini_context_window_management \
255
- "Analyze the MassGen codebase comprehensively. Create an architecture document that explains: (1) Core components and their responsibilities, (2) How different modules interact, (3) Key design patterns used, (4) Main entry points and request flows. Read > 30 files to build a complete understanding."
259
+ # Use AG2 agents as tools for lesson planning (supports streaming)
260
+ # Requirements: pip install pyautogen, OPENAI_API_KEY must be set
261
+ massgen --config massgen/configs/tools/custom_tools/ag2_lesson_planner_example.yaml "Create a lesson plan for photosynthesis"
256
262
 
257
- # Research-to-implementation workflow with memory persistence
258
- # Prerequisites: Start Qdrant and crawl4ai Docker containers
259
- docker run -d -p 6333:6333 -p 6334:6334 \
260
- -v $(pwd)/.massgen/qdrant_storage:/qdrant/storage:z qdrant/qdrant
261
- docker run -d -p 11235:11235 --name crawl4ai --shm-size=1g unclecode/crawl4ai:latest
263
+ # Use LangGraph workflows as tools
264
+ # Requirements: pip install langgraph langchain-openai langchain-core, OPENAI_API_KEY must be set
265
+ massgen --config massgen/configs/tools/custom_tools/langgraph_lesson_planner_example.yaml "Create a lesson plan for photosynthesis"
262
266
 
263
- # Session 1 - Research phase:
264
- massgen --config @examples/memory/gpt5mini_gemini_research_to_implementation \
265
- "Use crawl4ai to research the latest multi-agent AI papers and techniques from 2025. Focus on: coordination mechanisms, voting strategies, tool-use patterns, and architectural innovations."
267
+ # Use AgentScope multi-agent framework as tools
268
+ # Requirements: pip install agentscope, OPENAI_API_KEY must be set
269
+ massgen --config massgen/configs/tools/custom_tools/agentscope_lesson_planner_example.yaml "Create a lesson plan for photosynthesis"
266
270
 
267
- # Session 2 - Implementation analysis (continue in same session):
268
- # "Based on the multi-agent research from earlier, which techniques should we implement in MassGen to make it more state-of-the-art? Consider MassGen's current architecture and what would be most impactful."
271
+ # Use OpenAI Assistants API as tools
272
+ # Requirements: pip install openai, OPENAI_API_KEY must be set
273
+ massgen --config massgen/configs/tools/custom_tools/openai_assistant_lesson_planner_example.yaml "Create a lesson plan for photosynthesis"
269
274
 
270
- See [Multi-Turn Persistent Memory Case Study](docs/source/examples/case_studies/multi-turn-persistent-memory.md) for detailed analysis
275
+ # Use SmolAgent (HuggingFace) as tools
276
+ # Requirements: pip install smolagents, OPENAI_API_KEY must be set
277
+ massgen --config massgen/configs/tools/custom_tools/smolagent_lesson_planner_example.yaml "Create a lesson plan for photosynthesis"
271
278
 
272
- # Test automatic context compression
273
- massgen --config @examples/memory/single_agent_compression_test \
274
- "Analyze the MassGen codebase comprehensively. Create an architecture document that explains: (1) Core components and their responsibilities, (2) How different modules interact, (3) Key design patterns used, (4) Main entry points and request flows. Read > 30 files to build a complete understanding."
279
+ # Combine multiple frameworks - AG2 + LangGraph collaboration
280
+ # Requirements: pip install pyautogen langgraph langchain-openai langchain-core, OPENAI_API_KEY must be set
281
+ massgen --config massgen/configs/tools/custom_tools/ag2_and_langgraph_lesson_planner.yaml "Create a lesson plan for photosynthesis"
282
+
283
+ # Validate your configuration before running
284
+ python -m massgen.config_validator your_config.yaml
275
285
  ```
276
286
 
277
287
  → [See full release history and examples](massgen/configs/README.md#release-history--examples)
@@ -1115,43 +1125,60 @@ MassGen is currently in its foundational stage, with a focus on parallel, asynch
1115
1125
 
1116
1126
  ⚠️ **Early Stage Notice:** As MassGen is in active development, please expect upcoming breaking architecture changes as we continue to refine and improve the system.
1117
1127
 
1118
- ### Recent Achievements (v0.1.5)
1119
-
1120
- **🎉 Released: October 2025**
1121
-
1122
- #### Memory System
1123
- - **PersistentMemory**: Long-term semantic memory storage via mem0 integration with fact extraction and retrieval across sessions
1124
- - **ConversationMemory**: Short-term verbatim message tracking for active conversation context
1125
- - **Automatic Context Compression**: Smart compression when approaching token limits with configurable thresholds (trigger_threshold, target_ratio)
1126
- - **Cross-Agent Memory Sharing**: Agents share memory with turn-aware filtering to prevent temporal information leakage
1127
- - **Context Monitoring**: Real-time token usage tracking with automatic compression triggers
1128
- - **Session Management**: Memory isolation and continuation across runs with session naming support
1129
- - **Qdrant Integration**: Vector database support for efficient semantic search in both server and local modes
1130
- - **Configurable Memory Providers**: Support for OpenAI, Anthropic, Groq, and other mem0-compatible LLM and embedding providers
1131
-
1132
- #### Memory Configuration
1133
- - **Global and Per-Agent Control**: Enable/disable memory at system or individual agent level
1134
- - **Compression Settings**: Configurable trigger thresholds and target ratios for context window management
1135
- - **Retrieval Configuration**: Customizable retrieval limits and smart filtering to exclude recent messages
1136
- - **Memory Persistence**: Session continuation with named sessions for cross-session memory access
1128
+ ### Recent Achievements (v0.1.6)
1129
+
1130
+ **🎉 Released: October 31, 2025**
1131
+
1132
+ #### Framework Interoperability
1133
+ - **AG2 Integration**: Nested chat functionality wrapped as custom tool for multi-agent lesson planning (supports streaming)
1134
+ - **LangGraph Integration**: Graph-based workflows integrated as tools for structured task execution
1135
+ - **AgentScope Integration**: AgentScope agent system wrapped for collaborative task handling
1136
+ - **OpenAI Assistants Integration**: OpenAI Assistants API integrated as tools for specialized workflows
1137
+ - **SmoLAgent Integration**: HuggingFace SmoLAgent wrapped for flexible agent orchestration
1138
+ - **Cross-Framework Collaboration**: MassGen orchestrates agents from multiple frameworks seamlessly
1139
+ - **Tool Module**: New `massgen/tool/_extraframework_agents/` module with 5 framework integrations
1140
+ - **Streaming Support**: Only AG2 currently supports streaming; other frameworks return complete results
1141
+
1142
+ #### Configuration Validator
1143
+ - **ConfigValidator Class**: Comprehensive YAML validation in `massgen/config_validator.py`
1144
+ - **Memory Validation**: Detailed validation for memory configuration parameters
1145
+ - **Pre-commit Integration**: Automatic configuration validation before commits
1146
+ - **Error Messaging**: Actionable error messages with suggestions for common mistakes
1147
+ - **Test Coverage**: Comprehensive test suite in `massgen/tests/test_config_validator.py`
1148
+
1149
+ #### Backend Architecture Refactoring
1150
+ - **ToolExecutionConfig**: Unified tool execution with new dataclass in `base_with_custom_tool_and_mcp.py`
1151
+ - **ResponseBackend Refactoring**: Unified tool execution flow eliminating duplicate code paths
1152
+ - **ChatCompletionsBackend Refactoring**: Consistent tool handling across Chat Completions providers
1153
+ - **ClaudeBackend Refactoring**: Unified tool execution methods for Claude backend
1154
+ - **Consistent Error Handling**: Standardized status reporting across all tool types
1155
+
1156
+ #### Gemini Backend Simplification
1157
+ - **Module Removal**: Removed `gemini_mcp_manager.py` and `gemini_trackers.py` modules
1158
+ - **Code Consolidation**: Refactored to use manual tool execution via base class
1159
+ - **Streamlined Logic**: Removed continuation logic and duplicate code
1160
+ - **Codebase Reduction**: Net reduction of 1,598 lines through consolidation
1161
+ - **Formatter Updates**: Updated `_gemini_formatter.py` for simplified tool conversion
1162
+
1163
+ #### Custom Tool System Enhancement
1164
+ - **ToolManager Improvements**: Enhanced category management capabilities
1165
+ - **Registration System**: Improved tool registration and validation
1166
+ - **Result Handling**: Enhanced error reporting and async execution support
1167
+ - **Schema Generation**: Improved tool schema generation for LLM consumption
1137
1168
 
1138
1169
  #### Configuration Files
1139
- - `gpt5mini_gemini_context_window_management.yaml` - Multi-agent with automatic context compression
1140
- - `gpt5mini_gemini_research_to_implementation.yaml` - Research-to-implementation workflow with memory
1141
- - `gpt5mini_high_reasoning_gemini.yaml` - High reasoning agents with memory integration
1142
- - `gpt5mini_gemini_baseline_research_to_implementation.yaml` - Baseline research workflow for comparison
1143
- - `single_agent_compression_test.yaml` - Single agent testing context compression behavior
1144
-
1145
- #### Documentation
1146
- - Complete memory system user guide: `docs/source/user_guide/memory.rst`
1147
- - Design decisions documentation explaining architectural choices
1148
- - API reference for PersistentMemory, ConversationMemory, and ContextMonitor classes
1149
- - Comprehensive troubleshooting guide and monitoring instructions
1170
+ - `ag2_lesson_planner_example.yaml` - AG2 nested chat as custom tool
1171
+ - `langgraph_lesson_planner_example.yaml` - LangGraph workflows integrated
1172
+ - `agentscope_lesson_planner_example.yaml` - AgentScope agent integration
1173
+ - `openai_assistant_lesson_planner_example.yaml` - OpenAI Assistants as tools
1174
+ - `smolagent_lesson_planner_example.yaml` - SmoLAgent integration
1175
+ - `ag2_and_langgraph_lesson_planner.yaml` - Multi-framework collaboration
1176
+ - `ag2_and_openai_assistant_lesson_planner.yaml` - AG2 + OpenAI Assistants combo
1177
+ - `two_models_with_tools_example.yaml` - Multiple models with custom tools
1150
1178
 
1151
- #### Testing Infrastructure
1152
- - Memory test suite: `test_agent_memory.py`, `test_conversation_memory.py`, `test_orchestrator_memory.py`, `test_persistent_memory.py`
1179
+ ### Previous Achievements (v0.0.3 - v0.1.5)
1153
1180
 
1154
- ### Previous Achievements (v0.0.3 - v0.1.4)
1181
+ **Memory System (v0.1.5)**: Long-term semantic memory via mem0 integration with fact extraction and retrieval across sessions, short-term conversational memory for active context, automatic context compression when approaching token limits, cross-agent memory sharing with turn-aware filtering, session management for memory isolation and continuation, Qdrant vector database integration for semantic search
1155
1182
 
1156
1183
  ✅ **Multimodal Generation Tools (v0.1.4)**: Create images from text via DALL-E API, generate videos from descriptions, text-to-speech with audio transcription support, document generation for PDF/DOCX/XLSX/PPTX formats, image transformation capabilities for existing images
1157
1184
 
@@ -1271,21 +1298,22 @@ MassGen is currently in its foundational stage, with a focus on parallel, asynch
1271
1298
 
1272
1299
  We welcome community contributions to achieve these goals.
1273
1300
 
1274
- ### v0.1.6 Roadmap
1301
+ ### v0.1.7 Roadmap
1275
1302
 
1276
- Version 0.1.6 focuses on backend code refactoring for improved maintainability and developer experience:
1303
+ Version 0.1.7 focuses on agent task planning and rate limiting for improved coordination and cost management:
1277
1304
 
1278
1305
  #### Planned Features
1279
- - **Backend Code Refactoring**: Major code refactoring for improved maintainability and developer experience with better code organization, modularity, and architectural improvements
1306
+ - **Agent Task Planning System**: Enable agents to organize complex multi-step work with task plans, dependency tracking, and progress monitoring via 8 new MCP planning tools
1307
+ - **Gemini Rate Limiting System**: Multi-dimensional rate limiting (RPM, TPM, RPD) to prevent API spam and manage costs with model-specific limits and configurable thresholds
1280
1308
 
1281
1309
  Key technical approach:
1282
- - **Code Architecture**: Enhanced code organization with improved modularity and separation of concerns
1283
- - **Developer Experience**: Simplified backend extension points, improved API clarity, better error handling and debugging support
1284
- - **Quality Assurance**: Comprehensive testing to ensure no functionality regressions
1310
+ - **Task Planning**: MCP-based planning tools with dependency graphs, status tracking, and maximum 100 tasks per plan safety limit
1311
+ - **Rate Limiting**: Sliding window tracking, external YAML configuration, optional CLI flag, mandatory cooldown periods after startup
1312
+ - **Configuration**: Both features are optional and configurable via flags (`enable_agent_task_planning`, `--rate-limit`)
1285
1313
 
1286
- **Target Release**: November 1, 2025 (Friday @ 9am PT)
1314
+ **Target Release**: November 3, 2025 (Monday @ 9am PT)
1287
1315
 
1288
- For detailed milestones and technical specifications, see the [full v0.1.6 roadmap](ROADMAP_v0.1.6.md).
1316
+ For detailed milestones and technical specifications, see the [full v0.1.7 roadmap](ROADMAP_v0.1.7.md).
1289
1317
 
1290
1318
  ---
1291
1319
 
@@ -1,8 +1,9 @@
1
- massgen/__init__.py,sha256=FVfyqtltRkkz28-ckPTLKvNAPCLV6tPss8DqaZ_moA8,7974
1
+ massgen/__init__.py,sha256=yIq-NMGL6E2DUPoiFD1EXYM58NQT8-jCYUHkHK1052o,7974
2
2
  massgen/agent_config.py,sha256=wC4_V858My4yDvajLDqo0A84hSNqzj9kEU7v_9fl6RQ,33136
3
3
  massgen/chat_agent.py,sha256=YYvU60wwjY3upOePVS27-3MPlkME7HzrYCx8B772OSo,37698
4
- massgen/cli.py,sha256=dLvvijXB-WdquJTK2NqGkA7BVBJ2wkn-peFsYHEVVZ8,130307
5
- massgen/config_builder.py,sha256=J881XcXqUwX_fGNAahGK0RG-zJbkWHYS-O-C8y6rWxA,142182
4
+ massgen/cli.py,sha256=Lce6PNT8txokKBlMxM0VVa5ItQKpETXSHduw4OHkV8U,132873
5
+ massgen/config_builder.py,sha256=LAjqtwtPV-S2tuMptFAPzzwCWZvXWaiiI-1Y03ld-9E,141656
6
+ massgen/config_validator.py,sha256=2ToWHNMEqQSlydZfSstnvUxqIcum0pdMX_Royv-8tKQ,40684
6
7
  massgen/coordination_tracker.py,sha256=_r8Man3uomovpXKHrlc4YBI030tkuavYQ-6fEk2JsfM,28201
7
8
  massgen/logger_config.py,sha256=BalZOpvGyeejyI5Q8e8aa9OG3dvYf7VaR-k7u9MLZBg,25457
8
9
  massgen/message_templates.py,sha256=yVtynIjwn4bG6bUJ5uAW174LO6-w7jYbG07KCJTDpcY,55900
@@ -27,21 +28,19 @@ massgen/api_params_handler/_response_api_params_handler.py,sha256=3ZtMnMqwMtGteV
27
28
  massgen/backend/__init__.py,sha256=hIxCbgDqHgO6zzFXnulR8dx2gm1Yi4IDdutDsja1fSg,1749
28
29
  massgen/backend/azure_openai.py,sha256=hyefku806OPzy_eozz0RU8gcLmYosj-5IwaDXZHIZ2A,18512
29
30
  massgen/backend/base.py,sha256=UQWk6nSGnarHmOIzBN2xNNJNeh06WOW0M_6s8E-aexA,21419
30
- massgen/backend/base_with_custom_tool_and_mcp.py,sha256=Rs-c7AFBehj6vj0UFrg-LKwlY-YUbtO3lnSoXIhx4bg,58728
31
- massgen/backend/capabilities.py,sha256=kPM_yjnzI34XuZnYw9hlkcUNRvqlZUKdbKVjH_A4iQg,13229
32
- massgen/backend/chat_completions.py,sha256=V2xSIGEsxCfewEbeN7LXI3yQdoPecUOCY_pbKPvs4N4,36646
33
- massgen/backend/claude.py,sha256=ttYzZoUlJEOET_WE0-qvseUHBs7YaTix2mBSCLoXH1I,59426
31
+ massgen/backend/base_with_custom_tool_and_mcp.py,sha256=iBHl7v2qnFVRa-8v2F36vq14Kb641VsSYqTS9uOkOcU,75641
32
+ massgen/backend/capabilities.py,sha256=tu9v7T8-p9yO7GZjUz_M0RlBqfWqIqvGI97seRe8uZs,14390
33
+ massgen/backend/chat_completions.py,sha256=oWRQN5srP1mVQLyL4JIoWmGlyY92syrTIY95gMtK27w,32061
34
+ massgen/backend/claude.py,sha256=WqpJUTaK3ctCZ46JGI9M9VvmVSPfmH_QjxW94YroKKk,59387
34
35
  massgen/backend/claude_code.py,sha256=1x1o8oGl40FA-g3Ulk4n6_lS35prQIQPQ5JdPdKD8Bk,69304
35
36
  massgen/backend/cli_base.py,sha256=SlaDxjUdyhhbby6XqU8FdTCtcLuAGR0AmQePDRDSDW4,6820
36
37
  massgen/backend/external.py,sha256=uKl91wgJP4psSBuvBCg33nH8bkMcuNVoKE4vNaCNXP4,4300
37
- massgen/backend/gemini.py,sha256=2wPezTM76DltibBEL2s1PbxTmkfAYd0olR7MiLsbdGI,117327
38
- massgen/backend/gemini_mcp_manager.py,sha256=Uakj7TTrrbqGkj70aE2avNHInYJevkZ41H3sfcnzL34,23635
39
- massgen/backend/gemini_trackers.py,sha256=MQCr1KcDIfWClXCWWqpMDMx8eB38GeCSmm-4-xs89CQ,12557
38
+ massgen/backend/gemini.py,sha256=3t8wNOYkvQvkS8Fr4EY1yNbNEQr9UFctU0fVf-dlQEc,67822
40
39
  massgen/backend/gemini_utils.py,sha256=fv5KoiEqabmoe2BRHQ0Ztz2aTJgm05txrfKICDWhYik,2778
41
- massgen/backend/grok.py,sha256=H1AjXBTZWGi0qVoQ305gb8WzvChqnB_HQQxncPGeHvU,4147
40
+ massgen/backend/grok.py,sha256=qANQzY3DlvUpDLmPTpvN_ilJHeOTklJs4I3_iLdbrH8,4230
42
41
  massgen/backend/inference.py,sha256=PT_e9fDEHlME0TtJT7_dse2aPtaHliYul9D52n_nXns,5971
43
42
  massgen/backend/lmstudio.py,sha256=UEd3Wkdy9r5ceJ3oM7_LR3MYEQv4ghcn2je5F1d-dyU,7267
44
- massgen/backend/response.py,sha256=IlInve8toViBPK_2zYro7HpCI2NocuvztHb1wJQw75o,57063
43
+ massgen/backend/response.py,sha256=Kk1l37lmpxCnGCimyq8mV-b5xPKhejV1mVcEKxsILfA,53170
45
44
  massgen/backend/docs/BACKEND_ARCHITECTURE.md,sha256=so30oNBwmJBeQz3rHuFCECJjC2Sufwc40--2Rb01jeU,4483
46
45
  massgen/backend/docs/CLAUDE_API_RESEARCH.md,sha256=maYwOERkRotnkS2_YJoDTbe6ZDdI-DccKgR1oXHtPxA,9842
47
46
  massgen/backend/docs/Function calling openai responses.md,sha256=ffrh5nEkO0tQGO8vJeamcWsgIEB_37XShrSYKLZldTg,37480
@@ -55,7 +54,7 @@ massgen/backend/docs/OPENAI_response_streaming.md,sha256=ees0GpokNKgg_aAuAODJifD
55
54
  massgen/backend/docs/inference_backend.md,sha256=NNxvh6JWc2BPWLQrAJKXsXAyvggT-_KRHmboulYNw7Y,6372
56
55
  massgen/backend/docs/permissions_and_context_files.md,sha256=PWWbSHlLN51Icqz5FMRA68Xm0dkl65r84pi3AKcL1lQ,40516
57
56
  massgen/configs/BACKEND_CONFIGURATION.md,sha256=eJL8dBpGnb3o705R0Uk5QbWanKG9C30jFd8U3gqlbeE,13051
58
- massgen/configs/README.md,sha256=sciV_NIhxs89MITjrBfSWXoIZ1Bb5ixe0fI-mNE56DY,35369
57
+ massgen/configs/README.md,sha256=GSdb3UKGg9sRXl30K-JN_Ui2QQMLWCw5Ykr5hNUWotM,37849
59
58
  massgen/configs/ag2/ag2_case_study.yaml,sha256=kiQanWKY3VyZD6Sl-0ZBMOcWoOWU2AF26IJKKhKak4k,767
60
59
  massgen/configs/ag2/ag2_coder.yaml,sha256=jtIBULpg55BthnQ-YRXrJ1xG7Q_IqK-1N5qCitC_A_4,1131
61
60
  massgen/configs/ag2/ag2_coder_case_study.yaml,sha256=3mE5mq9zU7V6RZ_XsgiA_-4S04zCNCAYPH7FmTE1suE,1273
@@ -131,42 +130,42 @@ massgen/configs/tools/code-execution/docker_with_sudo.yaml,sha256=dazWZYH2xt6TI9
131
130
  massgen/configs/tools/code-execution/multi_agent_playwright_automation.yaml,sha256=Y730nR5O737u85xmbkXX-Gb3yDIgrnx2HRNNijQYWG4,2124
132
131
  massgen/configs/tools/custom_tools/claude_code_custom_tool_example.yaml,sha256=2pksSj-t_HVuCuEUJl7O1yX5lAs5OqdarVBHGT4lmeU,1278
133
132
  massgen/configs/tools/custom_tools/claude_code_custom_tool_example_no_path.yaml,sha256=RogCKe-ZF2FNNVX8QBKbg-k1g1s2jzqXF6zWw5YgZWw,1085
134
- massgen/configs/tools/custom_tools/claude_code_custom_tool_with_mcp_example.yaml,sha256=_XVYv6OjAN5glVLkp-8g30icWVz5hGvzzu8tUDF9EtM,1797
133
+ massgen/configs/tools/custom_tools/claude_code_custom_tool_with_mcp_example.yaml,sha256=cBvs93UJP84lAgR3Ogv1U5gY4YVhO-JTQeTEMDUyUDc,1984
135
134
  massgen/configs/tools/custom_tools/claude_code_custom_tool_with_wrong_mcp_example.yaml,sha256=4lBy0prZ8DvfM0PE3EqrOrCHVJCH7Ql6sKlaGF4esgg,1775
136
135
  massgen/configs/tools/custom_tools/claude_code_wrong_custom_tool_with_mcp_example.yaml,sha256=s31uZUgYepu-9RhM7ZPQ7rqGL4nQY1P_lbIdCCDqb3s,1732
137
136
  massgen/configs/tools/custom_tools/claude_custom_tool_example.yaml,sha256=FFTBRdsxvCMKY0O29jhOuSvFr91pDuviysuzfRjhHjk,977
138
- massgen/configs/tools/custom_tools/claude_custom_tool_example_no_path.yaml,sha256=hqqoy_Ud7YZIbj88jfFCrABjfdb0Y6xg2qIkRuzEcaw,896
139
- massgen/configs/tools/custom_tools/claude_custom_tool_with_mcp_example.yaml,sha256=XdjRJc20VX5KHEihpqITI6A2c1pMN2of8fysiQeCN0A,1604
137
+ massgen/configs/tools/custom_tools/claude_custom_tool_example_no_path.yaml,sha256=fv5DdPCQdazyiegx0KNY6klgsZX7J1RnJMo4JKZMoyw,903
138
+ massgen/configs/tools/custom_tools/claude_custom_tool_with_mcp_example.yaml,sha256=8wsw4HZ6nFrUsBnaNtpvujsFUxtzLCnxg_NMc2I19B4,1786
140
139
  massgen/configs/tools/custom_tools/claude_custom_tool_with_wrong_mcp_example.yaml,sha256=V9VLjM16o59ipc_ktBqlLyYph27J4EBWTG0kB8nK_jc,1582
141
140
  massgen/configs/tools/custom_tools/claude_wrong_custom_tool_with_mcp_example.yaml,sha256=pJdkL0yQZscsHWJynUkmXv7BufZILs12PxAHM2AL8cI,1556
142
- massgen/configs/tools/custom_tools/computer_use_browser_example.yaml,sha256=cAqo5_8kOSOAB0x2HT26j0tJZ463qT9eVeCZL7VBJ0w,1935
143
- massgen/configs/tools/custom_tools/computer_use_docker_example.yaml,sha256=dsdADJgrVhTh5ogzSJkaw-KIy9RyLi-7YTByISuZ2MU,2146
141
+ massgen/configs/tools/custom_tools/computer_use_browser_example.yaml,sha256=tI_4hkDXSBs15T76gcls-r2GpLf4gMVYjpLUuCAOckw,1940
142
+ massgen/configs/tools/custom_tools/computer_use_docker_example.yaml,sha256=P0TdR6pE-YYEOhAzrQnlU6RpTKU5UA1yW9tvS5Nk-yE,2151
144
143
  massgen/configs/tools/custom_tools/computer_use_example.yaml,sha256=lXeVCFsCsKhqmlCNpBoieRe_WblzRgJcmf3Tt8Uvmi4,1902
145
144
  massgen/configs/tools/custom_tools/crawl4ai_example.yaml,sha256=Ug-wfOyStvs5Ubcn1epmxGSYbpfyVNr5ialPrJ8wtlk,2281
146
145
  massgen/configs/tools/custom_tools/gemini_custom_tool_example.yaml,sha256=5-XCjo2O7SqyTILWD8x3qPD7AWafLWkhBW5giN4JyMM,981
147
146
  massgen/configs/tools/custom_tools/gemini_custom_tool_example_no_path.yaml,sha256=Hd6zC7Mms1PxrNQ9KpmVFgSDeQCzejpIRzzJgVqVkQY,900
148
- massgen/configs/tools/custom_tools/gemini_custom_tool_with_mcp_example.yaml,sha256=YBNSQugHOWsaz3VGPf_RIj59bPPNssftVqHEkvYN8yE,1614
147
+ massgen/configs/tools/custom_tools/gemini_custom_tool_with_mcp_example.yaml,sha256=WiDGGAglAlERyoPx63Paowx9dInsOS1xj9Y5R7Esozc,1796
149
148
  massgen/configs/tools/custom_tools/gemini_custom_tool_with_wrong_mcp_example.yaml,sha256=d13-pVFtqAI-Zfo8kWzpr7nUW5iP6DPsMpz1XKk4Bqc,1586
150
149
  massgen/configs/tools/custom_tools/gemini_wrong_custom_tool_with_mcp_example.yaml,sha256=2E-W6iEHTiD1J7FRJmOnSeciCRz7KeONmYkWln-rOtM,1544
151
150
  massgen/configs/tools/custom_tools/github_issue_market_analysis.yaml,sha256=VTXtsiPdoUksAfN6scjfYtFjDLK-n8W5awxXPm6HfNs,3658
152
151
  massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_example.yaml,sha256=kFMxb2UiRtGy6YfSWo1b0uCVsB8jULcfj-noEiLMYFA,960
153
152
  massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_example_no_path.yaml,sha256=EmuMhlphEMr3-wKlC2mip3pQbaEQ2cI113tTp4ex43Y,897
154
- massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_with_mcp_example.yaml,sha256=6fy-O_NOzy1_rigu0Iyl3HmJC59X12oeHWT_dXf0uJ4,1605
153
+ massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_with_mcp_example.yaml,sha256=sqqnSJMa-MsipvLntMv52ozF4wAQtKWxJGU4m8sJSMY,1790
155
154
  massgen/configs/tools/custom_tools/gpt5_nano_custom_tool_with_wrong_mcp_example.yaml,sha256=xruzmYhWQzhkdA_K5xfwpa0jnFbs0WkCf1FaxpjpN1M,1583
156
155
  massgen/configs/tools/custom_tools/gpt5_nano_wrong_custom_tool_with_mcp_example.yaml,sha256=3AF4MsgEo6K9uHdWnbcQyzXcDQBjN3RlTSbHv_PgJ9Q,1557
157
156
  massgen/configs/tools/custom_tools/gpt_oss_custom_tool_example.yaml,sha256=C0i07OuIP5iaucT1W0O9LIKAhOzEB1uBxHt4BuLGCrU,1013
158
157
  massgen/configs/tools/custom_tools/gpt_oss_custom_tool_example_no_path.yaml,sha256=7p-VfqnmR93R8gOaomg4AcJJO9cvKi-q2dpIi6Jb6jw,939
159
- massgen/configs/tools/custom_tools/gpt_oss_custom_tool_with_mcp_example.yaml,sha256=drzRyshA6fPttgB0jxi9NF0Y3ybHZ5OqaBePLHo5sdE,1571
158
+ massgen/configs/tools/custom_tools/gpt_oss_custom_tool_with_mcp_example.yaml,sha256=zB-5n_aRHtpvOfFn3ykdDCv2dDVonNTiAwB6Oocpv3w,1754
160
159
  massgen/configs/tools/custom_tools/gpt_oss_custom_tool_with_wrong_mcp_example.yaml,sha256=GGV-0Ob2z_TKvMqJDIdir8RgP8d2w4i4QwdrB13g9cQ,1625
161
160
  massgen/configs/tools/custom_tools/gpt_oss_wrong_custom_tool_with_mcp_example.yaml,sha256=FbReuXVVxbOYt76UMH6ZDrj07Z7MRYZUD33Xb0G7ki0,1583
162
161
  massgen/configs/tools/custom_tools/grok3_mini_custom_tool_example.yaml,sha256=A_4hqjiRCYq-YOc3v1TwCFkleyCuzcHuZ2HJu8BM2vQ,1064
163
162
  massgen/configs/tools/custom_tools/grok3_mini_custom_tool_example_no_path.yaml,sha256=LJk9912YYjJlZeDli9qLGj7Cb6GZOCrt3va8RjUXCIA,882
164
- massgen/configs/tools/custom_tools/grok3_mini_custom_tool_with_mcp_example.yaml,sha256=wdZc-sgtM0vPtPl6OQbIoOFX7Kd7swQeY-HzJqwgLYQ,1590
163
+ massgen/configs/tools/custom_tools/grok3_mini_custom_tool_with_mcp_example.yaml,sha256=brQO4wXKrnZuhw4pmrutED1qZpSgVQZtKEZQr83bDYs,1776
165
164
  massgen/configs/tools/custom_tools/grok3_mini_custom_tool_with_wrong_mcp_example.yaml,sha256=XTl7FyWG6YhXopDu-rTYfszChW2MnIYm1VHRMb-iewQ,1568
166
165
  massgen/configs/tools/custom_tools/grok3_mini_wrong_custom_tool_with_mcp_example.yaml,sha256=OIlL0kmchfYRO2iOc4CKBRXFDn41t7s1hdPtbeLIpBc,1542
167
166
  massgen/configs/tools/custom_tools/qwen_api_custom_tool_example.yaml,sha256=wOH48VkZqVFMLYU516NCjbzahH3xsB9bXPl0aGPQ8bM,1143
168
167
  massgen/configs/tools/custom_tools/qwen_api_custom_tool_example_no_path.yaml,sha256=YIs5661kFRYaPYju_Zj56c87NQ4fLICZTeO2mSPo9WU,959
169
- massgen/configs/tools/custom_tools/qwen_api_custom_tool_with_mcp_example.yaml,sha256=JYK_8tPZd-i9YHsiF6eVZSUrvX_DLQc20N8SIJJ5tq0,1667
168
+ massgen/configs/tools/custom_tools/qwen_api_custom_tool_with_mcp_example.yaml,sha256=VyqIO1USzSd9GkM3QDoUW1QJwEvG0Zq8rUL6jRKREvs,1851
170
169
  massgen/configs/tools/custom_tools/qwen_api_custom_tool_with_wrong_mcp_example.yaml,sha256=88QQN9-QLWhy22ScP9szU2Jq7RPTn2PrqyiIdVdkZlM,1645
171
170
  massgen/configs/tools/custom_tools/qwen_api_wrong_custom_tool_with_mcp_example.yaml,sha256=LZEfPLesrNZCzUeYpQWOHBe1FNugaIIOoxfNTHcR68k,1619
172
171
  massgen/configs/tools/custom_tools/qwen_local_custom_tool_example.yaml,sha256=qQymbhsCDE4RZsB2TQLUHg5_Cdm1u2Zoh4aW98Xkco0,1083
@@ -174,7 +173,14 @@ massgen/configs/tools/custom_tools/qwen_local_custom_tool_example_no_path.yaml,s
174
173
  massgen/configs/tools/custom_tools/qwen_local_custom_tool_with_mcp_example.yaml,sha256=zfvh9RNycLiPAauQmw0_qEAO2qaHBAf-sAvYpKiP87s,1609
175
174
  massgen/configs/tools/custom_tools/qwen_local_custom_tool_with_wrong_mcp_example.yaml,sha256=73JeuKxgCHz6nkquj5mANDcTBkW8Cg1zjCVtUGqYdJM,1587
176
175
  massgen/configs/tools/custom_tools/qwen_local_wrong_custom_tool_with_mcp_example.yaml,sha256=ruGn-4X-ObShSY3ZqtTSxee6_TmBniJRKF7I_3to4CM,1561
177
- massgen/configs/tools/custom_tools/multimodal_tools/playwright_with_img_understanding.yaml,sha256=V4K3I7sv1AVWH_8skm_ZntCAny21MSu5nvIbWALjg3w,3594
176
+ massgen/configs/tools/custom_tools/two_models_with_tools_example.yaml,sha256=0gcO7UVzOHa97iM6kNHM306PZGUZ9w85N0lDw927XB0,1937
177
+ massgen/configs/tools/custom_tools/interop/ag2_and_langgraph_lesson_planner.yaml,sha256=ioTbUGiC93lsGAWlaj8ZGq7tOpA4nJrkx2Gz_CFBtlE,2835
178
+ massgen/configs/tools/custom_tools/interop/ag2_and_openai_assistant_lesson_planner.yaml,sha256=CN1dAM_byPC7xG0rxcyJFsV45T9RCXezBdZYA_S4c3Q,2953
179
+ massgen/configs/tools/custom_tools/interop/ag2_lesson_planner_example.yaml,sha256=N_D0PhtnVMc7b7RFJXThdBQzebwPUXUx7z8kqPohwKk,2269
180
+ massgen/configs/tools/custom_tools/interop/agentscope_lesson_planner_example.yaml,sha256=RAmmhBmg9lfo3awgph5NrFRTf7TkRmFR_60crOCNZJo,2389
181
+ massgen/configs/tools/custom_tools/interop/langgraph_lesson_planner_example.yaml,sha256=2j9Go61Tre1vdrUIy9CRHaDXHaebGqz4saSjcm95JZg,2384
182
+ massgen/configs/tools/custom_tools/interop/openai_assistant_lesson_planner_example.yaml,sha256=8Aty80housjF6UW00znOOde_u0QZ4SSc_NJiQG2CAVQ,2836
183
+ massgen/configs/tools/custom_tools/interop/smolagent_lesson_planner_example.yaml,sha256=3TzdgfxOJ-7QaSE-HApnk5JxzFYPCfeeQi_BoWC7aJQ,2314
178
184
  massgen/configs/tools/custom_tools/multimodal_tools/text_to_file_generation_multi.yaml,sha256=RcZ2oJHPdsCxH2gFZOyXTZRFuuxCPtVJRnpPxjXPmKM,3334
179
185
  massgen/configs/tools/custom_tools/multimodal_tools/text_to_file_generation_single.yaml,sha256=Jl9ixbRi9LvdnSia6zOIJ5SJJr_B57WYfI5nlUum1Ko,1608
180
186
  massgen/configs/tools/custom_tools/multimodal_tools/text_to_image_generation_multi.yaml,sha256=1LYKeh5EXFgECbGe2QsQFRN4OsZAiAC-Z02iio3gheo,1946
@@ -187,7 +193,6 @@ massgen/configs/tools/custom_tools/multimodal_tools/understand_audio.yaml,sha256
187
193
  massgen/configs/tools/custom_tools/multimodal_tools/understand_file.yaml,sha256=WHXS0vdUTYBojBOP-ZenwJIv85Z5LVEadCK08CMvnnc,1366
188
194
  massgen/configs/tools/custom_tools/multimodal_tools/understand_image.yaml,sha256=i67DM3NoOPmWKGrW_lIno8vEFZwD3HEBFfZA9kOE4hQ,1316
189
195
  massgen/configs/tools/custom_tools/multimodal_tools/understand_video.yaml,sha256=5-KLpYnVsJLOinv0-z1wUh1zTB9NltxfaNqw-aNOx9k,1350
190
- massgen/configs/tools/custom_tools/multimodal_tools/understand_video_example.yaml,sha256=LfdJxppclGnz764y-9BR_d0ksmUA89Y5DAeqs6ch1og,1664
191
196
  massgen/configs/tools/custom_tools/multimodal_tools/youtube_video_analysis.yaml,sha256=ih8hHLjETAOreye6HEbxc6AntCeUSQ2-uf01lyjOeg4,2102
192
197
  massgen/configs/tools/filesystem/cc_gpt5_gemini_filesystem.yaml,sha256=eCnljU999bu5GG7Sl1ANdkojxnjU1vvQltmtcMjpiCM,831
193
198
  massgen/configs/tools/filesystem/claude_code_context_sharing.yaml,sha256=MvNtesvnJC2nvq5cXkCzwt7oR2ApeO3xtmrZzy8Jjks,3060
@@ -258,7 +263,7 @@ massgen/formatter/__init__.py,sha256=t3qDPvytyzIBkqYW9CCqTflikQ8ynw_AlF0PFgnH9Yc
258
263
  massgen/formatter/_chat_completions_formatter.py,sha256=3ezx30SDf4XHQac0qRWfgobCs7iS7vlsKpSrgymmq-c,16034
259
264
  massgen/formatter/_claude_formatter.py,sha256=J3fzg17dOJPdK4oEDCkkOsnx92J-7EOye3gpXoNqKUA,15435
260
265
  massgen/formatter/_formatter_base.py,sha256=aoAzCQwDQC8vCOS_0lgFzTWue2nENxXbGUMw76uetqw,4790
261
- massgen/formatter/_gemini_formatter.py,sha256=7G3Sw54vJc7fGUC-s_NKkDrQJh0CqM_RNHTfUfk6RvU,19447
266
+ massgen/formatter/_gemini_formatter.py,sha256=hAY7WMigBzYpNW4Oure8mN06V3rf6JWw23KEGPg1vTE,21070
262
267
  massgen/formatter/_response_formatter.py,sha256=DKGZwF_QVnaSXE6Bq8iw-jdcrLALQn_AM74MYCnZFtA,14245
263
268
  massgen/frontend/__init__.py,sha256=mF_-mNFccS9V1SwqKD7_FB2mvzI2Agzuk3orxtxsWDc,658
264
269
  massgen/frontend/coordination_ui.py,sha256=A2jW3pj8dKeZ1_KV2sxkJvJLHdmi67H0jJZU2Eu9MdU,50606
@@ -307,6 +312,7 @@ massgen/tests/custom_tools_example.py,sha256=-f6_iGfEipznkKVKdzZwgGyQXw9JzOm9Lwc
307
312
  massgen/tests/mcp_test_server.py,sha256=hx1dKMxFufzynG6sCd2117ma0ywPy9hiVjkUsAxtsP8,5660
308
313
  massgen/tests/multi_turn_conversation_design.md,sha256=q9vMFNZ-LOTqZdI8oOWAQjPIY773s_mOXptq582Pk6E,7501
309
314
  massgen/tests/multiturn_llm_input_analysis.md,sha256=Xw8PX0oAIbF_zjlRXCA62EpX1xAOGUq9brYl3UkyAR0,6997
315
+ massgen/tests/test_ag2_lesson_planner.py,sha256=4X8CM37SaNMmhd1Fe3f_3CWm6sTWG7cWtcH9hXIVuaw,7843
310
316
  massgen/tests/test_agent_memory.py,sha256=bTTPIkyecYRm7yu9f5080xxQcdDIKW45EFCj-RrP4Us,18541
311
317
  massgen/tests/test_azure_openai_backend.py,sha256=a9JFdCnDDkG_PKjLxN8QqBwyzP_aNNlP543iST2pyPw,6663
312
318
  massgen/tests/test_backend_capabilities.py,sha256=MXIO-4ia07a-95JbyyBeIlz79B-eResn8ej2fpiX6II,10966
@@ -321,6 +327,7 @@ massgen/tests/test_claude_code_orchestrator.py,sha256=1bFLHQSgPqw2ecPjoZpsSg5lw8
321
327
  massgen/tests/test_cli_backends.py,sha256=6KPYnNgwGYRCGIXJTNWBCBHK1w8ylrBWFqt_HBWlelk,5918
322
328
  massgen/tests/test_code_execution.py,sha256=fbXNg7NeUpuodpixeR7WhNAAtk9Je1VLwQQfw6N3CYU,30099
323
329
  massgen/tests/test_config_builder.py,sha256=OcDfeVcKp_7zUruujNwKkpf0pwQ5f5ZzrgnHQYiEA2g,17781
330
+ massgen/tests/test_config_validator.py,sha256=CJ81pvmAclJ4I1czD1-HYNT07p_0ZW1OaXKbZjCOm9w,39519
324
331
  massgen/tests/test_conversation_memory.py,sha256=o_wrjvVYB113Y24JF0s6n1Re51ly1GKDG-1LhDxlyqk,11398
325
332
  massgen/tests/test_custom_tools.py,sha256=zUOjlZdT1eC7jgx28Z3TfzUTqFvAmRumK2Uv-lq1f3E,12905
326
333
  massgen/tests/test_external_agent_backend.py,sha256=1ImeUo0tQIdaG7ASn1X-rkuHBuAUrmk3d4l8U4LaJHI,3948
@@ -330,6 +337,7 @@ massgen/tests/test_grok_backend.py,sha256=Dw7fFcyXPOL8x0N4aCRHjTAuvxmtyLp6Tj02c_
330
337
  massgen/tests/test_http_mcp_server.py,sha256=GjYOIUTk5skBWgFLwZz9UyRJPjjHCrcsWnlslOUQ5M4,1042
331
338
  massgen/tests/test_integration_simple.py,sha256=Dps0m3Nfjqphi_1cLTultnfqxJTonL3aZxgq7kkewZ8,6147
332
339
  massgen/tests/test_intelligent_planning_mode.py,sha256=T2KjezqA6_1Ixj8uIEpXb9yuN0kG8tINfkl2C7KyWu8,24685
340
+ massgen/tests/test_langgraph_lesson_planner.py,sha256=BtiyTo3k3fCd-29jqhfKrSXwCLDbs8fW3t0gv4qF0bY,8009
333
341
  massgen/tests/test_mcp_blocking.py,sha256=rMvkozLGbEScYj01p8gfQmX2gssGriCIVDVo1e2bplU,4606
334
342
  massgen/tests/test_message_context_building.py,sha256=8AXcVDtv0R8uI-1PVLwYVFSWP-t3KeIDvy7vifrLPyU,10563
335
343
  massgen/tests/test_multimodal_size_limits.py,sha256=y5UAb48PqgSnsB467GRU50A0Rmi8f-hr6FpEGU40BCk,14968
@@ -352,17 +360,23 @@ massgen/tests/memory/test_simple_compression.py,sha256=8WFSucWaHkHRA8lMJ5jm1Ki6y
352
360
  massgen/token_manager/__init__.py,sha256=SxFK64M3S69E51d1M37pq38O39mIZp-9TMxAspwR3wY,143
353
361
  massgen/token_manager/token_manager.py,sha256=5S5uzLw2Zec9P3bYA1lPNluxgFg_wi6W151pGuHfb-Y,16903
354
362
  massgen/tool/README.md,sha256=wauBHnWMUIQiGendrYUeUFW7LesRznGpJx9TR5qJpEU,24365
355
- massgen/tool/__init__.py,sha256=YrLYvYDtVcTKs6WtwF4rtR90uoLGMmXXTedTq9GiIY4,1114
363
+ massgen/tool/__init__.py,sha256=AXbjJWFCNELYNhJJXVG0Pgo847sUuV7AOaoFFLIOSCs,906
356
364
  massgen/tool/_async_helpers.py,sha256=SyfWZ_fLLq2knwM5j4TaYVV1cTWElxWRSzH1FkapcL8,2411
365
+ massgen/tool/_decorators.py,sha256=Aq5EFqRRxqjmK80f7VczYDqOxzm4z4lYKWVJq2UhXYc,1993
357
366
  massgen/tool/_exceptions.py,sha256=HGFXB1-cpj1bLCRtiVAP8BeiyBdzVWWsNGekQCvergA,1188
358
- massgen/tool/_manager.py,sha256=xMK_rLWfqyvVcolDI6ZH5X6pUDMbFt_ppgg511t7HtI,23549
359
- massgen/tool/_registered_tool.py,sha256=3hxyrfWzxNYGfhXOCcOZWr9vbIPmAc1RLC9bSocG2W0,3013
360
- massgen/tool/_result.py,sha256=sDzLu38X0TCWsHq8rfZZhYB8TH3tcyPUv-sFvbDu3jc,1619
367
+ massgen/tool/_manager.py,sha256=T3EEv4YNr4bTu7v0OT05ZELqtfGvxL1AU9QjJfEt8OA,26992
368
+ massgen/tool/_registered_tool.py,sha256=PaKY19WjBdgqWf8NcuuTaj9OOAB_DG_mPfHvRKGxGAA,3148
369
+ massgen/tool/_result.py,sha256=8fRxQYmYywRyaSP4k5aaIeQn2ymb6lyCNvaKJ7nx3TM,1710
361
370
  massgen/tool/_basic/__init__.py,sha256=oTNQVOeoSE-7ZQ2IslWOy0_ou0IbUAvjPga8HrHTgqg,119
362
371
  massgen/tool/_basic/_two_num_tool.py,sha256=HzBBjZVfM1P01iIgLJhthpBcSevShId5NZIdmtFBE5A,498
363
372
  massgen/tool/_code_executors/__init__.py,sha256=fx__VbgCtWnnPh559PVMFYYBd880fqF2wPrcVCDbQt0,211
364
373
  massgen/tool/_code_executors/_python_executor.py,sha256=G7n9qknm5A3mxlVq5NwGuNeq39A6GuLxP0VcWB0A0Rg,2458
365
374
  massgen/tool/_code_executors/_shell_executor.py,sha256=SIV8-GyrlKNOqDB4SHYlK46ff82_eAV1CgxvChnG4FA,1872
375
+ massgen/tool/_extraframework_agents/ag2_lesson_planner_tool.py,sha256=oVC2WW0Fy2hcGqkfVjBpYFf1F36_HVYeJR6bI8NrEzE,8413
376
+ massgen/tool/_extraframework_agents/agentscope_lesson_planner_tool.py,sha256=nEj-3dDw-DmSel9ct2pakhgAKCaK7E9RBuQDBaK8oP8,9674
377
+ massgen/tool/_extraframework_agents/langgraph_lesson_planner_tool.py,sha256=ax3_tfBcB1IE5uoOAg9z-nWT2viAYcww30SDFDAUU0Q,9714
378
+ massgen/tool/_extraframework_agents/openai_assistant_lesson_planner_tool.py,sha256=JcMTuoOcku3iQqcO-HueKNCkXCxHPXILu8TKAa_o25I,8170
379
+ massgen/tool/_extraframework_agents/smolagent_lesson_planner_tool.py,sha256=MSdTWCgGKz93-OAOApVBhC-OpXoAesKQXxmH9tfoi_Q,5805
366
380
  massgen/tool/_file_handlers/__init__.py,sha256=GoQ5hNFkU6UyGux_NfMhvYqJIwMWV0FIYDT0hO6FV-Q,232
367
381
  massgen/tool/_file_handlers/_file_operations.py,sha256=r-ykRNVSTUv6HSWr86EsjGkW5r_LTJGcYo0VchByA0A,6915
368
382
  massgen/tool/_multimodal_tools/image_to_image_generation.py,sha256=VcSsyX4h8eLY0YDYwxaO-9wFixRaAaMfZ1y5LzA-pg0,11391
@@ -388,9 +402,6 @@ massgen/tool/workflow_toolkits/base.py,sha256=VcT6JOhtusYTwpc6FOdgG2Z-99ImsMNKud
388
402
  massgen/tool/workflow_toolkits/new_answer.py,sha256=x2KfMs0rM9_sJmIVYQf8Acq_NNXMIIFrmZBRFpP6y9I,4482
389
403
  massgen/tool/workflow_toolkits/post_evaluation.py,sha256=Zrp0sSdiiMm4IfiublcUAM-vMg-Duqp5WwJmVH9Rvng,9040
390
404
  massgen/tool/workflow_toolkits/vote.py,sha256=u-Tqr45OjkoaNajriLUYeQZnM69Am0M8HR-_yrDpasA,6106
391
- massgen/tools/__init__.py,sha256=e3V3j0F68KDQDdpkn6KUsbHds_asbfC0nVWVgmhnwjI,204
392
- massgen/tools/_planning_mcp_server.py,sha256=iWKGTl9XUwjlv3s44V945LwBpMDzvxVAfU7Z3Mt09Qg,16343
393
- massgen/tools/planning_dataclasses.py,sha256=srCMAi3-LGPjVSJ2rHUQvI-IAp32PEXE7evlG7MAGPw,14021
394
405
  massgen/v1/README.md,sha256=37ZEbNR0O5IcdqQXkqtvNCpmVX1Z_dO4HGcKreaP-0E,13631
395
406
  massgen/v1/__init__.py,sha256=hZUuhjtGlLJ-QW4Ty2V4IMlaoUB5oP0TSl0XeuCoWqU,2733
396
407
  massgen/v1/agent.py,sha256=toEN1JM1pop4ZqZj2zqCCJJtxHtMUPjTQgEI4hvnh8s,25341
@@ -411,9 +422,9 @@ massgen/v1/examples/fast-4o-mini-config.yaml,sha256=t7zmN8sWQrrWivjaBB9w_WHFDnU-
411
422
  massgen/v1/examples/fast_config.yaml,sha256=BDBCpSYJPzTZi9vAEGsCZ3lt3JV25RN-4Nf_17JAhUU,846
412
423
  massgen/v1/examples/production.yaml,sha256=hrNqzOqlQG1sL-5U8ZlA8QpCwGSoiCtqMu7Mi2gOd9s,2002
413
424
  massgen/v1/examples/single_agent.yaml,sha256=h8ysGIwPjvgnpRxTcBqw5nBz5D2MTXI_Ygdn4D9RdIA,1256
414
- massgen-0.1.5.dist-info/licenses/LICENSE,sha256=_r2TwhSv0GcpGeIKfwbz9z2qzOI62FHCfgSfnZ1z2fc,11386
415
- massgen-0.1.5.dist-info/METADATA,sha256=SRbvef4OIuyrgINJNRR7FW2UB7XK1aBpGWkkMekxYb4,65974
416
- massgen-0.1.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
417
- massgen-0.1.5.dist-info/entry_points.txt,sha256=On6OV7swWO0StsAXeOri3MzmuxhO9C-PUvKW-5pJ6gA,49
418
- massgen-0.1.5.dist-info/top_level.txt,sha256=jm8ZxEGdkjsh8aPWXvCpnexL_S2ZRkFeT9vl6vIm_3I,8
419
- massgen-0.1.5.dist-info/RECORD,,
425
+ massgen-0.1.6.dist-info/licenses/LICENSE,sha256=_r2TwhSv0GcpGeIKfwbz9z2qzOI62FHCfgSfnZ1z2fc,11386
426
+ massgen-0.1.6.dist-info/METADATA,sha256=rXbKbhPqn7dmHOU-EAmxah_i8ao2AhpIxuaSyMXTo7Q,67577
427
+ massgen-0.1.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
428
+ massgen-0.1.6.dist-info/entry_points.txt,sha256=On6OV7swWO0StsAXeOri3MzmuxhO9C-PUvKW-5pJ6gA,49
429
+ massgen-0.1.6.dist-info/top_level.txt,sha256=jm8ZxEGdkjsh8aPWXvCpnexL_S2ZRkFeT9vl6vIm_3I,8
430
+ massgen-0.1.6.dist-info/RECORD,,