ReadAware

Système de plugins

Les plugins ReadAware composent les capacités exposées par l’hôte de bureau. Ils peuvent travailler avec les livres, l’état de lecture, les annotations, les conversations et la mémoire ; ajouter des actions et des fournisseurs ; et utiliser des services hôte limités.

Cette référence suit le code source de développement. Faites correspondre les exigences de capacités à votre application installée avant de créer ou de publier un plugin.

Choisir une famille de capacités

FamilleUtilisationExemples
DomainesDonnées et comportements appartenant à ReadAwareBibliothèque, lecture, annotations, conversations, réglages, mémoire
ContributionsNouvelles actions, options ou implémentations de fournisseursCommandes, actions de contexte, voix, sources de contenu, outils d’assistant, thèmes
ServicesOpérations de l’hôte et fonctions privées des pluginsRessources, réseau, inférence, stockage, planification, tâches, transactions
SchémasDonnées rendues ou interprétées par l’hôteVues, formulaires de réglages, thèmes

Utilisez l’Explorateur de capacités pour rechercher les méthodes réelles, comprendre les limites et commencer un manifeste. La référence de l’API explique comment les familles se composent.

Partir de la tâche du lecteur

  • Trouver et naviguer : utilisez la recherche de source et les lectures par plage de Library, puis la navigation de Reading avec la garde de session actuelle.
  • Collecter et relire des notes : interrogez ou observez Annotations ; les mutations conditionnelles préservent les modifications plus récentes.
  • Travailler avec la mémoire de lecture : utilisez les requêtes Memory et les commandes autorisées pour les mémoires, la classification, les profils, les entités, les graphes et les lots de contexte.
  • Aider une conversation : lisez les transcriptions et résumés autorisés, proposez un tour à l’approbation de l’hôte ou enregistrez un outil d’assistant.
  • Automatiser un workflow : combinez la planification, les curseurs de changements limités, les tâches durables prises en charge et les transactions locales.
  • Importer du contenu externe : utilisez l’accès réseau limité à une origine, les fournisseurs de contenu et les ressources scellées, plutôt que des échappatoires vers le système de fichiers ou le navigateur.

Permissions, versions et autorisations d’objet

Ces contrôles sont distincts :

  1. requires déclare les versions compatibles des capacités.
  2. permissions, settingsAccess et networkAccess déclarent l’autorité.
  3. L’autorisation de livre de l’utilisateur limite l’acteur à tous les livres, au livre courant ou à un livre donné.
  4. Le cycle de vie et les conditions d’exécution actuelles déterminent si une opération précise est disponible.

Un service sans permission peut tout de même exiger une autorisation d’un autre domaine pour une méthode donnée. Une requête d’accessibilité réussie est un indice, pas une permission de contourner le contrôle d’exécution.

Interfaces rendues par l’hôte

Les plugins renvoient des vues structurées et des callbacks. ReadAware prend en charge le rendu, le focus, la navigation, les états de chargement et d’erreur, les thèmes et le nettoyage. Les vues peuvent contenir des listes, formulaires, mises en page détaillées et blocs limités, avec des mises à jour en direct selon le contrat public des vues.

Les plugins ne montent ni React, ni HTML arbitraire, ni CSS, ni iframe, ni DOM. Utilisez un point de contribution pris en charge pour tout nouveau comportement d’interface.

Isolation et cycle de vie

Chaque plugin s’exécute dans un Worker de module. Il ne reçoit aucun accès direct à Tauri, SQLite, au système de fichiers, aux processus ou au DOM. Le réseau et le stockage utilisent le contexte médié par l’hôte.

L’activation met en attente les enregistrements et autorise les lectures prises en charge ; les écritures métier et effets externes commencent depuis les gestionnaires actifs. Une migration de données privées s’exécute avec une autorité limitée au stockage. Une activation ou migration échouée est annulée avant qu’un candidat ne remplace le runtime actuel.

L’installation reste une décision de confiance logicielle. Examinez la source du paquet, l’autorité demandée, les destinations réseau et le traitement des données.

Apprendre des plugins de première partie

L’arborescence source contient des exemples fonctionnels tels que Jumper, Dictionary et Sentence Reader, ainsi que des plugins intégrés. Les exemples source ne garantissent pas que chaque paquet sera livré dans chaque version.

Créer un plugin · Référence de l’API · Publication