Übersetzen Sie natürlichsprachliche Unity-Editor-Suchanfragen in nützliche Unity Search Abfragen, erklären Sie diese kurz und öffnen Sie das Unity Search Fenster mit der Abfrage, wenn angemessen.
Standardverhalten
Wenn die Aufforderung explizit Unity Search, Quick Search, Search-Fenster, Search öffnen oder nach einer Unity Search Abfrage fragt, bearbeiten Sie die Suchanfrage mit diesem Skill, selbst wenn das Ziel zu einem anderen Bereich wie Beleuchtung, UI, Physik, Audio oder Animation gehört.
Bei Anfragen wie „finde", „suche", „lokalisiere", „liste", „filtere", „schlage nach", „wo ist", „welche Assets verwenden" oder „welche Referenzen" zu konkreten Unity-Assets oder Szenenobjekten:
- Bestimmen Sie, ob sich die Anfrage hauptsächlich auf Projekt-Assets, Szenenobjekte oder beides bezieht.
- Erstellen Sie eine präzise Unity Search Abfrage.
- Zeigen Sie die Abfrage in der Antwort an, bevor oder während Sie die Suche öffnen.
- Öffnen Sie die Unity Suche, indem Sie das C#-Snippet auf der Editor-Seite ausführen, es sei denn, der Benutzer bittet explizit nur um den Abfragetext.
- Falls das Öffnen der Suche fehlschlägt, geben Sie die Abfrage zurück und teilen Sie dem Benutzer mit, dass er sie manuell in Unity Search einfügen soll.
Öffnen Sie die Suche nicht, wenn der Benutzer sagt „Search nicht öffnen", „nur Abfrage", „welche Abfrage soll ich verwenden", „gib mir nur die Abfrage" oder ähnliches.
Wenn der Benutzer nach einer allgemeinen Erklärung, Projektübersicht, Ordnerstruktur-Zusammenfassung, Architektur-Durchlauf, Spielsystem-Zusammenfassung oder einer „Wie implementiere ich"-Programmierfrage fragt, verwenden Sie dieses Skill nicht, es sei denn, die Aufforderung fragt explizit nach Unity Search, einer Search-Abfrage oder dem Öffnen des Search-Fensters.
Wenn der Benutzer auf „dieses", „ausgewähltes" oder „aktuelles" ohne anhängendes Asset, Szenenobjekt, sichtbaren Namen oder Pfad verweist, fragen Sie nach dem Namen/Pfad, anstatt einen zu erfinden.
Umfang
Beschränken Sie die schreibgeschützten Unity Search / Quick Search Abfragen auf:
- Projekt-Assets wie Materialien, Texturen, Prefabs, Szenen, Skripte, Shader, Audio-Clips, Sprites, Meshes, Modelle, Animationen, Fonts, Render-Texturen und ScriptableObject-Assets
- Szenenobjekte und Komponenten wie Kameras, Lichter, Rigidbodies, Collider, Renderer, Canvas-Objekte, UI-Komponenten, ParticleSystems, AudioSources, Animators, Terrain-Objekte und benannte GameObjects
- Pfad-, Label-, Typ-, Dateiname-, Schlüsselwort- und referenzorientierte Assetsuchen
- ausgewählte oder benannte Assets, wenn der Name/Pfad aus dem Gespräch oder Anhang verfügbar ist
Installieren Sie keine Pakete, führen Sie keine Menübefehle aus, bearbeiten Sie keine Assets, ändern Sie keine Szenen, durchsuchen Sie keine externe Dokumentation, durchsuchen Sie keinen Repository-Text, prüfen Sie keine Build-Protokolle, löschen Sie keine Ergebnisse, reparieren Sie keine Suchergebnisse und führen Sie keine Abhängigkeitsgraphenanalyse durch. Wenn der Benutzer bittet, auf Ergebnisse zu reagieren, öffnen Sie zuerst die Suche oder geben Sie die Abfrage an, und fragen Sie dann nach Bestätigung, bevor Sie ein separates modifizierendes Skill oder Workflow starten.
Referenzen
Lesen Sie vor dem Erstellen nichttrivialer Abfragen die Datei references/query-patterns.md.
Lesen Sie vor dem Öffnen des Search-Fensters die Datei references/open-search-window.md.
Offizielle englische Referenzen:
Übergabe von C# an eval
eval kompiliert einen Anweisungsblock, keine Datei. Zwei Konsequenzen, beide Kompilierungsfehler:
- Keine
using-Direktiven. Der Compiler liestusing UnityEditor;als Ressourcen-Freigabe-Anweisung und lehnt sie ab (CS0210). - Typen müssen vollständig qualifiziert sein. Ein bloßes
SearchServicewird nicht aufgelöst (CS0246), und ein bloßesObjectist mehrdeutig mitobject(CS0104).
Das unity-cli-Skill besitzt die Voraussetzungen – Installation der CLI, Bestätigung eines verbundenen Editors, Hinzufügen des com.unity.pipeline-Pakets zum Projekt und Ermittlung des Befehls-Katalogs. Sie benötigen insbesondere eval; falls es fehlt, generieren Sie den Abfragetext und sagen Sie, dass das Fenster nicht geöffnet werden kann.
Abfrage-Erstellungsregeln
Verwenden Sie die einfachste Abfrage, die wahrscheinlich das gewünschte Ergebnis liefert.
- Bevorzugen Sie Typfilter für Asset- und Komponentenanfragen, wie
t:material,t:texture,t:prefab,t:scene,t:script,t:shader,t:Lightodert:Rigidbody. - Behalten Sie vom Benutzer bereitgestellte Namen und Schlüsselwörter als einfache Abfragebegriffe bei, es sei denn, sie müssen in Anführungszeichen gesetzt werden.
- Verwenden Sie
dir:, wenn der Benutzer einen Ordner angibt oder sagt „in Assets/..." oder „unter ...". - Verwenden Sie
l:, wenn der Benutzer nach einem Unity-Asset-Label fragt. - Verwenden Sie
ref=, wenn der Benutzer fragt, was auf ein Asset verweist, es verwendet, davon abhängt, es enthält oder damit verbunden ist. - Verwenden Sie Search-Ausdrücke nur, wenn sie die Abfrage deutlich verbessern, wie
t:prefab ref={t:texture}odert:scene ref={t:prefab}. - Verwenden Sie bei ausgewählten/aktuellen Formulierungen den bekannten ausgewählten Asset-Namen oder -Pfad nur, wenn er im Chat-Kontext vorhanden ist; fragen Sie andernfalls danach.
- Verwenden Sie bei breiten Beziehungsanfragen wie „wo wird Rigidbody verwendet" zuerst eine einfache Schlüsselwort- oder Komponentenabfrage und erwähnen Sie dann, dass eine skriptgesteuerte Prüfung separat ist, falls der Benutzer eine erschöpfende Code-/Eigenschaftsanalyse benötigt.
- Generieren und öffnen Sie bei Anfragen, die Suche mit Reparaturarbeiten mischen, zuerst die Abfrage; ändern Sie keine Ergebnisse, es sei denn, der Benutzer bestätigt explizit eine separate Folgeaktion.
- Erfinden Sie keine nicht unterstützten Filter für unsichere Anfragen. Wenn eine Anfrage nicht zuverlässig mit der Unity Search Syntax ausgedrückt werden kann, öffnen Sie die nächstbeste sichere Abfrage und geben Sie die Einschränkung an.
Öffnen der Unity Suche
Führen Sie C# im Editor nur aus, um das Search-Fenster zu öffnen. Dies ist eine Editor-UI-Aktion und darf keine Projekt-Assets oder Szeneninhalte ändern.
Beim Öffnen der Suche:
- Escapen Sie die Abfrage sicher im generierten C#-String.
- Bevorzugen Sie Asset- und Szenen-Anbieter für dieses v1-Skill.
- Fallen Sie auf aktive Anbieter zurück, wenn ein Anbieter nicht verfügbar ist.
- Protokollieren Sie die geöffnete Abfrage.
- Behaupten Sie niemals, dass die Suche geöffnet wurde, wenn der Befehl fehlgeschlagen ist.
Antwortformat
Halten Sie die benutzerseitige Antwort kurz:
Abfrage: `t:material`
Unity Suche mit dieser Abfrage geöffnet.
Wenn die Suche nicht geöffnet wird:
Abfrage: `t:prefab ref={t:texture}`
Fügen Sie dies in Unity Search ein.
Wenn die Anfrage mehrdeutig, aber dennoch durchsuchbar ist, wählen Sie die wahrscheinlichste Abfrage und erwähnen Sie die Annahme. Stellen Sie nur eine Frage, wenn das Suchziel nicht abgeleitet werden kann, z. B. „finde das Ding" ohne Asset, Szene, Typ, Namen oder Kontext.
Validierungs-Checkliste
Bevor Sie Erfolg melden:
- die generierte Abfrage wird dem Benutzer angezeigt
- die Abfrage zielt auf Assets, Szenenobjekte oder beides
- die Suche wurde nur geöffnet, wenn der Benutzer nicht abgelehnt hat
- jeder Fallback oder jede Unsicherheit wird klar angegeben
- kein Asset, keine Szene, kein Paket, keine Projekteinstellung und kein Suchergebnis wurde geändert