Files
Anton 052591281d Initial clean version - Agent Maxim
- Complete agent system with planning and execution
- Bridge API with FastAPI server
- WhatsApp-style mobile dashboard
- Enhanced web search with query improvement
- Security guards and policy checks
- Comprehensive documentation
2026-04-09 18:07:43 +03:00

30 lines
808 B
Python

"""Unified adapter contract for Bridge V1.2.
Every adapter must expose:
execute(prompt: str) -> AdapterResult
AdapterResult fields:
response - string output on success, None on error
error - error message on failure, None on success
exit_code - 0 = success, non-zero = failure
mode - "real" or "stub"
metadata - adapter-specific extra data (e.g. agent_run_id)
"""
from __future__ import annotations
from dataclasses import dataclass, field
from typing import Any, Optional
@dataclass
class AdapterResult:
response: Optional[str]
error: Optional[str]
exit_code: int
mode: str # "real" | "stub"
metadata: dict[str, Any] = field(default_factory=dict)
@property
def ok(self) -> bool:
return self.exit_code == 0 and self.error is None