Zum Inhalt springen
Was Sie tun

Die Läufe, die ein Skript nicht erreicht: Ihre Sitzung, Ihr Browser.

Wo der Ablauf schon geskriptet ist, erledigt Playwright die Arbeit, und wir sagen das offen. Wo nicht, muss ein leerer Browser sich erst anmelden: bei der Staging-Umgebung eines Kunden hinter SSO, bei einem Zustand, den Sie von Hand erreicht haben, bei der Seite, auf der Sie gerade stehen. Dieser ist schon da.

Sie führen. Nichts tippt oder klickt, bis Sie es drücken oder das Klicken Ihrem Agenten übergebenAuf YouTube ansehen
Qiksy Forms: one-click fill scenarios and personasQiksy Forms: one-click fill scenarios and personasQiksy live findings with one-click bug actionsQiksy live findings with one-click bug actions
Kein weiterer autonomer Tester

Der Mensch fährt. Qiksy nimmt wahr.

Jedes Tool, das „die KI testet Ihre App für Sie“ verspricht, läuft auf dieselben drei Klippen. Qiksy fährt an allen drei vorbei, indem Sie am Steuer bleiben und bei jedem Schritt Hilfe bekommen.

Das Anmeldeproblem verschwindet

SSO, MFA und Captchas erledigen jeden autonomen Agenten. Sie sind längst angemeldet und auf dem richtigen Bildschirm, und von dort hilft Qiksy einfach weiter.

Läuft sofort auf jeder Website

Es ist eine Auflage, keine Integration. Setzen Sie es auf jede Web-App, ob internes Tool, Staging oder Produktion, und es arbeitet. Kein SDK, keine Pipeline.

Ehrlich, nicht magisch

„Die KI übersieht keinen Bug“ ist ein Versprechen, das beim ersten Übersehen bricht. „Erinnert an Randfälle und fängt Verstöße ab, während Sie testen“ ist eines, das wir halten.

Die Runde, die Wert schafft

Fünf Schritte, jeder ein Klick.

Das ist der ganze Ablauf, von der geöffneten Seite bis zur Korrektur in der Hand eines Entwicklers oder eines KI-Agenten.

01

Erkennen

Qiksy liest jedes Formular und zeigt, was es zu jedem Feld verstanden hat: Beschriftung, Typ, Grenzen. Nachvollziehbar, nicht geraten.

02

Füllen

Ein Klick legt ein stimmiges Szenario hinein: gültige Person, Randfall (Maximallängen, Unicode), ungültig (kaputte Formate, XSS-Sonde) oder leeren. Kein Faker-Müll.

03

Abfangen

Während Sie klicken, laufen die Funde ein: Konsolenfehler, fehlgeschlagene Anfragen samt Antwort des Servers, WCAG-AA- und Markup-Probleme.

04

Kopieren

Jeder Fund wird zum fertigen Bugreport, mit Selektor, Reproduktionsschritten, Screenshot und Umgebung im Anhang.

05

Übergeben

Die ganze Sitzung an einen KI-Agenten exportieren oder einen Bericht erzeugen, den Sie dem Kunden zeigen können. Die Runde schließt sich selbst.

Alles im Panel

Ein vollständiges QA-Cockpit, in einer Seitenleiste.

Alles kostenlos und von der ersten Minute an eingeschaltet, Sitzungsaufnahme und Berichte eingeschlossen. Pro ist genau eines: die Brücke zu Ihrem Coding-Agenten.

Klug gefüllte Formulare

Daten, die zu einer Person passen, also dieselbe E-Mail zweimal, Passwortbestätigung und ein Land, das es wirklich gibt, in nativen Feldern, in ARIA-Widgets wie Datumsauswahl und Comboboxen von Radix oder shadcn und sogar in Datei-Uploads: ein neutrales Bild oder Dokument, passend zu dem, was das Feld annimmt.

Funde in Echtzeit

Konsolenfehler, JS-Ausnahmen, unbehandelte Rejections und fehlgeschlagene Netzanfragen, erfasst ab document_start, entdoppelt, nach Schwere gefiltert.

Seitenprüfung nach WCAG AA

Bedienelemente ohne Beschriftung, Knöpfe ohne zugänglichen Namen, verfehlte Kontraste, kaputte Bilder, doppelte IDs, fehlendes lang, positiver tabindex. Und über die Agentenbrücke (1.6): die mitgelieferte Regel-Engine <b>axe-core</b>, eine Wanderung über die Tabulatortaste, die auflistet, was ein Tastaturnutzer nie erreicht, und eine Prüfung, ob Toasts dem Screenreader tatsächlich angekündigt werden.

Absende-Wächter

Bringt einen Absendeversuch mit fehlgeschlagenen Anfragen, nativer Validierung, aria-invalid und Fehler-Toasts zusammen, und meldet die echte Meldung, nicht bloß „ungültig“.

Sitzungsaufnahme

Ein Zeitstrahl über alle Seitenwechsel: jeder Besuch mit seinen Funden, dem Netzprotokoll und einem Screenshot als Vorschau. Export als Bug, HAR oder Bericht.

Rollen und RBAC

Die Anmeldung einer Domain als benannte Rolle sichern, also Cookies (auch HttpOnly), localStorage und sessionStorage, und wiederherstellen, um Admin gegen Mitglied gegen anonym zu prüfen.

Liest Stile, nicht nur Struktur

Berechnete Farbe, Schrift, Abstände und die CSS-Variablen, die hier gelten. „Dieser Knopf rendert #3B82F6 bei 15px“ ist damit eine prüfbare Tatsache gegen das Design und kein Blinzeln auf einen Screenshot.

Arsenal für Randwerte

Rechtsklick auf ein Feld gibt BLNS-Reizstrings, unmögliche Namen, Grenzzahlen, Injection-Sonden und Stripe-Testkarten, passend zur Art des Feldes.

Tresor für Testdaten

Benannte Personen je Website: anwenden, als JSON bearbeiten, exportieren und importieren, um sie im Team zu teilen. Die aktuellen Werte eines Formulars sichern Sie mit einem Klick.

Feindliche Dateien für Upload-Felder

Hängen Sie eine 0-Byte-Datei an, eine mit 12 MB, ein PNG mit der Endung .pdf, einen Dateinamen mit 255 Zeichen oder ein SVG mit eingebautem Skript. Das ist die Idee der Reizstrings, angewandt auf das Element, das am häufigsten bricht.

Hervorheben und untersuchen

Ein Klick auf einen Fund dunkelt die Seite ab und umrandet das Element. Jedes Element lässt sich anwählen, Selektor, ARIA-Rolle, zugänglicher Name und Stile inklusive.

Füllt jedes Widget

Nicht nur Eingabefelder. Es führt ARIA-Comboboxen, Datumsauswahlen, Schalter, Regler, Segmentschalter und Rich-Text-Editoren wie ein echter Nutzer, auch React-gesteuerte Felder und Shadow-DOM, in Dialogen, Tabs und Akkordeons.

Fängt das Langsame, nicht nur das Kaputte

Ein Layout, das beim Laden springt, ein Knopf, der eine Sekunde braucht, ein Einfrieren beim Öffnen eines Menüs: alles gelesen aus den Messungen des Browsers selbst, mit dem Element, das sich bewegt hat, und dem Skript, das den Thread blockierte. Nach den Schwellen der Core Web Vitals, damit ein Fund hier mit Lighthouse übereinstimmt.

Eine Datei für das Ticket

Die Sitzung wird zu einem in sich geschlossenen HTML-Bericht: Schritte mit Screenshots, Funde mit Selektoren, fehlgeschlagene Anfragen samt der Fehlermeldung des Servers. Geben Sie die Abnahmekriterien und Ihr Urteil zu jedem mit, dann stehen sie oben. Kein Konto, kein Link, kein Upload: Sie hängen ihn an oder löschen ihn.

Zeigen statt erzählen

Bitten Sie Ihren Agenten um eine Führung statt um einen Bericht. Er nimmt den Tab, den Sie ohnehin vor sich haben, geht den Ablauf in Ihrer eigenen angemeldeten Sitzung durch und dunkelt die Seite ab, um jedes Element mit einer Bildunterschrift zu umranden: Schritt 3 von 6. Eine Abnahme, die Ihr Kunde geschehen sieht, statt Screenshots, die er glauben muss.

Testen Sie den Fehler, den der Server nicht liefert

Lassen Sie eine Anfrage genau so antworten, wie Sie es brauchen: eine 500, eine leere Liste, eine Antwort ohne ein Feld, dreißig Sekunden Stille, eine abgebrochene Verbindung. Die Fehlerwege prüft niemand, weil ein funktionierendes Backend sich weigert, auf Wunsch zu brechen, und „den ersten Aufruf abfangen, den zweiten durchlassen“ ist der einzige Weg zu beweisen, dass ein Wiederholversuch wirklich wiederholt. Eine Zeile, kein Ordner zum Auswählen, und es übersteht ein Neuladen. Ihr Agent kann es selbst setzen und selbst wieder aufheben.

Ihre Sprache, nicht nur Englisch

Das Panel spricht sieben Sprachen (English, Deutsch, Español, Polski, Português, Русский, Українська) und übernimmt Ihre beim ersten Start aus dem Browser; ein Schalter im Popup setzt das außer Kraft, wenn der Rechner in einer Sprache läuft und das Team in einer anderen arbeitet. Befunde und Fehlerberichte bleiben bewusst auf Englisch: Sie landen in einem Tracker, den auch Entwickler in anderen Ländern lesen.

Ein Beleg, nicht nur Befunde

Die ganze Seite als ein Bild, wie lang sie auch ist, mit Pfeilen, Rahmen und Beschriftungen, fest in die Datei gebrannt. Oder der Bildschirm als MP4, das überall abspielt, mit Ihrer Stimme. Nichts wird gespeichert: es lebt, solange es auf dem Schirm ist.

Einmal aufnehmen, danach drücken

Das Formular, das Sie zwanzigmal die Woche ausfüllen

Füllen Sie es einmal von Hand aus, während Qiksy zusieht. Danach ist es ein Druck: dieselben Werte, derselbe Weg, dieselben Schritte des Assistenten, und ein Halt überall dort, wo auch ein Mensch hinsehen müsste.

01

Nehmen Sie es so auf, wie Sie arbeiten

Auf Aufnahme drücken und das Formular wie gewohnt ausfüllen: von Hand, mit ⚡ Fill oder beides. Auf Stopp drücken, einen Namen vergeben. An Ihrer Arbeitsweise ändert sich nichts.

02

Ein Druck, und es läuft wieder

Die Werte gehen in genau die Felder zurück, aus denen sie stammen, und das Weiter des Schritts wird selbst gedrückt. Taucht ein Feld auf, das die Seite nicht mehr hat, endet der Lauf, und das Urteil NENNT dieses Feld: ein grünes „fertig“ über einem halb leeren Formular ist schlimmer als ein klares Scheitern.

03

Es folgt dem Weg, den Sie gegangen sind

Ein Ablauf passt selten auf eine Seite: der nächste Schritt des Assistenten, die Übergabe an die Anmeldung, eine Zahlseite auf einer fremden Domain. Die Wiedergabe geht denselben Weg im selben Tab und wartet an jeder Seitengrenze auf Ihr Weiter, denn eine eben geladene Seite ist kein Ort, um ungefragt zu tippen.

04

Gleicher Ablauf, andere Daten

{ } öffnet die Daten des Laufs als schlichte Liste von Feldern: ändern Sie eine E-Mail, ein Datum, einen Firmennamen; 🎲 füllt sie mit frischen, plausiblen Werten. Eine Aufnahme deckt damit einen Regressionsdurchgang ab, und ein Upload-Feld kann eine eigene Datei bekommen.

05

Passwörter stehen nicht darin

Passwörter und Kartennummern werden als Felder aufgenommen, nie als Werte, denn ein Szenario ist eine Datei, die man exportieren und verschicken kann. Die Wiedergabe hält dort an und bittet Sie zu tippen; einem importierten Szenario werden alle Adressen, die seine eigene Website verlassen, vor dem ersten Lauf entfernt.

Beim Arbeiten geschrieben, nicht hinterher

Der Bericht ist die Arbeit. Alles andere ist der Weg dorthin.

Niemand behält acht Befunde bis zum Feierabend im Kopf, also werden sie nicht aufgeschrieben: sie landen als Screenshots und halbe Sätze im Chat. Hier füllt sich das Dokument in dem Moment, in dem etwas auffällt: eine Zeile in eigenen Worten, ein aus der Seite geschnittenes Bild, ein Befund mit dem, was passiert ist und was hätte passieren sollen. Am Ende ein Druck, und heraus kommt eine eigenständige HTML-Seite, die man als PDF druckt.

Qiksy:the screen in the marking editor with the crop tool ready, a region drawn around the controlQiksy:the screen in the marking editor with the crop tool ready, a region drawn around the control
Ein Stück der Seite nehmen. Der Bildschirm öffnet sich im Markier-Editor mit bereits aktivem Zuschneiden: Bedienelement ausschneiden, Pfeil daraufsetzen, fertig im Bericht.
Qiksy:the finished report open in its editor, ready to print to PDFQiksy:the finished report open in its editor, ready to print to PDF
Das Dokument. Links seine Blöcke, rechts die echte Seite. Einen Satz ändern und drucken: aus dem Drucker kommt, was auf dem Bildschirm steht.
01

Es kostet eine Handbewegung, keinen Abend

Ein Gedanke kommt, während Sie durch die Anwendung klicken, und kostet ein Feld und Enter. Acht Gedanken kosten acht Tastendrücke. Genau das ist der Unterschied zwischen einem Bericht, der beim Arbeiten entsteht, und einem, der abends aus dem Gedächtnis zusammengesetzt wird.

02

Das Bild ist Beweis, keine Zierde

Ohne eines wird kein Dokument gebaut. Eine Seite voller Behauptungen über eine Anwendung, die keine davon zeigt, ist genau das, was dieses Werkzeug ersetzt. Und ein Aufnahmename wird nie zweimal vergeben: unter einem Befund kann also nie das Bild eines anderen Moments stehen.

03

Nichts ist fest eingebrannt

Pfeile, Text und der Zuschnitt liegen als DATEN neben dem sauberen Bild: Verschieben Sie den Pfeil morgen, ändert sich jeder Bericht, der diese Aufnahme nennt, mit. Das Dokument wird aus seinen eigenen Blöcken neu gebaut, ein Wort zu ändern heißt also nicht, alles noch einmal zu bauen.

04

Eine Stunde später ist er noch da

Fertige Berichte bleiben unter einem Namen in der Erweiterung: öffnen, drucken, speichern oder als Form für den nächsten nehmen. Und wenn der Browser keinen Platz mehr hat, sagt er es und behält Ihre Arbeit, statt sie stillschweigend fallen zu lassen.

Zwei Hände, ein Bericht

Und das hat sonst nichts auf dieser Seite. Derselbe Entwurf ist über die Brücke für Ihren Coding-Agenten erreichbar: qa_draft liest die Zeilen, qa_draft_add schreibt eine, qa_draft_edit schreibt sie um, qa_draft_build macht das Dokument daraus. Sie fotografieren die falsche Summe, der Agent schreibt den Befund darunter. Oder er sammelt die Belege, während Sie weiter testen, und Sie feilen am Ende an den Formulierungen. Nicht zwei Berichte, die man abgleichen muss, sondern ein Stapel, zwei Hände.

Aufrufe, gemessen statt inszeniert

Ein Aufruf statt fünfundneunzig

Dasselbe Formular mit 94 Feldern, zweimal ausgefüllt, und beide Seiten sprechen MCP, so wie Ihr Agent einen Browser wirklich steuert. Qiksy braucht einen Aufruf. Playwright MCP braucht fünfundneunzig.

Dasselbe Formular, beide Wege, in Echtzeit
Playwright MCP: ein Aufruf pro Feld
Qiksy: ein Brücken-Aufruf

Hier ist nichts verlangsamt und nichts beschleunigt. Beide Treiber sind echte MCP-Server und beide arbeiten am selben Browser und am selben Tab: qiksy-mcp über seinen lokalen WebSocket und @playwright/mcp, angebunden über CDP, was für ihn die großzügige Variante ist, denn allein startet er zuerst einen leeren Browser. Die Seite stoppt sich selbst, vom ersten Tastendruck bis zum Absenden, und der Prüfstand liegt im Repository, Sie können ihn also selbst laufen lassen.

~3.0s
Playwright MCP: ein Aufruf pro Feld
94 Felder, 95 Agentenaufrufe
~1.4s
Qiksy: ein Brücken-Aufruf
94 Felder, ein Aufruf, nichts aufzuzählen
1 Aufruf
statt fünfundneunzig
und er wächst nicht mit dem Formular

Und der ehrliche Teil, denn Sie messen es ohnehin selbst nach. Gegen ein vorab geschriebenes Playwright-Skript verlieren wir: das ist Code in Ihrem eigenen Testprozess, ohne Agent und ohne Protokoll, und er füllt dieses Formular in etwa 0,4 s. Genau dieser Vergleich stand bis heute auf dieser Seite, und er war der falsche, denn eine Bibliothek ist keine Brücke. Gegen Playwright MCP, das ein Agent tatsächlich in der Hand hat, sind die Zahlen oben der Median aus drei Läufen. Und noch etwas, das wir nicht verschweigen: Playwright MCP hat ebenfalls ein Sammel-Verb, browser_fill_form, und damit geht dasselbe Formular in etwa 0,7 s in zwei Aufrufen durch, nur muss der Agent diese Liste aus vierundneunzig Feldern und ihren Typen selbst bauen. Unseres nimmt ein schlichtes Wörterbuch Beschriftung → Wert und klärt den Rest allein, und es bleibt bei einem Aufruf, ob das Formular zehn Felder hat oder zweihundert.

Tempo ist die kleinere Hälfte. Die größere ist, in wessen Browser es läuft.

Ihr Agent kann eine URL längst öffnen: das ist eine Zeile Shell, und sie landet in dem Browser, in dem Sie angemeldet sind. Was er nicht kann, ist hinsehen, also weder ob die Seite geladen hat, noch ob Sie noch angemeldet sind, noch was der Fehler sagt. Playwright kann hinsehen, aber nur in einem Browser, den es selbst gestartet hat, mit einem leeren Profil, in dem Sie nie angemeldet waren. Zwischen diesen beiden Hälften wählt sonst jeder.

Wie die Seite aufgehtWessen BrowserAgent sieht die SeiteAgent handelt darin
open <url>, nur ShellIhrer, schon angemeldetNeinNein
CDP / PlaywrightEin eigenes, leeres ProfilJaJa
QiksyIhrer, schon angemeldetJaJa

Qiksy ist die Zeile mit beidem. Es startet nie einen Browser und nimmt Ihnen nie das Fenster: es arbeitet in dem Tab, den Sie schon offen haben, und genau darum ist die Sitzung, die es liest, die echte, mit Ihren Rollen, Ihren Rechten, der Staging-Umgebung hinter SSO und dem Kundenkonto, das sich in einem frischen Profil nicht nachbauen lässt.

Ansehen

Ein Panel. Jeder QA-Griff.

Formulare, Funde, Prüfungen, Rollen, Abdeckung und die vollständige Sitzungsgeschichte in einem Cockpit, das sich über die Tastatur fahren lässt. Dunkel oder hell, auf jeden Akzent umstellbar; der goldene Blitz bleibt immer die Signatur.

Die Brücke vom manuellen Testen zur KI-Entwicklung

Übergeben Sie den ganzen QA-Kontext an Ihren Coding-Agenten.

Ein herstellerneutraler MCP-Server lässt Claude Code, Cursor, Cline, Windsurf, Zed oder VS Code den laufenden QA-Zustand direkt aus dem Browser lesen: Funde mit CSS-Selektoren, erkannte Formulare, fehlgeschlagene Anfragen samt Serverantwort, aufgezeichnete Reproduktionsschritte. Sagen Sie „behebe, was Qiksy auf dieser Seite gefunden hat“, und der Agent hat schon alles. Er kann auch Qiksys eigene Oberflächen bedienen, also das Panel öffnen, die Prüfung starten, die Abdeckungsliste holen oder den Bericht erzeugen, und, sobald Sie Agent control einschalten, ebenso die App, die Sie testen. Standardmäßig aus: Sie bleiben am Steuer, bis Sie anders entscheiden.

Ihr Agent
Claude Code / Cursor / …
Ruft MCP-Tools über stdio auf
→
qiksy-mcp
stdio ⟷ WebSocket-Server
npx-Paket · gebunden an 127.0.0.1
→
Erweiterung
Service Worker (WS-Client)
Liest das Bündel des aktuellen Tabs
→
Die Seite
Sie, beim Testen, live
Nur lesend, bis Sie Agent control einschalten.
Die ganze Reichweite

Alles, was Ihr Agent in dem Browser tun kann, den Sie schon offen haben.

Kein zweiter Browser, keine neue Anmeldung, keine verlorene Sitzung. Lesen ist kostenlos und braucht keine Erlaubnis; Handeln ist ein Schalter, den Sie selbst umlegen.

Es sieht

Kostenlos · ohne Zustimmung
  • Die Seite als BaumJedes Bedienelement, jeder Landmark und jede Überschrift mit Rolle, Name und Zustand, und dazu ein fester Verweis, auf dem sich handeln lässt.
  • Echte GeometrieJeder Kasten in CSS-Pixeln. So sagt es „abgeschnitten“, „überlappend“, „ein Ziel von 28px“, ganz ohne Screenshot.
  • Stile und Design-TokensDer berechnete Stil, und aus welchem Token eine Farbe kam. --accent, nicht bloß rgb(37,99,235).
  • Was wirklich kaputt istKonsolen- und JS-Fehler, fehlgeschlagene Anfragen samt Fehlermeldung des Servers, Tempo und Layoutsprünge.
  • Der Speicher der AnwendunglocalStorage und sessionStorage: Feature-Flags, zwischengespeicherter Zustand, das Sitzungstoken.
  • Barrierefreiheit, wirklichDie vollständige axe-core-Engine in der lebenden Seite, dazu die Tastaturroute, Tabulator für Tabulator abgegangen.
  • Ein Bild der ganzen SeiteVon oben bis unten, wie lang die Seite auch ist: gescrollt, Bildschirm für Bildschirm aufgenommen und zusammengefügt. Passwort- und Kartenfelder werden vorher abgedeckt.
  • Eine Tabelle, keine SeiteZeilen und Spalten benennen, jeder Posten mit seinem Preis, jedes Feld mit dem, was es gerade enthält, und das ist eine Antwort statt eines Dutzends Abfragen.
  • Was als Nächstes passiertSchaut ein paar Sekunden zu, sodass ein Hinweis, der auftaucht und geht, eine Anfrage per Timer oder eine Screenreader-Ansage nicht verloren geht. Jede Beobachtung läuft von selbst ab.
  • Im Screenshot suchenJedes Wort der Seite steht unsichtbar über seinen eigenen Pixeln, also funktioniert Strg+F im Bild. Keine Erkennung: der Text ging nie verloren.

Es handelt

Pro · Agent control
  • Füllt jedes FormularEin ganzer Schritt eines Assistenten in einem Aufruf: Sie geben die Werte als JSON, die Beschriftungen findet es selbst.
  • Jede Art von WidgetAnt, MUI, Radix, react-select, downshift: Auswahllisten, Kalender, Cascader, Bäume, Tags, Zeiten, jedes mit eigenem Verb.
  • Klickt, tippt und antwortet mit dem UnterschiedWas erschien, was sich änderte, was der Klick gerade geöffnet hat, es muss also nie raten, ob es geklappt hat.
  • Meldet sich über Microsoft, Google, Okta anEs ist Ihr Browser: Meist sind Sie schon angemeldet, und der Tab, den der Anbieter öffnet, tritt der Sitzung von selbst bei.
  • Mehrere Anmeldungen gleichzeitigEin Cookie-Behälter je Tab, ein Browser, kein zweites Profil: Admin, Mitglied und anonym nebeneinander.
  • Lädt echte Dateien hochPer Pfad von Ihrem Rechner, alle Anhänge eines Schritts auf einmal, und die Bytes gelangen nie in den Kontext des Agenten.
  • Navigiert und wartetGeht auf eine Route und wartet, bis die Seite zur Ruhe kommt, bevor der nächste Griff folgt. Nur in den Tabs, die Sie angehängt haben.

Es zeigt und merkt sich

Für Sie, nicht fürs Protokoll
  • Holt den Tab nach vornHebt das Fenster an und umrandet das gemeinte Element: eine Führung, die dort geschieht, wo Sie hinschauen.
  • Merkt sich ein langes FormularSichert den Ablauf als Rezept, nach Feldnamen geordnet, und spielt ihn in der nächsten Sitzung nach: ein Aufruf je Schritt statt einer Erkundung.
  • Legt Ihnen das Ergebnis hinEin in sich geschlossener HTML-Bericht: Ihre Abnahmekriterien zuerst, die Belege unter jedem davon.
  • Ein Beleg, den Sie anhängen könnenDie ganze Seite als ein Bild, mit Ihren Pfeilen und Beschriftungen fest eingebrannt, oder der Bildschirm als MP4, das überall abspielt, mit Ihrer Stimme darauf.
  • Eine Aufnahme zum LesenDas Video kommt mit den Momenten der Seite: Klicks mit Namen, fehlgeschlagene Anfragen samt Serverantwort, was ein Screenreader hörte. Einen anklicken und es springt dorthin.
Und zwei Dinge, die es nicht tut, und es sagt das, statt sie vorzugeben

Keine Screenshots. Es hat Messwerte, kein Bild, „sieht das richtig aus“ bleibt also eine Frage für Ihre Augen. Kein beliebiges JavaScript. Das ist eine Regel des Chrome Web Store, und der Grund, warum jeder Befehl ein Element benennt und nie ein Programm. Alles andere geschieht in dem Browser, in dem Sie schon angemeldet sind.

🤖 Der Agent am Steuer: ein Aufruf füllt das ganze Formular
Qiksy agent overlay: collecting the form over the bridgeQiksy agent overlay: collecting the form over the bridge
Sammeln. Der Agent liest das Formular über die Brücke, vor dem ersten Tastendruck.
Qiksy agent overlay: filling every field liveQiksy agent overlay: filling every field live
Füllen. Das ganze Formular geht in einem Aufruf hinein; Sie sehen jedes Feld live landen.
ToolWas es zurückgibt
qa_tabsJeder Tab, den Qiksy lesen kann, samt der Frage, welche davon isolierte Multi-Login-Sitzungen sind, damit ein Agent vergleichen kann, was Admin, Mitglied und anonym jeweils sehen.
qa_statusURL + Zahl der Fehler / Warnungen / Formulare + Name der isolierten Anmeldung. Optional tabId.
qa_findingsFunde mit Selektoren und Details; Filter über severity (all / error / warning).
qa_exportDas vollständige Bündel qa-export/v1: Funde, fehlgeschlagene Anfragen samt Antworttext, Formularstruktur, Reproduktionsschritte, Umgebung und eine Navigationskarte (benannte Routen, die der Agent beim Namen ansteuern kann).
qa_open_panelBefehl. Qiksys Panel öffnen oder schließen und zu einem Tab springen (Funde / Tour / Verlauf …).
qa_run_auditBefehl. Die Prüfung von Barrierefreiheit und Markup auf dem aktuellen DOM laufen lassen und die Funde zurückgeben.
qa_axeBefehl. Die mitgelieferte Engine axe-core, dieselbe, die unter Lighthouse arbeitet, auf dem lebenden DOM ausführen: Hunderte WCAG-A/AA-Regeln, jeder Verstoß mit Auswirkung, WCAG-Kennzeichen und den schuldigen Selektoren. Vollständig lokal, nichts verlässt die Seite.
qa_focus_walkAgent control. Die Seite Tabulator für Tabulator abgehen und die ECHTE Tastaturroute melden: was ein Tastaturnutzer nie erreicht, vermutete Fokusfallen und Fokussprünge, die gegen das Layout arbeiten.
qa_tourBefehl. Die Checkliste für erkundendes Testen, Material zur Abdeckung, aus dem Testfälle entstehen.
qa_reportBefehl. Den in sich geschlossenen HTML-Bericht der Sitzung erzeugen und zurückgeben.
qa_spotlightBefehl. Ein Element per Selektor abdunkeln und umranden, damit Sie sehen, was der Agent meint.
qa_focus_tabBefehl. Holt einen Tab nach vorn, aktiviert ihn und hebt sein Fenster an, damit eine Führung dort geschieht, wo Sie hinschauen. Beschränkt auf die App unter Test und ihre Anmeldungen; gedacht für „zeig mir“, nicht für die Bequemlichkeit des Agenten.
Mehrere Anmeldungen, ein Durchgang. Isolierte Anmeldungen starten Sie unter Rollen (+ Isolierter Tab / ⧉ auf einer gesicherten Rolle), danach liest der Agent sie alle: qa_tabs gibt zu jedem den Namen der isolatedSession und die tabId, und qa_export je Tab zeigt den Unterschied zwischen Admin, Mitglied und anonym. Der Agent handelt auch in jeder Anmeldung: dieselbe tabId geht an qa_fill_json und qa_click, er tritt also als dieser Nutzer auf, ohne zweiten Browser und ohne neue Anmeldung. Die vollständige Liste steht in der README von qiksy-mcp.
1 · Die Brücke einschalten
  1. Im Popup der Erweiterung MCP bridge öffnen, auf On stellen, mit Generate einen Token erzeugen, einen Port wählen (Standard 7333) und Save drücken.
  2. Den Server im Editor mit demselben Token und Port eintragen. Der Token wird über die Umgebungsvariable QIKSY_MCP_TOKEN übergeben.
An Loopback gebunden, und nur lesend, bis Sie es anders sagen. Von sich aus bedient die Brücke ausschließlich Qiksys eigene Oberfläche: sie füllt, klickt, sendet und navigiert nie in der App, die Sie testen. Agent control (Pro) ist der Schalter, der das ändert, mit eigener Bestätigung, damit Ihr Agent in Ihrer echten angemeldeten Sitzung klicken und tippen kann. Er lauscht auf 127.0.0.1, weist Herkünfte außerhalb der Erweiterung ab, und der gemeinsame Token ist die einzige Schranke: Halten Sie ihn geheim.
2 · Überall dieselbe Konfiguration

Der Server ist ein einziges npx-Paket. Jeder Editor nutzt denselben Befehl; nur die Datei, in der er steht, und ein paar Schlüssel unterscheiden sich. Wählen Sie unten Ihren und fügen Sie ein.

MV3-sicher und von Anfang bis Ende geprüft. Ein Keepalive-Ping alle 20 s hält den Socket offen; alarms wecken einen schlafenden Service Worker zum Wiederverbinden. Für ws://127.0.0.1 braucht es keine Änderung an Manifest oder CSP.
Ihren Editor einrichten
Claude CodeCLI · one line
# run in your project
claude mcp add --transport stdio qiksy \
  --env QIKSY_MCP_TOKEN=YOUR_TOKEN \
  -- npx qiksy-mcp --port 7333
Claude Code · Cursor · Windsurf · Cline.mcp.json · ~/.cursor/mcp.json · mcp_config.json
{ "mcpServers": { "qiksy": {
  "command": "npx",
  "args": ["qiksy-mcp", "--port", "7333"],
  "env": { "QIKSY_MCP_TOKEN": "YOUR_TOKEN" }
} } }
Zedsettings.json · key is context_servers
{ "context_servers": { "qiksy": {
  "source": "custom",
  "command": "npx",
  "args": ["qiksy-mcp", "--port", "7333"],
  "env": { "QIKSY_MCP_TOKEN": "YOUR_TOKEN" }
} } }
VS Code.vscode/mcp.json · top-level servers
{ "servers": { "qiksy": {
  "type": "stdio",
  "command": "npx",
  "args": ["qiksy-mcp", "--port", "7333"],
  "env": { "QIKSY_MCP_TOKEN": "YOUR_TOKEN" }
} } }
Für Entwickler

Mit einem Einfügen an Ihren Agenten gehängt

Die Brücke spricht MCP, also kann jeder fähige Agent (Claude Code, Cursor, Cline, Windsurf, Zed, VS Code) den laufenden QA-Zustand lesen und, mit eingeschaltetem Agent control, in der Sitzung handeln, in der Sie schon angemeldet sind.

🚀 One-shot setup · paste into any LLM to get connected
You are setting up the Qiksy manual-QA Chrome extension so you can drive the
human's REAL, logged-in browser: over Qiksy's MCP bridge, and (optionally) over
Playwright/CDP for direct clicks. Go ONE STEP AT A TIME. After each step, ask the
human to confirm what they see before continuing. Whenever you send them to a panel
or popup, FIRST DRAW AN ASCII DIAGRAM of it with the exact control marked "← click".

USE GOOGLE CHROME. Qiksy is a Chrome extension, not Firefox, Safari or Edge. Do
everything in Google Chrome (a Chromium build works, but tell the human to use
Chrome unless they know otherwise).

TWO FACTS THAT MAKE OR BREAK IT, state them up front:
  1. The Chrome window must stay OPEN and LOGGED IN to the app under test for the
     whole session. The bridge and Playwright both attach to that live window; close
     it and the session is gone.
  2. To load an UNPACKED (dev) build, the human must be LOGGED IN first, because a fresh/
     incognito profile has no session. Log in, THEN load, and keep that window.

STEP 1 · extension
Install Qiksy from the Chrome Web Store, or chrome://extensions → Load unpacked →
the dist folder. Confirm the round Q bubble shows bottom-right on any page.

STEP 2 · the token (DRAW THIS)
Open the toolbar popup and find "Agent bridge · MCP":

  +-- Qiksy popup --------------------+
  | Assistant overlay          [ On ] |
  | Agent bridge · MCP         [ On ] |  <- turn ON, accept the consent
  |   Port [ 7333 ]  Token [________] |
  |   [ Generate ]  [ Copy ]          |  <- Generate, then Copy (it saves itself)
  +-----------------------------------+

Have them Generate -> Copy (the popup saves it automatically), and paste the token to you.

STEP 3 · run the bridge (keep it running in a terminal)
  QIKSY_MCP_TOKEN=<paste the token> npx qiksy-mcp --port 7333

STEP 4 · connect you (MCP)
Add the qiksy server to the agent config (Claude Code: claude mcp add --transport
stdio qiksy --env QIKSY_MCP_TOKEN=<token> -- npx qiksy-mcp --port 7333; or the
.mcp.json block from the site). Restart the agent, then call qa_tabs, which should list
the human's tabs. If it says "not connected", the popup bridge is off or the token/
port differ.

STEP 5 · drop the manual into the project
Run "npx qiksy-mcp init" in the project root. It writes the full agent guide to
.claude/qiksy-bridge.md and adds a short block to CLAUDE.md / AGENTS.md, so every
future session starts knowing what the bridge can do.

STEP 6 · Playwright over CDP (optional, and only for two things)
Qiksy drives the browser itself: clicks, whole forms, calendars, uploads, several
logins. The only gaps are SCREENSHOTS and arbitrary JavaScript. If the task needs one
of those, launch Chrome with --remote-debugging-port=9222 (or reuse the open window),
keep it OPEN and LOGGED IN, and point Playwright MCP at http://localhost:9222.

THEN: qa_tabs -> qa_export (forms with MEANING + live findings) -> drive with
qa_fill_json (a whole step per call) and qa_click by name (needs Pro + "Agent control"
on in the panel). A control that refuses is a ladder, not a wall: qa_probe, raw:true,
qa_pick_*, a CSS selector, and never a second browser driver, which would open an empty
browser without these logins. You cannot undo: a click on a real Delete deletes for
real. If a tool says pro-required or consent-required, name the switch the human must
flip, and stop.
Das an Ihren Agenten einfügen
You have Qiksy over MCP: a manual-QA extension attached to a REAL Chrome window
with the human's logins already in place. It IS the browser for this session: do not
switch to Playwright, Puppeteer, Selenium or CDP because a control looked unfamiliar
or refused once. Another driver opens a DIFFERENT, EMPTY browser, and none of these
logins are in it, so the run stops being the test that was asked for. Exactly ONE
thing is absent here: arbitrary JavaScript (no eval, a Web Store rule, which is why
every verb names an element, never a program). Screenshots ARE here now
(qa_screenshot), with one condition: the browser photographs the window's ACTIVE tab,
so a background tab cannot be photographed and Qiksy refuses rather than handing over
a page nobody asked about. Need eval? Say so, and let the human decide.

Start with:
  qa_tabs      · which tabs are in the agent session, which are isolated logins
                 (every tool takes tabId)
  qa_snapshot  · the page as an accessibility tree with stable refs; fields_only on a
                 heavy app, geometry:true for every box in CSS pixels
  qa_export    · forms with MEANING (kind: "email" / "card-number" / "first-name"),
                 findings, failed requests WITH the server's error body, repro steps
                 and a NAVIGATION map (labelled routes, current:true on the open page)

Don't scrape the DOM yourself, because qa_export already knows what each field is and where
the app can go. Pick a route from navigation[] and go by href instead of probe-clicking.

A FORM IS ONE CALL PER STEP, never one per field (needs Pro + "Agent control"):
  qa_fill_json { fields: { "Full name": "Ada Lovelace", "Country": "Ukraine",
                           "Start date": "06/11/2024", "I agree": true },
                 advance: "Next" }
It resolves the labels itself, drives custom dropdowns, calendars, cascaders, trees,
tags and time pickers, and presses Next ONLY if every entry landed. Keys that matched
nothing come back with the page's real field names, so your next call fixes itself.

WHEN A CONTROL REFUSES, the ladder, in order. Don't change tool, change rung:
  qa_probe { name }        what this widget is and which verb drives it
  raw: true                write the value straight into its own text input
  qa_pick_date / _time / _range / _path (cascader, tree) / _tags
  a CSS selector           every verb takes one; a portalled popup with no roles
                           (Ant) is MEANT to be driven that way
  qa_click { name }        then read the "widget" verdict in the reply and act on it
  qa_focus_tab             custom popovers only render in the FOREGROUND tab

AFTER ANYTHING THAT NAVIGATES call qa_wait_ready, and press the advance control by
NAME, not by a ref you took before filling: any new snapshot renumbers refs, so an old
one succeeds on the WRONG control. This is the most common way a run goes wrong.

Several logins at once:
  qa_open_isolated { url, sessions: ["admin","member"] }  → one cookie jar per tab
  qa_close_tab { tabIds: [...] }                          → clean up
SSO works with Microsoft, Google and Okta: it is their own browser, and a tab the provider
opens joins the session automatically. A captcha or a 2FA prompt is theirs: stop and say so.

Saw a long form? qa_recipe_save { name }, and the next run replays it a call per step.

Finish with qa_report { path, spec: { title, story, checks:[{id,text,status,evidence}] } }
It is a self-contained HTML file led by YOUR verdicts next to Qiksy's evidence.

You cannot undo. A click on a real Delete button deletes for real. If a tool says
pro-required / consent-required, that is a switch the human must flip: say which
one and stop.
Tiefer gehen

Erweiterte Instrumente für echte Kundenarbeit.

Jenseits des Alltagspanels bringt Qiksy schwereres Gerät mit (Aufnahme, Berichte, RBAC und Übergabe an die Entwicklung), damit aus einer Testsitzung etwas wird, das Sie abrechnen und ein Entwickler bearbeiten kann.

Berichte für den Kunden

Ein Klick macht aus der Sitzung eine geschlossene Führung: hervorgehobene Screenshots, nummerierte Reproduktionsschritte, Kacheln für Abdeckung und Fehler. Das Ergebnis, das Sie einem Kunden geben; ohne Backend.

Sitzungsaufnahme und HAR

Ein Zeitstrahl über alle Seitenwechsel mit Screenshot-Vorschauen und einem Netzprotokoll je Schritt. Export als vollständiger Reproduktions-Bug oder als HAR ohne Header, in dem nichts Vertrauliches zu bereinigen wäre.

Rollen und mehrere Anmeldungen

Anmeldungen als benannte Rollen sichern und dann Admin, Mitglied und anonym in getrennten Tabs eines Browsers fahren. RBAC in Minuten prüfen, ohne sich immer wieder an- und abzumelden.

Bug-Kapsel

Einen Fehler als einzelne Reproduktionsseite verpacken, mit Screenshot des Elements, dem Ende des Konsolenprotokolls, den fehlgeschlagenen Anfragen, dem Selektor und der Umgebung, damit der Entwickler ihn beim ersten Versuch nachvollzieht.

Mitlaufmodus

Benutzen Sie die App einfach, und Qiksy beobachtet Ihre Klicks und markiert Fehler, tote Klicks, Wutklicks und langsame Antworten, jeweils an die genaue Handlung gebunden und als fertigen Bug zum Einfügen.

Übergabe an den Agenten

Geben Sie das rohe Bündel qa-export/v1 an Ihren Coding-Agenten. Claude Code, Cursor oder jeder MCP-Client liest Ihre Funde, die Formularstruktur und die fehlgeschlagenen Anfragen direkt aus dem Browser und behebt sie.

All das ist kostenlos und bleibt es: Formulare füllen, Funde, Prüfungen, die Tour, mehrere Anmeldungen, die Sitzungsaufnahme, Bug-Kapseln und der Kundenbericht. Pro ist genau eines: die MCP-Brücke, die Verbindung, über die Ihr Coding-Agent diesen Browser liest und steuert. Jede Installation bekommt 28 Tage davon, ohne Karte.

Aus derselben Werkstatt

Passt zu MultiLogin Tabs.

Qiksys Rollen und mehrere Anmeldungen fahren verschiedene Konten in einer Testsitzung, gebaut auf genau derselben Isolations-Engine wie MultiLogin Tabs. Wenn jeder Tab in Ihrem Browser den ganzen Tag ein anderes Konto halten soll, greifen Sie zur vollen Erweiterung.

MultiLogin Tabs

MultiLogin Tabs Erweiterung dazu

Mehrere Konten derselben Website in einem Browserfenster, ohne Inkognito und ohne getrennte Profile. Weisen Sie jedem Tab eine benannte Sitzung zu, und er bekommt eine vollständig isolierte Umgebung.

Cookies · incl. HttpOnlylocalStorageIndexedDBCache Storage
697 NutzerEntwickler-Tools100% lokal · keine Telemetrie
MultiLogin Tabs hinzufügen, kostenlos
Qiksy:Build FAST, Test SMART

Schneller testen. Klüger berichten.

Qiksy installieren, die zu testende App öffnen und auf Fill drücken. Ab da übernimmt Qiksy.

Zu Chrome hinzufügen, kostenlos

Manifest V3 · Ihre Daten bleiben lokal · keine Telemetrie

Soll Ihr Coding-Agent mitarbeiten? Jahreslizenz holen für 49 USD

Der Entwicklung folgen

Wir bauen Qiksy offen: neue Tools, echte Fortschritte, gelegentlich ein Stolperer. Bekommen Sie die kurze Notiz, wenn etwas erscheint.