Zum Inhalt springen

Häufig gestellte Fragen und Antworten für CodeCharter-Nutzer

Antworten auf die häufigsten Fragen zu CodeCharter, Preise, Lizenzierung, Datenschutz, CI-Integration und Support.

Allgemein

Was ist CodeCharter?

Ein deterministisches Code-Quality-Tool für .NET-Teams mit einer kleinen LINQ-ähnlichen DSL für eigene Regeln und 120+ eingebauten Regeln. Mehr unter Was ist CodeCharter?.

Macht CodeCharter mein Code-Review überflüssig?

CodeCharter erzwingt die deterministisch beschreibbaren Konventionen, also Naming, Architektur, Layering, Komplexitäts-Schwellen und Async-Korrektheit. Code-Review bleibt für die Logik-Substanz und Edge-Cases.

Preise

Was kostet CodeCharter?

Ab 599 € pro Team und Jahr. Die vollständige Tabelle mit Team-Größen und Enterprise findet ihr unter Plan-Übersicht. Monatliche Abrechnung ist im Portal-Checkout ebenfalls wählbar.

Gibt es einen Trial?

Ja, 7 Tage Vollzugriff, keine Kreditkarte. Siehe Trial.

Wie bekommen meine Team-Mitglieder ihre Lizenz?

Eine Person kauft den Plan über ihren Portal-Account und kopiert die heruntergeladene codecharter.license (oder das lizenzierte CLI-Archiv) auf jede Entwickler-Maschine innerhalb der Sitz-Anzahl. Die Lizenzdatei ist nicht an eine Maschine gebunden. CI-Pipelines nutzen stattdessen einen API-Key aus dem Käufer-Account. Die Browser-Anmeldung per codecharter login funktioniert nur für Maschinen des Käufer-Accounts selbst, denn das Konto, das die Anmeldung bestätigt, ist auch das Konto, das das Abo braucht. Siehe CodeCharter im Team ausrollen.

Wie füge ich Team-Mitglieder hinzu?

Arbeitet in einer Organisation und ladet eure Kolleginnen und Kollegen dorthin ein. Jedes Mitglied hat genau eine Rolle, die festlegt, was es tun darf, siehe Rollen und Berechtigungen. Wenn ihr eure Email-Domain verifiziert und Auto-Join einschalten, wird allen, die sich mit einer Adresse auf dieser Domain registrieren, im Onboarding die Mitgliedschaft angeboten, siehe Email-Domains. Abgerechnet wird nach belegten Sitzen, siehe Sitz-Definition.

Verlängert sich der Vertrag automatisch?

Ja. Selbst verwaltete Abos verlängern sich über Stripe automatisch um die gleiche Laufzeit. Kündigen geht jederzeit im Portal, siehe Kündigung. Enterprise-Verträge laufen nach der vertraglich vereinbarten Mindestlaufzeit aus, ohne stillschweigende Verlängerung.

Source-Code und Datenschutz

Landet mein Source-Code in der CodeCharter-Cloud?

Nein. Die Analyse läuft komplett lokal, auf eurer Maschine oder dem CI-Runner. Siehe Wie wir Source-Code behandeln.

Sind die Server in Deutschland?

Ja, alle Daten liegen auf Servern in Deutschland. Mehr unter Datenschutz und DSGVO.

Wie kann ich meinen Account löschen?

Auf der Profil-Seite im Bereich "Account löschen". Details unter Account löschen.

Wie sichere ich meinen Account zusätzlich ab?

Richtet unter "Konto und Sicherheit" eine Authenticator-App (TOTP) als zweiten Faktor ein; dazu erhaltet ihr Wiederherstellungscodes für den Fall, dass die App nicht verfügbar ist. Jeden Account schützen zusätzlich eine Sperre nach wiederholten Fehlversuchen und ein Anmelde-Protokoll. Siehe Login und Logout.

Technik

Welche Plattformen unterstützt die CLI?

Windows x64, Linux x64, macOS x64 und macOS arm64, verwendet unter Linux also x64-Runner. Die Standalone-Archive sind self-contained, eine separate .NET-Runtime muss also nicht installiert werden. Für die Analyse einer Solution muss aber ein .NET-SDK auf der Maschine installiert sein. Für Windows gibt es zusätzlich einen Installer (setup.exe), für VS Code eine Extension (VSIX), beides auf der Downloads-Seite im Portal. Siehe Windows-Installer und VS-Code-Extension.

Wie schreibe ich eine eigene Regel?

LINQ-Query in eine .ccr-Datei unter rules/. Siehe Hello-World-DSL.

Welche Properties hat das Schema?

Vollständige Liste unter Syntax-Übersicht. Top-Level-Collections sind Types, Methods, Properties, Fields, Events, Namespaces, Assemblies, TypeDependencies, AllBodies und Files.

Welche CI-Systeme werden unterstützt?

GitHub Actions mit nativer Action, plus GitLab CI, Azure DevOps, Bitbucket, TeamCity, Jenkins und jedes System mit Shell-Zugriff. Details unter CI/CD-Integration.

Wie binde ich CodeCharter in eine selbstgehostete CI ein?

Standalone-CLI runterladen, im Build-Step laufen. Siehe CLI als Standalone-Binary.

Wie bekommt die CLI auf einem CI-Runner eine Lizenz?

Einen API-Key aus dem Portal in der Umgebungsvariable CODECHARTER_API_KEY auf dem Runner hinterlegen. Die CLI holt sich dann bei Bedarf automatisch eine kurzlebige CI-Lizenz vom Portal. Siehe API-Keys in Secrets und Lizenz.

Kann ich CodeCharter aus KI-Tools nutzen?

Ja. Die CLI enthält einen MCP-Server (codecharter mcp), und codecharter mcp install registriert ihn für Claude Code, Cursor, Claude Desktop, Windsurf und Gemini. Siehe MCP-Regel-Authoring.

Requirements

Ersetzt das unser Ticket-System?

Nein. CodeCharter kennt keine Zuweisung, keinen Status-Workflow über Spalten, keine Schätzung und kein Board. Jira, Azure Boards und Vergleichbares behaltet ihr. In den Requirement-Corpus kommt ein Requirement erst, wenn es beschlossen ist und jemand später wissen will, ob es eingelöst wurde. Die vollständige Abgrenzung steht unter Abgrenzung und Aufwand.

Was passiert, wenn sich ein Requirement oder der Code ändert?

Bei der Abnahme pinnt codecharter req accept die Evidenz, auf die sich die Freigabe stützt, also einen Fingerprint der verankerten Coderegion und bei einem test-Criterion zusätzlich den Hash der Testmethode. Ändert sich diese Evidenz, passt der Pin nicht mehr, und das Requirement rendert als stale statt still weiter als erfüllt zu gelten. Dann nehmt ihr bewusst erneut ab.

Wie viel Aufwand ist das?

Das Anlegen dauert Minuten, das ehrliche Formulieren der Criteria länger, weil dabei die eigentliche Entscheidung fällt, woran man die Erfüllung erkennt. Diese Zeit spart ihr nicht ein, ihr verschiebt sie von der Abnahme nach vorn. Im Betrieb kommen drei wiederkehrende Aufwände dazu, siehe Abgrenzung und Aufwand.

Was sieht ein Auditor am Ende?

Versionierte Dateien im Repository: den Text der Zusage, die Stelle im Code, an die sie gebunden ist, und pro Abnahmeprüfung, wer sie wann auf welche Evidenz gestützt freigegeben hat. Über documents.yml lässt sich daraus eine Gliederung als Lastenheft, Pflichtenheft oder Abnahmeprotokoll bilden.

Muss jede Methode ein [Satisfies]-Attribut tragen?

Nein. Die Coverage misst, wie viel Code über einen Justification-Walk von einem Requirement aus erreichbar ist, ein Attribut an der Einstiegsstelle deckt also den Aufrufgraphen dahinter mit ab. Infrastruktur lässt sich ausdrücklich ausnehmen, und der Report ist zunächst nur ein Report: er scheitert erst, wenn ihr das Gate einschaltet. Siehe Requirements-Coverage.

Kann ein KI-Agent Requirements selbst abnehmen?

Nein, und das ist Absicht. Ein Agent darf über die MCP-Tools lesen, prüfen, messen, entwerfen, binden und um Freigabe bitten. Die Abnahme selbst gibt es nur auf der Kommandozeile über codecharter req accept, damit ein Agent nicht die eigene Arbeit freigibt. Siehe Requirements über MCP.

Wie bekommen wir unser bestehendes Lastenheft hinein?

Von Hand, und bewusst nur den nachweispflichtigen Teil. In einem Lastenheft mit zweihundert Sätzen sind das selten mehr als zwanzig bis dreißig. Ein KI-Agent kann die Übertragung mit req_draft und req_bind vorbereiten, die Prüfung bleibt bei euch. Der Weg im Detail steht unter Abgrenzung und Aufwand.

Support

Wie erreiche ich den Support?

Unter support@codecharter.tools, Antwortzeit Werktags in der Regel innerhalb von 24 Stunden. Bei Sicherheitslücken "Security" im Betreff angeben, Antwort innerhalb von 48 Stunden. Mehr unter Support und Kontakt.