So funktioniert es
Geschrieben für die Version, die derzeit im Chrome Web Store steht.
Berechtigungen — und warum wir so wenig verlangen
Einen Tab per Timer neu zu laden erfordert keinerlei Zugriff auf die Website. Die Erweiterung bittet den Browser um das Neuladen; sie sieht die Seite nie. Deshalb erscheint bei der Installation auch nicht die übliche Warnung „alle Ihre Daten auf allen Websites lesen und ändern“.
Nur zwei Funktionen müssen die Seite lesen: der auf die Seite gezeichnete Countdown und die Stichwort-Überwachung. Beide fragen jeweils für eine einzelne Website nach Zugriff, wenn du sie dort zum ersten Mal nutzt. Alles Erteilte steht auf der Optionsseite und lässt sich pro Website widerrufen.
Im Paket steckt kein deklaratives Content-Script. Seitencode wird ausschließlich in Tabs eingespielt, die du freigegeben hast, und zwar über chrome.scripting — auf einer nicht freigegebenen Website läuft keine einzige Zeile unseres Codes.
Intervalle, Zeitpläne und exakte Uhrzeiten
Fest wiederholt alle N Sekunden. Zufällig zieht in jedem Zyklus einen neuen Wert aus einem Bereich — nützlich, wenn ein rhythmisch identisches Anfragemuster unerwünscht ist. Benutzerdefiniert nimmt Stunden, Minuten und Sekunden.
Ein Zeitplan begrenzt eine Regel auf ausgewählte Wochentage und ein Start-Ende-Fenster. Ein Fenster, dessen Ende vor dem Start liegt, gilt als über Mitternacht laufend, 22:00 → 02:00 verhält sich also wie erwartet.
Exakte Uhrzeiten ersetzen das Intervall vollständig: Trage 09:30 und 14:00 ein, und die Seite lädt genau dann neu — nach Ablauf rutscht der Termin auf morgen.
Der Countdown auf der Seite
Die Erweiterung kann einen kleinen Countdown auf die Seite selbst zeichnen, damit du die Restzeit siehst, ohne das Popup zu öffnen. Zieh ihn hin, wo du willst; die Position wird pro Regel als Prozentwert des Viewports gemerkt und bleibt daher auch beim Ändern der Fenstergröße an ihrem Platz.
Das ist die eine Bequemlichkeit, die Lesezugriff auf eine Website braucht. Schalte sie ab, und zeitgesteuertes Neuladen läuft ganz ohne Berechtigung weiter — genau deshalb ist sie eine Option pro Regel und kein globaler Schalter.
Der kompakte Modus lässt den Text weg und zeigt nur die Ziffern — gedacht für eine Seite, die du auf einem Wandbildschirm quer durch den Raum im Blick hast.
Syntax der Ausdrücke
Klartext trifft ohne Rücksicht auf Groß- und Kleinschreibung an beliebiger Stelle im sichtbaren Text.
Reguläre Ausdrücke stehen zwischen Schrägstrichen, mit optionalen Flags: /\$\d+(\.\d{2})?/i. Bloße Muster mit vorangestelltem $ werden ebenfalls akzeptiert, wenn du Regeln von anderswo einfügst.
CSS-Selektoren und XPath treffen Elemente statt Wörter. XPath beginnt mit // oder einem Punkt.
Boolesche Ausdrücke verbinden den Rest: (In Stock OR Available) AND NOT Sold Out. Setze eine Phrase nur dann in Anführungszeichen, wenn sie eines dieser Schlüsselwörter enthält.
Mehrere Ausdrücke in einer Überwachung werden mit OR verknüpft. Wenn du ein AND brauchst, schreibe einen einzigen booleschen Ausdruck, statt dich auf eine implizite Regel zu verlassen.
Fertige Regeln
Fertige Vorlagen decken die Situationen ab, für die das hier tatsächlich benutzt wird: ein Artikel kommt zurück in den Bestand, ein Preis ändert sich, eine neue Stellenanzeige erscheint, ein Build läuft durch, ein internes Dashboard wirft plötzlich einen 500er.
Eine Vorlage zu wählen füllt sowohl den Ausdruck als auch ein sinnvolles Intervall aus — dreißig Sekunden für einen Restock, zehn Minuten für eine Karriereseite — denn das richtige Intervall gehört genauso zum Rezept wie die Wörter. Danach bleibt alles editierbar.
Vorlagen stecken in der Erweiterung, statt geladen zu werden. Sie bei Bedarf herunterzuladen hieße, dass wir sehen könnten, wer wann was beobachtet — genau das, wovon wir versprechen, nichts zu wissen.
Ein Element auswählen statt einen Selektor schreiben
Die Auswahlhilfe hebt Elemente hervor, während du über die Seite fährst; ein Klick schreibt den Selektor für dich. Nutze sie überall dort, wo ein CSS-Selektor verlangt wird — der überwachte Bereich, ein Klickziel oder der zu extrahierende Wert.
Sie bevorzugt einen stabilen Anker wie id oder data-testid gegenüber einem Positionspfad wie div:nth-child(3) > span. Positionspfade brechen, sobald eine Website ein Banner einfügt; Attribut-Anker überstehen einen Relaunch meist.
Wenn ein Selektor doch bricht, nimmt die KI-Reparatur den alten Selektor plus ein Fragment der neuen Seite und schlägt einen Ersatz vor — mit einem Konfidenzwert, den du prüfen kannst, bevor du zustimmst.
Erscheint, verschwindet, irgendetwas ändert sich
„Erscheint“ löst aus, wenn ein Treffer auftaucht. „Verschwindet“ löst aus, wenn kein Ausdruck mehr trifft — praktisch, wenn ein „Ausverkauft“- oder Wartungshinweis verschwinden soll.
„Irgendetwas ändert sich“ braucht keine Stichwörter. Es bildet einen Fingerabdruck des sichtbaren Textes und meldet, wenn der Fingerabdruck sich verschiebt. Der erste Scan legt nur eine Grundlinie fest, eine frische Regel löst also nie sofort aus.
Fingerabdrücke ignorieren rohes HTML bewusst. Nonces, Zeitstempel und Inline-Skripte ändern sich bei fast jedem Laden — ein Hash über das Markup würde ununterbrochen melden.
Scan-Optionen
Vor dem Scannen zu warten gibt dynamischen Seiten Zeit zum Rendern. Wenn eine Überwachung auf einer offensichtlich passenden Seite nie auslöst, liegt es fast immer daran.
Eine Überwachung per CSS-Selektor auf einen Bereich einzuschränken nimmt das ganze Beiwerk der Seite aus der Betrachtung und ist das wirksamste Mittel gegen Fehlalarme.
Statt des sichtbaren Textes den HTML-Quelltext zu scannen trifft auch verstecktes Markup. Das ist eine Entwickler-Option; sie findet Dinge, die niemand sehen kann.
Seiten-Interaktionen
Ein Interaktionsziel ist ein CSS-Selektor mit optionalem XPath-Ersatz — damit lässt sich ein Popup oder Cookie-Banner schließen, ein eingeklappter Bereich aufklappen oder der richtige Tab anwählen. Ausgelöst wird es entweder nach jedem Neuladen oder nur, wenn die Überwachung auslöst; die Ziele laufen der Reihe nach.
Nimm die Auswahlhilfe, statt Selektoren von Hand zu schreiben — sie bevorzugt id und data-testid gegenüber Positionspfaden, was Website-Relaunches deutlich besser übersteht.
Die Captcha-Erkennung pausiert die Regel und meldet sich bei dir. Die Erweiterung versucht nicht, eine Challenge zu lösen, zu umgehen oder anderweitig auszuhebeln.
Kiosk-Rotation
Gib einer Regel eine Liste von URLs, eine pro Zeile, und der Tab wandert im Takt des Timers durch sie hindurch, statt dieselbe Seite neu zu laden. Das ist der Modus für einen Wandbildschirm oder einen übrigen Monitor, der mehrere Dashboards abwechselnd zeigt.
Der Rotationszeiger gehört zum Laufzeitzustand der Regel — ein Browser-Neustart oder ein angehaltener Service Worker setzen also bei der richtigen URL fort, statt die Liste von vorn zu beginnen.
Überwachungen gelten während der Rotation weiter. Eine einzige Regel kann damit vier Dashboards durchlaufen und dich melden, sobald eines davon einen Fehler zeigt.
Einen Wert über die Zeit extrahieren
Zeig auf einen Preis, einen Lagerbestand oder eine Platzierung, und jede Prüfung hält fest, was dort stand. Zahlen werden aus ihrer Umgebung herausgelöst — Währungssymbole und Tausendertrennzeichen fallen weg — sodass aus 1 299,00 € eine Zahl wird, die du zeichnen und vergleichen kannst.
Ein Schwellenwert macht aus der Reihe einen Hinweis: unter einem Wert, über einem Wert oder eine prozentuale Bewegung seit der letzten Messung. Ohne Schwellenwert wird die Reihe still mitgeschrieben und taucht erst auf, wenn du nachsiehst.
Alles lässt sich als CSV exportieren. Das Diagramm im Panel ist bewusst eine einzelne Linie ohne Achsen — das Panel ist 320px breit, und für genaues Ablesen gibt es den Export.
Änderungsverlauf
Jedes Mal, wenn eine Überwachung auslöst, werden Zeit, Seite und der getroffene Text festgehalten. Genau das macht eine unbeaufsichtigte Beobachtung wert, sie laufen zu lassen: Stunden später siehst du exakt, was wann passiert ist, statt eine verpasste Benachrichtigung vorzufinden.
Momentaufnahmen bewahren den umgebenden Text zum Zeitpunkt des Treffers, sodass du Vorher und Nachher vergleichen kannst, statt nur zu wissen, dass sich etwas bewegt hat.
Der lokale Verlauf ist ein Ringpuffer, dessen Größe du in den Optionen festlegst; die ältesten Einträge fallen heraus, wenn neue hinzukommen. Längere Aufbewahrung liegt im Konto — und nur, wenn du Cloud-Sync einschaltest.
Wofür die KI da ist
Der Regelbau nimmt einen Satz — „sag mir Bescheid, wenn es wieder da und unter 200 $ ist“ — und liefert einen Ausdruck, einen Modus und ein vorgeschlagenes Intervall zurück. Für Leute, die reguläre Ausdrücke nie lernen werden und auch nicht müssen, ist das der schnellste Weg an der Syntax vorbei.
Die Änderungszusammenfassung nimmt den Text vor und nach einem Treffer und sagt in einer Zeile, was sich tatsächlich geändert hat — wichtig auf Seiten, wo der nützliche Unterschied zwischen Zeitstempeln und rotierender Werbung begraben liegt.
Die Änderungsklassifizierung beurteilt, ob ein Unterschied bedeutsam ist oder Rauschen, und die Selektor-Reparatur schlägt Ersatz vor, wenn ein Relaunch einen Selektor zerlegt hat. Alle vier laufen auf unseren Servern: Im Erweiterungspaket steckt nirgends ein Modell-Schlüssel, und die Anfragen tragen das analysierte Fragment — keinen Browserverlauf.
Hinweise
Im Browser: eine Benachrichtigung, ein Ton, das Hervorheben des Treffers auf der Seite oder das Nach-vorn-Holen des Tabs.
Außerhalb des Browsers: E-Mail, ein Webhook, Telegram, Discord oder Slack. Eingerichtet wird in der Übersicht; sie brauchen ein Konto und einen Pro-Tarif.
Hinweise werden nicht wiederholt. Eine Restock-Meldung, die zehn Minuten zu spät kommt, ist schlimmer als nutzlos — eine fehlgeschlagene Zustellung wird deshalb gemeldet statt eingereiht.
Jeder Kanal unten hat seine eigene Einrichtung in der Übersicht, und die Übersicht verlinkt direkt zurück auf diese Absätze.
Trag die Adresse in der Übersicht ein, und wir schicken ihr genau eine Bestätigungsmail. Der Kanal bleibt stumm, bis der Link darin geöffnet wurde; der Link funktioniert einmal und verfällt nach 24 Stunden.
Diese doppelte Bestätigung ist keine Formsache. Ohne sie könnte jeder mit einem Konto die Adresse eines Fremden eintippen und unsere Domain beliebigen Text dorthin ausliefern lassen — die Form eines offenen Mail-Relays und der schnellste Weg, den Ruf als Absender zu verlieren. Der Test-Knopf kann eine Adresse deshalb nicht bestätigen; nur eine bestätigte Adresse lässt sich testen.
E-Mail ist der einzige Kanal, der auf ein Tageskontingent angerechnet wird, weil es der einzige ist, den wir bezahlen. Bestätigungsmails zählen nicht, aber ein erneuter Versand ist frequenzbegrenzt.
Webhook
Füge einen https://-Endpunkt ein, den du kontrollierst. Wir schicken per POST application/json in der Form { source, title, body, url, at }: Titel und Text des Treffers, die Seite, auf der er passiert ist, und einen ISO-Zeitstempel.
Ein Versuch, acht Sekunden Zeitlimit, kein Wiederholen. Eigene Header lassen sich beim Kanal hinterlegen, wenn du auf deiner Seite ein Auth-Token brauchst.
Die URL muss https sein, und Hosts, die auf private oder Link-Local-Bereiche auflösen, werden beim Anlegen des Kanals abgelehnt — einschließlich der Cloud-Metadatenadresse. Diese Prüfung gibt es, damit dieses Formular nicht dazu benutzt werden kann, unsere Server für jemanden ein internes Netz abklopfen zu lassen.
Telegram
Telegram braucht zwei Werte, und die Übersicht fragt beide ab: ein Bot-Token und eine Chat-ID. Schreib @BotFather an, sende /newbot und kopiere das zurückgegebene Token. Schick danach irgendeine Nachricht an deinen neuen Bot — ein Bot kann kein Gespräch mit dir beginnen — und lies chat.id unter https://api.telegram.org/bot<token>/getUpdates aus.
Wir rufen sendMessage der Bot-API von Telegram mit deinem Token auf. Das Token liegt in deinem Konto, wird für nichts anderes verwendet und niemals an die Erweiterung übergeben; ein Widerruf im BotFather stoppt die Zustellung sofort.
Discord
Servereinstellungen → Integrationen → Webhooks → Neuer Webhook, den Kanal auswählen, dann Webhook-URL kopieren und in der Übersicht einfügen.
Wir schicken per POST ein Discord-Embed mit dem Titel, dem getroffenen Text und einem Link zur Seite. Die URL ist selbst das Geheimnis — wer sie hat, kann in diesen Kanal schreiben — behandle sie also entsprechend. Den Webhook in Discord zu löschen widerruft ihn augenblicklich, ohne dass sich bei uns etwas ändern muss.
Slack
Aktiviere in deiner Slack-App unter Incoming Webhooks die Funktion, füge dem Workspace einen hinzu, wähle den Kanal und kopiere die hooks.slack.com-URL.
Wir schicken per POST { text } mit dem Titel, dem getroffenen Text und der Seiten-URL. Der Webhook ist an den einen gewählten Kanal gebunden und ist selbst das Geheimnis; widerrufe ihn in Slack, um die Zustellung zu beenden.
Wenn Chrome einen Hintergrund-Tab einfriert
Chromes Energiesparmodus verwirft Tabs, die er für untätig hält, und damit endet der Neulade-Zyklus. Die Erweiterung bemerkt einen verworfenen Tab und lädt ihn neu, um ihn zurückzuholen.
Das Fenster sichtbar zu lassen vermeidet das Problem ganz. „Computer wach halten“ in den Optionen verhindert, dass der Ruhezustand über Nacht denselben Effekt hat.
Sync, Geräte und was deine Maschine verlässt
Ohne Konto verlässt überhaupt nichts deinen Browser.
Mit eingeschaltetem Cloud-Sync speichern wir die Regeln, die du geschrieben hast, und die Treffer, die sie erzeugt haben. Eine Liste der Websites, die du besuchst, speichern wir nicht — und wollen sie auch nicht.
Zusammengeführt wird auf dem Gerät, pro Regel, nach Änderungszeit — eine Bearbeitung am Laptop überschreibt nie, was am Desktop eingerichtet wurde. Tab-gebundene Regeln synchronisieren nie, weil eine Tab-ID auf einer anderen Maschine nichts bedeutet.
Die Testphase — und was der kostenlose Tarif behält
Die Testphase läuft sieben Tage mit allem freigeschaltet und wird lokal gezählt. Sie braucht kein Konto, keine Karte, und es gibt nichts zu kündigen — läuft sie aus, werden Pro-Funktionen schreibgeschützt statt zu verschwinden, es geht also nichts von dem verloren, was du eingerichtet hast.
Der kostenlose Tarif soll wirklich benutzbar sein und keine Demo: unbegrenzte Neulade-Regeln, jede Option der Neulade-Ebene und drei Klartext-Überwachungen. Zufallsintervalle, Töne und Benachrichtigungen werden nicht gezählt, denn pro Hinweis abzurechnen ist genau das, was konkurrierende Erweiterungen im Alltag unangenehm macht.
Was Pro hinzufügt, sind Umfang und Cloud: unbegrenzte Überwachungen, fortgeschrittene Ausdrücke, Zeitpläne, Seiten-Interaktionen, Extraktion, Verlauf, KI und Hinweise, die den Browser verlassen. Der Einmalkauf bietet denselben Funktionsumfang, das KI-Kontingent wird jährlich statt monatlich zurückgesetzt — Inferenzkosten fallen eben weiter an, auch wenn eine Zahlung das nicht tut.