"""Hindsight's declared config surface — rendered by the generic desktop panel.""" from plugins.memory.config_schema import ( KIND_SECRET, KIND_SELECT, KIND_TEXT, ProviderConfigSchema, ProviderField, ProviderFieldOption, ) CONFIG_SCHEMA = ProviderConfigSchema( name="hindsight", label="Hindsight", fields=( ProviderField( key="mode", label="Mode", kind=KIND_SELECT, default="cloud", description="How Hermes connects to Hindsight.", options=( ProviderFieldOption( "cloud", "Cloud", "Hindsight Cloud API (lightweight, just needs an API key)", ), ProviderFieldOption( "local_external", "Local External", "Connect to an existing Hindsight instance", ), ), inline=True, ), ProviderField( key="api_key", label="API key", kind=KIND_SECRET, env_key="HINDSIGHT_API_KEY", description="Used to authenticate with the Hindsight API.", placeholder="Enter Hindsight API key", inline=True, ), ProviderField( key="api_url", label="API URL", kind=KIND_TEXT, default="https://api.hindsight.vectorize.io", aliases=("apiUrl",), env_fallbacks=("HINDSIGHT_API_URL",), inline=True, ), ProviderField( key="bank_id", label="Bank ID", kind=KIND_TEXT, default="hermes", aliases=("bankId",), inline=True, ), ProviderField( key="recall_budget", label="Recall budget", kind=KIND_SELECT, default="mid", aliases=("budget",), options=( ProviderFieldOption("low", "low"), ProviderFieldOption("mid", "mid"), ProviderFieldOption("high", "high"), ), inline=True, ), ), )