message.py 710 B

12345678910111213141516171819202122232425
  1. from dataclasses import dataclass
  2. from openhands.core.schema import ActionType
  3. from openhands.events.action.action import Action, ActionSecurityRisk
  4. @dataclass
  5. class MessageAction(Action):
  6. content: str
  7. images_urls: list | None = None
  8. wait_for_response: bool = False
  9. action: str = ActionType.MESSAGE
  10. security_risk: ActionSecurityRisk | None = None
  11. @property
  12. def message(self) -> str:
  13. return self.content
  14. def __str__(self) -> str:
  15. ret = f'**MessageAction** (source={self.source})\n'
  16. ret += f'CONTENT: {self.content}'
  17. if self.images_urls:
  18. for url in self.images_urls:
  19. ret += f'\nIMAGE_URL: {url}'
  20. return ret