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.

Files changed (191) hide show
  1. claude_mpm/VERSION +1 -1
  2. claude_mpm/__init__.py +4 -0
  3. claude_mpm/agents/{PM_INSTRUCTIONS_TEACH.md → CLAUDE_MPM_TEACHER_OUTPUT_STYLE.md} +721 -41
  4. claude_mpm/agents/PM_INSTRUCTIONS.md +290 -34
  5. claude_mpm/agents/agent_loader.py +13 -44
  6. claude_mpm/agents/frontmatter_validator.py +68 -0
  7. claude_mpm/agents/templates/circuit-breakers.md +138 -1
  8. claude_mpm/cli/__main__.py +4 -0
  9. claude_mpm/cli/chrome_devtools_installer.py +175 -0
  10. claude_mpm/cli/commands/agent_state_manager.py +8 -17
  11. claude_mpm/cli/commands/agents.py +169 -31
  12. claude_mpm/cli/commands/auto_configure.py +210 -25
  13. claude_mpm/cli/commands/config.py +88 -2
  14. claude_mpm/cli/commands/configure.py +1111 -161
  15. claude_mpm/cli/commands/configure_agent_display.py +15 -6
  16. claude_mpm/cli/commands/mpm_init/core.py +160 -46
  17. claude_mpm/cli/commands/mpm_init/knowledge_extractor.py +481 -0
  18. claude_mpm/cli/commands/mpm_init/prompts.py +280 -0
  19. claude_mpm/cli/commands/skills.py +214 -189
  20. claude_mpm/cli/commands/summarize.py +413 -0
  21. claude_mpm/cli/executor.py +11 -3
  22. claude_mpm/cli/parsers/agents_parser.py +54 -9
  23. claude_mpm/cli/parsers/auto_configure_parser.py +0 -138
  24. claude_mpm/cli/parsers/base_parser.py +5 -0
  25. claude_mpm/cli/parsers/config_parser.py +153 -83
  26. claude_mpm/cli/parsers/skills_parser.py +3 -2
  27. claude_mpm/cli/startup.py +550 -94
  28. claude_mpm/commands/mpm-config.md +265 -0
  29. claude_mpm/commands/mpm-help.md +14 -95
  30. claude_mpm/commands/mpm-organize.md +500 -0
  31. claude_mpm/config/agent_sources.py +27 -0
  32. claude_mpm/core/framework/formatters/content_formatter.py +3 -13
  33. claude_mpm/core/framework/loaders/agent_loader.py +8 -5
  34. claude_mpm/core/framework_loader.py +4 -2
  35. claude_mpm/core/logger.py +13 -0
  36. claude_mpm/core/output_style_manager.py +173 -43
  37. claude_mpm/core/socketio_pool.py +3 -3
  38. claude_mpm/core/unified_agent_registry.py +134 -16
  39. claude_mpm/hooks/claude_hooks/correlation_manager.py +60 -0
  40. claude_mpm/hooks/claude_hooks/event_handlers.py +211 -78
  41. claude_mpm/hooks/claude_hooks/hook_handler.py +6 -0
  42. claude_mpm/hooks/claude_hooks/installer.py +33 -10
  43. claude_mpm/hooks/claude_hooks/memory_integration.py +26 -9
  44. claude_mpm/hooks/claude_hooks/response_tracking.py +2 -3
  45. claude_mpm/hooks/claude_hooks/services/connection_manager.py +4 -0
  46. claude_mpm/hooks/memory_integration_hook.py +46 -1
  47. claude_mpm/init.py +0 -19
  48. claude_mpm/models/agent_definition.py +7 -0
  49. claude_mpm/scripts/claude-hook-handler.sh +58 -18
  50. claude_mpm/scripts/launch_monitor.py +93 -13
  51. claude_mpm/scripts/start_activity_logging.py +0 -0
  52. claude_mpm/services/agents/agent_recommendation_service.py +278 -0
  53. claude_mpm/services/agents/agent_review_service.py +280 -0
  54. claude_mpm/services/agents/deployment/agent_discovery_service.py +2 -3
  55. claude_mpm/services/agents/deployment/agent_template_builder.py +4 -2
  56. claude_mpm/services/agents/deployment/multi_source_deployment_service.py +188 -12
  57. claude_mpm/services/agents/deployment/remote_agent_discovery_service.py +531 -55
  58. claude_mpm/services/agents/git_source_manager.py +34 -0
  59. claude_mpm/services/agents/loading/base_agent_manager.py +1 -13
  60. claude_mpm/services/agents/sources/git_source_sync_service.py +8 -1
  61. claude_mpm/services/agents/toolchain_detector.py +10 -6
  62. claude_mpm/services/analysis/__init__.py +11 -1
  63. claude_mpm/services/analysis/clone_detector.py +1030 -0
  64. claude_mpm/services/command_deployment_service.py +81 -10
  65. claude_mpm/services/event_bus/config.py +3 -1
  66. claude_mpm/services/git/git_operations_service.py +93 -8
  67. claude_mpm/services/monitor/daemon.py +9 -2
  68. claude_mpm/services/monitor/daemon_manager.py +39 -3
  69. claude_mpm/services/monitor/server.py +225 -19
  70. claude_mpm/services/self_upgrade_service.py +120 -12
  71. claude_mpm/services/skills/__init__.py +3 -0
  72. claude_mpm/services/skills/git_skill_source_manager.py +32 -2
  73. claude_mpm/services/skills/selective_skill_deployer.py +704 -0
  74. claude_mpm/services/skills/skill_to_agent_mapper.py +406 -0
  75. claude_mpm/services/skills_deployer.py +126 -9
  76. claude_mpm/services/socketio/event_normalizer.py +15 -1
  77. claude_mpm/services/socketio/server/core.py +160 -21
  78. claude_mpm/services/version_control/git_operations.py +103 -0
  79. claude_mpm/utils/agent_filters.py +17 -44
  80. {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/METADATA +47 -84
  81. {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/RECORD +86 -176
  82. claude_mpm-5.4.22.dist-info/entry_points.txt +5 -0
  83. claude_mpm-5.4.22.dist-info/licenses/LICENSE +94 -0
  84. claude_mpm-5.4.22.dist-info/licenses/LICENSE-FAQ.md +153 -0
  85. claude_mpm/agents/BASE_AGENT_TEMPLATE.md +0 -292
  86. claude_mpm/agents/BASE_DOCUMENTATION.md +0 -53
  87. claude_mpm/agents/BASE_ENGINEER.md +0 -658
  88. claude_mpm/agents/BASE_OPS.md +0 -219
  89. claude_mpm/agents/BASE_PM.md +0 -480
  90. claude_mpm/agents/BASE_PROMPT_ENGINEER.md +0 -787
  91. claude_mpm/agents/BASE_QA.md +0 -167
  92. claude_mpm/agents/BASE_RESEARCH.md +0 -53
  93. claude_mpm/agents/base_agent.json +0 -31
  94. claude_mpm/agents/base_agent_loader.py +0 -601
  95. claude_mpm/cli/commands/agents_detect.py +0 -380
  96. claude_mpm/cli/commands/agents_recommend.py +0 -309
  97. claude_mpm/cli/ticket_cli.py +0 -35
  98. claude_mpm/commands/mpm-agents-auto-configure.md +0 -278
  99. claude_mpm/commands/mpm-agents-detect.md +0 -177
  100. claude_mpm/commands/mpm-agents-list.md +0 -131
  101. claude_mpm/commands/mpm-agents-recommend.md +0 -223
  102. claude_mpm/commands/mpm-config-view.md +0 -150
  103. claude_mpm/commands/mpm-ticket-organize.md +0 -304
  104. claude_mpm/dashboard/analysis_runner.py +0 -455
  105. claude_mpm/dashboard/index.html +0 -13
  106. claude_mpm/dashboard/open_dashboard.py +0 -66
  107. claude_mpm/dashboard/static/css/activity.css +0 -1958
  108. claude_mpm/dashboard/static/css/connection-status.css +0 -370
  109. claude_mpm/dashboard/static/css/dashboard.css +0 -4701
  110. claude_mpm/dashboard/static/js/components/activity-tree.js +0 -1871
  111. claude_mpm/dashboard/static/js/components/agent-hierarchy.js +0 -777
  112. claude_mpm/dashboard/static/js/components/agent-inference.js +0 -956
  113. claude_mpm/dashboard/static/js/components/build-tracker.js +0 -333
  114. claude_mpm/dashboard/static/js/components/code-simple.js +0 -857
  115. claude_mpm/dashboard/static/js/components/connection-debug.js +0 -654
  116. claude_mpm/dashboard/static/js/components/diff-viewer.js +0 -891
  117. claude_mpm/dashboard/static/js/components/event-processor.js +0 -542
  118. claude_mpm/dashboard/static/js/components/event-viewer.js +0 -1155
  119. claude_mpm/dashboard/static/js/components/export-manager.js +0 -368
  120. claude_mpm/dashboard/static/js/components/file-change-tracker.js +0 -443
  121. claude_mpm/dashboard/static/js/components/file-change-viewer.js +0 -690
  122. claude_mpm/dashboard/static/js/components/file-tool-tracker.js +0 -724
  123. claude_mpm/dashboard/static/js/components/file-viewer.js +0 -580
  124. claude_mpm/dashboard/static/js/components/hud-library-loader.js +0 -211
  125. claude_mpm/dashboard/static/js/components/hud-manager.js +0 -671
  126. claude_mpm/dashboard/static/js/components/hud-visualizer.js +0 -1718
  127. claude_mpm/dashboard/static/js/components/module-viewer.js +0 -2764
  128. claude_mpm/dashboard/static/js/components/session-manager.js +0 -579
  129. claude_mpm/dashboard/static/js/components/socket-manager.js +0 -368
  130. claude_mpm/dashboard/static/js/components/ui-state-manager.js +0 -749
  131. claude_mpm/dashboard/static/js/components/unified-data-viewer.js +0 -1824
  132. claude_mpm/dashboard/static/js/components/working-directory.js +0 -920
  133. claude_mpm/dashboard/static/js/connection-manager.js +0 -536
  134. claude_mpm/dashboard/static/js/dashboard.js +0 -1914
  135. claude_mpm/dashboard/static/js/extension-error-handler.js +0 -164
  136. claude_mpm/dashboard/static/js/socket-client.js +0 -1474
  137. claude_mpm/dashboard/static/js/tab-isolation-fix.js +0 -185
  138. claude_mpm/dashboard/static/socket.io.min.js +0 -7
  139. claude_mpm/dashboard/static/socket.io.v4.8.1.backup.js +0 -7
  140. claude_mpm/dashboard/templates/code_simple.html +0 -153
  141. claude_mpm/dashboard/templates/index.html +0 -606
  142. claude_mpm/dashboard/test_dashboard.html +0 -372
  143. claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-313.pyc +0 -0
  144. claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-313.pyc +0 -0
  145. claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-313.pyc +0 -0
  146. claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-313.pyc +0 -0
  147. claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-313.pyc +0 -0
  148. claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-313.pyc +0 -0
  149. claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-313.pyc +0 -0
  150. claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-313.pyc +0 -0
  151. claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-313.pyc +0 -0
  152. claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-313.pyc +0 -0
  153. claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-313.pyc +0 -0
  154. claude_mpm/scripts/mcp_server.py +0 -75
  155. claude_mpm/scripts/mcp_wrapper.py +0 -39
  156. claude_mpm/services/mcp_gateway/__init__.py +0 -159
  157. claude_mpm/services/mcp_gateway/auto_configure.py +0 -369
  158. claude_mpm/services/mcp_gateway/config/__init__.py +0 -17
  159. claude_mpm/services/mcp_gateway/config/config_loader.py +0 -296
  160. claude_mpm/services/mcp_gateway/config/config_schema.py +0 -243
  161. claude_mpm/services/mcp_gateway/config/configuration.py +0 -429
  162. claude_mpm/services/mcp_gateway/core/__init__.py +0 -43
  163. claude_mpm/services/mcp_gateway/core/base.py +0 -312
  164. claude_mpm/services/mcp_gateway/core/exceptions.py +0 -253
  165. claude_mpm/services/mcp_gateway/core/interfaces.py +0 -443
  166. claude_mpm/services/mcp_gateway/core/process_pool.py +0 -977
  167. claude_mpm/services/mcp_gateway/core/singleton_manager.py +0 -315
  168. claude_mpm/services/mcp_gateway/core/startup_verification.py +0 -316
  169. claude_mpm/services/mcp_gateway/main.py +0 -589
  170. claude_mpm/services/mcp_gateway/registry/__init__.py +0 -12
  171. claude_mpm/services/mcp_gateway/registry/service_registry.py +0 -412
  172. claude_mpm/services/mcp_gateway/registry/tool_registry.py +0 -489
  173. claude_mpm/services/mcp_gateway/server/__init__.py +0 -15
  174. claude_mpm/services/mcp_gateway/server/mcp_gateway.py +0 -414
  175. claude_mpm/services/mcp_gateway/server/stdio_handler.py +0 -372
  176. claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -712
  177. claude_mpm/services/mcp_gateway/tools/__init__.py +0 -36
  178. claude_mpm/services/mcp_gateway/tools/base_adapter.py +0 -485
  179. claude_mpm/services/mcp_gateway/tools/document_summarizer.py +0 -789
  180. claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +0 -654
  181. claude_mpm/services/mcp_gateway/tools/health_check_tool.py +0 -456
  182. claude_mpm/services/mcp_gateway/tools/hello_world.py +0 -551
  183. claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +0 -555
  184. claude_mpm/services/mcp_gateway/utils/__init__.py +0 -14
  185. claude_mpm/services/mcp_gateway/utils/package_version_checker.py +0 -160
  186. claude_mpm/services/mcp_gateway/utils/update_preferences.py +0 -170
  187. claude_mpm-5.1.8.dist-info/entry_points.txt +0 -10
  188. claude_mpm-5.1.8.dist-info/licenses/LICENSE +0 -21
  189. /claude_mpm/agents/{OUTPUT_STYLE.md → CLAUDE_MPM_OUTPUT_STYLE.md} +0 -0
  190. {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/WHEEL +0 -0
  191. {claude_mpm-5.1.8.dist-info → claude_mpm-5.4.22.dist-info}/top_level.txt +0 -0
@@ -1,14 +1,15 @@
1
1
  """
2
2
  Config command parser for claude-mpm CLI.
3
3
 
4
- WHY: This module provides the config command which is synonymous with configure.
5
- Both launch the interactive configuration TUI.
4
+ WHY: This module provides the unified config command with subcommands for
5
+ auto-configuration, viewing, validation, and status checks.
6
6
 
7
- DESIGN DECISION: 'config' and 'configure' are aliases - both commands provide
8
- identical functionality through the interactive configuration interface.
7
+ DESIGN DECISION: 'config' provides both auto-configuration (default) and
8
+ manual configuration management through subcommands.
9
9
  """
10
10
 
11
11
  import argparse
12
+ from pathlib import Path
12
13
 
13
14
  from ...constants import CLICommands
14
15
  from .base_parser import add_common_arguments
@@ -16,11 +17,10 @@ from .base_parser import add_common_arguments
16
17
 
17
18
  def add_config_subparser(subparsers) -> argparse.ArgumentParser:
18
19
  """
19
- Add the config subparser (alias for configure).
20
+ Add the unified config subparser with all configuration subcommands.
20
21
 
21
- WHY: 'config' and 'configure' are synonymous commands that both launch
22
- the interactive configuration interface. This provides a consistent
23
- parser setup matching the configure command.
22
+ WHY: 'config' provides comprehensive configuration management including
23
+ auto-detection, manual viewing, validation, and status checks.
24
24
 
25
25
  Args:
26
26
  subparsers: The subparsers object from the main parser
@@ -28,111 +28,181 @@ def add_config_subparser(subparsers) -> argparse.ArgumentParser:
28
28
  Returns:
29
29
  The configured config subparser
30
30
  """
31
- # Config command - alias for configure (interactive configuration)
31
+ # Config command with subcommands
32
32
  config_parser = subparsers.add_parser(
33
33
  CLICommands.CONFIG.value,
34
- help="Interactive configuration interface for managing agents and behaviors (alias for 'configure')",
35
- description="Launch an interactive Rich-based menu for configuring claude-mpm agents, templates, and behavior files",
36
- )
34
+ help="Unified configuration management with auto-detection and manual viewing",
35
+ description="""
36
+ Unified configuration management for Claude MPM.
37
37
 
38
- # Add common arguments
39
- add_common_arguments(config_parser)
38
+ Available commands:
39
+ auto Auto-configure agents and skills based on detected toolchain (default)
40
+ view View current configuration settings
41
+ validate Validate configuration files
42
+ status Show configuration health and status
40
43
 
41
- # Configuration scope options
42
- scope_group = config_parser.add_argument_group("configuration scope")
43
- scope_group.add_argument(
44
- "--scope",
45
- choices=["project", "user"],
46
- default="project",
47
- help="Configuration scope to manage (default: project)",
44
+ Running 'config' with no subcommand defaults to 'auto' in preview mode.
45
+ """,
46
+ formatter_class=argparse.RawDescriptionHelpFormatter,
48
47
  )
48
+ add_common_arguments(config_parser)
49
49
 
50
- # Direct navigation options (skip main menu)
51
- nav_group = config_parser.add_argument_group("direct navigation")
52
- nav_group.add_argument(
53
- "--agents", action="store_true", help="Jump directly to agent management"
50
+ # Add subcommands
51
+ config_subparsers = config_parser.add_subparsers(
52
+ dest="config_command", help="Configuration commands", metavar="SUBCOMMAND"
53
+ )
54
+
55
+ # Auto-configure subcommand (default)
56
+ auto_parser = config_subparsers.add_parser(
57
+ "auto",
58
+ help="Auto-configure agents and skills based on detected toolchain",
59
+ description="""
60
+ Auto-configure agents and skills for your project based on detected toolchain.
61
+
62
+ This command analyzes your project to detect languages, frameworks, and
63
+ deployment targets, then recommends and deploys appropriate specialized
64
+ agents and skills automatically.
65
+
66
+ The command provides safety features including:
67
+ • Preview mode to see changes before applying
68
+ • Confidence thresholds to ensure quality matches
69
+ • Validation gates to block invalid configurations
70
+ • Rollback on failure to maintain consistency
71
+ """,
72
+ formatter_class=argparse.RawDescriptionHelpFormatter,
73
+ )
74
+ add_common_arguments(auto_parser)
75
+
76
+ # Configuration mode
77
+ mode_group = auto_parser.add_mutually_exclusive_group()
78
+ mode_group.add_argument(
79
+ "--preview",
80
+ "--dry-run",
81
+ dest="preview",
82
+ action="store_true",
83
+ help="Show what would be configured without deploying (preview mode)",
54
84
  )
55
- nav_group.add_argument(
56
- "--templates", action="store_true", help="Jump directly to template editing"
85
+ mode_group.add_argument(
86
+ "--yes",
87
+ "-y",
88
+ action="store_true",
89
+ help="Skip confirmation prompts and deploy automatically",
57
90
  )
58
- nav_group.add_argument(
59
- "--behaviors",
91
+
92
+ # Scope selection
93
+ scope_group = auto_parser.add_mutually_exclusive_group()
94
+ scope_group.add_argument(
95
+ "--agents-only",
60
96
  action="store_true",
61
- help="Jump directly to behavior file management",
97
+ help="Configure agents only (skip skills)",
62
98
  )
63
- nav_group.add_argument(
64
- "--startup",
99
+ scope_group.add_argument(
100
+ "--skills-only",
65
101
  action="store_true",
66
- help="Configure startup services and agents",
102
+ help="Configure skills only (skip agents)",
103
+ )
104
+
105
+ # Configuration options
106
+ auto_parser.add_argument(
107
+ "--min-confidence",
108
+ type=float,
109
+ default=0.8,
110
+ metavar="FLOAT",
111
+ help="Minimum confidence threshold for recommendations (0.0-1.0, default: 0.8)",
112
+ )
113
+
114
+ auto_parser.add_argument(
115
+ "--project-path",
116
+ type=Path,
117
+ metavar="PATH",
118
+ help="Project path to analyze (default: current directory)",
67
119
  )
68
- nav_group.add_argument(
69
- "--version-info",
120
+
121
+ auto_parser.add_argument(
122
+ "--json",
70
123
  action="store_true",
71
- help="Display version information and exit",
124
+ help="Output results in JSON format",
72
125
  )
73
126
 
74
- # Non-interactive options
75
- noninteractive_group = config_parser.add_argument_group("non-interactive options")
76
- noninteractive_group.add_argument(
77
- "--list-agents", action="store_true", help="List all available agents and exit"
127
+ # View subcommand
128
+ view_parser = config_subparsers.add_parser(
129
+ "view",
130
+ help="View current configuration settings",
78
131
  )
79
- noninteractive_group.add_argument(
80
- "--enable-agent",
132
+ add_common_arguments(view_parser)
133
+
134
+ view_parser.add_argument(
135
+ "--section",
81
136
  type=str,
82
- metavar="AGENT_NAME",
83
- help="Enable a specific agent and exit",
137
+ metavar="SECTION",
138
+ help="Specific configuration section to view (agents, memory, websocket, etc.)",
84
139
  )
85
- noninteractive_group.add_argument(
86
- "--disable-agent",
87
- type=str,
88
- metavar="AGENT_NAME",
89
- help="Disable a specific agent and exit",
140
+ view_parser.add_argument(
141
+ "--format",
142
+ choices=["yaml", "json", "table", "text"],
143
+ default="table",
144
+ help="Output format (default: table)",
90
145
  )
91
- noninteractive_group.add_argument(
92
- "--export-config",
93
- type=str,
94
- metavar="FILE",
95
- help="Export current configuration to a file",
146
+ view_parser.add_argument(
147
+ "--show-defaults",
148
+ action="store_true",
149
+ help="Include default values in output",
96
150
  )
97
- noninteractive_group.add_argument(
98
- "--import-config",
99
- type=str,
100
- metavar="FILE",
101
- help="Import configuration from a file",
151
+ view_parser.add_argument(
152
+ "--config-file",
153
+ type=Path,
154
+ metavar="PATH",
155
+ help="Specific config file to view (default: all)",
102
156
  )
103
157
 
104
- # Hook management options
105
- hooks_group = config_parser.add_argument_group("hook management")
106
- hooks_group.add_argument(
107
- "--install-hooks",
108
- action="store_true",
109
- help="Install Claude MPM hooks for Claude Code integration",
158
+ # Validate subcommand
159
+ validate_parser = config_subparsers.add_parser(
160
+ "validate",
161
+ help="Validate configuration files for correctness",
110
162
  )
111
- hooks_group.add_argument(
112
- "--verify-hooks",
113
- action="store_true",
114
- help="Verify that Claude MPM hooks are properly installed",
163
+ add_common_arguments(validate_parser)
164
+
165
+ validate_parser.add_argument(
166
+ "--config-file",
167
+ type=Path,
168
+ metavar="PATH",
169
+ help="Validate specific config file (default: all)",
115
170
  )
116
- hooks_group.add_argument(
117
- "--uninstall-hooks",
171
+ validate_parser.add_argument(
172
+ "--strict",
118
173
  action="store_true",
119
- help="Uninstall Claude MPM hooks",
174
+ help="Use strict validation rules",
120
175
  )
121
- hooks_group.add_argument(
122
- "--force",
176
+ validate_parser.add_argument(
177
+ "--fix",
123
178
  action="store_true",
124
- help="Force reinstallation of hooks even if they already exist",
179
+ help="Attempt to fix validation errors automatically",
125
180
  )
126
181
 
127
- # Display options
128
- display_group = config_parser.add_argument_group("display options")
129
- display_group.add_argument(
130
- "--no-colors",
131
- action="store_true",
132
- help="Disable colored output in the interface",
182
+ # Status subcommand
183
+ status_parser = config_subparsers.add_parser(
184
+ "status",
185
+ help="Show configuration health and status",
133
186
  )
134
- display_group.add_argument(
135
- "--compact", action="store_true", help="Use compact display mode"
187
+ add_common_arguments(status_parser)
188
+
189
+ # Note: --verbose is provided by add_common_arguments()
190
+ status_parser.add_argument(
191
+ "--check-response-logging",
192
+ action="store_true",
193
+ help="Check response logging configuration",
194
+ )
195
+ status_parser.add_argument(
196
+ "--format",
197
+ choices=["yaml", "json", "text"],
198
+ default="text",
199
+ help="Output format (default: text)",
200
+ )
201
+ status_parser.add_argument(
202
+ "--config-file",
203
+ type=Path,
204
+ metavar="PATH",
205
+ help="Specific config file to check (default: all)",
136
206
  )
137
207
 
138
208
  return config_parser
@@ -168,9 +168,10 @@ def add_skills_subparser(subparsers) -> argparse.ArgumentParser:
168
168
  help="Force redeployment of already deployed skills",
169
169
  )
170
170
  deploy_github_parser.add_argument(
171
- "--all",
171
+ "--all-skills",
172
172
  action="store_true",
173
- help="Deploy all available skills (no filtering)",
173
+ dest="all_skills",
174
+ help="Deploy ALL available skills (not just agent-referenced). By default, only skills referenced in agent frontmatter are deployed.",
174
175
  )
175
176
 
176
177
  # List available GitHub skills