1. Aperçu
Calíope (« l'App ») est un client natif pour MariaDB, MySQL, Amazon Aurora, PostgreSQL et SQL Server, avec des éditeurs pour les fichiers SQLite et DuckDB locaux et un ensemble d'outils MongoDB, développé par David Villalobos Cambronero (« je », « moi »). La présente politique de confidentialité explique à quelles informations l'App accède, comment elles sont traitées et quels sont vos droits en tant qu'utilisateur. Calíope est une seule app sur tous les écrans où elle tourne — Mac, iPad, iPhone, Apple Watch, Apple TV et Apple Vision Pro —, installée depuis une seule page de l'App Store, et la présente politique les couvre tous.
La version courte : Calíope ne collecte, ne transmet ni ne partage vos données personnelles ou le contenu de vos bases de données avec le développeur ou tout tiers, sauf dans le cadre de la fonctionnalité facultative d'assistant IA décrite ci-dessous.
2. Aucun serveur, aucun compte
Calíope n'a pas de backend. Il n'existe aucun serveur de mon côté ni aucun compte utilisateur : rien à créer, nulle part où se connecter. Les mots de passe de vos bases de données sont enregistrés dans le Keychain de votre appareil, via le framework Security d'Apple, et y restent. Si vous activez la synchronisation iCloud Keychain, c'est un choix explicite que vous faites dans les préférences de Calíope, et la synchronisation est assurée par le système d'Apple ; je ne vois jamais ces identifiants. Un seul bouton, Supprimer toutes mes données (Préférences › Général), supprime ce que Calíope conserve aux six endroits, sur cet appareil et dans iCloud ; la section 13 les énumère. L'app s'exécute dans le bac à sable de l'App Store. Dit simplement : Calíope n'a nulle part où envoyer vos identifiants, parce qu'il n'existe aucune infrastructure de mon côté pour les recevoir.
3. Informations stockées localement sur votre appareil
L'App stocke les données suivantes exclusivement sur votre appareil :
- Identifiants de bases de données et profils de connexion : les noms d'hôte, ports, noms d'utilisateur et mots de passe du serveur sont stockés dans le Keychain sécurisé du système (via le framework Security d'Apple). Les mots de passe ne sont jamais stockés en clair et ne sont jamais transmis au développeur. Par défaut, les entrées du Keychain restent sur l'appareil — la synchronisation avec iCloud Keychain est une option explicite à activer.
- Historique des requêtes SQL : un journal des requêtes exécutées est enregistré localement dans une base SQLite privée sur votre appareil. Ces données ne quittent jamais votre machine sauf si vous activez explicitement la synchronisation iCloud.
- Préférences de l'App : les paramètres tels que les thèmes visuels, la configuration de l'éditeur et la planification des sauvegardes sont stockés localement dans UserDefaults.
- Sauvegardes planifiées : les fichiers SQL de sauvegarde sont écrits directement dans un dossier que vous choisissez explicitement sur votre système de fichiers local. Aucun contenu de sauvegarde ne m'est envoyé.
- Rapport d'utilisation (désactivé au départ) : si vous l'activez dans Préférences › Général › Confidentialité et diagnostics, Calíope conserve sur votre appareil un fichier JSON lisible contenant les compteurs des outils que vous ouvrez, les erreurs survenues regroupées avec leur nombre, ainsi que la version de l'app, la plateforme, le système d'exploitation et le modèle de l'appareil. Il ne contient ni le texte de vos requêtes, ni mots de passe, ni informations de connexion. Il n'est jamais envoyé nulle part tout seul : il ne me parvient que si vous me l'envoyez par e-mail. Tant que l'interrupteur est désactivé, rien n'y est écrit.
- Journal d'erreurs de l'application (activé au départ) : Calíope consigne les défaillances de l'app elle-même dans une base SQLite privée de votre appareil, conservée 90 jours sauf modification de votre part, pour que vous puissiez les consulter dans les Préférences. Le copier vers votre propre iCloud est un interrupteur distinct, désactivé au départ ; tant qu'il l'est, le journal ne quitte pas l'appareil.
4. Synchronisation iCloud (facultative)
Si vous activez la synchronisation iCloud, l'App utilise le conteneur de Calíope dans votre iCloud Drive, l'iCloud Key-Value Store et la base de données privée CloudKit pour synchroniser certaines données (profils de connexion, snippets, sauvegardes planifiées et, en option, le journal de requêtes) entre vos appareils connectés au même Apple ID.
Les mots de passe des bases de données ne sont jamais inclus dans la synchronisation iCloud par défaut. Si vous choisissez d'activer la synchronisation iCloud Keychain, cette opération est régie par le système sécurisé d'Apple et je ne vois jamais ces identifiants. Toutes les opérations de stockage et de synchronisation iCloud sont soumises à la politique de confidentialité d'Apple.
5. Fonctionnalité d'assistant IA (facultative)
Calíope inclut un assistant IA facultatif. Il peut fonctionner entièrement sur votre appareil (Apple Intelligence) ou sur une machine que vous contrôlez (Ollama), et alors rien ne va au-delà de la machine que vous lui indiquez — par défaut, la vôtre ; ou il peut utiliser un fournisseur cloud (OpenAI, Google Gemini, Anthropic Claude) avec votre propre clé d'API, et alors ce que vous envoyez relève de la politique de ce fournisseur. Lorsque vous choisissez d'utiliser cette fonctionnalité :
- Avec Apple Intelligence, rien ne quitte l'appareil ; avec Ollama, rien ne va au-delà de la machine que vous lui indiquez. Avec OpenAI, Gemini ou Claude, le schéma de la base de données active — noms de tables, colonnes et clés étrangères — part bien chez ce fournisseur, sous votre propre clé. Les lignes et les identifiants, jamais.
- Le texte SQL ou l'invite en langage naturel que vous soumettez est envoyé directement à OpenAI (politique de confidentialité), à Google Gemini (politique de confidentialité) ou à Anthropic Claude (politique de confidentialité), selon le fournisseur que vous avez configuré.
- L'App ne transmet pas les lignes réelles des bases de données, le contenu des tables ni les identifiants de connexion à ces services — uniquement le texte que vous saisissez et les métadonnées du schéma (noms des tables, noms des colonnes, clés étrangères) de la base de données active.
- Vous êtes seul(e) responsable de garantir que tout texte ou métadonnée envoyée à des services d'IA tiers respecte les politiques de traitement des données de votre organisation.
- L'assistant fonctionne dès le premier lancement, sur l'appareil. Là où le système propose Apple Intelligence, c'est le fournisseur d'origine, et rien ne quitte l'appareil. Rien ne part vers un fournisseur cloud tant que vous n'en choisissez pas un et ne collez pas votre propre clé d'API. Le schéma peut être retenu avec l'interrupteur « Envoyer le schéma au modèle ».
- Avec Apple Intelligence, rien ne quitte l'appareil. Avec Ollama, ce qui est envoyé — votre question et, si l'option du schéma est activée, les noms des tables, colonnes et clés étrangères — n'arrive qu'à cette adresse et pas plus loin.
- La dictée reste sur votre appareil. L'entrée vocale de l'assistant est reconnue uniquement sur l'appareil (
SpeechAnalyzer) : l'audio n'est envoyé ni aux serveurs d'Apple ni à moi, et aucun enregistrement n'est conservé. Si le modèle de dictée de votre langue n'est pas installé, Calíope refuse et vous le dit, plutôt que de transcrire via le réseau.
6. Serveur MCP (optionnel, macOS uniquement)
Calíope peut laisser un client IA tournant sur votre propre Mac — Claude Desktop, Cursor, tout ce qui parle MCP — interroger les connexions que vous cochez. C'est désactivé d'origine.
- Le serveur n'écoute que sur
127.0.0.1, exige une clé d'accès conservée dans le trousseau de votre Mac et ne tourne que tant que Calíope est ouverte. Rien n'est exposé à votre réseau ni à internet. - Il accepte des instructions en lecture seule, une par appel, sur les connexions cochées — le reste n'apparaît même pas — et les réponses sont plafonnées à 200 lignes.
- Ici, des lignes circulent. La réponse à une requête ce sont les données, et elles vont au client que vous avez configuré, sur cette même machine. Ce que ce client en fait ensuite — l'envoyer à son propre modèle dans le cloud, par exemple — est régi par ce client et sa politique de confidentialité, pas par Calíope.
- Tout ce qui s'exécute via MCP est écrit dans le journal local des requêtes, avec sa connexion et son résultat. Ce qui est rejeté n'atteint pas le serveur.
7. Calíope sur votre iPhone
Sur l'iPhone, Calíope est le client entier, disposé pour le téléphone : il se connecte à vos serveurs et exécute vos requêtes, et ce que vous gardez dans Calíope sur le Mac et l'iPad — profils de connexion, snippets SQL, historique des requêtes, conversations avec l'Assistant IA et journal d'erreurs de l'application — est déjà là, apporté par votre propre iCloud.
- Il se connecte à vos serveurs, et à eux seuls. Calíope sur le téléphone ouvre des connexions vers les serveurs MySQL, MariaDB, PostgreSQL, SQL Server ou MongoDB que vous configurez, directement ou via votre propre tunnel SSH, exactement comme sur le Mac et l'iPad. Vos données et vos résultats sont traités sur l'appareil et ne me sont jamais envoyés.
- Les mots de passe restent dans le trousseau de l'appareil qui les détient. Un profil de connexion synchronisé par iCloud ne contient que le moteur, l'hôte, le port, l'utilisateur et la base par défaut — jamais le mot de passe. Si vous activez la synchronisation du trousseau iCloud, cette opération est régie par le système sécurisé d'Apple et je ne vois jamais ces identifiants. Il en va de même pour les clés d'API des fournisseurs d'IA.
- Le transport est votre propre iCloud. Le téléphone lit et écrit le conteneur Calíope dans iCloud Drive ainsi que le stockage clé-valeur iCloud, sous votre propre compte Apple. Rien ne transite par un serveur qui m'appartient, car je n'en exploite aucun.
- Ni compte ni analytique. Aucune inscription, aucune connexion, aucun SDK d'analytique et aucun traceur tiers.
- Face ID en option. Si vous activez le verrouillage biométrique, il sert uniquement à déverrouiller l'app sur l'appareil. Aucune donnée biométrique ne m'est accessible ni transmise où que ce soit.
- Le mode démo n'enregistre rien. Les données d'exemple affichées ne vivent qu'en mémoire et ne sont ni écrites sur l'appareil ni envoyées.
- Effacement. Les Préférences comportent une option qui supprime ce que l'app conserve, sur le téléphone et dans iCloud, et indique ce qui a réellement été supprimé.
8. Calíope sur Apple TV et Apple Watch
Sur l'Apple TV et sur l'Apple Watch, Calíope affiche sur un écran plus grand ou plus petit ce qu'elle sait déjà : le téléviseur affiche l'état des serveurs que Calíope surveille pour vous, et la montre affiche les messages que Calíope publie pour vous. Aucune des deux n'est une app distincte : toutes deux arrivent avec Calíope, depuis la même page de l'App Store.
- Elles ne font que lire. Les deux lisent dans la base privée CloudKit de votre propre compte Apple, dans le conteneur
iCloud.org.caliope.caliope. Aucune n'y crée, n'y modifie ni n'y supprime quoi que ce soit. - Elles ne se connectent à aucune base de données. Aucune n'ouvre de connexion vers MySQL, MariaDB, PostgreSQL ou un autre serveur, et aucune n'exécute de requête.
- Elles ne voient aucun mot de passe. Les identifiants restent dans le trousseau du Mac, de l'iPad ou de l'iPhone qui les détient et ne font pas partie de ce qui est publié.
- Elles ne m'envoient rien. Aucune n'effectue de requête réseau en dehors de CloudKit d'Apple. Je n'exploite aucun serveur et ne reçois aucune donnée de votre Apple TV ni de votre Apple Watch.
- Aucun compte, aucune analyse, aucun suivi. Aucune n'a d'inscription ni de connexion, ni SDK d'analyse ou de publicité, ni suivi tiers d'aucune sorte.
- Ce qui reste sur l'appareil. Uniquement des préférences : sur l'Apple TV, la langue de l'interface, l'état du mode démonstration et le maintien de l'écran allumé ; sur l'Apple Watch, celles-ci plus les réglages de notification que vous choisissez (être alerté ou non, à quelle fréquence vérifier, à partir de quelle gravité et quels groupes afficher). Rien qui vous identifie.
- Les notifications de la montre sont locales. Elles sont programmées sur la montre elle-même, à partir de ce qu'elle a déjà lu. Il n'y a pas de serveur push, et demander à être alerté est un consentement distinct de demander à lire.
- Le mode démonstration ne stocke rien. Les serveurs et messages d'exemple qu'il affiche restent en mémoire uniquement.
9. Données que je ne collecte pas
Calíope ne :
- Collecte, ne trace ni n'agrège d'analyses, de télémétrie ou de comportement utilisateur sur un serveur à moi.
- Transmet le contenu de vos bases de données, schémas ni résultats de requêtes à un serveur à moi.
- Utilise de frameworks de tracking, d'identifiants publicitaires ni ne partage de données avec des annonceurs.
- Crée de comptes utilisateurs ni ne vous oblige à vous inscrire.
10. Confidentialité des mineurs
Calíope est un outil professionnel de bases de données non destiné aux enfants de moins de 13 ans (ou de l'âge applicable dans votre juridiction). Je ne collecte ni ne sollicite sciemment d'informations auprès de mineurs.
11. Sécurité des données
Tous les identifiants sensibles sont stockés dans le Keychain du système d'exploitation, protégés par les mécanismes natifs d'authentification de votre appareil (comme Face ID, Touch ID ou le code d'accès). Les connexions réseau à vos serveurs de base de données utilisent les identifiants que vous fournissez ; Calíope prend en charge SSL/TLS natif avec vérification stricte du certificat par défaut et le tunnel SSH (SwiftNIO avec des clés ed25519 et ECDSA) pour vous aider à sécuriser ces connexions.
12. Résumé des services tiers
| Service | Finalité | Déclencheur |
|---|---|---|
| Apple iCloud | Synchronisation des préférences et profils | Uniquement si l'utilisateur active la synchronisation iCloud dans les préférences |
| API OpenAI | Assistant SQL par IA | Uniquement si l'utilisateur configure la clé OpenAI et déclenche une invite |
| API Google Gemini | Assistant SQL par IA | Uniquement si l'utilisateur configure la clé Gemini et déclenche une invite |
| API Anthropic Claude | Assistant SQL par IA | Uniquement si l'utilisateur configure la clé Claude et déclenche une invite |
| Ollama (votre propre serveur) | Assistant SQL par IA, modèle local | Uniquement si l'utilisateur saisit une adresse Ollama et déclenche une invite ; elle n'atteint que cette adresse |
13. Vos droits
Comme je ne collecte pas de données personnelles sur un serveur à moi, il n'existe pas de données centralisées à demander, corriger ou supprimer. Le bouton Supprimer toutes mes données à l'intérieur de Calíope (Préférences › Général) supprime ce que Calíope conserve aux six endroits : sur cet appareil (profils de connexion, historique des requêtes, journal d’erreurs, historique de l’Assistant IA, télémétrie, cache du schéma, fichiers SQL récents, extraits et entrées du moniteur), dans le Trousseau (mots de passe, phrases secrètes SSH et clés API), dans iCloud Drive, dans le stockage clé-valeur d’iCloud, dans les enregistrements CloudKit et dans les données du widget. Cela concerne tous vos appareils, enregistre d’abord un point de restauration local sans mots de passe, et indique ce qui a été supprimé à chaque endroit. Supprimer l'App efface aussi ce qu'elle conserve sur cet appareil. Si vous avez des questions concernant les données stockées dans iCloud, les réglages iCloud d'Apple vous permettent de les gérer et de les supprimer.
14. Modifications de la présente politique
Je peux mettre à jour cette politique de confidentialité de temps à autre. La version mise à jour sera publiée à cette même URL avec une date de « Dernière mise à jour » révisée. L'utilisation continue de l'App après ces modifications constitue votre acceptation de la politique mise à jour.
15. Ce site web
caliope.org ne dépose aucun cookie et n'utilise ni outil d'analyse ni traceur. Il est servi par Amazon CloudFront avec la journalisation des accès désactivée : je ne conserve aucune trace de vos visites. Deux petites préférences restent dans le stockage local de votre navigateur et n'en sortent pas : la langue que vous avez choisie, et si vous avez coché J'ai installé Calíope dans l'Aide. La vidéo de démonstration de la page d'accueil est intégrée depuis youtube-nocookie.com et ne se charge que lorsque vous appuyez sur lecture ; à partir de là, c'est la politique de confidentialité de YouTube qui s'applique.
16. Contact
Si vous avez des questions ou des préoccupations concernant cette politique de confidentialité, écrivez-moi à :
support@caliope.org