feat(agent-office): scaffold backend — config, db, models, Dockerfile
SQLite DB layer with WAL mode, agent_config/tasks/logs/telegram_state tables, 2 seeded agents, full CRUD, and passing test suite (7/7). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
35
agent-office/app/models.py
Normal file
35
agent-office/app/models.py
Normal file
@@ -0,0 +1,35 @@
|
||||
from pydantic import BaseModel
|
||||
from typing import Optional
|
||||
|
||||
|
||||
class CommandRequest(BaseModel):
|
||||
agent: str
|
||||
action: str
|
||||
params: Optional[dict] = None
|
||||
|
||||
|
||||
class ApprovalRequest(BaseModel):
|
||||
agent: str
|
||||
task_id: str
|
||||
approved: bool
|
||||
feedback: Optional[str] = None
|
||||
|
||||
|
||||
class AgentConfigUpdate(BaseModel):
|
||||
enabled: Optional[bool] = None
|
||||
schedule_config: Optional[dict] = None
|
||||
custom_config: Optional[dict] = None
|
||||
|
||||
|
||||
class PriceAlertConfig(BaseModel):
|
||||
symbol: str
|
||||
name: str
|
||||
target_price: float
|
||||
direction: str # "above" or "below"
|
||||
|
||||
|
||||
class ComposeCommand(BaseModel):
|
||||
prompt: str
|
||||
style: Optional[str] = None
|
||||
model: Optional[str] = "V4"
|
||||
instrumental: Optional[bool] = False
|
||||
Reference in New Issue
Block a user