claude-mpm 5.6.16__py3-none-any.whl → 5.6.30__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.
Files changed (76) hide show
  1. claude_mpm/VERSION +1 -1
  2. claude_mpm/cli/commands/commander.py +7 -7
  3. claude_mpm/cli/parsers/commander_parser.py +2 -2
  4. claude_mpm/cli/startup.py +130 -19
  5. claude_mpm/commander/chat/cli.py +38 -3
  6. claude_mpm/commander/config.py +5 -3
  7. claude_mpm/commander/daemon.py +9 -0
  8. claude_mpm/commander/frameworks/base.py +4 -1
  9. claude_mpm/commander/instance_manager.py +124 -11
  10. claude_mpm/core/claude_runner.py +22 -13
  11. claude_mpm/core/config.py +3 -3
  12. claude_mpm/core/config_constants.py +74 -9
  13. claude_mpm/core/constants.py +56 -12
  14. claude_mpm/core/interactive_session.py +5 -4
  15. claude_mpm/core/logging_utils.py +4 -2
  16. claude_mpm/core/network_config.py +148 -0
  17. claude_mpm/core/oneshot_session.py +7 -6
  18. claude_mpm/core/output_style_manager.py +5 -2
  19. claude_mpm/core/socketio_pool.py +13 -5
  20. claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-311.pyc +0 -0
  21. claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-311.pyc +0 -0
  22. claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-311.pyc +0 -0
  23. claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-311.pyc +0 -0
  24. claude_mpm/hooks/claude_hooks/auto_pause_handler.py +1 -1
  25. claude_mpm/hooks/claude_hooks/event_handlers.py +0 -0
  26. claude_mpm/hooks/claude_hooks/hook_handler.py +6 -6
  27. claude_mpm/hooks/claude_hooks/installer.py +2 -2
  28. claude_mpm/hooks/claude_hooks/memory_integration.py +1 -1
  29. claude_mpm/hooks/claude_hooks/response_tracking.py +1 -1
  30. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-311.pyc +0 -0
  31. claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-311.pyc +0 -0
  32. claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-311.pyc +0 -0
  33. claude_mpm/hooks/claude_hooks/services/connection_manager.py +2 -2
  34. claude_mpm/hooks/claude_hooks/services/connection_manager_http.py +2 -2
  35. claude_mpm/hooks/claude_hooks/services/state_manager.py +2 -2
  36. claude_mpm/hooks/claude_hooks/services/subagent_processor.py +2 -2
  37. claude_mpm/hooks/templates/pre_tool_use_simple.py +6 -6
  38. claude_mpm/hooks/templates/pre_tool_use_template.py +6 -6
  39. claude_mpm/scripts/claude-hook-handler.sh +3 -3
  40. claude_mpm/scripts/start_activity_logging.py +0 -0
  41. claude_mpm/services/command_deployment_service.py +44 -26
  42. claude_mpm/services/pm_skills_deployer.py +3 -2
  43. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/METADATA +1 -1
  44. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/RECORD +47 -73
  45. claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-312.pyc +0 -0
  46. claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-314.pyc +0 -0
  47. claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-312.pyc +0 -0
  48. claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-314.pyc +0 -0
  49. claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-312.pyc +0 -0
  50. claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-314.pyc +0 -0
  51. claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-312.pyc +0 -0
  52. claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-314.pyc +0 -0
  53. claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-311.pyc +0 -0
  54. claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-314.pyc +0 -0
  55. claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-312.pyc +0 -0
  56. claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-314.pyc +0 -0
  57. claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-312.pyc +0 -0
  58. claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-314.pyc +0 -0
  59. claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-312.pyc +0 -0
  60. claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-314.pyc +0 -0
  61. claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-312.pyc +0 -0
  62. claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-314.pyc +0 -0
  63. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager.cpython-311.pyc +0 -0
  64. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-312.pyc +0 -0
  65. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-314.pyc +0 -0
  66. claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-312.pyc +0 -0
  67. claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-314.pyc +0 -0
  68. claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-312.pyc +0 -0
  69. claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-314.pyc +0 -0
  70. claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-312.pyc +0 -0
  71. claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-314.pyc +0 -0
  72. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/WHEEL +0 -0
  73. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/entry_points.txt +0 -0
  74. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/licenses/LICENSE +0 -0
  75. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/licenses/LICENSE-FAQ.md +0 -0
  76. {claude_mpm-5.6.16.dist-info → claude_mpm-5.6.30.dist-info}/top_level.txt +0 -0
@@ -22,8 +22,8 @@ except ImportError:
22
22
  pass # Silent fallback
23
23
 
24
24
 
25
- # Debug mode is enabled by default for better visibility into hook processing
26
- DEBUG = os.environ.get("CLAUDE_MPM_HOOK_DEBUG", "true").lower() != "false"
25
+ # Debug mode - disabled by default to prevent logging overhead in production
26
+ DEBUG = os.environ.get("CLAUDE_MPM_HOOK_DEBUG", "false").lower() == "true"
27
27
 
28
28
 
29
29
  class SubagentResponseProcessor:
@@ -38,7 +38,7 @@ def main():
38
38
  # Read event from stdin
39
39
  event_data = sys.stdin.read()
40
40
  if not event_data.strip():
41
- print(json.dumps({"action": "continue"}))
41
+ print(json.dumps({"continue": True}))
42
42
  return
43
43
 
44
44
  event = json.loads(event_data)
@@ -49,7 +49,7 @@ def main():
49
49
  if tool_name == "Grep" and "-n" not in tool_input:
50
50
  modified_input = tool_input.copy()
51
51
  modified_input["-n"] = True
52
- print(json.dumps({"action": "continue", "tool_input": modified_input}))
52
+ print(json.dumps({"continue": True, "tool_input": modified_input}))
53
53
  return
54
54
 
55
55
  # Example: Block operations on .env files
@@ -59,19 +59,19 @@ def main():
59
59
  print(
60
60
  json.dumps(
61
61
  {
62
- "action": "block",
63
- "message": "Access to .env file blocked for security",
62
+ "continue": False,
63
+ "stopReason": "Access to .env file blocked for security",
64
64
  }
65
65
  )
66
66
  )
67
67
  return
68
68
 
69
69
  # Default: continue without modification
70
- print(json.dumps({"action": "continue"}))
70
+ print(json.dumps({"continue": True}))
71
71
 
72
72
  except Exception:
73
73
  # Always continue on error to avoid blocking Claude
74
- print(json.dumps({"action": "continue"}))
74
+ print(json.dumps({"continue": True}))
75
75
 
76
76
 
77
77
  if __name__ == "__main__":
@@ -29,7 +29,7 @@ Input Format (stdin):
29
29
 
30
30
  Output Format (stdout):
31
31
  {
32
- "action": "continue",
32
+ "continue": true,
33
33
  "tool_input": {
34
34
  "file_path": "/path/to/file.py",
35
35
  "old_string": "foo",
@@ -39,13 +39,13 @@ Output Format (stdout):
39
39
 
40
40
  Or to block execution:
41
41
  {
42
- "action": "block",
43
- "message": "Reason for blocking"
42
+ "continue": false,
43
+ "stopReason": "Reason for blocking"
44
44
  }
45
45
 
46
46
  Or to continue without modification:
47
47
  {
48
- "action": "continue"
48
+ "continue": true
49
49
  }
50
50
  """
51
51
 
@@ -94,14 +94,14 @@ class PreToolUseHook:
94
94
  self, modified_input: Optional[Dict[str, Any]] = None
95
95
  ) -> None:
96
96
  """Continue execution with optional modified input."""
97
- response = {"action": "continue"}
97
+ response = {"continue": True}
98
98
  if modified_input is not None:
99
99
  response["tool_input"] = modified_input
100
100
  print(json.dumps(response))
101
101
 
102
102
  def block_execution(self, message: str) -> None:
103
103
  """Block execution with a message."""
104
- response = {"action": "block", "message": message}
104
+ response = {"continue": False, "stopReason": message}
105
105
  print(json.dumps(response))
106
106
 
107
107
  def modify_input(
@@ -222,13 +222,13 @@ log_debug() {
222
222
  if [[ "$PYTHON_CMD" == "uv run"* ]]; then
223
223
  if ! uv run --directory "$CLAUDE_MPM_ROOT" python -c "import claude_mpm" 2>/dev/null; then
224
224
  log_debug "claude_mpm module not available, continuing without hook"
225
- echo '{"action": "continue"}'
225
+ echo '{"continue": true}'
226
226
  exit 0
227
227
  fi
228
228
  else
229
229
  if ! $PYTHON_CMD -c "import claude_mpm" 2>/dev/null; then
230
230
  log_debug "claude_mpm module not available, continuing without hook"
231
- echo '{"action": "continue"}'
231
+ echo '{"continue": true}'
232
232
  exit 0
233
233
  fi
234
234
  fi
@@ -250,5 +250,5 @@ if [ "${CLAUDE_MPM_HOOK_DEBUG}" = "true" ]; then
250
250
  echo "[$(date -u +%Y-%m-%dT%H:%M:%S.%3NZ)] Error: $(cat /tmp/claude-mpm-hook-error.log 2>/dev/null | head -5)" >> /tmp/claude-mpm-hook.log
251
251
  fi
252
252
  # Return continue action to prevent blocking Claude Code
253
- echo '{"action": "continue"}'
253
+ echo '{"continue": true}'
254
254
  exit 0
File without changes
@@ -1,10 +1,14 @@
1
- """Service for deploying MPM slash commands to user's Claude configuration.
1
+ """Service for managing MPM slash commands in user's Claude configuration.
2
2
 
3
- This service handles:
4
- 1. Copying command markdown files from source to user's ~/.claude/commands directory
5
- 2. Creating the commands directory if it doesn't exist
6
- 3. Overwriting existing commands to ensure they're up-to-date
7
- 4. Parsing and validating YAML frontmatter for namespace metadata (Phase 1 - 1M-400)
3
+ DEPRECATED: User-level commands in ~/.claude/commands/ are deprecated.
4
+ Project-level skills (.claude/skills/) are now the only source for commands.
5
+
6
+ This service now only handles:
7
+ 1. Cleanup of deprecated commands from previous versions
8
+ 2. Cleanup of stale commands that no longer exist in source
9
+ 3. Parsing and validating YAML frontmatter (for internal use)
10
+
11
+ New command deployment is intentionally disabled - see deploy_commands_on_startup().
8
12
  """
9
13
 
10
14
  from pathlib import Path
@@ -17,20 +21,34 @@ from claude_mpm.core.logger import get_logger
17
21
 
18
22
 
19
23
  class CommandDeploymentService(BaseService):
20
- """Service for deploying MPM slash commands."""
24
+ """Service for managing MPM slash commands (cleanup only - deployment deprecated)."""
21
25
 
22
- # Deprecated commands that have been replaced (cleanup on startup)
26
+ # Deprecated commands that should be removed from ~/.claude/commands/
27
+ # ALL user-level commands are now deprecated - project-level skills are the only source
23
28
  DEPRECATED_COMMANDS = [
29
+ # Legacy deprecated commands (historical)
24
30
  "mpm-agents.md", # Replaced by mpm-agents-list.md
25
31
  "mpm-auto-configure.md", # Replaced by mpm-agents-auto-configure.md
26
32
  "mpm-config-view.md", # Replaced by mpm-config.md
27
33
  "mpm-resume.md", # Replaced by mpm-session-resume.md
28
34
  "mpm-ticket.md", # Replaced by mpm-ticket-view.md
29
- # Removed - consolidated into /mpm-configure
30
35
  "mpm-agents-list.md", # Consolidated into /mpm-configure
31
36
  "mpm-agents-detect.md", # Consolidated into /mpm-configure
32
37
  "mpm-agents-auto-configure.md", # Consolidated into /mpm-configure
33
38
  "mpm-agents-recommend.md", # Consolidated into /mpm-configure
39
+ # ALL user-level commands are now deprecated (use project-level skills)
40
+ "mpm.md",
41
+ "mpm-config.md",
42
+ "mpm-doctor.md",
43
+ "mpm-help.md",
44
+ "mpm-init.md",
45
+ "mpm-monitor.md",
46
+ "mpm-organize.md",
47
+ "mpm-postmortem.md",
48
+ "mpm-session-resume.md",
49
+ "mpm-status.md",
50
+ "mpm-ticket-view.md",
51
+ "mpm-version.md",
34
52
  ]
35
53
 
36
54
  def __init__(self):
@@ -414,33 +432,33 @@ class CommandDeploymentService(BaseService):
414
432
  def deploy_commands_on_startup(force: bool = False) -> None:
415
433
  """Convenience function to deploy commands during startup.
416
434
 
417
- This function:
418
- 1. Removes deprecated commands that have been replaced
419
- 2. Removes stale commands that no longer exist in source
420
- 3. Deploys current command files
435
+ DEPRECATED: User-level commands in ~/.claude/commands/ are deprecated.
436
+ Project-level skills should be the only source for commands.
437
+
438
+ This function now only cleans up any existing deprecated/stale commands
439
+ without deploying new ones.
421
440
 
422
441
  Args:
423
- force: Force deployment even if files exist
442
+ force: Force deployment even if files exist (ignored - deployment disabled)
424
443
  """
425
- service = CommandDeploymentService()
426
444
  logger = get_logger("startup")
445
+ logger.debug(
446
+ "User-level command deployment is deprecated - "
447
+ "project-level skills are the only command source"
448
+ )
427
449
 
428
- # Clean up deprecated commands FIRST (known old commands)
450
+ # Still clean up any lingering deprecated/stale commands from previous versions
451
+ service = CommandDeploymentService()
452
+
453
+ # Clean up deprecated commands
429
454
  deprecated_count = service.remove_deprecated_commands()
430
455
  if deprecated_count > 0:
431
456
  logger.info(f"Cleaned up {deprecated_count} deprecated command(s)")
432
457
 
433
- # Clean up stale commands SECOND (deployed but not in source anymore)
458
+ # Clean up stale commands
434
459
  stale_count = service.remove_stale_commands()
435
460
  if stale_count > 0:
436
461
  logger.info(f"Cleaned up {stale_count} stale command(s)")
437
462
 
438
- # Deploy current commands LAST
439
- result = service.deploy_commands(force=force)
440
-
441
- if result["deployed"]:
442
- logger.info(f"MPM commands deployed: {', '.join(result['deployed'])}")
443
-
444
- if result["errors"]:
445
- for error in result["errors"]:
446
- logger.warning(f"Command deployment issue: {error}")
463
+ # NOTE: Deployment of new commands is intentionally disabled.
464
+ # Project-level skills (.claude/skills/) are the only source for commands.
@@ -389,8 +389,9 @@ class PMSkillsDeployerService(LoggerMixin):
389
389
  if not skill_dir.is_dir() or skill_dir.name.startswith("."):
390
390
  continue
391
391
 
392
- # Only process mpm-* skills (framework management)
393
- if not skill_dir.name.startswith("mpm-"):
392
+ # Only process mpm* skills (framework management)
393
+ # Note: Includes both 'mpm' (core skill) and 'mpm-*' (other PM skills)
394
+ if not skill_dir.name.startswith("mpm"):
394
395
  self.logger.debug(f"Skipping non-mpm skill: {skill_dir.name}")
395
396
  continue
396
397
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: claude-mpm
3
- Version: 5.6.16
3
+ Version: 5.6.30
4
4
  Summary: Claude Multi-Agent Project Manager - Orchestrate Claude with agent delegation and ticket tracking
5
5
  Author-email: Bob Matsuoka <bob@matsuoka.com>
6
6
  Maintainer: Claude MPM Team
@@ -1,5 +1,5 @@
1
1
  claude_mpm/BUILD_NUMBER,sha256=9JfxhnDtr-8l3kCP2U5TVXSErptHoga8m7XA8zqgGOc,4
2
- claude_mpm/VERSION,sha256=skzn24lo2CR2l5t6pUqVy6HhEUWd0Zzrlmq5Zmoh53w,7
2
+ claude_mpm/VERSION,sha256=Zd5sPevfBIuZO6lI33LMT-USn8kaj3LwBIckv8XJalg,7
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
@@ -42,7 +42,7 @@ claude_mpm/cli/chrome_devtools_installer.py,sha256=efA_ZX1iR3oaJi3222079BQw6DEG8
42
42
  claude_mpm/cli/executor.py,sha256=eerqDVszBfTm8N2FgreLr-132Jb9BVZGNrrukvb_b-I,15106
43
43
  claude_mpm/cli/helpers.py,sha256=CypEhw0tbNH6_GzVTaQdi4w7ThCWO43Ep92YbJzPR4I,3638
44
44
  claude_mpm/cli/parser.py,sha256=Vqx9n-6Xo1uNhXR4rThmgWpZXTr0nOtkgDf3oMS9b0g,5855
45
- claude_mpm/cli/startup.py,sha256=q0q4ixGbboysdils2ptnEUll4f0iMooX0g2briB77P0,63711
45
+ claude_mpm/cli/startup.py,sha256=4nKyk0UqVSBsiF-gnk7TnYn3pebB146c79xffo75bhA,68170
46
46
  claude_mpm/cli/startup_display.py,sha256=KI4GZ0uVoK7FXeK5jsS4JAyaKaKf5rCkY3h5tNeEY7M,17209
47
47
  claude_mpm/cli/startup_logging.py,sha256=wHokzcCA0AJPxAqFrpY5PMOBh1iOhdhgP1gY1OvD0gY,29392
48
48
  claude_mpm/cli/utils.py,sha256=5e3v-ow1gd-5nlad9OWCsL-3SRJcPjBJ9HS3zygwkiQ,8988
@@ -61,7 +61,7 @@ claude_mpm/cli/commands/auto_configure.py,sha256=0Suzil6O0SBNeHUCwHOkt2q7gfuXRTy
61
61
  claude_mpm/cli/commands/autotodos.py,sha256=mm2R6dIfHOjAMCgFkjfjBzdFQ-ou19b_R3Lo0Vi8vCI,19428
62
62
  claude_mpm/cli/commands/cleanup.py,sha256=RQikOGLuLFWXzjeoHArdr5FA4Pf7tSK9w2NXL4vCrok,19769
63
63
  claude_mpm/cli/commands/cleanup_orphaned_agents.py,sha256=JR8crvgrz7Sa6d-SI-gKywok5S9rwc_DzDVk_h85sVs,4467
64
- claude_mpm/cli/commands/commander.py,sha256=HTMC9mOYDCQK40gE7MIibMyL5SqilToqlLFdwDbNcSU,7209
64
+ claude_mpm/cli/commands/commander.py,sha256=iZ8DCb3bxdWKuIGRlDu24ERdKPyYaWYro2MpwKGtKJU,7243
65
65
  claude_mpm/cli/commands/config.py,sha256=2M9VUPYcQkBUCIyyB-v1qTL3xYvao9YI2l_JGBUDauA,23374
66
66
  claude_mpm/cli/commands/configure.py,sha256=VUokhUcV90GzEEivV3xNmfQHogM94mdDadW3S4mp83M,136509
67
67
  claude_mpm/cli/commands/configure_agent_display.py,sha256=oSvUhR861o_Pyqmop4ACAQNjwL02-Rf6TMqFvmQNh24,10575
@@ -125,7 +125,7 @@ claude_mpm/cli/parsers/analyze_code_parser.py,sha256=cpJSMFbc3mqB4qrMBIEZiikzPek
125
125
  claude_mpm/cli/parsers/analyze_parser.py,sha256=E00Ao0zwzbJPchs_AJt-aoQ7LQEtJPXRCNQ6Piivb4o,3908
126
126
  claude_mpm/cli/parsers/auto_configure_parser.py,sha256=CZOk_nJZrNtRo8WnYWQKdfXywq6l6ZLMHU7U9hA7A_4,3699
127
127
  claude_mpm/cli/parsers/base_parser.py,sha256=ofGa86qKDdY3DjtF3AGmouGNP9sM2xqzHwSFlvHsEAI,22341
128
- claude_mpm/cli/parsers/commander_parser.py,sha256=bxLxM58wqkyTuccz2Rm_1uve0HjXdxDggW9UWDI16N8,3389
128
+ claude_mpm/cli/parsers/commander_parser.py,sha256=cqVsTm0bLSMeX1_PX1pyBf7Qv7DxC3am65JST-fg7es,3423
129
129
  claude_mpm/cli/parsers/config_parser.py,sha256=i8kv6XWhftzZlEBruAl58Fl6IcyeOb7QVkfPeEayjCk,6255
130
130
  claude_mpm/cli/parsers/configure_parser.py,sha256=t3cwAQX3BfljDDRJH3i0LplpRprw5jdKcI9Uy3M8xtE,4382
131
131
  claude_mpm/cli/parsers/dashboard_parser.py,sha256=JBCM6v_iZhADr_Fwtk_d3up9AOod1avMab-vkNE61gE,3460
@@ -152,11 +152,11 @@ claude_mpm/cli_module/args.py,sha256=50_Y3AgMNeidtPjQ5-WZ1o-5Y7G2GAGQwMmllYjVScE
152
152
  claude_mpm/cli_module/commands.py,sha256=7ZzLm_R0wUkuYV1Hqe1BUDsP8b3BH33i5arkSEugm3U,7013
153
153
  claude_mpm/cli_module/migration_example.py,sha256=DtQ59RyoBD6r8FIfrjKXCQ8-xnUiOqP5McBiS6_W1Qc,5183
154
154
  claude_mpm/commander/__init__.py,sha256=A0RW9NLHzwgMfGP4ByD6f4E1YZmlwNkgycNMMp6zxf0,2458
155
- claude_mpm/commander/config.py,sha256=b9HUNN7LY8tHU4XkLzpuoVdHUZcgC-3by39fRYOg32Q,1583
155
+ claude_mpm/commander/config.py,sha256=ClI9TyiF6Tchiu8sqSUX2aUmiOa6rqwaCPkNk0cD8uc,1831
156
156
  claude_mpm/commander/config_loader.py,sha256=H2ASh19-Nu1Ej4_ojhuIQMU9fR4sMHTsA8fiXocoosE,3736
157
- claude_mpm/commander/daemon.py,sha256=oxwskLLzyNJBiEEwOXXvHkfF-eakA5A8AR5hYtMg4KU,21547
157
+ claude_mpm/commander/daemon.py,sha256=uBoW8xkoJAPmM2L113wZgo_TQq5gGsX4ST760AOTJVY,21959
158
158
  claude_mpm/commander/env_loader.py,sha256=2qf_b4PNsf4TkNzE9xcZotQjTokEdBqjDfPVN6taqY0,1911
159
- claude_mpm/commander/instance_manager.py,sha256=H37wjQkeeIQV5l-0q_ycDk1theU3eT1gg3b-Lbncirw,10790
159
+ claude_mpm/commander/instance_manager.py,sha256=lHkXCeCEyQ_a4qDCZp2z6vM5dbQX38H12k88KEYBufY,14449
160
160
  claude_mpm/commander/project_session.py,sha256=z_vhKcvla8WPmXS1MBl-Iki6oFxNug-YUdHMm15r6H0,9356
161
161
  claude_mpm/commander/registry.py,sha256=vytUc4xpaExA5arRxJnWCw4jb0JhN7t0N_sNJiA49Vs,13203
162
162
  claude_mpm/commander/tmux_orchestrator.py,sha256=uDnMQlzhEt1Ki8DTORpxi7lVtwIvN9n0aTA_5m8EycE,11243
@@ -181,7 +181,7 @@ claude_mpm/commander/api/routes/projects.py,sha256=hvDZW5Bq68Im7zJ6Lwe0RMySHJMoZ
181
181
  claude_mpm/commander/api/routes/sessions.py,sha256=_hIZk2HsYevtesaiuDRmb38UGGVycLFwawT1BjI5fFA,6509
182
182
  claude_mpm/commander/api/routes/work.py,sha256=4rUvWSGvE2V7DT3hYvJNd8aECabTnGC_pcZVo_0gXCk,8853
183
183
  claude_mpm/commander/chat/__init__.py,sha256=5Iiya2YPkF54OvtZgL4NNT0zp5PCsZnnE7D6l19aYnA,243
184
- claude_mpm/commander/chat/cli.py,sha256=neu4B5YLjR-IiVPByVS1YKOOPUytepbEZDyBIqNxixA,3262
184
+ claude_mpm/commander/chat/cli.py,sha256=lCmfSfxrgvyv2XT0JmZE8D4zwTjx6NTq2Jtcw_SUoi8,4531
185
185
  claude_mpm/commander/chat/commands.py,sha256=0Lvc4XT1k-0gpmLxhzgwVNw7IXc40kgZ9YqTVF0vxxk,2440
186
186
  claude_mpm/commander/chat/repl.py,sha256=c7Qi4qBg32b-JQyBKSNGadSWmmUrU7vBpFOkCV94QwU,10999
187
187
  claude_mpm/commander/core/__init__.py,sha256=BVtJoH9hn9LtlmtqPBybPowbPfiKNaNgtotLV82JRQk,357
@@ -190,7 +190,7 @@ claude_mpm/commander/core/response_manager.py,sha256=hOciRaiOmi-MFimaOUyyH0UCKfr
190
190
  claude_mpm/commander/events/__init__.py,sha256=NtUCo8eQfX4D3G9I2U10SRuuU4zMEIySKZGPxyUELzw,478
191
191
  claude_mpm/commander/events/manager.py,sha256=T-gXJ6DWIodxTdfFLv3u4kuks2ilJLjtlBZnmCkRSDA,10352
192
192
  claude_mpm/commander/frameworks/__init__.py,sha256=tOdMc4XNASVDrhpIPA1e7FKtNM7GQW5AEZXXW5NJK9I,280
193
- claude_mpm/commander/frameworks/base.py,sha256=B22tCoctsiQR1n2WVCYRMyBRzbPfUc2Q9NHIUDKT474,4675
193
+ claude_mpm/commander/frameworks/base.py,sha256=sFRNYxZazRaKh1ZBmjdPssdipz7s3SphLGiCnCP4yGw,4804
194
194
  claude_mpm/commander/frameworks/claude_code.py,sha256=6hjy6diDR3ECA4euGlG2wahbXLv5e-9LgS-mDwQGZWM,1724
195
195
  claude_mpm/commander/frameworks/mpm.py,sha256=BLlbFN47sjGTcllYQi7U-sQ_Dd1xNQyc3Bp6spVEs_c,1910
196
196
  claude_mpm/commander/inbox/__init__.py,sha256=eIupl11GtyUTmNPDYTQLbDLpnRE1d857T3l2wZI8EFM,317
@@ -271,11 +271,11 @@ claude_mpm/core/agent_session_manager.py,sha256=F10LS-nyTQxzMP3fkhbI94klsJy5xpSA
271
271
  claude_mpm/core/api_validator.py,sha256=zxeUykC2asy1KwHBDu5w3Eoo64E51PJyNe4PT7CTJf0,12282
272
272
  claude_mpm/core/base_service.py,sha256=4Zrt-vQ6g_KVk4hEfvd4QccuItYoOf7wUHCimIW6zJQ,29953
273
273
  claude_mpm/core/cache.py,sha256=orh8B40oYnRRGmXdANR4P4f-KVMIHV0vg7vrsemk0no,17232
274
- claude_mpm/core/claude_runner.py,sha256=Mxly26VD9XVOj_gAGbOb_1ZMdsMebakx3S9tv4kN6Gk,39361
275
- claude_mpm/core/config.py,sha256=0R1ZLdwxTM2N3-uIBgcbr37jDiEe-G7h7x4YmYIVit0,43385
274
+ claude_mpm/core/claude_runner.py,sha256=Wa7dwkLP-Wiu-KiIzRKpW0Is7YY8Bl7hg_XadFnc2gs,39924
275
+ claude_mpm/core/config.py,sha256=LS0wv8MxpLbD625n3iM6kQBWbJnONtCdlpNkVtp0nhc,43525
276
276
  claude_mpm/core/config_aliases.py,sha256=QpNNECkTY4TYYAhVlFZvB-msPnZrui90g19u0-v0HDE,9703
277
- claude_mpm/core/config_constants.py,sha256=MEF35Y2Lj5FMzRdhgSgZrZeTzHfCzistPGZVY8INta4,10073
278
- claude_mpm/core/constants.py,sha256=tm6IkmDxnsEqdEImtdQOeWvvGEHrThWCgAz5FMjckCQ,11557
277
+ claude_mpm/core/config_constants.py,sha256=doCkQG8Gm4a0avlzk8tx53N4bfSXyj8_F6-LRs4n_ME,12807
278
+ claude_mpm/core/constants.py,sha256=KPSOibTnRbH8Pf_5Ys4eyMpIDdbMITvQ8mC-c62m6RA,12988
279
279
  claude_mpm/core/container.py,sha256=oLM91UOJUQ6D-DDVomqkTAozpgBcM2YFzk_JDbjgg8o,32277
280
280
  claude_mpm/core/enums.py,sha256=0wZGz73IXlZQ29I1OaUDbMa9E9vEimvhO6E_8LiRHSc,12279
281
281
  claude_mpm/core/error_handler.py,sha256=fqTstzmWaidfiVm-IvPGBRCjDwqBbQgjofyP31EkVNU,19276
@@ -288,23 +288,24 @@ claude_mpm/core/hook_manager.py,sha256=y_e4a0gKsHbOtfaobwdhnBSr2raHHAhKszRYbKo4i
288
288
  claude_mpm/core/hook_performance_config.py,sha256=e7a7oFctkRhA3aPXMO5Wavr-E6ku7ikLxMzPU7P1-yg,5779
289
289
  claude_mpm/core/injectable_service.py,sha256=9N4mHt6a_PwoP0pQo-QhVTnXLJlgDCCOg358d0jPEs4,7384
290
290
  claude_mpm/core/instruction_reinforcement_hook.py,sha256=hSYvUp_ducWnhcKTkUbUoCLUb_yCzbIgsqEp7VpF9h0,9542
291
- claude_mpm/core/interactive_session.py,sha256=CW3_HNSMQ5pRi0mIh9_zBMncywARFV2AXLITBTaOxIU,27936
291
+ claude_mpm/core/interactive_session.py,sha256=1LlVJi-YFABn45cxEJ_01ayLDXLwvbQEuVWydJmPeGc,28154
292
292
  claude_mpm/core/interfaces.py,sha256=sSipQa2tjf9EbRaKhxeCE31E-alS_iddvUfI0X_I0LQ,26909
293
293
  claude_mpm/core/lazy.py,sha256=pyCfEqGHyLz18yXTu_uG52-II-9nCaBcpzwwQGBrQro,14808
294
294
  claude_mpm/core/log_manager.py,sha256=yf82AKC-DYLtl7h0ka5IEoVC8aC0_II-zCjHOwD3RxQ,24661
295
295
  claude_mpm/core/logger.py,sha256=k0FyuwCcy-g8F1VG0-vCWeWeSBfPSrlKS92k-IaGAic,22415
296
296
  claude_mpm/core/logging_config.py,sha256=h6beZ1QQTOSM8RM_dq-LC-pnfA3iRxIcTtuGv9zusyI,14724
297
- claude_mpm/core/logging_utils.py,sha256=RrHi4mt4h8Aq9igMos3ZyeAB2_Xfmcx_XPLRSGKTtzQ,17333
297
+ claude_mpm/core/logging_utils.py,sha256=FF6bMMNIAdM7RNUFM-hJU_C23F5Orn2Auw1X8I3WFpY,17471
298
298
  claude_mpm/core/minimal_framework_loader.py,sha256=vmDEjL3MjnV7W4WIR-ymaL8QgsGsgxJJ0KdiQqAtudM,3640
299
299
  claude_mpm/core/mixins.py,sha256=vmZ7Nu2ZOnKjbhN07Ixk4noIej9nsJiknrp-Sclfu0A,5344
300
- claude_mpm/core/oneshot_session.py,sha256=nA86Zk7W3Rh_yIhPuegFL7Xgc9S63vQ_MqfLk52doV0,21994
300
+ claude_mpm/core/network_config.py,sha256=_29RzxVfwos29oSZL8DIEbwiJewznfAUtUywGY3uYc4,4652
301
+ claude_mpm/core/oneshot_session.py,sha256=EcBB4P9cR5LIpymuog8_KE7ckaJwbqWR2KnbRHKTyQA,22236
301
302
  claude_mpm/core/optimized_agent_loader.py,sha256=yevEwTZWzVeZYEJhV3czD45OU7ukJIaJos4MGnFP7YQ,15857
302
303
  claude_mpm/core/optimized_startup.py,sha256=U5I4f7PNYXCBOLbCkbWT2V2sv01T8iWP2Bw-f928Q9M,17927
303
- claude_mpm/core/output_style_manager.py,sha256=QAWxH0fQ6Wr-NlGPs3SY6xT4DUZG5BuMN8ReeEGpGW4,19195
304
+ claude_mpm/core/output_style_manager.py,sha256=1N_SLBGcUAFIaI7HkhscXuwi_S6f5f6sZsWJKKQEQ7k,19334
304
305
  claude_mpm/core/pm_hook_interceptor.py,sha256=92C8TrpK-XVQD8BiXbqs8lSCX72PU0KZG5oAjhf8GOQ,11197
305
306
  claude_mpm/core/service_registry.py,sha256=QpmAMWCov8XXaxQwE7WiNbgv6u_CRjpKPB64kLYvZKk,11722
306
307
  claude_mpm/core/session_manager.py,sha256=iEDZWKBYHSu001nFX8vFvH33RvQOW0eIgomWhFM53sw,12078
307
- claude_mpm/core/socketio_pool.py,sha256=sW1heGTt0QLcpEgFBge_5-2dKk8PbJHexMW0Rz1Y3YU,31145
308
+ claude_mpm/core/socketio_pool.py,sha256=exJYYR-EOT9be01LXTXsyHaU0dvWU9Dxzp2EKKb94n4,31497
308
309
  claude_mpm/core/system_context.py,sha256=zKSKOQfhmILE8SV31TIGhGPvZ7CkZtfFRQdpdLTQvQU,1565
309
310
  claude_mpm/core/tool_access_control.py,sha256=dpdxxp_77SuxGM2C7SsHUZbtysJmHw1rLDXIeOvS7IA,6428
310
311
  claude_mpm/core/types.py,sha256=Sv62QhMYvfxbt7oIGoAhhN_jxonFTeLRf-BuhxZ4vYw,7719
@@ -425,68 +426,41 @@ claude_mpm/hooks/validation_hooks.py,sha256=i5uOaXifItwJfIdjjLCxAwrkKdkmo2Qa4qMc
425
426
  claude_mpm/hooks/claude_hooks/INTEGRATION_EXAMPLE.md,sha256=w21pg7JRuOLdg28f1A7EcyPxkRH_SXLgbQTKdfBCNsU,7484
426
427
  claude_mpm/hooks/claude_hooks/README_AUTO_PAUSE.md,sha256=l7A6f-yi-Z1s1t3vlNmjgZjcGVxwSUt1ZDNuUuF4cJ0,12449
427
428
  claude_mpm/hooks/claude_hooks/__init__.py,sha256=b4mud_g3S-3itHY_Dzpbb_SmdMEcJwtUU8fTcqpLqqs,130
428
- claude_mpm/hooks/claude_hooks/auto_pause_handler.py,sha256=Iy80whkkPFJpn1z7u8PY57r9LC5BvEg3wfDlyknv0a0,17184
429
+ claude_mpm/hooks/claude_hooks/auto_pause_handler.py,sha256=Fm8d_a0KJ1GBPPQ3xmQo-xp-j8xU2TGHTDohbySu0Cg,17184
429
430
  claude_mpm/hooks/claude_hooks/connection_pool.py,sha256=vpi-XbVf61GWhh85tHBzubbOgbJly_I-5-QmsleND2M,8658
430
431
  claude_mpm/hooks/claude_hooks/correlation_manager.py,sha256=3n-RxzqE8egG4max_NcpJgL9gzrBY6Ti529LrjleI1g,2033
431
432
  claude_mpm/hooks/claude_hooks/event_handlers.py,sha256=ztkKTr5xFAY-K5gxhsXFtR_4tir3Cjx2l4auSYbJErU,46745
432
- claude_mpm/hooks/claude_hooks/hook_handler.py,sha256=UOl5IVvz0Ro8Z0Owx4sKUWCxoIhvQpt7VTJ8lRC7Y8o,28266
433
+ claude_mpm/hooks/claude_hooks/hook_handler.py,sha256=UbBypLK1xhm6NdBBLLjqlsjLGWg1GgW-XSfeR7gLAOc,28242
433
434
  claude_mpm/hooks/claude_hooks/hook_wrapper.sh,sha256=XYkdYtcM0nfnwYvMdyIFCasr80ry3uI5-fLYsLtDGw4,2214
434
- claude_mpm/hooks/claude_hooks/installer.py,sha256=GgXqRjm_LpukrMl-eLw3cVDJqwwemNAaEKZvKM0QDYQ,34919
435
- claude_mpm/hooks/claude_hooks/memory_integration.py,sha256=fj_d9N7aytLELomdphLLwYApXzmbhBxtwSK4xkmd55o,10759
436
- claude_mpm/hooks/claude_hooks/response_tracking.py,sha256=2dyDOK9u-N4KcqWF7qq2T17bkps0grbs8MeWBRSC8vE,16323
435
+ claude_mpm/hooks/claude_hooks/installer.py,sha256=fPYeeilFEVR1J7dWLn-x1jtgoZ65cmHtlVEXioKmCrs,34911
436
+ claude_mpm/hooks/claude_hooks/memory_integration.py,sha256=YOMD4Ah003uMh7A454w8ngLmKw8RUAEIHpEj-FRk3TI,10759
437
+ claude_mpm/hooks/claude_hooks/response_tracking.py,sha256=1KOGC19rYRNYbc1Tfe7FAP6AtvgOMSM5uEPxMi2N6-c,16323
437
438
  claude_mpm/hooks/claude_hooks/tool_analysis.py,sha256=3_o2PP9D7wEMwLriCtIBOw0cj2fSZfepN7lI4P1meSQ,7862
438
439
  claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-311.pyc,sha256=EGpgXqhPM0iRRZtCqHaLVQ6wDH42OH_M7Gt5GiFLyro,346
439
- claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-312.pyc,sha256=RdPlaoNPDoSlTFV36Ku4vxs7xYqh7t2038D4pyULy-g,322
440
- claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-314.pyc,sha256=tBzcQ_3WxkmgPTQAPd7uKgFGtz-Yb6r2hEgF9Y_Flwc,319
441
- claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-311.pyc,sha256=7YbusOM2EaL4NqIuNsLTJRCRJWRxo0DhVLXm9ZVFc7Y,20829
442
- claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-312.pyc,sha256=aUV7xCwxrzM4iW4Jf0RbUskIs2whf7lXt6HppAEMp1g,18982
443
- claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-314.pyc,sha256=vo_mPXj0KTtBz2_SAU4NZ7TEWPfgBZtLeXD3CMAvJ3M,21381
440
+ claude_mpm/hooks/claude_hooks/__pycache__/auto_pause_handler.cpython-311.pyc,sha256=lw3g7dHPcJ258xtcmbXOk-tCqVz0JAc5PZ10LUfG4Zo,20829
444
441
  claude_mpm/hooks/claude_hooks/__pycache__/correlation_manager.cpython-311.pyc,sha256=SQX5iiP9bQZkLL-cj_2tlGH7lpAzarO0mYal7btj3tc,3521
445
442
  claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-311.pyc,sha256=72KlsOUX_pQDIl36j7sQukPRarsLIsjINtzsBIpxCtw,45568
446
- claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-312.pyc,sha256=3ezkq2yC1cejVa-II4cl335SWCJhD8dv_NEDtVsCpUo,39235
447
- claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-314.pyc,sha256=zoDVrDzFnxGtDHqH20seS7KhA-9rmtFqttD-sqINBQI,43516
448
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-311.pyc,sha256=vhJjvAMTdDWkB_qWaWr_PeDb4I8-h7UymR1wDVHeyYM,30789
449
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-312.pyc,sha256=bj168CD_Md4vpYJfS9YvPafP7-nw1hAUnuuEpzSQNKY,27815
450
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-314.pyc,sha256=RVz6WvW-sD7kLbh6S5a96WarpPvZv4_qfFMR5SN8WUo,30603
451
- claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-311.pyc,sha256=tQ1esmuvKPb9PNp-a82X7W-5FGuDSWeQd72Xv4DJ18U,38443
452
- claude_mpm/hooks/claude_hooks/__pycache__/installer.cpython-314.pyc,sha256=Mlynkrh8uwlSOTCEH0LYbDM0gxqJmaCL9Gb5DIt_rJ4,38836
453
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-311.pyc,sha256=Xu_hwOf9AG0mZthl5gcDcVv68FiSo5KgZ6lDxdZXCfU,11185
454
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-312.pyc,sha256=w9SKmvg60p6kvNzuOIddYE-X9LYt-ZQzX3LWiKs4nZY,10055
455
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-314.pyc,sha256=oJhMGouqaFI1u3NZryHoRh6ucfPKHPe8GufcsPzi89o,11081
456
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-311.pyc,sha256=qJ5xY8yYwo8ZO7P-Gem_GK4VZdqyNeYvs8ANvC45jnw,16228
457
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-312.pyc,sha256=uyjnluDUFQql1N2oYP6IYP8dxhxnHoSvrmUubEMRNXI,14000
458
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-314.pyc,sha256=yu70SIPNsdECY8l_P971JPFuUPXqD4HmjuuGMU-nSAU,15820
443
+ claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-311.pyc,sha256=rEfK930vlg9myUn4xdP6mRjPvOhSFdjlxwZN-HexhjM,30759
444
+ claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-311.pyc,sha256=1llucgjrun0H6q8V8_BXTHtkTiYAwNGyptluhoIi7ss,11185
445
+ claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-311.pyc,sha256=E_pRoKx-mAB5gEv2_5TneMC_K10zj7FYCPwQPnPd88g,16228
459
446
  claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-311.pyc,sha256=ZjcNfNY5Ht6FhalPeh7M7OzMffcey5iF4AVjDDg9kak,10694
460
- claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-312.pyc,sha256=T98zonvVkllflFNw_pptXXAXbDrIgeBfY6aXvSY8el8,9071
461
- claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-314.pyc,sha256=ck8ifVIoVPaMVVRcMgvsM8RfIHnQbwGBUVs25A-yQBw,10771
462
447
  claude_mpm/hooks/claude_hooks/services/__init__.py,sha256=OIYOKsUNw1BHYawOCp-KFK5kmQKuj92cCqCEPO0nwo0,585
463
- claude_mpm/hooks/claude_hooks/services/connection_manager.py,sha256=shpoCLJpM9qoCDMUuUhk6L9WEKdzLB_OsPtwtDyJMdk,10197
464
- claude_mpm/hooks/claude_hooks/services/connection_manager_http.py,sha256=rdwUhK7DoPqDSRGPHW1uiaE8McsnmggvCQGZ2x_vX-o,7583
448
+ claude_mpm/hooks/claude_hooks/services/connection_manager.py,sha256=46y84lKi3KuExWyJgFcEfgLxrzQY3IjGRob_6I4hXp4,10196
449
+ claude_mpm/hooks/claude_hooks/services/connection_manager_http.py,sha256=uJH0CGsszvhlg7zfEI2JB7uuxXtYBk9Yey-u2F6VoNo,7582
465
450
  claude_mpm/hooks/claude_hooks/services/duplicate_detector.py,sha256=Fh9LmEMsVmQM9t0U1v2l_fuBwvNpVkl_0EF8Wu5KLHQ,3882
466
- claude_mpm/hooks/claude_hooks/services/state_manager.py,sha256=PcEpAzwEnZRjw6JnbtbekDRdhIoaKql5VhhZJCEPNt4,10899
467
- claude_mpm/hooks/claude_hooks/services/subagent_processor.py,sha256=unHGeU6PJxc00_3xnLyyZHeLa47x98knxn6cl-i8ALA,15040
451
+ claude_mpm/hooks/claude_hooks/services/state_manager.py,sha256=uuYJVsxIinmOhu7muqJsRZvFMN83YaoYoOWWIiORhr0,10898
452
+ claude_mpm/hooks/claude_hooks/services/subagent_processor.py,sha256=Wq0CKzgBnAtJfxiWHTipjkmFbuvMGu1mqcmQoEMMyyQ,15039
468
453
  claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-311.pyc,sha256=xBfLBSqnpcKfcQBWfh7xUm454g1lq1LvbO7SxGvcOPc,644
469
- claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-312.pyc,sha256=75pkmoqE7CeBOc2ZHTYfgSR-mtVjKrcKaOA6PxFGW64,565
470
- claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-314.pyc,sha256=nZDxNz67tIFwbZNRqyCRX8cSi0v3JKCZS5U5FhwwApA,562
471
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager.cpython-311.pyc,sha256=IHMkHtVU8Noovuc3W9Eq0-GLPgTnGIL15RKnGD3X49o,10382
472
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-311.pyc,sha256=SydGEQ9oUWs161Ro4ULHfnPB0wiZgiB7V628B3V6N2U,9613
473
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-312.pyc,sha256=qdBU-mDyJxcwjwxfGhqzvo_s7YMO4mva-8hdObDAOcY,8616
474
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-314.pyc,sha256=PjdPDUyUQWm0FqYRdG2knPoZDSKS0g1vk-BDAXfzCi8,9627
454
+ claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-311.pyc,sha256=a7ERR-95KADLqU8bgoPzpCvEPo0yoYjhfXq_u2sCKuk,9613
475
455
  claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-311.pyc,sha256=Yy_REAUhJCiFjOhxeDb4v0qyEvEbUtCmXD9PAz40dhw,5321
476
- claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-312.pyc,sha256=ef_Tx9Uv1CvS18tC_PXmGVvIoMDsRnEUhKRUZaUdGBw,4751
477
- claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-314.pyc,sha256=Xy9iNAtQMfXC_eW9rvumG9rFqK5t-QlLPmUahlqza_I,5341
478
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-311.pyc,sha256=P-Au2P5H0enEeKm7sP1eQv-SU6AAnCqjjOE5jhXcrgs,12352
479
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-312.pyc,sha256=g_Lo7LUYOEgIqS_Rz-6hy_caraHW9nzVJ6f0W4Y14rg,11378
480
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-314.pyc,sha256=2QqT8edjLqG8-9q446zpLJ347lzkgvJxPJG-A8u_HAU,13101
481
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-311.pyc,sha256=4SfbElFMcQK07Frewl9mQ0eB5yCqZUe-CGfGYNUUMh0,14931
482
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-312.pyc,sha256=Cky-0tvyWmn9I44WdupIdJ4Qml0k-qlCs5E0x0Y130Q,13301
483
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-314.pyc,sha256=o6Dc1-yyZjUdVh_JWZmEIvVt0qG0R1-aLhr7XTt-oX0,15104
456
+ claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-311.pyc,sha256=FkVlm20olvS286fK1SKPBDo9tOy0A9hRW0o5Gkyszuc,12352
457
+ claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-311.pyc,sha256=LILTBRAG9Wxpu_FmVod_5hnJO-wbaewqKrxEZ_GJTEI,14931
484
458
  claude_mpm/hooks/failure_learning/__init__.py,sha256=iJ80AKFHiT8DjIH2a72DQVJvL6nAFrizNA2yTKwZ4rw,1805
485
459
  claude_mpm/hooks/failure_learning/failure_detection_hook.py,sha256=KENoB5N-dBm5hb0SxeIZtCvNKbmG2BKHOJSrSO-3Z_I,7500
486
460
  claude_mpm/hooks/failure_learning/fix_detection_hook.py,sha256=XUk1bnBVLdfhQ9AMQSvGsTSeFQsKsVud2wbWX-Jjor8,7164
487
461
  claude_mpm/hooks/failure_learning/learning_extraction_hook.py,sha256=vAOwVuZa_bBBSrFvM9v3wt7T1frZO_Yb5iNGOCgWVuk,9981
488
- claude_mpm/hooks/templates/pre_tool_use_simple.py,sha256=E7EIiX0ERjgQ5-hzPeZnT18NBdU5hJHxXq0LH7K984M,2156
489
- claude_mpm/hooks/templates/pre_tool_use_template.py,sha256=y-FrEg04X1BAaMfhXO3ITLPg3j-aSmI7UwLpZRWzAK0,10230
462
+ claude_mpm/hooks/templates/pre_tool_use_simple.py,sha256=IBk6E2DMHvEMrLKacTgdpIuV9qdR5lxKUNOL5udce5Q,2143
463
+ claude_mpm/hooks/templates/pre_tool_use_template.py,sha256=nl8lbzv7zXwedXkQ--s3rE4X87cs0m5uPtIqLmoINAU,10224
490
464
  claude_mpm/models/__init__.py,sha256=GADyLAiF-1VVghYKI7Urz3zSnf2sjJUXlOEMuCOs7_g,468
491
465
  claude_mpm/models/agent_definition.py,sha256=rMCVu4qYpHvw0wSmr5KPyNf8p6Hne049w2erb2Ba_20,7122
492
466
  claude_mpm/models/agent_session.py,sha256=Tc-0OfAorb5BCmOpoZmC7jMdbtm6zZKF1Wtj16MO27s,20054
@@ -494,7 +468,7 @@ claude_mpm/models/git_repository.py,sha256=Lp2I5tv4fu6idIXCTW50MCTWgjuIE-rwsgVIr
494
468
  claude_mpm/models/resume_log.py,sha256=aDiFC_2FR7tue_Kn46ZDUiKmuw9a_W9yE9zE7gA6Hys,12515
495
469
  claude_mpm/schemas/__init__.py,sha256=2SLpkojJq34KnwPkVxrsVmw_cEI66872i75QBT1C2To,446
496
470
  claude_mpm/scripts/__init__.py,sha256=IffMdVD99Pxyw85yluRa0VDPi4dRQecIWce764pcfZE,553
497
- claude_mpm/scripts/claude-hook-handler.sh,sha256=1e5ZsZJQdp9lKLwEmmAtqnEGZPf5UIAG2ReGfwmXtOE,10907
471
+ claude_mpm/scripts/claude-hook-handler.sh,sha256=aGlg1QqA27oc7sXOLO8kE9RZjXqCgGzAeUAMuZq-0_Y,10895
498
472
  claude_mpm/scripts/launch_monitor.py,sha256=M0CSAYJp5UnoyXKnICZgrAFwqqP5XAWDCiii_IIcrCk,5348
499
473
  claude_mpm/scripts/mpm_doctor.py,sha256=98vBiTIB4xpaSgOvTP9N3EU22V2Odxd9DivhQizG0VM,8822
500
474
  claude_mpm/scripts/socketio_daemon.py,sha256=wWFcvKkHa_oR-NQwhvV-O8s3m1TgicBp9UQ-NR8AQmU,6041
@@ -503,7 +477,7 @@ claude_mpm/services/__init__.py,sha256=a9gM6IlUDHWPy_lFhkb5jpSuuooowACnYG25zit6B
503
477
  claude_mpm/services/agent_capabilities_service.py,sha256=uWSI7mTZvlJAYjDnyKUPczRX5uTXN0KgUp0_1J-Qsrs,10759
504
478
  claude_mpm/services/async_session_logger.py,sha256=u8yw3EAhOEvuZfky3Snb9JOaZ9TWQgznh08O0Zf4GfM,23881
505
479
  claude_mpm/services/claude_session_logger.py,sha256=c2SPLhAq0JaUIyCmg6RsylZ2upaaqlb88ETneuYo8O0,11162
506
- claude_mpm/services/command_deployment_service.py,sha256=GgSxRehQY-PR-yeztz9WP8w6cT5_8NO9bXfn0aTN1Lc,16685
480
+ claude_mpm/services/command_deployment_service.py,sha256=ocYm3ZuGtkRjdsy8Py-jqYrMEc_03lJsdgbU8Z245sA,17422
507
481
  claude_mpm/services/command_handler_service.py,sha256=8iru6eRdQloXrGiE75E1zoUbD_Ajldu3sw17Yx772Lw,7280
508
482
  claude_mpm/services/delegation_detector.py,sha256=ZpElqjhTbuEeeTjTMUsl-G1lHMJ9m1g-6orM3t7wNfM,6168
509
483
  claude_mpm/services/event_aggregator.py,sha256=V_5Wln1RzozLMDZawIPl5gSjIN5KHniNPaaSP11Lihc,20251
@@ -517,7 +491,7 @@ claude_mpm/services/memory_hook_service.py,sha256=u0WyZB2oLm_cEungByPNv7SRa-wqyU
517
491
  claude_mpm/services/monitor_build_service.py,sha256=8gWR9CaqgXdG6-OjOFXGpk28GCcJTlHhojkUYnMCebI,12160
518
492
  claude_mpm/services/native_agent_converter.py,sha256=mG9uYZvjP-lAjlwyfE1aRdJc2vN5x-haMwSry0YqP0E,12247
519
493
  claude_mpm/services/orphan_detection.py,sha256=cEFE96FhC6EJSa53rUjbgjDj_E1_Ej-0KoYDQST22t0,26339
520
- claude_mpm/services/pm_skills_deployer.py,sha256=11MW83rATVoez9d-XRXjkwU4xoBnTxsI48053dCK5f8,32122
494
+ claude_mpm/services/pm_skills_deployer.py,sha256=c4IUJd-AVEasgeKGBIVhSGuoxPyY1LAAiRQfNfHZ-Ng,32203
521
495
  claude_mpm/services/port_manager.py,sha256=tL5oymXrIRzpkGWLy3g2THhA4wy1U_uZ2VtDE6Bbwck,22840
522
496
  claude_mpm/services/profile_manager.py,sha256=L8vuLpFwcHsFUUr8uZwgHBSbqIZPVcUk_hAPrlSWqZU,10991
523
497
  claude_mpm/services/project_port_allocator.py,sha256=L_EPuX_vGdv8vWWRVTpRk7F-v7uimaRTlqZP7LtJk7A,19085
@@ -1128,10 +1102,10 @@ claude_mpm/utils/subprocess_utils.py,sha256=D0izRT8anjiUb_JG72zlJR_JAw1cDkb7kalN
1128
1102
  claude_mpm/validation/__init__.py,sha256=YZhwE3mhit-lslvRLuwfX82xJ_k4haZeKmh4IWaVwtk,156
1129
1103
  claude_mpm/validation/agent_validator.py,sha256=GprtAvu80VyMXcKGsK_VhYiXWA6BjKHv7O6HKx0AB9w,20917
1130
1104
  claude_mpm/validation/frontmatter_validator.py,sha256=YpJlYNNYcV8u6hIOi3_jaRsDnzhbcQpjCBE6eyBKaFY,7076
1131
- claude_mpm-5.6.16.dist-info/licenses/LICENSE,sha256=ca3y_Rk4aPrbF6f62z8Ht5MJM9OAvbGlHvEDcj9vUQ4,3867
1132
- claude_mpm-5.6.16.dist-info/licenses/LICENSE-FAQ.md,sha256=TxfEkXVCK98RzDOer09puc7JVCP_q_bN4dHtZKHCMcM,5104
1133
- claude_mpm-5.6.16.dist-info/METADATA,sha256=jWxRHG_53geY6q4TUr7ZOdSEY3bYBJGVPmlc_vgDQcc,15245
1134
- claude_mpm-5.6.16.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1135
- claude_mpm-5.6.16.dist-info/entry_points.txt,sha256=n-Uk4vwHPpuvu-g_I7-GHORzTnN_m6iyOsoLveKKD0E,228
1136
- claude_mpm-5.6.16.dist-info/top_level.txt,sha256=1nUg3FEaBySgm8t-s54jK5zoPnu3_eY6EP6IOlekyHA,11
1137
- claude_mpm-5.6.16.dist-info/RECORD,,
1105
+ claude_mpm-5.6.30.dist-info/licenses/LICENSE,sha256=ca3y_Rk4aPrbF6f62z8Ht5MJM9OAvbGlHvEDcj9vUQ4,3867
1106
+ claude_mpm-5.6.30.dist-info/licenses/LICENSE-FAQ.md,sha256=TxfEkXVCK98RzDOer09puc7JVCP_q_bN4dHtZKHCMcM,5104
1107
+ claude_mpm-5.6.30.dist-info/METADATA,sha256=LcJRUOd074L5e7vTIqooI5O9nZ2b9NQDb9bELWDLzzc,15245
1108
+ claude_mpm-5.6.30.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
1109
+ claude_mpm-5.6.30.dist-info/entry_points.txt,sha256=n-Uk4vwHPpuvu-g_I7-GHORzTnN_m6iyOsoLveKKD0E,228
1110
+ claude_mpm-5.6.30.dist-info/top_level.txt,sha256=1nUg3FEaBySgm8t-s54jK5zoPnu3_eY6EP6IOlekyHA,11
1111
+ claude_mpm-5.6.30.dist-info/RECORD,,