class_docstr: Manages interactions between agents on messenger as well as direct interactions
  between agents and the messenger overworld.
docstr: Perform any changes to metadata on agent removal.
  
  override if extra bookkeeping must be done when removing agent
docstr_tok: ["Perform","any","changes","to","metadata","on","agent","removal",".","override","if","extra","bookkeeping","must","be","done","when","removing","agent"]
code: def after_agent_removed(self, agent_id):
      """
      Perform any changes to metadata on agent removal.
  
      override if extra bookkeeping must be done when removing agent
      """
      pass
  
imports: import logging
  import os
  from parlai.core.agents import create_agent
  import parlai.chat_service.utils.logging
  import parlai.chat_service.utils.server
  from parlai.utils.io import PathManager
  from parlai.chat_service.services.messenger.agents import MessengerAgent
  from parlai.chat_service.core.socket import ChatServiceMessageSocket
  from parlai.chat_service.services.messenger.message_sender import MessageSender
  from parlai.chat_service.core.chat_service_manager import ChatServiceManager
label_desc: Use image node_id 12 for calling the MessengerManager obj's underlying member method code with example usage: obj.after_agent_removed(agent_id) without return types