Package-level declarations
Types
Saved remote MCP servers. Configs live in SharedPreferences; bearer tokens, OAuth registrations and tokens are encrypted in secrets. Clients are cached per server so the negotiated protocol era and session are reused.
The wire protocol a provider speaks; decides which ChatBackend is built.
One configured agent provider. The API key is not part of the profile — it lives encrypted in SecretStore, keyed by id.
Saved provider profiles (SharedPreferences) with their API keys and OAuth tokens kept encrypted in SecretStore; exposes the list and the selected profile as flows. presets (built in, the first one selected by default) are merged in on load, so new presets appear after an app update.
API keys encrypted with an AES-GCM key held in the Android Keystore (the key never leaves secure hardware where available). Replaces the deprecated androidx.security:security-crypto.