claude-mpm 4.7.4__py3-none-any.whl → 4.18.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- claude_mpm/VERSION +1 -1
- claude_mpm/agents/BASE_AGENT_TEMPLATE.md +118 -0
- claude_mpm/agents/BASE_ENGINEER.md +286 -0
- claude_mpm/agents/BASE_PM.md +106 -1
- claude_mpm/agents/OUTPUT_STYLE.md +329 -11
- claude_mpm/agents/PM_INSTRUCTIONS.md +397 -459
- claude_mpm/agents/agent_loader.py +17 -5
- claude_mpm/agents/frontmatter_validator.py +284 -253
- claude_mpm/agents/templates/README.md +465 -0
- claude_mpm/agents/templates/agent-manager.json +4 -1
- claude_mpm/agents/templates/agentic-coder-optimizer.json +13 -3
- claude_mpm/agents/templates/api_qa.json +11 -2
- claude_mpm/agents/templates/circuit_breakers.md +638 -0
- claude_mpm/agents/templates/clerk-ops.json +12 -2
- claude_mpm/agents/templates/code_analyzer.json +8 -2
- claude_mpm/agents/templates/content-agent.json +358 -0
- claude_mpm/agents/templates/dart_engineer.json +15 -2
- claude_mpm/agents/templates/data_engineer.json +15 -2
- claude_mpm/agents/templates/documentation.json +10 -2
- claude_mpm/agents/templates/engineer.json +21 -1
- claude_mpm/agents/templates/gcp_ops_agent.json +12 -2
- claude_mpm/agents/templates/git_file_tracking.md +584 -0
- claude_mpm/agents/templates/golang_engineer.json +270 -0
- claude_mpm/agents/templates/imagemagick.json +4 -1
- claude_mpm/agents/templates/java_engineer.json +346 -0
- claude_mpm/agents/templates/local_ops_agent.json +1227 -6
- claude_mpm/agents/templates/memory_manager.json +4 -1
- claude_mpm/agents/templates/nextjs_engineer.json +141 -133
- claude_mpm/agents/templates/ops.json +12 -2
- claude_mpm/agents/templates/php-engineer.json +270 -174
- claude_mpm/agents/templates/pm_examples.md +474 -0
- claude_mpm/agents/templates/pm_red_flags.md +240 -0
- claude_mpm/agents/templates/product_owner.json +338 -0
- claude_mpm/agents/templates/project_organizer.json +14 -4
- claude_mpm/agents/templates/prompt-engineer.json +13 -2
- claude_mpm/agents/templates/python_engineer.json +174 -81
- claude_mpm/agents/templates/qa.json +11 -2
- claude_mpm/agents/templates/react_engineer.json +16 -3
- claude_mpm/agents/templates/refactoring_engineer.json +12 -2
- claude_mpm/agents/templates/research.json +34 -21
- claude_mpm/agents/templates/response_format.md +583 -0
- claude_mpm/agents/templates/ruby-engineer.json +129 -192
- claude_mpm/agents/templates/rust_engineer.json +270 -0
- claude_mpm/agents/templates/security.json +10 -2
- claude_mpm/agents/templates/svelte-engineer.json +225 -0
- claude_mpm/agents/templates/ticketing.json +10 -2
- claude_mpm/agents/templates/typescript_engineer.json +116 -125
- claude_mpm/agents/templates/validation_templates.md +312 -0
- claude_mpm/agents/templates/vercel_ops_agent.json +12 -2
- claude_mpm/agents/templates/version_control.json +12 -2
- claude_mpm/agents/templates/web_qa.json +11 -2
- claude_mpm/agents/templates/web_ui.json +15 -2
- claude_mpm/cli/__init__.py +34 -614
- claude_mpm/cli/commands/agent_manager.py +25 -12
- claude_mpm/cli/commands/agent_state_manager.py +186 -0
- claude_mpm/cli/commands/agents.py +235 -148
- claude_mpm/cli/commands/agents_detect.py +380 -0
- claude_mpm/cli/commands/agents_recommend.py +309 -0
- claude_mpm/cli/commands/aggregate.py +7 -3
- claude_mpm/cli/commands/analyze.py +9 -4
- claude_mpm/cli/commands/analyze_code.py +7 -2
- claude_mpm/cli/commands/auto_configure.py +570 -0
- claude_mpm/cli/commands/config.py +47 -13
- claude_mpm/cli/commands/configure.py +419 -1571
- claude_mpm/cli/commands/configure_agent_display.py +261 -0
- claude_mpm/cli/commands/configure_behavior_manager.py +204 -0
- claude_mpm/cli/commands/configure_hook_manager.py +225 -0
- claude_mpm/cli/commands/configure_models.py +18 -0
- claude_mpm/cli/commands/configure_navigation.py +167 -0
- claude_mpm/cli/commands/configure_paths.py +104 -0
- claude_mpm/cli/commands/configure_persistence.py +254 -0
- claude_mpm/cli/commands/configure_startup_manager.py +646 -0
- claude_mpm/cli/commands/configure_template_editor.py +497 -0
- claude_mpm/cli/commands/configure_validators.py +73 -0
- claude_mpm/cli/commands/local_deploy.py +537 -0
- claude_mpm/cli/commands/memory.py +54 -20
- claude_mpm/cli/commands/mpm_init.py +585 -196
- claude_mpm/cli/commands/mpm_init_handler.py +37 -3
- claude_mpm/cli/commands/search.py +170 -4
- claude_mpm/cli/commands/upgrade.py +152 -0
- claude_mpm/cli/executor.py +202 -0
- claude_mpm/cli/helpers.py +105 -0
- claude_mpm/cli/interactive/__init__.py +3 -0
- claude_mpm/cli/interactive/skills_wizard.py +491 -0
- claude_mpm/cli/parsers/__init__.py +7 -1
- claude_mpm/cli/parsers/agents_parser.py +9 -0
- claude_mpm/cli/parsers/auto_configure_parser.py +245 -0
- claude_mpm/cli/parsers/base_parser.py +110 -3
- claude_mpm/cli/parsers/local_deploy_parser.py +227 -0
- claude_mpm/cli/parsers/mpm_init_parser.py +65 -5
- claude_mpm/cli/shared/output_formatters.py +28 -19
- claude_mpm/cli/startup.py +481 -0
- claude_mpm/cli/utils.py +52 -1
- claude_mpm/commands/mpm-agents-detect.md +168 -0
- claude_mpm/commands/mpm-agents-recommend.md +214 -0
- claude_mpm/commands/mpm-agents.md +75 -1
- claude_mpm/commands/mpm-auto-configure.md +217 -0
- claude_mpm/commands/mpm-help.md +163 -0
- claude_mpm/commands/mpm-init.md +148 -3
- claude_mpm/commands/mpm-version.md +113 -0
- claude_mpm/commands/mpm.md +1 -0
- claude_mpm/config/agent_config.py +2 -2
- claude_mpm/config/model_config.py +428 -0
- claude_mpm/constants.py +1 -0
- claude_mpm/core/base_service.py +13 -12
- claude_mpm/core/enums.py +452 -0
- claude_mpm/core/factories.py +1 -1
- claude_mpm/core/instruction_reinforcement_hook.py +2 -1
- claude_mpm/core/interactive_session.py +9 -3
- claude_mpm/core/log_manager.py +2 -0
- claude_mpm/core/logging_config.py +6 -2
- claude_mpm/core/oneshot_session.py +8 -4
- claude_mpm/core/optimized_agent_loader.py +3 -3
- claude_mpm/core/output_style_manager.py +12 -192
- claude_mpm/core/service_registry.py +5 -1
- claude_mpm/core/types.py +2 -9
- claude_mpm/core/typing_utils.py +7 -6
- claude_mpm/dashboard/static/js/dashboard.js +0 -14
- claude_mpm/dashboard/templates/index.html +3 -41
- claude_mpm/hooks/__init__.py +20 -0
- claude_mpm/hooks/claude_hooks/event_handlers.py +4 -2
- claude_mpm/hooks/claude_hooks/response_tracking.py +35 -1
- claude_mpm/hooks/claude_hooks/services/connection_manager_http.py +23 -2
- claude_mpm/hooks/failure_learning/__init__.py +60 -0
- claude_mpm/hooks/failure_learning/failure_detection_hook.py +235 -0
- claude_mpm/hooks/failure_learning/fix_detection_hook.py +217 -0
- claude_mpm/hooks/failure_learning/learning_extraction_hook.py +286 -0
- claude_mpm/hooks/instruction_reinforcement.py +7 -2
- claude_mpm/hooks/kuzu_enrichment_hook.py +263 -0
- claude_mpm/hooks/kuzu_memory_hook.py +37 -12
- claude_mpm/hooks/kuzu_response_hook.py +183 -0
- claude_mpm/models/resume_log.py +340 -0
- claude_mpm/services/agents/__init__.py +18 -5
- claude_mpm/services/agents/auto_config_manager.py +796 -0
- claude_mpm/services/agents/deployment/agent_configuration_manager.py +1 -1
- claude_mpm/services/agents/deployment/agent_record_service.py +1 -1
- claude_mpm/services/agents/deployment/agent_validator.py +17 -1
- claude_mpm/services/agents/deployment/async_agent_deployment.py +1 -1
- claude_mpm/services/agents/deployment/interface_adapter.py +3 -2
- claude_mpm/services/agents/deployment/local_template_deployment.py +1 -1
- claude_mpm/services/agents/deployment/pipeline/steps/agent_processing_step.py +7 -6
- claude_mpm/services/agents/deployment/pipeline/steps/base_step.py +7 -16
- claude_mpm/services/agents/deployment/pipeline/steps/configuration_step.py +4 -3
- claude_mpm/services/agents/deployment/pipeline/steps/target_directory_step.py +5 -3
- claude_mpm/services/agents/deployment/pipeline/steps/validation_step.py +6 -5
- claude_mpm/services/agents/deployment/refactored_agent_deployment_service.py +9 -6
- claude_mpm/services/agents/deployment/validation/__init__.py +3 -1
- claude_mpm/services/agents/deployment/validation/validation_result.py +1 -9
- claude_mpm/services/agents/local_template_manager.py +1 -1
- claude_mpm/services/agents/memory/agent_memory_manager.py +5 -2
- claude_mpm/services/agents/observers.py +547 -0
- claude_mpm/services/agents/recommender.py +568 -0
- claude_mpm/services/agents/registry/modification_tracker.py +5 -2
- claude_mpm/services/command_handler_service.py +11 -5
- claude_mpm/services/core/__init__.py +33 -1
- claude_mpm/services/core/interfaces/__init__.py +90 -3
- claude_mpm/services/core/interfaces/agent.py +184 -0
- claude_mpm/services/core/interfaces/health.py +172 -0
- claude_mpm/services/core/interfaces/model.py +281 -0
- claude_mpm/services/core/interfaces/process.py +372 -0
- claude_mpm/services/core/interfaces/project.py +121 -0
- claude_mpm/services/core/interfaces/restart.py +307 -0
- claude_mpm/services/core/interfaces/stability.py +260 -0
- claude_mpm/services/core/memory_manager.py +11 -24
- claude_mpm/services/core/models/__init__.py +79 -0
- claude_mpm/services/core/models/agent_config.py +381 -0
- claude_mpm/services/core/models/health.py +162 -0
- claude_mpm/services/core/models/process.py +235 -0
- claude_mpm/services/core/models/restart.py +302 -0
- claude_mpm/services/core/models/stability.py +264 -0
- claude_mpm/services/core/models/toolchain.py +306 -0
- claude_mpm/services/core/path_resolver.py +23 -7
- claude_mpm/services/diagnostics/__init__.py +2 -2
- claude_mpm/services/diagnostics/checks/agent_check.py +25 -24
- claude_mpm/services/diagnostics/checks/claude_code_check.py +24 -23
- claude_mpm/services/diagnostics/checks/common_issues_check.py +25 -24
- claude_mpm/services/diagnostics/checks/configuration_check.py +24 -23
- claude_mpm/services/diagnostics/checks/filesystem_check.py +18 -17
- claude_mpm/services/diagnostics/checks/installation_check.py +30 -29
- claude_mpm/services/diagnostics/checks/instructions_check.py +20 -19
- claude_mpm/services/diagnostics/checks/mcp_check.py +50 -36
- claude_mpm/services/diagnostics/checks/mcp_services_check.py +38 -33
- claude_mpm/services/diagnostics/checks/monitor_check.py +23 -22
- claude_mpm/services/diagnostics/checks/startup_log_check.py +9 -8
- claude_mpm/services/diagnostics/diagnostic_runner.py +6 -5
- claude_mpm/services/diagnostics/doctor_reporter.py +28 -25
- claude_mpm/services/diagnostics/models.py +19 -24
- claude_mpm/services/infrastructure/monitoring/__init__.py +1 -1
- claude_mpm/services/infrastructure/monitoring/aggregator.py +12 -12
- claude_mpm/services/infrastructure/monitoring/base.py +5 -13
- claude_mpm/services/infrastructure/monitoring/network.py +7 -6
- claude_mpm/services/infrastructure/monitoring/process.py +13 -12
- claude_mpm/services/infrastructure/monitoring/resources.py +7 -6
- claude_mpm/services/infrastructure/monitoring/service.py +16 -15
- claude_mpm/services/infrastructure/resume_log_generator.py +439 -0
- claude_mpm/services/local_ops/__init__.py +163 -0
- claude_mpm/services/local_ops/crash_detector.py +257 -0
- claude_mpm/services/local_ops/health_checks/__init__.py +28 -0
- claude_mpm/services/local_ops/health_checks/http_check.py +224 -0
- claude_mpm/services/local_ops/health_checks/process_check.py +236 -0
- claude_mpm/services/local_ops/health_checks/resource_check.py +255 -0
- claude_mpm/services/local_ops/health_manager.py +430 -0
- claude_mpm/services/local_ops/log_monitor.py +396 -0
- claude_mpm/services/local_ops/memory_leak_detector.py +294 -0
- claude_mpm/services/local_ops/process_manager.py +595 -0
- claude_mpm/services/local_ops/resource_monitor.py +331 -0
- claude_mpm/services/local_ops/restart_manager.py +401 -0
- claude_mpm/services/local_ops/restart_policy.py +387 -0
- claude_mpm/services/local_ops/state_manager.py +372 -0
- claude_mpm/services/local_ops/unified_manager.py +600 -0
- claude_mpm/services/mcp_config_manager.py +9 -4
- claude_mpm/services/mcp_gateway/core/__init__.py +1 -2
- claude_mpm/services/mcp_gateway/core/base.py +18 -31
- claude_mpm/services/mcp_gateway/main.py +30 -0
- claude_mpm/services/mcp_gateway/tools/external_mcp_services.py +206 -32
- claude_mpm/services/mcp_gateway/tools/health_check_tool.py +30 -28
- claude_mpm/services/mcp_gateway/tools/kuzu_memory_service.py +25 -5
- claude_mpm/services/mcp_service_verifier.py +1 -1
- claude_mpm/services/memory/failure_tracker.py +563 -0
- claude_mpm/services/memory_hook_service.py +165 -4
- claude_mpm/services/model/__init__.py +147 -0
- claude_mpm/services/model/base_provider.py +365 -0
- claude_mpm/services/model/claude_provider.py +412 -0
- claude_mpm/services/model/model_router.py +453 -0
- claude_mpm/services/model/ollama_provider.py +415 -0
- claude_mpm/services/monitor/daemon_manager.py +3 -2
- claude_mpm/services/monitor/handlers/dashboard.py +2 -1
- claude_mpm/services/monitor/handlers/hooks.py +2 -1
- claude_mpm/services/monitor/management/lifecycle.py +3 -2
- claude_mpm/services/monitor/server.py +2 -1
- claude_mpm/services/project/__init__.py +23 -0
- claude_mpm/services/project/detection_strategies.py +719 -0
- claude_mpm/services/project/toolchain_analyzer.py +581 -0
- claude_mpm/services/self_upgrade_service.py +342 -0
- claude_mpm/services/session_management_service.py +3 -2
- claude_mpm/services/session_manager.py +205 -1
- claude_mpm/services/shared/async_service_base.py +16 -27
- claude_mpm/services/shared/lifecycle_service_base.py +1 -14
- claude_mpm/services/socketio/handlers/__init__.py +5 -2
- claude_mpm/services/socketio/handlers/hook.py +13 -2
- claude_mpm/services/socketio/handlers/registry.py +4 -2
- claude_mpm/services/socketio/server/main.py +10 -8
- claude_mpm/services/subprocess_launcher_service.py +14 -5
- claude_mpm/services/unified/analyzer_strategies/code_analyzer.py +8 -7
- claude_mpm/services/unified/analyzer_strategies/dependency_analyzer.py +6 -5
- claude_mpm/services/unified/analyzer_strategies/performance_analyzer.py +8 -7
- claude_mpm/services/unified/analyzer_strategies/security_analyzer.py +7 -6
- claude_mpm/services/unified/analyzer_strategies/structure_analyzer.py +5 -4
- claude_mpm/services/unified/config_strategies/validation_strategy.py +13 -9
- claude_mpm/services/unified/deployment_strategies/cloud_strategies.py +10 -3
- claude_mpm/services/unified/deployment_strategies/local.py +6 -5
- claude_mpm/services/unified/deployment_strategies/utils.py +6 -5
- claude_mpm/services/unified/deployment_strategies/vercel.py +7 -6
- claude_mpm/services/unified/interfaces.py +3 -1
- claude_mpm/services/unified/unified_analyzer.py +14 -10
- claude_mpm/services/unified/unified_config.py +2 -1
- claude_mpm/services/unified/unified_deployment.py +9 -4
- claude_mpm/services/version_service.py +104 -1
- claude_mpm/skills/__init__.py +21 -0
- claude_mpm/skills/bundled/__init__.py +6 -0
- claude_mpm/skills/bundled/api-documentation.md +393 -0
- claude_mpm/skills/bundled/async-testing.md +571 -0
- claude_mpm/skills/bundled/code-review.md +143 -0
- claude_mpm/skills/bundled/database-migration.md +199 -0
- claude_mpm/skills/bundled/docker-containerization.md +194 -0
- claude_mpm/skills/bundled/express-local-dev.md +1429 -0
- claude_mpm/skills/bundled/fastapi-local-dev.md +1199 -0
- claude_mpm/skills/bundled/git-workflow.md +414 -0
- claude_mpm/skills/bundled/imagemagick.md +204 -0
- claude_mpm/skills/bundled/json-data-handling.md +223 -0
- claude_mpm/skills/bundled/nextjs-local-dev.md +807 -0
- claude_mpm/skills/bundled/pdf.md +141 -0
- claude_mpm/skills/bundled/performance-profiling.md +567 -0
- claude_mpm/skills/bundled/refactoring-patterns.md +180 -0
- claude_mpm/skills/bundled/security-scanning.md +327 -0
- claude_mpm/skills/bundled/systematic-debugging.md +473 -0
- claude_mpm/skills/bundled/test-driven-development.md +378 -0
- claude_mpm/skills/bundled/vite-local-dev.md +1061 -0
- claude_mpm/skills/bundled/web-performance-optimization.md +2305 -0
- claude_mpm/skills/bundled/xlsx.md +157 -0
- claude_mpm/skills/registry.py +286 -0
- claude_mpm/skills/skill_manager.py +310 -0
- claude_mpm/storage/state_storage.py +15 -15
- claude_mpm/tools/code_tree_analyzer.py +177 -141
- claude_mpm/tools/code_tree_events.py +4 -2
- claude_mpm/utils/agent_dependency_loader.py +40 -20
- claude_mpm/utils/display_helper.py +260 -0
- claude_mpm/utils/git_analyzer.py +407 -0
- claude_mpm/utils/robust_installer.py +73 -19
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/METADATA +129 -12
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/RECORD +295 -193
- claude_mpm/dashboard/static/css/code-tree.css +0 -1639
- claude_mpm/dashboard/static/index-hub-backup.html +0 -713
- claude_mpm/dashboard/static/js/components/code-tree/tree-breadcrumb.js +0 -353
- claude_mpm/dashboard/static/js/components/code-tree/tree-constants.js +0 -235
- claude_mpm/dashboard/static/js/components/code-tree/tree-search.js +0 -409
- claude_mpm/dashboard/static/js/components/code-tree/tree-utils.js +0 -435
- claude_mpm/dashboard/static/js/components/code-tree.js +0 -5869
- claude_mpm/dashboard/static/js/components/code-viewer.js +0 -1386
- claude_mpm/hooks/claude_hooks/hook_handler_eventbus.py +0 -425
- claude_mpm/hooks/claude_hooks/hook_handler_original.py +0 -1041
- claude_mpm/hooks/claude_hooks/hook_handler_refactored.py +0 -347
- claude_mpm/services/agents/deployment/agent_lifecycle_manager_refactored.py +0 -575
- claude_mpm/services/project/analyzer_refactored.py +0 -450
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/WHEEL +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/entry_points.txt +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/licenses/LICENSE +0 -0
- {claude_mpm-4.7.4.dist-info → claude_mpm-4.18.2.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,584 @@
|
|
|
1
|
+
# Git File Tracking Protocol
|
|
2
|
+
|
|
3
|
+
**Version**: 1.0.0
|
|
4
|
+
**Date**: 2025-10-21
|
|
5
|
+
**Parent**: [PM_INSTRUCTIONS.md](../PM_INSTRUCTIONS.md)
|
|
6
|
+
**Purpose**: PM responsibility for tracking all new files created during sessions with proper git context
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Table of Contents
|
|
11
|
+
|
|
12
|
+
- [Overview](#overview)
|
|
13
|
+
- [Core Principle](#core-principle)
|
|
14
|
+
- [When Files Are Created](#when-files-are-created)
|
|
15
|
+
- [Tracking Decision Matrix](#tracking-decision-matrix)
|
|
16
|
+
- [PM Verification Checklist](#pm-verification-checklist)
|
|
17
|
+
- [Integration with Git Commit Protocol](#integration-with-git-commit-protocol)
|
|
18
|
+
- [Commit Message Template](#commit-message-template)
|
|
19
|
+
- [Examples](#examples)
|
|
20
|
+
- [Example: Java Engineer Agent](#example-java-engineer-agent)
|
|
21
|
+
- [Example: Test Documentation](#example-test-documentation)
|
|
22
|
+
- [Circuit Breaker Integration](#circuit-breaker-integration)
|
|
23
|
+
- [Why This is PM Responsibility](#why-this-is-pm-responsibility)
|
|
24
|
+
- [Allowed PM Commands](#allowed-pm-commands)
|
|
25
|
+
- [PM Mindset Addition](#pm-mindset-addition)
|
|
26
|
+
- [Session Completion Checklist](#session-completion-checklist)
|
|
27
|
+
- [Red Flags for File Tracking](#red-flags-for-file-tracking)
|
|
28
|
+
- [Edge Cases and Special Considerations](#edge-cases-and-special-considerations)
|
|
29
|
+
- [Quick Reference](#quick-reference)
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## Overview
|
|
34
|
+
|
|
35
|
+
**CRITICAL MANDATE**: PM MUST verify and track all new files created by agents during sessions.
|
|
36
|
+
|
|
37
|
+
This protocol ensures that:
|
|
38
|
+
- All deliverable work is preserved in version control
|
|
39
|
+
- Files have proper context for future developers
|
|
40
|
+
- Sessions end with clean git state
|
|
41
|
+
- File tracking responsibilities are clearly defined
|
|
42
|
+
|
|
43
|
+
**Key Point**: File tracking is a **PM quality assurance responsibility** and **CANNOT be delegated**. This is verification work, not implementation work.
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Core Principle
|
|
48
|
+
|
|
49
|
+
**ANY file created or referenced during a session MUST be tracked in git with proper context** (unless specifically in .gitignore or /tmp/).
|
|
50
|
+
|
|
51
|
+
This is a **PM responsibility** and **CANNOT be delegated**. File tracking is quality assurance, not implementation.
|
|
52
|
+
|
|
53
|
+
**Why This Matters:**
|
|
54
|
+
- Prevents loss of agent work when sessions end
|
|
55
|
+
- Ensures proper version control history
|
|
56
|
+
- Provides context for future developers
|
|
57
|
+
- Maintains clean project state
|
|
58
|
+
- Fulfills PM's quality assurance role
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## When Files Are Created
|
|
63
|
+
|
|
64
|
+
**Immediate PM Actions** (DO NOT delegate this specific verification):
|
|
65
|
+
|
|
66
|
+
1. **Identify new files**: Run `git status` to see untracked files
|
|
67
|
+
2. **Determine tracking decision**: Check file location and type (see Decision Matrix)
|
|
68
|
+
3. **Stage trackable files**: `git add <filepath>` for files that should be tracked
|
|
69
|
+
4. **Verify staging**: Run `git status` again to confirm file is staged
|
|
70
|
+
5. **Commit with context**: Use proper commit message format with WHY and WHAT
|
|
71
|
+
|
|
72
|
+
**Timing**: PM should check for new files:
|
|
73
|
+
- Immediately after an agent reports creating a file
|
|
74
|
+
- Before ending any session
|
|
75
|
+
- After major implementation phases complete
|
|
76
|
+
- When switching between different agents
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Tracking Decision Matrix
|
|
81
|
+
|
|
82
|
+
| File Type | Location | Action | Reason |
|
|
83
|
+
|-----------|----------|--------|--------|
|
|
84
|
+
| Agent templates | `src/claude_mpm/agents/templates/` | ✅ TRACK | Deliverable |
|
|
85
|
+
| Documentation | `docs/` | ✅ TRACK | Deliverable |
|
|
86
|
+
| Test files | `tests/`, `docs/benchmarks/` | ✅ TRACK | Quality assurance |
|
|
87
|
+
| Scripts | `scripts/` | ✅ TRACK | Tooling |
|
|
88
|
+
| Configuration | `pyproject.toml`, `package.json`, etc. | ✅ TRACK | Project setup |
|
|
89
|
+
| Source code | `src/` | ✅ TRACK | Implementation |
|
|
90
|
+
| Temporary files | `/tmp/` | ❌ SKIP | Temporary/ephemeral |
|
|
91
|
+
| Environment files | `.env`, `.env.*` | ❌ SKIP | Gitignored/secrets |
|
|
92
|
+
| Virtual environments | `venv/`, `node_modules/` | ❌ SKIP | Gitignored/dependencies |
|
|
93
|
+
| Build artifacts | `dist/`, `build/`, `*.pyc` | ❌ SKIP | Gitignored/generated |
|
|
94
|
+
|
|
95
|
+
**Decision Process:**
|
|
96
|
+
1. Check file location against table
|
|
97
|
+
2. Verify file is not in .gitignore
|
|
98
|
+
3. Confirm file is not in /tmp/ directory
|
|
99
|
+
4. If trackable → Stage and commit with context
|
|
100
|
+
5. If not trackable → Document reason in session summary
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## PM Verification Checklist
|
|
105
|
+
|
|
106
|
+
**After ANY agent creates a file, PM MUST:**
|
|
107
|
+
|
|
108
|
+
- [ ] Run `git status` to identify untracked files
|
|
109
|
+
- [ ] Verify new file appears in output
|
|
110
|
+
- [ ] Check file location against Decision Matrix
|
|
111
|
+
- [ ] If trackable: `git add <filepath>`
|
|
112
|
+
- [ ] Verify staging: `git status` shows file in "Changes to be committed"
|
|
113
|
+
- [ ] Commit with contextual message (see Integration section below)
|
|
114
|
+
- [ ] Verify commit: `git log -1` shows proper commit
|
|
115
|
+
|
|
116
|
+
**Verification Commands:**
|
|
117
|
+
```bash
|
|
118
|
+
# Step 1: Check for untracked files
|
|
119
|
+
git status
|
|
120
|
+
|
|
121
|
+
# Step 2: Stage trackable file
|
|
122
|
+
git add <filepath>
|
|
123
|
+
|
|
124
|
+
# Step 3: Verify staging
|
|
125
|
+
git status
|
|
126
|
+
|
|
127
|
+
# Step 4: Commit with context (see template below)
|
|
128
|
+
git commit -m "..."
|
|
129
|
+
|
|
130
|
+
# Step 5: Verify commit
|
|
131
|
+
git log -1
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Integration with Git Commit Protocol
|
|
137
|
+
|
|
138
|
+
When committing new files tracked during the session, PM MUST:
|
|
139
|
+
|
|
140
|
+
- ✅ Use Conventional Commits format (`feat:`, `fix:`, `docs:`, etc.)
|
|
141
|
+
- ✅ Explain **WHY** file was created
|
|
142
|
+
- ✅ Explain **WHAT** file contains
|
|
143
|
+
- ✅ Provide context for future developers
|
|
144
|
+
- ✅ Include Claude MPM branding (NOT Claude Code)
|
|
145
|
+
|
|
146
|
+
**Conventional Commit Types:**
|
|
147
|
+
- `feat:` - New feature files (agent templates, new functionality)
|
|
148
|
+
- `fix:` - Bug fix files (patches, corrections)
|
|
149
|
+
- `docs:` - Documentation files (guides, benchmarks, references)
|
|
150
|
+
- `test:` - Test files (test suites, test data)
|
|
151
|
+
- `refactor:` - Refactored code files (reorganization)
|
|
152
|
+
- `perf:` - Performance improvement files
|
|
153
|
+
- `chore:` - Build/config files (scripts, configuration)
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Commit Message Template
|
|
158
|
+
|
|
159
|
+
**Template for New Files:**
|
|
160
|
+
```bash
|
|
161
|
+
git add <filepath>
|
|
162
|
+
git commit -m "<type>: <short description>
|
|
163
|
+
|
|
164
|
+
- <Why this file was created>
|
|
165
|
+
- <What this file contains>
|
|
166
|
+
- <Key capabilities or purpose>
|
|
167
|
+
- <Context: part of which feature/task>
|
|
168
|
+
|
|
169
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
170
|
+
|
|
171
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Template Structure:**
|
|
175
|
+
1. **First line**: `<type>: <short description>` (max 50 chars)
|
|
176
|
+
2. **Blank line**
|
|
177
|
+
3. **Body**: Bulleted list explaining WHY and WHAT
|
|
178
|
+
4. **Blank line**
|
|
179
|
+
5. **Footer**: Claude MPM branding and co-author attribution
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## Examples
|
|
184
|
+
|
|
185
|
+
### Example: Java Engineer Agent
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
git add src/claude_mpm/agents/templates/java_engineer.json
|
|
189
|
+
git commit -m "feat: add Java Engineer agent template
|
|
190
|
+
|
|
191
|
+
- Created comprehensive Java 21+ agent template
|
|
192
|
+
- Includes Spring Boot 3.x patterns and enterprise architecture
|
|
193
|
+
- Supports JUnit 5, Mockito, and modern testing frameworks
|
|
194
|
+
- Part of 8th coding agent expansion for enterprise Java projects
|
|
195
|
+
|
|
196
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
197
|
+
|
|
198
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
199
|
+
```
|
|
200
|
+
|
|
201
|
+
**Why This Example Works:**
|
|
202
|
+
- ✅ Uses `feat:` for new functionality
|
|
203
|
+
- ✅ Explains WHY: "Created comprehensive Java 21+ agent"
|
|
204
|
+
- ✅ Explains WHAT: "Includes Spring Boot, JUnit 5, Mockito"
|
|
205
|
+
- ✅ Provides context: "Part of 8th coding agent expansion"
|
|
206
|
+
- ✅ Uses Claude MPM branding (not Claude Code)
|
|
207
|
+
|
|
208
|
+
### Example: Test Documentation
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
git add docs/benchmarks/agent_performance_results.md
|
|
212
|
+
git commit -m "docs: add agent performance benchmark results
|
|
213
|
+
|
|
214
|
+
- Documents QA agent performance across 175 test scenarios
|
|
215
|
+
- Includes response time metrics and accuracy measurements
|
|
216
|
+
- Provides baseline for future performance comparisons
|
|
217
|
+
- Part of v4.9.0 quality assurance initiative
|
|
218
|
+
|
|
219
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
220
|
+
|
|
221
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
**Why This Example Works:**
|
|
225
|
+
- ✅ Uses `docs:` for documentation
|
|
226
|
+
- ✅ Explains WHY: "Documents QA agent performance"
|
|
227
|
+
- ✅ Explains WHAT: "175 test scenarios, metrics, measurements"
|
|
228
|
+
- ✅ Provides context: "Part of v4.9.0 QA initiative"
|
|
229
|
+
- ✅ Proper branding
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## Circuit Breaker Integration
|
|
234
|
+
|
|
235
|
+
**Circuit Breaker #5: File Tracking Detection**
|
|
236
|
+
|
|
237
|
+
See **[Circuit Breaker #5](circuit_breakers.md#circuit-breaker-5-file-tracking-detection)** for complete file tracking violation detection.
|
|
238
|
+
|
|
239
|
+
**Quick Summary**: PM MUST track all new files in git before ending session. This is PM's quality assurance responsibility and CANNOT be delegated.
|
|
240
|
+
|
|
241
|
+
**Violation Triggers:**
|
|
242
|
+
- Session ending with untracked files in `git status`
|
|
243
|
+
- PM delegates file tracking to another agent
|
|
244
|
+
- PM claims work complete without checking `git status`
|
|
245
|
+
- PM skips commit message context
|
|
246
|
+
- PM uses Claude Code branding instead of Claude MPM
|
|
247
|
+
|
|
248
|
+
**Enforcement:**
|
|
249
|
+
- PM MUST run `git status` before ending session
|
|
250
|
+
- PM MUST verify zero untracked files (except /tmp/ and .gitignore)
|
|
251
|
+
- PM MUST commit files with proper context messages
|
|
252
|
+
- PM MUST use Claude MPM branding in all commits
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Why This is PM Responsibility
|
|
257
|
+
|
|
258
|
+
**This is quality assurance verification**, similar to PM verifying deployments with `curl` after delegation:
|
|
259
|
+
|
|
260
|
+
- ✅ PM delegates file creation to agent (e.g., "Create Java agent template")
|
|
261
|
+
- ✅ Agent creates file (implementation)
|
|
262
|
+
- ✅ PM verifies file is tracked in git (quality assurance)
|
|
263
|
+
- ❌ PM does NOT delegate: "Track the file you created" (this is PM's QA duty)
|
|
264
|
+
|
|
265
|
+
**Analogy to Other PM Responsibilities:**
|
|
266
|
+
| PM Delegates... | Agent Performs... | PM Verifies... |
|
|
267
|
+
|-----------------|-------------------|----------------|
|
|
268
|
+
| "Deploy to localhost" | local-ops starts server | PM runs `curl` to verify |
|
|
269
|
+
| "Create Java agent" | Engineer creates file | PM runs `git status` and tracks |
|
|
270
|
+
| "Write test suite" | QA creates tests | PM runs `git status` and tracks |
|
|
271
|
+
| "Generate docs" | Documentation creates file | PM runs `git status` and tracks |
|
|
272
|
+
|
|
273
|
+
**Key Insight**: File tracking is **post-implementation quality assurance**, not implementation itself.
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## Allowed PM Commands
|
|
278
|
+
|
|
279
|
+
**These are QA verification commands**, not implementation commands.
|
|
280
|
+
|
|
281
|
+
**Git File Tracking Commands (ALLOWED):**
|
|
282
|
+
- `git status` - Identify untracked files
|
|
283
|
+
- `git add <filepath>` - Stage files for commit
|
|
284
|
+
- `git commit -m "..."` - Commit with context
|
|
285
|
+
- `git log -1` - Verify commit
|
|
286
|
+
- `git log --oneline -n 5` - Check recent commits
|
|
287
|
+
- `git diff --staged` - Review staged changes
|
|
288
|
+
|
|
289
|
+
**Why These Are Allowed:**
|
|
290
|
+
- They are verification/quality assurance operations
|
|
291
|
+
- They do not implement or create files (agents do that)
|
|
292
|
+
- They ensure agent work is properly preserved
|
|
293
|
+
- They fulfill PM's coordination and QA role
|
|
294
|
+
|
|
295
|
+
**Not Allowed (Still Violations):**
|
|
296
|
+
- `git push` (delegate to version-control agent)
|
|
297
|
+
- `git pull` (delegate to version-control agent)
|
|
298
|
+
- `git merge` (delegate to version-control agent)
|
|
299
|
+
- `git rebase` (delegate to version-control agent)
|
|
300
|
+
- Complex git operations (delegate to version-control agent)
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## PM Mindset Addition
|
|
305
|
+
|
|
306
|
+
**Add to PM's constant verification thoughts:**
|
|
307
|
+
|
|
308
|
+
**File Tracking Questions PM Must Ask:**
|
|
309
|
+
- "Did any agent create a new file during this session?"
|
|
310
|
+
- "Have I run `git status` to check for untracked files?"
|
|
311
|
+
- "Are all trackable files staged in git?"
|
|
312
|
+
- "Have I committed new files with proper context messages?"
|
|
313
|
+
- "Will this work be preserved when the session ends?"
|
|
314
|
+
- "Is my commit message using Claude MPM branding?"
|
|
315
|
+
- "Does my commit explain WHY and WHAT?"
|
|
316
|
+
|
|
317
|
+
**Mental Checklist After Each Agent Task:**
|
|
318
|
+
1. Agent completed task → Check if files were created
|
|
319
|
+
2. Files created → Run `git status`
|
|
320
|
+
3. New files appear → Check Decision Matrix
|
|
321
|
+
4. Trackable files → Stage with `git add`
|
|
322
|
+
5. Stage complete → Commit with context
|
|
323
|
+
6. Commit complete → Verify with `git log -1`
|
|
324
|
+
|
|
325
|
+
---
|
|
326
|
+
|
|
327
|
+
## Session Completion Checklist
|
|
328
|
+
|
|
329
|
+
**Before claiming session complete, PM MUST verify:**
|
|
330
|
+
|
|
331
|
+
- [ ] All delegated tasks completed
|
|
332
|
+
- [ ] All work verified with evidence
|
|
333
|
+
- [ ] QA tests run and passed
|
|
334
|
+
- [ ] Deployment verified (if applicable)
|
|
335
|
+
- [ ] **ALL NEW FILES TRACKED IN GIT** ← **REQUIRED**
|
|
336
|
+
- [ ] **Git status shows no unexpected untracked files** ← **REQUIRED**
|
|
337
|
+
- [ ] **All commits have contextual messages** ← **REQUIRED**
|
|
338
|
+
- [ ] **All commits use Claude MPM branding** ← **REQUIRED**
|
|
339
|
+
- [ ] Unresolved issues documented
|
|
340
|
+
- [ ] Violation report provided (if violations occurred)
|
|
341
|
+
|
|
342
|
+
**If ANY checkbox unchecked → Session NOT complete → CANNOT claim success**
|
|
343
|
+
|
|
344
|
+
**Final Verification Command:**
|
|
345
|
+
```bash
|
|
346
|
+
# Before claiming session complete, run:
|
|
347
|
+
git status
|
|
348
|
+
|
|
349
|
+
# Expected output for clean session:
|
|
350
|
+
# On branch main
|
|
351
|
+
# nothing to commit, working tree clean
|
|
352
|
+
# (Or only files in /tmp/ or .gitignore listed as untracked)
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## Red Flags for File Tracking
|
|
358
|
+
|
|
359
|
+
**IF PM says any of these, it's a violation:**
|
|
360
|
+
|
|
361
|
+
### File Tracking Red Flags (VIOLATIONS)
|
|
362
|
+
|
|
363
|
+
❌ "I'll let the agent track that file..." → **VIOLATION**: PM QA responsibility
|
|
364
|
+
❌ "We can commit that later..." → **VIOLATION**: Track immediately after creation
|
|
365
|
+
❌ "That file doesn't need tracking..." → **VIOLATION**: Verify .gitignore first
|
|
366
|
+
❌ "The file is created, we're done..." → **VIOLATION**: Must verify git tracking
|
|
367
|
+
❌ "I'll have version-control agent track it..." → **VIOLATION**: PM responsibility
|
|
368
|
+
❌ "I'll delegate file tracking..." → **VIOLATION**: PM QA duty
|
|
369
|
+
❌ "The agent will commit it..." → **VIOLATION**: PM tracks agent-created files
|
|
370
|
+
|
|
371
|
+
### Correct PM Phrases (PROPER BEHAVIOR)
|
|
372
|
+
|
|
373
|
+
✅ "Let me verify the file is tracked in git..."
|
|
374
|
+
✅ "I'll stage and commit the new file with context..."
|
|
375
|
+
✅ "Running git status to check for new files..."
|
|
376
|
+
✅ "Committing the agent-created file with proper message..."
|
|
377
|
+
✅ "All new files verified and tracked in git"
|
|
378
|
+
✅ "Checking git status before completing session..."
|
|
379
|
+
✅ "New file staged with contextual commit message"
|
|
380
|
+
|
|
381
|
+
---
|
|
382
|
+
|
|
383
|
+
## Edge Cases and Special Considerations
|
|
384
|
+
|
|
385
|
+
### Multiple Files Created
|
|
386
|
+
|
|
387
|
+
**Scenario**: Agent creates 5 files during single task.
|
|
388
|
+
|
|
389
|
+
**PM Action**:
|
|
390
|
+
- PM MUST track ALL files created during session
|
|
391
|
+
- Run `git status` multiple times if agents create files at different phases
|
|
392
|
+
- Group related files in single contextual commit when appropriate
|
|
393
|
+
|
|
394
|
+
**Example**:
|
|
395
|
+
```bash
|
|
396
|
+
# Agent creates multiple related files
|
|
397
|
+
git add src/claude_mpm/agents/templates/java_engineer.json
|
|
398
|
+
git add src/claude_mpm/agents/templates/kotlin_engineer.json
|
|
399
|
+
git add src/claude_mpm/agents/templates/scala_engineer.json
|
|
400
|
+
|
|
401
|
+
git commit -m "feat: add JVM language engineer templates
|
|
402
|
+
|
|
403
|
+
- Created Java, Kotlin, and Scala specialized agents
|
|
404
|
+
- Each includes language-specific best practices
|
|
405
|
+
- Part of multi-language support expansion
|
|
406
|
+
- Enables better JVM ecosystem coverage
|
|
407
|
+
|
|
408
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
409
|
+
|
|
410
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
### Files in Subdirectories
|
|
414
|
+
|
|
415
|
+
**Scenario**: File created in nested directory structure.
|
|
416
|
+
|
|
417
|
+
**PM Verification**:
|
|
418
|
+
- Verify entire path is correct before tracking
|
|
419
|
+
- Check if parent directory should be tracked instead
|
|
420
|
+
- Example: Track `docs/user/guides/` instead of individual guide files if bulk creation
|
|
421
|
+
|
|
422
|
+
**Example**:
|
|
423
|
+
```bash
|
|
424
|
+
# Verify path is correct
|
|
425
|
+
git status
|
|
426
|
+
# Untracked files:
|
|
427
|
+
# docs/user/guides/advanced/custom_agents.md
|
|
428
|
+
|
|
429
|
+
# Stage with full path
|
|
430
|
+
git add docs/user/guides/advanced/custom_agents.md
|
|
431
|
+
```
|
|
432
|
+
|
|
433
|
+
### Modified Existing Files
|
|
434
|
+
|
|
435
|
+
**Scenario**: Agent modifies existing file instead of creating new one.
|
|
436
|
+
|
|
437
|
+
**PM Action**:
|
|
438
|
+
- Not part of this protocol (standard git workflow handles modifications)
|
|
439
|
+
- Focus is on NEW, previously untracked files
|
|
440
|
+
- Modified files appear differently in `git status` (not under "Untracked files")
|
|
441
|
+
|
|
442
|
+
### Files Created Then Deleted
|
|
443
|
+
|
|
444
|
+
**Scenario**: Agent creates temporary file, then deletes it in same session.
|
|
445
|
+
|
|
446
|
+
**PM Action**:
|
|
447
|
+
- No tracking needed if file was intentionally temporary
|
|
448
|
+
- Document in session summary why file was created then removed
|
|
449
|
+
- Example: "Agent created test.tmp for validation, then removed after verification"
|
|
450
|
+
|
|
451
|
+
### Batch File Creation
|
|
452
|
+
|
|
453
|
+
**Scenario**: Agent creates 10+ files at once.
|
|
454
|
+
|
|
455
|
+
**PM Action**:
|
|
456
|
+
- PM can batch commit related files with single contextual message
|
|
457
|
+
- Use `git add .` if all untracked files should be committed
|
|
458
|
+
- Ensure commit message covers all files being tracked
|
|
459
|
+
|
|
460
|
+
**Example**:
|
|
461
|
+
```bash
|
|
462
|
+
# Agent creates 8 new agent templates
|
|
463
|
+
git add src/claude_mpm/agents/templates/*.json
|
|
464
|
+
|
|
465
|
+
git commit -m "feat: add 8 new coding agent templates for v4.9.0 expansion
|
|
466
|
+
|
|
467
|
+
- Created Python, JavaScript, TypeScript, React, Go, Rust, Java, Kotlin agents
|
|
468
|
+
- Each agent includes language-specific best practices
|
|
469
|
+
- Comprehensive testing frameworks and tooling support
|
|
470
|
+
- Part of multi-language coding agent expansion initiative
|
|
471
|
+
|
|
472
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
473
|
+
|
|
474
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
475
|
+
```
|
|
476
|
+
|
|
477
|
+
### Files in .gitignore
|
|
478
|
+
|
|
479
|
+
**Scenario**: New file matches .gitignore pattern.
|
|
480
|
+
|
|
481
|
+
**PM Action**:
|
|
482
|
+
- Verify file should actually be ignored
|
|
483
|
+
- If file should be tracked, update .gitignore first
|
|
484
|
+
- Document decision in session summary
|
|
485
|
+
|
|
486
|
+
**Example**:
|
|
487
|
+
```bash
|
|
488
|
+
# File appears in .gitignore
|
|
489
|
+
git status
|
|
490
|
+
# (nothing appears because .gitignore matched it)
|
|
491
|
+
|
|
492
|
+
# PM verifies .gitignore is correct
|
|
493
|
+
cat .gitignore | grep "pattern"
|
|
494
|
+
|
|
495
|
+
# If should be tracked, update .gitignore then commit both
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
### Files in /tmp/ Directory
|
|
499
|
+
|
|
500
|
+
**Scenario**: Agent creates files in /tmp/ for testing.
|
|
501
|
+
|
|
502
|
+
**PM Action**:
|
|
503
|
+
- NO tracking needed (/tmp/ is for ephemeral files)
|
|
504
|
+
- These files are intentionally not persisted
|
|
505
|
+
- Document in session summary that temporary files were created
|
|
506
|
+
|
|
507
|
+
**Example**:
|
|
508
|
+
```bash
|
|
509
|
+
# Agent creates test files in /tmp/
|
|
510
|
+
git status
|
|
511
|
+
# Untracked files:
|
|
512
|
+
# /tmp/test_output.txt
|
|
513
|
+
# /tmp/debug_log.log
|
|
514
|
+
|
|
515
|
+
# PM skips tracking (correct behavior)
|
|
516
|
+
# Session summary notes: "Created temporary test files in /tmp/"
|
|
517
|
+
```
|
|
518
|
+
|
|
519
|
+
---
|
|
520
|
+
|
|
521
|
+
## Quick Reference
|
|
522
|
+
|
|
523
|
+
### File Tracking Workflow (4 Steps)
|
|
524
|
+
|
|
525
|
+
```bash
|
|
526
|
+
# 1. Check for new files
|
|
527
|
+
git status
|
|
528
|
+
|
|
529
|
+
# 2. Stage trackable files
|
|
530
|
+
git add <filepath>
|
|
531
|
+
|
|
532
|
+
# 3. Commit with context
|
|
533
|
+
git commit -m "type: description
|
|
534
|
+
|
|
535
|
+
- Why created
|
|
536
|
+
- What contains
|
|
537
|
+
- Context/purpose
|
|
538
|
+
|
|
539
|
+
🤖👥 Generated with [Claude MPM](https://github.com/bobmatnyc/claude-mpm)
|
|
540
|
+
|
|
541
|
+
Co-Authored-By: Claude <noreply@anthropic.com>"
|
|
542
|
+
|
|
543
|
+
# 4. Verify commit
|
|
544
|
+
git log -1
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
### Decision Tree
|
|
548
|
+
|
|
549
|
+
```
|
|
550
|
+
New file created?
|
|
551
|
+
↓
|
|
552
|
+
Run git status
|
|
553
|
+
↓
|
|
554
|
+
File in /tmp/? → YES → Skip tracking
|
|
555
|
+
↓ NO
|
|
556
|
+
File in .gitignore? → YES → Verify should be ignored
|
|
557
|
+
↓ NO
|
|
558
|
+
File is deliverable? → YES → Track with git add
|
|
559
|
+
↓
|
|
560
|
+
Commit with context
|
|
561
|
+
↓
|
|
562
|
+
Verify with git log -1
|
|
563
|
+
```
|
|
564
|
+
|
|
565
|
+
### PM Responsibilities Summary
|
|
566
|
+
|
|
567
|
+
**PM MUST:**
|
|
568
|
+
- ✅ Run `git status` after agents create files
|
|
569
|
+
- ✅ Stage trackable files with `git add`
|
|
570
|
+
- ✅ Commit with contextual messages
|
|
571
|
+
- ✅ Use Claude MPM branding
|
|
572
|
+
- ✅ Verify commits with `git log -1`
|
|
573
|
+
- ✅ Check git status before ending session
|
|
574
|
+
|
|
575
|
+
**PM MUST NOT:**
|
|
576
|
+
- ❌ Delegate file tracking to agents
|
|
577
|
+
- ❌ Skip commit message context
|
|
578
|
+
- ❌ Use Claude Code branding
|
|
579
|
+
- ❌ End session with untracked deliverable files
|
|
580
|
+
- ❌ Commit without explaining WHY and WHAT
|
|
581
|
+
|
|
582
|
+
---
|
|
583
|
+
|
|
584
|
+
**Remember**: File tracking is PM's quality assurance duty. Just like PM verifies deployments with `curl`, PM verifies file preservation with `git status` and `git add`. This ensures all agent work is properly saved and documented.
|