Prompt teardown: GPS, Speicher und Maps aus einem einzigen Satz
Written by Dumè Siacci on
Niemand bezweifelt mehr, dass eine KI fähigen Code generieren kann. Die interessante Frage ist, was eine generierte Section tatsächlich in deiner App macht — also haben wir einen Prompt genommen und ihn Zeile für Zeile auseinandergenommen.
Sieben Wörter

Niemand bezweifelt mehr, dass eine KI fähigen Code generieren kann — selbst „vibe-coded" funktioniert es, manchmal sehr gut. Das ist nicht die interessante Frage. Die interessante Frage lautet: Was macht diese Section, einmal generiert, tatsächlich in deiner App? Bleibt sie ein isolierter Block in der Ecke, oder nutzt sie, was Gerät und App bereits können? Am ehrlichsten beantwortet man das, indem man einen Prompt nimmt und ihn Zeile für Zeile auseinandernimmt.
Dafür ist diese neue Reihe da. In jeder Folge nehmen wir einen Prompt aus der Bibliothek des AI Extension Builder und nehmen ihn auseinander: wo er der Plattform vertraut, wo er sie zwingt, und was die resultierende Section wirklich kann. Wir beginnen mit einem der Beispiel-Prompts der Bibliothek: „wo ich geparkt habe".
Hier ist der kürzeste Prompt, den man dafür schreiben könnte:
Das ist alles. Ein Satz, kein Lastenheft. Und das kommt dabei heraus:
Ein Button, um deinen Standort zu speichern. Eine Section, die diesen Punkt beim erneuten Öffnen der App wiederfindet. Ein Button, um zum Auto zurückzukehren. Ein dezenter Link zum Löschen. Und wenn du die Ortung ablehnst, ein Bildschirm, der es erklärt, statt abzustürzen.
Die Überraschung ist nicht, dass sieben Wörter einen Bildschirm zeichnen. Sondern dass diese Section, aus einem Satz geboren, bereits die Fähigkeiten des Geräts nutzt: Sie liest das GPS, hält einen Speicher, öffnet Maps. Um keine dieser drei Dinge haben wir gebeten.
Sie hat nicht direkt aufs Telefon zugegriffen — sie ging über die App

Hier kommt der entscheidende Punkt, und er ist leicht zu übersehen. Um den GPS-Standort zu erhalten, wendet sich die Section nicht direkt an das Telefon. Sie geht über die App, die sie beherbergt.
Es ist die App, die den Zugriff aufs GPS besitzt, und die Section leiht ihn sich. Die Folge ist einfach und beruhigend: Die Section hat keine eigene Berechtigung. Was die App darf, erbt sie; was die App nicht darf, kann die Section nicht erzwingen. Und welche Berechtigungen die App überhaupt anfragt, entscheidest du als App-Ersteller: Du deklarierst sie im Privacy Center der App. Eine generierte Section bleibt strikt in diesem Rahmen; sie öffnet keine Hintertür daneben.
Das ist genau unsere Guardrails-Philosophie: Eine generierte Section kann nichts tun, was die App selbst nicht erlaubt. Wir lassen dich per Prompt keine Grenze überschreiten, die du nicht zu öffnen beschlossen hast. Dieselbe Logik regiert die beiden anderen Fähigkeiten.
Der Speicher. Die Section findet den gespeicherten Ort wieder, nachdem du die App geschlossen und wieder geöffnet hast. Und diese Persistenz haben wir nicht angefordert: Die Plattform richtet sie von selbst ein, sobald eine Section Nutzerdaten verarbeitet. Mehr noch, sie unterscheidet — ein Parkplatz ist ein einfaches, persönliches, ans Gerät gebundenes Datum: Dafür braucht es keine Datenbank wie Supabase, ein Speicher auf dem Gerät genügt, und genau den wählt sie. Darin liegt die ganze Feinheit: zu erkennen, wann ein echtes Backend nötig ist und wann das Gerät reicht. Das zu behalten, was behalten werden soll, am richtigen Ort, ist das Standardverhalten — kein Kästchen zum Ankreuzen.
Maps. Der Button „zum Auto zurück" zeichnet keine Karte innerhalb der Section: Er öffnet die Maps-App des Telefons, direkt auf den richtigen Koordinaten. Eine generierte Section ist keine Gefangene ihres Bildschirms; sie kann an das delegieren, was das Telefon bereits gut kann.
Drei Fähigkeiten — GPS, Speicher, Maps — und jedes Mal dasselbe Prinzip: Die Section geht nicht allein vor, sie stützt sich auf die App, die sie umgibt. Von außen, für den Nutzer wie für dich, ist es ein einziges kohärentes Objekt. Das ist das eigentliche Thema dieser Folge — nicht das Parken.
Das Standardverhalten ist bereits das richtige
Was dieses erste Beispiel interessant macht: Wir haben um nichts davon gebeten. Wir haben nicht geschrieben „nutze das native GPS", auch nicht „behalte die Daten" oder „öffne Maps". Die Section hat diese Wege von allein genommen, weil es die Wege der Plattform sind.
Anders gesagt: Gutes Verhalten verdient man sich nicht durch Präzision im Prompt. Es ist der Ausgangspunkt. Also kehrt sich die interessante Frage um: Kann eine Formulierung dich von diesem guten Weg abbringen?
Kann sie. Und genau hier wird der lange Prompt aus der Bibliothek lehrreich.
Die einzige Stelle, an der der Prompt aus der Spur läuft
Der echte Prompt von „wo ich geparkt habe" in der Bibliothek ist detaillierter. Die meisten seiner Sätze bereichern nur, was wir schon gesehen haben: eine präzise Beschriftung, einen Zeitstempel „vor 23 Min. geparkt", einen Bestätigungsschritt vor dem Löschen. Nichts, was die Natur der Section ändert.
Bis auf eine Zeile. Der Prompt verlangt eine Google-Maps-Route, berechnet von der aktuellen Position bis zum Auto. Und da verlässt die Section den integrierten Weg.
Der Grund hat nichts Technisches: Wir haben einen bestimmten Dienst benannt. „Google Maps" zu verlangen heißt, Google Maps zu verlangen — den Online-Dienst, mit seiner Webadresse — und nicht „eine Karte", was die Plattform die des Telefons hätte öffnen lassen. Also ging die Section diesen Dienst außerhalb der App holen. Und wie jede Section, die einen externen Dienst anspricht, musste sie um Erlaubnis fragen: Die Plattform zeigte die Domain google.com an und wartete auf dein Okay, bevor sie sie hinausließ. (Wieder die Guardrails: Nichts verlässt den Rahmen der App ohne deine ausdrückliche Zustimmung.)
Wir haben genau das bekommen, worum wir gebeten haben. Wir haben aber auch die App zum Web hin verlassen und eine Domain zum Freigeben hinzugefügt. Das ist kein Bug und keine gute oder schlechte Nachricht: Es ist ein Tauschgeschäft, und man macht es besser mit offenen Augen.
Daher die einzige Regel, die man aus dieser Folge mitnimmt: Beschreibe das Ergebnis, das du willst, nicht den Weg dorthin. Die kurze Version, die nur „zum Auto zurück" sagte, ließ die Plattform wählen — und sie öffnete das Maps des Telefons, ohne irgendwo draußen etwas zu holen. Man benennt einen bestimmten Dienst oder eine bestimmte Technologie nur, wenn man einen Grund hat, den die Plattform nicht kennen kann.
Der ganze Prompt
Wenn du lieber von der vollständigen Version ausgehst und sie anpasst, hier ist sie — die aus der Bibliothek, einen Klick entfernt im AI Extension Builder:

Du bist dran
Das Lehrreichste ist nicht, diesen Prompt zu kopieren, sondern ihn zu verbiegen. Ersetze das Auto durch ein Fahrrad, einen Campingplatz, einen Marktstand. Entferne die Google-Maps-Zeile und beobachte, wie die Section von allein zum Maps des Telefons zurückkehrt. Ändere „vor 23 Min. geparkt" in etwas anderes und sieh zu, wie das Format folgt.
Die Bibliothek hat mehr zum Auseinandernehmen auf dieselbe Weise: ein teilbares Film-Quiz, einen spielbaren Flappy-Bird-Klon mit Rangliste, oder eine Section, die mit deinen eigenen Dateien arbeitet.
Der AI Extension Builder ist in der Beta, offen für alle.
FAQ
Kann eine per KI generierte App-Section das GPS des Telefons nutzen?
Ja. Nicht direkt: Sie geht über die App, die sie beherbergt, und erbt deren Ortungsberechtigung.
Fragt die Section eine eigene Ortungsberechtigung an?
Nein. Sie stützt sich auf die der App. Hat die App den Zugriff, leiht ihn sich die Section; hat die App ihn nicht, kann die Section ihn nicht erzwingen.
Kann eine generierte Section Daten behalten, nachdem die App geschlossen wurde?
Ja. Die Plattform richtet diese Persistenz ein, sobald eine Section Nutzerdaten verarbeitet, und wählt die richtige Ebene: Speicher auf dem Gerät für ein einfaches Datum, ein echtes Backend, wenn es nötig ist.
Kann eine generierte Section Maps öffnen?
Ja. Sie öffnet die Maps-App des Telefons, direkt auf den gewünschten Koordinaten.
Wie schreibt man einen guten Prompt für eine App-Section?
Beschreibe das Ergebnis, das du willst, nicht den Weg dorthin. Die Plattform wählt dann den am besten integrierten Weg. Benenne einen bestimmten Dienst oder eine bestimmte Technologie nur, wenn du einen besonderen Grund dafür hast.
Design