| |
| |
| |
| |
| |
|
|
| """ |
| Data models for the SQL/Data Cleaning Sandbox Environment. |
| |
| Agents interact by sending SQL queries or Python snippets to clean |
| messy databases and generate reports. |
| """ |
|
|
| from typing import Literal, Optional |
|
|
| from openenv.core.env_server.types import Action, Observation |
| from pydantic import Field |
|
|
|
|
| class SqlSandboxAction(Action): |
| """Action for the SQL Sandbox run a SQL query or Python snippet.""" |
|
|
| tool: Literal["sql", "python"] = Field( |
| ..., description="Tool to use: 'sql' for SQLite queries, 'python' for Python scripts" |
| ) |
| command: str = Field( |
| ..., description="The SQL query or Python code to execute" |
| ) |
|
|
|
|
| class SqlSandboxObservation(Observation): |
| """Observation returned after each step.""" |
|
|
| output: str = Field(default="", description="stdout / query result") |
| error: Optional[str] = Field(default=None, description="stderr or error message") |
| current_step: int = Field(default=0, description="Current step number") |
| max_steps: int = Field(default=20, description="Maximum allowed steps") |
| task_description: str = Field(default="", description="Current task description") |
|
|