Code automatisch dokumentieren
Diese Funktion liest vorhandenen Quellcode ein und erzeugt dazu passende Dokumentation – Docstrings, Funktionskommentare und eine kurze Beschreibung pro Modul, in der jeweiligen Programmiersprache. Gedacht für Teams und Freiberufler, die fremden oder alten Code übernehmen und offenlegen müssen, ohne jede Funktion einzeln von Hand zu kommentieren.
Online ausführen
Führen Sie dies mit Ihrem Konto auf unseren Servern aus. Kostenlose Tools laufen in Ihrem Browser; dieses wird zum oben genannten Preis von Ihrem KIT-Guthaben abgebucht.
Was die Funktion aus dem Code liest
Sie fügen ein Codefragment oder eine ganze Datei ein; die Funktion erkennt Funktionen, Klassen und Parameter und erzeugt dazu eine Beschreibung, was der Code tut, welche Parameter erwartet werden und was zurückgegeben wird. Unterstützt werden gängige Sprachen wie Python, JavaScript, TypeScript, PHP und Java. Bereits vorhandene Kommentare werden berücksichtigt und als Ausgangspunkt verwendet, statt sie einfach zu überschreiben. Auch der Dateiname und die Position im Projekt fließen in die Beschreibung ein, sodass etwa eine Hilfsfunktion in einem Utility-Modul anders eingeordnet wird als der Haupteinstiegspunkt einer Anwendung.
Docstrings im Stil der jeweiligen Sprache
Die erzeugte Dokumentation folgt der in der Sprache üblichen Konvention: Python-Docstrings im Google- oder NumPy-Stil, JSDoc-Kommentare für JavaScript und TypeScript, PHPDoc-Blöcke für PHP. So lässt sich das Ergebnis direkt in die vorhandene Codebasis übernehmen, ohne die Formatierung von Hand anzupassen, und Werkzeuge, die diese Kommentare auslesen – etwa zur automatischen API-Dokumentation –, erkennen sie ohne Nacharbeit. Welcher Docstring-Stil verwendet wird, lässt sich bei Bedarf auch vorgeben, etwa wenn ein Team im eigenen Styleguide bereits eine bestimmte Konvention festgelegt hat.
Was die KI nicht ersetzt
Die Funktion beschreibt, was der Code tut – nicht, ob er richtig ist. Fehler in der Logik, veraltete Kommentare im Ursprungscode oder unklare Variablennamen werden nicht automatisch korrigiert, sondern in der Beschreibung so übernommen, wie sie im Code stehen. Vor einem Merge sollte eine Entwicklerin oder ein Entwickler die erzeugte Dokumentation gegen den tatsächlichen Code prüfen, besonders bei sicherheitsrelevanten Funktionen.
Preis und Nutzung über die API
Die Dokumentation kostet $0.003 pro Anfrage plus $0.0135 pro 1.000 erzeugten Wörtern; eine mittelgroße Datei mit einigen hundert Zeilen Code liegt damit meist bei wenigen Cent. Es gibt kein Abonnement: Sie zahlen pro Anfrage über die API, etwa eingebunden in eine CI-Pipeline, die bei jedem Pull-Request fehlende Dokumentation ergänzt. Für ein einzelnes Modul mit wenigen Funktionen bleibt der Betrag meist im niedrigen einstelligen Cent-Bereich, erst bei sehr umfangreichen Dateien mit vielen tausend Zeilen wächst er spürbar.
Anwendungsfälle
Legacy-Code ohne Dokumentation übernehmen
Lukas Fischer übernimmt als freiberuflicher Entwickler ein zehn Jahre altes PHP-Projekt ohne jede Dokumentation und lässt sich für jede Klasse zunächst eine Beschreibung erzeugen, bevor er mit der eigentlichen Überarbeitung beginnt.
Dokumentationspflicht in der CI-Pipeline
Die Schneider IT-Systeme GmbH & Co. KG bindet die Funktion über die API in ihre Build-Pipeline ein: Jeder Pull-Request, der eine öffentliche Funktion ohne Docstring hinzufügt, erhält automatisch einen Vorschlag zur Ergänzung.
Interne Bibliothek für neue Teammitglieder aufbereiten
Anna Hoffmann dokumentiert eine intern gewachsene JavaScript-Bibliothek nach, damit neue Kolleginnen und Kollegen die Funktionen verstehen, ohne jede Datei einzeln durchzugehen.
Häufige Fragen
Wird mein Quellcode gespeichert?
Nein. Der eingereichte Code wird nur zur Erstellung der Dokumentation verwendet und danach nicht gespeichert oder für andere Anfragen weiterverwendet.
Welche Programmiersprachen werden unterstützt?
Die gängigen Sprachen wie Python, JavaScript, TypeScript, PHP und Java. Bei weniger verbreiteten Sprachen kann die Qualität der erzeugten Kommentare schwanken.
Ersetzt das eine Code-Review?
Nein. Die Funktion beschreibt, was der Code tut, prüft aber nicht, ob die Logik korrekt ist. Eine Review durch eine Entwicklerin oder einen Entwickler bleibt notwendig.
Was kostet die Dokumentation einer Datei?
$0.003 pro Anfrage plus $0.0135 pro 1.000 erzeugten Wörtern. Eine typische Datei liegt damit meist bei wenigen Cent.
Brauche ich ein Konto?
Nein. Es gibt derzeit keine Konten – Sie zahlen direkt pro Anfrage, über PayPal.
Gibt es einen AVV für die Verarbeitung von proprietärem Code?
Aktuell steht kein separater Auftragsverarbeitungsvertrag zur Verfügung. Wer das für sein Unternehmen benötigt, schreibt uns bitte vorab an [email protected].
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/code-document \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/dev/code-document", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/code-document",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/code-document", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/code-document", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"text": "…"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.code_document",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
422 | task_failed | Die Aufgabe ist fehlgeschlagen und wird nicht berechnet. |