Diese Dokumentation gilt für föderale Deployments von Devin. Zurück zur Devin-Dokumentation
Speicherort der Lizenz
Der mitgelieferte Desktop-Agent und die eigenständige CLI lesen dieselbe Datei. Installieren Sie sie vor dem ersten Start; siehe Installation → Schritt 4. Desktop-Nutzer können eine Lizenz auch in den Devin-Einstellungen installieren: Der mitgelieferte Agent validiert die Datei offline, überschreibt keine Datei, die einem anderen Nutzer gehört, und protokolliert ein
license_installed-Audit-Ereignis. Gehört die Lizenzdatei unter Windows einem Administrator, kann ein Standardnutzer sie nicht über die Desktop-App ersetzen (die Installation wird mit LIC001 abgelehnt); ein Administrator hingegen schon. Sichern Sie C:\ProgramData\Devin\ ab, bevor Sie die Datei ablegen.
Lizenz über das Portal ausstellen
- Melden Sie sich im Portal an und öffnen Sie Ihre Team-Seite. Im Abschnitt Air-gapped licenses sehen Sie, wie viele Sitzplätze belegt sind, den Berechtigungszeitraum und die Standard-Lizenzdauer.
- Klicken Sie auf Generate license.
- Geben Sie ein Label (zum Beispiel den Hostnamen oder den Namen des Nutzers), die E-Mail-Adresse der zugewiesenen Person und die Dauer in Tagen ein. Standardmäßig wird die Standarddauer Ihrer Berechtigung übernommen. Die Dauer ist sowohl durch das Maximum Ihrer Berechtigung als auch durch das Ende des Berechtigungszeitraums begrenzt; im Review-Schritt wird das voraussichtliche Ablaufdatum angezeigt.
- Bestätigen Sie Ihre Eingaben. Das Portal meldet License generated und bietet Download license file an. Dabei handelt es sich um die signierte Datei
.devin-onprem-license. Übertragen Sie sie gemäß Ihrem freigegebenen Verfahren für Datenträger auf den air-gapped Host.
Inhalt der Datei
Die Datei besteht aus einem einzelnen JSON Web Token in kompakter Form (header.payload.signature), signiert mit EdDSA (Ed25519). Das Feld kid im Header gibt den öffentlichen Schlüssel an, mit dem das Token signiert wurde. Das Produkt liefert die öffentlichen Schlüssel aller Umgebungen mit, sodass bei der Validierung nichts abgerufen werden muss. Claims:
Bei der Validierung werden die Signatur anhand des über
kid ausgewählten eingebetteten Schlüssels, das Zeitfenster nbf/exp mit einer Toleranz für Uhrenabweichungen von 24 Stunden in beide Richtungen sowie der Claim product geprüft.
Lizenz prüfen
Schlüssel-ID prüfen
Dekodieren Sie den JWT-header und lesen Siekid aus. Dieser Einzeiler funktioniert sowohl unter Linux als auch unter macOS: Er wandelt base64url in base64 um und ergänzt das Padding, da das mit macOS ausgelieferte BSD-base64 Eingaben ohne Padding stillschweigend abschneidet.
Ein abweichender
kid oder ein leeres Ergebnis bedeutet, dass die Datei entweder keine für dieses Produkt ausgestellte Lizenz ist oder bei der Übertragung beschädigt wurde.
Sitzplatz, Konto und Ablaufdatum prüfen
devin auth status funktioniert auch dann, wenn die Lizenz fehlt oder ungültig ist. Daher können Sie den Befehl zur Fehlerdiagnose verwenden:
Identity ist die lokale Identität für die Urheberangabe (OS-Benutzername plus git config user.email); sie wird im Audit-Protokoll aufgezeichnet und ist unabhängig von der Lizenz. Kann die Datei nicht validiert werden, lautet die letzte Zeile stattdessen License: INVALID — LIC00X: <reason>.
Die license-Prüfung in devin airgap doctor meldet denselben Sitzplatz, dasselbe Konto und dasselbe Ablaufdatum und springt in den letzten 30 Tagen vor Ablauf auf warn um.
Verhalten beim Start und bei der erneuten Validierung
-
Bei jedem Start validiert die CLI die Lizenz und gibt eine Zeile auf stderr aus:
Läuft die Lizenz innerhalb der nächsten 30 Tage ab, folgt eine Zeile
Warning: license expires in N day(s). - Langlaufende Prozesse (der in Desktop gebündelte Agent, die CLI-REPL) prüfen die Datei höchstens einmal pro Stunde erneut, und zwar vor dem Start einer neuen Sitzung oder Eingabe. Laufende Vorgänge werden nie unterbrochen.
-
Ist eine Lizenz seit mehr als 24 Stunden abgelaufen, werden neue Sitzungen und Eingaben blockiert. In Desktop zeigt der Chat-Bereich den ACP-Fehler
-32019 license_invalidan; die genaue Ursache (LIC00X) finden Sie unter View → Output → Devin ACP. - Fehlschläge werden nicht zwischengespeichert: Eine erneuerte Datei wird nach der Installation ab der nächsten Eingabe wirksam, ganz ohne Neustart.
-
Einige Befehle funktionieren auch ohne gültige Lizenz, damit Sie einen Host reparieren können:
devin auth status,devin airgap doctor,devin doctor,devin diagnostics,devin models validateunddevin version.
Lizenz verlängern oder ersetzen
- Generieren Sie im Portal eine neue Lizenz für denselben Sitzplatzinhaber (siehe oben). Wenn der Sitzplatz bereits belegt ist, bitten Sie Ihr Support-Team, zuerst die alte Lizenz zu widerrufen.
-
Überschreiben Sie die vorhandene Datei unter
/etc/devin/license.devin-onprem-license(oder unter dem inDEVIN_LICENSE_FILEangegebenen Pfad) mit der neuen Datei. Die Datei muss weiterhin dem Konto gehören, unter dem Devin ausgeführt wird, oder Root gehören und für dieses Konto lesbar sein. Unter Windows lautet der StandardpfadC:\ProgramData\Devin\license.devin-onprem-license; ersetzen Sie die Datei in einer Sitzung mit erhöhten Rechten. -
Überprüfen Sie das Ergebnis:
Fehlercodes
Alle Lizenzfehler werden alsLIC00X: <message> ausgegeben, gefolgt vom geprüften Pfad und einem Hinweis, wie Sie ihn überschreiben können.
Den vollständigen Katalog für alle Namespaces finden Sie unter Fehlercodes.

