Privacy & Security
Relevant source files
The following files were used as context for generating this wiki page:
Conduit operates as a client-side application where data ownership and privacy remain with the user. The system stores chats, notes, and credentials locally on the device rather than routing them through a developer-operated backend. Security is maintained through platform-specific secure storage and direct peer-to-peer communication with user-configured AI providers or self-hosted servers.
Sources: README.md:59-63, PRIVACY_POLICY.md:5-9
Data Storage Architecture
Conduit follows a local-first storage model. All user-provided content, including messages, files, and images, remains on the device.
Local and Secure Storage
The application utilizes different storage mechanisms based on data sensitivity:
- General Data: Preferences, cached media, and minimal UI settings are stored in local device storage.
- Sensitive Data: Authentication tokens, API keys, and connection credentials are saved using platform-provided secure storage (Keychain on iOS and Keystore on Android).
- Persistent vs Transient: Preferences persist until the app is uninstalled or data is cleared, while diagnostic logs are transient and kept only in memory during a session.
Sources: README.md:204-206, PRIVACY_POLICY.md:12-25, pubspec.yaml:70-71
Data Flow Diagram
This diagram illustrates how data originates from the user device and connects directly to external providers without intermediary relays.
Sources: README.md:209-211, PRIVACY_POLICY.md:27-31
Connectivity Security
Conduit supports multiple authentication paths and network configurations to handle self-hosted environments securely.
Authentication Mechanisms
The app manages several authentication protocols:
- Open WebUI Auth: Supports username/password, LDAP, manual JWT entry, and SSO/OAuth.
- Reverse Proxy Support: The app captures cookies and session state to work behind
oauth2-proxy, Authelia, Authentik, and Cloudflare Tunnels. - Custom Headers: Users can configure mandatory headers like
X-API-KeyorAuthorizationduring setup.
Sources: README.md:143-152, PRIVACY_POLICY.md:15-16
Network Privacy
Direct model requests bypass the Open WebUI server and connect straight to the provider. On-device web search queries originate directly from the user's IP address and are sent to engines like DuckDuckGo or Brave.
Sources: PRIVACY_POLICY.md:30-46, packages/conduit_ddgs/pubspec.yaml:2-5
Feature-Specific Security
Apple On-Device & Private Cloud Compute (PCC)
On eligible iOS devices, Conduit integrates with Apple's security frameworks:
- On-Device: Inference runs locally via Apple's Foundation Models; no content is sent to external AI providers.
- PCC: Conversation content and images are sent to Apple's Private Cloud Compute service. Conduit does not operate an intermediary relay.
Sources: README.md:83-102, PRIVACY_POLICY.md:36-44
User Permissions
The app requests permissions only when specific features are activated by the user.
| Permission | Purpose | Data Handling |
|---|---|---|
| Microphone | Voice input / Realtime calls | Transcribed on-device when available. |
| Photos/Files | Attachments | Uploaded directly to the configured server. |
| Location | Optional chat context | Sent only to the user's server if enabled. |
| Speech Recognition | Voice-to-text | Performed on-device using system recognizers. |
Sources: PRIVACY_POLICY.md:48-61, assets/release_notes/en.json:115-118
Development Security Practices
Contributors must follow strict privacy guidelines before submitting code:
- Review diffs for private information (credentials, real chats).
- Use synthetic content for all fixtures and screenshots.
- Ensure diagnostic logs remain local and transient.
Sources: AGENTS.md:6-12, PRIVACY_POLICY.md:20-21
Security Configuration Settings
Users retain control over data synchronization and search behavior through the application settings.
| Setting | Impact |
|---|---|
| History Sync | Toggles whether direct chats are saved to Open WebUI or stay on-device. |
| Web Search | Enables/disables on-device search via public engines. |
| Safe Search | Configures content filtering for on-device web queries. |
| Account Switching | Allows managing multiple Open WebUI or Hermes credentials independently. |
Sources: PRIVACY_POLICY.md:32-35, PRIVACY_POLICY.md:76-80, assets/release_notes/en.json:144-149
Conclusion
Conduit emphasizes a decentralized security model where the developer does not have access to user data. By leveraging platform secure storage and direct network connections, the app ensures that sensitive credentials and conversation histories remain under the user's control or within their self-hosted infrastructure.
Sources: README.md:204-211, PRIVACY_POLICY.md:67-69