feat: add Memory Gateway integration with async support for memory snapshots and user management

This commit is contained in:
2026-06-04 17:00:02 +08:00
parent 236ac19789
commit d93ca62990
13 changed files with 949 additions and 2 deletions

View File

@ -115,6 +115,26 @@ class BackendIdentityConfig:
public_base_url: str = ""
@dataclass(slots=True)
class MemoryGatewayConfig:
"""Memory Gateway integration settings."""
base_url: str = ""
api_key: str = ""
default_user_id: str = ""
timeout_seconds: float = 15.0
snapshot_search_limit: int = 5
commit_on_run_complete: bool = True
@dataclass(slots=True)
class MemoryConfig:
"""Runtime memory strategy configuration."""
mode: str = "local"
gateway: MemoryGatewayConfig = field(default_factory=MemoryGatewayConfig)
@dataclass(slots=True)
class BeaverConfig:
"""Config loaded once per backend sandbox instance."""
@ -126,6 +146,7 @@ class BeaverConfig:
authz: AuthzConfig = field(default_factory=AuthzConfig)
channels: dict[str, ChannelConfig] = field(default_factory=dict)
backend_identity: BackendIdentityConfig = field(default_factory=BackendIdentityConfig)
memory: MemoryConfig = field(default_factory=MemoryConfig)
config_path: Path | None = None
@property