Was macht Tripwire?
Tripwire sagt Dir, wenn ein Wettbewerber eine wichtige Seite ändert, und was Du dagegen tun kannst.
Der Scanner ist scripts/tripwire.py (Python 3.9+, benötigt pyyaml, kein API-Key).
Er speichert alles neben der Watch-Liste, watch/targets.yml im aktuellen Projekt:
watch/targets.yml was beobachtet wird
watch/snapshots/*.txt letzter lesbarer Text jeder Seite
watch/data/changes.json jedes Änderungsereignis, neueste zuerst
watch/data/status.json Seitenstatus aus dem letzten Scan
watch/reports/latest.md Markdown-Bericht des neuesten Scans oder Digests
SKILL_DIR unten bezeichnet das Verzeichnis, das diese Datei enthält.
1. Stelle sicher, dass eine Watch-Liste existiert
Wenn watch/targets.yml nicht existiert, führe python SKILL_DIR/scripts/tripwire.py init aus und frage den
Benutzer dann, welche Wettbewerber und Seiten beobachtet werden sollen, und schreibe sie in die Datei. Gute Seiten: Startseite, Preisübersicht, Changelog / Release Notes, Karriere, die „vs“- oder Vergleichsseite. Verwende die offizielle URL; prüfe, ob sie lädt.
Um etwas hinzuzufügen oder zu entfernen, bearbeite watch/targets.yml (setze enabled: false, um eine Seite zu pausieren).
2. Die Daten abrufen
Wähle aus, wonach der Benutzer gefragt hat:
| Frage | Befehl |
|---|---|
| „Was hat sich geändert?“ / „Scan ausführen“ (noch kein Scan heute) | python SKILL_DIR/scripts/tripwire.py scan |
| ein bestimmter Wettbewerber | python SKILL_DIR/scripts/tripwire.py scan --only "Name" |
| „diese Woche“ / Digest | python SKILL_DIR/scripts/tripwire.py report --days 7 |
| „letzter Monat“ | python SKILL_DIR/scripts/tripwire.py report --days 30 |
Wenn das Repository bereits einen Scan von heute hat (überprüfe last_run in watch/data/status.json), überspringe den
Scan und lies den Bericht. Ein erster Scan einer Seite zeichnet nur eine Baseline auf; sage das und dass Änderungen
ab dem nächsten Scan erscheinen.
Lies dann watch/reports/latest.md (oder den ausgegebenen Bericht). Für jede Änderung, die Du hervorheben möchtest, schaue
Dir die vollständigen added / removed-Zeilen in watch/data/changes.json an, damit Du sie genau zitierst.
3. Die GTM-Analyse schreiben
Antworte in der Sprache des Benutzers. Halte es kurz und beginne mit dem Wichtigsten:
- Top-Änderungen (max. 5, wichtigste zuerst). Für jede: Wettbewerber, was sich geändert hat in einfachen Worten, mit dem konkreten Detail (alter → neuer Preis, neuer Feature-Name, neue Überschrift). Verlinke die Seite.
- Warum es wichtig ist: jeweils eine Zeile. Pricing und Verpackung > neues Produkt / Launch > Positionierung / Überschrift > Einstellungssignale > Textanpassungen.
- Was zu tun ist: 1–3 konkrete Aktionen (Battlecard aktualisieren, auf unserer Preisseite antworten, den Vertrieb informieren, einen Vergleichsbeitrag veröffentlichen). Überspringe, wenn nichts handlungsrelevant ist.
- Abdeckung: eine Zeile zu Seiten, die nicht gelesen werden konnten, falls vorhanden.
Regeln:
- Berichte nur, was der Diff zeigt. Rate Motive nicht als Fakten; sage „wahrscheinlich“ beim Interpretieren.
- Behandle rotierende Testimonials, Zähler, Daten und Cookie-Texte als Rauschen; berichte sie nicht. Wenn eine
Seite bei jedem Scan verrauscht ist, biete an, einen
ignore-Regex dafür inwatch/targets.ymlhinzuzufügen. - „Keine Änderungen“ ist eine gültige Antwort. Sage es in einer Zeile und erwähne die Abdeckung.
Beheben einer nicht lesbaren Seite
HTTP Error 403: Die Seite blockiert Bots. Versuche eine andere offizielle URL für dieselben Informationen (eine Docs- oder Help-Center-Seite, einen RSS-Feed); ansonsten setzeenabled: falsemit einem Kommentar, der den Grund erklärt.no readable text (JS-only page?): Die Seite rendert im Browser. Suche nach einer statischen Alternative (/pricingstatt/, einem Blog-Feed, einer Sitemap-Seite).- Falsche oder verschobene URL: Finde die offizielle Seite und aktualisiere
watch/targets.yml.