Clip legt eine Webseite mit fertiger Zusammenfassung in deinen Notizen ab. Ab heute steht es jedem Telli.sh-Konto offen.
Clip speichert eine Webseite nicht nur, sondern macht daraus eine Telli.sh-Notiz mit einem von der KI geschriebenen Titel und einer einzeiligen Zusammenfassung. Es wurde hinter einem Admin-Flag ausgeliefert, weshalb zwei Analytics-Zähler kein einziges Mal ausgelöst haben. Diese Sperre ist weg: Kostenlose Konten bekommen 30 Speicherungen und 10 KI-Zusammenfassungen pro Tag, und Version 1.18 der Browser-Erweiterung ergänzt ein „In Telli.sh speichern“ im Rechtsklickmenü, das sich mit einem Token authentifiziert, das nichts anderes kann als Clips speichern.
Es gibt eine bestimmte Sorte Fehler, die keine Testsuite findet: Das Feature funktioniert, und niemand kommt daran.
Clip ist seit Wochen fertig. Der Dialog speichert über POST /v1/clip, füllt die Linkkarte aus den öffentlichen Meta-Tags der Seite, erzeugt eine einzeilige KI-Zusammenfassung, verwirft den Notiz-Cache und kennt bereits den Unterschied zwischen „gespeichert, aber Ihr Zusammenfassungskontingent ist aufgebraucht“ und „das ist fehlgeschlagen“. Alles davon funktionierte. Und in PostHog hatten die beiden Events, die es meldet – clip_opened und clip_created –, nie ausgelöst. Nicht einmal, nicht selten. Null.
Der Grund waren drei Zeilen Frontend-Code. Der Button in der Seitenleiste und der Dialog hingen beide an user.is_master, und der Button trug ein bernsteinfarbenes Abzeichen Admin-Vorschau. Das Backend hat nie auf is_master geprüft – es erzwingt tägliche Kontingente pro Tarif, und dort gehört eine Grenze hin. Das Feature wurde nicht ignoriert. Es war unerreichbar.
Seit Commit 64852ac vom 5. September 2026 lautet die Bedingung: „Ist jemand angemeldet?“ Dieser Beitrag ist eine Produktankündigung und deshalb bewusst produktzentriert: Hier steht, was Clip tut, was es Sie kostet, was die Browser-Erweiterung sendet und was sie absichtlich nie liest.
TL;DR
- Clip steht jedem angemeldeten Konto offen. Der Button in der Seitenleiste hat am 5. September 2026 sein Admin-Abzeichen verloren.
- Die Grenzen sind Tageskontingente, keine Sperre. Free bekommt 30 Speicherungen und 10 KI-Zusammenfassungen pro UTC-Tag; Plus, Pro und Pro+ steigen von dort aus an. Die genauen Zahlen stehen in der Tabelle weiter unten.
- Ein aufgebrauchtes Zusammenfassungskontingent kostet Sie nicht den Clip. Der Link und seine Metadaten werden trotzdem gespeichert; nur die Zusammenfassung entfällt, und die App sagt das auch.
- Die Browser-Erweiterung kann die Seite speichern, auf der Sie gerade sind. „In Telli.sh speichern“ sitzt im Rechtsklickmenü jeder http(s)-Seite und nimmt mit, was Sie markiert hatten. Version 1.18 befindet sich zum Zeitpunkt dieses Beitrags in der Prüfung im Chrome Web Store – installierbar ist sie noch nicht.
- Die Erweiterung authentifiziert sich mit einem Token, das nur Clips speichern kann. Es kann Ihre Notizen nicht lesen, Ihr Konto nicht ändern, nicht an die Abrechnung und kein weiteres Token erzeugen. Sie sehen das Geheimnis genau einmal, und Sie können es widerrufen.
- Die Erweiterung liest, was die Seite Ihnen ohnehin zeigt. Titel, kanonischen Link, öffentliche
og:/twitter:-Meta-Angaben und Ihre Auswahl. Nicht den Artikeltext. Ohne Ihren Klick verlässt nichts den Browser, und ohne hinterlegtes Token tut der Menüeintrag überhaupt nichts.
Was Clip mit einer URL tatsächlich macht
Öffnen Sie Clip in der Seitenleiste, fügen Sie eine URL ein, und der Dialog ruft POST /v1/clip/metadata auf. Dieser Endpunkt holt das HTML der Seite und liest daraus ausschließlich die öffentlichen Meta-Tags – og:title, og:description, og:image, og:site_name, article:author, article:published_time und <link rel="canonical">. Titel, Beschreibung, Website und Bild kommen ausgefüllt zurück. Schlägt der Abruf fehl, sagt der Dialog das und lässt Sie den Link trotzdem speichern – dann steht der Hostname für den Namen der Website.
Dann speichern Sie, und aus dem Clip wird eine Notiz. Kein Anhang, kein Lesezeichen in einer eigenen Liste – eine Notiz mit note_type="clip", die in Alle Notizen neben allem anderen liegt, durchsuchbar, in Ordner einsortierbar, teilbar und exportierbar über dieselbe Mechanik. Die Quell-URL und die gesamte Linkkarte bleiben im Kontext der Notiz erhalten, damit die Herkunft nie hinter der Zusammenfassung verschwindet.
Gibt es überhaupt etwas zusammenzufassen – eine Beschreibung, Ihren markierten Text, eine Notiz, die Sie eingefügt haben –, läuft eine allgemeine Zusammenfassung und schreibt einen Einzeiler auf die Notiz. Das ist die Zeile, die Sie in der Liste unter dem Titel sehen.

Drei Clips, am 5. September 2026 in einem Produktivkonto gespeichert, in Alle Notizen neben gewöhnlichen Notizen. Die beiden Artikel-Clips tragen einen KI-geschriebenen Titel und eine einzeilige Zusammenfassung. Die Startseite von Hacker News veröffentlicht kein Description-Meta, und es war kein Text markiert, also gab es nichts zusammenzufassen – sie hat ihren eigenen Titel behalten und keine Zusammenfassungszeile bekommen. Wenn Clip nichts hat, womit es arbeiten kann, sagt es lieber nichts, als etwas zu erfinden.
Dieses letzte Detail ist die Entwurfsregel unter dem gesamten Feature, und sie ist es wert, für sich zu stehen: KI-Ausgaben ersetzen nie das Original. Die Quell-URL, die Metadaten der Website und jeder Text, den Sie beigesteuert haben, bleiben erhalten; die Zusammenfassung ist abgeleitete Information obendrauf. Ist die Zusammenfassung falsch oder nutzlos, ist das, was Sie tatsächlich gespeichert haben, immer noch da.
Die Grenzen sind ein Tageskontingent, und sie sind die einzige Grenze
Es gibt keine Tarifsperre für Clip. Es gibt eine Menge.
| Tarif | Speicherungen pro Tag | KI-Zusammenfassungen pro Tag |
|---|---|---|
| Free | 30 | 10 |
| Plus | 150 | 50 |
| Pro | 500 | 150 |
| Pro+ | 2,000 | 500 |
Standardwerte aus backend/config.py (CLIP_SCRAPE_DAILY_QUOTA_*, CLIP_SUMMARY_DAILY_QUOTA_*), gelesen am 5. September 2026.
Zwei Kontingente, nicht eines, und sie scheitern absichtlich unterschiedlich. Sind die Speicherungen aufgebraucht, wird das Speichern abgelehnt – der Server antwortet mit 403, einem strukturierten Code clip_scrape_quota_exceeded und einem Datum für die Zurücksetzung. Sind die Zusammenfassungen aufgebraucht, wird der Clip trotzdem gespeichert; nur der Zusammenfassungsschritt entfällt, und die App sagt Ihnen genau das: „Clip gespeichert. Das KI-Zusammenfassungskontingent für heute ist aufgebraucht.“
Diese Asymmetrie ist Absicht. Einen Link zu speichern ist billig und ist das, was Sie eigentlich wollten; das Zusammenfassen ist der teure Teil. Eine Seite zu verlieren, die Sie behalten wollten, weil ein Sprachmodell gerade gedrosselt wurde, wäre ein absurder Tausch – also machen wir ihn nicht.
Der Zähler ist ein schlichtes UTC-Kalenderdatum. Um 00:00 UTC beginnt Ihr Tag neu – für alle im selben Moment, kein gleitendes 24-Stunden-Fenster, über das Sie nachdenken müssten.
„In Telli.sh speichern“ ist einen Rechtsklick entfernt – sobald 1.18 freigegeben ist
Der Web-Dialog setzt voraus, dass Sie die URL in der Zwischenablage haben. Meistens haben Sie stattdessen die Seite offen.
Telli.sh: Every Translator 1.18 ergänzt einen Kontextmenü-Eintrag, In Telli.sh speichern, registriert für die Kontexte page und selection auf http://*/* und https://*/* – also auf jeder Webseite, nicht nur auf den gut 30 Websites, auf denen die Erweiterung übersetzt. Rechtsklick irgendwo in einem Artikel, und er wird gespeichert. Markieren Sie vorher drei Absätze, gehen die mit – bis zu 2.000 Zeichen.
Die Rückmeldung läuft über das Symbolleisten-Badge, das die Erweiterung ohnehin besitzt: … während des Speicherns, ✓ bei Erfolg, ! bei Fehlschlag, jeweils mit einer Erklärung im Tooltip der Symbolleiste. Die Fehlermeldungen sind konkret, weil die Fehler des Servers es sind. Eine 401 heißt, das Token wurde abgelehnt und Sie brauchen ein neues. Eine 403 heißt eines von zwei verschiedenen Dingen, und die Erweiterung unterscheidet sie, indem sie im Antwortkörper nach einem *_quota_exceeded-Code sucht – Kontingent aufgebraucht („kommen Sie morgen wieder“) gegenüber einem Token ohne Clip-Berechtigung („das kann dieses Token nicht“). Gleicher Statuscode, gegenteiliger Rat.
Version 1.18 wurde im Chrome Web Store eingereicht und befindet sich mit Stand 5. September 2026 in der Prüfung. Installieren können Sie sie noch nicht. Nach der Freigabe kommt sie als automatisches Update, und das Kontextmenü kommt mit ihr.
Ein Nur-Schreiben-Schlüssel: Das Token kann Clips speichern und sonst nichts
Jetzt kommt der Teil, der uns am wichtigsten ist, weil genau hier diese Art von Integration üblicherweise schiefgeht.
Die bequeme Variante von „die Erweiterung mit Ihrem Konto verbinden“ besteht darin, Sie Ihr Sitzungs-Token in die Erweiterung einfügen zu lassen. Dieses Token öffnet alles: Es löscht Notizen, exportiert Ihre Daten, fasst die Abrechnung an. Sie würden vollständige Kontozugangsdaten gegen einen Lesezeichen-Button eintauschen, und sie lägen für immer im Speicher der Erweiterung.
Clip verwendet dieses Token deshalb nicht. Telli.sh stellt API-Tokens mit begrenztem Geltungsbereich aus, nach dem Vorbild von Cloudflare: Ein Token trägt eine Liste von Richtlinien, statt für Sie einzustehen, und jede Richtlinie besteht aus einem effect (allow oder deny, wobei deny gewinnt), einer Menge von resources und einer Menge von Berechtigungsgruppen. Heute gibt es genau eine Gruppe, clip_write, die sich zu den Berechtigungen clip:write und clip:metadata entfaltet, und genau eine Ressourcenform, {"user": "self"} – Ihre eigenen Daten, nichts sonst.
Wir nennen das einen Nur-Schreiben-Schlüssel, weil er genau diese Form hat: Er kann Dinge in Ihr Konto hineinlegen und nichts herausholen.
Die Sicherheitsinvariante, die das real macht, ist ein Satz aus dem Entwurfsdokument: Ein API-Token läuft nie durch den Pfad der Sitzungsauthentifizierung. Sitzungscookies und Zugriffs-JWTs werden über get_current_user_optional aufgelöst, und das erreicht jeden Endpunkt im Produkt. API-Tokens werden ausschließlich über die Abhängigkeit require_permission(...) aufgelöst, und fehlt die dort verlangte Berechtigung im Token, lautet die Antwort 403. Bricht man diese Trennung, wird aus einem begrenzten Token stillschweigend wieder ein Vollzugriffs-Token – deshalb steht sie als wichtigste Regel des Entwurfs da. Es gibt einen hilfreichen Nebeneffekt: Ein API-Token ist eine undurchsichtige Zeichenkette, also scheitert die JWT-Dekodierung daran immer. Geriete eines je versehentlich in einen Sitzungs-Codepfad, würde es sich als niemand authentifizieren.
Die Token-API selbst ist für Tokens gesperrt. Tokens erstellen, auflisten und widerrufen setzt eine echte angemeldete Sitzung voraus – ein Token kann kein weiteres Token erzeugen.
Eines zu erstellen dauert etwa fünfzehn Sekunden
Gehen Sie zu Einstellungen → API-Tokens. Bevor Sie eines haben, ist die Seite ehrlich darüber, was das Ding kann, das Sie gleich erstellen.

Die API-Token-Seite unter /settings/tokens, bevor ein Token existiert, aufgenommen am 5. September 2026. Die Zeile zum Geltungsbereich steht über dem Formular und nicht vergraben in einem Hilfeartikel: „Ein Token kann nur Clips speichern. Es kann Ihre Notizen nicht lesen, Ihr Konto nicht ändern und nicht an Ihre Abrechnungsdaten.“ Angeboten wird eine Berechtigung, weil es nur eine gibt.
Benennen, Clips speichern ankreuzen, erstellen. Das vollständige Geheimnis erscheint einmal, in einem Bereich, der genau das in Rot sagt.

Der Bereich für das einmalige Geheimnis. Das Token in diesem Screenshot ist maskiert, und das Konto, zu dem es gehörte, wurde gelöscht. Ein Token hat die Form tsh_<12-stelliges Präfix>_<43-stelliges Geheimnis> – 256 Bit Zufall in base64url. Nur das Präfix wird im Klartext gespeichert, als Nachschlageschlüssel; das Geheimnis liegt als bcrypt-Hash vor und ist weder für uns noch für Sie wiederherstellbar. Schließen Sie diesen Bereich, ist es endgültig weg.
Danach zeigt die Liste das Präfix und sonst nichts. Das reicht, um zwei Tokens auseinanderzuhalten, und nützt niemandem, der den Screenshot stiehlt.

Dasselbe Token, nachdem der Geheimnis-Bereich geschlossen wurde: Präfix, Geltungsbereich, Erstellungszeitpunkt, letzte Verwendung und Widerrufen. last_used_at wird höchstens einmal pro Stunde geschrieben statt bei jeder Anfrage, sagt Ihnen also ungefähr, wann ein Token zuletzt aktiv war, ohne jeden Clip in einen zusätzlichen Datenbankschreibvorgang zu verwandeln. Ein Widerruf setzt revoked_at – sofort, dauerhaft und kein hartes Löschen, sodass die Aufzeichnung dessen, was existiert hat, erhalten bleibt.
Die Erweiterung verbinden: fünf Schritte
- Melden Sie sich auf telli.sh an und öffnen Sie Einstellungen → API-Tokens (
/settings/tokens). - Geben Sie einen Namen ein, den Sie später wiedererkennen – „Browser-Erweiterung“ steht nicht ohne Grund als Platzhalter da –, kreuzen Sie Clips speichern an und drücken Sie Token erstellen.
- Drücken Sie Token kopieren, solange der einmalige Bereich offen ist. Eine zweite Gelegenheit gibt es nicht; verlieren Sie es, widerrufen Sie dieses Token und erstellen ein neues.
- Öffnen Sie die Einstellungsseite der Erweiterung, suchen Sie den Abschnitt Telli.sh Clip, fügen Sie das Token in Telli.sh-Clip-Token ein und drücken Sie Verbinden.
- Klicken Sie mit der rechten Maustaste auf eine beliebige Webseite und wählen Sie In Telli.sh speichern. Das Symbolleisten-Badge blinkt
✓, und der Clip liegt in Alle Notizen.

Die Erweiterung nach Schritt 4, aufgenommen am 5. September 2026. Die Statuszeile zeigt nur das Präfix – die Erweiterung zeigt, was die Token-Liste zeigt. Der Hilfetext benennt das Speichermodell unmissverständlich: „Es wird nur auf diesem Gerät gespeichert, und das Speichern von Clips bleibt aus, bis ein Token hinterlegt ist.“ Kein Token, kein Clippen; den Menüeintrag gibt es, aber er tut nichts.
Was die Erweiterung genau liest
Datenschutzversprechen sind billig. Hier steht das Verhalten des Codes, und das ist die einzige Fassung, die zählt.
Wenn Sie In Telli.sh speichern anklicken, injiziert die Erweiterung eine einzige Funktion in die Seite und liest acht Felder: og:title oder twitter:title mit Rückfall auf document.title; og:description, twitter:description oder description; den kanonischen Link; og:image oder twitter:image; og:site_name oder application-name; article:author oder author; article:published_time; und window.getSelection().
Lesen Sie diese Liste noch einmal daraufhin, was fehlt. Kein document.body. Keine Extraktion des Artikeltexts, kein Readability-Durchlauf, kein Gang durch das DOM. Sieben der acht Felder sind Metadaten, die die Seite für Google und für Vorschauen in sozialen Netzwerken veröffentlicht – Daten, die geschrieben wurden, damit Fremde sie lesen. Das achte ist der Text, den Sie selbst markiert haben.
Vier weitere Eigenschaften gelten im Code:
Ohne Klick wird nichts gesendet. Die Metadaten-Funktion läuft innerhalb des Kontextmenü-Handlers. Es gibt keinen Hintergrundalarm, keinen Hook beim Seitenaufbau, keinen Modus „sammeln, während Sie surfen“.
Ohne Token passiert überhaupt nichts. Der Handler prüft zuerst, ob ein Telli.sh-Token hinterlegt ist, und hört dort auf, wenn keines da ist – mit einem Badge, das Ihnen sagt, dass Sie eines verbinden sollen. Bei einer frischen Installation ist der Menüeintrag wirkungslos.
Ihr Sitzungscookie kann nicht ausgeliehen werden. Die Erweiterung hält eine Host-Berechtigung für telli.sh, was normalerweise bedeutet, dass ihre fetch-Aufrufe Ihre Anmelde-Cookies automatisch mitführen – und das Cookie würde sich vor dem Token durchsetzen und vollen Kontozugriff gewähren statt des Clip-Geltungsbereichs, den wir entworfen haben. Deshalb wird die Anfrage mit credentials: 'omit' gesendet. Das Token ist der einzige Berechtigungsnachweis im Spiel, und der Geltungsbereich, den Sie gewählt haben, ist der, der gilt. Diese eine Option ist es, die den Nur-Schreiben-Schlüssel tatsächlich nur schreiben lässt.
Wo die Erweiterung keinen Seitenzugriff hat, sendet sie weniger, nicht mehr. Die Skriptinjektion braucht Host-Zugriff, und den hält die Erweiterung nur für die in ihrem Manifest deklarierten Websites. Überall sonst scheitert die Injektion schlicht, und der Clip fällt auf die reine URL zurück; der Server füllt die Karte dann aus den öffentlichen Meta-Tags der Seite. Der Fehlerfall heißt „weniger Daten“, nie „nach weitergehenden Berechtigungen fragen“.
Und wenn der Server eine URL abruft, tut er das wie ein Besucher, nicht wie ein Crawler. Er verweigert localhost, jeden .local-Host und jeden Hostnamen, der auf eine private, Loopback-, Link-Local-, Multicast-, reservierte oder nicht spezifizierte IP-Adresse auflöst – aufgelöst und geprüft, nicht bloß per Muster abgeglichen, sodass auch ein öffentlicher DNS-Name, der auf 10.0.0.1 zeigt, abgewiesen wird. Er folgt höchstens 3 Weiterleitungen und liest höchstens 256 KB HTML. Er meldet sich nicht an, führt Ihre Cookies nicht mit und versucht nichts, was ein abgemeldeter Besucher nicht auch abrufen könnte. Seiten hinter einer Bezahlschranke und private Seiten bleiben hinter der Bezahlschranke und privat – speichern Sie von dort stattdessen Ihren eigenen markierten Text.
Noch eine Anmerkung zur Messung, weil wir diesen Beitrag mit einer Analytics-Geschichte eröffnet haben. Clips, die über die Erweiterung entstehen, berühren die Web-App nie, das Frontend kann sie also nicht sehen; für diese meldet der Server clip_created. Dieses Event trägt die Quell-App, den Quelltyp, ob eine Auswahl dabei war, ob eine Zusammenfassung erzeugt wurde, und den Tarif. Es trägt keine URL, keinen Titel und keinen markierten Text – wie viele Clips auf welchem Weg entstanden sind, nie, was darin stand.
Fazit: Eine Notiz-App, die nur festhält, was Sie gesagt haben, ist ein halbes Gedächtnis
Telli.sh hat als Ort für gesprochene Arbeit angefangen – ein Meeting aufnehmen, es in der Sprache transkribieren, in der tatsächlich gesprochen wurde, es übersetzen, es zusammenfassen, alle vier Ebenen in einer Notiz behalten. Das deckt ab, was Sie gesagt haben.
Es deckt nicht ab, was Sie gelesen haben, und das ist das meiste von dem, was Sie wissen. Der Tab, den Sie drei Tage offen gelassen haben. Die Dokumentationsseite, die Sie in einem Monat wieder brauchen. Der Kommentarstrang, in dem die eigentliche Antwort steht. Das liegt in einem Browserverlauf, den Sie nie durchsuchen werden, und in einer Lesezeichenleiste, die Sie zuletzt 2019 geöffnet haben.
Clip ist die andere Hälfte, die jetzt ankommt: dieselbe Notiz, dieselbe Suche, dieselben Ordner, derselbe Export – erreichbar über einen Rechtsklick statt über ein Mikrofon. Die Richtung ist eine einzige persönliche Datenbank, in der Ihre Worte und Ihre Quellen nebeneinanderliegen, und das hier ist die erste Sammelfläche, die auf das Web zeigt.
Die Sperre ist weg. Die Zähler haben jetzt etwas zu zählen.
Probieren Sie es aus: Melden Sie sich an, öffnen Sie Clip in der Seitenleiste und fügen Sie die URL von etwas ein, das Sie sich schon länger aufheben wollten. Kostenlose Konten bekommen 30 Speicherungen und 10 KI-Zusammenfassungen pro Tag. Sobald Erweiterung 1.18 die Prüfung im Chrome Web Store hinter sich hat, wird daraus ein Rechtsklick auf jeder Seite, die Sie ohnehin gerade lesen.
Telli.sh öffnen und den ersten Clip speichern
Quellen
- Telli.sh-Repository, Commit
64852ac, 5. September 2026 – „feat(clip): open Clip to every signed-in user“, wodurch dieis_master-Sperre und das Abzeichen „Admin-Vorschau“ entfielen und festgehalten wurde, dassclip_createdundclip_openedin PostHog nie ausgelöst hatten. - Telli.sh-Repository,
backend/config.py– die StandardwerteCLIP_SCRAPE_DAILY_QUOTA_*undCLIP_SUMMARY_DAILY_QUOTA_*, gelesen am 5. September 2026. - Telli.sh-Repository,
docs/SUPERAPP_BASELINE.md– die Clip-Grundlage und die Sicherheitsregeln: kein Umgehen von Anmeldung oder Bezahlschranke, kein Massen-Scraping, Zusammenfassung nur aus benutzerseitig geliefertem Text und öffentlichen Metadaten, und die Regel, dass KI-Ausgaben nie das Original ersetzen. - Telli.sh-Repository,
docs/design/API_TOKEN_RBAC_DESIGN.md– der Entwurf der Tokens mit begrenztem Geltungsbereich: Richtlinienstruktur, das Formattsh_<prefix>_<secret>, bcrypt-Speicherung und die Invariante, dass API-Tokens nie über den Pfad der Sitzungsauthentifizierung aufgelöst werden. - Telli.sh-Repository,
extension/extension/background.js–readClipMetadataFromPage,collectClipMetadataundsaveClip, 5. September 2026: die acht Metadatenfelder, die Auslösung ausschließlich per Klick, der frühe Ausstieg ohne Token undcredentials: 'omit'. - Telli.sh: Every Translator im Chrome Web Store – der Eintrag, bei dem Version 1.18 eingereicht wurde; mit Stand 5. September 2026 in der Prüfung.
- Produktseite von Telli.sh: Every Translator — unterstützte Seiten, Anzeigearten, Anbieter und Datenschutzzusagen an einem Ort.
- Das Popup der Erweiterung beantwortete die falsche Frage. In 1.16 zeichnet es stattdessen die Seite, auf der Sie gerade sind., 4. September 2026 – die vorherige Version der Erweiterung, für die Einstellungsseite, auf der das Feld für das Clip-Token sitzt.