ReadAware

Sistema de plugins

Los plugins de ReadAware combinan las capacidades que expone el host de escritorio. Pueden trabajar con libros, estado de lectura, anotaciones, conversaciones y memoria; añadir acciones y proveedores; y usar servicios del host con límites definidos.

Esta referencia sigue el código fuente de desarrollo. Antes de crear o publicar un plugin, comprueba que los requisitos de capacidades sean compatibles con tu aplicación instalada.

Elige una familia de capacidades

FamiliaÚsala paraEjemplos
DominiosDatos y comportamiento propios de ReadAwareBiblioteca, lectura, anotaciones, conversaciones, ajustes, memoria
ContribucionesNuevas acciones, opciones o implementaciones de proveedoresComandos, acciones de contexto, voces, fuentes de contenido, herramientas del asistente, temas
ServiciosOperaciones del host y recursos privados del pluginRecursos, red, inferencia, almacenamiento, programaciones, trabajos, transacciones
EsquemasDatos que el host renderiza o interpretaVistas, formularios de ajustes, temas

Usa el Explorador de capacidades para buscar métodos reales, entender los límites y comenzar un manifest. La referencia de la API explica cómo se combinan las familias.

Empieza por la tarea del lector

  • Buscar y navegar: usa la búsqueda del texto de origen y las lecturas de rangos de Library; después usa la navegación de Reading con la protección de la sesión actual.
  • Recopilar y revisar notas: consulta u observa Annotations; las mutaciones condicionales conservan las ediciones más recientes.
  • Trabajar con la memoria de lectura: usa las consultas y comandos autorizados de Memory para memorias, clasificación, perfiles, entidades, grafos y paquetes de contexto.
  • Ayudar en una conversación: lee transcripciones y resúmenes autorizados, propone un turno para aprobación del host o registra una herramienta del asistente.
  • Automatizar un flujo: combina schedules, cursores de cambios con ámbito, jobs duraderos compatibles y transacciones locales.
  • Traer contenido externo: usa acceso de red limitado por origen, proveedores de contenido y recursos sellados en lugar de atajos al sistema de archivos o al navegador.

Permisos, versiones y permisos de objetos

Son comprobaciones independientes:

  1. requires declara versiones compatibles de las capacidades.
  2. permissions, settingsAccess y networkAccess declaran la autoridad.
  3. El permiso de libros del usuario limita al actor a todos los libros, al libro actual o a un libro especificado.
  4. El ciclo de vida y las condiciones actuales del entorno determinan si una operación concreta está disponible ahora.

Un servicio sin permisos adicionales puede requerir aun así otro permiso de dominio para un método específico. Una consulta de disponibilidad correcta es una indicación, no permiso para eludir la comprobación de ejecución.

Interfaces renderizadas por el host

Los plugins devuelven vistas estructuradas y callbacks. ReadAware controla el renderizado, el foco, la navegación, los estados de carga y error, los temas y la limpieza. Las vistas pueden incluir listas, formularios, diseños de detalle y bloques acotados, con actualizaciones en vivo mediante el contrato público de vistas.

Los plugins no montan React, HTML, CSS arbitrario, iframes ni un DOM. Usa un punto de contribución compatible para añadir comportamiento de interfaz.

Aislamiento y ciclo de vida

Cada plugin se ejecuta en un Worker de módulo. No recibe acceso directo a Tauri, SQLite, al sistema de archivos, a procesos ni al DOM. La red y el almacenamiento pasan por el contexto mediado por el host.

La activación prepara los registros y permite lecturas compatibles; las escrituras de negocio y los efectos externos comienzan desde handlers activos. Una migración de datos privados se ejecuta con autoridad exclusiva de almacenamiento. La activación o migración fallida se revierte antes de que un candidato sustituya al entorno actual.

La instalación sigue siendo una decisión de confianza en el software. Revisa el código del paquete, la autoridad solicitada, los destinos de red y el tratamiento de los datos.

Aprende de los plugins propios

El árbol de fuentes contiene ejemplos funcionales como Jumper, Dictionary y Sentence Reader, junto con plugins incluidos. Los ejemplos de código no garantizan que cada paquete se distribuya en todas las versiones.

Crea un plugin · Referencia de la API · Publicación