| 123456789101112131415161718192021222324252627282930313233343536 |
- from dataclasses import dataclass
- from typing import TYPE_CHECKING
- from .base import ExecutableAction
- from opendevin.schema import ActionType
- if TYPE_CHECKING:
- from opendevin.controller import AgentController
- from opendevin.observation import CmdOutputObservation
- @dataclass
- class CmdRunAction(ExecutableAction):
- command: str
- background: bool = False
- action: str = ActionType.RUN
- async def run(self, controller: 'AgentController') -> 'CmdOutputObservation':
- return controller.action_manager.run_command(self.command, self.background)
- @property
- def message(self) -> str:
- return f'Running command: {self.command}'
- @dataclass
- class CmdKillAction(ExecutableAction):
- id: int
- action: str = ActionType.KILL
- async def run(self, controller: 'AgentController') -> 'CmdOutputObservation':
- return controller.action_manager.kill_command(self.id)
- @property
- def message(self) -> str:
- return f'Killing command: {self.id}'
|