blob: 9fa0f3f26213a7ed0a6197540be816e65b6848ba (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
from ...core.config import ContinueConfig
from ...core.main import History, Policy, Step
from ...core.observation import TextObservation
from ...core.steps import ShellCommandsStep
from ...plugins.steps.on_traceback import DefaultOnTracebackStep
class HeadlessPolicy(Policy):
command: str
def next(self, config: ContinueConfig, history: History) -> Step:
if history.get_current() is None:
return ShellCommandsStep(cmds=[self.command])
observation = history.get_current().observation
if isinstance(observation, TextObservation):
return DefaultOnTracebackStep(output=observation.text)
return None
|