0Pricing
AI Agents · Lektion

Ein Agent zur Code-Erklärung

Erstellen Sie einen Agent, der Quelldateien liest, das LLM um eine Erklärung bittet und Markdown-Dokumentation zurückgibt.

Ein Agent zur Code-Erklärung ist eine kostenlose AI Agents-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Agents-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.

Projektziel

Erstellen Sie einen Agent, der eine Quelldatei (Python, JS oder etwas anderes) entgegennimmt und eine Markdown-Dokumentation zurückgibt: Zweck, zentrale Funktionen und ein Anwendungsbeispiel.

Warum ist das nützlich?

Dokumentation aus Code zu erzeugen, gehört zu den zuverlässigsten LLM-Anwendungsfällen – Code ist strukturiert, die Aufgabe ist klar abgegrenzt und die Ausgabe wird von Menschen gelesen, sodass kleinere Fehler tolerierbar sind.

Architektur

  1. Quelldatei lesen
  2. Optional nach Klasse oder Funktion aufteilen
  3. Für jeden Chunk das LLM um eine Erklärung bitten
  4. Zu einem Markdown-Dokument zusammenführen

Step 1: Read the File

import sys

with open('example.py', 'w') as f:
    f.write('print("hello")\n')

path = sys.argv[1] if len(sys.argv) > 1 else 'example.py'
with open(path) as f:
    code = f.read()
print(f'Read {len(code)} characters from {path}')

Step 2: Prompt for Documentation

from openai import OpenAI
oai = OpenAI()

prompt = f'''
You are a senior engineer writing developer-friendly docs.

Given this source file, produce a Markdown document with:
# {path}

## Purpose
(One paragraph)

## Public API
(Each function/class with one-line description)

## Usage Example
(One short, runnable snippet)

Source:
```
{code}
```
'''

response = oai.chat.completions.create(
    model='gpt-4o-mini',
    messages=[{'role': 'user', 'content': prompt}],
    temperature=0.2,
)
print(response.choices[0].message.content)

Lange Dateien verarbeiten

Wenn die Datei zu lang ist, teilen Sie sie nach Funktionen auf und erklären Sie jede Funktion separat:

import ast

tree = ast.parse(code)
functions = [node for node in ast.walk(tree) if isinstance(node, ast.FunctionDef)]

for func in functions:
    snippet = ast.unparse(func)
    explain(snippet)

Schritt 3: Ausgaben zusammenführen

Bei Durchläufen mit mehreren Chunks fügen Sie die Erklärungen der einzelnen Funktionen zu einem Dokument zusammen:

docs = []
for func_name, snippet in functions:
    explanation = explain(snippet)
    docs.append(f'### {func_name}\n\n{explanation}\n')

full_doc = '\n'.join(docs)
open('docs.md', 'w').write(full_doc)

Zusammenfassung auf Projektebene hinzufügen

Bitten Sie das LLM nach den Erklärungen der einzelnen Funktionen um einen Überblick auf hoher Ebene:

summary_prompt = 'Summarise the purpose of this package in 3 sentences, given these function docs:\n\n' + full_doc
summary = ask(summary_prompt)

Mehrere Sprachen

Der gleiche Prompt funktioniert für JS, Go, Rust usw. Für bessere Ergebnisse fügen Sie die Sprache in den Prompt ein:

prompt = f'You are documenting {language} code. ...'

Diff-basierte Dokumentation

Für inkrementelle Aktualisierungen führen Sie den Vorgang nur für geänderte Dateien erneut aus:

import subprocess
changed = subprocess.check_output(['git', 'diff', '--name-only', 'HEAD~1']).decode().splitlines()
for path in changed:
    if path.endswith('.py'):
        regenerate_doc(path)

Ein Tool zum Ausführen des Beispiels verwenden

Überprüfen Sie, dass das Anwendungsbeispiel des LLM tatsächlich ausgeführt werden kann – geben Sie dem Agent ein Python-REPL-Tool:

def run_python(code):
    try:
        exec(code, {})
        return {'stdout': 'ok', 'stderr': ''}
    except Exception as e:
        return {'stdout': '', 'stderr': str(e)}

tools = [{'name': 'run_python', 'description': 'Execute a Python snippet and return stdout/stderr', 'parameters': {'code': 'str'}}]

broken_example = 'print(1/0)'
result = run_python(broken_example)
if result['stderr']:
    print('Example failed:', result['stderr'])
    fixed_example = 'print(1)'
    result = run_python(fixed_example)
    print('Self-corrected result:', result)
else:
    print('Example ran fine:', result)

Wenn der Agent halluziniert

Das Modell erfindet manchmal Funktionen oder Argumente. Mögliche Gegenmaßnahmen:

  • AUSSCHLIESSLICH den Dateiinhalt bereitstellen (kein Modellwissen)
  • Temperatur 0
  • Einen Verifizierungsschritt einbauen (das Beispiel ausführen, den Ausschnitt linten)

Als Produkt umsetzen

Als CLI verpacken:

# pip install -e .
# docgen src/myproject/agent.py
# Outputs docs.md

Vom Tool zu CI

In CI integrieren: Bei jedem PR die Dokumentation für geänderte Dateien neu generieren und zurückcommitten. Jetzt ist Ihr Repository immer dokumentiert.

Warum die gesamte Datei lesen?

Warum sollte die VOLLSTÄNDIGE Quelldatei an das LLM übergeben werden statt nur der Funktionssignaturen?

Zusammenfassung

Ein 30-Zeilen-Agent, der Code in Dokumentation umwandelt. Leicht mit Tools und Verifizierung erweiterbar. Ein hervorragendes zweites Projekt nach RAG.

Häufig gestellte Fragen

Ist die Lektion „Ein Agent zur Code-Erklärung“ kostenlos?

Ja — der vollständige Text von „Ein Agent zur Code-Erklärung“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Agents-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Ein Agent zur Code-Erklärung“?

Erstellen Sie einen Agent, der Quelldateien liest, das LLM um eine Erklärung bittet und Markdown-Dokumentation zurückgibt. Du übst AI Agents mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Agents zu starten?

Keine Vorkenntnisse erforderlich. AI Agents auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Ein Agent zur Code-Erklärung“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Agents-Lektion Code schreiben und ausführen?

Ja. Jede AI Agents-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Ein Q&A-Bot für Ihre Dokumente
  2. Ein Agent zur Code-Erklärung
  3. Ein Recherche-Agent zum Web-Browsing
  4. Ein SQL-Assistent für Ihre Datenbank
← Zurück zu AI Agents