claude-mpm 4.7.4__py3-none-any.whl → 4.18.2__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/agents/BASE_AGENT_TEMPLATE.md +118 -0
- claude_mpm/agents/BASE_ENGINEER.md +286 -0
- claude_mpm/agents/BASE_PM.md +106 -1
- claude_mpm/agents/OUTPUT_STYLE.md +329 -11
- claude_mpm/agents/PM_INSTRUCTIONS.md +397 -459
- claude_mpm/agents/agent_loader.py +17 -5
- claude_mpm/agents/frontmatter_validator.py +284 -253
- claude_mpm/agents/templates/README.md +465 -0
- claude_mpm/agents/templates/agent-manager.json +4 -1
- claude_mpm/agents/templates/agentic-coder-optimizer.json +13 -3
- claude_mpm/agents/templates/api_qa.json +11 -2
- claude_mpm/agents/templates/circuit_breakers.md +638 -0
- claude_mpm/agents/templates/clerk-ops.json +12 -2
- claude_mpm/agents/templates/code_analyzer.json +8 -2
- claude_mpm/agents/templates/content-agent.json +358 -0
- claude_mpm/agents/templates/dart_engineer.json +15 -2
- claude_mpm/agents/templates/data_engineer.json +15 -2
- claude_mpm/agents/templates/documentation.json +10 -2
- claude_mpm/agents/templates/engineer.json +21 -1
- claude_mpm/agents/templates/gcp_ops_agent.json +12 -2
- claude_mpm/agents/templates/git_file_tracking.md +584 -0
- claude_mpm/agents/templates/golang_engineer.json +270 -0
- claude_mpm/agents/templates/imagemagick.json +4 -1
- claude_mpm/agents/templates/java_engineer.json +346 -0
- claude_mpm/agents/templates/local_ops_agent.json +1227 -6
- claude_mpm/agents/templates/memory_manager.json +4 -1
- claude_mpm/agents/templates/nextjs_engineer.json +141 -133
- claude_mpm/agents/templates/ops.json +12 -2
- claude_mpm/agents/templates/php-engineer.json +270 -174
- claude_mpm/agents/templates/pm_examples.md +474 -0
- claude_mpm/agents/templates/pm_red_flags.md +240 -0
- claude_mpm/agents/templates/product_owner.json +338 -0
- claude_mpm/agents/templates/project_organizer.json +14 -4
- claude_mpm/agents/templates/prompt-engineer.json +13 -2
- claude_mpm/agents/templates/python_engineer.json +174 -81
- claude_mpm/agents/templates/qa.json +11 -2
- claude_mpm/agents/templates/react_engineer.json +16 -3
- claude_mpm/agents/templates/refactoring_engineer.json +12 -2
- claude_mpm/agents/templates/research.json +34 -21
- claude_mpm/agents/templates/response_format.md +583 -0
- claude_mpm/agents/templates/ruby-engineer.json +129 -192
- claude_mpm/agents/templates/rust_engineer.json +270 -0
- claude_mpm/agents/templates/security.json +10 -2
- claude_mpm/agents/templates/svelte-engineer.json +225 -0
- claude_mpm/agents/templates/ticketing.json +10 -2
- claude_mpm/agents/templates/typescript_engineer.json +116 -125
- claude_mpm/agents/templates/validation_templates.md +312 -0
- claude_mpm/agents/templates/vercel_ops_agent.json +12 -2
- claude_mpm/agents/templates/version_control.json +12 -2
- claude_mpm/agents/templates/web_qa.json +11 -2
- claude_mpm/agents/templates/web_ui.json +15 -2
- claude_mpm/cli/__init__.py +34 -614
- claude_mpm/cli/commands/agent_manager.py +25 -12
- claude_mpm/cli/commands/agent_state_manager.py +186 -0
- claude_mpm/cli/commands/agents.py +235 -148
- claude_mpm/cli/commands/agents_detect.py +380 -0
- claude_mpm/cli/commands/agents_recommend.py +309 -0
- claude_mpm/cli/commands/aggregate.py +7 -3
- claude_mpm/cli/commands/analyze.py +9 -4
- claude_mpm/cli/commands/analyze_code.py +7 -2
- claude_mpm/cli/commands/auto_configure.py +570 -0
- claude_mpm/cli/commands/config.py +47 -13
- claude_mpm/cli/commands/configure.py +419 -1571
- claude_mpm/cli/commands/configure_agent_display.py +261 -0
- claude_mpm/cli/commands/configure_behavior_manager.py +204 -0
- claude_mpm/cli/commands/configure_hook_manager.py +225 -0
- claude_mpm/cli/commands/configure_models.py +18 -0
- claude_mpm/cli/commands/configure_navigation.py +167 -0
- claude_mpm/cli/commands/configure_paths.py +104 -0
- claude_mpm/cli/commands/configure_persistence.py +254 -0
- claude_mpm/cli/commands/configure_startup_manager.py +646 -0
- claude_mpm/cli/commands/configure_template_editor.py +497 -0
- claude_mpm/cli/commands/configure_validators.py +73 -0
- claude_mpm/cli/commands/local_deploy.py +537 -0
- claude_mpm/cli/commands/memory.py +54 -20
- claude_mpm/cli/commands/mpm_init.py +585 -196
- claude_mpm/cli/commands/mpm_init_handler.py +37 -3
- claude_mpm/cli/commands/search.py +170 -4
- claude_mpm/cli/commands/upgrade.py +152 -0
- claude_mpm/cli/executor.py +202 -0
- claude_mpm/cli/helpers.py +105 -0
- claude_mpm/cli/interactive/__init__.py +3 -0
- claude_mpm/cli/interactive/skills_wizard.py +491 -0
- claude_mpm/cli/parsers/__init__.py +7 -1
- claude_mpm/cli/parsers/agents_parser.py +9 -0
- claude_mpm/cli/parsers/auto_configure_parser.py +245 -0
- claude_mpm/cli/parsers/base_parser.py +110 -3
- claude_mpm/cli/parsers/local_deploy_parser.py +227 -0
- claude_mpm/cli/parsers/mpm_init_parser.py +65 -5
- claude_mpm/cli/shared/output_formatters.py +28 -19
- claude_mpm/cli/startup.py +481 -0
- claude_mpm/cli/utils.py +52 -1
- claude_mpm/commands/mpm-agents-detect.md +168 -0
- claude_mpm/commands/mpm-agents-recommend.md +214 -0
- claude_mpm/commands/mpm-agents.md +75 -1
- claude_mpm/commands/mpm-auto-configure.md +217 -0
- claude_mpm/commands/mpm-help.md +163 -0
- claude_mpm/commands/mpm-init.md +148 -3
- claude_mpm/commands/mpm-version.md +113 -0
- claude_mpm/commands/mpm.md +1 -0
- claude_mpm/config/agent_config.py +2 -2
- claude_mpm/config/model_config.py +428 -0
- claude_mpm/constants.py +1 -0
- claude_mpm/core/base_service.py +13 -12
- claude_mpm/core/enums.py +452 -0
- claude_mpm/core/factories.py +1 -1
- claude_mpm/core/instruction_reinforcement_hook.py +2 -1
- claude_mpm/core/interactive_session.py +9 -3
- claude_mpm/core/log_manager.py +2 -0
- claude_mpm/core/logging_config.py +6 -2
- claude_mpm/core/oneshot_session.py +8 -4
- claude_mpm/core/optimized_agent_loader.py +3 -3
- claude_mpm/core/output_style_manager.py +12 -192
- claude_mpm/core/service_registry.py +5 -1
- claude_mpm/core/types.py +2 -9
- claude_mpm/core/typing_utils.py +7 -6
- claude_mpm/dashboard/static/js/dashboard.js +0 -14
- claude_mpm/dashboard/templates/index.html +3 -41
- claude_mpm/hooks/__init__.py +20 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +4 -2
- claude_mpm/hooks/claude_hooks/response_tracking.py +35 -1
- claude_mpm/hooks/claude_hooks/services/connection_manager_http.py +23 -2
- claude_mpm/hooks/failure_learning/__init__.py +60 -0
- claude_mpm/hooks/failure_learning/failure_detection_hook.py +235 -0
- claude_mpm/hooks/failure_learning/fix_detection_hook.py +217 -0
- claude_mpm/hooks/failure_learning/learning_extraction_hook.py +286 -0
- claude_mpm/hooks/instruction_reinforcement.py +7 -2
- claude_mpm/hooks/kuzu_enrichment_hook.py +263 -0
- claude_mpm/hooks/kuzu_memory_hook.py +37 -12
- claude_mpm/hooks/kuzu_response_hook.py +183 -0
- claude_mpm/models/resume_log.py +340 -0
- claude_mpm/services/agents/__init__.py +18 -5
- claude_mpm/services/agents/auto_config_manager.py +796 -0
- claude_mpm/services/agents/deployment/agent_configuration_manager.py +1 -1
- claude_mpm/services/agents/deployment/agent_record_service.py +1 -1
- claude_mpm/services/agents/deployment/agent_validator.py +17 -1
- claude_mpm/services/agents/deployment/async_agent_deployment.py +1 -1
- claude_mpm/services/agents/deployment/interface_adapter.py +3 -2
- claude_mpm/services/agents/deployment/local_template_deployment.py +1 -1
- claude_mpm/services/agents/deployment/pipeline/steps/agent_processing_step.py +7 -6
- claude_mpm/services/agents/deployment/pipeline/steps/base_step.py +7 -16
- claude_mpm/services/agents/deployment/pipeline/steps/configuration_step.py +4 -3
- claude_mpm/services/agents/deployment/pipeline/steps/target_directory_step.py +5 -3
- claude_mpm/services/agents/deployment/pipeline/steps/validation_step.py +6 -5
- claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +9 -6
- claude_mpm/services/agents/deployment/validation/__init__.py +3 -1
- claude_mpm/services/agents/deployment/validation/validation_result.py +1 -9
- claude_mpm/services/agents/local_template_manager.py +1 -1
- claude_mpm/services/agents/memory/agent_memory_manager.py +5 -2
- claude_mpm/services/agents/observers.py +547 -0
- claude_mpm/services/agents/recommender.py +568 -0
- claude_mpm/services/agents/registry/modification_tracker.py +5 -2
- claude_mpm/services/command_handler_service.py +11 -5
- claude_mpm/services/core/__init__.py +33 -1
- claude_mpm/services/core/interfaces/__init__.py +90 -3
- claude_mpm/services/core/interfaces/agent.py +184 -0
- claude_mpm/services/core/interfaces/health.py +172 -0
- claude_mpm/services/core/interfaces/model.py +281 -0
- claude_mpm/services/core/interfaces/process.py +372 -0
- claude_mpm/services/core/interfaces/project.py +121 -0
- claude_mpm/services/core/interfaces/restart.py +307 -0
- claude_mpm/services/core/interfaces/stability.py +260 -0
- claude_mpm/services/core/memory_manager.py +11 -24
- claude_mpm/services/core/models/__init__.py +79 -0
- claude_mpm/services/core/models/agent_config.py +381 -0
- claude_mpm/services/core/models/health.py +162 -0
- claude_mpm/services/core/models/process.py +235 -0
- claude_mpm/services/core/models/restart.py +302 -0
- claude_mpm/services/core/models/stability.py +264 -0
- claude_mpm/services/core/models/toolchain.py +306 -0
- claude_mpm/services/core/path_resolver.py +23 -7
- claude_mpm/services/diagnostics/__init__.py +2 -2
- claude_mpm/services/diagnostics/checks/agent_check.py +25 -24
- claude_mpm/services/diagnostics/checks/claude_code_check.py +24 -23
- claude_mpm/services/diagnostics/checks/common_issues_check.py +25 -24
- claude_mpm/services/diagnostics/checks/configuration_check.py +24 -23
- claude_mpm/services/diagnostics/checks/filesystem_check.py +18 -17
- claude_mpm/services/diagnostics/checks/installation_check.py +30 -29
- claude_mpm/services/diagnostics/checks/instructions_check.py +20 -19
- claude_mpm/services/diagnostics/checks/mcp_check.py +50 -36
- claude_mpm/services/diagnostics/checks/mcp_services_check.py +38 -33
- claude_mpm/services/diagnostics/checks/monitor_check.py +23 -22
- claude_mpm/services/diagnostics/checks/startup_log_check.py +9 -8
- claude_mpm/services/diagnostics/diagnostic_runner.py +6 -5
- claude_mpm/services/diagnostics/doctor_reporter.py +28 -25
- claude_mpm/services/diagnostics/models.py +19 -24
- claude_mpm/services/infrastructure/monitoring/__init__.py +1 -1
- claude_mpm/services/infrastructure/monitoring/aggregator.py +12 -12
- claude_mpm/services/infrastructure/monitoring/base.py +5 -13
- claude_mpm/services/infrastructure/monitoring/network.py +7 -6
- claude_mpm/services/infrastructure/monitoring/process.py +13 -12
- claude_mpm/services/infrastructure/monitoring/resources.py +7 -6
- claude_mpm/services/infrastructure/monitoring/service.py +16 -15
- claude_mpm/services/infrastructure/resume_log_generator.py +439 -0
- claude_mpm/services/local_ops/__init__.py +163 -0
- claude_mpm/services/local_ops/crash_detector.py +257 -0
- claude_mpm/services/local_ops/health_checks/__init__.py +28 -0
- claude_mpm/services/local_ops/health_checks/http_check.py +224 -0
- claude_mpm/services/local_ops/health_checks/process_check.py +236 -0
- claude_mpm/services/local_ops/health_checks/resource_check.py +255 -0
- claude_mpm/services/local_ops/health_manager.py +430 -0
- claude_mpm/services/local_ops/log_monitor.py +396 -0
- claude_mpm/services/local_ops/memory_leak_detector.py +294 -0
- claude_mpm/services/local_ops/process_manager.py +595 -0
- claude_mpm/services/local_ops/resource_monitor.py +331 -0
- claude_mpm/services/local_ops/restart_manager.py +401 -0
- claude_mpm/services/local_ops/restart_policy.py +387 -0
- claude_mpm/services/local_ops/state_manager.py +372 -0
- claude_mpm/services/local_ops/unified_manager.py +600 -0
- claude_mpm/services/mcp_config_manager.py +9 -4
- claude_mpm/services/mcp_gateway/core/__init__.py +1 -2
- claude_mpm/services/mcp_gateway/core/base.py +18 -31
- claude_mpm/services/mcp_gateway/main.py +30 -0
- claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +206 -32
- claude_mpm/services/mcp_gateway/tools/health_check_tool.py +30 -28
- claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +25 -5
- claude_mpm/services/mcp_service_verifier.py +1 -1
- claude_mpm/services/memory/failure_tracker.py +563 -0
- claude_mpm/services/memory_hook_service.py +165 -4
- claude_mpm/services/model/__init__.py +147 -0
- claude_mpm/services/model/base_provider.py +365 -0
- claude_mpm/services/model/claude_provider.py +412 -0
- claude_mpm/services/model/model_router.py +453 -0
- claude_mpm/services/model/ollama_provider.py +415 -0
- claude_mpm/services/monitor/daemon_manager.py +3 -2
- claude_mpm/services/monitor/handlers/dashboard.py +2 -1
- claude_mpm/services/monitor/handlers/hooks.py +2 -1
- claude_mpm/services/monitor/management/lifecycle.py +3 -2
- claude_mpm/services/monitor/server.py +2 -1
- claude_mpm/services/project/__init__.py +23 -0
- claude_mpm/services/project/detection_strategies.py +719 -0
- claude_mpm/services/project/toolchain_analyzer.py +581 -0
- claude_mpm/services/self_upgrade_service.py +342 -0
- claude_mpm/services/session_management_service.py +3 -2
- claude_mpm/services/session_manager.py +205 -1
- claude_mpm/services/shared/async_service_base.py +16 -27
- claude_mpm/services/shared/lifecycle_service_base.py +1 -14
- claude_mpm/services/socketio/handlers/__init__.py +5 -2
- claude_mpm/services/socketio/handlers/hook.py +13 -2
- claude_mpm/services/socketio/handlers/registry.py +4 -2
- claude_mpm/services/socketio/server/main.py +10 -8
- claude_mpm/services/subprocess_launcher_service.py +14 -5
- claude_mpm/services/unified/analyzer_strategies/code_analyzer.py +8 -7
- claude_mpm/services/unified/analyzer_strategies/dependency_analyzer.py +6 -5
- claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +8 -7
- claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +7 -6
- claude_mpm/services/unified/analyzer_strategies/structure_analyzer.py +5 -4
- claude_mpm/services/unified/config_strategies/validation_strategy.py +13 -9
- claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +10 -3
- claude_mpm/services/unified/deployment_strategies/local.py +6 -5
- claude_mpm/services/unified/deployment_strategies/utils.py +6 -5
- claude_mpm/services/unified/deployment_strategies/vercel.py +7 -6
- claude_mpm/services/unified/interfaces.py +3 -1
- claude_mpm/services/unified/unified_analyzer.py +14 -10
- claude_mpm/services/unified/unified_config.py +2 -1
- claude_mpm/services/unified/unified_deployment.py +9 -4
- claude_mpm/services/version_service.py +104 -1
- claude_mpm/skills/__init__.py +21 -0
- claude_mpm/skills/bundled/__init__.py +6 -0
- claude_mpm/skills/bundled/api-documentation.md +393 -0
- claude_mpm/skills/bundled/async-testing.md +571 -0
- claude_mpm/skills/bundled/code-review.md +143 -0
- claude_mpm/skills/bundled/database-migration.md +199 -0
- claude_mpm/skills/bundled/docker-containerization.md +194 -0
- claude_mpm/skills/bundled/express-local-dev.md +1429 -0
- claude_mpm/skills/bundled/fastapi-local-dev.md +1199 -0
- claude_mpm/skills/bundled/git-workflow.md +414 -0
- claude_mpm/skills/bundled/imagemagick.md +204 -0
- claude_mpm/skills/bundled/json-data-handling.md +223 -0
- claude_mpm/skills/bundled/nextjs-local-dev.md +807 -0
- claude_mpm/skills/bundled/pdf.md +141 -0
- claude_mpm/skills/bundled/performance-profiling.md +567 -0
- claude_mpm/skills/bundled/refactoring-patterns.md +180 -0
- claude_mpm/skills/bundled/security-scanning.md +327 -0
- claude_mpm/skills/bundled/systematic-debugging.md +473 -0
- claude_mpm/skills/bundled/test-driven-development.md +378 -0
- claude_mpm/skills/bundled/vite-local-dev.md +1061 -0
- claude_mpm/skills/bundled/web-performance-optimization.md +2305 -0
- claude_mpm/skills/bundled/xlsx.md +157 -0
- claude_mpm/skills/registry.py +286 -0
- claude_mpm/skills/skill_manager.py +310 -0
- claude_mpm/storage/state_storage.py +15 -15
- claude_mpm/tools/code_tree_analyzer.py +177 -141
- claude_mpm/tools/code_tree_events.py +4 -2
- claude_mpm/utils/agent_dependency_loader.py +40 -20
- claude_mpm/utils/display_helper.py +260 -0
- claude_mpm/utils/git_analyzer.py +407 -0
- claude_mpm/utils/robust_installer.py +73 -19
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/METADATA +129 -12
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/RECORD +295 -193
- claude_mpm/dashboard/static/css/code-tree.css +0 -1639
- claude_mpm/dashboard/static/index-hub-backup.html +0 -713
- claude_mpm/dashboard/static/js/components/code-tree/tree-breadcrumb.js +0 -353
- claude_mpm/dashboard/static/js/components/code-tree/tree-constants.js +0 -235
- claude_mpm/dashboard/static/js/components/code-tree/tree-search.js +0 -409
- claude_mpm/dashboard/static/js/components/code-tree/tree-utils.js +0 -435
- claude_mpm/dashboard/static/js/components/code-tree.js +0 -5869
- claude_mpm/dashboard/static/js/components/code-viewer.js +0 -1386
- claude_mpm/hooks/claude_hooks/hook_handler_eventbus.py +0 -425
- claude_mpm/hooks/claude_hooks/hook_handler_original.py +0 -1041
- claude_mpm/hooks/claude_hooks/hook_handler_refactored.py +0 -347
- claude_mpm/services/agents/deployment/agent_lifecycle_manager_refactored.py +0 -575
- claude_mpm/services/project/analyzer_refactored.py +0 -450
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/WHEEL +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/entry_points.txt +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/top_level.txt +0 -0
|
@@ -16,6 +16,7 @@ import os
|
|
|
16
16
|
from pathlib import Path
|
|
17
17
|
from typing import Any, Dict
|
|
18
18
|
|
|
19
|
+
from ...core.enums import OutputFormat
|
|
19
20
|
from ...core.shared.config_loader import ConfigLoader
|
|
20
21
|
from ...services.agents.memory import AgentMemoryManager
|
|
21
22
|
from ...services.cli.memory_crud_service import MemoryCRUDService
|
|
@@ -23,6 +24,14 @@ from ...services.cli.memory_output_formatter import MemoryOutputFormatter
|
|
|
23
24
|
from ..shared.base_command import CommandResult, MemoryCommand
|
|
24
25
|
|
|
25
26
|
|
|
27
|
+
def _is_structured_output(args) -> bool:
|
|
28
|
+
"""Check if args specify structured output format (JSON/YAML)."""
|
|
29
|
+
if hasattr(args, "format"):
|
|
30
|
+
fmt = str(args.format).lower()
|
|
31
|
+
return fmt in (OutputFormat.JSON, OutputFormat.YAML)
|
|
32
|
+
return False
|
|
33
|
+
|
|
34
|
+
|
|
26
35
|
class MemoryManagementCommand(MemoryCommand):
|
|
27
36
|
"""Memory management command using shared utilities."""
|
|
28
37
|
|
|
@@ -60,6 +69,31 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
60
69
|
self._crud_service = MemoryCRUDService(memory_manager=self.memory_manager)
|
|
61
70
|
return self._crud_service
|
|
62
71
|
|
|
72
|
+
def _get_output_format(self, args) -> str:
|
|
73
|
+
"""
|
|
74
|
+
Get output format from args with enum default.
|
|
75
|
+
|
|
76
|
+
Args:
|
|
77
|
+
args: Command arguments
|
|
78
|
+
|
|
79
|
+
Returns:
|
|
80
|
+
Output format string (compatible with both enum and string usage)
|
|
81
|
+
"""
|
|
82
|
+
return getattr(args, "format", OutputFormat.TEXT)
|
|
83
|
+
|
|
84
|
+
def _is_structured_format(self, format_str: str) -> bool:
|
|
85
|
+
"""
|
|
86
|
+
Check if format is structured (JSON/YAML).
|
|
87
|
+
|
|
88
|
+
Args:
|
|
89
|
+
format_str: Format string to check
|
|
90
|
+
|
|
91
|
+
Returns:
|
|
92
|
+
True if format is JSON or YAML
|
|
93
|
+
"""
|
|
94
|
+
fmt = str(format_str).lower()
|
|
95
|
+
return fmt in (OutputFormat.JSON, OutputFormat.YAML)
|
|
96
|
+
|
|
63
97
|
def validate_args(self, args) -> str:
|
|
64
98
|
"""Validate command arguments."""
|
|
65
99
|
# Check if memory command is valid
|
|
@@ -104,8 +138,8 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
104
138
|
available_commands = list(command_map.keys())
|
|
105
139
|
error_msg = f"Unknown memory command: {args.memory_command}"
|
|
106
140
|
|
|
107
|
-
output_format =
|
|
108
|
-
if output_format
|
|
141
|
+
output_format = self._get_output_format(args)
|
|
142
|
+
if self._is_structured_format(output_format):
|
|
109
143
|
return CommandResult.error_result(
|
|
110
144
|
error_msg, data={"available_commands": available_commands}
|
|
111
145
|
)
|
|
@@ -120,9 +154,9 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
120
154
|
def _show_status(self, args) -> CommandResult:
|
|
121
155
|
"""Show memory system status."""
|
|
122
156
|
try:
|
|
123
|
-
output_format =
|
|
157
|
+
output_format = self._get_output_format(args)
|
|
124
158
|
|
|
125
|
-
if output_format
|
|
159
|
+
if self._is_structured_format(output_format):
|
|
126
160
|
# Structured output
|
|
127
161
|
status_data = self._get_status_data()
|
|
128
162
|
return CommandResult.success_result(
|
|
@@ -175,7 +209,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
175
209
|
def _show_memories(self, args) -> CommandResult:
|
|
176
210
|
"""Show agent memories."""
|
|
177
211
|
try:
|
|
178
|
-
output_format =
|
|
212
|
+
output_format = self._get_output_format(args)
|
|
179
213
|
agent_id = getattr(args, "agent_id", None)
|
|
180
214
|
raw_output = getattr(args, "raw", False)
|
|
181
215
|
|
|
@@ -245,7 +279,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
245
279
|
def _init_memory(self, args) -> CommandResult:
|
|
246
280
|
"""Initialize project-specific memories."""
|
|
247
281
|
try:
|
|
248
|
-
output_format =
|
|
282
|
+
output_format = self._get_output_format(args)
|
|
249
283
|
|
|
250
284
|
# Use CRUD service for initialization task
|
|
251
285
|
result = self.crud_service.init_project_memories()
|
|
@@ -255,7 +289,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
255
289
|
result.get("error", "Failed to create initialization task")
|
|
256
290
|
)
|
|
257
291
|
|
|
258
|
-
if output_format
|
|
292
|
+
if self._is_structured_format(output_format):
|
|
259
293
|
# Return structured task data
|
|
260
294
|
return CommandResult.success_result(
|
|
261
295
|
"Memory initialization task created", data=result.get("task_data")
|
|
@@ -293,7 +327,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
293
327
|
def _add_learning(self, args) -> CommandResult:
|
|
294
328
|
"""Add learning to agent memory."""
|
|
295
329
|
try:
|
|
296
|
-
output_format =
|
|
330
|
+
output_format = self._get_output_format(args)
|
|
297
331
|
|
|
298
332
|
# Extract arguments
|
|
299
333
|
agent_id = getattr(args, "agent_id", None)
|
|
@@ -313,7 +347,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
313
347
|
result.get("error", "Failed to add learning")
|
|
314
348
|
)
|
|
315
349
|
|
|
316
|
-
if output_format
|
|
350
|
+
if self._is_structured_format(output_format):
|
|
317
351
|
# Return structured result
|
|
318
352
|
return CommandResult.success_result(
|
|
319
353
|
"Learning added to agent memory", data=result
|
|
@@ -333,7 +367,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
333
367
|
def _clean_memory(self, args) -> CommandResult:
|
|
334
368
|
"""Clean up old/unused memory files."""
|
|
335
369
|
try:
|
|
336
|
-
output_format =
|
|
370
|
+
output_format = self._get_output_format(args)
|
|
337
371
|
agent_id = getattr(args, "agent_id", None)
|
|
338
372
|
dry_run = getattr(args, "dry_run", True)
|
|
339
373
|
|
|
@@ -343,7 +377,7 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
343
377
|
if not result.get("success"):
|
|
344
378
|
return CommandResult.error_result(result.get("error", "Cleanup failed"))
|
|
345
379
|
|
|
346
|
-
if output_format
|
|
380
|
+
if self._is_structured_format(output_format):
|
|
347
381
|
# Return structured cleanup results
|
|
348
382
|
return CommandResult.success_result(
|
|
349
383
|
result.get("message", "Memory cleanup completed"), data=result
|
|
@@ -384,10 +418,10 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
384
418
|
def _optimize_memory(self, args) -> CommandResult:
|
|
385
419
|
"""Optimize memory files."""
|
|
386
420
|
try:
|
|
387
|
-
output_format =
|
|
421
|
+
output_format = self._get_output_format(args)
|
|
388
422
|
agent_id = getattr(args, "agent_id", None)
|
|
389
423
|
|
|
390
|
-
if output_format
|
|
424
|
+
if self._is_structured_format(output_format):
|
|
391
425
|
# For structured output, perform optimization and return results
|
|
392
426
|
if agent_id:
|
|
393
427
|
result = self.memory_manager.optimize_memory(agent_id)
|
|
@@ -419,9 +453,9 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
419
453
|
def _build_memory(self, args) -> CommandResult:
|
|
420
454
|
"""Build agent memories from project documentation."""
|
|
421
455
|
try:
|
|
422
|
-
output_format =
|
|
456
|
+
output_format = self._get_output_format(args)
|
|
423
457
|
|
|
424
|
-
if output_format
|
|
458
|
+
if self._is_structured_format(output_format):
|
|
425
459
|
# For structured output, return build results
|
|
426
460
|
build_data = {
|
|
427
461
|
"built_memories": [],
|
|
@@ -442,9 +476,9 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
442
476
|
def _cross_reference_memory(self, args) -> CommandResult:
|
|
443
477
|
"""Find cross-references and common patterns."""
|
|
444
478
|
try:
|
|
445
|
-
output_format =
|
|
479
|
+
output_format = self._get_output_format(args)
|
|
446
480
|
|
|
447
|
-
if output_format
|
|
481
|
+
if self._is_structured_format(output_format):
|
|
448
482
|
# For structured output, return cross-reference results
|
|
449
483
|
crossref_data = {
|
|
450
484
|
"common_patterns": [],
|
|
@@ -465,9 +499,9 @@ class MemoryManagementCommand(MemoryCommand):
|
|
|
465
499
|
def _route_memory_command(self, args) -> CommandResult:
|
|
466
500
|
"""Route memory command to appropriate agent."""
|
|
467
501
|
try:
|
|
468
|
-
output_format =
|
|
502
|
+
output_format = self._get_output_format(args)
|
|
469
503
|
|
|
470
|
-
if output_format
|
|
504
|
+
if self._is_structured_format(output_format):
|
|
471
505
|
# For structured output, return routing results
|
|
472
506
|
routing_data = {
|
|
473
507
|
"routed_to": "memory_agent",
|
|
@@ -495,7 +529,7 @@ def manage_memory(args) -> int:
|
|
|
495
529
|
result = command.execute(args)
|
|
496
530
|
|
|
497
531
|
# Print result if structured output format is requested
|
|
498
|
-
if
|
|
532
|
+
if _is_structured_output(args):
|
|
499
533
|
command.print_result(result, args)
|
|
500
534
|
|
|
501
535
|
return result.exit_code
|