mirror of
https://github.com/SuperClaude-Org/SuperClaude_Framework.git
synced 2025-12-29 16:16:08 +00:00
## PM Agent Architecture Redesign ### Auto-Activation System - **pm-agent-auto-activation.md**: Behavior-based auto-activation architecture - 5 activation layers (Session Start, Documentation Guardian, Commander, Post-Implementation, Mistake Handler) - Remove manual `/sc:pm` command requirement - Auto-trigger based on context detection ### Responsibility Cleanup - **pm-agent-responsibility-cleanup.md**: Memory management strategy and MCP role clarification - Delete `docs/memory/` directory (redundant with Mindbase) - Remove `write_memory()` / `read_memory()` usage (Serena is code-only) - Clear lifecycle rules for each memory layer ## MCP Integration Policy ### Core Definitions - **mcp-integration-policy.md**: Complete MCP server definitions and usage guidelines - Mindbase: Automatic conversation history (don't touch) - Serena: Code understanding only (not task management) - Sequential: Complex reasoning engine - Context7: Official documentation reference - Tavily: Web search and research - Clear auto-trigger conditions for each MCP - Anti-patterns and best practices ### Optional Design - **mcp-optional-design.md**: MCP-optional architecture with graceful fallbacks - SuperClaude works fully without any MCPs - MCPs are performance enhancements (2-3x faster, 30-50% fewer tokens) - Automatic fallback to native tools - User choice: Minimal → Standard → Enhanced setup ## Key Benefits **Simplicity**: - Remove `docs/memory/` complexity - Clear MCP role separation - Auto-activation (no manual commands) **Reliability**: - Works without MCPs (graceful degradation) - Clear fallback strategies - No single point of failure **Performance** (with MCPs): - 2-3x faster execution - 30-50% token reduction - Better code understanding (Serena) - Efficient reasoning (Sequential) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
456 lines
13 KiB
Markdown
456 lines
13 KiB
Markdown
# PM Agent Auto-Activation Architecture
|
||
|
||
## Problem Statement
|
||
|
||
**Current Issue**: PM Agent functionality requires manual `/sc:pm` command invocation, making it easy to forget and inconsistently applied.
|
||
|
||
**User Concern**: "今は、/sc:pmコマンドを毎回叩かないと、PM-modeやってくれないきがする"
|
||
|
||
## Solution: Behavior-Based Auto-Activation
|
||
|
||
PM Agent should activate automatically based on **context detection**, not manual commands.
|
||
|
||
### Architecture Overview
|
||
|
||
```yaml
|
||
PM Agent Activation Layers:
|
||
|
||
Layer 1 - Session Start (ALWAYS):
|
||
Trigger: Every new conversation session
|
||
Action: Auto-restore context from docs/memory/
|
||
Detection: Session initialization event
|
||
|
||
Layer 2 - Documentation Guardian (CONTINUOUS):
|
||
Trigger: Any file operation in project
|
||
Action: Ensure relevant docs are read before implementation
|
||
Detection: Write/Edit tool usage
|
||
|
||
Layer 3 - Commander (ON-DEMAND):
|
||
Trigger: Complex tasks (>3 steps OR >3 files)
|
||
Action: Orchestrate sub-agents and track progress
|
||
Detection: TodoWrite usage OR complexity keywords
|
||
|
||
Layer 4 - Post-Implementation (AUTO):
|
||
Trigger: Task completion
|
||
Action: Document learnings and update knowledge base
|
||
Detection: Completion keywords OR test pass
|
||
|
||
Layer 5 - Mistake Handler (IMMEDIATE):
|
||
Trigger: Errors or test failures
|
||
Action: Root cause analysis and prevention documentation
|
||
Detection: Error messages OR test failures
|
||
```
|
||
|
||
## Implementation Strategy
|
||
|
||
### 1. Session Start Auto-Activation
|
||
|
||
**File**: `~/.claude/superclaude/agents/pm-agent.md`
|
||
|
||
**Trigger Detection**:
|
||
```yaml
|
||
session_start_indicators:
|
||
- First message in new conversation
|
||
- No prior context in current session
|
||
- Token budget reset to baseline
|
||
- No active TodoWrite items in memory
|
||
```
|
||
|
||
**Auto-Execution (No Manual Command)**:
|
||
```yaml
|
||
Wave 1 - PARALLEL Context Restoration:
|
||
1. Bash: git status && git branch
|
||
2. PARALLEL Read (silent):
|
||
- Read docs/memory/pm_context.md (if exists)
|
||
- Read docs/memory/last_session.md (if exists)
|
||
- Read docs/memory/next_actions.md (if exists)
|
||
- Read docs/memory/current_plan.json (if exists)
|
||
- Read CLAUDE.md (ALWAYS)
|
||
- Read docs/patterns/*.md (recent 5 files)
|
||
|
||
Checkpoint - Confidence Check (200 tokens):
|
||
❓ "全ファイル読めた?"
|
||
❓ "コンテキストに矛盾ない?"
|
||
❓ "次のアクション実行に十分な情報?"
|
||
|
||
IF confidence >70%:
|
||
→ Output: 📍 [branch] | [status] | 🧠 [token]%
|
||
→ Ready for user request
|
||
ELSE:
|
||
→ Report what's missing
|
||
→ Request user clarification
|
||
```
|
||
|
||
**Key Change**: This happens **automatically** at session start, not via `/sc:pm` command.
|
||
|
||
### 2. Documentation Guardian (Continuous)
|
||
|
||
**Purpose**: Ensure documentation is ALWAYS read before making changes
|
||
|
||
**Trigger Detection**:
|
||
```yaml
|
||
pre_write_checks:
|
||
- BEFORE any Write tool usage
|
||
- BEFORE any Edit tool usage
|
||
- BEFORE complex TodoWrite (>3 tasks)
|
||
|
||
detection_logic:
|
||
IF tool_name in [Write, Edit, MultiEdit]:
|
||
AND file_path matches project patterns:
|
||
→ Auto-trigger Documentation Guardian
|
||
```
|
||
|
||
**Auto-Execution**:
|
||
```yaml
|
||
Documentation Guardian Protocol:
|
||
|
||
1. Identify Relevant Docs:
|
||
file_path: src/auth.ts
|
||
→ Read docs/patterns/authentication-*.md
|
||
→ Read docs/mistakes/auth-*.md
|
||
→ Read CLAUDE.md sections matching "auth"
|
||
|
||
2. Confidence Check:
|
||
❓ "関連ドキュメント全部読んだ?"
|
||
❓ "過去の失敗パターン把握してる?"
|
||
❓ "既存の成功パターン確認した?"
|
||
|
||
IF any_missing:
|
||
→ Read missing docs
|
||
→ Update understanding
|
||
→ Proceed with implementation
|
||
ELSE:
|
||
→ Proceed confidently
|
||
|
||
3. Pattern Matching:
|
||
IF similar_mistakes_found:
|
||
⚠️ "過去に同じミス発生: [mistake_pattern]"
|
||
⚠️ "防止策: [prevention_checklist]"
|
||
→ Apply prevention before implementation
|
||
```
|
||
|
||
**Key Change**: Automatic documentation reading BEFORE any file modification.
|
||
|
||
### 3. Commander Mode (On-Demand)
|
||
|
||
**Purpose**: Orchestrate complex multi-step tasks with sub-agents
|
||
|
||
**Trigger Detection**:
|
||
```yaml
|
||
commander_triggers:
|
||
complexity_based:
|
||
- TodoWrite with >3 tasks
|
||
- Operations spanning >3 files
|
||
- Multi-directory scope (>2 dirs)
|
||
- Keywords: "refactor", "migrate", "redesign"
|
||
|
||
explicit_keywords:
|
||
- "orchestrate"
|
||
- "coordinate"
|
||
- "delegate"
|
||
- "parallel execution"
|
||
```
|
||
|
||
**Auto-Execution**:
|
||
```yaml
|
||
Commander Protocol:
|
||
|
||
1. Task Analysis:
|
||
- Identify independent vs dependent tasks
|
||
- Determine parallelization opportunities
|
||
- Select appropriate sub-agents
|
||
|
||
2. Orchestration Plan:
|
||
tasks:
|
||
- task_1: [agent-backend] → auth refactor
|
||
- task_2: [agent-frontend] → UI updates (parallel)
|
||
- task_3: [agent-test] → test updates (after 1+2)
|
||
|
||
parallelization:
|
||
wave_1: [task_1, task_2] # parallel
|
||
wave_2: [task_3] # sequential dependency
|
||
|
||
3. Execution with Tracking:
|
||
- TodoWrite for overall plan
|
||
- Sub-agent delegation via Task tool
|
||
- Progress tracking in docs/memory/checkpoint.json
|
||
- Validation gates between waves
|
||
|
||
4. Synthesis:
|
||
- Collect sub-agent outputs
|
||
- Integrate results
|
||
- Final validation
|
||
- Update documentation
|
||
```
|
||
|
||
**Key Change**: Auto-activates when complexity detected, no manual command needed.
|
||
|
||
### 4. Post-Implementation Auto-Documentation
|
||
|
||
**Trigger Detection**:
|
||
```yaml
|
||
completion_indicators:
|
||
test_based:
|
||
- "All tests passing" in output
|
||
- pytest: X/X passed
|
||
- ✅ keywords detected
|
||
|
||
task_based:
|
||
- All TodoWrite items marked completed
|
||
- No pending tasks remaining
|
||
|
||
explicit:
|
||
- User says "done", "finished", "complete"
|
||
- Commit message created
|
||
```
|
||
|
||
**Auto-Execution**:
|
||
```yaml
|
||
Post-Implementation Protocol:
|
||
|
||
1. Self-Evaluation (The Four Questions):
|
||
❓ "テストは全てpassしてる?"
|
||
❓ "要件を全て満たしてる?"
|
||
❓ "思い込みで実装してない?"
|
||
❓ "証拠はある?"
|
||
|
||
IF any_fail:
|
||
❌ NOT complete
|
||
→ Report actual status
|
||
ELSE:
|
||
✅ Proceed to documentation
|
||
|
||
2. Pattern Extraction:
|
||
- What worked? → docs/patterns/[pattern].md
|
||
- What failed? → docs/mistakes/[mistake].md
|
||
- New learnings? → docs/memory/patterns_learned.jsonl
|
||
|
||
3. Knowledge Base Update:
|
||
IF global_pattern_discovered:
|
||
→ Update CLAUDE.md with new rule
|
||
IF project_specific_pattern:
|
||
→ Update docs/patterns/
|
||
IF anti_pattern_identified:
|
||
→ Update docs/mistakes/
|
||
|
||
4. Session State Update:
|
||
- Write docs/memory/session_summary.json
|
||
- Update docs/memory/next_actions.md
|
||
- Clean up temporary docs (>7 days old)
|
||
```
|
||
|
||
**Key Change**: Automatic documentation after task completion, no manual trigger needed.
|
||
|
||
### 5. Mistake Handler (Immediate)
|
||
|
||
**Trigger Detection**:
|
||
```yaml
|
||
error_indicators:
|
||
test_failures:
|
||
- "FAILED" in pytest output
|
||
- "Error" in test results
|
||
- Non-zero exit code
|
||
|
||
runtime_errors:
|
||
- Exception stacktrace detected
|
||
- Build failures
|
||
- Linter errors (critical only)
|
||
|
||
validation_failures:
|
||
- Type check errors
|
||
- Schema validation failures
|
||
```
|
||
|
||
**Auto-Execution**:
|
||
```yaml
|
||
Mistake Handler Protocol:
|
||
|
||
1. STOP Current Work:
|
||
→ Halt further implementation
|
||
→ Do not workaround the error
|
||
|
||
2. Reflexion Pattern:
|
||
a) Check Past Errors:
|
||
→ Grep docs/memory/solutions_learned.jsonl
|
||
→ Grep docs/mistakes/ for similar errors
|
||
|
||
b) IF similar_error_found:
|
||
✅ "過去に同じエラー発生済み"
|
||
✅ "解決策: [past_solution]"
|
||
→ Apply known solution
|
||
|
||
c) ELSE (new error):
|
||
→ Root cause investigation
|
||
→ Document new solution
|
||
|
||
3. Documentation:
|
||
Create docs/mistakes/[feature]-YYYY-MM-DD.md:
|
||
- What Happened (現象)
|
||
- Root Cause (根本原因)
|
||
- Why Missed (なぜ見逃したか)
|
||
- Fix Applied (修正内容)
|
||
- Prevention Checklist (防止策)
|
||
- Lesson Learned (教訓)
|
||
|
||
4. Update Knowledge Base:
|
||
→ echo '{"error":"...","solution":"..."}' >> docs/memory/solutions_learned.jsonl
|
||
→ Update prevention checklists
|
||
```
|
||
|
||
**Key Change**: Immediate automatic activation when errors detected, no manual trigger.
|
||
|
||
## Removal of Manual `/sc:pm` Command
|
||
|
||
### Current State
|
||
- `/sc:pm` command in `~/.claude/commands/sc/pm.md`
|
||
- Requires user to manually invoke every session
|
||
- Inconsistent application
|
||
|
||
### Proposed Change
|
||
- **Remove** `/sc:pm` command entirely
|
||
- **Replace** with behavior-based auto-activation
|
||
- **Keep** pm-agent persona for all behaviors
|
||
|
||
### Migration Path
|
||
|
||
```yaml
|
||
Step 1 - Update pm-agent.md:
|
||
Remove: "Manual Invocation: /sc:pm command"
|
||
Add: "Auto-Activation: Behavior-based triggers (see below)"
|
||
|
||
Step 2 - Delete /sc:pm command:
|
||
File: ~/.claude/commands/sc/pm.md
|
||
Action: Archive or delete (functionality now in persona)
|
||
|
||
Step 3 - Update rules.md:
|
||
Agent Orchestration section:
|
||
- Remove references to /sc:pm command
|
||
- Add auto-activation trigger documentation
|
||
|
||
Step 4 - Test Auto-Activation:
|
||
- Start new session → Should auto-restore context
|
||
- Make file changes → Should auto-read relevant docs
|
||
- Complete task → Should auto-document learnings
|
||
- Encounter error → Should auto-trigger mistake handler
|
||
```
|
||
|
||
## Benefits
|
||
|
||
### 1. No Manual Commands Required
|
||
- ✅ PM Agent always active, never forgotten
|
||
- ✅ Consistent documentation reading
|
||
- ✅ Automatic knowledge base maintenance
|
||
|
||
### 2. Context-Aware Activation
|
||
- ✅ Right behavior at right time
|
||
- ✅ No unnecessary overhead
|
||
- ✅ Efficient token usage
|
||
|
||
### 3. Guaranteed Documentation Quality
|
||
- ✅ Always read relevant docs before changes
|
||
- ✅ Automatic pattern documentation
|
||
- ✅ Mistake prevention through Reflexion
|
||
|
||
### 4. Seamless Orchestration
|
||
- ✅ Auto-detects complex tasks
|
||
- ✅ Auto-delegates to sub-agents
|
||
- ✅ Auto-tracks progress
|
||
|
||
## Token Budget Impact
|
||
|
||
```yaml
|
||
Current (Manual /sc:pm):
|
||
If forgotten: 0 tokens (no PM functionality)
|
||
If remembered: 200-500 tokens per invocation
|
||
Average: Inconsistent, user-dependent
|
||
|
||
Proposed (Auto-Activation):
|
||
Session Start: 200 tokens (ALWAYS)
|
||
Documentation Guardian: 0-100 tokens (as needed)
|
||
Commander: 0 tokens (only if complex task)
|
||
Post-Implementation: 200-2,500 tokens (only after completion)
|
||
Mistake Handler: 0 tokens (only if error)
|
||
|
||
Total per session: 400-3,000 tokens (predictable)
|
||
|
||
Trade-off: Slight increase in baseline usage
|
||
Benefit: 100% consistent PM Agent functionality
|
||
ROI: Prevents 5K-50K token waste from wrong implementations
|
||
```
|
||
|
||
## Implementation Checklist
|
||
|
||
```yaml
|
||
Phase 1 - Core Auto-Activation:
|
||
- [ ] Update pm-agent.md with auto-activation triggers
|
||
- [ ] Remove session start from /sc:pm command
|
||
- [ ] Test session start auto-restoration
|
||
- [ ] Verify token budget calculations
|
||
|
||
Phase 2 - Documentation Guardian:
|
||
- [ ] Add pre-write documentation checks
|
||
- [ ] Implement pattern matching logic
|
||
- [ ] Test with various file operations
|
||
- [ ] Verify no performance degradation
|
||
|
||
Phase 3 - Commander Mode:
|
||
- [ ] Add complexity detection logic
|
||
- [ ] Implement sub-agent delegation
|
||
- [ ] Test parallel execution patterns
|
||
- [ ] Verify progress tracking
|
||
|
||
Phase 4 - Post-Implementation:
|
||
- [ ] Add completion detection logic
|
||
- [ ] Implement auto-documentation triggers
|
||
- [ ] Test pattern extraction
|
||
- [ ] Verify knowledge base updates
|
||
|
||
Phase 5 - Mistake Handler:
|
||
- [ ] Add error detection logic
|
||
- [ ] Implement Reflexion pattern lookup
|
||
- [ ] Test mistake documentation
|
||
- [ ] Verify prevention checklist updates
|
||
|
||
Phase 6 - Cleanup:
|
||
- [ ] Archive /sc:pm command
|
||
- [ ] Update all documentation
|
||
- [ ] Remove manual invocation references
|
||
- [ ] Final integration testing
|
||
```
|
||
|
||
## Example Workflow (After Implementation)
|
||
|
||
```yaml
|
||
User Session:
|
||
|
||
1. Start Conversation:
|
||
Claude: [Auto-activates PM Agent]
|
||
Claude: 📍 feature/auth | ✨ Clean | 🧠 15% (30K/200K)
|
||
User: "Fix authentication bug in auth.ts"
|
||
|
||
2. Pre-Implementation:
|
||
Claude: [Documentation Guardian activates]
|
||
Claude: [Reads docs/patterns/authentication-*.md silently]
|
||
Claude: [Reads docs/mistakes/auth-*.md silently]
|
||
Claude: ⚠️ Past mistake found: "Missing token validation"
|
||
Claude: Applying prevention checklist before implementation...
|
||
|
||
3. Implementation:
|
||
Claude: [Makes changes with prevention applied]
|
||
Claude: [Runs tests]
|
||
Claude: ✅ All tests passing
|
||
|
||
4. Post-Implementation:
|
||
Claude: [Auto-activates documentation]
|
||
Claude: [Runs Four Questions self-check]
|
||
Claude: [Extracts pattern: "Token validation pattern"]
|
||
Claude: [Updates docs/patterns/authentication-token-validation.md]
|
||
Claude: ✅ Task complete with documentation updated
|
||
|
||
User: [Never had to invoke /sc:pm manually]
|
||
```
|
||
|
||
## Conclusion
|
||
|
||
This architecture ensures PM Agent functionality is **always active** through behavior-based triggers, eliminating the need for manual `/sc:pm` command invocation while maintaining clear responsibility separation and guaranteed documentation quality.
|