USER GUIDE

Firescope Handbuch

Von der Installation bis zum täglichen Betrieb — dieser Leitfaden führt Sie Schritt für Schritt, sodass Sie direkt loslegen können. Alle Bilder zeigen die echte App.

Installation

  1. Laden Sie unter Download die Mac-Version als.dmg herunter (Apple Silicon / Intel wählbar).
  2. Öffnen Sie die heruntergeladene .dmg-Datei undziehen Sie das Firescope-Symbol in den Ordner „Programme“.
  3. Starten Sie Firescope aus dem Programme-Ordner.
Firescope ist von Apple signiert und notarisiert. Die Warnung „Der Entwickler kann nicht verifiziert werden“ erscheint nicht — die App startet direkt.

Windows

  1. Laden Sie unter Download die Datei Firescope-Setup.exeherunter und führen Sie sie aus.
  2. Falls beim ersten Start eine SmartScreen-Warnung erscheint,klicken Sie auf „Weitere Informationen“ → „Trotzdem ausführen“.
DMG-Installer (Icon in „Programme” ziehen)
DMG-Installer (Icon in „Programme” ziehen)

Ersteinrichtung (Sprache und Design)

Beim ersten Start öffnet sich ein vierstufiger Einrichtungsbildschirm. Wählen Sie zunächst die Anzeigesprache (9 integrierte Sprachen: Japanisch, Englisch, 简体中文, 繁體中文, 한국어, Español, Português, Français, Deutsch). Die Änderung wird sofort im Bildschirm übernommen — probieren Sie es im Zweifel einfach aus.

Schritt 1: Auswahl der Anzeigesprache (Japanisch / Englisch)
Schritt 1: Auswahl der Anzeigesprache (Japanisch / Englisch)

Als Nächstes wählen Sie das visuelle Design. Zehn Varianten stehen zur Auswahl, darunter Light und Dark. Auch hier sehen Sie die Vorschau sofort nach dem Klick.

Schritt 2: Auswahl des Designs (10 Varianten, sofort umschaltbar)
Schritt 2: Auswahl des Designs (10 Varianten, sofort umschaltbar)
Sprache und Design lassen sich jederzeit später über ⚙ Einstellungen und🎨 Palette unten rechts ändern.

Mit Firestore verbinden

Es gibt zwei Wege, eine Verbindung herzustellen. Am einfachsten ist dieAnmeldung mit Ihrem Google-Konto— dafür brauchen Sie keine Schlüsseldatei. Alternativ können Sie wie bisher denprivaten Schlüssel eines Dienstkontos (JSON)verwenden.

Schritt 3: Verbindungsart wählen (Google / Dienstkonto / Emulator)
Schritt 3: Verbindungsart wählen (Google / Dienstkonto / Emulator)

Weg 1: Mit dem Google-Konto anmelden

Sie authentifizieren Firescope mit Ihrem gewohnten Google-Konto undwählen anschließend einfach aus der Liste der Firebase-Projekte, auf die Sie Zugriff haben. Es muss keine Schlüsseldatei heruntergeladen oder aufbewahrt werden.

  1. Klicken Sie im Dialog zum Hinzufügen einer Verbindung im Tab „Google“ auf „Mit Google anmelden“ — im Browser öffnet sich der Einwilligungsbildschirm.
  2. Zurück in der App werden alle Firebase-Projekte aufgelistet, auf die Sie Zugriff haben. Sie können die Liste durchsuchen und mit„Alle N angezeigten auswählen“mehrere auf einmal markieren.Bereits verbundene Projekte lassen sich nicht auswählen— sie werden als „Verbunden“ angezeigt, um doppelte Einträge zu vermeiden.
  3. Legen Sie für jedes ausgewählte Projekt das Umgebungs-Label undNur-Lese fest. Das Umgebungs-Label wird automatisch aus der Projekt-ID abgeleitet — Sie müssen also nur die Abweichungen korrigieren.
  4. Bestätigen Sie mit „N Verbindungen hinzufügen“.
Falls nur einzelne Projekte fehlschlagen (etwa weil Firestore nicht aktiviert ist oder die Berechtigungen fehlen),werden die erfolgreichen Projekte trotzdem verbunden und nur die fehlgeschlagenen bleiben ausgewählt. Beheben Sie die Ursache und klicken Sie erneut auf die Schaltfläche, um ausschließlich die fehlgeschlagenen zu wiederholen.
Firescope fordert nur genau die Berechtigungen an, die für den Lese- und Schreibzugriff auf Ihr eigenes Firestore und Ihre Firebase Authentication nötig sind. Die Tokens werden mit einem Schlüssel aus dem macOS-Schlüsselbund (unter Windows DPAPI) verschlüsselt, ausschließlich auf diesem Gerät gespeichert und nicht nach außen übertragen.

Weg 2: Privaten Schlüssel eines Dienstkontos (JSON) verwenden

Dieser Weg eignet sich, wenn Sie ein Dienstkonto für CI nutzen möchten oder sich ohne Google-Konto verbinden wollen. Auch wenn Sie noch keinen Schlüssel haben, dauert es nur etwa eine Minute, ihn gemäß der Anleitung im Bildschirm zu erhalten.

  1. Klicken Sie auf „Seite für Dienstkonto-Einstellungen öffnen“, um die entsprechende Seite der Firebase-Konsole im Browser zu öffnen (zu finden unter: Projekteinstellungen → Dienstkonten).
  2. Klicken Sie auf „Neuen privaten Schlüssel generieren“, um die JSON-Datei herunterzuladen.
  3. Wechseln Sie zurück zu Firescope und wählen Sie die heruntergeladene JSON-Datei über „JSON-Datei auswählen und verbinden“ aus.Sie können auch JSON-Dateien mehrerer Projekte gleichzeitig auswählenund alle auf einmal verbinden.
  4. Wählen Sie die Umgebung der Verbindung (Entwicklung / Test / Staging / Produktion). Sie wird in der Seitenleiste als farbiges Label angezeigt, und auch die Stärke desSicherheitsschutzes richtet sich nach diesem Label.
Der Schlüssel wird mit einem vom macOS-Schlüsselbund abgeleiteten Schlüssel verschlüsselt und nur auf diesem Mac gespeichert. Er wird nicht nach außen übertragen.
Sie können sich auch mit einem lokalen Firestore-Emulator verbinden. Wählen Sie in der Seitenleiste über + „Mit Emulator verbinden“ und geben Sie Host (z. B. localhost:8080) und Projekt-ID ein.

Verbindungen ordnen (Gruppen & Ausblenden)

Mit wachsender Zahl an Verbindungen wird in der Seitenleiste schnell unklar, welcher Eintrag zu welchem Projekt gehört. Firescope versieht die Liste automatisch mit Überschriften und ordnet sie, ganz ohne manuelles Sortieren.

Seitenleiste, nach Anmeldedaten unterteilt und nach Namen gruppiert
Seitenleiste, nach Anmeldedaten unterteilt und nach Namen gruppiert

Automatische Unterteilung

Verbindungen werden zunächst danach unterteilt, über welche Anmeldedaten sie hergestellt wurden.

  • Google-Konto — getrennt nach dem jeweils angemeldeten Konto. Selbst wenn Sie mehrere Konten parallel nutzen, sehen Sie auf einen Blick, woher eine Verbindung stammt
  • AdminSDK-Schlüssel — nach dem jeweiligen privaten Dienstkonto-Schlüssel
  • Emulator — Verbindungen zum lokalen Firestore-Emulator

Innerhalb jeder Unterteilung werden Verbindungen zusätzlich nach demgemeinsamen Teil des Verbindungsnamens gruppiert. Angehängte Umgebungskürzel wie dev / staging / production / test / env werden für den Vergleich abgeschnitten, sodass OCEAN-dev, ocean-pro, OCEAN-staging und OCEAN-test unter der einen Überschrift OCEAN zusammengefasst werden (Groß- und Kleinschreibung spielt keine Rolle).

Per Rechtsklick auf eine Überschrift oder über das Symbol, das beim Überfahren erscheint, können Sie alle Verbindungen dieser Gruppegemeinsam trennen. Das Trennen läuft immer über einen Bestätigungsdialog.

Nicht genutzte Verbindungen ausblenden

Sie können Verbindungen aus der Liste ausblenden, ohne sie zu trennen. Einstellungen und Schlüssel bleiben erhalten, sodass Sie den Schritt jederzeit rückgängig machen können.

  1. Rechtsklick auf eine Verbindung →„Diese Verbindung ausblenden“. Über die Gruppenüberschrift steht „Diese Gruppe ausblenden“ zur Verfügung, bei einer Mehrfachauswahl (Klick mit / Shift) entsprechend „Ausgewählte Verbindungen ausblenden“.
  2. Sobald etwas ausgeblendet ist, erscheint oben in der Seitenleiste einAugensymbol mit einer Zähler-Plakette.
  3. Ein Klick darauf zeigt die ausgeblendeten Verbindungen abgeschwächt an. Mit Rechtsklick →„Wieder einblenden“ stellen Sie sie zurück. Das geht auch gruppenweise oder für eine Mehrfachauswahl auf einmal.
Während Sie die Sammlungssuche verwenden, werden ausgeblendete Verbindungen immer mit angezeigt — sonst könnte der Eindruck entstehen, eine Verbindung sei verschwunden, weil sie in der Suche nicht auftaucht.

Daten ansehen

Öffnen Sie in der Seitenleiste eine Verbindung und klicken Sie auf eine Sammlung — die Dokumente werden als Tabelle angezeigt. Jede Spaltenüberschrift trägt einTyp-Badge (string / int / time usw.), sodass die Form der Daten auf einen Blick erkennbar ist.

Typannotiertes Raster. Ein Klick auf eine Zeile zeigt die Details im rechten Panel
Typannotiertes Raster. Ein Klick auf eine Zeile zeigt die Details im rechten Panel
  • Ein Klick auf eine Zeile zeigt alle Felder des Dokuments im rechten Panel.
  • Sortierung, Anzahl der angezeigten Einträge und Gruppensuche (Sammlungsgruppe) lassen sich über die Werkzeugleiste ändern.
  • Die Anzahl der Lesevorgänge wird stets in der Statusleiste angezeigt (als Anhaltspunkt für die Kosten).

⌘P Sammlungsübergreifend per Name springen

⌘K Sammlungsübergreifend nach Dokument-ID suchen

⌘F In der Tabelle suchen (Tabellensuche)

⌘⇧F Fokus auf die Sammlungssuche in der Seitenleiste

Logische Namen (Feldnamen übersetzt anzeigen)

Englische Feldnamen wie carryingOutCoffinMasterId lassen sich alslogische Namen, etwa auf Deutsch, anzeigen. Über den„Logische Namen“-Schalter in der Werkzeugleiste können Sie jederzeit zwischen physischem und logischem Namen umschalten.

  • Das Wörterbuch bearbeiten Sie über das 📖-Symbol in der Werkzeugleiste. Es gibt zwei Ebenen: „für die gesamte Verbindung gemeinsam“ und „nur für diese Sammlung (überschreibt)“.
  • „Automatische Übersetzung“ befüllt leere Felder über das integrierte Wörterbuch und eine kostenlose Übersetzungs-API auf einmal.
  • „Google Übersetzer öffnen“ öffnet die Übersetzungsseite mit den Feldnamen in englischer Form — kopieren Sie die Übersetzung und kehren Sie zur App zurück, schon wird sie übernommen.
  • Rechtsklick auf eine Spaltenüberschrift →„Logischen Namen festlegen…“, um nur diese Spalte sofort zu bearbeiten.
  • Das Typ-Badge in der Kopfzeile (string / int usw.) lässt sich über den „Typanzeige“-Schalter ein- und ausblenden.
Logische Namen sind reine Anzeigefunktionen. CSV-Export und Abfragen arbeiten weiterhin mit den physischen Namen — die Datenkompatibilität bleibt unberührt.
Nach dem Speichern der logischen Namen zeigen die Spalten übersetzte Bezeichnungen
Nach dem Speichern der logischen Namen zeigen die Spalten übersetzte Bezeichnungen

Tabs und Gruppen

Rechtsklick auf eine Sammlung →„In neuem Tab anzeigen“ lässt Sie wie im Browser weitere Tabs öffnen. Tabs lassen sich, wie bei Chrome, zu Gruppen zusammenfassen.

Tab-Gruppe. Ein Klick auf den Chip klappt sie ein, die Zahl zeigt die Anzahl enthaltener Tabs
Tab-Gruppe. Ein Klick auf den Chip klappt sie ein, die Zahl zeigt die Anzahl enthaltener Tabs
  • Rechtsklick auf einen Tab →„Zu neuer Gruppe hinzufügen“ erstellt eine Gruppe. Sie lässt sich benennen und einfärben.
  • Ein Klick auf den Gruppen-Chip klappt ihn ein bzw. aus.
  • Doppelklick auf einen Tab ändert Name und Hintergrundfarbe.
  • Per Drag & Drop lassen sich Tabs neu anordnen und in Gruppen verschieben.
  • Der Tab-Zustand bleibt nach einem Neustart erhalten (in den Einstellungen abschaltbar).

Geteilte Ansicht

Rechtsklick auf eine Sammlung →„Rechts geteilt anzeigen“ zeigt zwei Sammlungen nebeneinander an. Praktisch, um Stammdaten mit Transaktionen abzugleichen.

Geteilte Ansicht. Links und rechts werden unterschiedliche Sammlungen angezeigt, jede mit eigener Abfrage
Geteilte Ansicht. Links und rechts werden unterschiedliche Sammlungen angezeigt, jede mit eigener Abfrage
  • Auch das Ziehen einer Sammlung aus der Seitenleiste an den linken oder rechten Bildschirmrand teilt die Ansicht.
  • Ziehen Sie den Chip eines Bereichs, um links und rechts zu tauschen oder ihn in einen neuen Tab zu verschieben.
  • Der Split-Status bleibt pro Tab erhalten.

Echtzeit-Überwachung

Klicken Sie in der Werkzeugleiste auf „Überwachen“, und Änderungen an der angezeigten Sammlung werden live ins Raster übernommen. Inhalte, die von einer anderen App oder einem Server geschrieben werden, fließen ohne Neuladen direkt ein.

  • Im Dialog vor dem Start können Sie Bedingungen (Feld, Wert), Sortierung und Anzahl eingrenzen.
  • Im Änderungs-Feed rechts erscheinen „Hinzugefügt / Aktualisiert / Gelöscht“ in chronologischer Reihenfolge, inklusive der geänderten Feldnamen.
  • Die Überwachung ist rein lesend. Schreibvorgänge während der Überwachung durchlaufen wie gewohnt die Sicherheits-Pipeline.
  • Es können bis zu 5 Überwachungen gleichzeitig laufen.
  • Nach der eingestellten Zeit stoppt die Überwachung automatisch (Zeit in den Einstellungen änderbar). Das verhindert einen übermäßigen Verbrauch an Lesevorgängen.
Überwacht wird ein Fenster der ersten N passenden Einträge. Bei großen Sammlungen erleichtert eine Eingrenzung per Bedingung oder eine absteigende Sortierung nach updatedAt das Verfolgen der „neuesten Änderungen“.
Echtzeit-Überwachung (LIVE) mit chronologischem Änderungs-Feed
Echtzeit-Überwachung (LIVE) mit chronologischem Änderungs-Feed

Daten bearbeiten

Ein Doppelklick auf eine Zelle öffnet die Inline-Bearbeitung.Enter bestätigt, Esc bricht ab. Typen wie int oder timestamp bleiben beim Schreiben erhalten.

Inline-Bearbeitung. Zellen lassen sich unter Beibehaltung des Typs ändern
Inline-Bearbeitung. Zellen lassen sich unter Beibehaltung des Typs ändern

Jede Schreiboperation durchläuft die Sicherheits-Pipeline:

  1. Bestätigen — Ein Dialog erscheint, abgestimmt auf Umgebungs-Label × Operationsrisiko. Destruktive Operationen in der Produktion erfordern dieEingabe der Projekt-ID.
  2. Automatisches Backup — Betroffene Dokumente werden vor der Ausführung als Snapshot gesichert.
  3. Ausführen — Der Schreibvorgang wird durchgeführt.
  4. Protokoll — Wird unabhängig von Erfolg oder Misserfolg erfasst (einsehbar über „Protokoll“ in der unteren Leiste).
Bei Verbindungen mit dem Label „Produktion“ ist die Bestätigung bei Löschungen und Massenaktualisierungen am strengsten. Für reine Recherchen empfiehlt sich, die Verbindung aufNur-Lese zu setzen (Rechtsklick auf die Verbindung → Nur-Lese).

Backup und Wiederherstellung

Snapshots, die unmittelbar vor destruktiven Operationen erstellt wurden, sammeln sich unter„Backup“ in der unteren Leiste. Eine Auswahl öffnet dieWiederherstellungsvorschau, in der Sie den Unterschied — neu erstellen / überschreiben / unverändert — prüfen können, bevor Sie wiederherstellen.

Wiederherstellungsvorschau. Unterschiede pro Feld prüfen, dann „Wiederherstellung ausführen“
Wiederherstellungsvorschau. Unterschiede pro Feld prüfen, dann „Wiederherstellung ausführen“
  • Mit ⌘Z (oder dem ↩︎-Symbol in der Seitenleiste) können SieIhre letzte Schreiboperation sofort rückgängig machen.
  • Ältere Snapshots werden gelöscht, sobald die Generationsobergrenze überschritten ist. Möchten Sie einen behalten, heften Sie ihn mit 📌 an.

Konsole

In der Seitenleiste unter „Konsole“ schreiben Sie Abfragen in JavaScript im Stil von firebase-admin. Mit ⌘Enter ausgeführt, erscheint das Ergebnis in einer typannotierten Tabelle.

Abfrage in JS schreiben und ausführen. Das Ergebnis wird als Tabelle angezeigt und kann als CSV / JSON kopiert werden
Abfrage in JS schreiben und ausführen. Das Ergebnis wird als Tabelle angezeigt und kann als CSV / JSON kopiert werden
const snap = await db.collection('orders')
  .where('status', '==', 'paid')
  .orderBy('amount', 'desc')
  .limit(20)
  .get();
return snap.docs.map((d) => ({ id: d.id, ...d.data() }));
  • Für die Maus-Fraktion gibt es einen visuellen Baukasten (Lesen / Aktualisieren / Erstellen / Löschen). Zusammengestellte Bedingungen lassen sich über „In Code übernehmen“ in JS umwandeln.
  • Code mit Schreibvorgängen läuft in der Reihenfolge Testlauf → Schreibvorschau → Anwendenab, sodass sich Daten nie unerwartet ändern.
  • Auch die Join-Ansicht (Verknüpfung) wird unterstützt.

CSV-Import/-Export

Export

Über „CSV-Export“ in der Werkzeugleiste einer Sammlung können Sie das aktuell angezeigte Abfrageergebnis (inklusive Filter und Sortierung) als CSV speichern. DankTypannotation in der Kopfzeile bleiben die Typen auch beim späteren erneuten Import erhalten.

Import

CSV-Import-Assistent. Spaltentypen und Modus prüfen, dann nach der Anzahl-Vorschau ausführen
CSV-Import-Assistent. Spaltentypen und Modus prüfen, dann nach der Anzahl-Vorschau ausführen
  1. „Import“ in der Werkzeugleiste → CSV-Datei auswählen (Shift_JIS wird automatisch erkannt).
  2. Typ und Modus (upsert / nur neu / nur aktualisieren) jeder Spalte prüfen.
  3. „Anzahl prüfen“ zeigt eine Vorschau, wie viele Einträge neu erstellt bzw. überschrieben werden.
  4. „Import ausführen“ → nach einem Bestätigungsdialog wird importiert. Überschriebene Einträge werden vorher automatisch gesichert.

Schemaprüfung (Erkennung von Schemaabweichungen)

Rechtsklick auf eine Sammlung →„Schemaprüfung…“liest die gesamte Sammlung und erkennt automatischFelder mit gemischten Typen, Felder, die nur bei einem Teil der Dokumente fehlen, sowie seltene Felder mit möglichen Tippfehlern(bis zu 20.000 Einträge).

  • Fehlende Felder, die über dieselbe Dokumentgruppe hinweg auftreten, werden in einer Karte gebündelt. „Alle öffnen“ markiert alle betroffenen Zeilen auf einmal — praktisch für anschließendes Massenlöschen.
  • Ein Klick auf die ID eines betroffenen Dokuments scrollt automatisch zur entsprechenden Zeile im Raster und hebt sie hervor.
  • Die Ergebnisse bleiben auch nach Schließen des Assistenten erhalten, sodass Sie beliebig oft zwischen Prüfung und Dokumenten wechseln können.
  • Im Tab Zod-Schemaprüfung können Sie ein Zod-Schema (TypeScript) einfügen, um alle Dokumente zu validieren.
Ergebnisse der Schema-Prüfung (gemischte Typen, fehlende Felder, mögliche Tippfehler)
Ergebnisse der Schema-Prüfung (gemischte Typen, fehlende Felder, mögliche Tippfehler)

Umgebungen vergleichen und kopieren

Mit anderer Umgebung vergleichen

Rechtsklick auf eine Sammlung →„Mit anderer Umgebung vergleichen…“stellt gleichnamige Sammlungen zweier Umgebungen, etwa Entwicklung und Produktion, gegenüber. Unterschiede (Hinzufügungen / Löschungen / Änderungen) werden pro Dokument und Feld aufgelistet.

  • Sie können Felder wie updatedAt vom Vergleich ausschließen.
  • Die Unterschiede lassen sich als CSV exportieren.

In andere Umgebung kopieren

Mit „In andere Umgebung kopieren…“lässt sich eine Sammlung in eine andere Verbindung (Umgebung) duplizieren. Vor der Ausführung wird eine Vorschau von Anzahl und möglichen Überschreibungen angezeigt, und Schreibvorgänge in die Produktion durchlaufen wie gewohnt die strenge Bestätigung.

Vergleich Dev vs. Produktion (abweichende und nur einseitig vorhandene Dokumente)
Vergleich Dev vs. Produktion (abweichende und nur einseitig vorhandene Dokumente)

Authentication-Nutzer

Über „Authentication“ in der Seitenleiste können Sie Nutzer von Firebase Authentication auflisten und verwalten.

  • E-Mail, Anzeigename, Anbieter, Erstellungsdatum und letzte Anmeldung werden aufgelistet. Über den Schalter für logische Namen lassen sich auch die Feldnamen auf Deutsch anzeigen.
  • Unterstützt Deaktivieren / Aktivieren und Löschen von Nutzern sowie das Versenden von E-Mails zum Zurücksetzen des Passworts.
  • Die UID eines Nutzers lässt sich kopieren, um sie mit Dokumenten in Firestore abzugleichen.
  • Destruktive Operationen (z. B. Löschen) durchlaufen dieselbe Sicherheits-Pipeline wie bei Firestore (bestätigen → Protokoll).
Liste der Authentication-Benutzer
Liste der Authentication-Benutzer

Gemeinsames Log (wer / wann / was)

Zeichnet Metadaten von Schreibvorgängen im Firestore des Projekts auf, sodass alle, die sich mit demselben Projekt verbinden, sehen, wer wann was getan hat.

  • Pro Verbindung aktivieren: Rechtsklick auf die Verbindung → „Gemeinsames Log aufzeichnen". Der Bestätigungsdialog erklärt alles und lässt Sie Ihren Bearbeiternamen direkt festlegen.
  • Es werden nur Metadaten aufgezeichnet (Bearbeitername, Vorgangsart, Zielpfad, Ergebnis, Dauer). Dokumentwerte werden nie einbezogen und nichts wird an externe Server gesendet — die Ereignisse liegen in der Sammlung _firescope_audit des Projekts.
  • Ansehen unter Vorgangsprotokoll → Tab „Gemeinsames Log": nach Datum gruppierte Zeitleiste mit Filtern für Bearbeiter/Art/Zeitraum. Klicken Sie auf eine Zeile für Details und öffnen Sie das Zieldokument direkt im Grid.
  • Logs werden nach 30 Tagen automatisch gelöscht.
Ihren Bearbeiternamen können Sie jederzeit unter Einstellungen → Profil ändern. Ohne Namen aufgezeichnete Vorgänge erscheinen unter dem Computernamen.
Gemeinsames Log: nach Datum gruppierte Zeitleiste, wer was getan hat
Gemeinsames Log: nach Datum gruppierte Zeitleiste, wer was getan hat

Updates

  • Auf Updates wird alle 6 Stunden sowie beim Start automatisch geprüft (manuelle Prüfung auch über Einstellungen → Info → „Nach Updates suchen“).
  • Wird ein verpflichtendes Update veröffentlicht, läuft ab dem Update-Bildschirm beim Start automatisch Herunterladen → Neustarten → Anwenden ab. Es ist keine Bedienung nötig.
  • Nur bei einem Fehlschlag (z. B. offline) wird der manuelle Download über den Browser angeboten.
Einstellungen → Info (Version und Update-Prüfung)
Einstellungen → Info (Version und Update-Prüfung)

Preise und Lizenz

  • Ab dem ersten Start stehen 14 Tage als Testversionmit allen Funktionen zur Verfügung. Weder Registrierung noch Zahlungsangaben sind nötig.
  • Auch nach Ablauf bleibt das Ansehen der Daten weiterhin kostenlos möglich.
  • Der Kauf erfolgt direkt in der App: Wählen Sie unten rechts unter ⚙ Einstellungen → Lizenzeinen Plan (Pro / TEAM, monatlich / jährlich) — die Stripe-Zahlungsseite öffnet sich im Browser. Nach Abschluss der Zahlung aktiviert die App die Lizenz automatisch.
  • Beim Wechsel auf einen anderen Mac lösen Sie die Lizenz zuerst auf dem alten Gerät und aktivieren sie danach auf dem neuen.

Details zu den Plänen finden Sie auf der Preisseite.

Einstellungen → Konto (Test-/Lizenzstatus)
Einstellungen → Konto (Test-/Lizenzstatus)

Häufige Fragen

Keine Verbindung möglich / „Authentifizierung fehlgeschlagen“ wird angezeigt
Prüfen Sie, ob die JSON-Datei tatsächlich der Dienstkontoschlüssel des Zielprojekts ist. Wurde der Schlüssel neu erstellt, trennen Sie die alte Verbindung und verbinden Sie sich neu mit der neuen JSON-Datei.
Werden Daten irgendwohin gesendet?
Nein. Firescope greift direkt von Ihrem Mac aus auf Firestore zu. Weder Schlüssel noch Daten werden an einen externen Server gesendet.
Was macht der „Produktionsschutz“ eigentlich?
Ein Mechanismus, der die Stärke der Bestätigung automatisch anhand des Umgebungs-Labels der Verbindung und des Operationsrisikos anpasst. Das Löschen einer Sammlung in der Produktion lässt sich zum Beispiel nur ausführen, wenn die Projekt-ID manuell eingegeben wird. Da die Prüfung nicht nur ein Hinweis in der Oberfläche ist, sondern im Kern der App (Hauptprozess) erfolgt, lässt sie sich nicht versehentlich umgehen.
Gibt es eine Windows-Version?
Ja. Laden SieFirescope-Setup.exe über die Download-Seiteherunter (erscheint eine SmartScreen-Warnung, klicken Sie auf „Weitere Informationen“ → „Trotzdem ausführen“).
Kann ich weitere Sprachen hinzufügen?
Ja. Exportieren Sie unter Einstellungen → Sprache ein Sprachpaket (JSON), übersetzen Sie es und importieren Sie es anschließend wieder — so lässt sich jede beliebige Sprache hinzufügen.
Produktionsschutz: Dialog, der die Eingabe der Projekt-ID verlangt
Produktionsschutz: Dialog, der die Eingabe der Projekt-ID verlangt

Befehlspalette (⌘K)

Mit ⌘K rufen Sie von überall eine sammlungsübergreifende Suche auf. Sie durchsucht Sammlungsnamen, Verbindungsnamen, Bildschirme sowie „Zuletzt angesehen“/Lesezeichen auf einmal, und bei einer Eingabe von 6 oder mehr Zeichen erscheinen auch Treffer für die sammlungsübergreifende Suche nach Dokument-ID.

  • Mit ↑↓ zwischen den Vorschlägen wechseln, mit Enter ausführen. So wechseln Sie Bildschirme, ohne die Maus zu benutzen.
  • Auch häufig genutzte Aktionen wie das Umschalten des Designs, das Ein-/Ausschalten der Wertmaskierung oder das Öffnen von Einstellungen und der Tastenkürzel-Übersicht lassen sich von hier aus aufrufen.
Befehlspalette (⌘K). Sammlungsübergreifende Suche nach Sammlung, Verbindung und Bildschirm
Befehlspalette (⌘K). Sammlungsübergreifende Suche nach Sammlung, Verbindung und Bildschirm

Erweiterte Abfragen

Zusammengestellte Abfragebedingungen lassen sich als gespeicherte Abfrage unter einem Namen sichern und jederzeit aus einer Liste wieder aufrufen (Bedingungen, Sortierung und Anzahl werden gemeinsam wiederhergestellt).

Menü der gespeicherten Abfragen. Unter einem Namen speichern und jederzeit wieder aufrufen
Menü der gespeicherten Abfragen. Unter einem Namen speichern und jederzeit wieder aufrufen

Wählen Sie ein numerisches Feld (int / double), zeigt die Werkzeugleiste Summe und Durchschnitt nach Anwendung der aktuellen Filter an.

Aggregation: Summe und Durchschnitt numerischer Felder sofort berechnen
Aggregation: Summe und Durchschnitt numerischer Felder sofort berechnen

„Diagramm“zeichnet aus den bereits geladenen Dokumenten sofort ein Histogramm für numerische Felder bzw. die Häufigkeitsverteilung (Top 10) für Text-/Enum-Felder. Es entstehen keine zusätzlichen Lesevorgänge.

Diagramm: Histogramm für numerische Felder, Häufigkeitsverteilung für Textfelder
Diagramm: Histogramm für numerische Felder, Häufigkeitsverteilung für Textfelder

„Code-Generierung“kopiert die zusammengestellten Bedingungen als firebase-admin(Node.js)-Code, oder — falls ein zusammengesetzter Index nötig ist — als Definition im Formatfirestore.indexes.json.

Menü der Code-Generierung (Admin-SDK-Code / Indexdefinition)
Menü der Code-Generierung (Admin-SDK-Code / Indexdefinition)

Schema als Schreibschutz

Im Tab „Zod-Schemaprüfung“ (siehe Schemaprüfung) lässt sich neben der Validierung auch die Durchsetzung beim Schreibenkonfigurieren. Wählen Sie aus drei Stufen: Keine / Warnung / Blockieren. Bei „Blockieren“ verweigert der Hauptprozess Schreibvorgänge, die gegen das Schema verstoßen (auch eine Umgehung der Oberfläche wird verhindert). Die Durchsetzung gilt nur für Dokumente, deren Pfad exakt mit dem Sammlungspfad übereinstimmt.

Ein Zod-Schema registrieren und die Durchsetzung beim Schreiben auf „Blockieren“ setzen
Ein Zod-Schema registrieren und die Durchsetzung beim Schreiben auf „Blockieren“ setzen

Ist ein Zod-Schema registriert, steht beim Erstellen eines neuen Dokuments der Modus„Formulareingabe“zur Verfügung. Das Formular wird automatisch aus dem Schematyp generiert, sodass Sie Pflichtfelder ausfüllen können, ohne JSON von Hand zu schreiben (bei Sammlungen ohne registriertes Schema lässt sich das Formular auch aus der Typermittlung der Schemaprüfung zusammenstellen).

Formulareingabe-Modus für neue Dokumente (automatisch aus dem Schema generiert)
Formulareingabe-Modus für neue Dokumente (automatisch aus dem Schema generiert)

ER-Diagramm exportieren

Rechtsklick auf eine Verbindung in der Seitenleiste → "ER-Diagramm exportieren…": Jede Collection wird per Stichprobe (max. 100 Dokumente) erfasst und daraus automatisch ein ER-Diagramm erzeugt. Neben Reference-Feldern und Subcollections werden auch String-ID-Referenzen wie customerId aus Feldnamen abgeleitet und als gestrichelte Beziehungen gezeichnet.

  • "Felder anzeigen", "Nur Schlüssel", "Typen anzeigen" und "Logische Namen einbeziehen" wechseln sofort — alle Varianten sind vorgerendert.
  • Zoomen per Pinch oder Strg+Mausrad, Verschieben per Drag, ein Klick passt das ganze Diagramm ein.
  • Mermaid-Text kopieren oder als .mmd / .svg speichern — direkt in GitHub oder Notion einfügbar.
  • Linien zu Eltern mit vielen Subcollections werden im Diagramm zur besseren Lesbarkeit weggelassen (im Mermaid-Text enthalten).
ER-Diagramm-Export (Collection-Struktur und Beziehungen automatisch als Diagramm)
ER-Diagramm-Export (Collection-Struktur und Beziehungen automatisch als Diagramm)

Datenmigration

Bei „Massenaktualisierung“lassen sich neben dem gesammelten Setzen von Feldern auch Feldnamen ändern und Typen umwandeln. Prüfen Sie vor der Ausführung stets im Testlauf (Dry-Run) den Unterschied für alle Einträge, bevor Sie fortfahren.

Vorschau (Dry-Run) beim Umbenennen eines Feldes per Massenaktualisierung
Vorschau (Dry-Run) beim Umbenennen eines Feldes per Massenaktualisierung

Rechtsklick auf eine Sammlung → „Sammlung löschen…“ löschtrekursiv inklusive aller Untersammlungen. Die Anzahl im Bestätigungsdialog schließt die Untersammlungen mit ein, und die betroffenen Dokumente werden vor der Ausführung automatisch als Snapshot gesichert.

Bestätigung beim Löschen einer Sammlung (Anzahl inklusive Untersammlungen)
Bestätigung beim Löschen einer Sammlung (Anzahl inklusive Untersammlungen)

„Testdaten generieren“schätzt anhand der Typverteilung vorhandener Dokumente (Schemaprüfung) die Feldstruktur und erstellt in einem Zug eine festgelegte Anzahl von Dummy-Dokumenten. Gedacht für Tests in Entwicklung und Emulator.

Testdaten generieren: aus der Typverteilung geschätzte Feldstruktur mit Vorschau
Testdaten generieren: aus der Typverteilung geschätzte Feldstruktur mit Vorschau

Vergleich und Unterschiede

Der Umgebungsvergleichunterstützt auch die Differenzsynchronisation: Wählen Sie Unterschiede (abweichender Inhalt / nur einseitig vorhandene Dokumente) aus und übernehmen Sie sie direkt in die Zielverbindung. Die Richtung der Synchronisation wird anhand der Umgebungs-Labels der Verbindungen vorgeschlagen, und die Übernahme durchläuft wie gewohnt die Sicherheits-Pipeline (Bestätigung, automatisches Backup).

Über die Schaltfläche „Vergleichen“im rechten Dokumentenpanel lässt sich das geöffnete Dokument feldweise mit einem beliebigen anderen Dokument vergleichen (auch aus einer anderen Sammlung oder Verbindung).

Unterschied zwischen zwei Dokumenten (Vergleich mit gleichnamigem Dokument in anderer Verbindung)
Unterschied zwischen zwei Dokumenten (Vergleich mit gleichnamigem Dokument in anderer Verbindung)

Der „Änderungsverlauf“eines Dokuments ordnet automatische Backups chronologisch als Versionen an; wählen Sie zwei beliebige Versionen (auch die aktuelle), um die Unterschiede zu vergleichen.

Änderungsverlauf: zwei beliebige Versionen zum Vergleichen auswählen
Änderungsverlauf: zwei beliebige Versionen zum Vergleichen auswählen

Suchen und Teilen

Die „Wertsuche“durchsucht alle Dokumente und Felder einer Sammlung nach einem Wert, dessen Feld Ihnen nicht bekannt ist. Vor der Ausführung wird eine Schätzung der Lesevorgänge angezeigt, sodass sich die Funktion auch bei großen Sammlungen unbedenklich nutzen lässt.

Ergebnis der sammlungsübergreifenden Wertsuche
Ergebnis der sammlungsübergreifenden Wertsuche

Mit einem ★-Lesezeichenversehene Dokumente lassen sich über das ★-Symbol in der Seitenleiste verbindungsübergreifend jederzeit wieder aufrufen. Der Tab „Zuletzt angesehen“ speichert automatisch den Verlauf geöffneter Dokumente.

Liste der Lesezeichen und zuletzt angesehenen Dokumente
Liste der Lesezeichen und zuletzt angesehenen Dokumente
  • Über „Link“im rechten Dokumentenpanel lässt sich ein Deep-Link(firescope://) kopieren. Wird er z. B. über Slack geteilt, öffnet er beim Empfänger das entsprechende Dokument direkt in dessen Firescope.
  • Über das Symbol für externe Links in der Brotkrümelnavigation gelangen Sie direkt zum entsprechenden Pfad in der Firebase-Konsole (Web) (bei Emulator-Verbindungen ausgeblendet).

Betrieb

Für die Echtzeit-Überwachunglassen sich Bedingungsalarmeeinrichten. Registrieren Sie „bei Hinzufügen“, „bei Löschen“ oder „wenn sich ein bestimmtes Feld ändert“, und Sie erhalten bei einer passenden Änderung eine Desktop-Benachrichtigung.

Einrichtung eines Bedingungsalarms für die Überwachung (Benachrichtigung bei Änderung eines bestimmten Feldes)
Einrichtung eines Bedingungsalarms für die Überwachung (Benachrichtigung bei Änderung eines bestimmten Feldes)

Ein Klick auf die Anzahl der Lesevorgänge in der Fußzeile öffnet ein Popover mit der geschätzten Anzahl der Lesevorgänge, den geschätzten Kosten und dem Verlauf der aktuellen Sitzung.

Popover der Lesevorgänge in der Fußzeile (geschätzte Kosten und Verlauf)
Popover der Lesevorgänge in der Fußzeile (geschätzte Kosten und Verlauf)

Im Tab „Teilen & Übergabe“der Einstellungen lassen sich Teile der UI-Einstellungen — logische Feldnamen, gespeicherte Abfragen, Lesezeichen usw. — in eine einzige JSON-Datei exportieren bzw. daraus importieren. Da weder private Schlüssel der Verbindungen noch Lizenzinformationen oder Umgebungs-Labels enthalten sind, eignet sich dies zum Teilen im Team oder beim Gerätewechsel.

Tab „Teilen & Übergabe“ der Einstellungen
Tab „Teilen & Übergabe“ der Einstellungen

Aktivieren Sie in der Werkzeugleiste „Werte ausblenden“, werden Feldnamen, Typen und Struktur beibehalten, während nur die tatsächlichen Daten durch Platzhalter (••••) ersetzt werden. Praktisch bei Bildschirmfreigaben oder Screenshots (reine Anzeigefunktion — die echten Daten werden nicht verändert).

Datenmaskierung aktiviert: Werte werden durch Platzhalter ersetzt
Datenmaskierung aktiviert: Werte werden durch Platzhalter ersetzt

MCP-Server (Integration mit KI-Agenten)

Firescope wird mit einem MCP(Model Context Protocol) -Server ausgeliefert. Verbindet sich ein KI-Agent wie Claude Code damit, kann er direkt im Gespräch Sammlungen von Firestore auflisten, Dokumente abrufen und Abfragen ausführen.

Version 1 ist rein lesend. Da destruktive Operationen grundsätzlich die Sicherheits-Pipeline durchlaufen müssen, werden bewusst keine schreibenden Werkzeuge angeboten.

Start (im Repository-Wurzelverzeichnis):

# Für die Verbindung mit dem Emulator
FIRESCOPE_MCP_PROJECT_ID=your-project \
FIRESCOPE_MCP_EMULATOR_HOST=127.0.0.1:8080 \
npm run mcp

# Für die Verbindung mit einem echten Projekt über ein Dienstkonto-JSON
FIRESCOPE_MCP_SERVICE_ACCOUNT_PATH=/path/to/service-account.json \
npm run mcp

Beispielkonfiguration für den MCP-Client (.mcp.json):

{
  "mcpServers": {
    "firescope": {
      "command": "npm",
      "args": ["run", "mcp"],
      "cwd": "/path/to/firescope",
      "env": {
        "FIRESCOPE_MCP_SERVICE_ACCOUNT_PATH": "/path/to/service-account.json"
      }
    }
  }
}
  • Es werden 3 Werkzeuge bereitgestellt: Sammlungen auflisten (firestore_list_collections), Dokument abrufen (firestore_get_document) und Abfrage ausführen (firestore_query_collection, unterstützt Filter/Sortierung/Obergrenze).
  • Da dieselbe interne Logik wie der Abfrage-Builder der GUI genutzt wird, entspricht die Form der Ergebnisse der Anzeige in der App.