Structure webber into three independent subprojects: - webber-api/: FastAPI backend server with all agent code - webber-cli/: Standalone CLI client (renamed from cli/ to webber_cli/) - webber-sandbox/: Test project for functional testing Key changes: - Each subproject has its own .venv (Python 3.12+) - Added sandbox.sh for managing test project templates - Created sandbox-templates/ with calculator-cli and empty starter - Updated CI/CD for prefixed tags (api/v*, cli/v*) - Added comprehensive AGENTS.md with operational instructions - Added gitignore filtering to glob and grep tools - Created pyproject.toml for each subproject Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
31 lines
616 B
Python
31 lines
616 B
Python
"""
|
|
Request and response schemas for agent API.
|
|
"""
|
|
from src.shared.base import BaseSchema
|
|
|
|
|
|
class AgentRunRequest(BaseSchema):
|
|
"""Request to run an agent."""
|
|
prompt: str
|
|
working_dir: str = "."
|
|
agent_type: str = "explore"
|
|
|
|
|
|
class AgentRunResponse(BaseSchema):
|
|
"""Response from agent execution."""
|
|
response: str
|
|
agent_type: str
|
|
success: bool = True
|
|
error: str | None = None
|
|
|
|
|
|
class AgentInfo(BaseSchema):
|
|
"""Information about an agent."""
|
|
name: str
|
|
description: str
|
|
|
|
|
|
class AgentListResponse(BaseSchema):
|
|
"""List of available agents."""
|
|
agents: list[AgentInfo]
|