The tmc CLI - The Modding Community
Die API, Aus Deinem Terminal
tmc ist ein Kommandozeilen-Client für unsere öffentliche Content-API. Er erstellt, bearbeitet und löscht deine Assets, Mods, Server, Artikel, Communities, Sammlungen und Gruppen — und weil die API genau dafür benutzt wird, lädt er Dateien hoch und veröffentlicht Releases in einem Befehl.
tmc ist noch nicht veröffentlicht. Es liegt nicht auf PyPI und hat kein öffentliches Repository — heute installiert man es aus einem Quellcode-Checkout, und diese Seite beschreibt, was das Werkzeug schon kann, statt einen Start anzukündigen.
# From the source checkout — there is nothing to build
pip install .
pip install '.[fast]' # optional: cryptography, for faster signing
tmc --version # tmc 1.1.0
# Keys are made under Account → API Keys
tmc auth login --token tmc_xxxxxxxxxxxx
tmc auth whoami
# …or read public items with no key at all
tmc mod list --anon --app 4 -o json
Ein einziges Paket aus der Standardbibliothek — nichts zu bauen und nichts aufzulösen — und jeder Befehl, jedes Flag und jeder Exit-Code steht in der Doku.
Der Grund, Überhaupt Ein Werkzeug Zu Haben
Ein Release über die rohe API zu schneiden sind vier Requests in einer bestimmten Reihenfolge: Dateien hochladen, ihre IDs einsammeln, den bereits vorhandenen Release-Satz lesen und dann den neuen zurückschreiben, ohne die anderen zu stören. release publish ist genau diese Abfolge.
Alles, Was Die API Kann, Ausbuchstabiert
Ein Befehl pro Sache, die du im Browser tun würdest — und ein paar, die du dort nicht tun wolltest: Massenbearbeitungen, Pipelines und geskriptete Releases.
Schlüssel, Profile Und Die Öffentliche Hälfte
Melde dich einmal an, und die Zugangsdaten landen in ~/.config/tmc/config.json mit Modus 0600 — oder übergib sie über die Umgebung, dann wird die Platte gar nicht angefasst. Ein Profil pro Site oder pro Schlüssel, und --anon für die Hälfte der API, die überhaupt keinen Schlüssel braucht.
Vier Verben, Die Sagen, Was Sie Tun
Das gefährliche ist set: In dieser API bedeutet ein PUT auf eine Beziehung „das ist jetzt die vollständige Menge“, also löscht ein PUT mit einem einzigen Mitglied alles andere am Objekt. Die CLI hält die vier auseinander und warnt, bevor sie das zerstörerische sendet.
Gemacht Für CI
Baue dein Projekt, schneide ein Release und lade seine Dateien bei jedem Tag hoch. Die Zugangsdaten kommen aus der Umgebung, also wird auf einem Runner nichts auf die Platte geschrieben.
