Privacy Policy for Bastion Chat

Effective Date: July 1, 2025

Last Updated: October 13, 2026

Overview

Bastion Chat is designed with privacy as our core principle. This Privacy Policy explains how we handle information in our AI chat assistant application.

Our Privacy Commitment

We do not collect, store, transmit, or have access to any of your personal data, conversations, or documents.

Information We Do NOT Collect

❌
Chat Conversations

Your conversations with AI models remain entirely on your device

❌
Documents

Uploaded PDFs, text files, and web content stay local

❌
Voice Data

Speech recordings and transcriptions are processed locally

❌
Personal Information

No names, email addresses, or contact information collected

❌
Usage Analytics

No telemetry, crash reports, or usage statistics transmitted

❌
Device Information

No device IDs, IP addresses, or system information collected

❌
Location Data

No location tracking or geo-data collection

How Bastion Chat Works

🔒 100% Local Processing

  • All AI model inference happens on your device
  • Conversations, document processing, and voice recognition occur locally
  • No data is sent to external servers for processing

📱 Local Storage Only

  • Chat history is stored in a local SQLite database on your device
  • Documents are processed and stored locally using vector embeddings
  • All user preferences and settings remain on your device

🌐 Limited Network Usage

The app only connects to the internet for:

  • Model Downloads: Downloading AI models from Hugging Face repositories
  • Web Document Ingestion: When you explicitly choose to add a web URL to your knowledge base
  • Web Search (optional, off by default): When you turn on Web access, the AI can send a search query to DuckDuckGo and open the web pages it finds to answer your question
  • MCP Servers (optional): Only servers you add yourself in Settings, and only the requests you allow the AI to make to them

Network requests are made directly to:

  • Hugging Face (huggingface.co): For downloading AI models
  • User-specified websites: Only when you provide a URL to add to your knowledge base
  • DuckDuckGo (duckduckgo.com) and the result pages: Only while Web access is turned on
  • MCP servers you configure: Only if you add one

When the device is offline, web tools are not offered to the AI at all. Your documents and conversation history are never uploaded; a web search sends only the search query the AI writes.

No data about you or your usage is transmitted during these connections.

Permissions We Request

🎤 Microphone Access

  • Purpose: Convert your voice to text for AI conversations
  • Processing: Speech recognition happens locally using iOS Speech Recognition
  • Storage: Voice data is processed in real-time and not stored

📸 Camera Access

  • Purpose: Take photos for multimodal AI features that can analyze images
  • Processing: Image analysis happens locally on your device
  • Storage: Images are only stored if you explicitly choose to save them

📂 File Access

  • Purpose: Allow you to upload documents (PDFs, text files) to your knowledge base
  • Processing: Document parsing and embedding generation happen locally
  • Storage: Documents are stored locally and processed for search

🌐 Network Access

  • Purpose: Download AI models and optionally ingest web content you specify
  • Scope: Limited to model downloads and user-requested web content
  • Privacy: No personal data is transmitted

Data Security

🔐 Device-Level Security

  • Data is protected by your device's built-in security (encryption at rest)
  • Lock BastionChat with Face ID or Touch ID using iOS's built-in app protection (touch and hold the app icon, then choose Require Face ID)
  • All processing happens within the app's sandboxed environment

🛡️ No Cloud Vulnerabilities

  • No cloud storage means no risk of remote data breaches
  • No external API keys or tokens stored
  • No third-party analytics or tracking services

Your Rights

Since we don't collect your data:

  • No Data to Delete: All data is yours and remains on your device
  • No Data to Export: Your data never leaves your device unless you choose to back it up
  • Complete Control: You can delete the app to remove all associated data

Children's Privacy

Bastion Chat does not collect personal information from anyone, including children under 13. The app's privacy-first design ensures no data collection regardless of user age.

Changes to Privacy Policy

We will update this policy if our privacy practices change. Since we don't collect contact information, updates will be communicated through app updates.

Contact Information

For privacy-related questions:

  • GitHub Issues: Report concerns through our public repository
  • Documentation: Refer to our technical documentation for architecture details

Compliance

This privacy policy is designed to comply with:

  • Apple App Store Guidelines
  • General Data Protection Regulation (GDPR)
  • California Consumer Privacy Act (CCPA)
  • Children's Online Privacy Protection Act (COPPA)

Since we don't collect personal data, compliance is achieved through our privacy-by-design architecture.


Summary: Bastion Chat is built on the principle that your conversations, documents, and personal data should remain private and under your control. Our local-first architecture ensures your privacy is protected by design, not just by policy.

Your AI, Your Data, Your Device.

Acknowledgments & Third-Party Licenses

Bastion Chat makes use of several open-source libraries and AI models. We gratefully acknowledge the contributions of these projects and their maintainers.

Swift Package Dependencies

NetworkImage

Repository: https://github.com/gonzalezreal/NetworkImage

License: MIT License

Purpose: Efficient image loading and caching

Author: Guille Gonzalez

SwiftSoup

Repository: https://github.com/scinfu/SwiftSoup

License: MIT License

Purpose: HTML parsing for web content ingestion

Author: Nabil Chatbi

swift-markdown-ui

Repository: https://github.com/gonzalezreal/swift-markdown-ui

License: MIT License

Purpose: Markdown rendering in SwiftUI

Author: Guille Gonzalez

swift-atomics

Repository: https://github.com/apple/swift-atomics.git

License: Apache License 2.0

Purpose: Atomic operations for thread-safe programming

Author: Apple Inc.

swift-cmark

Repository: https://github.com/swiftlang/swift-cmark

License: BSD 2-Clause License (cmark), see repository for bundled components

Purpose: CommonMark parsing

Author: John MacFarlane and the Swift Project Authors

MCP Swift SDK

Repository: https://github.com/modelcontextprotocol/swift-sdk

License: Apache License 2.0 (some earlier contributions remain under the MIT License)

Purpose: Model Context Protocol client for optional external tools

Author: Model Context Protocol contributors

EventSource

Repository: https://github.com/mattt/eventsource

License: MIT License

Purpose: Server-sent events for MCP connections

Author: Mattt

swift-nio

Repository: https://github.com/apple/swift-nio

License: Apache License 2.0

Purpose: Networking primitives used by the MCP SDK

Author: Apple Inc.

swift-log, swift-collections, swift-system

Repositories: swift-log, swift-collections, swift-system

License: Apache License 2.0

Purpose: Logging, data structures and system interfaces

Author: Apple Inc.

Core Inference Engine

AI Models & Licensing

Important: The following AI models are available for download through Bastion Chat. Users are responsible for compliance with individual model licenses.

Qwen Models

Models: Qwen2.5-0.5B-Instruct, Qwen3-1.7B, Qwen3-4B, Qwen3.5-2B, Qwen3.5-4B, Qwen3.5-9B, Qwen3.6-27B

License: Apache License 2.0

Provider: Alibaba Cloud (Qwen team)

License URL: View License

Gemma 4 Models

Models: Gemma 4 E2B, E4B, 12B, 26B-A4B and 31B (instruction-tuned)

License: Apache License 2.0

Provider: Google LLC

License URL: View License

Gemma 3 Models

Models: Gemma 3 270M, 1B and 4B (instruction-tuned)

License: Gemma Terms of Use

Provider: Google LLC

License URL: View License

Llama Models

Models: Llama-3.2-1B-Instruct, Llama-3.2-3B-Instruct

License: Llama 3.2 Community License Agreement

Provider: Meta Platforms, Inc.

License URL: View License

Hermes Models

Models: Hermes-3-Llama-3.2-3B, DeepHermes-3-Llama-3-3B-Preview

License: Llama 3 Community License (fine-tunes of Llama 3.2, subject to the base model license)

Provider: Nous Research

License URL: View License

Phi Models

Models: Phi-4-mini-instruct

License: MIT License

Provider: Microsoft Corporation

License URL: View License

LLaVA-Phi-3-mini

Models: llava-phi-3-mini (vision)

License: No license declared on the model card — see the repository before use

Provider: XTuner

License URL: View License

LFM Models

Models: LFM2-1.2B, LFM2.5-1.2B-Instruct

License: LFM Open License v1.0

Provider: Liquid AI

License URL: View License

SmolLM3

Models: SmolLM3-3B

License: Apache License 2.0

Provider: Hugging Face

License URL: View License

Jan

Models: Jan-v1-4B

License: Apache License 2.0

Provider: Menlo Research (Jan)

License URL: View License

Lucy

Models: Lucy-128k

License: Apache License 2.0 (based on Qwen3-1.7B)

Provider: Menlo Research

License URL: View License

Bonsai

Models: Bonsai-27B (experimental)

License: Apache License 2.0 (based on Qwen3.6-27B)

Provider: Prism ML

License URL: View License

Licenses as declared on each model's Hugging Face page, checked October 13, 2026. Models you import yourself (any GGUF file) are subject to their own licenses.

BERT Model for Embeddings

all-MiniLM-L6-v2

License: Apache License 2.0

Provider: Microsoft Corporation / Hugging Face

Repository: sentence-transformers/all-MiniLM-L6-v2

Purpose: Semantic embeddings for document search

Usage: Local embedding generation for RAG functionality

License URL: View License

Model Usage Terms

Important Notes for Users:

  1. Model Downloads: Models are downloaded directly from their respective repositories
  2. License Compliance: Users must comply with individual model licenses
  3. Commercial Use: Check specific model licenses for commercial usage terms
  4. Attribution: Some models may require attribution in commercial applications
  5. Redistribution: Bastion Chat does not redistribute models; they are downloaded on-demand

The user is solely responsible for ensuring compliance with all applicable licenses when using AI models through Bastion Chat. The app facilitates access to these models but does not grant any additional rights beyond those specified in the original model licenses.

Additional Technologies

SQLite

License: Public Domain

Purpose: Local database storage

Website: https://sqlite.org/

Apple Frameworks

Frameworks: SwiftUI, Foundation, Combine, AVFoundation, Speech, CoreML

License: Apple Software License Agreement

Provider: Apple Inc.

Purpose: iOS app development and system integration

Last Updated: October 13, 2026

Bastion Chat Version: 1.1.0

We are grateful to all open-source contributors who make projects like Bastion Chat possible.