Communitygithub.com

Mobile-DOM-Fidelity

Nutze diese Fähigkeit, um eine echte Website originalgetreu nachzubilden.

Was ist Mobile-DOM-Fidelity?

Diese Fähigkeit stellt sicher, dass die Nachbildung einer echten Website pixelgenau auf Basis des mobilen DOMs erfolgt, nicht anhand eines statischen Screenshots. Sie ist für Entwickler und KI-Agenten gedacht, die HyperFrames-Kompositionen erstellen und dabei die exakte Text-, Bild- und Interaktionslogik der Originalseite benötigen. Die Fähigkeit unterstützt Browser-Workflows mit mobilem Viewport und MCP DevTools zum Inspizieren des DOMs. Sie definiert einen klaren Workflow: Öffnen der URL, Definieren eines Referenz-Viewports (z. B. 390x844), Extrahieren von Selektoren, Text, Bildquellen und Klickkoordinaten, sowie Validierung der Sichtbarkeit vor jeder Aktion. Die Ausgabe ist eine strukturierte Kartenansicht (Map), die jede Szene beschreibt und als direkte Vorlage für die HyperFrames-Komposition dient.

Funktioniert mit~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/galeonel/hyperframes-skills/tree/main/skills/mobile-dom-fidelity

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Mobile DOM Fidelity

Nutze diese Fähigkeit, bevor du die Komposition schreibst. Die Quelle der Wahrheit ist die echte Website in einem mobilen Viewport, nicht ein statischer Screenshot.

Arbeitsablauf

  1. Öffne die URL in einem Browser mit einem mobilen Viewport.
  2. Definiere einen Referenz-Viewport, üblicherweise 390x844, 393x852, 414x896 oder ähnlich.
  3. Untersuche die DOM-Abschnitte, die im Video erscheinen werden.
  4. Extrahiere Text, href, src, alt, Hauptklassen, Rollen und interaktive Zustände.
  5. Ordne Klickkoordinaten erst zu, nachdem bestätigt wurde, dass die Komponente sichtbar ist.
  6. Liste relevante Zustände auf: vor Klick, nach Klick, nach Scrollen, Warenkorb, Kasse oder Bestätigung.

MCP DevTools / Konsole

Wenn MCP DevTools verfügbar ist, nutze es, um das echte DOM über die Konsole abzufragen. Beispiele für zu extrahierende Daten:

const el = document.querySelector("SECTION_SELECTOR");
const rect = el.getBoundingClientRect();
({
  text: el.innerText,
  rect: { x: rect.x, y: rect.y, width: rect.width, height: rect.height },
  classes: el.className,
  images: [...el.querySelectorAll("img")].map((img) => ({
    src: img.currentSrc || img.src,
    alt: img.alt,
    width: img.naturalWidth,
    height: img.naturalHeight,
  })),
  links: [...el.querySelectorAll("a")].map((a) => ({
    text: a.innerText,
    href: a.href,
    classes: a.className,
  })),
});

Um einen Klick zu validieren:

const target = document.querySelector("TARGET_SELECTOR");
const r = target.getBoundingClientRect();
({ centerX: r.x + r.width / 2, centerY: r.y + r.height / 2, visible: r.width > 0 && r.height > 0 });

Verwende diese Werte, um Cursor-Timing und -Position in der Komposition zu definieren.

Was zu erfassen ist

  • Exakte Produktnamen.
  • Vorteile genau wie dargestellt.
  • Preise und Bedingungen.
  • Buttons und CTAs.
  • Hauptbilder.
  • Karussell-Karten.
  • Stabile Selektoren für die Klick-Validierung.

Regeln

  • Erfinde keinen Text, wenn das DOM den Text bereitstellt.
  • Klicke keine Komponenten, bevor sie in der Zeitleiste erscheinen.
  • Verwende Screenshots nicht als einzige Quelle der Struktur.
  • Veröffentliche keine Schnappschüsse, Cookies, Logs oder Inspektionsdateien.
  • Wenn die Website Lazy Loading verwendet, warte, bis die Bilder geladen sind, bevor du src extrahierst.

Erwartete Übergabe

Erstelle eine kurze Kartenansicht:

Szene: Produktkarussell
Selektor: .rf-cards-scroller-platter
Sichtbar bei: 2.0s
Aktion: horizontaler Scroll
Klickziel: Kartenlink, Mitte x/y nachdem die Karte wieder in der Mitte ist
Erforderlicher Text: ...
Erforderliche Bilder: ...

Nutze diese Kartenansicht, um die HyperFrames-Komposition zu steuern.

Wiedergabetreuekriterien

Betrachte den Abschnitt nur dann als originalgetreu, wenn:

  • Text mit dem ursprünglichen DOM übereinstimmt;
  • Bilder dieselben oder zulässige Äquivalente sind;
  • Abstände der mobilen Hierarchie folgen;
  • Karten, Buttons und Labels die gleiche visuelle Reihenfolge verwenden;
  • Klick innerhalb des tatsächlichen Komponenten-Begrenzungsrahmens erfolgt;
  • Komponente vor der Cursor-Aktion gerendert wird.

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Verwandte Skills