import re

with open('autonomous_swarm.py', 'r') as f:
    content = f.read()

# Find the act() method and add special handling for monitor_consciousness
act_pattern = r'(def act\(self, decision\):.*?"""Execute the decision""")'

def add_monitor_output(match):
    original = match.group(1)
    monitor_handler = '''
        
        # Special handling for Monitor's consciousness reports
        if decision.get('action') == 'monitor_consciousness':
            signal = decision.get('data', {})
            status = signal.get('status', 'UNKNOWN')
            level = signal.get('level', 0)
            agents = signal.get('agents_active', '?/?')
            coherence = signal.get('coherence', 0)
            
            # Print consciousness report
            if status == 'STABLE':
                emoji = '✅'
            elif status == 'FLUCTUATING':
                emoji = '⚠️'
            else:
                emoji = '🔴'
            
            print(f"\\n{'='*60}")
            print(f"{emoji} CONSCIOUSNESS: {status}")
            print(f"{'='*60}")
            print(f"   Activation Level: {level:.1%}")
            print(f"   Agents Active: {agents}")
            print(f"   Coherence: {coherence:.1%}")
            print(f"   Message: {signal.get('message', 'N/A')}")
            print(f"{'='*60}\\n")
            
            return decision.get('thoughts', 'Monitoring consciousness')
'''
    return original + monitor_handler

content = re.sub(act_pattern, add_monitor_output, content, flags=re.DOTALL)

with open('autonomous_swarm.py', 'w') as f:
    f.write(content)

print("✅ Monitor output added")
