claude-mpm 5.4.102__py3-none-any.whl → 5.4.104__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.
- claude_mpm/VERSION +1 -1
- claude_mpm/cli/executor.py +23 -17
- claude_mpm/config/agent_presets.py +7 -7
- claude_mpm/core/unified_config.py +9 -6
- claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/correlation_manager.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/auto_pause_handler.py +0 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +0 -0
- claude_mpm/hooks/claude_hooks/hook_handler.py +0 -0
- claude_mpm/hooks/claude_hooks/response_tracking.py +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-311.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-311.pyc +0 -0
- claude_mpm/scripts/start_activity_logging.py +0 -0
- claude_mpm/services/agents/agent_recommendation_service.py +8 -8
- claude_mpm/services/agents/loading/framework_agent_loader.py +75 -2
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/METADATA +1 -1
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/RECORD +28 -13
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/WHEEL +0 -0
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/entry_points.txt +0 -0
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/licenses/LICENSE-FAQ.md +0 -0
- {claude_mpm-5.4.102.dist-info → claude_mpm-5.4.104.dist-info}/top_level.txt +0 -0
claude_mpm/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
5.4.
|
|
1
|
+
5.4.104
|
claude_mpm/cli/executor.py
CHANGED
|
@@ -206,27 +206,33 @@ def execute_command(command: str, args) -> int:
|
|
|
206
206
|
"status": show_status,
|
|
207
207
|
}
|
|
208
208
|
|
|
209
|
-
# Get handler and
|
|
209
|
+
# Get handler and call it with argument list (same pattern as autotodos)
|
|
210
210
|
handler = handlers.get(subcommand)
|
|
211
211
|
if handler:
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
ctx = click.Context(command=handler)
|
|
212
|
+
try:
|
|
213
|
+
# Build argument list for Click command based on subcommand
|
|
214
|
+
click_args = []
|
|
216
215
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
216
|
+
# list command: --format, --hook-type
|
|
217
|
+
if subcommand == "list":
|
|
218
|
+
if hasattr(args, "format") and args.format:
|
|
219
|
+
click_args.extend(["--format", args.format])
|
|
220
|
+
if hasattr(args, "hook_type") and args.hook_type:
|
|
221
|
+
click_args.extend(["--hook-type", args.hook_type])
|
|
222
|
+
# clear command: --hook-type, -y
|
|
223
|
+
elif subcommand == "clear":
|
|
224
|
+
if hasattr(args, "hook_type") and args.hook_type:
|
|
225
|
+
click_args.extend(["--hook-type", args.hook_type])
|
|
226
|
+
if hasattr(args, "yes") and args.yes:
|
|
227
|
+
click_args.append("-y")
|
|
228
|
+
# diagnose command: hook_type (positional argument)
|
|
229
|
+
elif subcommand == "diagnose":
|
|
230
|
+
if hasattr(args, "hook_type") and args.hook_type:
|
|
231
|
+
click_args.append(args.hook_type)
|
|
232
|
+
# status and summary commands: no options
|
|
225
233
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
with ctx:
|
|
229
|
-
handler.invoke(ctx, **kwargs)
|
|
234
|
+
# Call Click command with argument list and standalone_mode=False
|
|
235
|
+
handler(click_args, standalone_mode=False)
|
|
230
236
|
return 0
|
|
231
237
|
except SystemExit as e:
|
|
232
238
|
return e.code if e.code is not None else 0
|
|
@@ -25,12 +25,16 @@ from typing import Any, Callable, Dict, List, Union
|
|
|
25
25
|
PresetResolver = Union[List[str], Callable[[], List[str]]]
|
|
26
26
|
|
|
27
27
|
# Core agents included in ALL presets (MIN and MAX)
|
|
28
|
+
# Standard 6 core agents for essential PM workflow functionality
|
|
28
29
|
CORE_AGENTS = [
|
|
29
30
|
"claude-mpm/mpm-agent-manager", # Agent lifecycle management
|
|
30
31
|
"claude-mpm/mpm-skills-manager", # Skills management
|
|
31
|
-
"
|
|
32
|
+
"engineer/core/engineer", # General-purpose implementation
|
|
33
|
+
"universal/research", # Codebase exploration and analysis
|
|
34
|
+
"qa/qa", # Testing and quality assurance
|
|
32
35
|
"documentation/documentation", # Documentation generation
|
|
33
|
-
"
|
|
36
|
+
"ops/core/ops", # Basic deployment operations
|
|
37
|
+
"documentation/ticketing", # Ticket tracking (essential for PM workflow)
|
|
34
38
|
]
|
|
35
39
|
|
|
36
40
|
PRESETS: Dict[str, Dict[str, Any]] = {
|
|
@@ -39,11 +43,7 @@ PRESETS: Dict[str, Dict[str, Any]] = {
|
|
|
39
43
|
# ========================================
|
|
40
44
|
"minimal": {
|
|
41
45
|
"description": "Core agents only - universal starter kit",
|
|
42
|
-
"agents": CORE_AGENTS
|
|
43
|
-
+ [
|
|
44
|
-
"qa/qa",
|
|
45
|
-
"ops/core/ops",
|
|
46
|
-
],
|
|
46
|
+
"agents": CORE_AGENTS, # All 8 core agents (no additional needed)
|
|
47
47
|
"use_cases": ["Any project type", "Quick start", "Learning"],
|
|
48
48
|
},
|
|
49
49
|
# ========================================
|
|
@@ -73,15 +73,18 @@ class AgentConfig(BaseModel):
|
|
|
73
73
|
)
|
|
74
74
|
|
|
75
75
|
# Required agents that are always deployed
|
|
76
|
+
# Standard 6 core agents for essential PM workflow functionality
|
|
77
|
+
# These are auto-deployed when no agents are specified in configuration
|
|
76
78
|
required: List[str] = Field(
|
|
77
79
|
default_factory=lambda: [
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"
|
|
80
|
+
"engineer", # General-purpose implementation
|
|
81
|
+
"research", # Codebase exploration and analysis
|
|
82
|
+
"qa", # Testing and quality assurance
|
|
83
|
+
"documentation", # Documentation generation
|
|
84
|
+
"ops", # Basic deployment operations
|
|
85
|
+
"ticketing", # Ticket tracking (essential for PM workflow)
|
|
83
86
|
],
|
|
84
|
-
description="Agents that are always deployed (core
|
|
87
|
+
description="Agents that are always deployed (standard 6 core agents)",
|
|
85
88
|
)
|
|
86
89
|
|
|
87
90
|
include_universal: bool = Field(
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
File without changes
|
|
@@ -30,16 +30,16 @@ class AgentRecommendationService:
|
|
|
30
30
|
Can be used by CLI, API, or future auto-configuration features.
|
|
31
31
|
"""
|
|
32
32
|
|
|
33
|
-
# Core agents always included -
|
|
33
|
+
# Core agents always included - Standard 6 core agents for essential PM workflow
|
|
34
|
+
# These agents are auto-deployed when no configuration exists
|
|
34
35
|
# Uses exact agent IDs from repository for consistency
|
|
35
36
|
CORE_AGENTS = {
|
|
36
|
-
"engineer",
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"security-agent",
|
|
37
|
+
"engineer", # General-purpose implementation
|
|
38
|
+
"research", # Codebase exploration and analysis
|
|
39
|
+
"qa", # Testing and quality assurance
|
|
40
|
+
"documentation", # Documentation generation
|
|
41
|
+
"ops", # Basic deployment operations
|
|
42
|
+
"ticketing", # Ticket tracking (essential for PM workflow)
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
# Map detected languages to recommended engineer agents
|
|
@@ -10,10 +10,19 @@ Loading precedence: Project → User → System
|
|
|
10
10
|
|
|
11
11
|
This service integrates with the main agent_loader.py to provide
|
|
12
12
|
markdown-based agent profiles alongside JSON-based templates.
|
|
13
|
+
|
|
14
|
+
Auto-Deployment: When no agents are configured, the standard 6 core agents
|
|
15
|
+
are automatically deployed:
|
|
16
|
+
- engineer: General-purpose implementation
|
|
17
|
+
- research: Codebase exploration and analysis
|
|
18
|
+
- qa: Testing and quality assurance
|
|
19
|
+
- documentation: Documentation generation
|
|
20
|
+
- ops: Basic deployment operations
|
|
21
|
+
- ticketing: Ticket tracking (essential for PM workflow)
|
|
13
22
|
"""
|
|
14
23
|
|
|
15
24
|
from pathlib import Path
|
|
16
|
-
from typing import Any, Dict, Optional
|
|
25
|
+
from typing import Any, Dict, List, Optional
|
|
17
26
|
|
|
18
27
|
from claude_mpm.agents.agent_loader import AgentTier, list_agents_by_tier
|
|
19
28
|
from claude_mpm.core.logging_utils import get_logger
|
|
@@ -21,6 +30,17 @@ from claude_mpm.core.unified_paths import get_path_manager
|
|
|
21
30
|
|
|
22
31
|
logger = get_logger(__name__)
|
|
23
32
|
|
|
33
|
+
# Standard 6 core agents that are auto-deployed when no agents are specified
|
|
34
|
+
# This list is the canonical source - other modules should import from here
|
|
35
|
+
CORE_AGENTS: List[str] = [
|
|
36
|
+
"engineer", # General-purpose implementation
|
|
37
|
+
"research", # Codebase exploration and analysis
|
|
38
|
+
"qa", # Testing and quality assurance
|
|
39
|
+
"documentation", # Documentation generation
|
|
40
|
+
"ops", # Basic deployment operations
|
|
41
|
+
"ticketing", # Ticket tracking (essential for PM workflow)
|
|
42
|
+
]
|
|
43
|
+
|
|
24
44
|
|
|
25
45
|
class FrameworkAgentLoader:
|
|
26
46
|
"""Loads agent profiles from project, user, and system directories with proper precedence"""
|
|
@@ -86,7 +106,7 @@ class FrameworkAgentLoader:
|
|
|
86
106
|
data_claude = package_path / "data" / "agents" / "CLAUDE.md"
|
|
87
107
|
if data_instructions.exists() or data_claude.exists():
|
|
88
108
|
return package_path / "data"
|
|
89
|
-
except Exception:
|
|
109
|
+
except Exception: # nosec B110 - intentional fallthrough to next location
|
|
90
110
|
pass
|
|
91
111
|
|
|
92
112
|
current = Path.cwd()
|
|
@@ -431,3 +451,56 @@ Please operate according to your profile specifications and maintain quality sta
|
|
|
431
451
|
"""
|
|
432
452
|
|
|
433
453
|
return instruction.strip()
|
|
454
|
+
|
|
455
|
+
def get_core_agents(self) -> List[str]:
|
|
456
|
+
"""
|
|
457
|
+
Get the standard 6 core agents for auto-deployment.
|
|
458
|
+
|
|
459
|
+
These agents are automatically deployed when no agents are specified
|
|
460
|
+
in the configuration. They provide essential PM workflow functionality.
|
|
461
|
+
|
|
462
|
+
Returns:
|
|
463
|
+
List of core agent IDs
|
|
464
|
+
|
|
465
|
+
Example:
|
|
466
|
+
>>> loader = FrameworkAgentLoader()
|
|
467
|
+
>>> core = loader.get_core_agents()
|
|
468
|
+
>>> 'engineer' in core
|
|
469
|
+
True
|
|
470
|
+
>>> len(core)
|
|
471
|
+
6
|
|
472
|
+
"""
|
|
473
|
+
return CORE_AGENTS.copy()
|
|
474
|
+
|
|
475
|
+
def get_agents_with_fallback(self) -> Dict[str, list]:
|
|
476
|
+
"""
|
|
477
|
+
Get available agents, falling back to core agents if none found.
|
|
478
|
+
|
|
479
|
+
This method implements the auto-deployment logic: when no agents
|
|
480
|
+
are found in any tier (project, user, system), it returns the
|
|
481
|
+
standard 6 core agents as a fallback.
|
|
482
|
+
|
|
483
|
+
Returns:
|
|
484
|
+
Dictionary with agent lists by tier. If no agents found in any tier,
|
|
485
|
+
returns core agents under 'fallback' key.
|
|
486
|
+
|
|
487
|
+
Example:
|
|
488
|
+
>>> loader = FrameworkAgentLoader()
|
|
489
|
+
>>> loader.initialize()
|
|
490
|
+
>>> agents = loader.get_agents_with_fallback()
|
|
491
|
+
>>> if 'fallback' in agents:
|
|
492
|
+
... print("Using core agents as fallback")
|
|
493
|
+
"""
|
|
494
|
+
available = self.get_available_agents()
|
|
495
|
+
|
|
496
|
+
# Check if any agents are found
|
|
497
|
+
total_agents = sum(len(agents) for agents in available.values())
|
|
498
|
+
|
|
499
|
+
if total_agents == 0:
|
|
500
|
+
logger.info(
|
|
501
|
+
"No agents found in configuration. "
|
|
502
|
+
"Auto-deploying standard 6 core agents."
|
|
503
|
+
)
|
|
504
|
+
return {"fallback": CORE_AGENTS.copy()}
|
|
505
|
+
|
|
506
|
+
return available
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
claude_mpm/BUILD_NUMBER,sha256=9JfxhnDtr-8l3kCP2U5TVXSErptHoga8m7XA8zqgGOc,4
|
|
2
|
-
claude_mpm/VERSION,sha256=
|
|
2
|
+
claude_mpm/VERSION,sha256=u2IW-FZis-WhBsFTnPey3Q0V0o8e-Zwv4EJx84eW-PU,8
|
|
3
3
|
claude_mpm/__init__.py,sha256=AGfh00BHKvLYD-UVFw7qbKtl7NMRIzRXOWw7vEuZ-h4,2214
|
|
4
4
|
claude_mpm/__main__.py,sha256=Ro5UBWBoQaSAIoSqWAr7zkbLyvi4sSy28WShqAhKJG0,723
|
|
5
5
|
claude_mpm/constants.py,sha256=pz3lTrZZR5HhV3eZzYtIbtBwWo7iM6pkBHP_ixxmI6Y,6827
|
|
@@ -39,7 +39,7 @@ claude_mpm/agents/templates/validation-templates.md,sha256=Y4_D7dphQaKigZWqKWvJ4
|
|
|
39
39
|
claude_mpm/cli/__init__.py,sha256=j5x0uyJ4bRrKY1V4626cQI66OZsBzRz6JN26gQBxYSQ,4568
|
|
40
40
|
claude_mpm/cli/__main__.py,sha256=KSy-J-vbTM2yXHOjsBJNZ60I2CJ2i5QP5zxsZV7-cjo,997
|
|
41
41
|
claude_mpm/cli/chrome_devtools_installer.py,sha256=efA_ZX1iR3oaJi3222079BQw6DEG8KYr2HVGtgVj2Gs,5637
|
|
42
|
-
claude_mpm/cli/executor.py,sha256=
|
|
42
|
+
claude_mpm/cli/executor.py,sha256=rAo-zxp_QmSDpwLVX-BiaXdDQZUxD-9BjjOzsRmuExw,14734
|
|
43
43
|
claude_mpm/cli/helpers.py,sha256=CypEhw0tbNH6_GzVTaQdi4w7ThCWO43Ep92YbJzPR4I,3638
|
|
44
44
|
claude_mpm/cli/parser.py,sha256=Vqx9n-6Xo1uNhXR4rThmgWpZXTr0nOtkgDf3oMS9b0g,5855
|
|
45
45
|
claude_mpm/cli/startup.py,sha256=JyNv5YZa_xC6B8fmw-mNxv0XK-XhIWFibJUz72Tg2H8,63021
|
|
@@ -164,7 +164,7 @@ claude_mpm/commands/mpm-version.md,sha256=YGmoK3xnOQS6UkOUG_N5uh-7vJ8Ey0bSD66Qpj
|
|
|
164
164
|
claude_mpm/commands/mpm.md,sha256=zAQJatuONUsVL3vgm7CxIyw648U75ds6c3Zx34xa3rw,968
|
|
165
165
|
claude_mpm/config/__init__.py,sha256=V2dyJQ8_gVCpNiCg8zYTQqE1RSeON5Zm8n5Ndkqhp1g,916
|
|
166
166
|
claude_mpm/config/agent_config.py,sha256=IpHt9jfY335dnWbFbZHz3fBwQr5afQMvQ1c1Uo4zGmA,14862
|
|
167
|
-
claude_mpm/config/agent_presets.py,sha256=
|
|
167
|
+
claude_mpm/config/agent_presets.py,sha256=XifeOkPwb0BULWDq5aIbhR7n06IOXtVQ-RIxAwRZqNU,15815
|
|
168
168
|
claude_mpm/config/agent_sources.py,sha256=UVXHbi18Hl3jD7fWZ_IAP9kc18EQONMJIRKsHp-c_yg,12626
|
|
169
169
|
claude_mpm/config/experimental_features.py,sha256=cH95HqMUEQL-_Hs833dAAC33GHMUE5e26qpOyiEtBWI,7546
|
|
170
170
|
claude_mpm/config/model_config.py,sha256=34JnIb_U19UYns3yLX-jjpuNywDnVZhiUSvvDzGzx0g,12410
|
|
@@ -218,7 +218,7 @@ claude_mpm/core/tool_access_control.py,sha256=dpdxxp_77SuxGM2C7SsHUZbtysJmHw1rLD
|
|
|
218
218
|
claude_mpm/core/types.py,sha256=Sv62QhMYvfxbt7oIGoAhhN_jxonFTeLRf-BuhxZ4vYw,7719
|
|
219
219
|
claude_mpm/core/typing_utils.py,sha256=qny3rA9mAeXqdLgUj9DZg642shw4LmLbkPqADN-765s,13314
|
|
220
220
|
claude_mpm/core/unified_agent_registry.py,sha256=YbL-oWeHU85zdf1mF7tyMHBYKtFBupsMeH9BCdzD6ZI,34161
|
|
221
|
-
claude_mpm/core/unified_config.py,sha256=
|
|
221
|
+
claude_mpm/core/unified_config.py,sha256=DSE5JZhLJNDAfSzb4hAKrj1_nrvfBfNgyHOqXplphVg,22120
|
|
222
222
|
claude_mpm/core/unified_paths.py,sha256=F2NYAK6RNtn_xsZnVHVfP7MErzDh_O9hyaa3B4OyT9A,36690
|
|
223
223
|
claude_mpm/core/framework/__init__.py,sha256=IJCp6-MQO8gW31uG8aMWHdNg54NgGvXb4GvOuwZF6Iw,736
|
|
224
224
|
claude_mpm/core/framework/formatters/__init__.py,sha256=OKkLN2x21rcbg3d3feZLixIS-UjHPlxl768uGmQy7Qc,307
|
|
@@ -343,12 +343,27 @@ claude_mpm/hooks/claude_hooks/installer.py,sha256=VbvVGMcrmCXQB3Pf9zOdjeGET2AFqb
|
|
|
343
343
|
claude_mpm/hooks/claude_hooks/memory_integration.py,sha256=73w7A5-3s5i1oYdkbEgw7qhgalQvSuJjfx6OFqfaw64,9963
|
|
344
344
|
claude_mpm/hooks/claude_hooks/response_tracking.py,sha256=bgX4iVQqmX0L3_GHyKs1q4CSIjnavdxYnJZT0GaT4gs,17148
|
|
345
345
|
claude_mpm/hooks/claude_hooks/tool_analysis.py,sha256=3_o2PP9D7wEMwLriCtIBOw0cj2fSZfepN7lI4P1meSQ,7862
|
|
346
|
+
claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-311.pyc,sha256=EGpgXqhPM0iRRZtCqHaLVQ6wDH42OH_M7Gt5GiFLyro,346
|
|
347
|
+
claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-311.pyc,sha256=X7A8O4KPXkuDaLDFbF7Izi1qVDyS0tQjHVo1xy_HzNQ,21172
|
|
348
|
+
claude_mpm/hooks/claude_hooks/__pycache__/correlation_manager.cpython-311.pyc,sha256=SQX5iiP9bQZkLL-cj_2tlGH7lpAzarO0mYal7btj3tc,3521
|
|
349
|
+
claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-311.pyc,sha256=76VtByCuOr7L1_snjeHo1iWDyD2QyvoMpAj1hrSq4-Q,45735
|
|
350
|
+
claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-311.pyc,sha256=ehLm68zhDmqOwzr1Di6xYjGuE9SRg0mvKePQfepuuQ4,30577
|
|
351
|
+
claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-311.pyc,sha256=9mpAKY4gNcbU5VvZ5tGbf2UM0uIEWdreKSUvVr_BKcM,33917
|
|
352
|
+
claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-311.pyc,sha256=YbwauQDKSGvXkT1972faalJLuxwyvq328DYQhkCnel0,10513
|
|
353
|
+
claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-311.pyc,sha256=-L-n4xvi1eHY48MdZ-7v249UaNfkuiIwfwxdPgxwd80,16730
|
|
354
|
+
claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-311.pyc,sha256=ZjcNfNY5Ht6FhalPeh7M7OzMffcey5iF4AVjDDg9kak,10694
|
|
346
355
|
claude_mpm/hooks/claude_hooks/services/__init__.py,sha256=OIYOKsUNw1BHYawOCp-KFK5kmQKuj92cCqCEPO0nwo0,585
|
|
347
356
|
claude_mpm/hooks/claude_hooks/services/connection_manager.py,sha256=6MhoPiSQSkG5Xsb9KjPk_eu60h6-v5uNXjn6ry255aA,10452
|
|
348
357
|
claude_mpm/hooks/claude_hooks/services/connection_manager_http.py,sha256=7YKEsD45us5SNnj-jpSyFBYbU0KrZ8FWoIdZDUeU2gI,7795
|
|
349
358
|
claude_mpm/hooks/claude_hooks/services/duplicate_detector.py,sha256=Fh9LmEMsVmQM9t0U1v2l_fuBwvNpVkl_0EF8Wu5KLHQ,3882
|
|
350
359
|
claude_mpm/hooks/claude_hooks/services/state_manager.py,sha256=QB0JPJQThTVg0TGRO3Dc_3y3bac-hkulgMqqzo_71ng,11189
|
|
351
360
|
claude_mpm/hooks/claude_hooks/services/subagent_processor.py,sha256=nJw1ERCMxq23ioZ5DKwprmwO0fuvuqpdFHJ03XaMiDo,16052
|
|
361
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-311.pyc,sha256=xBfLBSqnpcKfcQBWfh7xUm454g1lq1LvbO7SxGvcOPc,644
|
|
362
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager.cpython-311.pyc,sha256=9BnGRXKqMq5FI3vqUlho0NyMxJTiMD_Pn560x-4kNh4,10513
|
|
363
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-311.pyc,sha256=xN6QYqLTQ9I9qPDKsSikhAhncXrxYemjfQp4wLiiq9M,9774
|
|
364
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-311.pyc,sha256=Yy_REAUhJCiFjOhxeDb4v0qyEvEbUtCmXD9PAz40dhw,5321
|
|
365
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-311.pyc,sha256=TPkEc-Zi3oNS5dCXBpGbSZwg_8RQvzNzd4pVx9B3WeM,12364
|
|
366
|
+
claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-311.pyc,sha256=WffRFbZrgwiOypPUMgcm_LT18AtyGckgDny5IXhkogg,15554
|
|
352
367
|
claude_mpm/hooks/failure_learning/__init__.py,sha256=iJ80AKFHiT8DjIH2a72DQVJvL6nAFrizNA2yTKwZ4rw,1805
|
|
353
368
|
claude_mpm/hooks/failure_learning/failure_detection_hook.py,sha256=KENoB5N-dBm5hb0SxeIZtCvNKbmG2BKHOJSrSO-3Z_I,7500
|
|
354
369
|
claude_mpm/hooks/failure_learning/fix_detection_hook.py,sha256=XUk1bnBVLdfhQ9AMQSvGsTSeFQsKsVud2wbWX-Jjor8,7164
|
|
@@ -407,7 +422,7 @@ claude_mpm/services/version_service.py,sha256=QSCEVZ1yrbT2OrqjiFaGhT0oPJSMCX9Z84
|
|
|
407
422
|
claude_mpm/services/agents/__init__.py,sha256=ZkES34SfCrTzWjdoCZExRccPHXXWEBzech6dNEb3T9g,2547
|
|
408
423
|
claude_mpm/services/agents/agent_builder.py,sha256=ehnzIgQ3OcF5ThqvbmS4c4ZyA-hbpvF7YhMjTKNJQkA,16378
|
|
409
424
|
claude_mpm/services/agents/agent_preset_service.py,sha256=YpIKwaq52Pi4ox6ha3L9qTT4GHc-1nPeGgV0MWGRIAs,8588
|
|
410
|
-
claude_mpm/services/agents/agent_recommendation_service.py,sha256=
|
|
425
|
+
claude_mpm/services/agents/agent_recommendation_service.py,sha256=f3F6LkPG1S42ZE52o8QnSdFwZFsv_7vgegJ6bCNbWWk,9846
|
|
411
426
|
claude_mpm/services/agents/agent_review_service.py,sha256=1meV6u8FGbYMx1vhSsCX8OembWbF3gXfl26hRdGd95Y,10001
|
|
412
427
|
claude_mpm/services/agents/agent_selection_service.py,sha256=ItCXMuFv3XzBuZAVUvx74gMeRbXTCOBFh5vLlgurJKg,17951
|
|
413
428
|
claude_mpm/services/agents/auto_config_manager.py,sha256=WdrOaosxmK1iD-1Me7eZ-VJzMW-p8liei6iEjGkbodA,30706
|
|
@@ -497,7 +512,7 @@ claude_mpm/services/agents/deployment/validation/validation_result.py,sha256=SxD
|
|
|
497
512
|
claude_mpm/services/agents/loading/__init__.py,sha256=jDKxJ4kmuMT5kJkeqUjazADtfr4zXtd8dm8EwZIfWhQ,306
|
|
498
513
|
claude_mpm/services/agents/loading/agent_profile_loader.py,sha256=AjGOXrLP20_ekBMwtVf0eS-hqxZj5R-EMlMoIFjvucs,25042
|
|
499
514
|
claude_mpm/services/agents/loading/base_agent_manager.py,sha256=ifjCdluQXNkcTJN46OCZmRZ4mf23uWHUcvxj4PzUK1c,14886
|
|
500
|
-
claude_mpm/services/agents/loading/framework_agent_loader.py,sha256=
|
|
515
|
+
claude_mpm/services/agents/loading/framework_agent_loader.py,sha256=GE8ZG4pK8NdUi9rhVJaeJuYfGURLe3yRLVdias-Q5CI,20269
|
|
501
516
|
claude_mpm/services/agents/management/__init__.py,sha256=--BL1mjPq28_Lil5Ogsz367jdtIYXo7u5AWhAoWxUhU,234
|
|
502
517
|
claude_mpm/services/agents/management/agent_capabilities_generator.py,sha256=Xt4_yA5EbvPIh_bInnIiVDTbAyqMHiduC9Pf-vRH0xI,7003
|
|
503
518
|
claude_mpm/services/agents/management/agent_management_service.py,sha256=_scmVmrnnZoWL6vnchswx8PBmu96Lz7NyKPuv9yPuWk,23014
|
|
@@ -983,10 +998,10 @@ claude_mpm/utils/subprocess_utils.py,sha256=D0izRT8anjiUb_JG72zlJR_JAw1cDkb7kalN
|
|
|
983
998
|
claude_mpm/validation/__init__.py,sha256=YZhwE3mhit-lslvRLuwfX82xJ_k4haZeKmh4IWaVwtk,156
|
|
984
999
|
claude_mpm/validation/agent_validator.py,sha256=GprtAvu80VyMXcKGsK_VhYiXWA6BjKHv7O6HKx0AB9w,20917
|
|
985
1000
|
claude_mpm/validation/frontmatter_validator.py,sha256=YpJlYNNYcV8u6hIOi3_jaRsDnzhbcQpjCBE6eyBKaFY,7076
|
|
986
|
-
claude_mpm-5.4.
|
|
987
|
-
claude_mpm-5.4.
|
|
988
|
-
claude_mpm-5.4.
|
|
989
|
-
claude_mpm-5.4.
|
|
990
|
-
claude_mpm-5.4.
|
|
991
|
-
claude_mpm-5.4.
|
|
992
|
-
claude_mpm-5.4.
|
|
1001
|
+
claude_mpm-5.4.104.dist-info/licenses/LICENSE,sha256=ca3y_Rk4aPrbF6f62z8Ht5MJM9OAvbGlHvEDcj9vUQ4,3867
|
|
1002
|
+
claude_mpm-5.4.104.dist-info/licenses/LICENSE-FAQ.md,sha256=TxfEkXVCK98RzDOer09puc7JVCP_q_bN4dHtZKHCMcM,5104
|
|
1003
|
+
claude_mpm-5.4.104.dist-info/METADATA,sha256=NT50RmXXow29OCeGE89mcx44_NNgc7UA-M5JkcgLDE0,14350
|
|
1004
|
+
claude_mpm-5.4.104.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
1005
|
+
claude_mpm-5.4.104.dist-info/entry_points.txt,sha256=n-Uk4vwHPpuvu-g_I7-GHORzTnN_m6iyOsoLveKKD0E,228
|
|
1006
|
+
claude_mpm-5.4.104.dist-info/top_level.txt,sha256=1nUg3FEaBySgm8t-s54jK5zoPnu3_eY6EP6IOlekyHA,11
|
|
1007
|
+
claude_mpm-5.4.104.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|