51 lines
2.4 KiB
Markdown
51 lines
2.4 KiB
Markdown
# Privacy
|
|
|
|
Linnet is designed for sensitive conversations. Medical appointments, HR discussions, legal calls, and family situations where the stakes of surveillance are real. Privacy is an architectural constraint, not a policy.
|
|
|
|
## Audio
|
|
|
|
**Audio never leaves your machine.** Transcription runs locally via Whisper. Tone annotation runs locally via a wav2vec2-based SER (speech emotion recognition) model. No audio is transmitted anywhere at any point.
|
|
|
|
This is true on the Free tier and the Paid tier.
|
|
|
|
## Session data
|
|
|
|
Session transcripts, tone timelines, speaker maps, and corrections are stored in a local SQLite database on your machine. The database location is configurable via `LINNET_DATA_DIR` in `.env`.
|
|
|
|
Linnet does not sync, back up, or transmit session data to CircuitForge servers or any third party.
|
|
|
|
## Telemetry
|
|
|
|
Linnet does not collect telemetry by default. No usage analytics, no crash reports, no feature tracking. The docs site uses [Plausible Analytics](https://plausible.io) (privacy-preserving, no cookies, no cross-site tracking) but the application itself does not.
|
|
|
|
## Correction data
|
|
|
|
Corrections you make to transcripts are stored in a local dataset and used to fine-tune your local Whisper checkpoint. Correction data is never uploaded to CircuitForge. Retraining happens entirely on your hardware.
|
|
|
|
## Translation
|
|
|
|
Translation is the only feature that contacts an external server. When you translate a session, transcript text (not audio) is sent to DeepL. DeepL's privacy policy governs how they handle that data.
|
|
|
|
If your conversations are sensitive enough that even text transmission is a concern, do not use translation.
|
|
|
|
## What CircuitForge receives
|
|
|
|
| Data type | Received by CF |
|
|
|-----------|---------------|
|
|
| Audio | Never |
|
|
| Transcript text | Never |
|
|
| Tone annotations | Never |
|
|
| Session metadata | Never |
|
|
| Correction data | Never |
|
|
| License key validation | Yes (key hash only, no session content) |
|
|
| Docs site visits | Yes (Plausible, aggregated, no PII) |
|
|
|
|
## Self-hosting and air-gapped use
|
|
|
|
Linnet is designed to run on your hardware without any outbound connections. For fully air-gapped operation:
|
|
|
|
- Pre-download the Whisper and wav2vec2 model weights during setup
|
|
- Set `DEEPL_API_KEY=` to blank (disables translation)
|
|
- Do not configure a license server endpoint
|
|
|
|
See the [air-gapped deployment guide](https://git.opensourcesolarpunk.com/Circuit-Forge/linnet) in the repo for full offline setup instructions.
|