Communitygithub.com

jcl2018/bass-tab

Verwandelt Quellen für einen Song (Tabulatur-Screenshots, PDFs, Links, Notizen) in eine kompakte Bass-Tabulatur mit festem Format und rendert sie als ein- oder zweiseitiges Mitspiel-Blatt-PDF mit Abschnittsbeschriftungen, komprimierten Wiederholungen, Akkorden und Text. Verwende es, wenn du gebeten wirst, eine Bass-Tabulatur zu erstellen, zu korrigieren, zu rendern oder zu drucken.

Was ist bass-tab?

Dieses Skill ist ein Werkzeug für KI-Agenten, um aus verschiedenen Quellen (Screenshots, PDFs, Song-Links) eine strukturierte Bass-Tabulatur zu erstellen und als kompaktes PDF-Notenblatt auszugeben. Es unterstützt die Plattformen, die Python-Skripte ausführen können, und erfordert lediglich `python3` sowie optional Pillow für nicht-lateinische Zeichen (z. B. Chinesisch). Der Agent generiert eine Song-Datendatei mit Metadaten, Takten, Abschnitten, Akkorden und Texten, die dann in eine Text-Tabulatur (`.tab`) und ein druckfertiges Mitspiel-Chart-PDF (1–2 US-Letter-Seiten) umgewandelt wird. Wesentlich ist die strikte Regel, nur das zu übernehmen, was die Quelle tatsächlich zeigt – niemals aus dem Gedächtnis zu ergänzen oder Wiederholungen eigenmächtig aufzulösen. Wiederkehrende Figuren werden nur einmal kodiert und an allen Stellen referenziert, sodass Korrekturen sofort überall wirken. Der Agent muss die Quellen sorgfältig abgleichen, fehlende oder geschätzte Takte melden und kann nach der Transkription Vorschläge für Übung, musikalische Analyse oder Arrangement anbieten.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jcl2018/skillset/tree/HEAD/skills/bass-tab

In Ihrer bevorzugten KI fragen

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

Dokumentation

Was macht bass-tab?

Verwandelt das, was eine Quelle tatsächlich zeigt, in eine Song-Datendatei und rendert dann eine kompakte Bass-Tabulatur (.tab) und ein druckfertiges Mitspiel-Chart-PDF (1–2 US-Letter-Seiten). Benötigt nur python3; Pillow wird ebenfalls benötigt, wenn Titel oder Künstler nicht-lateinische Zeichen enthalten (z. B. Chinesisch). Ohne Pillow verweigern chart2pdf.py und tab2pdf.py den Dienst, anstatt ? zu drucken; installiere es in einer venv (python3 -m venv v && v/bin/pip install pillow) und führe das Skript mit diesem Python aus, oder verwende --allow-lossy. Die Skripte liegen im Verzeichnis scripts/ neben dieser Datei; führe sie aus dem Ordner dieses Skills aus oder gib vollständige Pfade an.

Die Song-Datei

Ein Song, ein Verzeichnis, drei Dateien:

<slug>/
  <slug>.py     die Quelle der Wahrheit: strukturierte Daten, manuell bearbeitbar (starte mit templates/song-template.py)
  <slug>.tab    generiert von scripts/tabgen.py
  <slug>.pdf    das Mitspiel-Chart, generiert von scripts/chart2pdf.py direkt aus <slug>.py

<slug>.py liefert META / BARS / SECTIONS / CHORDS / LYRICS. Eine wiederholte Figur wird EINMAL geschrieben und an jeder Stelle eingefügt, an der sie gespielt wird, sodass eine Korrektur jede Kopie erreicht. Erweitere eine Wiederholung niemals in unabhängige Kopien.

LYRICS bildet eine Taktnummer auf die darunter gesungenen Wörter ab. Diese können vom Besitzer stammen oder aus dem, was eine Quelle sichtbar zeigt (z. B. Liedtexte in einem Tab-Video). Erfinde sie niemals oder fülle sie aus dem Gedächtnis oder einer Websuche; wenn keine Quelle Wörter zeigt, lasse LYRICS = {} und sage, dass der Besitzer sie hinzufügen kann. Ein Song ohne Text wird sauber gerendert. Texte werden wortwörtlich gedruckt und überleben jede Neugenerierung.

Rendern

python3 scripts/chart2pdf.py <slug>/<slug>.py -o <slug>/<slug>.pdf [--paper letter|a4]
python3 scripts/tabgen.py <slug>/<slug>.py <slug>/<slug>.tab --bars <1 wenn META slots == 16 ist, sonst 3> --cut compact

Das PDF ist ein Chart, im Stil eines Online-Tab-Spielers: mehrere Takte pro Zeile, eine fette Abschnittsbeschriftung am Anfang jedes Abschnitts, eine wiederholte Figur einmal zwischen Wiederholungszeichen gezeichnet mit ihrer Anzahl (x4), ein Abschnitt, der einen früheren wiederholt, auf eine Zeile reduziert (Chorus 2 = Chorus (Takte 13-16)), Akkordnamen über Takten, wo CHORDS sie hat, und Text unter dem zugehörigen Takt. Es ist standardmäßig US-Letter und maximal 2 Seiten: Tabulatur-Ziffern bleiben bei 9 pt oder mehr, der Abstand wird enger und Wiederholungen werden komprimiert, bevor die Schrift schrumpft, und ein Song, der immer noch nicht passt, wird mit einer Zeile, die ihn nennt, abgelehnt. Melde die Seitenzahl. Benötigt Pillow für nicht-lateinische Texte oder Titel (siehe oben). --collapse-sections erzwingt die Referenzzeilen.

Das lange, ein Takt breite PDF ist weiterhin verfügbar: tabgen.py ... --cut compact gefolgt von tab2pdf.py <slug>.tab -o <slug>-long.pdf. --cut compact ist das Textblatt. Es ist der einzige Cut, der die Wiederholungsnotation trägt (eine komprimierte Figur mit der Bezeichnung A-B xN). --cut full ist eine Debug-Ansicht (jeder Takt plus eine Beat-Ruler-Zeile, die das Format nicht aufführt), niemals das Endprodukt. Gib Ausgabepfade vollständig an.

Das Textformat: Kopfzeilen (Titel, Künstler, Tonart, Tempo, Taktart, Stimmung, Quelle, Legende), dann pro Abschnitt eine [Name - Takte a-b . m:ss]-Überschrift, eine Akkord-Zeile, eine Taktnummern-Zeile, eine Rhythmus-Zeile R| und vier Saiten-Zeilen G D A E; dann Hinweise, dann ein [Geprüft]-Block. Notenzeilen sind auf 77 Zeichen festgelegt, sodass jeder Song im gleichen Maßstab gedruckt wird; wenn eine Zeile länger ist, verwende weniger Takte pro System.

Erstellen einer Song-Datei aus Quellen

Befolge dies buchstäblich; es ist der Kern des Skills.

  1. Übernimm nur das, was eine Quelle tatsächlich zeigt. Ein Screenshot oder PDF einer Tabulatur kann gelesen werden. Ein Link zu einer Aufnahme kann nicht: Du kannst kein Audio hören. Von einer Song-URL nimm den Titel, das Tempo und die Abschnittsnamen, falls gedruckt, sonst nichts. Gib niemals einen Takt aus dem Gedächtnis des Songs an. Eine sichtbare Lücke ist besser als ein Takt, der richtig aussieht und es nicht ist.
  2. Nur Bass-Spur. Wenn eine Quelle mehrere Instrumente zeigt, nimm den Bass und sag, welche Spur. Zwei Bass-Spuren oder verdoppelter Bass: frage, wähle nicht.
  3. Überprüfe jede Wiederholung und kodiere sie einmal. Lese jedes Vorkommen und vergleiche. Übereinstimmung ist die stärkste verfügbare Verifizierung; Abweichung bedeutet, dass mindestens eine Lesung falsch ist. Vorkommen stimmen überein: kodiere einmal. Sie stimmen nicht überein: sag es, gib die Anzahl in beide Richtungen an, markiere die Lesung als Schätzung. Ein Takt ohne Wiederholung kann nicht überprüft werden; sag das auf dem Blatt.
  4. Behaupte niemals etwas, das du nicht überprüft hast. Aussagen wie „gleich wie Takte A-B

Verwandte Skills