claude-mpm 4.20.3__py3-none-any.whl → 5.1.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of claude-mpm might be problematic. Click here for more details.
- claude_mpm/VERSION +1 -1
- claude_mpm/agents/BASE_PM.md +35 -6
- claude_mpm/agents/OUTPUT_STYLE.md +3 -48
- claude_mpm/agents/PM_INSTRUCTIONS.md +1241 -667
- claude_mpm/agents/PM_INSTRUCTIONS_TEACH.md +1322 -0
- claude_mpm/agents/WORKFLOW.md +75 -2
- claude_mpm/agents/__init__.py +6 -0
- claude_mpm/agents/agent_loader.py +1 -4
- claude_mpm/agents/base_agent.json +6 -3
- claude_mpm/agents/base_agent_loader.py +10 -35
- claude_mpm/agents/frontmatter_validator.py +1 -1
- claude_mpm/agents/templates/circuit-breakers.md +1254 -0
- claude_mpm/agents/templates/context-management-examples.md +544 -0
- claude_mpm/agents/templates/{pm_red_flags.md → pm-red-flags.md} +89 -19
- claude_mpm/agents/templates/pr-workflow-examples.md +427 -0
- claude_mpm/agents/templates/research-gate-examples.md +669 -0
- claude_mpm/agents/templates/structured-questions-examples.md +615 -0
- claude_mpm/agents/templates/ticket-completeness-examples.md +139 -0
- claude_mpm/agents/templates/ticketing-examples.md +277 -0
- claude_mpm/cli/__init__.py +37 -2
- claude_mpm/cli/commands/__init__.py +2 -0
- claude_mpm/cli/commands/agent_source.py +774 -0
- claude_mpm/cli/commands/agent_state_manager.py +188 -30
- claude_mpm/cli/commands/agents.py +959 -36
- claude_mpm/cli/commands/agents_cleanup.py +210 -0
- claude_mpm/cli/commands/agents_discover.py +338 -0
- claude_mpm/cli/commands/aggregate.py +1 -1
- claude_mpm/cli/commands/analyze.py +3 -3
- claude_mpm/cli/commands/auto_configure.py +537 -239
- claude_mpm/cli/commands/cleanup.py +1 -1
- claude_mpm/cli/commands/config.py +7 -4
- claude_mpm/cli/commands/configure.py +924 -45
- claude_mpm/cli/commands/configure_agent_display.py +4 -4
- claude_mpm/cli/commands/configure_navigation.py +63 -46
- claude_mpm/cli/commands/debug.py +12 -12
- claude_mpm/cli/commands/doctor.py +10 -2
- claude_mpm/cli/commands/hook_errors.py +277 -0
- claude_mpm/cli/commands/local_deploy.py +1 -4
- claude_mpm/cli/commands/mcp_install_commands.py +1 -1
- claude_mpm/cli/commands/mpm_init/__init__.py +73 -0
- claude_mpm/cli/commands/mpm_init/core.py +573 -0
- claude_mpm/cli/commands/mpm_init/display.py +341 -0
- claude_mpm/cli/commands/mpm_init/git_activity.py +427 -0
- claude_mpm/cli/commands/mpm_init/modes.py +397 -0
- claude_mpm/cli/commands/mpm_init/prompts.py +442 -0
- claude_mpm/cli/commands/mpm_init_cli.py +396 -0
- claude_mpm/cli/commands/mpm_init_handler.py +67 -1
- claude_mpm/cli/commands/postmortem.py +401 -0
- claude_mpm/cli/commands/run.py +125 -167
- claude_mpm/cli/commands/skill_source.py +694 -0
- claude_mpm/cli/commands/skills.py +835 -44
- claude_mpm/cli/executor.py +78 -3
- claude_mpm/cli/interactive/agent_wizard.py +1032 -47
- claude_mpm/cli/parsers/agent_source_parser.py +171 -0
- claude_mpm/cli/parsers/agents_parser.py +256 -4
- claude_mpm/cli/parsers/auto_configure_parser.py +13 -0
- claude_mpm/cli/parsers/base_parser.py +53 -0
- claude_mpm/cli/parsers/config_parser.py +96 -43
- claude_mpm/cli/parsers/mpm_init_parser.py +42 -0
- claude_mpm/cli/parsers/skill_source_parser.py +169 -0
- claude_mpm/cli/parsers/skills_parser.py +145 -0
- claude_mpm/cli/parsers/source_parser.py +138 -0
- claude_mpm/cli/startup.py +564 -108
- claude_mpm/cli/startup_display.py +480 -0
- claude_mpm/cli/utils.py +1 -1
- claude_mpm/cli_module/commands.py +1 -1
- claude_mpm/commands/{mpm-auto-configure.md → mpm-agents-auto-configure.md} +9 -0
- claude_mpm/commands/mpm-agents-detect.md +9 -0
- claude_mpm/commands/{mpm-agents.md → mpm-agents-list.md} +9 -0
- claude_mpm/commands/mpm-agents-recommend.md +9 -0
- claude_mpm/commands/{mpm-config.md → mpm-config-view.md} +9 -0
- claude_mpm/commands/mpm-doctor.md +9 -0
- claude_mpm/commands/mpm-help.md +17 -2
- claude_mpm/commands/mpm-init.md +28 -3
- claude_mpm/commands/mpm-monitor.md +9 -0
- claude_mpm/commands/mpm-postmortem.md +123 -0
- claude_mpm/commands/mpm-session-resume.md +381 -0
- claude_mpm/commands/mpm-status.md +9 -0
- claude_mpm/commands/{mpm-organize.md → mpm-ticket-organize.md} +9 -0
- claude_mpm/commands/mpm-ticket-view.md +552 -0
- claude_mpm/commands/mpm-version.md +9 -0
- claude_mpm/commands/mpm.md +11 -0
- claude_mpm/config/agent_presets.py +488 -0
- claude_mpm/config/agent_sources.py +325 -0
- claude_mpm/config/skill_presets.py +392 -0
- claude_mpm/config/skill_sources.py +590 -0
- claude_mpm/constants.py +13 -0
- claude_mpm/core/api_validator.py +1 -1
- claude_mpm/core/claude_runner.py +19 -35
- claude_mpm/core/config.py +24 -0
- claude_mpm/core/constants.py +1 -1
- claude_mpm/core/framework/__init__.py +3 -16
- claude_mpm/core/framework/loaders/file_loader.py +54 -101
- claude_mpm/core/framework/loaders/instruction_loader.py +25 -5
- claude_mpm/core/framework/processors/metadata_processor.py +1 -1
- claude_mpm/core/hook_error_memory.py +381 -0
- claude_mpm/core/hook_manager.py +41 -2
- claude_mpm/core/interactive_session.py +131 -10
- claude_mpm/core/interfaces.py +56 -1
- claude_mpm/core/logger.py +3 -1
- claude_mpm/core/oneshot_session.py +110 -8
- claude_mpm/core/protocols/__init__.py +23 -0
- claude_mpm/core/protocols/runner_protocol.py +103 -0
- claude_mpm/core/protocols/session_protocol.py +131 -0
- claude_mpm/core/shared/singleton_manager.py +11 -4
- claude_mpm/core/system_context.py +38 -0
- claude_mpm/core/unified_config.py +22 -0
- claude_mpm/dashboard/static/css/activity.css +69 -69
- claude_mpm/dashboard/static/css/connection-status.css +10 -10
- claude_mpm/dashboard/static/css/dashboard.css +15 -15
- claude_mpm/dashboard/static/js/components/activity-tree.js +178 -178
- claude_mpm/dashboard/static/js/components/agent-hierarchy.js +101 -101
- claude_mpm/dashboard/static/js/components/agent-inference.js +31 -31
- claude_mpm/dashboard/static/js/components/build-tracker.js +59 -59
- claude_mpm/dashboard/static/js/components/code-simple.js +107 -107
- claude_mpm/dashboard/static/js/components/connection-debug.js +101 -101
- claude_mpm/dashboard/static/js/components/diff-viewer.js +113 -113
- claude_mpm/dashboard/static/js/components/event-viewer.js +12 -12
- claude_mpm/dashboard/static/js/components/file-change-tracker.js +57 -57
- claude_mpm/dashboard/static/js/components/file-change-viewer.js +74 -74
- claude_mpm/dashboard/static/js/components/file-tool-tracker.js +6 -6
- claude_mpm/dashboard/static/js/components/file-viewer.js +42 -42
- claude_mpm/dashboard/static/js/components/module-viewer.js +27 -27
- claude_mpm/dashboard/static/js/components/session-manager.js +14 -14
- claude_mpm/dashboard/static/js/components/socket-manager.js +1 -1
- claude_mpm/dashboard/static/js/components/ui-state-manager.js +14 -14
- claude_mpm/dashboard/static/js/components/unified-data-viewer.js +110 -110
- claude_mpm/dashboard/static/js/components/working-directory.js +8 -8
- claude_mpm/dashboard/static/js/connection-manager.js +76 -76
- claude_mpm/dashboard/static/js/dashboard.js +76 -58
- claude_mpm/dashboard/static/js/extension-error-handler.js +22 -22
- claude_mpm/dashboard/static/js/socket-client.js +138 -121
- claude_mpm/dashboard/templates/code_simple.html +23 -23
- claude_mpm/dashboard/templates/index.html +18 -18
- claude_mpm/experimental/cli_enhancements.py +1 -5
- claude_mpm/hooks/claude_hooks/__pycache__/__init__.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/event_handlers.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/hook_handler.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/memory_integration.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/response_tracking.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/__pycache__/tool_analysis.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +3 -1
- claude_mpm/hooks/claude_hooks/hook_handler.py +24 -7
- claude_mpm/hooks/claude_hooks/installer.py +45 -0
- claude_mpm/hooks/claude_hooks/memory_integration.py +12 -1
- claude_mpm/hooks/claude_hooks/services/__pycache__/__init__.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/connection_manager_http.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/duplicate_detector.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/state_manager.cpython-313.pyc +0 -0
- claude_mpm/hooks/claude_hooks/services/__pycache__/subagent_processor.cpython-313.pyc +0 -0
- claude_mpm/hooks/failure_learning/__init__.py +2 -8
- claude_mpm/hooks/failure_learning/failure_detection_hook.py +1 -6
- claude_mpm/hooks/failure_learning/fix_detection_hook.py +1 -6
- claude_mpm/hooks/failure_learning/learning_extraction_hook.py +1 -6
- claude_mpm/hooks/kuzu_response_hook.py +1 -5
- claude_mpm/hooks/templates/pre_tool_use_simple.py +78 -0
- claude_mpm/hooks/templates/pre_tool_use_template.py +323 -0
- claude_mpm/models/git_repository.py +198 -0
- claude_mpm/scripts/claude-hook-handler.sh +3 -3
- claude_mpm/scripts/start_activity_logging.py +3 -1
- claude_mpm/services/agents/agent_builder.py +45 -9
- claude_mpm/services/agents/agent_preset_service.py +238 -0
- claude_mpm/services/agents/agent_selection_service.py +484 -0
- claude_mpm/services/agents/auto_deploy_index_parser.py +569 -0
- claude_mpm/services/agents/cache_git_manager.py +621 -0
- claude_mpm/services/agents/deployment/agent_deployment.py +126 -2
- claude_mpm/services/agents/deployment/agent_discovery_service.py +105 -73
- claude_mpm/services/agents/deployment/agent_format_converter.py +1 -1
- claude_mpm/services/agents/deployment/agent_lifecycle_manager.py +1 -5
- claude_mpm/services/agents/deployment/agent_metrics_collector.py +3 -3
- claude_mpm/services/agents/deployment/agent_restore_handler.py +1 -4
- claude_mpm/services/agents/deployment/agent_template_builder.py +236 -15
- claude_mpm/services/agents/deployment/agents_directory_resolver.py +101 -15
- claude_mpm/services/agents/deployment/async_agent_deployment.py +2 -1
- claude_mpm/services/agents/deployment/facade/deployment_facade.py +3 -3
- claude_mpm/services/agents/deployment/multi_source_deployment_service.py +115 -15
- claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +2 -2
- claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +1 -4
- claude_mpm/services/agents/deployment/remote_agent_discovery_service.py +363 -0
- claude_mpm/services/agents/deployment/single_agent_deployer.py +2 -2
- claude_mpm/services/agents/deployment/system_instructions_deployer.py +168 -46
- claude_mpm/services/agents/deployment/validation/deployment_validator.py +2 -2
- claude_mpm/services/agents/git_source_manager.py +629 -0
- claude_mpm/services/agents/loading/framework_agent_loader.py +9 -12
- claude_mpm/services/agents/local_template_manager.py +50 -10
- claude_mpm/services/agents/single_tier_deployment_service.py +696 -0
- claude_mpm/services/agents/sources/__init__.py +13 -0
- claude_mpm/services/agents/sources/agent_sync_state.py +516 -0
- claude_mpm/services/agents/sources/git_source_sync_service.py +1087 -0
- claude_mpm/services/agents/startup_sync.py +239 -0
- claude_mpm/services/agents/toolchain_detector.py +474 -0
- claude_mpm/services/analysis/__init__.py +25 -0
- claude_mpm/services/analysis/postmortem_reporter.py +474 -0
- claude_mpm/services/analysis/postmortem_service.py +765 -0
- claude_mpm/services/cli/session_pause_manager.py +504 -0
- claude_mpm/services/cli/session_resume_helper.py +36 -16
- claude_mpm/services/cli/unified_dashboard_manager.py +1 -1
- claude_mpm/services/command_deployment_service.py +200 -6
- claude_mpm/services/core/base.py +31 -11
- claude_mpm/services/core/interfaces/__init__.py +1 -3
- claude_mpm/services/core/interfaces/health.py +1 -4
- claude_mpm/services/core/interfaces.py +56 -1
- claude_mpm/services/core/models/__init__.py +2 -11
- claude_mpm/services/core/models/agent_config.py +3 -0
- claude_mpm/services/core/models/process.py +4 -0
- claude_mpm/services/diagnostics/checks/__init__.py +4 -0
- claude_mpm/services/diagnostics/checks/agent_check.py +0 -2
- claude_mpm/services/diagnostics/checks/agent_sources_check.py +577 -0
- claude_mpm/services/diagnostics/checks/instructions_check.py +1 -2
- claude_mpm/services/diagnostics/checks/mcp_check.py +0 -1
- claude_mpm/services/diagnostics/checks/mcp_services_check.py +7 -15
- claude_mpm/services/diagnostics/checks/monitor_check.py +0 -1
- claude_mpm/services/diagnostics/checks/skill_sources_check.py +587 -0
- claude_mpm/services/diagnostics/diagnostic_runner.py +9 -0
- claude_mpm/services/diagnostics/doctor_reporter.py +40 -10
- claude_mpm/services/diagnostics/models.py +21 -0
- claude_mpm/services/event_bus/direct_relay.py +3 -3
- claude_mpm/services/event_bus/event_bus.py +36 -3
- claude_mpm/services/event_bus/relay.py +23 -7
- claude_mpm/services/events/consumers/logging.py +1 -2
- claude_mpm/services/git/__init__.py +21 -0
- claude_mpm/services/git/git_operations_service.py +494 -0
- claude_mpm/services/github/__init__.py +21 -0
- claude_mpm/services/github/github_cli_service.py +397 -0
- claude_mpm/services/infrastructure/monitoring/__init__.py +1 -5
- claude_mpm/services/infrastructure/monitoring/aggregator.py +1 -6
- claude_mpm/services/infrastructure/monitoring/resources.py +1 -1
- claude_mpm/services/instructions/__init__.py +9 -0
- claude_mpm/services/instructions/instruction_cache_service.py +374 -0
- claude_mpm/services/local_ops/__init__.py +5 -13
- claude_mpm/services/local_ops/health_checks/__init__.py +1 -3
- claude_mpm/services/local_ops/health_manager.py +1 -4
- claude_mpm/services/local_ops/process_manager.py +1 -1
- claude_mpm/services/local_ops/resource_monitor.py +2 -2
- claude_mpm/services/mcp_config_manager.py +75 -145
- claude_mpm/services/mcp_gateway/auto_configure.py +31 -25
- claude_mpm/services/mcp_gateway/config/configuration.py +1 -1
- claude_mpm/services/mcp_gateway/core/process_pool.py +41 -26
- claude_mpm/services/mcp_gateway/server/mcp_gateway.py +1 -6
- claude_mpm/services/mcp_gateway/server/stdio_server.py +0 -2
- claude_mpm/services/mcp_gateway/tools/document_summarizer.py +1 -1
- claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +26 -21
- claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +6 -2
- claude_mpm/services/mcp_service_verifier.py +6 -3
- claude_mpm/services/memory/failure_tracker.py +19 -4
- claude_mpm/services/memory/optimizer.py +1 -1
- claude_mpm/services/model/model_router.py +8 -9
- claude_mpm/services/monitor/daemon.py +29 -9
- claude_mpm/services/monitor/daemon_manager.py +96 -19
- claude_mpm/services/monitor/server.py +2 -2
- claude_mpm/services/native_agent_converter.py +356 -0
- claude_mpm/services/port_manager.py +1 -1
- claude_mpm/services/pr/__init__.py +14 -0
- claude_mpm/services/pr/pr_template_service.py +329 -0
- claude_mpm/services/project/documentation_manager.py +2 -1
- claude_mpm/services/project/project_organizer.py +4 -0
- claude_mpm/services/project/toolchain_analyzer.py +3 -1
- claude_mpm/services/runner_configuration_service.py +17 -3
- claude_mpm/services/self_upgrade_service.py +165 -7
- claude_mpm/services/session_management_service.py +16 -4
- claude_mpm/services/skills/__init__.py +18 -0
- claude_mpm/services/skills/git_skill_source_manager.py +1169 -0
- claude_mpm/services/skills/skill_discovery_service.py +568 -0
- claude_mpm/services/skills_config.py +547 -0
- claude_mpm/services/skills_deployer.py +955 -0
- claude_mpm/services/socketio/handlers/connection.py +1 -1
- claude_mpm/services/socketio/handlers/git.py +2 -2
- claude_mpm/services/socketio/server/core.py +1 -4
- claude_mpm/services/socketio/server/main.py +1 -3
- claude_mpm/services/system_instructions_service.py +1 -3
- claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +0 -3
- claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +0 -1
- claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +1 -1
- claude_mpm/services/unified/deployment_strategies/vercel.py +1 -5
- claude_mpm/services/unified/unified_deployment.py +1 -5
- claude_mpm/services/version_control/conflict_resolution.py +6 -4
- claude_mpm/services/visualization/__init__.py +1 -5
- claude_mpm/services/visualization/mermaid_generator.py +2 -3
- claude_mpm/skills/__init__.py +3 -3
- claude_mpm/skills/agent_skills_injector.py +42 -49
- claude_mpm/skills/bundled/infrastructure/env-manager/scripts/validate_env.py +576 -0
- claude_mpm/skills/bundled/main/mcp-builder/scripts/connections.py +17 -10
- claude_mpm/skills/bundled/main/mcp-builder/scripts/evaluation.py +92 -39
- claude_mpm/skills/bundled/main/skill-creator/scripts/init_skill.py +13 -12
- claude_mpm/skills/bundled/main/skill-creator/scripts/package_skill.py +5 -3
- claude_mpm/skills/bundled/main/skill-creator/scripts/quick_validate.py +19 -12
- claude_mpm/skills/bundled/performance-profiling.md +6 -0
- claude_mpm/skills/bundled/testing/webapp-testing/examples/console_logging.py +6 -6
- claude_mpm/skills/bundled/testing/webapp-testing/examples/element_discovery.py +13 -9
- claude_mpm/skills/bundled/testing/webapp-testing/examples/static_html_automation.py +8 -8
- claude_mpm/skills/bundled/testing/webapp-testing/scripts/with_server.py +37 -15
- claude_mpm/skills/skills_registry.py +44 -48
- claude_mpm/skills/skills_service.py +117 -108
- claude_mpm/templates/questions/__init__.py +38 -0
- claude_mpm/templates/questions/base.py +193 -0
- claude_mpm/templates/questions/pr_strategy.py +311 -0
- claude_mpm/templates/questions/project_init.py +385 -0
- claude_mpm/templates/questions/ticket_mgmt.py +394 -0
- claude_mpm/tools/__main__.py +8 -8
- claude_mpm/tools/code_tree_analyzer/__init__.py +45 -0
- claude_mpm/tools/code_tree_analyzer/analysis.py +299 -0
- claude_mpm/tools/code_tree_analyzer/cache.py +131 -0
- claude_mpm/tools/code_tree_analyzer/core.py +380 -0
- claude_mpm/tools/code_tree_analyzer/discovery.py +403 -0
- claude_mpm/tools/code_tree_analyzer/events.py +168 -0
- claude_mpm/tools/code_tree_analyzer/gitignore.py +308 -0
- claude_mpm/tools/code_tree_analyzer/models.py +39 -0
- claude_mpm/tools/code_tree_analyzer/multilang_analyzer.py +224 -0
- claude_mpm/tools/code_tree_analyzer/python_analyzer.py +284 -0
- claude_mpm/utils/agent_dependency_loader.py +80 -13
- claude_mpm/utils/agent_filters.py +288 -0
- claude_mpm/utils/dependency_cache.py +3 -1
- claude_mpm/utils/gitignore.py +244 -0
- claude_mpm/utils/log_cleanup.py +3 -3
- claude_mpm/utils/migration.py +372 -0
- claude_mpm/utils/progress.py +387 -0
- claude_mpm/utils/robust_installer.py +3 -5
- claude_mpm/utils/structured_questions.py +619 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/METADATA +496 -65
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/RECORD +328 -416
- claude_mpm/agents/templates/.claude-mpm/memories/README.md +0 -17
- claude_mpm/agents/templates/.claude-mpm/memories/engineer_memories.md +0 -3
- claude_mpm/agents/templates/agent-manager.json +0 -273
- claude_mpm/agents/templates/agentic-coder-optimizer.json +0 -248
- claude_mpm/agents/templates/api_qa.json +0 -180
- claude_mpm/agents/templates/circuit_breakers.md +0 -638
- claude_mpm/agents/templates/clerk-ops.json +0 -235
- claude_mpm/agents/templates/code_analyzer.json +0 -101
- claude_mpm/agents/templates/content-agent.json +0 -358
- claude_mpm/agents/templates/dart_engineer.json +0 -307
- claude_mpm/agents/templates/data_engineer.json +0 -225
- claude_mpm/agents/templates/documentation.json +0 -211
- claude_mpm/agents/templates/engineer.json +0 -210
- claude_mpm/agents/templates/gcp_ops_agent.json +0 -253
- claude_mpm/agents/templates/golang_engineer.json +0 -270
- claude_mpm/agents/templates/imagemagick.json +0 -264
- claude_mpm/agents/templates/java_engineer.json +0 -346
- claude_mpm/agents/templates/local_ops_agent.json +0 -1840
- claude_mpm/agents/templates/logs/prompts/agent_engineer_20250826_014258_728.md +0 -39
- claude_mpm/agents/templates/logs/prompts/agent_engineer_20250901_010124_142.md +0 -400
- claude_mpm/agents/templates/memory_manager.json +0 -158
- claude_mpm/agents/templates/nextjs_engineer.json +0 -285
- claude_mpm/agents/templates/ops.json +0 -185
- claude_mpm/agents/templates/php-engineer.json +0 -281
- claude_mpm/agents/templates/product_owner.json +0 -338
- claude_mpm/agents/templates/project_organizer.json +0 -140
- claude_mpm/agents/templates/prompt-engineer.json +0 -737
- claude_mpm/agents/templates/python_engineer.json +0 -387
- claude_mpm/agents/templates/qa.json +0 -242
- claude_mpm/agents/templates/react_engineer.json +0 -238
- claude_mpm/agents/templates/refactoring_engineer.json +0 -276
- claude_mpm/agents/templates/research.json +0 -188
- claude_mpm/agents/templates/ruby-engineer.json +0 -280
- claude_mpm/agents/templates/rust_engineer.json +0 -275
- claude_mpm/agents/templates/security.json +0 -202
- claude_mpm/agents/templates/svelte-engineer.json +0 -225
- claude_mpm/agents/templates/ticketing.json +0 -177
- claude_mpm/agents/templates/typescript_engineer.json +0 -285
- claude_mpm/agents/templates/vercel_ops_agent.json +0 -412
- claude_mpm/agents/templates/version_control.json +0 -157
- claude_mpm/agents/templates/web_qa.json +0 -399
- claude_mpm/agents/templates/web_ui.json +0 -189
- claude_mpm/cli/commands/mpm_init.py +0 -2093
- claude_mpm/commands/mpm-tickets.md +0 -102
- claude_mpm/dashboard/.claude-mpm/socketio-instances.json +0 -1
- claude_mpm/dashboard/react/components/DataInspector/DataInspector.module.css +0 -188
- claude_mpm/dashboard/react/components/EventViewer/EventViewer.module.css +0 -156
- claude_mpm/dashboard/react/components/shared/ConnectionStatus.module.css +0 -38
- claude_mpm/dashboard/react/components/shared/FilterBar.module.css +0 -92
- claude_mpm/dashboard/static/archive/activity_dashboard_fixed.html +0 -248
- claude_mpm/dashboard/static/archive/activity_dashboard_test.html +0 -61
- claude_mpm/dashboard/static/archive/test_activity_connection.html +0 -179
- claude_mpm/dashboard/static/archive/test_claude_tree_tab.html +0 -68
- claude_mpm/dashboard/static/archive/test_dashboard.html +0 -409
- claude_mpm/dashboard/static/archive/test_dashboard_fixed.html +0 -519
- claude_mpm/dashboard/static/archive/test_dashboard_verification.html +0 -181
- claude_mpm/dashboard/static/archive/test_file_data.html +0 -315
- claude_mpm/dashboard/static/archive/test_file_tree_empty_state.html +0 -243
- claude_mpm/dashboard/static/archive/test_file_tree_fix.html +0 -234
- claude_mpm/dashboard/static/archive/test_file_tree_rename.html +0 -117
- claude_mpm/dashboard/static/archive/test_file_tree_tab.html +0 -115
- claude_mpm/dashboard/static/archive/test_file_viewer.html +0 -224
- claude_mpm/dashboard/static/archive/test_final_activity.html +0 -220
- claude_mpm/dashboard/static/archive/test_tab_fix.html +0 -139
- claude_mpm/dashboard/static/built/assets/events.DjpNxWNo.css +0 -1
- claude_mpm/dashboard/static/built/components/activity-tree.js +0 -2
- claude_mpm/dashboard/static/built/components/agent-hierarchy.js +0 -777
- claude_mpm/dashboard/static/built/components/agent-inference.js +0 -2
- claude_mpm/dashboard/static/built/components/build-tracker.js +0 -333
- claude_mpm/dashboard/static/built/components/code-simple.js +0 -857
- claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +0 -353
- claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +0 -235
- claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +0 -409
- claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +0 -435
- claude_mpm/dashboard/static/built/components/code-tree.js +0 -2
- claude_mpm/dashboard/static/built/components/code-viewer.js +0 -2
- claude_mpm/dashboard/static/built/components/connection-debug.js +0 -654
- claude_mpm/dashboard/static/built/components/diff-viewer.js +0 -891
- claude_mpm/dashboard/static/built/components/event-processor.js +0 -2
- claude_mpm/dashboard/static/built/components/event-viewer.js +0 -2
- claude_mpm/dashboard/static/built/components/export-manager.js +0 -2
- claude_mpm/dashboard/static/built/components/file-change-tracker.js +0 -443
- claude_mpm/dashboard/static/built/components/file-change-viewer.js +0 -690
- claude_mpm/dashboard/static/built/components/file-tool-tracker.js +0 -2
- claude_mpm/dashboard/static/built/components/file-viewer.js +0 -2
- claude_mpm/dashboard/static/built/components/hud-library-loader.js +0 -2
- claude_mpm/dashboard/static/built/components/hud-manager.js +0 -2
- claude_mpm/dashboard/static/built/components/hud-visualizer.js +0 -2
- claude_mpm/dashboard/static/built/components/module-viewer.js +0 -2
- claude_mpm/dashboard/static/built/components/nav-bar.js +0 -145
- claude_mpm/dashboard/static/built/components/page-structure.js +0 -429
- claude_mpm/dashboard/static/built/components/session-manager.js +0 -2
- claude_mpm/dashboard/static/built/components/socket-manager.js +0 -2
- claude_mpm/dashboard/static/built/components/ui-state-manager.js +0 -2
- claude_mpm/dashboard/static/built/components/unified-data-viewer.js +0 -2
- claude_mpm/dashboard/static/built/components/working-directory.js +0 -2
- claude_mpm/dashboard/static/built/connection-manager.js +0 -536
- claude_mpm/dashboard/static/built/dashboard.js +0 -2
- claude_mpm/dashboard/static/built/extension-error-handler.js +0 -164
- claude_mpm/dashboard/static/built/react/events.js +0 -30
- claude_mpm/dashboard/static/built/shared/dom-helpers.js +0 -396
- claude_mpm/dashboard/static/built/shared/event-bus.js +0 -330
- claude_mpm/dashboard/static/built/shared/event-filter-service.js +0 -540
- claude_mpm/dashboard/static/built/shared/logger.js +0 -385
- claude_mpm/dashboard/static/built/shared/page-structure.js +0 -249
- claude_mpm/dashboard/static/built/shared/tooltip-service.js +0 -253
- claude_mpm/dashboard/static/built/socket-client.js +0 -2
- claude_mpm/dashboard/static/built/tab-isolation-fix.js +0 -185
- claude_mpm/dashboard/static/dist/assets/events.DjpNxWNo.css +0 -1
- claude_mpm/dashboard/static/dist/components/activity-tree.js +0 -2
- claude_mpm/dashboard/static/dist/components/agent-inference.js +0 -2
- claude_mpm/dashboard/static/dist/components/code-tree.js +0 -2
- claude_mpm/dashboard/static/dist/components/code-viewer.js +0 -2
- claude_mpm/dashboard/static/dist/components/event-processor.js +0 -2
- claude_mpm/dashboard/static/dist/components/event-viewer.js +0 -2
- claude_mpm/dashboard/static/dist/components/export-manager.js +0 -2
- claude_mpm/dashboard/static/dist/components/file-tool-tracker.js +0 -2
- claude_mpm/dashboard/static/dist/components/file-viewer.js +0 -2
- claude_mpm/dashboard/static/dist/components/hud-library-loader.js +0 -2
- claude_mpm/dashboard/static/dist/components/hud-manager.js +0 -2
- claude_mpm/dashboard/static/dist/components/hud-visualizer.js +0 -2
- claude_mpm/dashboard/static/dist/components/module-viewer.js +0 -2
- claude_mpm/dashboard/static/dist/components/session-manager.js +0 -2
- claude_mpm/dashboard/static/dist/components/socket-manager.js +0 -2
- claude_mpm/dashboard/static/dist/components/ui-state-manager.js +0 -2
- claude_mpm/dashboard/static/dist/components/unified-data-viewer.js +0 -2
- claude_mpm/dashboard/static/dist/components/working-directory.js +0 -2
- claude_mpm/dashboard/static/dist/dashboard.js +0 -2
- claude_mpm/dashboard/static/dist/react/events.js +0 -30
- claude_mpm/dashboard/static/dist/socket-client.js +0 -2
- claude_mpm/dashboard/static/events.html +0 -607
- claude_mpm/dashboard/static/index.html +0 -635
- claude_mpm/dashboard/static/js/shared/dom-helpers.js +0 -396
- claude_mpm/dashboard/static/js/shared/event-bus.js +0 -330
- claude_mpm/dashboard/static/js/shared/logger.js +0 -385
- claude_mpm/dashboard/static/js/shared/tooltip-service.js +0 -253
- claude_mpm/dashboard/static/js/stores/dashboard-store.js +0 -562
- claude_mpm/dashboard/static/legacy/activity.html +0 -736
- claude_mpm/dashboard/static/legacy/agents.html +0 -786
- claude_mpm/dashboard/static/legacy/files.html +0 -747
- claude_mpm/dashboard/static/legacy/tools.html +0 -831
- claude_mpm/dashboard/static/monitors.html +0 -431
- claude_mpm/dashboard/static/production/events.html +0 -659
- claude_mpm/dashboard/static/production/main.html +0 -698
- claude_mpm/dashboard/static/production/monitors.html +0 -483
- claude_mpm/dashboard/static/test-archive/dashboard.html +0 -635
- claude_mpm/dashboard/static/test-archive/debug-events.html +0 -147
- claude_mpm/dashboard/static/test-archive/test-navigation.html +0 -256
- claude_mpm/dashboard/static/test-archive/test-react-exports.html +0 -180
- claude_mpm/dashboard/static/test-archive/test_debug.html +0 -25
- claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +0 -75
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +0 -184
- claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +0 -107
- claude_mpm/skills/bundled/collaboration/requesting-code-review/code-reviewer.md +0 -146
- claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +0 -118
- claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +0 -177
- claude_mpm/skills/bundled/debugging/systematic-debugging/CREATION-LOG.md +0 -119
- claude_mpm/skills/bundled/debugging/systematic-debugging/SKILL.md +0 -148
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/anti-patterns.md +0 -483
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/examples.md +0 -452
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/troubleshooting.md +0 -449
- claude_mpm/skills/bundled/debugging/systematic-debugging/references/workflow.md +0 -411
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-academic.md +0 -14
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-1.md +0 -58
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-2.md +0 -68
- claude_mpm/skills/bundled/debugging/systematic-debugging/test-pressure-3.md +0 -69
- claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +0 -175
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/common-failures.md +0 -213
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +0 -314
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +0 -227
- claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +0 -74
- claude_mpm/skills/bundled/main/internal-comms/SKILL.md +0 -32
- claude_mpm/skills/bundled/main/internal-comms/examples/3p-updates.md +0 -47
- claude_mpm/skills/bundled/main/internal-comms/examples/company-newsletter.md +0 -65
- claude_mpm/skills/bundled/main/internal-comms/examples/faq-answers.md +0 -30
- claude_mpm/skills/bundled/main/internal-comms/examples/general-comms.md +0 -16
- claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +0 -328
- claude_mpm/skills/bundled/main/mcp-builder/reference/evaluation.md +0 -602
- claude_mpm/skills/bundled/main/mcp-builder/reference/mcp_best_practices.md +0 -915
- claude_mpm/skills/bundled/main/mcp-builder/reference/node_mcp_server.md +0 -916
- claude_mpm/skills/bundled/main/mcp-builder/reference/python_mcp_server.md +0 -752
- claude_mpm/skills/bundled/main/skill-creator/SKILL.md +0 -209
- claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +0 -123
- claude_mpm/skills/bundled/testing/test-driven-development/SKILL.md +0 -145
- claude_mpm/skills/bundled/testing/test-driven-development/references/anti-patterns.md +0 -543
- claude_mpm/skills/bundled/testing/test-driven-development/references/examples.md +0 -741
- claude_mpm/skills/bundled/testing/test-driven-development/references/integration.md +0 -470
- claude_mpm/skills/bundled/testing/test-driven-development/references/philosophy.md +0 -458
- claude_mpm/skills/bundled/testing/test-driven-development/references/workflow.md +0 -639
- claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +0 -304
- claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +0 -96
- claude_mpm/tools/code_tree_analyzer.py +0 -1825
- /claude_mpm/agents/templates/{git_file_tracking.md → git-file-tracking.md} +0 -0
- /claude_mpm/agents/templates/{pm_examples.md → pm-examples.md} +0 -0
- /claude_mpm/agents/templates/{response_format.md → response-format.md} +0 -0
- /claude_mpm/agents/templates/{validation_templates.md → validation-templates.md} +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/WHEEL +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/entry_points.txt +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-5.1.8.dist-info}/top_level.txt +0 -0
|
@@ -1,147 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>Event Debug Monitor</title>
|
|
7
|
-
<script src="/static/socket.io.min.js"></script>
|
|
8
|
-
<style>
|
|
9
|
-
body {
|
|
10
|
-
font-family: monospace;
|
|
11
|
-
background: #1e1e1e;
|
|
12
|
-
color: #00ff00;
|
|
13
|
-
padding: 20px;
|
|
14
|
-
}
|
|
15
|
-
.event {
|
|
16
|
-
border: 1px solid #00ff00;
|
|
17
|
-
margin: 10px 0;
|
|
18
|
-
padding: 10px;
|
|
19
|
-
background: rgba(0, 255, 0, 0.1);
|
|
20
|
-
}
|
|
21
|
-
.event-type {
|
|
22
|
-
color: #ffff00;
|
|
23
|
-
font-weight: bold;
|
|
24
|
-
}
|
|
25
|
-
.event-data {
|
|
26
|
-
margin-top: 5px;
|
|
27
|
-
white-space: pre-wrap;
|
|
28
|
-
}
|
|
29
|
-
h1 {
|
|
30
|
-
color: #00ff00;
|
|
31
|
-
}
|
|
32
|
-
.status {
|
|
33
|
-
padding: 10px;
|
|
34
|
-
margin: 10px 0;
|
|
35
|
-
border: 1px solid #00ff00;
|
|
36
|
-
}
|
|
37
|
-
.connected {
|
|
38
|
-
background: rgba(0, 255, 0, 0.2);
|
|
39
|
-
}
|
|
40
|
-
.disconnected {
|
|
41
|
-
background: rgba(255, 0, 0, 0.2);
|
|
42
|
-
}
|
|
43
|
-
</style>
|
|
44
|
-
</head>
|
|
45
|
-
<body>
|
|
46
|
-
<h1>🔍 Event Debug Monitor</h1>
|
|
47
|
-
<div id="status" class="status disconnected">Disconnected</div>
|
|
48
|
-
<button onclick="sendTestEvents()">Send Test Events</button>
|
|
49
|
-
<button onclick="clearEvents()">Clear</button>
|
|
50
|
-
<div id="events"></div>
|
|
51
|
-
|
|
52
|
-
<script>
|
|
53
|
-
const socket = io('http://localhost:8765', {
|
|
54
|
-
transports: ['polling', 'websocket'],
|
|
55
|
-
reconnection: true
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
let eventCount = 0;
|
|
59
|
-
|
|
60
|
-
socket.on('connect', () => {
|
|
61
|
-
console.log('Connected!');
|
|
62
|
-
document.getElementById('status').className = 'status connected';
|
|
63
|
-
document.getElementById('status').textContent = 'Connected to Socket.IO';
|
|
64
|
-
addEvent('SYSTEM', { message: 'Connected to server' });
|
|
65
|
-
});
|
|
66
|
-
|
|
67
|
-
socket.on('disconnect', () => {
|
|
68
|
-
console.log('Disconnected!');
|
|
69
|
-
document.getElementById('status').className = 'status disconnected';
|
|
70
|
-
document.getElementById('status').textContent = 'Disconnected';
|
|
71
|
-
addEvent('SYSTEM', { message: 'Disconnected from server' });
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
// Listen to ALL events
|
|
75
|
-
socket.onAny((eventName, data) => {
|
|
76
|
-
console.log(`Event: ${eventName}`, data);
|
|
77
|
-
addEvent(eventName, data);
|
|
78
|
-
});
|
|
79
|
-
|
|
80
|
-
function addEvent(type, data) {
|
|
81
|
-
eventCount++;
|
|
82
|
-
const eventsDiv = document.getElementById('events');
|
|
83
|
-
const eventDiv = document.createElement('div');
|
|
84
|
-
eventDiv.className = 'event';
|
|
85
|
-
eventDiv.innerHTML = `
|
|
86
|
-
<div class="event-type">#${eventCount} Event: ${type}</div>
|
|
87
|
-
<div class="event-data">${JSON.stringify(data, null, 2)}</div>
|
|
88
|
-
`;
|
|
89
|
-
eventsDiv.insertBefore(eventDiv, eventsDiv.firstChild);
|
|
90
|
-
|
|
91
|
-
// Keep only last 50 events
|
|
92
|
-
while (eventsDiv.children.length > 50) {
|
|
93
|
-
eventsDiv.removeChild(eventsDiv.lastChild);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
function sendTestEvents() {
|
|
98
|
-
// Send various test events
|
|
99
|
-
const testEvents = [
|
|
100
|
-
// Agent events
|
|
101
|
-
{
|
|
102
|
-
type: 'SubagentStart',
|
|
103
|
-
agent_id: 'test_agent_' + Date.now(),
|
|
104
|
-
agent_name: 'Test Agent',
|
|
105
|
-
task: 'Testing event system',
|
|
106
|
-
timestamp: new Date().toISOString()
|
|
107
|
-
},
|
|
108
|
-
// Tool events
|
|
109
|
-
{
|
|
110
|
-
type: 'ToolCall',
|
|
111
|
-
tool_name: 'TestTool',
|
|
112
|
-
agent_name: 'Test Agent',
|
|
113
|
-
parameters: { test: true },
|
|
114
|
-
timestamp: new Date().toISOString()
|
|
115
|
-
},
|
|
116
|
-
// File events
|
|
117
|
-
{
|
|
118
|
-
type: 'file_read',
|
|
119
|
-
file_path: '/test/file.txt',
|
|
120
|
-
operation: 'read',
|
|
121
|
-
timestamp: new Date().toISOString()
|
|
122
|
-
}
|
|
123
|
-
];
|
|
124
|
-
|
|
125
|
-
testEvents.forEach((event, index) => {
|
|
126
|
-
setTimeout(() => {
|
|
127
|
-
console.log('Sending test event:', event);
|
|
128
|
-
socket.emit('claude_event', event);
|
|
129
|
-
addEvent('SENT: claude_event', event);
|
|
130
|
-
}, index * 500);
|
|
131
|
-
});
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
function clearEvents() {
|
|
135
|
-
document.getElementById('events').innerHTML = '';
|
|
136
|
-
eventCount = 0;
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
// Request history on connect
|
|
140
|
-
socket.on('connect', () => {
|
|
141
|
-
setTimeout(() => {
|
|
142
|
-
socket.emit('get_history', { type: 'all', limit: 10 });
|
|
143
|
-
}, 1000);
|
|
144
|
-
});
|
|
145
|
-
</script>
|
|
146
|
-
</body>
|
|
147
|
-
</html>
|
|
@@ -1,256 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>Navigation Test - Claude MPM</title>
|
|
7
|
-
<style>
|
|
8
|
-
* {
|
|
9
|
-
margin: 0;
|
|
10
|
-
padding: 0;
|
|
11
|
-
box-sizing: border-box;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
body {
|
|
15
|
-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
|
16
|
-
background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
|
|
17
|
-
color: #e0e0e0;
|
|
18
|
-
min-height: 100vh;
|
|
19
|
-
padding: 20px;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
.container {
|
|
23
|
-
max-width: 1400px;
|
|
24
|
-
margin: 0 auto;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
h1 {
|
|
28
|
-
margin: 20px 0;
|
|
29
|
-
font-size: 28px;
|
|
30
|
-
background: linear-gradient(135deg, #10b981 0%, #06b6d4 100%);
|
|
31
|
-
-webkit-background-clip: text;
|
|
32
|
-
-webkit-text-fill-color: transparent;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
.test-section {
|
|
36
|
-
background: rgba(255, 255, 255, 0.05);
|
|
37
|
-
backdrop-filter: blur(10px);
|
|
38
|
-
border-radius: 12px;
|
|
39
|
-
padding: 20px;
|
|
40
|
-
margin: 20px 0;
|
|
41
|
-
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
.test-title {
|
|
45
|
-
font-size: 18px;
|
|
46
|
-
margin-bottom: 15px;
|
|
47
|
-
color: #10b981;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.iframe-container {
|
|
51
|
-
border: 1px solid rgba(255, 255, 255, 0.2);
|
|
52
|
-
border-radius: 8px;
|
|
53
|
-
overflow: hidden;
|
|
54
|
-
margin: 10px 0;
|
|
55
|
-
height: 150px;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
iframe {
|
|
59
|
-
width: 100%;
|
|
60
|
-
height: 100%;
|
|
61
|
-
border: none;
|
|
62
|
-
background: transparent;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.page-label {
|
|
66
|
-
font-size: 14px;
|
|
67
|
-
color: #94a3b8;
|
|
68
|
-
margin: 5px 0;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.status {
|
|
72
|
-
display: inline-block;
|
|
73
|
-
padding: 4px 12px;
|
|
74
|
-
border-radius: 15px;
|
|
75
|
-
font-size: 12px;
|
|
76
|
-
font-weight: 600;
|
|
77
|
-
margin-left: 10px;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
.status.pass {
|
|
81
|
-
background: rgba(16, 185, 129, 0.2);
|
|
82
|
-
color: #4ade80;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.status.fail {
|
|
86
|
-
background: rgba(239, 68, 68, 0.2);
|
|
87
|
-
color: #f87171;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
.summary {
|
|
91
|
-
background: rgba(16, 185, 129, 0.1);
|
|
92
|
-
border: 1px solid rgba(16, 185, 129, 0.3);
|
|
93
|
-
border-radius: 8px;
|
|
94
|
-
padding: 15px;
|
|
95
|
-
margin-top: 20px;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
.summary-title {
|
|
99
|
-
font-size: 16px;
|
|
100
|
-
font-weight: 600;
|
|
101
|
-
margin-bottom: 10px;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
.summary-item {
|
|
105
|
-
margin: 5px 0;
|
|
106
|
-
font-size: 14px;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
.check-icon {
|
|
110
|
-
color: #4ade80;
|
|
111
|
-
margin-right: 8px;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
.cross-icon {
|
|
115
|
-
color: #f87171;
|
|
116
|
-
margin-right: 8px;
|
|
117
|
-
}
|
|
118
|
-
</style>
|
|
119
|
-
</head>
|
|
120
|
-
<body>
|
|
121
|
-
<div class="container">
|
|
122
|
-
<h1>🧪 Navigation Consistency Test</h1>
|
|
123
|
-
|
|
124
|
-
<div class="test-section">
|
|
125
|
-
<div class="test-title">Navigation Bar Component Test</div>
|
|
126
|
-
<div id="test-navigation"></div>
|
|
127
|
-
</div>
|
|
128
|
-
|
|
129
|
-
<div class="test-section">
|
|
130
|
-
<div class="test-title">Dashboard Pages Navigation Preview</div>
|
|
131
|
-
|
|
132
|
-
<div class="page-label">
|
|
133
|
-
Activity Dashboard (activity.html)
|
|
134
|
-
<span class="status pass" id="activity-status">Loading...</span>
|
|
135
|
-
</div>
|
|
136
|
-
<div class="iframe-container">
|
|
137
|
-
<iframe src="/static/activity.html" id="activity-frame"></iframe>
|
|
138
|
-
</div>
|
|
139
|
-
|
|
140
|
-
<div class="page-label">
|
|
141
|
-
Events Monitor (events.html)
|
|
142
|
-
<span class="status pass" id="events-status">Loading...</span>
|
|
143
|
-
</div>
|
|
144
|
-
<div class="iframe-container">
|
|
145
|
-
<iframe src="/static/events.html" id="events-frame"></iframe>
|
|
146
|
-
</div>
|
|
147
|
-
|
|
148
|
-
<div class="page-label">
|
|
149
|
-
Agents Monitor (agents.html)
|
|
150
|
-
<span class="status pass" id="agents-status">Loading...</span>
|
|
151
|
-
</div>
|
|
152
|
-
<div class="iframe-container">
|
|
153
|
-
<iframe src="/static/agents.html" id="agents-frame"></iframe>
|
|
154
|
-
</div>
|
|
155
|
-
|
|
156
|
-
<div class="page-label">
|
|
157
|
-
Tools Monitor (tools.html)
|
|
158
|
-
<span class="status pass" id="tools-status">Loading...</span>
|
|
159
|
-
</div>
|
|
160
|
-
<div class="iframe-container">
|
|
161
|
-
<iframe src="/static/tools.html" id="tools-frame"></iframe>
|
|
162
|
-
</div>
|
|
163
|
-
|
|
164
|
-
<div class="page-label">
|
|
165
|
-
Files Monitor (files.html)
|
|
166
|
-
<span class="status pass" id="files-status">Loading...</span>
|
|
167
|
-
</div>
|
|
168
|
-
<div class="iframe-container">
|
|
169
|
-
<iframe src="/static/files.html" id="files-frame"></iframe>
|
|
170
|
-
</div>
|
|
171
|
-
</div>
|
|
172
|
-
|
|
173
|
-
<div class="test-section summary">
|
|
174
|
-
<div class="summary-title">✅ Test Summary</div>
|
|
175
|
-
<div id="test-results">
|
|
176
|
-
<div class="summary-item">Checking navigation consistency...</div>
|
|
177
|
-
</div>
|
|
178
|
-
</div>
|
|
179
|
-
</div>
|
|
180
|
-
|
|
181
|
-
<script type="module">
|
|
182
|
-
import { NavBar } from '/static/built/components/nav-bar.js';
|
|
183
|
-
|
|
184
|
-
// Test navigation component
|
|
185
|
-
const navBar = new NavBar();
|
|
186
|
-
navBar.initialize('test-navigation');
|
|
187
|
-
|
|
188
|
-
// Function to check navigation in iframe
|
|
189
|
-
function checkNavigation(frameId, statusId, pageName) {
|
|
190
|
-
const frame = document.getElementById(frameId);
|
|
191
|
-
const status = document.getElementById(statusId);
|
|
192
|
-
|
|
193
|
-
frame.onload = () => {
|
|
194
|
-
try {
|
|
195
|
-
const navContainer = frame.contentDocument.getElementById('navigation-container');
|
|
196
|
-
if (navContainer && navContainer.children.length > 0) {
|
|
197
|
-
status.textContent = 'Navigation Loaded';
|
|
198
|
-
status.className = 'status pass';
|
|
199
|
-
return true;
|
|
200
|
-
} else {
|
|
201
|
-
status.textContent = 'Navigation Missing';
|
|
202
|
-
status.className = 'status fail';
|
|
203
|
-
return false;
|
|
204
|
-
}
|
|
205
|
-
} catch (e) {
|
|
206
|
-
status.textContent = 'Error';
|
|
207
|
-
status.className = 'status fail';
|
|
208
|
-
return false;
|
|
209
|
-
}
|
|
210
|
-
};
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
// Check each page
|
|
214
|
-
const pages = [
|
|
215
|
-
{ frame: 'activity-frame', status: 'activity-status', name: 'Activity' },
|
|
216
|
-
{ frame: 'events-frame', status: 'events-status', name: 'Events' },
|
|
217
|
-
{ frame: 'agents-frame', status: 'agents-status', name: 'Agents' },
|
|
218
|
-
{ frame: 'tools-frame', status: 'tools-status', name: 'Tools' },
|
|
219
|
-
{ frame: 'files-frame', status: 'files-status', name: 'Files' }
|
|
220
|
-
];
|
|
221
|
-
|
|
222
|
-
pages.forEach(page => {
|
|
223
|
-
checkNavigation(page.frame, page.status, page.name);
|
|
224
|
-
});
|
|
225
|
-
|
|
226
|
-
// Update summary after a delay
|
|
227
|
-
setTimeout(() => {
|
|
228
|
-
const results = document.getElementById('test-results');
|
|
229
|
-
const passCount = document.querySelectorAll('.status.pass').length;
|
|
230
|
-
const totalCount = pages.length;
|
|
231
|
-
|
|
232
|
-
results.innerHTML = `
|
|
233
|
-
<div class="summary-item">
|
|
234
|
-
<span class="check-icon">✓</span>
|
|
235
|
-
Navigation component loaded successfully
|
|
236
|
-
</div>
|
|
237
|
-
<div class="summary-item">
|
|
238
|
-
<span class="check-icon">✓</span>
|
|
239
|
-
All 5 dashboard views have navigation containers
|
|
240
|
-
</div>
|
|
241
|
-
<div class="summary-item">
|
|
242
|
-
<span class="check-icon">✓</span>
|
|
243
|
-
Navigation tabs are consistent across all pages
|
|
244
|
-
</div>
|
|
245
|
-
<div class="summary-item">
|
|
246
|
-
<span class="check-icon">✓</span>
|
|
247
|
-
Active tab highlighting works correctly
|
|
248
|
-
</div>
|
|
249
|
-
<div class="summary-item">
|
|
250
|
-
<strong>Result: ${passCount}/${totalCount} pages passed navigation test</strong>
|
|
251
|
-
</div>
|
|
252
|
-
`;
|
|
253
|
-
}, 3000);
|
|
254
|
-
</script>
|
|
255
|
-
</body>
|
|
256
|
-
</html>
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8">
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
-
<title>React Export Test</title>
|
|
7
|
-
<style>
|
|
8
|
-
body {
|
|
9
|
-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
10
|
-
max-width: 800px;
|
|
11
|
-
margin: 50px auto;
|
|
12
|
-
padding: 20px;
|
|
13
|
-
background: #1e1e1e;
|
|
14
|
-
color: #d4d4d4;
|
|
15
|
-
}
|
|
16
|
-
h1 {
|
|
17
|
-
color: #4fc3f7;
|
|
18
|
-
}
|
|
19
|
-
.test-section {
|
|
20
|
-
background: #2d2d2d;
|
|
21
|
-
border: 1px solid #3e3e3e;
|
|
22
|
-
border-radius: 8px;
|
|
23
|
-
padding: 20px;
|
|
24
|
-
margin: 20px 0;
|
|
25
|
-
}
|
|
26
|
-
.test-result {
|
|
27
|
-
font-family: 'Courier New', monospace;
|
|
28
|
-
background: #1e1e1e;
|
|
29
|
-
padding: 10px;
|
|
30
|
-
border-radius: 4px;
|
|
31
|
-
margin: 10px 0;
|
|
32
|
-
}
|
|
33
|
-
.success {
|
|
34
|
-
color: #4ade80;
|
|
35
|
-
}
|
|
36
|
-
.error {
|
|
37
|
-
color: #f87171;
|
|
38
|
-
}
|
|
39
|
-
.pending {
|
|
40
|
-
color: #fbbf24;
|
|
41
|
-
}
|
|
42
|
-
button {
|
|
43
|
-
background: #4fc3f7;
|
|
44
|
-
color: white;
|
|
45
|
-
border: none;
|
|
46
|
-
padding: 10px 20px;
|
|
47
|
-
border-radius: 4px;
|
|
48
|
-
cursor: pointer;
|
|
49
|
-
margin: 5px;
|
|
50
|
-
}
|
|
51
|
-
button:hover {
|
|
52
|
-
background: #29b6f6;
|
|
53
|
-
}
|
|
54
|
-
#react-events-root {
|
|
55
|
-
min-height: 100px;
|
|
56
|
-
border: 2px dashed #3e3e3e;
|
|
57
|
-
padding: 20px;
|
|
58
|
-
margin: 20px 0;
|
|
59
|
-
border-radius: 8px;
|
|
60
|
-
}
|
|
61
|
-
</style>
|
|
62
|
-
</head>
|
|
63
|
-
<body>
|
|
64
|
-
<h1>React Export Test Page</h1>
|
|
65
|
-
|
|
66
|
-
<div class="test-section">
|
|
67
|
-
<h2>Test Results</h2>
|
|
68
|
-
<div id="test-results"></div>
|
|
69
|
-
</div>
|
|
70
|
-
|
|
71
|
-
<div class="test-section">
|
|
72
|
-
<h2>Actions</h2>
|
|
73
|
-
<button onclick="runAllTests()">Run All Tests</button>
|
|
74
|
-
<button onclick="initializeReact()">Initialize React Component</button>
|
|
75
|
-
<button onclick="checkConsole()">Check Console Output</button>
|
|
76
|
-
</div>
|
|
77
|
-
|
|
78
|
-
<div class="test-section">
|
|
79
|
-
<h2>React Component Container</h2>
|
|
80
|
-
<div id="react-events-root">
|
|
81
|
-
<p class="pending">React component will be rendered here...</p>
|
|
82
|
-
</div>
|
|
83
|
-
</div>
|
|
84
|
-
|
|
85
|
-
<!-- Load React and ReactDOM from CDN -->
|
|
86
|
-
<script crossorigin src="https://unpkg.com/react@18/umd/react.production.min.js"></script>
|
|
87
|
-
<script crossorigin src="https://unpkg.com/react-dom@18/umd/react-dom.production.min.js"></script>
|
|
88
|
-
|
|
89
|
-
<!-- Load the React events component -->
|
|
90
|
-
<script type="module">
|
|
91
|
-
import('/static/dist/react/events.js').then(module => {
|
|
92
|
-
console.log('React events module loaded:', module);
|
|
93
|
-
window.reactEventsModule = module;
|
|
94
|
-
}).catch(error => {
|
|
95
|
-
console.error('Failed to load React events module:', error);
|
|
96
|
-
});
|
|
97
|
-
</script>
|
|
98
|
-
|
|
99
|
-
<script>
|
|
100
|
-
const results = document.getElementById('test-results');
|
|
101
|
-
|
|
102
|
-
function addResult(test, result, success) {
|
|
103
|
-
const div = document.createElement('div');
|
|
104
|
-
div.className = `test-result ${success ? 'success' : 'error'}`;
|
|
105
|
-
div.textContent = `${success ? '✓' : '✗'} ${test}: ${result}`;
|
|
106
|
-
results.appendChild(div);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
function clearResults() {
|
|
110
|
-
results.innerHTML = '';
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function runAllTests() {
|
|
114
|
-
clearResults();
|
|
115
|
-
console.log('Running all tests...');
|
|
116
|
-
|
|
117
|
-
// Test 1: Check if window.initializeReactEvents exists
|
|
118
|
-
const test1 = typeof window.initializeReactEvents;
|
|
119
|
-
addResult('window.initializeReactEvents type', test1, test1 === 'function');
|
|
120
|
-
|
|
121
|
-
// Test 2: Check if window.ClaudeMPMReact exists
|
|
122
|
-
const test2 = typeof window.ClaudeMPMReact;
|
|
123
|
-
addResult('window.ClaudeMPMReact type', test2, test2 === 'object');
|
|
124
|
-
|
|
125
|
-
// Test 3: Check if function exists in namespace
|
|
126
|
-
const test3 = window.ClaudeMPMReact ? typeof window.ClaudeMPMReact.initializeReactEvents : 'namespace not found';
|
|
127
|
-
addResult('ClaudeMPMReact.initializeReactEvents type', test3, test3 === 'function');
|
|
128
|
-
|
|
129
|
-
// Test 4: Check if React root element exists
|
|
130
|
-
const test4 = document.getElementById('react-events-root') !== null;
|
|
131
|
-
addResult('React root element exists', test4, test4);
|
|
132
|
-
|
|
133
|
-
// Test 5: Check if React module was imported
|
|
134
|
-
const test5 = typeof window.reactEventsModule;
|
|
135
|
-
addResult('React events module loaded', test5, test5 === 'object');
|
|
136
|
-
|
|
137
|
-
// Test 6: Check if React is available globally
|
|
138
|
-
const test6 = typeof window.React;
|
|
139
|
-
addResult('React library available', test6, test6 === 'object');
|
|
140
|
-
|
|
141
|
-
// Test 7: Check if ReactDOM is available globally
|
|
142
|
-
const test7 = typeof window.ReactDOM;
|
|
143
|
-
addResult('ReactDOM library available', test7, test7 === 'object');
|
|
144
|
-
|
|
145
|
-
console.log('All tests completed. Check results above.');
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
function initializeReact() {
|
|
149
|
-
console.log('Attempting to initialize React component...');
|
|
150
|
-
|
|
151
|
-
if (typeof window.initializeReactEvents === 'function') {
|
|
152
|
-
const result = window.initializeReactEvents();
|
|
153
|
-
addResult('React initialization', `Returned: ${result}`, result === true);
|
|
154
|
-
console.log('React initialization result:', result);
|
|
155
|
-
} else {
|
|
156
|
-
addResult('React initialization', 'Function not found', false);
|
|
157
|
-
console.error('initializeReactEvents function not found on window');
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
function checkConsole() {
|
|
162
|
-
console.log('Console output check:');
|
|
163
|
-
console.log('- window.initializeReactEvents:', window.initializeReactEvents);
|
|
164
|
-
console.log('- window.ClaudeMPMReact:', window.ClaudeMPMReact);
|
|
165
|
-
console.log('- window.reactEventsModule:', window.reactEventsModule);
|
|
166
|
-
console.log('- React root element:', document.getElementById('react-events-root'));
|
|
167
|
-
|
|
168
|
-
addResult('Console check', 'Check browser console for output', true);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
// Auto-run tests after page loads
|
|
172
|
-
window.addEventListener('load', () => {
|
|
173
|
-
setTimeout(() => {
|
|
174
|
-
console.log('Page loaded, running initial tests...');
|
|
175
|
-
runAllTests();
|
|
176
|
-
}, 1000); // Give time for modules to load
|
|
177
|
-
});
|
|
178
|
-
</script>
|
|
179
|
-
</body>
|
|
180
|
-
</html>
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html>
|
|
3
|
-
<head>
|
|
4
|
-
<title>Debug Test</title>
|
|
5
|
-
</head>
|
|
6
|
-
<body>
|
|
7
|
-
<h1>Debug Test</h1>
|
|
8
|
-
<div id="result"></div>
|
|
9
|
-
|
|
10
|
-
<script>
|
|
11
|
-
document.addEventListener('DOMContentLoaded', async () => {
|
|
12
|
-
console.log('Testing API...');
|
|
13
|
-
try {
|
|
14
|
-
const response = await fetch('/api/directory/list?path=/Users/masa/Projects/claude-mpm');
|
|
15
|
-
const data = await response.json();
|
|
16
|
-
console.log('API Response:', data);
|
|
17
|
-
document.getElementById('result').innerHTML = `<pre>${JSON.stringify(data, null, 2)}</pre>`;
|
|
18
|
-
} catch (error) {
|
|
19
|
-
console.error('Error:', error);
|
|
20
|
-
document.getElementById('result').innerHTML = `Error: ${error.message}`;
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
</script>
|
|
24
|
-
</body>
|
|
25
|
-
</html>
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: Brainstorming Ideas Into Designs
|
|
3
|
-
description: Interactive idea refinement using Socratic method to develop fully-formed designs
|
|
4
|
-
when_to_use: when partner describes any feature or project idea, before writing code or implementation plans
|
|
5
|
-
version: 2.2.0
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Brainstorming Ideas Into Designs
|
|
9
|
-
|
|
10
|
-
## Overview
|
|
11
|
-
|
|
12
|
-
Transform rough ideas into fully-formed designs through structured questioning and alternative exploration.
|
|
13
|
-
|
|
14
|
-
**Core principle:** Ask questions to understand, explore alternatives, present design incrementally for validation.
|
|
15
|
-
|
|
16
|
-
**Announce at start:** "I'm using the Brainstorming skill to refine your idea into a design."
|
|
17
|
-
|
|
18
|
-
## The Process
|
|
19
|
-
|
|
20
|
-
### Phase 1: Understanding
|
|
21
|
-
- Check current project state in working directory
|
|
22
|
-
- Ask ONE question at a time to refine the idea
|
|
23
|
-
- Prefer multiple choice when possible
|
|
24
|
-
- Gather: Purpose, constraints, success criteria
|
|
25
|
-
|
|
26
|
-
### Phase 2: Exploration
|
|
27
|
-
- Propose 2-3 different approaches
|
|
28
|
-
- For each: Core architecture, trade-offs, complexity assessment
|
|
29
|
-
- Ask your human partner which approach resonates
|
|
30
|
-
|
|
31
|
-
### Phase 3: Design Presentation
|
|
32
|
-
- Present in 200-300 word sections
|
|
33
|
-
- Cover: Architecture, components, data flow, error handling, testing
|
|
34
|
-
- Ask after each section: "Does this look right so far?"
|
|
35
|
-
|
|
36
|
-
### Phase 4: Worktree Setup (for implementation)
|
|
37
|
-
When design is approved and implementation will follow:
|
|
38
|
-
- Announce: "I'm using the Using Git Worktrees skill to set up an isolated workspace."
|
|
39
|
-
- Switch to skills/collaboration/using-git-worktrees
|
|
40
|
-
- Follow that skill's process for directory selection, safety verification, and setup
|
|
41
|
-
- Return here when worktree ready
|
|
42
|
-
|
|
43
|
-
### Phase 5: Planning Handoff
|
|
44
|
-
Ask: "Ready to create the implementation plan?"
|
|
45
|
-
|
|
46
|
-
When your human partner confirms (any affirmative response):
|
|
47
|
-
- Announce: "I'm using the Writing Plans skill to create the implementation plan."
|
|
48
|
-
- Switch to skills/collaboration/writing-plans skill
|
|
49
|
-
- Create detailed plan in the worktree
|
|
50
|
-
|
|
51
|
-
## When to Revisit Earlier Phases
|
|
52
|
-
|
|
53
|
-
**You can and should go backward when:**
|
|
54
|
-
- Partner reveals new constraint during Phase 2 or 3 → Return to Phase 1 to understand it
|
|
55
|
-
- Validation shows fundamental gap in requirements → Return to Phase 1
|
|
56
|
-
- Partner questions approach during Phase 3 → Return to Phase 2 to explore alternatives
|
|
57
|
-
- Something doesn't make sense → Go back and clarify
|
|
58
|
-
|
|
59
|
-
**Don't force forward linearly** when going backward would give better results.
|
|
60
|
-
|
|
61
|
-
## Related Skills
|
|
62
|
-
|
|
63
|
-
**During exploration:**
|
|
64
|
-
- When approaches have genuine trade-offs: skills/architecture/preserving-productive-tensions
|
|
65
|
-
|
|
66
|
-
**Before proposing changes to existing code:**
|
|
67
|
-
- Understand why it exists: skills/research/tracing-knowledge-lineages
|
|
68
|
-
|
|
69
|
-
## Remember
|
|
70
|
-
- One question per message during Phase 1
|
|
71
|
-
- Apply YAGNI ruthlessly
|
|
72
|
-
- Explore 2-3 alternatives before settling
|
|
73
|
-
- Present incrementally, validate as you go
|
|
74
|
-
- Go backward when needed - flexibility > rigid progression
|
|
75
|
-
- Announce skill usage at start
|