Files
gpt-pilot/core/proc/exec_log.py
2024-06-13 14:26:10 +02:00

22 lines
1.1 KiB
Python

from datetime import datetime, timezone
from typing import Optional
from pydantic import BaseModel, Field
class ExecLog(BaseModel):
started_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))
duration: float = Field(description="The duration of the command/process run in seconds")
cmd: str = Field(description="The full command (as executed in the shell)")
cwd: str = Field(description="The working directory for the command (relative to project root)")
env: dict = Field(description="The environment variables for the command")
timeout: Optional[float] = Field(description="The command timeout in seconds (or None if no timeout)")
status_code: Optional[int] = Field(description="The command return code, or None if there was a timeout")
stdout: str = Field(description="The command standard output")
stderr: str = Field(description="The command standard error")
analysis: str = Field(description="The result analysis as performed by the LLM")
success: bool = Field(description="Whether the command was successful")
__all__ = ["ExecLog"]