Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

đŸ€– IDE KI-Agenten – Die nĂ€chste Generation

Wenn der Editor denkt, plant und handelt – nicht nur vorschlĂ€gt.


WĂ€hrend klassische Assistenten wie GitHub Copilot reagieren (auf deinen Cursor, deinen Kommentar, deinen Tastendruck), gehen IDE KI-Agenten einen entscheidenden Schritt weiter: Sie handeln.

Ein IDE KI-Agent kann Dateien öffnen, Terminal-Befehle ausfĂŒhren, Fehler analysieren, Refactoring ĂŒber mehrere Dateien hinweg durchfĂŒhren und dabei immer im Blick behalten, was dein Projekt insgesamt braucht.

In dieser Lektion lernen wir, was IDE KI-Agenten ausmacht, wie wir sie beim Rust-Lernen sinnvoll einsetzen – und welche 50 Projekte sich besonders gut dafĂŒr eignen.

FĂŒr AnfĂ€nger: Ein IDE KI-Agent ist wie ein erfahrener Programmierkollege, der neben dir sitzt. Er kann selbststĂ€ndig nachschauen, ausprobieren und Fehler beheben – aber du gibst immer die Richtung vor.


🧠 Theorie: Was ist ein IDE KI-Agent?

Der Unterschied: Assistent vs. Agent

Assistent (z. B. Copilot)Agent (z. B. Cursor, Antigravity IDE)
ArbeitsmodusReaktiv (wartet auf dich)Proaktiv (handelt selbst)
KontextAktuelle DateiGesamtes Projekt
Dateizugriff❌ Nur sehen✅ Lesen & schreiben
Terminal❌ Nein✅ Ja
Mehrere Dateien❌ Nein✅ Ja
Planung❌ Nein✅ ErklĂ€rt zuerst, was er tun will
Fehlerkorrektur❌ Nur Vorschlag✅ FĂŒhrt Korrekturen aus

Die entscheidende Frage: Wann will ich, dass die KI nur vorschlÀgt (Assistent), und wann soll sie selbst handeln (Agent)?


Bekannte IDE KI-Agenten (2025/2026)

ToolBasis-EditorBesonderheit
CursorVS CodeKI-first, Composer fĂŒr ProjektĂ€nderungen
WindsurfVS CodeCascade – Kontextbewusstsein ĂŒber gesamtes Projekt
Antigravity IDEVS CodeAgent + Skills + AGENTS.md-Integration
ZedEigener EditorSehr schnell, KI als Kernfunktion
JetBrains AIIntelliJ/CLionTiefe IDE-Integration fĂŒr Rust

🔍 Wie arbeitet ein IDE KI-Agent in Rust?

Ein typischer Workflow mit einem IDE-Agenten:

Du:    „FĂŒge Fehlerbehandlung zu allen Funktionen in src/ hinzu"
           ↓
Agent: „Ich werde folgende Änderungen vornehmen:
        - main.rs: Zeile 12 – unwrap() durch ? ersetzen
        - utils.rs: Zeile 8 – RĂŒckgabetyp auf Result<> Ă€ndern
        Soll ich fortfahren?"
           ↓
Du:    „Ja"
           ↓
Agent: FĂŒhrt Änderungen in beiden Dateien aus, zeigt Diff

Das ist komplett anders als Copilot: Der Agent plant, erklĂ€rt und fĂŒhrt aus – nicht nur eine Zeile, sondern ein ganzes Vorhaben.


đŸ§© Typische Agent-Funktionen im IDE-Kontext

1. Planungsmodus (Plan before Act)

Der Agent erklÀrt erst, was er tun will, bevor er es tut.
Das gibt dir die Kontrolle und hilft dir, die Änderungen zu verstehen.

2. Diff-Ansicht

Jede Änderung wird rot/grĂŒn angezeigt – exakt wie in Git.
Du kannst Änderungen einzeln annehmen oder ablehnen.

3. Multi-File-Bearbeitung

Der Agent kann gleichzeitig in main.rs, lib.rs und Cargo.toml arbeiten.
Das ist fĂŒr grĂ¶ĂŸere Refactorings unerlĂ€sslich.

4. Terminal-Integration

Der Agent fĂŒhrt cargo build, cargo test oder cargo clippy aus – und interpretiert die Ergebnisse.

5. Kontextfenster

Moderne Agenten „sehen“ das gesamte Projekt (alle Dateien, Projektstruktur, Fehlerausgaben).


đŸ›Ąïž Wichtige Prinzipien beim Umgang mit IDE-Agenten

Als AnfÀnger besonders wichtig:

  1. Immer Planungsmodus aktivieren – Verstehe, was der Agent vorhat, bevor er handelt.
  2. Jede Änderung lesen – Der Diff ist dein bestes Lernwerkzeug.
  3. RĂŒckgĂ€ngig machen ĂŒben – Ctrl+Z oder Git git revert retten dich.
  4. Kleine Schritte bevorzugen – Lieber 5 kleine Aufgaben als eine große.
  5. Fragen stellen – „ErklĂ€re mir diese Änderung“ ist immer erlaubt.

🔄 Wann Agent, wann Assistent?

SituationBesser: AssistentBesser: Agent
Ich tippe gerade Code✅–
Ich will eine Funktion verstehen✅✅
Ich will viele Dateien umstrukturieren–✅
Ich will einen Fehler in Zeile 5 fixen✅–
Ich will das gesamte Projekt refaktorieren–✅
Ich will cargo test ausfĂŒhren und Fehler verstehen–✅
Ich schreibe meinen ersten Code zu einem Konzept✅–

đŸ› ïž Praxis-Aufgaben

Aufgabe A: Agent erkunden

Öffne die Antigravity IDE und navigiere in den Sidebar-Chat.
Stelle eine einfache Aufgabe:

Zeige mir die Struktur meines Projekts und erklÀre mir,
welche Dateien wozu dienen.

Beobachte: Was „sieht“ der Agent? Welche Dateien listet er auf?


Aufgabe B: Planungsmodus testen

Stelle dem Agenten eine Aufgabe, die mehrere Dateien betrifft, und bitte ihn explizit:

Bevor du etwas Ànderst: Erstelle erst einen Plan,
was du tun willst. Ich möchte jeden Schritt verstehen.

Lies den Plan sorgfÀltig. Stimme zu oder korrigiere.


Aufgabe C: Diff lesen ĂŒben

Lass den Agenten eine kleine Änderung vornehmen – zum Beispiel einen Kommentar zu einer Funktion hinzufĂŒgen.
Öffne den Diff und lese, was genau geĂ€ndert wurde.
Frage dann: „Warum hast du die Änderung genau so gemacht?“


🚀 50 Rust-ProjektvorschlĂ€ge fĂŒr IDE KI-Agenten

Diese Projekte nutzen die StÀrken eines Agenten: Planung, Projektstruktur, Multi-File, Terminal.
Lass den Agenten nicht sofort coden – lass ihn erst erklĂ€ren, dann handeln.

🩀 Lernregel: Der Agent baut, aber du verstehst.
Frage nach jedem Schritt: „Was hast du gemacht und warum?“


🟱 Einstiegsprojekte (1–10)

  1. Projekt-Setup durch den Agenten – Lass den Agenten ein neues Rust-Projekt mit cargo new erstellen, die Struktur erklĂ€ren und eine erste hello_world-Funktion anlegen.

  2. Kommentierter Starter-Code – Der Agent schreibt das GrundgerĂŒst eines CLI-Programms und kommentiert jede Zeile fĂŒr AnfĂ€nger.

  3. Fehleranalyse-Session – Schreibe einen Rust-Fehler absichtlich. Der Agent fĂŒhrt cargo build aus, analysiert die Fehlermeldung und erklĂ€rt (ohne zu reparieren!).

  4. Rustfmt automatisch – Der Agent fĂŒhrt cargo fmt aus und erklĂ€rt jeden Formatierungsschritt.

  5. Clippy-Analyse – Der Agent fĂŒhrt cargo clippy aus und ĂŒbersetzt jede Warnung ins Deutsche.

  6. Modularisierung Schritt 1 – Eine einzelne main.rs aufteilen: Der Agent erstellt src/rechner.rs und verschiebt eine Funktion dorthin.

  7. Cargo.toml erklĂ€rt – Der Agent analysiert deine Cargo.toml und erklĂ€rt jeden Eintrag auf AnfĂ€ngerniveau.

  8. Erste Tests schreiben – Der Agent erklĂ€rt die Test-Syntax in Rust und schreibt TestgerĂŒste (ohne Assertions – die schreibst du).

  9. Variablen und Typen – Der Agent zeigt durch eine kleine Demo-Datei, wie Rust Typen ableitet (let x = 5 vs. let x: i32 = 5).

  10. Ownership visualisieren – Der Agent schreibt Beispielcode und erklĂ€rt mit Pfeilen (ASCII-Art in Kommentaren), wie Ownership ĂŒbertragen wird.


🟡 Mittlere Projekte (11–25)

  1. VollstĂ€ndige Taschenrechner-App – Der Agent plant die Dateistruktur (main.rs, operations.rs, tests.rs) und erklĂ€rt, bevor er erstellt.

  2. Struct-basierter Studentenverwaltung – Der Agent legt ein Struct an, erklĂ€rt Felder und implementiert grundlegende Methoden.

  3. Trait implementieren – Der Agent implementiert das Display-Trait fĂŒr ein eigenes Struct und erklĂ€rt die Syntax.

  4. Enums mit Daten – Ein Enum fĂŒr verschiedene Zahlungsarten – der Agent baut die Varianten und erklĂ€rt Pattern Matching.

  5. Fehlerbehandlung mit Result – Der Agent nimmt eine unsichere Funktion und wandelt unwrap() in echte Fehlerbehandlung um.

  6. Iteratoren verstehen – Der Agent schreibt Beispiele mit .map(), .filter(), .collect() und erklĂ€rt jeden Schritt.

  7. Lifetime-EinfĂŒhrung – Der Agent erstellt einen minimalen Code mit Lifetimes und erklĂ€rt, warum der Compiler das fordert.

  8. HashMap-Anwendung – Kontaktbuch mit HashMap<String, String> – der Agent plant Methoden fĂŒr hinzufĂŒgen, suchen, löschen.

  9. Datei schreiben/lesen – Der Agent erklĂ€rt std::fs und baut eine einfache Lese/Schreib-Demo.

  10. Closures – Der Agent demonstriert Closures durch drei verschiedene Beispiele und vergleicht sie mit normalen Funktionen.

  11. Command-Line-Argumente – Der Agent nutzt std::env::args() und baut ein Programm, das auf Argumente reagiert.

  12. String-Verarbeitung – Der Agent zeigt alle wichtigen String-Methoden (split, trim, contains) in einem kommentierten Demo-Programm.

  13. Mehrere Tests – Der Agent schreibt Unit-Tests fĂŒr alle Funktionen des Taschenrechners aus Projekt 11.

  14. Refactoring-Session – Der Agent nimmt deinen selbst geschriebenen Code und macht ihn „idiomatischer“ – mit ErklĂ€rung jeder Änderung.

  15. Dokumentation mit /// – Der Agent ergĂ€nzt alle Funktionen mit Rust-Doc-Kommentaren und erklĂ€rt das Format.


🔮 Fortgeschrittene Projekte (26–40)

  1. Bibliothek (lib.rs) – Der Agent trennt Logik von main.rs in eine lib.rs und erklĂ€rt pub und Sichtbarkeit.

  2. Fehler-Typen definieren – Ein eigener enum Error – der Agent baut ihn und erklĂ€rt die Konventionen.

  3. Generics einfĂŒhren – Der Agent schreibt eine generische Funktion und erklĂ€rt die Syntax <T> Schritt fĂŒr Schritt.

  4. Trait-Objekte – Der Agent demonstriert dyn Trait und erklĂ€rt, wann statisches vs. dynamisches Dispatch sinnvoll ist.

  5. Integration-Tests – Der Agent legt einen tests/-Ordner an und erklĂ€rt den Unterschied zu Unit-Tests.

  6. Serde fĂŒr JSON – Der Agent fĂŒgt serde zu Cargo.toml hinzu, erklĂ€rt die Dependency und serialisiert ein Struct.

  7. Clap fĂŒr CLI – Der Agent integriert clap fĂŒr professionelle Kommandozeilen-Argumente.

  8. Asynchrone Grundlagen – Der Agent erklĂ€rt async/await mit einem minimalen Beispiel und tokio als Runtime.

  9. Channels zwischen Threads – Der Agent baut ein Beispiel mit std::sync::mpsc und erklĂ€rt das Konzept.

  10. Arc und Mutex – Shared State zwischen Threads – der Agent erklĂ€rt, warum Rc nicht reicht.

  11. Builder-Pattern – Der Agent implementiert das Builder-Pattern fĂŒr ein komplexes Struct.

  12. State-Machine – Eine einfache Zustandsmaschine mit Enums – der Agent plant die ZustĂ€nde und ÜbergĂ€nge.

  13. Prozesse spawnen – Der Agent nutzt std::process::Command und startet externe Programme.

  14. RegulĂ€re AusdrĂŒcke mit regex – Der Agent integriert die regex-Crate und erklĂ€rt die Pattern-Syntax.

  15. Benchmarks mit criterion – Der Agent richtet Benchmarks ein und erklĂ€rt, wie man Rust-Performance misst.


⚡ Herausforderungsprojekte (41–50)

  1. VollstĂ€ndige CLI-App mit Tests und Docs – Ein echtes Projekt: Struktur planen, Logik schreiben, Tests, Dokumentation, Clippy – alles mit Agent als Planungshelfer.

  2. Eigene Datenstruktur – Eine einfache verkettete Liste in Rust – der Agent erklĂ€rt die Besonderheiten mit Ownership.

  3. Makro schreiben – Der Agent zeigt macro_rules! und erstellt ein einfaches Utility-Makro.

  4. Plugin-System – Dynamisch ladbare Funktionen ĂŒber Traits – der Agent plant die Architektur.

  5. Mini-Interpreter – Ein einfacher Interpreter fĂŒr eine selbst definierte Sprache mit AusdrĂŒcken und Variablen.

  6. Datenbankanbindung – Der Agent integriert rusqlite (SQLite), erklĂ€rt Queries und fĂŒhrt Migrationen durch.

  7. HTTP-Client – Mit reqwest eine öffentliche API abfragen und die Antwort parsen.

  8. Websocket-Verbindung – Ein einfacher Websocket-Client mit tokio-tungstenite.

  9. Eigene Derive-Makro – Der Agent erklĂ€rt Proc-Makros und baut ein einfaches #[derive(MyDebug)].

  10. Projekt-Portfolio – Der Agent hilft, alle bisher gebauten Projekte in eine Bibliothek (Workspace) zu strukturieren und zu dokumentieren.


💡 Zusammenfassung

KonzeptBedeutung
IDE KI-AgentHandelt selbststĂ€ndig – liest, schreibt, fĂŒhrt aus
PlanungsmodusAgent erklÀrt erst, was er tun will
Diff-AnsichtAlle Änderungen sichtbar vor der Übernahme
Multi-FileMehrere Dateien gleichzeitig bearbeiten
Terminal-Integrationcargo build/test/clippy automatisch ausfĂŒhren
Assistent vs. AgentTippen → Assistent, Projektarbeit → Agent

🩀 Merke: Ein IDE-Agent ist mĂ€chtiger als ein Assistent – aber Macht braucht Verantwortung.
Verstehe jede Änderung, die der Agent macht. Der Lerneffekt liegt im Diff!