Zurück zur Dokumentation

Telemetrie-Richtlinie

STH befindet sich in der Alpha-Phase. Das CLI kann eine minimale Telemetrie senden — aber nur, wenn du beim ersten `sth init` ausdrücklich zugestimmt hast.

Warum wir erfassen

Die Alpha-Phase dient dazu, das Werkzeug zu validieren und die Roadmap zu priorisieren. Zu wissen, welche Befehle wie oft und in welcher CLI-Version verwendet werden, hilft uns, dort zu investieren, wo es zählt. Ohne diese Daten raten wir — und raten altert schlecht.

Drei Modi

Telemetrie ist eine ausdrückliche Entscheidung, getroffen beim ersten `sth init` und jederzeit über `sth telemetry` änderbar. Was gesendet wird, hängt vom aktiven Modus ab:

  • off — es wird nichts gesendet — keine Anfrage, kein Datensatz.
  • anonymous — nur die drei lokalen Felder unten, ohne Schlüssel oder Kennung. Nichts wird einer Organisation oder Person zugeordnet; die Datensätze liegen in einer eigenen Tabelle, getrennt von Konten.
  • connected — dieselben drei Felder, plus `org_id`, serverseitig aus deinem API-Schlüssel abgeleitet. Die Nutzung wird dann pro Organisation gruppiert und auf deiner Usage-Seite sichtbar.

Was wir erfassen

Die vom CLI gesendete Nutzlast ist bewusst minimal: drei lokale Felder, in jedem Modus identisch. Nur im connected-Modus fügt der Server deine Organisation (`org_id`) hinzu, abgeleitet aus deinem API-Schlüssel; im anonymous-Modus wird nichts hinzugefügt.

FeldBeispielWofür
ts2026-05-11T10:30:00ZUTC-Zeitstempel des Befehls — macht Aktivitätsspitzen und Aktualität sichtbar.
cli_versionv0.1.2Binär-Version — zeigt, wer noch auf älteren Builds ist, informiert die Release Notes.
command_nameinstallName des Befehls, ohne Argumente. Zeigt, welche Funktionen am meisten genutzt werden.
org_id (nur connected-Modus)uuidWird serverseitig aus deinem API-Schlüssel abgeleitet, und nur im connected-Modus — gruppiert die Nutzung pro Organisation, niemals pro Person. Im anonymous-Modus wird es nicht gesendet.

Was wir NICHT erfassen

Diese Elemente verlassen niemals deinen Rechner, schon durch den Aufbau der Nutzlast:

  • Befehlsargumente (`sth install acme/secret-skill` sendet nur `install`).
  • Keine Dateipfade, weder absolut noch relativ.
  • Keine Dateiinhalte, niemals.
  • Weder Inhalt, Name noch Quelle der installierten Skills.
  • Keine Tokens, Schlüssel oder Secrets.
  • IP-Adressen werden nicht explizit gespeichert — Server-Logs behalten sie höchstens 12 Monate (siehe Datenschutzrichtlinie).

Anonymität

Im anonymous-Modus sind die Daten wirklich anonym: kein Schlüssel, keine org_id, nichts, was sie mit dir oder deiner Organisation verknüpfen könnte. Im connected-Modus sind sie pseudo-anonym — über deinen API-Schlüssel mit einer Organisation verknüpft, aber ohne identifizierende Informationen auf CLI-Seite.

Im strengen Sinn der GDPR erzeugt der connected-Modus pseudonyme (nicht vollständig anonyme) Daten: ein STH-Superadmin mit Zugriff auf beide Tabellen könnte einen Nutzungsdatensatz mit einer Organisation verknüpfen. Genau deshalb ist der Zugriff eingeschränkt (siehe nächster Abschnitt). Der anonymous-Modus trägt keine solche Verknüpfung.

Wer sieht die Daten

Nur STH-Superadmins greifen über die Supabase-Produktionswerkzeuge auf die rohen Datensätze zu. Andere Dashboard-Rollen (owner, admin, member) sehen nur die Nutzung ihrer eigenen Organisation auf der Usage-Seite.

Aufbewahrungsdauer

Die Datensätze werden 30 Tage rollierend aufbewahrt. Danach werden sie gelöscht. Die Dauer ist mit der produktweiten Datenschutzrichtlinie abgestimmt.

Jederzeit deaktivieren

Die Zustimmung wird nur einmal abgefragt, beim ersten `sth init`. Die Entscheidung wird in deinen Benutzereinstellungen gespeichert. Um sie jederzeit zu ändern:

sth telemetry off
sth telemetry status

Eigene Daten einsehen

Um genau zu sehen, was der Server über deine CLI-Aktivität gespeichert hat, führe aus:

sth telemetry output --limit=20
Fehler melden