ToolBoxV2 Registry CLI Reference¶
SHARED_CONTEXT¶
Du arbeitest im ToolBoxV2 Doc-Writer System. Deine einzige Wahrheitsquelle ist der Code. Nie etwas erfinden oder aus alten Docs übernehmen ohne Code-Verifikation.
CODE-REFERENZ REGEL: Jeden Claim mit belegen. Format: <!-- verified: <dateiname>::<klasse_oder_funktion> -->
Registry CLI Dokumentation¶
WARNUNG: Diese Dokumentation basiert ausschließlich auf dem implementierten Code in cli_registry.py.
Keine Funktion die dort nicht existiert wird dokumentiert.
Übersicht¶
Die Registry CLI ermöglicht: - Server Management: Start/Stop/Status - Package Operations: Search, List, Info, Download, Versions - Publishing: Create, Upload, Delete, Yank - Authentication: Login, Logout, WhoAmI - Admin: Publisher Management
Server Commands¶
Start Registry Server¶
tb registry server start [OPTIONS]
OPTIONS:
--host TEXT Host to bind (default: 127.0.0.1)
--port INTEGER Port to bind (default: 4025)
-b, --background Run in background
--reload Enable auto-reload
Beispiel:
tb registry server start --host 0.0.0.0 --port 4025 --background
Stop Registry Server¶
tb registry server stop
Registry Server Status¶
tb registry server status
Zeigt: - Status (running/stopped) - PID - Host & Port
Package Commands¶
Search Packages¶
tb registry search QUERY [OPTIONS]
OPTIONS:
--limit INTEGER Max results (default: 50)
-r, --registry-url TEXT Registry URL
Beispiel:
tb registry search discord --limit 10
Ausgabe:
┌─────────────────────────────────────────────────────────┐
│ Name Version Publisher Downloads│
├─────────────────────────────────────────────────────────┤
│ toolboxv2-discord 1.2.0 simplecore 1,234 │
│ ... │
└─────────────────────────────────────────────────────────┘
List Packages¶
tb registry list [OPTIONS]
OPTIONS:
--type TEXT Filter: mod, library, artifact
--sort TEXT Sort by: name, downloads, recent (default: name)
--limit INTEGER Max results (default: 50)
-r, --registry-url TEXT Registry URL
Beispiel:
# Alle mods nach Downloads sortiert
tb registry list --type mod --sort downloads
Package Info¶
tb registry info PACKAGE [OPTIONS]
OPTIONS:
--versions Show version history
-r, --registry-url TEXT Registry URL
Beispiel:
tb registry info CloudM --versions
Zeigt: - Name, Version, Visibility - Publisher, License - Homepage, Repository - Description, Keywords - Version History (mit --versions)
Download Package¶
tb registry download PACKAGE [OPTIONS]
OPTIONS:
--version TEXT Specific version (default: latest)
-o, --output DIR Output directory (default: .)
-r, --registry-url TEXT Registry URL
Beispiel:
# Download latest
tb registry download CloudM
# Specific version
tb registry download CloudM --version 2.0.0 --output ./mods/
Package Versions¶
tb registry versions PACKAGE [OPTIONS]
OPTIONS:
-r, --registry-url TEXT Registry URL
Beispiel:
tb registry versions CloudM
Ausgabe:
┌────────────────────┬───────────────────────┬────────────┬──────────┐
│ Version │ Published │ Downloads │ Status │
├────────────────────┼───────────────────────┼────────────┼──────────┤
│ 2.0.0 │ 2024-01-15 │ 500 │ Active │
│ 1.5.0 (YANKED) │ 2023-12-01 │ 200 │ YANKED │
└────────────────────┴───────────────────────┴────────────┴──────────┘
Publishing Commands¶
Publish Package¶
tb registry publish PACKAGE [OPTIONS]
OPTIONS:
--create Create new package
--upload Upload new version
--visibility TEXT Set: public, private, unlisted
-m, --metadata FILE Path to metadata JSON
-r, --registry-url TEXT Registry URL
Metadaten JSON:
{
"name": "mein-mod",
"display_name": "Mein Mod",
"package_type": "mod",
"visibility": "unlisted",
"description": "Ein tolles Mod",
"readme": "README.md",
"homepage": "https://github.com/user/repo",
"repository": "https://github.com/user/repo",
"license": "MIT",
"keywords": ["toolbox", "mod"]
}
Beispiel:
# Neues Paket erstellen
tb registry publish ./mein-mod --create --metadata meta.json
# Version hochladen
tb registry publish ./mein-mod --upload --metadata meta.json
# Sichtbarkeit ändern
tb registry publish mein-mod --visibility public
Upload with Diff Support¶
tb registry upload PACKAGE -m METADATA [OPTIONS]
OPTIONS:
-m, --metadata FILE Path to metadata JSON (REQUIRED)
--diff-threshold INTEGER Max diff ratio % (default: 50)
--force-full Force full upload (no diff)
-r, --registry-url TEXT Registry URL
Beispiel:
tb registry upload ./mein-mod.zip \\
--metadata meta.json \\
--diff-threshold 30
Ausgabe:
✅ Upload successful!
Type: DIFF
Uploaded: 45 KB / 200 KB
Saved: 155 KB (77.5%)
Diffed from: 1.0.0
Delete Package¶
tb registry delete PACKAGE [--force]
Beispiel:
# Mit Bestätigung
tb registry delete mein-mod
# Ohne Bestätigung
tb registry delete mein-mod --force
Yank Version¶
tb registry yank PACKAGE VERSION [OPTIONS]
OPTIONS:
--reason TEXT Reason for yanking
--undo Unyank (restore) the version
Beispiel:
# Version yanken
tb registry yank mein-mod 1.0.0 --reason "Security vulnerability"
# Version wiederherstellen
tb registry yank mein-mod 1.0.0 --undo
Authentication Commands¶
Login¶
tb registry login [-r REGISTRY_URL]
Nutzt CloudM.Auth für Authentifizierung:
1. Token wird von CloudM.Auth bezogen
2. Token wird mit Registry verifiziert
3. Token wird lokal gespeichert (~/.tb-registry/auth_token.txt)
Beispiel:
tb registry login
Logout¶
tb registry logout
Beispiel:
tb registry logout
✅ Logged out successfully
WhoAmI¶
tb registry whoami [-r REGISTRY_URL]
Zeigt aktuellen Benutzer: - User ID - Username - Email - Verified Status - Admin Status - Publisher ID
Admin Commands¶
Publisher Management¶
tb registry admin publisher ACTION [OPTIONS]
ACTIONS:
list List all publishers
open List pending publishers
verify TARGET Verify a publisher
reject TARGET Reject a publisher
revoke TARGET Revoke verification
OPTIONS:
--target TEXT Publisher ID
--status TEXT Filter: unverified, pending, verified, rejected
--notes TEXT Action notes / reason
Beispiel:
# Liste alle Publisher
tb registry admin publisher list
# Zeige ausstehende Anträge
tb registry admin publisher open
# Publisher verifizieren
tb registry admin publisher verify publisher_abc123
# Publisher ablehnen
tb registry admin publisher reject publisher_xyz789 --notes "Invalid repository"
# Verifizierung zurückziehen
tb registry admin publisher revoke publisher_abc123
Utility Commands¶
Health Check¶
tb registry health [-r REGISTRY_URL]
Beispiel:
tb registry health
✅ Registry is healthy: https://registry.simplecore.app
Global Options¶
Alle Commands akzeptieren:
-r, --registry-url TEXT Registry URL (default: https://registry.simplecore.app)
-v, --verbose Verbose output
Error Codes¶
| Code | Bedeutung |
|---|---|
| 0 | Erfolgreich |
| 1 | Fehler |
| 130 | Interrupted (Ctrl+C) |
Troubleshooting¶
Authentication failed¶
# Prüfe ob eingeloggt
tb registry whoami
# Erneut einloggen
tb registry login
Package not found¶
# Prüfe Schreibweise
tb registry search mein-paket
# Prüfe Registry URL
tb registry list -r https://registry.simplecore.app
Upload fehlgeschlagen¶
# Mit verbose
tb registry upload ./mein-mod.zip --metadata meta.json -v
# Full Upload erzwingen
tb registry upload ./mein-mod.zip --metadata meta.json --force-full