# PM Agent Mode Integration Guide **Last Updated**: 2025-10-14 **Target Version**: 4.2.0 **Status**: Implementation Guide --- ## ๐Ÿ“‹ Overview This guide provides step-by-step procedures for integrating PM Agent mode as SuperClaude's always-active meta-layer with session lifecycle management, PDCA self-evaluation, and systematic knowledge management. --- ## ๐ŸŽฏ Integration Goals 1. **Session Lifecycle**: Auto-activation at session start with context restoration 2. **PDCA Engine**: Automated Plan-Do-Check-Act cycle execution 3. **Memory Operations**: Serena MCP integration for session persistence 4. **Documentation Strategy**: Systematic knowledge evolution --- ## ๐Ÿ“ Architecture Integration ### PM Agent Position ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ PM Agent Mode (Meta-Layer) โ”‚ โ”‚ โ€ข Always Active โ”‚ โ”‚ โ€ข Session Management โ”‚ โ”‚ โ€ข PDCA Self-Evaluation โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ†“ [Specialist Agents Layer] โ†“ [Commands & Modes Layer] โ†“ [MCP Tool Layer] ``` See: [ARCHITECTURE.md](./ARCHITECTURE.md) for full system architecture --- ## ๐Ÿ”ง Phase 2: Core Implementation ### File Structure ``` superclaude/ โ”œโ”€โ”€ Commands/ โ”‚ โ””โ”€โ”€ pm.md # โœ… Already updated โ”œโ”€โ”€ Agents/ โ”‚ โ””โ”€โ”€ pm-agent.md # โœ… Already updated โ””โ”€โ”€ Core/ โ”œโ”€โ”€ __init__.py # Module initialization โ”œโ”€โ”€ session_lifecycle.py # ๐Ÿ†• Session management โ”œโ”€โ”€ pdca_engine.py # ๐Ÿ†• PDCA automation โ””โ”€โ”€ memory_ops.py # ๐Ÿ†• Memory operations ``` ### Implementation Order 1. `memory_ops.py` - Serena MCP wrapper (foundation) 2. `session_lifecycle.py` - Session management (depends on memory_ops) 3. `pdca_engine.py` - PDCA automation (depends on memory_ops) --- ## 1๏ธโƒฃ memory_ops.py Implementation ### Purpose Wrapper for Serena MCP memory operations with error handling and fallback. ### Key Functions ```python # superclaude/Core/memory_ops.py class MemoryOperations: """Serena MCP memory operations wrapper""" def list_memories() -> List[str]: """List all available memories""" def read_memory(key: str) -> Optional[Dict]: """Read memory by key""" def write_memory(key: str, value: Dict) -> bool: """Write memory with key""" def delete_memory(key: str) -> bool: """Delete memory by key""" ``` ### Integration Points - Connect to Serena MCP server - Handle connection errors gracefully - Provide fallback for offline mode - Validate memory structure ### Testing ```bash pytest tests/test_memory_ops.py -v ``` --- ## 2๏ธโƒฃ session_lifecycle.py Implementation ### Purpose Auto-activation at session start, context restoration, user report generation. ### Key Functions ```python # superclaude/Core/session_lifecycle.py class SessionLifecycle: """Session lifecycle management""" def on_session_start(): """Hook for session start (auto-activation)""" # 1. list_memories() # 2. read_memory("pm_context") # 3. read_memory("last_session") # 4. read_memory("next_actions") # 5. generate_user_report() def generate_user_report() -> str: """Generate user report (ๅ‰ๅ›ž/้€ฒๆ—/ไปŠๅ›ž/่ชฒ้กŒ)""" def on_session_end(): """Hook for session end (checkpoint save)""" # 1. write_memory("last_session", summary) # 2. write_memory("next_actions", todos) # 3. write_memory("pm_context", complete_state) ``` ### User Report Format ``` ๅ‰ๅ›ž: [last session summary] ้€ฒๆ—: [current progress status] ไปŠๅ›ž: [planned next actions] ่ชฒ้กŒ: [blockers or issues] ``` ### Integration Points - Hook into Claude Code session start - Read memories using memory_ops - Generate human-readable report - Handle missing or corrupted memory ### Testing ```bash pytest tests/test_session_lifecycle.py -v ``` --- ## 3๏ธโƒฃ pdca_engine.py Implementation ### Purpose Automate PDCA cycle execution with documentation generation. ### Key Functions ```python # superclaude/Core/pdca_engine.py class PDCAEngine: """PDCA cycle automation""" def plan_phase(goal: str): """Generate hypothesis (ไปฎ่ชฌ)""" # 1. write_memory("plan", goal) # 2. Create docs/temp/hypothesis-YYYY-MM-DD.md def do_phase(): """Track experimentation (ๅฎŸ้จ“)""" # 1. TodoWrite tracking # 2. write_memory("checkpoint", progress) every 30min # 3. Update docs/temp/experiment-YYYY-MM-DD.md def check_phase(): """Self-evaluation (่ฉ•ไพก)""" # 1. think_about_task_adherence() # 2. think_about_whether_you_are_done() # 3. Create docs/temp/lessons-YYYY-MM-DD.md def act_phase(): """Knowledge extraction (ๆ”นๅ–„)""" # 1. Success โ†’ docs/patterns/[pattern-name].md # 2. Failure โ†’ docs/mistakes/mistake-YYYY-MM-DD.md # 3. Update CLAUDE.md if global pattern ``` ### Documentation Templates **hypothesis-template.md**: ```markdown # Hypothesis: [Goal Description] Date: YYYY-MM-DD Status: Planning ## Goal What are we trying to accomplish? ## Approach How will we implement this? ## Success Criteria How do we know when we're done? ## Potential Risks What could go wrong? ``` **experiment-template.md**: ```markdown # Experiment Log: [Implementation Name] Date: YYYY-MM-DD Status: In Progress ## Implementation Steps - [ ] Step 1 - [ ] Step 2 ## Errors Encountered - Error 1: Description, solution ## Solutions Applied - Solution 1: Description, result ## Checkpoint Saves - 10:00: [progress snapshot] - 10:30: [progress snapshot] ``` ### Integration Points - Create docs/ directory templates - Integrate with TodoWrite - Call Serena MCP think operations - Generate documentation files ### Testing ```bash pytest tests/test_pdca_engine.py -v ``` --- ## ๐Ÿ”Œ Phase 3: Serena MCP Integration ### Prerequisites ```bash # Install Serena MCP server # See: docs/troubleshooting/serena-installation.md ``` ### Configuration ```json // ~/.claude/.claude.json { "mcpServers": { "serena": { "command": "uv", "args": ["run", "serena-mcp"] } } } ``` ### Memory Structure ```json { "pm_context": { "project": "SuperClaude_Framework", "current_phase": "Phase 2", "architecture": "Context-Oriented Configuration", "patterns": ["PDCA Cycle", "Session Lifecycle"] }, "last_session": { "date": "2025-10-14", "accomplished": ["Phase 1 complete"], "issues": ["Serena MCP not configured"], "learned": ["Session Lifecycle pattern"] }, "next_actions": [ "Implement session_lifecycle.py", "Configure Serena MCP", "Test memory operations" ] } ``` ### Testing Serena Connection ```bash # Test memory operations python -m SuperClaude.Core.memory_ops --test ``` --- ## ๐Ÿ“ Phase 4: Documentation Strategy ### Directory Structure ``` docs/ โ”œโ”€โ”€ temp/ # Temporary (7-day lifecycle) โ”‚ โ”œโ”€โ”€ hypothesis-YYYY-MM-DD.md โ”‚ โ”œโ”€โ”€ experiment-YYYY-MM-DD.md โ”‚ โ””โ”€โ”€ lessons-YYYY-MM-DD.md โ”œโ”€โ”€ patterns/ # Formal patterns (ๆฐธไน…ไฟๅญ˜) โ”‚ โ””โ”€โ”€ [pattern-name].md โ””โ”€โ”€ mistakes/ # Mistake records (ๆฐธไน…ไฟๅญ˜) โ””โ”€โ”€ mistake-YYYY-MM-DD.md ``` ### Lifecycle Automation ```bash # Create cleanup script scripts/cleanup_temp_docs.sh # Run daily via cron 0 0 * * * /path/to/scripts/cleanup_temp_docs.sh ``` ### Migration Scripts ```bash # Migrate successful experiments to patterns python scripts/migrate_to_patterns.py # Migrate failures to mistakes python scripts/migrate_to_mistakes.py ``` --- ## ๐Ÿš€ Phase 5: Auto-Activation (Research Needed) ### Research Questions 1. How does Claude Code handle initialization? 2. Are there plugin hooks available? 3. Can we intercept session start events? ### Implementation Plan (TBD) Once research complete, implement auto-activation hooks: ```python # superclaude/Core/auto_activation.py (future) def on_claude_code_start(): """Auto-activate PM Agent at session start""" session_lifecycle.on_session_start() ``` --- ## โœ… Implementation Checklist ### Phase 2: Core Implementation - [ ] Implement `memory_ops.py` - [ ] Write unit tests for memory_ops - [ ] Implement `session_lifecycle.py` - [ ] Write unit tests for session_lifecycle - [ ] Implement `pdca_engine.py` - [ ] Write unit tests for pdca_engine - [ ] Integration testing ### Phase 3: Serena MCP - [ ] Install Serena MCP server - [ ] Configure `.claude.json` - [ ] Test memory operations - [ ] Test think operations - [ ] Test cross-session persistence ### Phase 4: Documentation Strategy - [ ] Create `docs/temp/` template - [ ] Create `docs/patterns/` template - [ ] Create `docs/mistakes/` template - [ ] Implement lifecycle automation - [ ] Create migration scripts ### Phase 5: Auto-Activation - [ ] Research Claude Code hooks - [ ] Design auto-activation system - [ ] Implement auto-activation - [ ] Test session start behavior --- ## ๐Ÿงช Testing Strategy ### Unit Tests ```bash tests/ โ”œโ”€โ”€ test_memory_ops.py # Memory operations โ”œโ”€โ”€ test_session_lifecycle.py # Session management โ””โ”€โ”€ test_pdca_engine.py # PDCA automation ``` ### Integration Tests ```bash tests/integration/ โ”œโ”€โ”€ test_pm_agent_flow.py # End-to-end PM Agent โ”œโ”€โ”€ test_serena_integration.py # Serena MCP integration โ””โ”€โ”€ test_cross_session.py # Session persistence ``` ### Manual Testing 1. Start new session โ†’ Verify context restoration 2. Work on task โ†’ Verify checkpoint saves 3. End session โ†’ Verify state preservation 4. Restart โ†’ Verify seamless resumption --- ## ๐Ÿ“Š Success Criteria ### Functional - [ ] PM Agent activates at session start - [ ] Context restores from memory - [ ] User report generates correctly - [ ] PDCA cycle executes automatically - [ ] Documentation strategy works ### Performance - [ ] Session start delay <500ms - [ ] Memory operations <100ms - [ ] Context restoration reliable (>99%) ### Quality - [ ] Test coverage >90% - [ ] No regression in existing features - [ ] Documentation complete --- ## ๐Ÿ”ง Troubleshooting ### Common Issues **"Serena MCP not connecting"** - Check server installation - Verify `.claude.json` configuration - Test connection: `claude mcp list` **"Memory operations failing"** - Check network connection - Verify Serena server running - Check error logs **"Context not restoring"** - Verify memory structure - Check `pm_context` exists - Test with fresh memory --- ## ๐Ÿ“š References - [ARCHITECTURE.md](./ARCHITECTURE.md) - System architecture - [ROADMAP.md](./ROADMAP.md) - Development roadmap - [pm-agent-implementation-status.md](../pm-agent-implementation-status.md) - Status tracking - [Commands/pm.md](../../superclaude/Commands/pm.md) - PM Agent command - [Agents/pm-agent.md](../../superclaude/Agents/pm-agent.md) - PM Agent persona --- **Last Verified**: 2025-10-14 **Next Review**: 2025-10-21 (1 week) **Version**: 4.1.5