CommunityCodierung & Entwicklunggithub.com

Asset-Inventory-Manager

Erstelle und verwalte eine projektbezogene Asset-Liste (Modelle, Texturen, Sprites, Audio, Schriftarten, Shader, Bilder, Symbole, externe Bibliotheken, Datensätze) mit Quellenangabe, Lizenz, Credits, Status und Verifizierung für jedes Asset. Verwende dieses Skill beim Hinzufügen, Ersetzen, Umbenennen, Entfernen oder Prüfen von Projekt-Assets, wenn der Benutzer nach einer Asset-Liste, einem Inventar, Credits oder einer Lizenzprüfung fragt, oder vor dem Ausliefern des Projekts. Geeignet für mehrere KI-Agenten, Git-Branches und Worktrees. Funktioniert für Spiele, VR/XR, Web-Apps und allgemeine Software.

Was ist Asset-Inventory-Manager?

Der Asset Inventory Manager ist ein CLI-basiertes Tool, das eine einzige autoritative und prüfbare Asset-Liste pro Projekt führt. Die Daten werden in einem `.asset-inventory/` Ordner als einzelne JSON-Dateien pro Asset gespeichert, und eine generierte Markdown-Ansicht (`ASSET_LIST.md`) wird automatisch erstellt – niemals manuell bearbeiten. Der Skill unterstützt gängige Aufgaben wie Hinzufügen, Aktualisieren, Entfernen, Abfragen, Scannen und Auditieren von Assets und bietet Funktionen für die Zusammenarbeit mehrerer KI-Agenten, Git-Branches und Worktrees, inklusive dateibasierter Sperren und einem Feld-Level-Merge-Treiber für parallele Branches. Er ist ideal für Spiele-, VR/XR-, Web- und allgemeine Softwareprojekte, bei denen eine saubere Lizenzverwaltung und Herkunftsnachverfolgung wichtig sind, und lässt sich nahtlos in CI/CD-Pipelines integrieren.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/BihaoBrianWang/asset-inventory-manager/tree/main/skills/asset-inventory-manager

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

Asset Inventory Manager

Führe eine einzige autoritative, prüfbare Asset-Liste pro Projekt. Die Daten liegen im eigenen .asset-inventory/ Ordner des Projekts (eine JSON-Datei pro Asset) und einer generierten Markdown-Ansicht (Standard: ASSET_LIST.md). Bearbeite die Markdown-Ansicht niemals von Hand: Ändere Datensätze mit der CLI, die die Ansicht neu generiert.

Die CLI

Alle Vorgänge erfolgen über dieses einzige, nur auf stdlib basierende Python 3.9+ Skript in diesem Skill:

python <this-skill-dir>/scripts/asset_inventory.py <befehl> [optionen]

Im Folgenden steht aim für diesen Befehl. Falls python fehlt oder nicht Python 3 ist, versuche python3, dann py -3 (Windows), dann uv run --no-project python. Führe es von einem beliebigen Ort innerhalb des Projekts aus, oder übergib -C <projekt>. Füge --json für maschinenlesbare Ausgabe hinzu. Der Verlauf zeichnet den handelnden Agenten auf: übergib --agent <name> oder setze AIM_AGENT, wenn die automatische Erkennung falsch ist.

AufgabeBefehl
Ein Inventar startenaim init --profil game|vr|web|software|generic [--git-setup]
Ein Asset registrierenaim add --name "Bogen" --kategorie modell --pfad assets/bow.glb --herkunft drittanbieter --lizenz CC-BY-4.0 --quellen-url URL --nennung erforderlich --credit "..."
Ein Asset ändernaim update ID --status final --verifizierung genehmigt --notiz "warum"
Zurücksetzen / löschenaim remove ID --note "ersetzt durch X" (behält den Datensatz) / --purge
Assets findenaim query --kategorie modell --status platzhalter, --pfad assets/ui/, --text bogen, --format json|csv|ids
Einzelner Datensatzaim get ID
Nicht registrierte Dateien findenaim scan (füge --register hinzu, um Bedarf-Prüfung-Datensätze zu erstellen)
Alles prüfenaim audit (--strict lässt Warnungen zu Fehlern werden)
Markdown neu erstellenaim render (--check für CI)
Kontext (Branch, Worktree, Sperre)aim info
Eine alte Markdown-Tabelle migrierenaim import-markdown alte_liste.md
Nach einem Git-Konfliktaim resolve, dann aim audit

Vokabular (siehe Schema für alle Felder):

  • status: geplant, platzhalter (funktionsfähig, Prototypqualität), integriert, final, zurückgesetzt.
  • verifizierung: ungeprüft, ausstehend, geprüft (technische Prüfungen bestanden), genehmigt (vom Besitzer genehmigt). Markiere niemals als genehmigt, es sei denn, der Benutzer oder Prüfer hat es genehmigt.
  • herkunft: eigen, drittanbieter, prozedural, ki-generiert, unbekannt. Assets von Drittanbietern und KI-generierte Assets erfordern eine Lizenz.

Arbeitsablauf

  1. Lokalisieren. Führe aim info aus. Wenn kein Inventar existiert und der Benutzer eines möchte, führe aim init mit dem nächstgelegenen Profil (Profile) aus, dann aim scan, um zu sehen, was bereits existiert. Für eine bestehende handgeschriebene Liste verwende aim import-markdown und überprüfe die mit importiert gekennzeichneten Datensätze.
  2. Jede Asset-Änderung im selben Changeset erfassen. Wenn du eine Asset-Datei hinzufügst, ersetzt, änderst, verschiebst oder löschst, aktualisiere ihren Datensatz im selben Commit: add für neue Dateien, update --add-path/--remove-path für Verschiebungen, update --modifications für Bearbeitungen von Drittanbieterdateien, remove wenn nicht mehr verwendet.
  3. Herkunft ehrlich erfassen. Erfasse die tatsächliche Quellen-URL, den Autor, die Lizenz und den erforderlichen Credit-Text zum Zeitpunkt des Downloads. Wenn unbekannt, verwende --origin unbekannt und sage dies; rate niemals eine Lizenz. Melde Lizenzkonflikte an den Benutzer.
  4. Status wahrheitsgemäß halten. Unterscheide zwischen geplant, implementiert, geprüft und genehmigt. Setze die nächste ausstehende Prüfung in --next; sie erscheint unter "Zu prüfen" am Anfang der Liste.
  5. Vor dem Abschluss auditieren. Führe aim audit aus. Korrigiere Fehler; melde verbleibende Warnungen an den Benutzer. Erwähne den Pfad der Liste in deiner Zusammenfassung.

Regeln für die Zusammenarbeit (mehrere Agenten, Branches, Worktrees)

Details: Zusammenarbeit.

  • Jeder Git-Worktree hat seine eigene Kopie des Inventars; bearbeite die in dem Worktree, in dem du arbeitest. Bearbeite niemals den Worktree eines anderen Agenten.
  • Schreibvorgänge verwenden eine kurze Sperre (.asset-inventory/.lock), sodass sich Agenten, die einen Ordner teilen, nicht gegenseitig Dateien korrumpieren können. Wenn eine Sperre gemeldet wird, warte und wiederhole den Vorgang; lösche sie nur, wenn aim info zeigt, dass der zugehörige Prozess nicht mehr existiert.
  • Um verlorene Aktualisierungen zu vermeiden, lies mit aim get ID und verwende dann aim update ID --expect-revision N. Exit-Code 3 bedeutet, dass jemand anderes sie geändert hat: erneut lesen und erneut anwenden.
  • Eine Datei pro Asset bedeutet, dass parallele Branches selten in Konflikt geraten. Führe aim git-setup einmal pro Klon aus, um den Feld-Level-Merge-Treiber zu installieren.
  • Nach jedem Merge, Rebase oder Cherry-Pick: aim resolve (wenn Datensätze Konfliktmarkierungen oder _conflicts aufweisen), dann aim render, dann aim audit, dann committen. Führe niemals einen manuellen Merge von ASSET_LIST.md durch; generiere sie neu.
  • Explizite IDs wie M01 sind auf einem Branch in Ordnung; Standard-IDs (<präfix>-<name-slug>) vermeiden Nummerierungskollisionen über Branches hinweg.

Exit-Codes

0 ok · 1 Fehler oder fehlgeschlagenes Audit · 2 falsche Verwendung/unbekannter Wert · 3 Revisions- oder Merge-Konflikt, der Aufmerksamkeit erfordert.

Verwandte Skills