¿Cómo extraer tus subrayados de reMarkable y enviarlos a Anki? [prompts de IA & github]
En Kindle, puedes exportar muy fácilmente los pasajes subrayados, pero no es el caso en reMarkable.
He usado CODEX para crear una interfaz web local donde puedo seleccionar mis archivos (epub/PDF) de reMarkable, extraer los subrayados y enviarlos a Anki. Aquí está la interfaz:

Puedes ver que se puede:
- exportar los subrayados de un documento a un mazo de ANKI
- agrupar los subrayados de varios archivos en un mazo de ANKI
- los subrayados que se extienden a lo largo de varias líneas se agrupan y se consideran como un solo subrayado
Todo se exporta directamente a ANKI mediante Anki Connect. Solo hace falta que la app Anki esté instalada y abierta en Windows. Luego, los mazos se sincronizarán con Ankiweb. Para cada tarjeta, ves el pasaje subrayado en el anverso, y en el reverso, su contexto (una frase antes, una frase después).

Si el mismo archivo tiene nuevos subrayados, las antiguas tarjetas de ANKI no se eliminarán, solo se añadirán los nuevos subrayados.
El repositorio de GitHub está disponible aquí: https://github.com/tdm5c/remarkable-highlights-to-anki
Si no quieres exportar los subrayados a ANKI, también es posible, solo tienes que pedirle a CODEX que los exporte a un archivo .html o .txt o a Google Docs… (como quieras). Te daré ejemplos de prompts para que puedas divertirte y crear tu propia herramienta.
Acceso SSH
Para obtener los accesos SSH a tu reMarkable, enciende tu reMarkable, activa el Wifi, y ve a HELP => Copyrights and licenses, lee las instrucciones, conecta el cable USB al ordenador, autoriza el acceso SSH, y luego recupera la dirección MAC así como la contraseña.
Para reMarkable Paper Pro, hay que activar el Developer Mode antes de hacer todo esto. El Developer Mode hará un reset de la tableta, pero no perderás documentos, solo tendrás que vincular la tableta a la cuenta de reMarkable para recuperar los documentos sincronizados.
Lamento si no puedo ser más clara, este artículo va dirigido un poco a los geeks. Más información
Prompt 1 – Interfaz de reMarkable a Anki
Copia y pega el bloque de abajo en tu herramienta de IA/desarrollo. Los placeholders entre corchetes sirven para mostrar dónde se configurarán estos valores localmente.
Tu es un agent de developpement senior. Je veux que tu construises une interface web locale et un pipeline deterministe pour exporter mes highlights reMarkable vers Anki. Contexte local a adapter ------------------------ - Dossier de travail: [CHEMIN PROJET LOCAL ICI] - Interface web locale souhaitee: http://[ADRESSE IP LOCALE]:8787 - URL AnkiConnect: http://[ADRESSE IP ANKI CONNECT]:8765 - Add-on AnkiConnect: 2055492159 - reMarkable SSH user: root - reMarkable SSH port: 22 - reMarkable MAC: a garder dans .env.local, pas dans le prompt - Mot de passe SSH reMarkable: a garder dans .env.local, pas dans le prompt Regles de securite ------------------ - Ne demande pas les vrais acces dans le prompt. - Ne stocke jamais le mot de passe reMarkable dans le code source, le README ou les notes Markdown. - Cree un fichier .env.local git-ignore pour les secrets locaux. - Mets les vrais acces uniquement dans .env.local, par exemple: RM_REMARKABLE_MAC=[ADRESSE MAC ICI] RM_SSH_PASSWORD=[MOT DE PASSE SSH ICI] ANKI_CONNECT_URL=http://[ADRESSE IP ANKI CONNECT]:8765 - Ne modifie jamais les fichiers sur le reMarkable, sauf demande explicite. - Utilise SSH uniquement pour lire/copier les donnees depuis le reMarkable. - N'utilise pas d'OCR. - N'utilise pas d'API IA ni de tokens IA pour extraire les highlights. - L'extraction doit etre locale, deterministe et relancable. Objectif fonctionnel -------------------- Construire un outil local qui: 1. decouvre l'adresse IP actuelle du reMarkable a partir de RM_REMARKABLE_MAC, car DHCP peut changer l'IP; 2. liste les documents PDF/EPUB disponibles sur le reMarkable; 3. copie localement les fichiers necessaires; 4. extrait les highlights; 5. cree ou met a jour les cartes Anki via AnkiConnect; 6. synchronise AnkiWeb apres la mise a jour, sauf option de desactivation. Extraction des highlights ------------------------- - Une annotation continue sur plusieurs lignes ou pages doit devenir un seul highlight. - Si du texte source non surligne se trouve entre deux fragments, ce sont deux highlights distincts. - Preserve l'ordre document: ordre des pages, puis ordre d'apparition sur la page. - Pour les PDF/EPUB, prefere le texte du document source quand disponible; utilise les donnees .rm comme ancres. - Pour les EPUB copies depuis reMarkable, prefere le PDF sidecar rendu pour l'alignement, car les pages .rm correspondent a cette pagination. - La citation/front ne doit jamais etre etendue pour completer un mot ou une phrase. - Le verso peut contenir du contexte: exactement une phrase precedente non-titre + phrase contenant le highlight avec le highlight en gras + exactement une phrase suivante non-titre. Integration Anki ---------------- - Par defaut, cree un deck Anki par document reMarkable, nomme exactement comme le document. - Cree une carte Anki par highlight. - Recto: citation/highlight exact. - Verso: highlight en contexte quand disponible. - Utilise des IDs stables pour que les reruns mettent a jour les notes existantes et ajoutent seulement les nouveaux highlights. - Supprime les notes Anki obsoletes pour le meme UUID de document quand l'ensemble stable de highlights change. - Apres sync locale Anki, repositionne seulement les nouvelles cartes dans l'ordre d'apparition du document. - Ne modifie pas la planification des cartes deja revues/apprises. - Si AnkiConnect est inaccessible, demarre Anki Desktop automatiquement et attends que la collection soit disponible. - Apres mise a jour locale Anki, lance AnkiWeb sync automatiquement, sauf option --no-sync-ankiweb. - Pour les gros documents, utilise des appels AnkiConnect par lots afin d'eviter les blocages. Interface web locale -------------------- Construis une interface web locale simple et efficace: - affichage par defaut: les 10 derniers documents PDF/EPUB; - choix 10/20/30/tous; - recherche uniquement sur Entree ou clic sur la loupe, pas a chaque frappe; - bouton Actualiser qui relance la detection/liste et les retries SSH; - si le reMarkable est en veille, affiche un message clair demandant de reveiller la tablette puis de reessayer; - tri: recent, nom A-Z, nom Z-A, PDF d'abord, EPUB d'abord; - multi-selection de documents; - bouton "Tout selectionner"; - les documents selectionnes doivent rester visibles/pinnes meme si une recherche ou un tri les masquerait; - l'export multi-documents doit suivre l'ordre actuellement affiche, pas l'ordre des clics; - option supplementaire "Deck unique" disponible seulement si plusieurs fichiers sont selectionnes; - si "Deck unique" est active, envoyer tous les highlights selectionnes dans un meme deck Anki dont le nom est configurable; - sinon garder un deck par document; - afficher les etapes de l'export en direct; - afficher les erreurs et le journal en direct dans l'interface, sans rester bloque sur "running"; - en cas d'erreur, marquer le document courant comme error et afficher le message exploitable. CLI attendue ------------ Prevois aussi une CLI: - --list pour lister les documents; - --document pour exporter un document precis; - --all pour exporter tous les documents PDF/EPUB avec highlights; - --no-anki pour tester sans modifier Anki; - --no-sync-ankiweb pour desactiver la sync AnkiWeb; - --single-deck et --single-deck-name pour exporter plusieurs documents dans un seul deck; - --host pour forcer une IP reMarkable si necessaire; - --mac pour forcer une MAC; - --no-discover pour ne pas faire la detection par MAC. Livrables attendus ------------------ - Code source complet. - README avec commandes d'installation et d'utilisation. - Fichier de notes projet Markdown expliquant les decisions et limites. - .gitignore qui exclut .env.local, caches, exports temporaires et secrets. - Interface web locale lancee sur http://[ADRESSE IP LOCALE]:8787. - Tests ou checks minimaux montrant que: - l'extraction ne depend pas d'OCR; - les highlights restent dans l'ordre; - les reruns ne dupliquent pas les cartes; - les erreurs web sont visibles dans l'interface. Contraintes importantes ----------------------- - Ne jamais afficher mes secrets dans les logs, README ou reponses finales. - Si un secret est necessaire, utilise un placeholder ou une variable d'environnement. - Garde l'outil local, reproductible et comprehensible. - Avant de terminer, verifie la syntaxe, lance les tests disponibles, puis donne les commandes exactes pour demarrer l'interface.
Instrucción 2: Extracción de reMarkable a archivos TXT
Copia y pega el bloque siguiente en tu herramienta de IA/desarrollo. Los marcadores entre corchetes sirven para indicar dónde se configurarán estos valores localmente.
Eres un agente de desarrollo senior. Quiero que construyas una interfaz web local y un pipeline determinista para extraer mis subrayados de reMarkable y guardarlos en archivos .txt. No quiero exportación a Anki en esta versión.
Contexto local para adaptar
------------------------
- Carpeta de trabajo: [RUTA DEL PROYECTO LOCAL AQUÍ]
- Interfaz web local deseada: http://[DIRECCIÓN IP LOCAL]:8787
- Usuario SSH de reMarkable: root
- Puerto SSH de reMarkable: 22
- MAC de reMarkable: se guarda en .env.local, no en la instrucción
- Contraseña SSH de reMarkable: se guarda en .env.local, no en la instrucción
Reglas de seguridad
------------------
- No pidas los accesos reales en la instrucción.
- No guardes nunca la contraseña de reMarkable en el código fuente, el README ni las notas Markdown.
- Crea un archivo .env.local ignorado por git para los secretos locales.
- Pon los accesos reales solo en .env.local, por ejemplo:
RM_REMARKABLE_MAC=[DIRECCIÓN MAC AQUÍ]
RM_SSH_PASSWORD=[CONTRASEÑA SSH AQUÍ]
- No modifiques nunca los archivos en el reMarkable, salvo petición explícita.
- Usa SSH solo para leer/copiar datos desde el reMarkable.
- No uses OCR.
- No uses APIs de IA ni tokens de IA para extraer los subrayados.
- La extracción debe ser local, determinista y relanzable.
- No muestres nunca mis secretos en los logs, README o respuestas finales.
Objetivo funcional
--------------------
Construir una herramienta local que:
1. descubra la dirección IP actual del reMarkable a partir de RM_REMARKABLE_MAC, ya que DHCP puede cambiar la IP;
2. liste los documentos PDF/EPUB disponibles en el reMarkable;
3. copie localmente los archivos necesarios;
4. extraiga los subrayados;
5. escriba los resultados en archivos .txt locales.
Extracción de subrayados
-------------------------
- Una anotación continua en varias líneas o páginas debe convertirse en un solo subrayado.
- Si hay texto fuente no subrayado entre dos fragmentos, son dos subrayados distintos.
- Conserva el orden del documento: orden de páginas, luego orden de aparición en la página.
- Para PDF/EPUB, prefiere el texto del documento fuente cuando esté disponible; usa los datos .rm como anclas.
- Para EPUB copiados desde reMarkable, prefiere el PDF sidecar renderizado para la alineación, porque las páginas .rm corresponden a esa paginación.
- La cita extraída nunca debe ampliarse para completar una palabra o frase.
- No deduzcas texto con IA. Si un alineamiento falla, indícalo claramente en el registro.
Formato de las salidas .txt
-----------------------
Escribe un archivo .txt por documento en una carpeta local, por ejemplo:
exports/remarkable_txt/[NOM_DU_DOCUMENT].txt
Cada archivo debe contener:
- título del documento;
- UUID del documento si está disponible;
- fecha de exportación local;
- número total de highlights;
- lista de highlights en el orden del documento.
Formato recomendado para cada highlight:
---
Highlight 001
Página: [PÁGINA SI ESTÁ DISPONIBLE]
Texto:
[TEXTO EXACTO DEL HIGHLIGHT]
---
Interfaz web local
--------------------
Construye una interfaz web local simple y eficaz:
- visualización por defecto: los 10 últimos documentos PDF/EPUB;
- opción 10/20/30/todos;
- búsqueda solo al pulsar Enter o al hacer clic en la lupa, no en cada tecla;
- botón Actualizar que relanza la detección/lista y los reintentos SSH;
- si el reMarkable está en reposo, muestra un mensaje claro pidiendo despertar la tableta y luego reintentar;
- orden: recientes, nombre A-Z, nombre Z-A, PDF primero, EPUB primero;
- multi-selección de documentos;
- botón "Seleccionar todo";
- los documentos seleccionados deben permanecer visibles/fijados aunque una búsqueda u orden los oculte;
- la exportación multi-documento debe seguir el orden actualmente mostrado, no el orden de los clics;
- botón "Exportar en TXT";
- mostrar la ruta de los archivos .txt generados;
- mostrar los pasos de la exportación en directo;
- mostrar los errores y el registro en directo en la interfaz, sin quedarse bloqueado en "running";
- en caso de error, marcar el documento actual como error y mostrar el mensaje aprovechable.
CLI esperada
------------
Prevé también una CLI:
- --list para listar los documentos;
- --document para exportar un documento concreto;
- --all para exportar todos los documentos PDF/EPUB con highlights;
- --output-dir para elegir la carpeta de salida .txt;
- --host para forzar una IP reMarkable si es necesario;
- --mac para forzar una MAC;
- --no-discover para no hacer la detección por MAC.
Entregables esperados
------------------
- Código fuente completo.
- README con comandos de instalación y uso.
- Archivo de notas del proyecto en Markdown que explique las decisiones y limitaciones.
- .gitignore que excluya .env.local, cachés, exportaciones temporales y secretos.
- Interfaz web local ejecutada en http://[DIRECCIÓN IP LOCAL]:8787.
- Pruebas o verificaciones mínimas que demuestren que:
- la extracción no depende de OCR;
- los resaltados permanecen en orden;
- los archivos .txt se pueden recrear sin duplicados;
- los errores web son visibles en la interfaz.
Restricciones importantes
-----------------------
- No mostrar nunca mis secretos.
- Si es necesario un secreto, utiliza un marcador de posición o una variable de entorno.
- Mantén la herramienta local, reproducible y comprensible.
- Antes de terminar, verifica la sintaxis, ejecuta las pruebas disponibles y luego da los comandos exactos para iniciar la interfaz y exportar los archivos .txt.