Zusammenfassung
- Installieren Sie Aider mit
pip install aider-chatund richten Sie einen LLM-API-Schlüssel (OpenAI/Anthropic/Ollama) ein. - Fügen Sie Dateien mit
/add <Datei>oder/add --allfür vollständige Repository-Kenntnis zum Kontext hinzu. - Nutzen Sie
/difffür präzise Änderungen,/wholefür vollständige Datei-Neuschreibungen und/architectfür Refactorings über mehrere Dateien. - Die Git-Integration führt automatisch Commits mit beschreibenden Nachrichten durch.
- Konfigurieren Sie
.aider.conf.yml, um Modelleinstellungen und Standardverhalten zu speichern.
1. Installation und Modell-Einrichtung
Aider installieren
# macOS/Linux (Python 3.9+ erforderlich)
python -m pip install --upgrade aider-chat
# Windows (PowerShell)
python -m pip install --upgrade aider-chat
# Installation überprüfen
aider --version
# Erwartete Ausgabe: aider 0.36.0
Hinweis: Falls Sie einen command not found-Fehler erhalten, stellen Sie sicher, dass ~/.local/bin in Ihrem PATH enthalten ist:
export PATH=$PATH:~/.local/bin # Zu ~/.bashrc oder ~/.zshrc hinzufügen
Ein LLM einrichten
Aider unterstützt OpenAI, Anthropic, Mistral und lokale Modelle über Ollama. Wählen Sie eine Option:
Option 1: OpenAI (GPT-4o)
- Holen Sie sich einen OpenAI-API-Schlüssel.
- Setzen Sie den Schlüssel als Umgebungsvariable:
export OPENAI_API_KEY="Ihr-Schlüssel-hier" - Starten Sie Aider:
aider
Option 2: Anthropic (Claude 3.5 Sonnet)
- Holen Sie sich einen Anthropic-API-Schlüssel.
- Setzen Sie den Schlüssel und das Modell:
export ANTHROPIC_API_KEY="Ihr-Schlüssel-hier" aider --model claude-3-5-sonnet-20240620
Option 3: Lokale Modelle (Ollama)
- Installieren Sie Ollama und laden Sie ein Modell herunter:
ollama pull llama3 - Starten Sie Aider mit dem lokalen Modell:
aider --model ollama/llama3
Erwartete Ausgabe:
Aider v0.36.0
Modell: claude-3-5-sonnet-20240620 mit Diff-Edit-Format
Git-Repository: .git mit 12 Dateien
Repo-Map: Nutzung von 1,2 MB von 2,0 MB
Verwenden Sie /help, um In-Chat-Befehle anzuzeigen.
2. Dateien zum Kontext hinzufügen
Aider muss Ihren Code "sehen", um ihn zu bearbeiten. Verwenden Sie diese Befehle im Chat:
| Befehl | Beschreibung |
|---|---|
/add <Datei> | Fügt eine einzelne Datei zum Kontext hinzu (z. B. /add src/main.py). |
/add --all | Fügt alle Dateien im Repository hinzu (sparsam verwenden – kann LLM-Kontextgrenzen erreichen). |
/drop <Datei> | Entfernt eine Datei aus dem Kontext. |
/ls | Listet Dateien auf, die sich aktuell im Kontext befinden. |
Beispiel-Workflow:
# Starten Sie Aider in Ihrem Projektverzeichnis
cd ~/projects/my-app
aider
# Wichtige Dateien zum Kontext hinzufügen
/add src/utils.py
/add tests/test_utils.py
Hinweis: Große Repositories (10.000+ Dateien) können Aider verlangsamen. Verwenden Sie /add selektiv für aufgabenrelevante Dateien.
3. Bearbeitungsmodi
Aider bietet drei Bearbeitungsmodi. Wählen Sie je nach Präzisionsbedarf:
1. /diff (Standard)
- Zeigt einen Diff der vorgeschlagenen Änderungen vor der Anwendung an.
- Ideal für kleine, präzise Änderungen.
Beispiel:
Benutzer: /diff
Aider: Beschreiben Sie die gewünschte Änderung...
Benutzer: Refaktorieren Sie die Funktion `validate_input`, um Early Returns zu verwenden.
Erwartete Ausgabe:
- def validate_input(data):
- if not data:
- return False
- if len(data) > 100:
- return False
- return True
+ def validate_input(data):
+ if not data:
+ return False
+ if len(data) > 100:
+ return False
+ return True
Geben Sie y ein, um die Änderungen zu übernehmen.
2. /whole
- Schreibt die gesamte Datei neu.
- Verwenden Sie dies für größere Refactorings oder wenn
/diffzu restriktiv ist.
Beispiel:
Benutzer: /whole src/utils.py
Aider: Welche Änderungen möchten Sie an dieser Datei vornehmen?
Benutzer: Schreiben Sie die Datei um, um Type Hints zu verwenden und Docstrings hinzuzufügen.
3. /architect
- Refactorings über mehrere Dateien mit hochrangiger Anleitung.
- Ideal für Änderungen über mehrere Dateien hinweg (z. B. "Verschieben Sie die Authentifizierungslogik in ein neues Modul").
Beispiel:
Benutzer: /architect
Aider: Welche architektonische Änderung möchten Sie vornehmen?
Benutzer: Teilen Sie die monolithische `handlers.py` in separate Dateien pro Route auf.
4. Git-Integration und automatische Commits
Aider führt automatisch Commits mit beschreibenden Nachrichten durch. Konfigurieren Sie dies in .aider.conf.yml:
# .aider.conf.yml
git:
auto_commits: true
commit_message: "aider: {message}" # Commit-Nachrichtenformat anpassen
Befehle:
| Befehl | Beschreibung |
|---|---|
/git | Zeigt den Git-Status an. |
/commit | Führt manuell einen Commit für die staged Änderungen durch. |
/undo | Macht die letzte Änderung rückgängig (verwendet git reset). |
Hinweis: Automatische Commits können Ihr Commit-History unübersichtlich machen. Verwenden Sie /commit für manuelle Kontrolle oder squashen Sie später:
git rebase -i HEAD~5 # Aider-Commits squashen
5. Lokale Modelle über Ollama verwenden
Für Datenschutz oder Kosteneinsparungen können Sie lokale Modelle verwenden:
- Installieren Sie Ollama und laden Sie ein Modell herunter:
ollama pull codellama:7b - Starten Sie Aider mit dem lokalen Modell:
aider --model ollama/codellama:7b - (Optional) Konfigurieren Sie Standardeinstellungen in
.aider.conf.yml:model: ollama/codellama:7b
Performance-Tipp: Verwenden Sie kleinere Modelle (z. B. codellama:7b) für schnellere Antworten, aber erwarten Sie eine geringere Genauigkeit als bei GPT-4o.
6. Workflows für die Bearbeitung mehrerer Dateien
Aider glänzt bei Änderungen über mehrere Dateien hinweg. Beispiel:
Aufgabe: Logging zu einem Modul hinzufügen
- Fügen Sie relevante Dateien zum Kontext hinzu:
/add src/app.py /add src/utils/logger.py - Beschreiben Sie die Änderung:
Fügen Sie Debug-Logging zu allen Funktionen in `app.py` hinzu. Verwenden Sie den Logger aus `utils/logger.py`. - Aider wird:
- Den Logger in
app.pyimportieren. logger.debug()-Aufrufe zu jeder Funktion hinzufügen.logger.pybei Bedarf aktualisieren (z. B. eine Debug-Methode hinzufügen).
- Den Logger in
Hinweis: Änderungen über mehrere Dateien können fehlschlagen, wenn das LLM den Kontext verliert. Teilen Sie große Aufgaben in kleinere Schritte auf.
7. Konfiguration und .aider.conf.yml
Speichern Sie Einstellungen in .aider.conf.yml, um das wiederholte Eingeben von Flags zu vermeiden:
# .aider.conf.yml
model: claude-3-5-sonnet-20240620
dark_mode: true
git:
auto_commits: true
commit_message: "aider: {message}"
cache:
enabled: true # Cache für LLM-Antworten bei ähnlichen Prompts
Wichtige Einstellungen:
| Einstellung | Beschreibung | Standardwert |
|---|---|---|
model | Standard-LLM (z. B. gpt-4o, ollama/llama3). | gpt-4o |
dark_mode | Aktiviert das dunkle Terminal-Design. | false |
cache.enabled | Cache für LLM-Antworten zur Kosteneinsparung. | false |
lint_cmd | Befehl, der nach Änderungen ausgeführt wird (z. B. ruff check). | null |
Profi-Tipp: Verwenden Sie aider --dump-config, um eine Startkonfigurationsdatei zu generieren.
Alternativen im Überblick
| Tool | Am besten geeignet für | Hauptunterschied |
|---|---|---|
| Cursor | GUI-gesteuerte Workflows | Integrierter Debugger, Echtzeit-Kollaboration |
| GitHub Copilot | Schnelle Code-Vorschläge | IDE-Integration, Fokus auf einzelne Dateien |
| Aider | Änderungen über mehrere Dateien, Git-Integration | CLI-first, modellunabhängig, Open-Source |
Nächste Schritte
- Probieren Sie ein kleines Refactoring aus: Verwenden Sie
/diff, um eine einzelne Funktion in Ihrem Code zu bearbeiten. - Richten Sie automatische Commits ein: Konfigurieren Sie
.aider.conf.yml, um automatische Commits mit Ihrem bevorzugten Nachrichtenformat durchzuführen. - Erkunden Sie lokale Modelle: Installieren Sie Ollama und testen Sie
codellama:7bfür kostenlose Code-Unterstützung.
Für Teams, die Aider einführen, bietet Hyperion Consulting Beratung zu KI-Tools an, um es in Ihre CI/CD-Pipelines und Sicherheits-Workflows zu integrieren – ausgerichtet auf das AI Security Posture Framework™ für die Phasen PROTECT (Zugriffskontrollen) und COMPLY (Audit-Logging).
