claude-mpm 4.20.3__py3-none-any.whl → 4.25.10__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 +23 -6
- claude_mpm/agents/OUTPUT_STYLE.md +3 -48
- claude_mpm/agents/PM_INSTRUCTIONS.md +1783 -34
- claude_mpm/agents/WORKFLOW.md +75 -2
- claude_mpm/agents/base_agent.json +6 -3
- claude_mpm/agents/frontmatter_validator.py +1 -1
- claude_mpm/agents/templates/api_qa.json +5 -2
- claude_mpm/agents/templates/circuit_breakers.md +108 -2
- claude_mpm/agents/templates/documentation.json +33 -6
- claude_mpm/agents/templates/javascript_engineer_agent.json +380 -0
- claude_mpm/agents/templates/php-engineer.json +10 -4
- claude_mpm/agents/templates/pm_red_flags.md +89 -19
- claude_mpm/agents/templates/project_organizer.json +7 -3
- claude_mpm/agents/templates/qa.json +2 -1
- claude_mpm/agents/templates/react_engineer.json +1 -0
- claude_mpm/agents/templates/research.json +82 -12
- claude_mpm/agents/templates/security.json +4 -4
- claude_mpm/agents/templates/tauri_engineer.json +274 -0
- claude_mpm/agents/templates/ticketing.json +10 -6
- claude_mpm/agents/templates/version_control.json +4 -2
- claude_mpm/agents/templates/web_qa.json +2 -1
- claude_mpm/cli/README.md +253 -0
- claude_mpm/cli/__init__.py +11 -1
- claude_mpm/cli/commands/aggregate.py +1 -1
- claude_mpm/cli/commands/analyze.py +3 -3
- claude_mpm/cli/commands/cleanup.py +1 -1
- claude_mpm/cli/commands/configure_agent_display.py +4 -4
- claude_mpm/cli/commands/debug.py +12 -12
- claude_mpm/cli/commands/hook_errors.py +277 -0
- claude_mpm/cli/commands/mcp_install_commands.py +1 -1
- claude_mpm/cli/commands/mcp_install_commands.py.backup +284 -0
- claude_mpm/cli/commands/mpm_init/README.md +365 -0
- 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/run.py +124 -128
- claude_mpm/cli/commands/skills.py +522 -34
- claude_mpm/cli/executor.py +56 -0
- claude_mpm/cli/interactive/agent_wizard.py +5 -5
- claude_mpm/cli/parsers/base_parser.py +28 -0
- claude_mpm/cli/parsers/mpm_init_parser.py +42 -0
- claude_mpm/cli/parsers/skills_parser.py +138 -0
- claude_mpm/cli/startup.py +111 -8
- 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/cli_module/refactoring_guide.md +253 -0
- claude_mpm/commands/mpm-help.md +3 -0
- claude_mpm/commands/mpm-init.md +19 -3
- claude_mpm/commands/mpm-resume.md +372 -0
- claude_mpm/commands/mpm-tickets.md +56 -7
- claude_mpm/commands/mpm.md +1 -0
- claude_mpm/config/agent_capabilities.yaml +658 -0
- claude_mpm/config/async_logging_config.yaml +145 -0
- claude_mpm/constants.py +12 -0
- claude_mpm/core/.claude-mpm/logs/hooks_20250730.log +34 -0
- claude_mpm/core/api_validator.py +1 -1
- claude_mpm/core/claude_runner.py +14 -1
- claude_mpm/core/config.py +8 -0
- claude_mpm/core/constants.py +1 -1
- 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 +48 -3
- claude_mpm/core/interfaces.py +56 -1
- claude_mpm/core/logger.py +3 -1
- claude_mpm/core/oneshot_session.py +39 -0
- claude_mpm/d2/.gitignore +22 -0
- claude_mpm/d2/ARCHITECTURE_COMPARISON.md +273 -0
- claude_mpm/d2/FLASK_INTEGRATION.md +156 -0
- claude_mpm/d2/IMPLEMENTATION_SUMMARY.md +452 -0
- claude_mpm/d2/QUICKSTART.md +186 -0
- claude_mpm/d2/README.md +232 -0
- claude_mpm/d2/STORE_FIX_SUMMARY.md +167 -0
- claude_mpm/d2/SVELTE5_STORES_GUIDE.md +180 -0
- claude_mpm/d2/TESTING.md +288 -0
- claude_mpm/d2/index.html +118 -0
- claude_mpm/d2/package.json +19 -0
- claude_mpm/d2/src/App.svelte +110 -0
- claude_mpm/d2/src/components/Header.svelte +153 -0
- claude_mpm/d2/src/components/MainContent.svelte +74 -0
- claude_mpm/d2/src/components/Sidebar.svelte +85 -0
- claude_mpm/d2/src/components/tabs/EventsTab.svelte +326 -0
- claude_mpm/d2/src/lib/socketio.js +144 -0
- claude_mpm/d2/src/main.js +7 -0
- claude_mpm/d2/src/stores/events.js +114 -0
- claude_mpm/d2/src/stores/socket.js +108 -0
- claude_mpm/d2/src/stores/theme.js +65 -0
- claude_mpm/d2/svelte.config.js +12 -0
- claude_mpm/d2/vite.config.js +15 -0
- claude_mpm/dashboard/.claude-mpm/memories/README.md +36 -0
- claude_mpm/dashboard/BUILD_NUMBER +1 -0
- claude_mpm/dashboard/README.md +121 -0
- claude_mpm/dashboard/VERSION +1 -0
- claude_mpm/dashboard/react/components/DataInspector/DataInspector.tsx +273 -0
- claude_mpm/dashboard/react/components/ErrorBoundary.tsx +75 -0
- claude_mpm/dashboard/react/components/EventViewer/EventViewer.tsx +141 -0
- claude_mpm/dashboard/react/components/shared/ConnectionStatus.tsx +36 -0
- claude_mpm/dashboard/react/components/shared/FilterBar.tsx +89 -0
- claude_mpm/dashboard/react/contexts/DashboardContext.tsx +215 -0
- claude_mpm/dashboard/react/entries/events.tsx +165 -0
- claude_mpm/dashboard/react/hooks/useEvents.ts +191 -0
- claude_mpm/dashboard/react/hooks/useSocket.ts +225 -0
- claude_mpm/dashboard/static/built/REFACTORING_SUMMARY.md +170 -0
- claude_mpm/dashboard/static/built/components/activity-tree.js.map +1 -0
- claude_mpm/dashboard/static/built/components/agent-hierarchy.js +101 -101
- claude_mpm/dashboard/static/built/components/agent-inference.js.map +1 -0
- claude_mpm/dashboard/static/built/components/build-tracker.js +59 -59
- claude_mpm/dashboard/static/built/components/code-simple.js +107 -107
- claude_mpm/dashboard/static/built/components/code-tree/tree-breadcrumb.js +29 -29
- claude_mpm/dashboard/static/built/components/code-tree/tree-constants.js +24 -24
- claude_mpm/dashboard/static/built/components/code-tree/tree-search.js +27 -27
- claude_mpm/dashboard/static/built/components/code-tree/tree-utils.js +25 -25
- claude_mpm/dashboard/static/built/components/code-tree.js.map +1 -0
- claude_mpm/dashboard/static/built/components/code-viewer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/connection-debug.js +101 -101
- claude_mpm/dashboard/static/built/components/diff-viewer.js +113 -113
- claude_mpm/dashboard/static/built/components/event-processor.js.map +1 -0
- claude_mpm/dashboard/static/built/components/event-viewer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/export-manager.js.map +1 -0
- claude_mpm/dashboard/static/built/components/file-change-tracker.js +57 -57
- claude_mpm/dashboard/static/built/components/file-change-viewer.js +74 -74
- claude_mpm/dashboard/static/built/components/file-tool-tracker.js.map +1 -0
- claude_mpm/dashboard/static/built/components/file-viewer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/hud-library-loader.js.map +1 -0
- claude_mpm/dashboard/static/built/components/hud-manager.js.map +1 -0
- claude_mpm/dashboard/static/built/components/hud-visualizer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/module-viewer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/session-manager.js.map +1 -0
- claude_mpm/dashboard/static/built/components/socket-manager.js.map +1 -0
- claude_mpm/dashboard/static/built/components/ui-state-manager.js.map +1 -0
- claude_mpm/dashboard/static/built/components/unified-data-viewer.js.map +1 -0
- claude_mpm/dashboard/static/built/components/working-directory.js.map +1 -0
- claude_mpm/dashboard/static/built/connection-manager.js +76 -76
- claude_mpm/dashboard/static/built/dashboard.js.map +1 -0
- claude_mpm/dashboard/static/built/extension-error-handler.js +22 -22
- claude_mpm/dashboard/static/built/react/events.js.map +1 -0
- claude_mpm/dashboard/static/built/shared/dom-helpers.js +9 -9
- claude_mpm/dashboard/static/built/shared/event-bus.js +5 -5
- claude_mpm/dashboard/static/built/shared/logger.js +16 -16
- claude_mpm/dashboard/static/built/shared/tooltip-service.js +6 -6
- claude_mpm/dashboard/static/built/socket-client.js.map +1 -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/index.html +22 -22
- claude_mpm/dashboard/static/js/REFACTORING_SUMMARY.md +170 -0
- 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/shared/dom-helpers.js +9 -9
- claude_mpm/dashboard/static/js/shared/event-bus.js +5 -5
- claude_mpm/dashboard/static/js/shared/logger.js +16 -16
- claude_mpm/dashboard/static/js/shared/tooltip-service.js +6 -6
- claude_mpm/dashboard/static/js/socket-client.js +138 -121
- claude_mpm/dashboard/static/navigation-test-results.md +118 -0
- claude_mpm/dashboard/static/production/main.html +21 -21
- claude_mpm/dashboard/static/test-archive/dashboard.html +22 -22
- claude_mpm/dashboard/templates/.claude-mpm/memories/README.md +36 -0
- claude_mpm/dashboard/templates/.claude-mpm/memories/engineer_agent.md +39 -0
- claude_mpm/dashboard/templates/.claude-mpm/memories/version_control_agent.md +38 -0
- claude_mpm/dashboard/templates/code_simple.html +23 -23
- claude_mpm/dashboard/templates/index.html +18 -18
- claude_mpm/hooks/README.md +143 -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/templates/README.md +180 -0
- claude_mpm/hooks/templates/pre_tool_use_simple.py +78 -0
- claude_mpm/hooks/templates/pre_tool_use_template.py +323 -0
- claude_mpm/hooks/templates/settings.json.example +147 -0
- claude_mpm/schemas/agent_schema.json +596 -0
- claude_mpm/schemas/frontmatter_schema.json +165 -0
- claude_mpm/scripts/claude-hook-handler.sh +3 -3
- claude_mpm/scripts/start_activity_logging.py +3 -1
- claude_mpm/services/agents/deployment/agent_format_converter.py +1 -1
- claude_mpm/services/agents/deployment/agent_metrics_collector.py +3 -3
- claude_mpm/services/agents/deployment/facade/deployment_facade.py +3 -3
- claude_mpm/services/agents/deployment/pipeline/pipeline_executor.py +2 -2
- claude_mpm/services/agents/loading/framework_agent_loader.py +8 -8
- claude_mpm/services/agents/local_template_manager.py +3 -1
- 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/core/base.py +26 -11
- claude_mpm/services/core/interfaces.py +56 -1
- claude_mpm/services/core/models/agent_config.py +3 -0
- claude_mpm/services/core/models/process.py +4 -0
- claude_mpm/services/diagnostics/checks/agent_check.py +0 -2
- 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/monitor_check.py +0 -1
- claude_mpm/services/diagnostics/doctor_reporter.py +6 -4
- claude_mpm/services/diagnostics/models.py +21 -0
- claude_mpm/services/event_bus/README.md +244 -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/README.md +303 -0
- claude_mpm/services/events/consumers/logging.py +1 -2
- claude_mpm/services/framework_claude_md_generator/README.md +119 -0
- claude_mpm/services/infrastructure/monitoring/resources.py +1 -1
- claude_mpm/services/local_ops/__init__.py +2 -0
- claude_mpm/services/local_ops/process_manager.py +1 -1
- claude_mpm/services/local_ops/resource_monitor.py +2 -2
- claude_mpm/services/mcp_gateway/README.md +185 -0
- 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 +19 -10
- 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/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 +1 -1
- 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/project/documentation_manager.py +2 -1
- claude_mpm/services/project/toolchain_analyzer.py +3 -1
- claude_mpm/services/runner_configuration_service.py +1 -0
- claude_mpm/services/self_upgrade_service.py +165 -7
- 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/connection.py.backup +217 -0
- claude_mpm/services/socketio/handlers/git.py +2 -2
- claude_mpm/services/socketio/handlers/hook.py.backup +154 -0
- claude_mpm/services/static/.gitkeep +2 -0
- 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/version_control/VERSION +1 -0
- claude_mpm/services/version_control/conflict_resolution.py +6 -4
- 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/.gitkeep +2 -0
- claude_mpm/skills/bundled/collaboration/brainstorming/SKILL.md +4 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/SKILL.md +108 -114
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/agent-prompts.md +577 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/coordination-patterns.md +467 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/examples.md +537 -0
- claude_mpm/skills/bundled/collaboration/dispatching-parallel-agents/references/troubleshooting.md +730 -0
- claude_mpm/skills/bundled/collaboration/git-worktrees.md +317 -0
- claude_mpm/skills/bundled/collaboration/requesting-code-review/SKILL.md +46 -41
- claude_mpm/skills/bundled/collaboration/requesting-code-review/references/review-examples.md +412 -0
- claude_mpm/skills/bundled/collaboration/stacked-prs.md +251 -0
- claude_mpm/skills/bundled/collaboration/writing-plans/SKILL.md +36 -73
- claude_mpm/skills/bundled/collaboration/writing-plans/references/best-practices.md +362 -0
- claude_mpm/skills/bundled/collaboration/writing-plans/references/plan-structure-templates.md +312 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/SKILL.md +100 -125
- claude_mpm/skills/bundled/debugging/root-cause-tracing/find-polluter.sh +63 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/advanced-techniques.md +668 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/examples.md +587 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/integration.md +438 -0
- claude_mpm/skills/bundled/debugging/root-cause-tracing/references/tracing-techniques.md +391 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/SKILL.md +28 -72
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/gate-function.md +11 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/integration-and-workflows.md +490 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/red-flags-and-failures.md +425 -0
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/verification-patterns.md +272 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/INTEGRATION.md +611 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/README.md +596 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/SKILL.md +260 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/examples/nextjs-env-structure.md +315 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/frameworks.md +436 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/security.md +433 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/synchronization.md +452 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/troubleshooting.md +404 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/references/validation.md +420 -0
- claude_mpm/skills/bundled/infrastructure/env-manager/scripts/validate_env.py +576 -0
- claude_mpm/skills/bundled/main/artifacts-builder/LICENSE.txt +202 -0
- claude_mpm/skills/bundled/main/artifacts-builder/SKILL.md +13 -1
- claude_mpm/skills/bundled/main/artifacts-builder/scripts/bundle-artifact.sh +54 -0
- claude_mpm/skills/bundled/main/artifacts-builder/scripts/init-artifact.sh +322 -0
- claude_mpm/skills/bundled/main/artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
- claude_mpm/skills/bundled/main/internal-comms/LICENSE.txt +202 -0
- claude_mpm/skills/bundled/main/internal-comms/SKILL.md +11 -0
- claude_mpm/skills/bundled/main/mcp-builder/LICENSE.txt +202 -0
- claude_mpm/skills/bundled/main/mcp-builder/SKILL.md +109 -277
- claude_mpm/skills/bundled/main/mcp-builder/reference/design_principles.md +412 -0
- claude_mpm/skills/bundled/main/mcp-builder/reference/workflow.md +1237 -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/mcp-builder/scripts/example_evaluation.xml +22 -0
- claude_mpm/skills/bundled/main/mcp-builder/scripts/requirements.txt +2 -0
- claude_mpm/skills/bundled/main/skill-creator/LICENSE.txt +202 -0
- claude_mpm/skills/bundled/main/skill-creator/SKILL.md +135 -155
- claude_mpm/skills/bundled/main/skill-creator/references/best-practices.md +500 -0
- claude_mpm/skills/bundled/main/skill-creator/references/creation-workflow.md +464 -0
- claude_mpm/skills/bundled/main/skill-creator/references/examples.md +619 -0
- claude_mpm/skills/bundled/main/skill-creator/references/progressive-disclosure.md +437 -0
- claude_mpm/skills/bundled/main/skill-creator/references/skill-structure.md +231 -0
- 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/php/espocrm-development/SKILL.md +170 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/architecture.md +602 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/common-tasks.md +821 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/development-workflow.md +742 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/frontend-customization.md +726 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/hooks-and-services.md +764 -0
- claude_mpm/skills/bundled/php/espocrm-development/references/testing-debugging.md +831 -0
- claude_mpm/skills/bundled/react/flexlayout-react.md +742 -0
- claude_mpm/skills/bundled/rust/desktop-applications/SKILL.md +226 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/architecture-patterns.md +901 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/native-gui-frameworks.md +901 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/platform-integration.md +775 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/state-management.md +937 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/tauri-framework.md +770 -0
- claude_mpm/skills/bundled/rust/desktop-applications/references/testing-deployment.md +961 -0
- claude_mpm/skills/bundled/tauri/tauri-async-patterns.md +495 -0
- claude_mpm/skills/bundled/tauri/tauri-build-deploy.md +599 -0
- claude_mpm/skills/bundled/tauri/tauri-command-patterns.md +535 -0
- claude_mpm/skills/bundled/tauri/tauri-error-handling.md +613 -0
- claude_mpm/skills/bundled/tauri/tauri-event-system.md +648 -0
- claude_mpm/skills/bundled/tauri/tauri-file-system.md +673 -0
- claude_mpm/skills/bundled/tauri/tauri-frontend-integration.md +767 -0
- claude_mpm/skills/bundled/tauri/tauri-performance.md +669 -0
- claude_mpm/skills/bundled/tauri/tauri-state-management.md +573 -0
- claude_mpm/skills/bundled/tauri/tauri-testing.md +384 -0
- claude_mpm/skills/bundled/tauri/tauri-window-management.md +628 -0
- claude_mpm/skills/bundled/testing/condition-based-waiting/SKILL.md +21 -25
- claude_mpm/skills/bundled/testing/condition-based-waiting/example.ts +158 -0
- claude_mpm/skills/bundled/testing/condition-based-waiting/references/patterns-and-implementation.md +253 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/SKILL.md +458 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/examples/example-inspection-report.md +411 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/assertion-quality.md +317 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/inspection-checklist.md +270 -0
- claude_mpm/skills/bundled/testing/test-quality-inspector/references/red-flags.md +436 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/SKILL.md +86 -250
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/completeness-anti-patterns.md +572 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/core-anti-patterns.md +411 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/detection-guide.md +569 -0
- claude_mpm/skills/bundled/testing/testing-anti-patterns/references/tdd-connection.md +695 -0
- claude_mpm/skills/bundled/testing/webapp-testing/LICENSE.txt +202 -0
- claude_mpm/skills/bundled/testing/webapp-testing/SKILL.md +145 -57
- claude_mpm/skills/bundled/testing/webapp-testing/decision-tree.md +459 -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/playwright-patterns.md +479 -0
- claude_mpm/skills/bundled/testing/webapp-testing/reconnaissance-pattern.md +687 -0
- claude_mpm/skills/bundled/testing/webapp-testing/scripts/with_server.py +37 -15
- claude_mpm/skills/bundled/testing/webapp-testing/server-management.md +758 -0
- claude_mpm/skills/bundled/testing/webapp-testing/troubleshooting.md +868 -0
- claude_mpm/skills/skills_registry.py +44 -48
- claude_mpm/skills/skills_service.py +117 -108
- claude_mpm/templates/questions/EXAMPLES.md +501 -0
- claude_mpm/templates/questions/__init__.py +43 -0
- claude_mpm/templates/questions/base.py +193 -0
- claude_mpm/templates/questions/pr_strategy.py +314 -0
- claude_mpm/templates/questions/project_init.py +388 -0
- claude_mpm/templates/questions/ticket_mgmt.py +397 -0
- claude_mpm/tools/README_SOCKETIO_DEBUG.md +224 -0
- claude_mpm/tools/__main__.py +8 -8
- claude_mpm/tools/code_tree_analyzer/README.md +64 -0
- 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 +3 -3
- claude_mpm/utils/dependency_cache.py +3 -1
- claude_mpm/utils/gitignore.py +241 -0
- claude_mpm/utils/log_cleanup.py +3 -3
- 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-4.25.10.dist-info}/METADATA +218 -31
- {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/RECORD +409 -246
- 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/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/cli/commands/mpm_init.py +0 -2093
- claude_mpm/dashboard/.claude-mpm/socketio-instances.json +0 -1
- 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/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/test-archive/test_debug.html +0 -25
- claude_mpm/skills/bundled/debugging/verification-before-completion/references/common-failures.md +0 -213
- claude_mpm/tools/code_tree_analyzer.py +0 -1825
- /claude_mpm/skills/bundled/collaboration/requesting-code-review/{code-reviewer.md → references/code-reviewer-template.md} +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/WHEEL +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/entry_points.txt +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-4.20.3.dist-info → claude_mpm-4.25.10.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Navigation Standardization Test Results
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
Successfully standardized navigation across all 5 dashboard views using a shared navigation component.
|
|
5
|
+
|
|
6
|
+
## Implementation Details
|
|
7
|
+
|
|
8
|
+
### 1. Created Shared Navigation Component
|
|
9
|
+
- **File**: `/src/claude_mpm/dashboard/static/built/components/nav-bar.js`
|
|
10
|
+
- **Features**:
|
|
11
|
+
- Consistent navigation tabs across all pages
|
|
12
|
+
- Automatic active page detection
|
|
13
|
+
- Unified styling with dark theme gradients
|
|
14
|
+
- Responsive design support
|
|
15
|
+
|
|
16
|
+
### 2. Updated All Dashboard Views
|
|
17
|
+
|
|
18
|
+
#### Activity Dashboard (`activity.html`)
|
|
19
|
+
- ✅ Updated to use shared navigation component
|
|
20
|
+
- ✅ Removed duplicate navigation CSS
|
|
21
|
+
- ✅ Added navigation container div
|
|
22
|
+
- ✅ Imported and initialized NavBar component
|
|
23
|
+
|
|
24
|
+
#### Events Monitor (`events.html`)
|
|
25
|
+
- ✅ Updated to use shared navigation component
|
|
26
|
+
- ✅ Removed duplicate navigation CSS
|
|
27
|
+
- ✅ Added navigation container div
|
|
28
|
+
- ✅ Imported and initialized NavBar component
|
|
29
|
+
|
|
30
|
+
#### Agents Monitor (`agents.html`)
|
|
31
|
+
- ✅ Updated to use shared navigation component
|
|
32
|
+
- ✅ Removed duplicate navigation CSS
|
|
33
|
+
- ✅ Added navigation container div
|
|
34
|
+
- ✅ Imported and initialized NavBar component
|
|
35
|
+
|
|
36
|
+
#### Tools Monitor (`tools.html`)
|
|
37
|
+
- ✅ Updated to use shared navigation component
|
|
38
|
+
- ✅ Removed duplicate navigation CSS
|
|
39
|
+
- ✅ Added navigation container div
|
|
40
|
+
- ✅ Imported and initialized NavBar component
|
|
41
|
+
|
|
42
|
+
#### Files Monitor (`files.html`)
|
|
43
|
+
- ✅ Updated to use shared navigation component
|
|
44
|
+
- ✅ Removed duplicate navigation CSS
|
|
45
|
+
- ✅ Added navigation container div
|
|
46
|
+
- ✅ Imported and initialized NavBar component
|
|
47
|
+
|
|
48
|
+
## Navigation Features
|
|
49
|
+
|
|
50
|
+
### Consistent Tab Order
|
|
51
|
+
All pages now display the same navigation tabs in the same order:
|
|
52
|
+
1. 🎯 Activity
|
|
53
|
+
2. 📡 Events
|
|
54
|
+
3. 🤖 Agents
|
|
55
|
+
4. 🔧 Tools
|
|
56
|
+
5. 📁 Files
|
|
57
|
+
|
|
58
|
+
### Visual Consistency
|
|
59
|
+
- **Background**: Semi-transparent with backdrop blur
|
|
60
|
+
- **Tab Style**: Rounded corners with subtle borders
|
|
61
|
+
- **Hover Effect**: Lift animation with shadow
|
|
62
|
+
- **Active Tab**: Gradient background (green to cyan) with white text
|
|
63
|
+
- **Responsive**: Wraps on smaller screens
|
|
64
|
+
|
|
65
|
+
### Active Page Highlighting
|
|
66
|
+
Each page correctly highlights its corresponding tab:
|
|
67
|
+
- `activity.html` → Activity tab highlighted
|
|
68
|
+
- `events.html` → Events tab highlighted
|
|
69
|
+
- `agents.html` → Agents tab highlighted
|
|
70
|
+
- `tools.html` → Tools tab highlighted
|
|
71
|
+
- `files.html` → Files tab highlighted
|
|
72
|
+
|
|
73
|
+
## Testing
|
|
74
|
+
|
|
75
|
+
### Test Page Created
|
|
76
|
+
- **File**: `/src/claude_mpm/dashboard/static/test-navigation.html`
|
|
77
|
+
- **Purpose**: Visual verification of navigation consistency
|
|
78
|
+
- **Features**:
|
|
79
|
+
- Shows navigation component in isolation
|
|
80
|
+
- Displays all 5 dashboard pages in iframes
|
|
81
|
+
- Verifies navigation loads on each page
|
|
82
|
+
- Provides pass/fail status for each page
|
|
83
|
+
|
|
84
|
+
## Code Changes Summary
|
|
85
|
+
|
|
86
|
+
### Files Modified
|
|
87
|
+
1. `/src/claude_mpm/dashboard/static/activity.html`
|
|
88
|
+
2. `/src/claude_mpm/dashboard/static/events.html`
|
|
89
|
+
3. `/src/claude_mpm/dashboard/static/agents.html`
|
|
90
|
+
4. `/src/claude_mpm/dashboard/static/tools.html`
|
|
91
|
+
5. `/src/claude_mpm/dashboard/static/files.html`
|
|
92
|
+
|
|
93
|
+
### Files Created
|
|
94
|
+
1. `/src/claude_mpm/dashboard/static/built/components/nav-bar.js`
|
|
95
|
+
2. `/src/claude_mpm/dashboard/static/test-navigation.html`
|
|
96
|
+
3. `/src/claude_mpm/dashboard/static/navigation-test-results.md` (this file)
|
|
97
|
+
|
|
98
|
+
## Benefits
|
|
99
|
+
|
|
100
|
+
1. **Maintainability**: Single source of truth for navigation
|
|
101
|
+
2. **Consistency**: Identical navigation across all views
|
|
102
|
+
3. **Extensibility**: Easy to add new pages or modify navigation
|
|
103
|
+
4. **Performance**: Styles injected once, reused across pages
|
|
104
|
+
5. **User Experience**: Predictable navigation behavior
|
|
105
|
+
|
|
106
|
+
## Verification Steps
|
|
107
|
+
|
|
108
|
+
To verify the implementation:
|
|
109
|
+
|
|
110
|
+
1. Open each dashboard view in a browser
|
|
111
|
+
2. Check that navigation appears identically on all pages
|
|
112
|
+
3. Click through tabs to ensure they work
|
|
113
|
+
4. Verify active tab highlighting is correct on each page
|
|
114
|
+
5. Test hover effects are consistent
|
|
115
|
+
|
|
116
|
+
## Conclusion
|
|
117
|
+
|
|
118
|
+
The navigation has been successfully standardized across all dashboard views. All pages now use the same shared navigation component, ensuring consistency in appearance, behavior, and user experience.
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
|
|
16
16
|
<!-- External Dependencies -->
|
|
17
17
|
<script src="https://cdn.socket.io/4.7.5/socket.io.min.js"></script>
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
<!-- D3.js for Activity Tree Visualization -->
|
|
20
20
|
<script src="https://d3js.org/d3.v7.min.js"></script>
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
<!-- Font Awesome for icons -->
|
|
23
23
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
|
24
24
|
|
|
@@ -500,19 +500,19 @@
|
|
|
500
500
|
// Set up working directory environment variables
|
|
501
501
|
// These will be used by the working-directory component
|
|
502
502
|
// The server will inject these values through a separate API call
|
|
503
|
-
|
|
503
|
+
|
|
504
504
|
// Get the current working directory from the server
|
|
505
505
|
fetch('/api/working-directory')
|
|
506
506
|
.then(response => response.json())
|
|
507
507
|
.then(data => {
|
|
508
508
|
window.processWorkingDirectory = data.working_directory || '/Users/masa/Projects/claude-mpm';
|
|
509
509
|
window.homeDirectory = data.home_directory || '/Users/masa';
|
|
510
|
-
|
|
510
|
+
|
|
511
511
|
// Store in session storage for persistence
|
|
512
512
|
if (window.processWorkingDirectory && window.processWorkingDirectory !== '/') {
|
|
513
513
|
sessionStorage.setItem('currentWorkingDirectory', window.processWorkingDirectory);
|
|
514
514
|
}
|
|
515
|
-
|
|
515
|
+
|
|
516
516
|
// Dispatch event to notify components that working directory is ready
|
|
517
517
|
window.dispatchEvent(new CustomEvent('workingDirectoryInitialized', {
|
|
518
518
|
detail: {
|
|
@@ -527,10 +527,10 @@
|
|
|
527
527
|
window.processWorkingDirectory = '/Users/masa/Projects/claude-mpm';
|
|
528
528
|
window.homeDirectory = '/Users/masa';
|
|
529
529
|
});
|
|
530
|
-
|
|
530
|
+
|
|
531
531
|
// Add timestamp-based cache busting and ensure proper loading order
|
|
532
532
|
const timestamp = Date.now();
|
|
533
|
-
|
|
533
|
+
|
|
534
534
|
// Load modules sequentially to ensure dashboard.js loads first
|
|
535
535
|
const loadModule = (src) => {
|
|
536
536
|
return new Promise((resolve, reject) => {
|
|
@@ -542,7 +542,7 @@
|
|
|
542
542
|
document.body.appendChild(script);
|
|
543
543
|
});
|
|
544
544
|
};
|
|
545
|
-
|
|
545
|
+
|
|
546
546
|
// Load shared services first, then tree modules, then components
|
|
547
547
|
// Load services sequentially to ensure dependencies are available
|
|
548
548
|
loadModule('/static/js/shared/tooltip-service.js')
|
|
@@ -594,19 +594,19 @@
|
|
|
594
594
|
})
|
|
595
595
|
.then(() => {
|
|
596
596
|
console.log('All dashboard modules loaded successfully');
|
|
597
|
-
|
|
597
|
+
|
|
598
598
|
// Debug: Check if CodeViewer loaded
|
|
599
599
|
if (window.CodeViewer) {
|
|
600
600
|
console.log('[DEBUG] CodeViewer is available on window object');
|
|
601
601
|
} else {
|
|
602
602
|
console.error('[ERROR] CodeViewer NOT FOUND on window object!');
|
|
603
603
|
}
|
|
604
|
-
|
|
604
|
+
|
|
605
605
|
// CodeViewer will auto-initialize and handle tab switching internally
|
|
606
|
-
|
|
606
|
+
|
|
607
607
|
// Browser Log Viewer initialization is now handled by UIStateManager
|
|
608
608
|
// This prevents duplicate event handlers and tab selection conflicts
|
|
609
|
-
|
|
609
|
+
|
|
610
610
|
// Load bulletproof tab isolation fix
|
|
611
611
|
loadModule('/static/js/tab-isolation-fix.js')
|
|
612
612
|
.then(() => {
|
|
@@ -632,21 +632,21 @@
|
|
|
632
632
|
console.error('[CRITICAL] Error loading dashboard modules:', error);
|
|
633
633
|
console.error('Stack trace:', error.stack);
|
|
634
634
|
});
|
|
635
|
-
|
|
635
|
+
|
|
636
636
|
// Give modules time to execute and initialize dashboard
|
|
637
637
|
setTimeout(() => {
|
|
638
638
|
console.log('Checking dashboard initialization...');
|
|
639
|
-
|
|
639
|
+
|
|
640
640
|
if (window.dashboard) {
|
|
641
641
|
console.log('Dashboard found, checking auto-connect status...');
|
|
642
|
-
|
|
642
|
+
|
|
643
643
|
// Force auto-connect if not already connected
|
|
644
644
|
if (window.dashboard.socketManager) {
|
|
645
645
|
const socketManager = window.dashboard.socketManager;
|
|
646
|
-
|
|
646
|
+
|
|
647
647
|
if (!socketManager.isConnected() && !socketManager.isConnecting()) {
|
|
648
648
|
console.log('Dashboard loaded but not connected, forcing auto-connect...');
|
|
649
|
-
|
|
649
|
+
|
|
650
650
|
// Try to trigger auto-connect manually
|
|
651
651
|
const params = new URLSearchParams(window.location.search);
|
|
652
652
|
socketManager.initializeFromURL(params);
|
|
@@ -658,23 +658,23 @@
|
|
|
658
658
|
}
|
|
659
659
|
} else {
|
|
660
660
|
console.warn('Dashboard still not initialized after module loading');
|
|
661
|
-
|
|
661
|
+
|
|
662
662
|
// Try to manually trigger initialization
|
|
663
663
|
if (document.readyState === 'complete' || document.readyState === 'interactive') {
|
|
664
664
|
console.log('Document ready, attempting to trigger dashboard initialization...');
|
|
665
665
|
document.dispatchEvent(new Event('DOMContentLoaded'));
|
|
666
666
|
}
|
|
667
667
|
}
|
|
668
|
-
|
|
668
|
+
|
|
669
669
|
// Debug: Test connection settings button
|
|
670
670
|
const connectionToggleBtn = document.getElementById('connection-toggle-btn');
|
|
671
671
|
if (connectionToggleBtn) {
|
|
672
672
|
console.log('Connection toggle button found, testing functionality...');
|
|
673
|
-
|
|
673
|
+
|
|
674
674
|
// Add a debug click handler to ensure the button works
|
|
675
675
|
connectionToggleBtn.addEventListener('click', () => {
|
|
676
676
|
console.log('Connection toggle button clicked (debug handler)');
|
|
677
|
-
|
|
677
|
+
|
|
678
678
|
if (window.dashboard && window.dashboard.socketManager) {
|
|
679
679
|
console.log('Calling socketManager.toggleConnectionControls()');
|
|
680
680
|
window.dashboard.socketManager.toggleConnectionControls();
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
|
|
16
16
|
<!-- External Dependencies -->
|
|
17
17
|
<script src="https://cdn.socket.io/4.7.5/socket.io.min.js"></script>
|
|
18
|
-
|
|
18
|
+
|
|
19
19
|
<!-- D3.js for Activity Tree Visualization -->
|
|
20
20
|
<script src="https://d3js.org/d3.v7.min.js"></script>
|
|
21
|
-
|
|
21
|
+
|
|
22
22
|
<!-- Font Awesome for icons -->
|
|
23
23
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
|
24
24
|
|
|
@@ -142,7 +142,7 @@
|
|
|
142
142
|
<body>
|
|
143
143
|
<!-- Connection Notifications Area -->
|
|
144
144
|
<div id="connection-notifications" class="connection-notifications"></div>
|
|
145
|
-
|
|
145
|
+
|
|
146
146
|
<div class="container">
|
|
147
147
|
<!-- Header Section -->
|
|
148
148
|
<div class="header">
|
|
@@ -437,19 +437,19 @@
|
|
|
437
437
|
// Set up working directory environment variables
|
|
438
438
|
// These will be used by the working-directory component
|
|
439
439
|
// The server will inject these values through a separate API call
|
|
440
|
-
|
|
440
|
+
|
|
441
441
|
// Get the current working directory from the server
|
|
442
442
|
fetch('/api/working-directory')
|
|
443
443
|
.then(response => response.json())
|
|
444
444
|
.then(data => {
|
|
445
445
|
window.processWorkingDirectory = data.working_directory || '/Users/masa/Projects/claude-mpm';
|
|
446
446
|
window.homeDirectory = data.home_directory || '/Users/masa';
|
|
447
|
-
|
|
447
|
+
|
|
448
448
|
// Store in session storage for persistence
|
|
449
449
|
if (window.processWorkingDirectory && window.processWorkingDirectory !== '/') {
|
|
450
450
|
sessionStorage.setItem('currentWorkingDirectory', window.processWorkingDirectory);
|
|
451
451
|
}
|
|
452
|
-
|
|
452
|
+
|
|
453
453
|
// Dispatch event to notify components that working directory is ready
|
|
454
454
|
window.dispatchEvent(new CustomEvent('workingDirectoryInitialized', {
|
|
455
455
|
detail: {
|
|
@@ -464,10 +464,10 @@
|
|
|
464
464
|
window.processWorkingDirectory = '/Users/masa/Projects/claude-mpm';
|
|
465
465
|
window.homeDirectory = '/Users/masa';
|
|
466
466
|
});
|
|
467
|
-
|
|
467
|
+
|
|
468
468
|
// Add timestamp-based cache busting and ensure proper loading order
|
|
469
469
|
const timestamp = Date.now();
|
|
470
|
-
|
|
470
|
+
|
|
471
471
|
// Load modules sequentially to ensure dashboard.js loads first
|
|
472
472
|
const loadModule = (src) => {
|
|
473
473
|
return new Promise((resolve, reject) => {
|
|
@@ -479,7 +479,7 @@
|
|
|
479
479
|
document.body.appendChild(script);
|
|
480
480
|
});
|
|
481
481
|
};
|
|
482
|
-
|
|
482
|
+
|
|
483
483
|
// Load shared services first, then tree modules, then components
|
|
484
484
|
// Load services sequentially to ensure dependencies are available
|
|
485
485
|
loadModule('/static/js/shared/tooltip-service.js')
|
|
@@ -531,19 +531,19 @@
|
|
|
531
531
|
})
|
|
532
532
|
.then(() => {
|
|
533
533
|
console.log('All dashboard modules loaded successfully');
|
|
534
|
-
|
|
534
|
+
|
|
535
535
|
// Debug: Check if CodeViewer loaded
|
|
536
536
|
if (window.CodeViewer) {
|
|
537
537
|
console.log('[DEBUG] CodeViewer is available on window object');
|
|
538
538
|
} else {
|
|
539
539
|
console.error('[ERROR] CodeViewer NOT FOUND on window object!');
|
|
540
540
|
}
|
|
541
|
-
|
|
541
|
+
|
|
542
542
|
// CodeViewer will auto-initialize and handle tab switching internally
|
|
543
|
-
|
|
543
|
+
|
|
544
544
|
// Browser Log Viewer initialization is now handled by UIStateManager
|
|
545
545
|
// This prevents duplicate event handlers and tab selection conflicts
|
|
546
|
-
|
|
546
|
+
|
|
547
547
|
// Load bulletproof tab isolation fix
|
|
548
548
|
loadModule('/static/js/tab-isolation-fix.js')
|
|
549
549
|
.then(() => {
|
|
@@ -569,21 +569,21 @@
|
|
|
569
569
|
console.error('[CRITICAL] Error loading dashboard modules:', error);
|
|
570
570
|
console.error('Stack trace:', error.stack);
|
|
571
571
|
});
|
|
572
|
-
|
|
572
|
+
|
|
573
573
|
// Give modules time to execute and initialize dashboard
|
|
574
574
|
setTimeout(() => {
|
|
575
575
|
console.log('Checking dashboard initialization...');
|
|
576
|
-
|
|
576
|
+
|
|
577
577
|
if (window.dashboard) {
|
|
578
578
|
console.log('Dashboard found, checking auto-connect status...');
|
|
579
|
-
|
|
579
|
+
|
|
580
580
|
// Force auto-connect if not already connected
|
|
581
581
|
if (window.dashboard.socketManager) {
|
|
582
582
|
const socketManager = window.dashboard.socketManager;
|
|
583
|
-
|
|
583
|
+
|
|
584
584
|
if (!socketManager.isConnected() && !socketManager.isConnecting()) {
|
|
585
585
|
console.log('Dashboard loaded but not connected, forcing auto-connect...');
|
|
586
|
-
|
|
586
|
+
|
|
587
587
|
// Try to trigger auto-connect manually
|
|
588
588
|
const params = new URLSearchParams(window.location.search);
|
|
589
589
|
socketManager.initializeFromURL(params);
|
|
@@ -595,23 +595,23 @@
|
|
|
595
595
|
}
|
|
596
596
|
} else {
|
|
597
597
|
console.warn('Dashboard still not initialized after module loading');
|
|
598
|
-
|
|
598
|
+
|
|
599
599
|
// Try to manually trigger initialization
|
|
600
600
|
if (document.readyState === 'complete' || document.readyState === 'interactive') {
|
|
601
601
|
console.log('Document ready, attempting to trigger dashboard initialization...');
|
|
602
602
|
document.dispatchEvent(new Event('DOMContentLoaded'));
|
|
603
603
|
}
|
|
604
604
|
}
|
|
605
|
-
|
|
605
|
+
|
|
606
606
|
// Debug: Test connection settings button
|
|
607
607
|
const connectionToggleBtn = document.getElementById('connection-toggle-btn');
|
|
608
608
|
if (connectionToggleBtn) {
|
|
609
609
|
console.log('Connection toggle button found, testing functionality...');
|
|
610
|
-
|
|
610
|
+
|
|
611
611
|
// Add a debug click handler to ensure the button works
|
|
612
612
|
connectionToggleBtn.addEventListener('click', () => {
|
|
613
613
|
console.log('Connection toggle button clicked (debug handler)');
|
|
614
|
-
|
|
614
|
+
|
|
615
615
|
if (window.dashboard && window.dashboard.socketManager) {
|
|
616
616
|
console.log('Calling socketManager.toggleConnectionControls()');
|
|
617
617
|
window.dashboard.socketManager.toggleConnectionControls();
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Agent Memory System
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Each agent maintains project-specific knowledge in these files. Agents read their memory file before tasks and update it when they learn something new.
|
|
5
|
+
|
|
6
|
+
## Manual Editing
|
|
7
|
+
Feel free to edit these files to:
|
|
8
|
+
- Add project-specific guidelines
|
|
9
|
+
- Remove outdated information
|
|
10
|
+
- Reorganize for better clarity
|
|
11
|
+
- Add domain-specific knowledge
|
|
12
|
+
|
|
13
|
+
## Memory Limits
|
|
14
|
+
- Max file size: 8KB (~2000 tokens)
|
|
15
|
+
- Max sections: 10
|
|
16
|
+
- Max items per section: 15
|
|
17
|
+
- Files auto-truncate when limits exceeded
|
|
18
|
+
|
|
19
|
+
## File Format
|
|
20
|
+
Standard markdown with structured sections. Agents expect:
|
|
21
|
+
- Project Architecture
|
|
22
|
+
- Implementation Guidelines
|
|
23
|
+
- Common Mistakes to Avoid
|
|
24
|
+
- Current Technical Context
|
|
25
|
+
|
|
26
|
+
## How It Works
|
|
27
|
+
1. Agents read their memory file before starting tasks
|
|
28
|
+
2. Agents add learnings during or after task completion
|
|
29
|
+
3. Files automatically enforce size limits
|
|
30
|
+
4. Developers can manually edit for accuracy
|
|
31
|
+
|
|
32
|
+
## Memory File Lifecycle
|
|
33
|
+
- Created automatically when agent first runs
|
|
34
|
+
- Updated through hook system after delegations
|
|
35
|
+
- Manually editable by developers
|
|
36
|
+
- Version controlled with project
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Engineer Agent Memory - templates
|
|
2
|
+
|
|
3
|
+
<!-- MEMORY LIMITS: 8KB max | 10 sections max | 15 items per section -->
|
|
4
|
+
<!-- Last Updated: 2025-08-07 18:26:34 | Auto-updated by: engineer -->
|
|
5
|
+
|
|
6
|
+
## Project Context
|
|
7
|
+
templates: mixed standard application
|
|
8
|
+
|
|
9
|
+
## Project Architecture
|
|
10
|
+
- Standard Application with mixed implementation
|
|
11
|
+
|
|
12
|
+
## Coding Patterns Learned
|
|
13
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
14
|
+
|
|
15
|
+
## Implementation Guidelines
|
|
16
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
17
|
+
|
|
18
|
+
## Domain-Specific Knowledge
|
|
19
|
+
<!-- Agent-specific knowledge for templates domain -->
|
|
20
|
+
- Key project terms: templates
|
|
21
|
+
- Focus on implementation patterns, coding standards, and best practices
|
|
22
|
+
|
|
23
|
+
## Effective Strategies
|
|
24
|
+
<!-- Successful approaches discovered through experience -->
|
|
25
|
+
|
|
26
|
+
## Common Mistakes to Avoid
|
|
27
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
28
|
+
|
|
29
|
+
## Integration Points
|
|
30
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
31
|
+
|
|
32
|
+
## Performance Considerations
|
|
33
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
34
|
+
|
|
35
|
+
## Current Technical Context
|
|
36
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
37
|
+
|
|
38
|
+
## Recent Learnings
|
|
39
|
+
<!-- Most recent discoveries and insights -->
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Version Control Agent Memory - templates
|
|
2
|
+
|
|
3
|
+
<!-- MEMORY LIMITS: 8KB max | 10 sections max | 15 items per section -->
|
|
4
|
+
<!-- Last Updated: 2025-08-07 18:28:51 | Auto-updated by: version_control -->
|
|
5
|
+
|
|
6
|
+
## Project Context
|
|
7
|
+
templates: mixed standard application
|
|
8
|
+
|
|
9
|
+
## Project Architecture
|
|
10
|
+
- Standard Application with mixed implementation
|
|
11
|
+
|
|
12
|
+
## Coding Patterns Learned
|
|
13
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
14
|
+
|
|
15
|
+
## Implementation Guidelines
|
|
16
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
17
|
+
|
|
18
|
+
## Domain-Specific Knowledge
|
|
19
|
+
<!-- Agent-specific knowledge for templates domain -->
|
|
20
|
+
- Key project terms: templates
|
|
21
|
+
|
|
22
|
+
## Effective Strategies
|
|
23
|
+
<!-- Successful approaches discovered through experience -->
|
|
24
|
+
|
|
25
|
+
## Common Mistakes to Avoid
|
|
26
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
27
|
+
|
|
28
|
+
## Integration Points
|
|
29
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
30
|
+
|
|
31
|
+
## Performance Considerations
|
|
32
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
33
|
+
|
|
34
|
+
## Current Technical Context
|
|
35
|
+
<!-- Items will be added as knowledge accumulates -->
|
|
36
|
+
|
|
37
|
+
## Recent Learnings
|
|
38
|
+
<!-- Most recent discoveries and insights -->
|
|
@@ -24,50 +24,50 @@
|
|
|
24
24
|
border-radius: 4px;
|
|
25
25
|
margin-bottom: 20px;
|
|
26
26
|
}
|
|
27
|
-
|
|
27
|
+
|
|
28
28
|
/* Tree visualization styles */
|
|
29
29
|
.tree-node {
|
|
30
30
|
cursor: pointer;
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
|
|
33
33
|
.tree-node circle {
|
|
34
34
|
fill: #fff;
|
|
35
35
|
stroke: steelblue;
|
|
36
36
|
stroke-width: 2px;
|
|
37
37
|
transition: all 0.3s ease;
|
|
38
38
|
}
|
|
39
|
-
|
|
39
|
+
|
|
40
40
|
.tree-node:hover circle {
|
|
41
41
|
fill: #e6f3ff;
|
|
42
42
|
stroke-width: 3px;
|
|
43
43
|
}
|
|
44
|
-
|
|
44
|
+
|
|
45
45
|
.tree-node text {
|
|
46
46
|
font: 12px sans-serif;
|
|
47
47
|
pointer-events: none;
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
|
|
50
50
|
.tree-link {
|
|
51
51
|
fill: none;
|
|
52
52
|
stroke: #ccc;
|
|
53
53
|
stroke-width: 2px;
|
|
54
54
|
}
|
|
55
|
-
|
|
55
|
+
|
|
56
56
|
.view-toggle button {
|
|
57
57
|
transition: all 0.3s ease;
|
|
58
58
|
}
|
|
59
|
-
|
|
59
|
+
|
|
60
60
|
.view-toggle button:hover {
|
|
61
61
|
transform: translateY(-1px);
|
|
62
62
|
box-shadow: 0 2px 4px rgba(0,0,0,0.2);
|
|
63
63
|
}
|
|
64
|
-
|
|
64
|
+
|
|
65
65
|
.file-selector input:focus {
|
|
66
66
|
outline: none;
|
|
67
67
|
border-color: #007cba;
|
|
68
68
|
box-shadow: 0 0 0 2px rgba(0, 124, 186, 0.2);
|
|
69
69
|
}
|
|
70
|
-
|
|
70
|
+
|
|
71
71
|
.tree-legend {
|
|
72
72
|
position: absolute;
|
|
73
73
|
top: 10px;
|
|
@@ -79,13 +79,13 @@
|
|
|
79
79
|
font-size: 12px;
|
|
80
80
|
z-index: 1000;
|
|
81
81
|
}
|
|
82
|
-
|
|
82
|
+
|
|
83
83
|
.tree-legend-item {
|
|
84
84
|
margin: 2px 0;
|
|
85
85
|
display: flex;
|
|
86
86
|
align-items: center;
|
|
87
87
|
}
|
|
88
|
-
|
|
88
|
+
|
|
89
89
|
.tree-legend-color {
|
|
90
90
|
width: 12px;
|
|
91
91
|
height: 12px;
|
|
@@ -103,15 +103,15 @@
|
|
|
103
103
|
<div>⏳ Page loaded...</div>
|
|
104
104
|
</div>
|
|
105
105
|
</div>
|
|
106
|
-
|
|
106
|
+
|
|
107
107
|
<div id="code-container">
|
|
108
108
|
<!-- SimpleCodeView will render here -->
|
|
109
109
|
</div>
|
|
110
110
|
</div>
|
|
111
|
-
|
|
111
|
+
|
|
112
112
|
<script>
|
|
113
113
|
console.log('[HTML] Page script starting');
|
|
114
|
-
|
|
114
|
+
|
|
115
115
|
function addStatus(message) {
|
|
116
116
|
const statusDiv = document.getElementById('status-messages');
|
|
117
117
|
if (statusDiv) {
|
|
@@ -119,27 +119,27 @@
|
|
|
119
119
|
}
|
|
120
120
|
console.log('[HTML Status]', message);
|
|
121
121
|
}
|
|
122
|
-
|
|
122
|
+
|
|
123
123
|
addStatus('⏳ Loading code-simple.js...');
|
|
124
124
|
</script>
|
|
125
|
-
|
|
125
|
+
|
|
126
126
|
<!-- D3.js for tree visualization -->
|
|
127
|
-
<script src="https://d3js.org/d3.v7.min.js"
|
|
127
|
+
<script src="https://d3js.org/d3.v7.min.js"
|
|
128
128
|
onload="addStatus('✅ D3.js loaded successfully')"
|
|
129
129
|
onerror="addStatus('❌ Failed to load D3.js')"></script>
|
|
130
|
-
|
|
130
|
+
|
|
131
131
|
<!-- Socket.IO for real-time communication -->
|
|
132
|
-
<script src="https://cdn.socket.io/4.7.2/socket.io.min.js"
|
|
132
|
+
<script src="https://cdn.socket.io/4.7.2/socket.io.min.js"
|
|
133
133
|
onload="addStatus('✅ Socket.IO loaded successfully')"
|
|
134
134
|
onerror="addStatus('❌ Failed to load Socket.IO')"></script>
|
|
135
|
-
|
|
136
|
-
<script src="/static/js/components/code-simple.js"
|
|
135
|
+
|
|
136
|
+
<script src="/static/js/components/code-simple.js"
|
|
137
137
|
onload="addStatus('✅ code-simple.js loaded successfully')"
|
|
138
138
|
onerror="addStatus('❌ Failed to load code-simple.js')"></script>
|
|
139
|
-
|
|
139
|
+
|
|
140
140
|
<script>
|
|
141
141
|
addStatus('⏳ Waiting for initialization...');
|
|
142
|
-
|
|
142
|
+
|
|
143
143
|
// Check initialization after a delay
|
|
144
144
|
setTimeout(() => {
|
|
145
145
|
if (window.simpleCodeView) {
|