ChatHarbor ("the App") is developed by David Edgar. This Privacy Policy explains how the App handles your information. The short version: ChatHarbor does not collect, store, or transmit any of your personal data to us.
How the App Works
ChatHarbor is a native macOS application that lets you chat with AI models from multiple providers — Ollama, LM Studio, OpenAI, Anthropic, Google Gemini, and other compatible servers. Apple Intelligence is available only in compatible source builds; it is not included in the v2.3.4 download. The App sends your messages directly to the provider you select and displays the response. ChatHarbor itself does not operate as an intermediary or relay.
Information We Do Not Collect
The App does not collect, track, or store any personal information on our servers, including but not limited to:
- Names, email addresses, or contact details
- Usage analytics or telemetry data
- Chat messages or conversation history (stored locally on your Mac only)
- Device identifiers or IP addresses
- Crash reports or diagnostic data
Local Data Storage
All conversations, messages, and settings are stored locally on your Mac. Specifically:
- Conversations and messages are persisted using SwiftData in your Application Support directory.
- Preferences (selected theme, default model, appearance mode, prompt templates) are stored in macOS UserDefaults.
- API keys are stored in macOS Keychain. Older custom-endpoint credentials are removed from UserDefaults after a successful migration to Keychain. If migration fails, the App retains the original credentials and displays an error so they are not lost.
Stored conversation history remains on your Mac. When you send a request, messages and relevant context (including Ship reference material or brainstorm entries) are sent to the selected provider. Exports are saved where you choose.
Cloud API Providers
When you use OpenAI, Anthropic, Google Gemini, or a remote custom endpoint, your messages and included context are sent directly from your Mac to the provider's API servers. These communications are governed by the respective provider's privacy policy and terms of service:
- OpenAI Privacy Policy
- Anthropic Privacy Policy
- Google Privacy Policy
- Custom endpoints follow the policies of the server operator you choose.
ChatHarbor has no control over and assumes no responsibility for the data practices of these third-party providers.
Local & On-Device Models
Downloaded models served locally by Ollama or LM Studio process requests on your Mac. A remote server or cloud-routed model receives the prompts you send it, even if its connection is labeled local. Apple Intelligence, when available in a compatible source build, processes model requests on device. Fetching URL reference material or downloading models still requires a network connection.
App Updates
Version 2.3.2 and later use Sparkle to check GitHub for updates, automatically while the app is running or when you choose Check for Updates. These requests expose ordinary connection information, such as your IP address and HTTP request metadata, to GitHub and its download infrastructure. They do not upload conversations or API keys. Sparkle system profiling is disabled. Each installation requires your approval. Turn automatic checks off in Settings → General → Updates. See GitHub’s privacy statement.
Deleting App Data
Use Settings → General → Data & Storage → Delete all ChatHarbor data for a full reset. After typing DELETE and choosing Delete & Quit, reopen the app to complete deletion. This removes all Harbors, conversations, Ships, brainstorms, saved templates, app preferences and caches, and app-owned Keychain credentials. Exports, backups, original reference files, provider copies, and local models remain. This is not secure SSD erasure. Read the reset guide.
Website Analytics
This website uses GoatCounter for visitor statistics. This is separate from the App, which does not include that website analytics script. See GoatCounter’s privacy policy.
Children's Privacy
ChatHarbor is not directed at children under the age of 13. Since the App does not collect any personal information from any user, there is no data to identify or address.
Changes to This Policy
We may update this Privacy Policy from time to time. Any changes will be posted on this page with an updated effective date. Your continued use of the App after any changes constitutes your acceptance of the new policy.
Contact
If you have any questions about this Privacy Policy, you can reach us at: