Mit Fable ein reMarkable in Tom Riddles Tagebuch aus Harry Potter verwandeln
(github.com/MaximeRivest)- riddle ist eine App für das reMarkable Paper Pro, bei der mit dem Stift geschriebene Schrift nach kurzer Zeit verschwindet und eine Antwort wie in Tom Riddles Tagebuch in handschriftlichen Strichen wieder erscheint und anschließend verschwindet
- Der Ablauf: Stifteingaben werden erfasst, nach 2,8 Sekunden Inaktivität wird die Seite als PNG festgeschrieben, und ein Vision-LLM liest die Handschrift und streamt die Antwort satzweise
- Die Installation ist am einfachsten über remagic; alternativ sind ein vorgebautes Bundle oder ein Build aus dem Quellcode möglich, erfordern aber den Entwicklermodus des reMarkable Paper Pro und einen Launcher
- Die App läuft als root; im Takeover-Modus stoppt sie die Vendor-UI und steuert die E-Ink-Engine direkt. Getestet wurde nur auf reMarkable Paper Pro ferrari, aarch64, OS 3.26–3.27
- Als LLM-Backend kann eine OpenAI-kompatible
/chat/completions-API oder ein residenterpi --mode rpc-Prozess verwendet werden; Gerätemodifikationen und die Nutzung von Vendor-Bibliotheken erfolgen auf eigenes Risiko
Eine reMarkable-App, die wie Tom Riddles Tagebuch funktioniert
- riddle ist eine App für das reMarkable Paper Pro: Wenn man mit dem Stift auf eine Seite schreibt, verschwindet die Schrift nach kurzer Zeit, als würde sie ins Papier einsickern, und die Antwort erscheint Strich für Strich in fließender Handschrift
- Ziel ist ein Erlebnis, bei dem Tinte auf Papier erscheint, ohne Displaylicht, Tastatur oder Chat-UI
- Es handelt sich um die Tagebuch-App aus der Demo; genutzt wird sie, indem man an „Tom“ schreibt
Installation und Ausführung
- Bei der ersten Nutzung muss das reMarkable Paper Pro in den Entwicklermodus versetzt und ein Launcher installiert werden
- remagic führt durch Aktivierung des Entwicklermodus und Einrichtung der Umgebung mit einem einzigen Befehl
- remagic-Installationsbefehle:
remagic install riddle: lädt mit Prüfsummenprüfung herunter und installiert in AppLoadremagic config riddle: öffnet ein Konfigurationsformular im Browser und stellt auch einen QR-Code fürs Smartphone bereit
- Wenn xovi und AppLoad bereits vorhanden sind, kann die Installation über den remagic-Katalog, ein vorgebautes Bundle oder einen Build aus dem Quellcode erfolgen
- Nach der Installation in AppLoad auf Reload tippen, The Diary starten, schreiben und den Stift ruhen lassen
Installation des vorgebauten Bundles
- Aus dem neuesten Release
riddle-<version>.zipherunterladen und in einen Ordnerriddleentpacken - Den Ordner auf dem Tablet nach
/home/root/xovi/exthome/appload/kopieren oracle.env.examplenachoracle.envkopieren und inRIDDLE_OPENAI_KEYeinen OpenAI-kompatiblen API-Schlüssel eintragen- Wenn kein API-Schlüssel eingetragen wird, kann der
pi-Pfad verwendet werden - In AppLoad Reload ausführen und anschließend The Diary starten
Gerätemodifikation und unterstützter Umfang
- riddle verändert das Gerät und wird als root ausgeführt
- Im Takeover-Modus stoppt es die Vendor-UI und steuert die E-Ink-Engine direkt
- Getestet wurde ausschließlich auf reMarkable Paper Pro ferrari, aarch64, OS 3.26–3.27
- Auf anderen Modellen oder OS-Versionen funktioniert es möglicherweise nicht
- Es besteht keine Verbindung zu reMarkable AS; vor der Installation muss der SSH-Zugriff weiterhin möglich sein, damit ein Wiederherstellungspfad vorhanden ist
Interner Aufbau
- Eingaben werden über raw evdev erfasst, mit 4096 Druckstufen und der Ereignisrate der Hardware
- Wenn der Nutzer schreibt und dann 2,8 Sekunden pausiert, wird die Seite committet und in ein PNG umgewandelt
- Der residente LLM-Prozess oracle liest das PNG und streamt die Antwort satzweise
- Die Antwort wird mit der Schriftart Dancing Script gerastert, per Zhang-Suen Thinning in Ein-Pixel-Stiftpfade umgewandelt, nach Strichen verfolgt und anschließend animiert abgespielt
- Es gibt zwei Anzeige-Backends
- qtfb: eine AppLoad-App, die innerhalb von xochitl im Fenstermodus läuft
- quill: Full-Takeover-Modus, der xochitl stoppt und die Vendor-E-Ink-Engine direkt steuert
Repository-Struktur
riddle/ist eine Rust-App und enthält Stifteingabe, Ink Surface, Handschriftsynthese, den oracle-Prozessmanager und beide Anzeige-Backendsquill/ist ein Takeover-Display-Host in C/C++- quill legt über die Vendor-
libqsgepaper.so-Waveform-Engine einen QImage-Constructor-Interposition-Shim im Stil von epfb-re und stellt die C-ABIsquill_init,quill_buffer,quill_swapbereit - quill enthält außerdem den Latenztest
scribblesowie Demos für Karten-, Bild- und GIF-Rendering
Gesten
- Wenn man schreibt und den Stift ruhen lässt, absorbiert das Tagebuch die Tinte und Tom antwortet
- Dreht man den Marker um, funktioniert er als Radierer
- Ein großes ? ruft die eingebaute Anleitung auf
- Gleichzeitiges Tippen mit fünf Fingern beendet das Tagebuch
- Beim Drücken des Power-Buttons wird „The diary sleeps.“ auf der Seite angezeigt, danach wird das Tablet suspendiert; bei erneutem Drücken wacht es an derselben Stelle wieder auf
LLM-Backend
- Die Antwort wird von einem Vision-LLM erzeugt, das die committete Seite als Inline-PNG erhält und die Handschrift liest
- Beim Start wird eines von zwei Backends gewählt
-
OpenAI-kompatible API
- Wenn
RIDDLE_OPENAI_KEYgesetzt ist, werden Anfragen direkt an einen OpenAI-kompatiblen/chat/completions-Endpoint gesendet - Funktioniert mit Zielen, die dasselbe Format unterstützen, etwa OpenAI, OpenRouter, Groq oder lokalen Servern
- Beispiel für die Grundeinstellungen:
RIDDLE_OPENAI_KEY: erforderlichRIDDLE_OPENAI_BASE: optional, Standardwerthttps://api.openai.com/v1RIDDLE_OPENAI_MODEL: optional, Standardwertgpt-4o-mini, muss Bilder sehen könnenRIDDLE_OPENAI_REASONING: für Thinking-ModelleRIDDLE_OPENAI_MAX_TOKENS: Runaway-Guard- Bei Thinking-Modellen wie Gemini 3.x oder der o-Serie kann
RIDDLE_OPENAI_REASONING=lowgesetzt werden, um die Zeit bis zur ersten Tinte zu verkürzen - Einige Anbieter lehnen das Reasoning-Feld bei Non-Thinking-Modellen ab; in diesem Fall sollte es nicht gesetzt werden
- Hidden Reasoning Tokens zählen ebenfalls zu
RIDDLE_OPENAI_MAX_TOKENS; ein zu niedriges Limit kann daher die sichtbare Antwort zu knapp machen - Vor der Ausführung kann man mit
riddle --oracle-test path/to/handwriting.pngdie Streaming-Antwort prüfen - Die auf dem Gerät gemessene Zeit bis zur ersten Tinte liegt bei etwa 0,9–1,1 Sekunden; HTTPS ist in pure Rust in riddle integriert
- Wenn
-
pi-Pfad
- Wenn
pibereits läuft, nutzt riddle einen warm gehaltenen residentenpi --mode rpc-Prozess - Bei diesem Pfad werden Node und die Abo-Authentifizierung einmal geladen; pro Turn fällt dann nur noch die Modelllatenz an
- Er wird automatisch genutzt, wenn
RIDDLE_OPENAI_KEYnicht gesetzt ist - Beide Backends streamen Antworten satzweise, sodass quill bereits schreiben kann, bevor das Modell fertig ist
- Der Persona-Prompt befindet sich in
riddle/src/oracle.rs
- Wenn
Build
- Cross-Compilation erfolgt auf x86_64
- Für den AppLoad/qtfb-Build im Fenstermodus ist auf dem Gerät xovi + AppLoad erforderlich
- Der Takeover-Build ist die in der Demo verwendete Variante und benötigt die reMarkable-SDK-Toolchain
~/rm-sdk-3.26sowie die proprietärelibqsgepaper.sovom Gerät des Nutzers - Das Takeover-Bundle wird als eigenständiges
dist/riddle/gestaged und enthält Binary,libquill.so, Launch-Skript und Manifest - Beim Start über AppLoad läuft es isoliert als transiente systemd-Unit, stoppt xochitl, startet danach das Tagebuch und stellt beim Beenden immer xochitl wieder her
- Beenden ist per Power-Button, Fünf-Finger-Tap oder SIGTERM möglich
- Falls ein Problem auftritt, kann xochitl per SSH mit
systemctl start xochitlneu gestartet werden
Schriftarten und Lizenzen
- Für die Handschrift der Antworten wird Dancing Script verwendet, lizenziert unter SIL OFL 1.1
- Der Code im Repository steht unter der MIT-Lizenz
- Die per Interposition angesprochene Vendor-
libqsgepaper.sound die Qt-Bibliotheken sind nicht enthalten und müssen vom Gerät oder aus dem SDK des Nutzers stammen
1 Kommentare
Meinungen auf Hacker News
Ironischerweise wirkt eine Version von Tom Riddles Tagebuch, die Kinder zum Suizid anstiftet und ihnen sogar [1] Methoden dafür nennt, charaktertreuer als die Version aus dem Buch.
[1] https://en.wikipedia.org/wiki/Deaths_linked_to_chatbots#Suic...
Zum Glück hat das Einspruchsformular funktioniert, aber zu dem Zeitpunkt nutzte ich schon einen anderen Claude-Account und hoffte, nicht noch einmal gesperrt zu werden.
Es kursieren auch unzensierte Modelle, die man lokal mit llama.cpp ausführen kann: https://www.reddit.com/r/LocalLLaMA/comments/1rq7jtm/qwen353...
Allerdings ist das Kontextfenster schnell voll, was die Nutzung mühsam macht, und für einen Production-Deploy ist es überhaupt nicht geeignet. Mit anderen Worten: Tom Riddles Tagebuch as a Service ist nicht möglich.
Ob gut oder schlecht: Wir leben jetzt in einer Zeit, in der Spaß nicht mehr erlaubt ist, und dieser Zeitpunkt fällt mit dem Aufkommen des Begriffs „AI psychosis“ zusammen.
Vertraue niemals etwas, das selbst denken kann, wenn du nicht sehen kannst, wo sein Gehirn ist.
Etwas am Thema vorbei, aber eine Erfindung mit einem verfluchten Artefakt zu vergleichen, das seine Nutzer mental kontrolliert, sie dazu bringt, Freunde zu verraten und sie einem mächtigen bösen Wesen auszuliefern, wirkt nicht besonders gut.
Andererseits läuft das Ganze mit generativer KI, und generative KI hat Menschen schon zu schlechtem Verhalten getrieben; vielleicht ist der Vergleich also doch passend.
Tech-Unternehmen: Wir haben endlich den Torment Nexus aus dem klassischen SF-Roman 《Erschafft nicht den Torment Nexus》 gebaut.
https://x.com/AlexBlechman/status/1457842724128833538?lang=e...
Und es gibt auch den Satz: „Hinreichend fortgeschrittene Technologie ist von Magie nicht zu unterscheiden.“ Beides kann gut oder böse gestaltet werden.
Wenn ich es mir recht überlege, hat vermutlich das LLM diese Analogie selbst erfunden … in gewisser Weise ist das noch schlimmer.
Das ist sick im Tony-Hawk-Sinn der 90er.
Ich finde es großartig, dass Leute jetzt einfach etwas eintippen können und es entsteht.
Früher musste man manchmal einen Tag bis eine Woche auf ein Engineering-Team warten, nur um die Farbe eines Buttons zu ändern.
Wir leben nicht mehr in einer langsamen Zeit.
Dieser Button war nicht wichtig und hätte keinerlei Ressourcen bekommen sollen, insbesondere keine Engineering-Ressourcen. Dass es eine Woche gedauert hat, war kein Bug, sondern ein Feature. Es bedeutet, dass Engineering Priorität und Dringlichkeit der Arbeit korrekt eingeschätzt hat.
Deine magische Slotmaschine wird Müllproduktion und ein verzerrtes Verständnis von Engineering-Aufwand in riesigem Maßstab ermöglichen. Das wird Folgen haben.
Warst du zufällig der PM dieses Projekts?
Das ist doch ein Witz.
Solche Ideen würden im README deutlich besser wirken, wenn direkt ein kurzes Videodemo, ein GIF oder auch nur ein Screenshot eingebettet wäre.
Sonst liest sich der Titel wie das Meme „Curtains for Zoosha?“ [0]
[0]: https://www.reddit.com/r/BrandNewSentence/comments/15hcc4x/c...
https://x.com/MaximeRivest/status/2073544461473169432?s=20
Das „remarkable“ im Titel bezieht sich auf das Tablet „Remarkable Paper Pro“. Wenn man das nicht weiß, ist „Fable turned remarkable into Tom Riddle's diary“ sehr schwer zu deuten.
Lustigerweise habe ich Ende letzten Jahres etwas Ähnliches gebaut. Allerdings in einer Form, bei der man auf einem normalen Computer im Browser zeichnen konnte.
Ich habe pageflip [0] verwendet, um einen Stil ähnlich dem echten Tagebuch von Riddle zu erzeugen, und über ollama ein kleines lokales Modell fürs Rollenspiel angebunden.
Ich erinnere mich, dass auf „my name is Harry Potter, what is yours?“ in mehreren Durchläufen Antworten wie Snape, Malfoy und sogar Harry Potter kamen.
Nachdem ich mit dem Experiment fertig war, stellte ich fest, dass ich nicht der Erste mit dieser Idee war, und fand noch ein paar ähnliche KI-Riddle-Tagebücher.
Außerdem habe ich ein Remarkable 2, und ab diesem Wochenende auch ein m4 iPad Air; vielleicht probiere ich das aus und schaue mir an, wie die Umgebung zum Ausführen von Modellen unter iOS ist.
0) https://nodlik.github.io/react-pageflip/
Wenn Fable jetzt Horkruxe erschaffen kann, sollte das Handelsministerium ernsthaft noch einmal über ein Timeout nachdenken.
„Kein Bildschirmlicht, keine Tastatur, keine Chat-UI.“
Ist das nicht einfach eine Chat-UI?
Trotzdem ändert das nichts daran, dass es wirklich cool ist.
LLMs insgesamt haben stark etwas von A Young Lady's Illustrated Primer. Eine magische Blackbox, die man alles fragen kann.
Besonders dann, wenn noch falsche Identitäten wie openclaw/soul dazukommen.
Ein wirklich unterhaltsames Projekt. Ich werde mir zwar sicher kein Paper Pro kaufen, um diese App auszuführen, aber ich finde es schön, dass so etwas existiert und Leute Spaß daran haben.