claude-mpm 5.1.8__py3-none-any.whl → 5.4.22__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 claude-mpm might be problematic. Click here for more details.
- claude_mpm/VERSION +1 -1
- claude_mpm/__init__.py +4 -0
- claude_mpm/agents/{PM_INSTRUCTIONS_TEACH.md → CLAUDE_MPM_TEACHER_OUTPUT_STYLE.md} +721 -41
- claude_mpm/agents/PM_INSTRUCTIONS.md +290 -34
- claude_mpm/agents/agent_loader.py +13 -44
- claude_mpm/agents/frontmatter_validator.py +68 -0
- claude_mpm/agents/templates/circuit-breakers.md +138 -1
- claude_mpm/cli/__main__.py +4 -0
- claude_mpm/cli/chrome_devtools_installer.py +175 -0
- claude_mpm/cli/commands/agent_state_manager.py +8 -17
- claude_mpm/cli/commands/agents.py +169 -31
- claude_mpm/cli/commands/auto_configure.py +210 -25
- claude_mpm/cli/commands/config.py +88 -2
- claude_mpm/cli/commands/configure.py +1111 -161
- claude_mpm/cli/commands/configure_agent_display.py +15 -6
- claude_mpm/cli/commands/mpm_init/core.py +160 -46
- claude_mpm/cli/commands/mpm_init/knowledge_extractor.py +481 -0
- claude_mpm/cli/commands/mpm_init/prompts.py +280 -0
- claude_mpm/cli/commands/skills.py +214 -189
- claude_mpm/cli/commands/summarize.py +413 -0
- claude_mpm/cli/executor.py +11 -3
- claude_mpm/cli/parsers/agents_parser.py +54 -9
- claude_mpm/cli/parsers/auto_configure_parser.py +0 -138
- claude_mpm/cli/parsers/base_parser.py +5 -0
- claude_mpm/cli/parsers/config_parser.py +153 -83
- claude_mpm/cli/parsers/skills_parser.py +3 -2
- claude_mpm/cli/startup.py +550 -94
- claude_mpm/commands/mpm-config.md +265 -0
- claude_mpm/commands/mpm-help.md +14 -95
- claude_mpm/commands/mpm-organize.md +500 -0
- claude_mpm/config/agent_sources.py +27 -0
- claude_mpm/core/framework/formatters/content_formatter.py +3 -13
- claude_mpm/core/framework/loaders/agent_loader.py +8 -5
- claude_mpm/core/framework_loader.py +4 -2
- claude_mpm/core/logger.py +13 -0
- claude_mpm/core/output_style_manager.py +173 -43
- claude_mpm/core/socketio_pool.py +3 -3
- claude_mpm/core/unified_agent_registry.py +134 -16
- claude_mpm/hooks/claude_hooks/correlation_manager.py +60 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +211 -78
- claude_mpm/hooks/claude_hooks/hook_handler.py +6 -0
- claude_mpm/hooks/claude_hooks/installer.py +33 -10
- claude_mpm/hooks/claude_hooks/memory_integration.py +26 -9
- claude_mpm/hooks/claude_hooks/response_tracking.py +2 -3
- claude_mpm/hooks/claude_hooks/services/connection_manager.py +4 -0
- claude_mpm/hooks/memory_integration_hook.py +46 -1
- claude_mpm/init.py +0 -19
- claude_mpm/models/agent_definition.py +7 -0
- claude_mpm/scripts/claude-hook-handler.sh +58 -18
- claude_mpm/scripts/launch_monitor.py +93 -13
- claude_mpm/scripts/start_activity_logging.py +0 -0
- claude_mpm/services/agents/agent_recommendation_service.py +278 -0
- claude_mpm/services/agents/agent_review_service.py +280 -0
- claude_mpm/services/agents/deployment/agent_discovery_service.py +2 -3
- claude_mpm/services/agents/deployment/agent_template_builder.py +4 -2
- claude_mpm/services/agents/deployment/multi_source_deployment_service.py +188 -12
- claude_mpm/services/agents/deployment/remote_agent_discovery_service.py +531 -55
- claude_mpm/services/agents/git_source_manager.py +34 -0
- claude_mpm/services/agents/loading/base_agent_manager.py +1 -13
- claude_mpm/services/agents/sources/git_source_sync_service.py +8 -1
- claude_mpm/services/agents/toolchain_detector.py +10 -6
- claude_mpm/services/analysis/__init__.py +11 -1
- claude_mpm/services/analysis/clone_detector.py +1030 -0
- claude_mpm/services/command_deployment_service.py +81 -10
- claude_mpm/services/event_bus/config.py +3 -1
- claude_mpm/services/git/git_operations_service.py +93 -8
- claude_mpm/services/monitor/daemon.py +9 -2
- claude_mpm/services/monitor/daemon_manager.py +39 -3
- claude_mpm/services/monitor/server.py +225 -19
- claude_mpm/services/self_upgrade_service.py +120 -12
- claude_mpm/services/skills/__init__.py +3 -0
- claude_mpm/services/skills/git_skill_source_manager.py +32 -2
- claude_mpm/services/skills/selective_skill_deployer.py +704 -0
- claude_mpm/services/skills/skill_to_agent_mapper.py +406 -0
- claude_mpm/services/skills_deployer.py +126 -9
- claude_mpm/services/socketio/event_normalizer.py +15 -1
- claude_mpm/services/socketio/server/core.py +160 -21
- claude_mpm/services/version_control/git_operations.py +103 -0
- claude_mpm/utils/agent_filters.py +17 -44
- {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/METADATA +47 -84
- {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/RECORD +86 -176
- claude_mpm-5.4.22.dist-info/entry_points.txt +5 -0
- claude_mpm-5.4.22.dist-info/licenses/LICENSE +94 -0
- claude_mpm-5.4.22.dist-info/licenses/LICENSE-FAQ.md +153 -0
- claude_mpm/agents/BASE_AGENT_TEMPLATE.md +0 -292
- claude_mpm/agents/BASE_DOCUMENTATION.md +0 -53
- claude_mpm/agents/BASE_ENGINEER.md +0 -658
- claude_mpm/agents/BASE_OPS.md +0 -219
- claude_mpm/agents/BASE_PM.md +0 -480
- claude_mpm/agents/BASE_PROMPT_ENGINEER.md +0 -787
- claude_mpm/agents/BASE_QA.md +0 -167
- claude_mpm/agents/BASE_RESEARCH.md +0 -53
- claude_mpm/agents/base_agent.json +0 -31
- claude_mpm/agents/base_agent_loader.py +0 -601
- claude_mpm/cli/commands/agents_detect.py +0 -380
- claude_mpm/cli/commands/agents_recommend.py +0 -309
- claude_mpm/cli/ticket_cli.py +0 -35
- claude_mpm/commands/mpm-agents-auto-configure.md +0 -278
- claude_mpm/commands/mpm-agents-detect.md +0 -177
- claude_mpm/commands/mpm-agents-list.md +0 -131
- claude_mpm/commands/mpm-agents-recommend.md +0 -223
- claude_mpm/commands/mpm-config-view.md +0 -150
- claude_mpm/commands/mpm-ticket-organize.md +0 -304
- claude_mpm/dashboard/analysis_runner.py +0 -455
- claude_mpm/dashboard/index.html +0 -13
- claude_mpm/dashboard/open_dashboard.py +0 -66
- claude_mpm/dashboard/static/css/activity.css +0 -1958
- claude_mpm/dashboard/static/css/connection-status.css +0 -370
- claude_mpm/dashboard/static/css/dashboard.css +0 -4701
- claude_mpm/dashboard/static/js/components/activity-tree.js +0 -1871
- claude_mpm/dashboard/static/js/components/agent-hierarchy.js +0 -777
- claude_mpm/dashboard/static/js/components/agent-inference.js +0 -956
- claude_mpm/dashboard/static/js/components/build-tracker.js +0 -333
- claude_mpm/dashboard/static/js/components/code-simple.js +0 -857
- claude_mpm/dashboard/static/js/components/connection-debug.js +0 -654
- claude_mpm/dashboard/static/js/components/diff-viewer.js +0 -891
- claude_mpm/dashboard/static/js/components/event-processor.js +0 -542
- claude_mpm/dashboard/static/js/components/event-viewer.js +0 -1155
- claude_mpm/dashboard/static/js/components/export-manager.js +0 -368
- claude_mpm/dashboard/static/js/components/file-change-tracker.js +0 -443
- claude_mpm/dashboard/static/js/components/file-change-viewer.js +0 -690
- claude_mpm/dashboard/static/js/components/file-tool-tracker.js +0 -724
- claude_mpm/dashboard/static/js/components/file-viewer.js +0 -580
- claude_mpm/dashboard/static/js/components/hud-library-loader.js +0 -211
- claude_mpm/dashboard/static/js/components/hud-manager.js +0 -671
- claude_mpm/dashboard/static/js/components/hud-visualizer.js +0 -1718
- claude_mpm/dashboard/static/js/components/module-viewer.js +0 -2764
- claude_mpm/dashboard/static/js/components/session-manager.js +0 -579
- claude_mpm/dashboard/static/js/components/socket-manager.js +0 -368
- claude_mpm/dashboard/static/js/components/ui-state-manager.js +0 -749
- claude_mpm/dashboard/static/js/components/unified-data-viewer.js +0 -1824
- claude_mpm/dashboard/static/js/components/working-directory.js +0 -920
- claude_mpm/dashboard/static/js/connection-manager.js +0 -536
- claude_mpm/dashboard/static/js/dashboard.js +0 -1914
- claude_mpm/dashboard/static/js/extension-error-handler.js +0 -164
- claude_mpm/dashboard/static/js/socket-client.js +0 -1474
- claude_mpm/dashboard/static/js/tab-isolation-fix.js +0 -185
- claude_mpm/dashboard/static/socket.io.min.js +0 -7
- claude_mpm/dashboard/static/socket.io.v4.8.1.backup.js +0 -7
- claude_mpm/dashboard/templates/code_simple.html +0 -153
- claude_mpm/dashboard/templates/index.html +0 -606
- claude_mpm/dashboard/test_dashboard.html +0 -372
- claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-313.pyc +0 -0
- claude_mpm/scripts/mcp_server.py +0 -75
- claude_mpm/scripts/mcp_wrapper.py +0 -39
- claude_mpm/services/mcp_gateway/__init__.py +0 -159
- claude_mpm/services/mcp_gateway/auto_configure.py +0 -369
- claude_mpm/services/mcp_gateway/config/__init__.py +0 -17
- claude_mpm/services/mcp_gateway/config/config_loader.py +0 -296
- claude_mpm/services/mcp_gateway/config/config_schema.py +0 -243
- claude_mpm/services/mcp_gateway/config/configuration.py +0 -429
- claude_mpm/services/mcp_gateway/core/__init__.py +0 -43
- claude_mpm/services/mcp_gateway/core/base.py +0 -312
- claude_mpm/services/mcp_gateway/core/exceptions.py +0 -253
- claude_mpm/services/mcp_gateway/core/interfaces.py +0 -443
- claude_mpm/services/mcp_gateway/core/process_pool.py +0 -977
- claude_mpm/services/mcp_gateway/core/singleton_manager.py +0 -315
- claude_mpm/services/mcp_gateway/core/startup_verification.py +0 -316
- claude_mpm/services/mcp_gateway/main.py +0 -589
- claude_mpm/services/mcp_gateway/registry/__init__.py +0 -12
- claude_mpm/services/mcp_gateway/registry/service_registry.py +0 -412
- claude_mpm/services/mcp_gateway/registry/tool_registry.py +0 -489
- claude_mpm/services/mcp_gateway/server/__init__.py +0 -15
- claude_mpm/services/mcp_gateway/server/mcp_gateway.py +0 -414
- claude_mpm/services/mcp_gateway/server/stdio_handler.py +0 -372
- claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -712
- claude_mpm/services/mcp_gateway/tools/__init__.py +0 -36
- claude_mpm/services/mcp_gateway/tools/base_adapter.py +0 -485
- claude_mpm/services/mcp_gateway/tools/document_summarizer.py +0 -789
- claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +0 -654
- claude_mpm/services/mcp_gateway/tools/health_check_tool.py +0 -456
- claude_mpm/services/mcp_gateway/tools/hello_world.py +0 -551
- claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +0 -555
- claude_mpm/services/mcp_gateway/utils/__init__.py +0 -14
- claude_mpm/services/mcp_gateway/utils/package_version_checker.py +0 -160
- claude_mpm/services/mcp_gateway/utils/update_preferences.py +0 -170
- claude_mpm-5.1.8.dist-info/entry_points.txt +0 -10
- claude_mpm-5.1.8.dist-info/licenses/LICENSE +0 -21
- /claude_mpm/agents/{OUTPUT_STYLE.md → CLAUDE_MPM_OUTPUT_STYLE.md} +0 -0
- {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/WHEEL +0 -0
- {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/top_level.txt +0 -0
|
@@ -339,14 +339,48 @@ class GitSourceManager:
|
|
|
339
339
|
|
|
340
340
|
# Walk cache directory structure
|
|
341
341
|
logger.debug(f"[DEBUG] Walking cache root: {self.cache_root}")
|
|
342
|
+
|
|
343
|
+
# Known legacy category directories to skip (flat cache structure)
|
|
344
|
+
LEGACY_CATEGORIES = {
|
|
345
|
+
"universal",
|
|
346
|
+
"engineer",
|
|
347
|
+
"ops",
|
|
348
|
+
"qa",
|
|
349
|
+
"security",
|
|
350
|
+
"documentation",
|
|
351
|
+
"claude-mpm",
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
# Repositories that are NOT agent repositories (should be excluded from agent discovery)
|
|
355
|
+
# These contain skills, documentation, or other non-agent content
|
|
356
|
+
EXCLUDED_REPOSITORIES = {
|
|
357
|
+
"claude-mpm-skills", # Skills repository, not agents
|
|
358
|
+
}
|
|
359
|
+
|
|
342
360
|
for owner_dir in self.cache_root.iterdir():
|
|
343
361
|
if not owner_dir.is_dir():
|
|
344
362
|
continue
|
|
363
|
+
|
|
364
|
+
# Skip legacy category directories (they're not GitHub owners)
|
|
365
|
+
if owner_dir.name.lower() in LEGACY_CATEGORIES:
|
|
366
|
+
logger.debug(
|
|
367
|
+
f"[DEBUG] Skipping legacy category directory: {owner_dir.name}"
|
|
368
|
+
)
|
|
369
|
+
continue
|
|
370
|
+
|
|
345
371
|
logger.debug(f"[DEBUG] Processing owner_dir: {owner_dir.name}")
|
|
346
372
|
|
|
347
373
|
for repo_dir in owner_dir.iterdir():
|
|
348
374
|
if not repo_dir.is_dir():
|
|
349
375
|
continue
|
|
376
|
+
|
|
377
|
+
# Skip excluded repositories (e.g., skills repos are not agent repos)
|
|
378
|
+
if repo_dir.name in EXCLUDED_REPOSITORIES:
|
|
379
|
+
logger.debug(
|
|
380
|
+
f"[DEBUG] Skipping excluded repository: {repo_dir.name}"
|
|
381
|
+
)
|
|
382
|
+
continue
|
|
383
|
+
|
|
350
384
|
logger.debug(f"[DEBUG] Processing repo_dir: {repo_dir.name}")
|
|
351
385
|
|
|
352
386
|
# Bug #5 fix: Don't iterate subdirectories - RemoteAgentDiscoveryService
|
|
@@ -13,9 +13,6 @@ from enum import Enum
|
|
|
13
13
|
from pathlib import Path
|
|
14
14
|
from typing import Any, Dict, List, Optional
|
|
15
15
|
|
|
16
|
-
# Lazy import for base_agent_loader to reduce initialization overhead
|
|
17
|
-
# base_agent_loader adds ~500ms to import time
|
|
18
|
-
# from claude_mpm.agents.base_agent_loader import clear_base_agent_cache
|
|
19
16
|
from claude_mpm.core.logging_utils import get_logger
|
|
20
17
|
from claude_mpm.services.memory.cache.shared_prompt_cache import SharedPromptCache
|
|
21
18
|
from claude_mpm.services.shared import ConfigServiceBase
|
|
@@ -23,13 +20,6 @@ from claude_mpm.services.shared import ConfigServiceBase
|
|
|
23
20
|
logger = get_logger(__name__)
|
|
24
21
|
|
|
25
22
|
|
|
26
|
-
def _get_clear_base_agent_cache():
|
|
27
|
-
"""Lazy loader for clear_base_agent_cache function."""
|
|
28
|
-
from claude_mpm.agents.base_agent_loader import clear_base_agent_cache
|
|
29
|
-
|
|
30
|
-
return clear_base_agent_cache
|
|
31
|
-
|
|
32
|
-
|
|
33
23
|
class BaseAgentSection(str, Enum):
|
|
34
24
|
"""Base agent markdown sections."""
|
|
35
25
|
|
|
@@ -143,9 +133,7 @@ class BaseAgentManager(ConfigServiceBase):
|
|
|
143
133
|
content = self._structure_to_markdown(current)
|
|
144
134
|
self.base_agent_path.write_text(content, encoding="utf-8")
|
|
145
135
|
|
|
146
|
-
# Clear
|
|
147
|
-
clear_base_agent_cache = _get_clear_base_agent_cache()
|
|
148
|
-
clear_base_agent_cache()
|
|
136
|
+
# Clear cache
|
|
149
137
|
self.cache.invalidate("base_agent:instructions")
|
|
150
138
|
|
|
151
139
|
logger.info("Base agent updated successfully")
|
|
@@ -851,6 +851,12 @@ class GitSourceSyncService:
|
|
|
851
851
|
if base_path and not path.startswith(base_path + "/"):
|
|
852
852
|
continue
|
|
853
853
|
|
|
854
|
+
# Exclude build/dist directories (prevents double-counting)
|
|
855
|
+
# e.g., both "agents/engineer.md" and "dist/agents/engineer.md"
|
|
856
|
+
path_parts = path.split("/")
|
|
857
|
+
if any(excluded in path_parts for excluded in ["dist", "build", ".cache"]):
|
|
858
|
+
continue
|
|
859
|
+
|
|
854
860
|
# Remove base_path prefix for relative paths
|
|
855
861
|
if base_path:
|
|
856
862
|
relative_path = path[len(base_path) + 1 :]
|
|
@@ -971,7 +977,8 @@ class GitSourceSyncService:
|
|
|
971
977
|
"""
|
|
972
978
|
import shutil
|
|
973
979
|
|
|
974
|
-
|
|
980
|
+
# Deploy to .claude/agents/ where Claude Code expects them
|
|
981
|
+
deployment_dir = project_dir / ".claude" / "agents"
|
|
975
982
|
deployment_dir.mkdir(parents=True, exist_ok=True)
|
|
976
983
|
|
|
977
984
|
results = {
|
|
@@ -158,12 +158,15 @@ class ToolchainDetector:
|
|
|
158
158
|
"make": ["ops"],
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
# Core agents always included
|
|
161
|
+
# Core agents always included (use exact agent IDs from repository)
|
|
162
162
|
CORE_AGENTS = [
|
|
163
|
-
"
|
|
164
|
-
"
|
|
165
|
-
"
|
|
166
|
-
"
|
|
163
|
+
"engineer",
|
|
164
|
+
"qa-agent",
|
|
165
|
+
"memory-manager-agent",
|
|
166
|
+
"local-ops-agent",
|
|
167
|
+
"research-agent",
|
|
168
|
+
"documentation-agent",
|
|
169
|
+
"security-agent",
|
|
167
170
|
]
|
|
168
171
|
|
|
169
172
|
# Directories to exclude from scanning
|
|
@@ -365,7 +368,8 @@ class ToolchainDetector:
|
|
|
365
368
|
"""Map detected toolchain to recommended agents.
|
|
366
369
|
|
|
367
370
|
Combines language-specific, framework-specific, and ops agents with
|
|
368
|
-
core agents (qa,
|
|
371
|
+
core agents (engineer, qa-agent, memory-manager-agent, local-ops-agent, research-agent,
|
|
372
|
+
documentation-agent, security-agent).
|
|
369
373
|
|
|
370
374
|
Args:
|
|
371
375
|
toolchain: Detected toolchain dictionary with languages, frameworks, tools
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Analysis services for Claude MPM.
|
|
3
3
|
|
|
4
|
-
Provides postmortem analysis
|
|
4
|
+
Provides postmortem analysis, error improvement suggestions, and code clone detection.
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from .clone_detector import (
|
|
8
|
+
CloneDetector,
|
|
9
|
+
CloneReport,
|
|
10
|
+
RefactoringSuggestion,
|
|
11
|
+
SimilarityReport,
|
|
12
|
+
)
|
|
7
13
|
from .postmortem_service import (
|
|
8
14
|
ActionType,
|
|
9
15
|
ErrorAnalysis,
|
|
@@ -16,10 +22,14 @@ from .postmortem_service import (
|
|
|
16
22
|
|
|
17
23
|
__all__ = [
|
|
18
24
|
"ActionType",
|
|
25
|
+
"CloneDetector",
|
|
26
|
+
"CloneReport",
|
|
19
27
|
"ErrorAnalysis",
|
|
20
28
|
"ErrorCategory",
|
|
21
29
|
"ImprovementAction",
|
|
22
30
|
"PostmortemReport",
|
|
23
31
|
"PostmortemService",
|
|
32
|
+
"RefactoringSuggestion",
|
|
33
|
+
"SimilarityReport",
|
|
24
34
|
"get_postmortem_service",
|
|
25
35
|
]
|