DA Coding Agent
Ein sokratischer Coding-Mentor für Teilnehmende der Developer Akademie — direkt in VS Code.
Er löst Aufgaben nicht für dich, sondern stellt Fragen, gibt Hinweise und bringt dich zum
Verstehen. Jede Hilfe ist auf deinen aktuellen Lernstand kalibriert.
Was er kann
- Auf den Lehrplan kalibriert — Hilfe passt zu deinem aktuellen Modul (HTML/CSS, JavaScript, …);
kein Stoff aus späteren Modulen, keine Off-Topic-Abwege.
- Verständnis-Gate — bevor du fertigen Code bekommst, zeigst du kurz, dass du den Ansatz
verstehst (Multiple-Choice oder in eigenen Worten). Eine Eskalations-Klappe sorgt dafür, dass du
nie festhängst.
- Code-bewusst — der Mentor liest (mit deiner Freigabe) deine Dateien und den Git-Stand, um dich
an deinem echten Code zu begleiten. Schreibende Änderungen brauchen immer deine Zustimmung.
- Teach-the-Agent — Konzepte, die du gemeistert hast, werden für den Agenten „gesperrt": Er nutzt
sie erst wieder, wenn du sie ihm neu erklärst. So bleibt Gelerntes aktiv (Retrieval Practice) —
und dein Agent levelt mit dir.
- Abgabe-Checkliste im Chat — die Anforderungen deines Projekts stehen als lebende Karte über dem
Eingabefeld, mit dem Stand direkt im Knopf (z. B. „2/33"). Abhaken kannst du selbst; was der Mentor
überprüft hat, notiert er dort.
- Screenshot oder Datei anhängen — die Büroklammer im Eingabefeld nimmt Bilder (PNG, JPG, WebP)
und Textdateien; Einfügen aus der Zwischenablage geht genauso, Ziehen und Ablegen mit gedrückter
Umschalttaste. Bis zu 3 Anhänge pro Nachricht, je bis 5 MB. Sie fallen nach ein paar Nachrichten
von selbst wieder aus dem Kontext.
- Sprechen statt tippen — der Mikrofon-Knopf nimmt auf und schreibt das Gesagte in dein
Eingabefeld; abgeschickt wird nichts von allein. Aufgenommen wird in VS Code selbst, die Aufnahme
wird zur Umwandlung in Text übertragen und nicht gespeichert. Unter Windows kannst du das
Aufnahmegerät gezielt wählen (Befehl „Mikrofon für das Diktat wählen").
- Er sieht sich deine Seite an — auf deine Zustimmung hin öffnet der Mentor dein Projekt in einem
echten Browser (Chrome oder Edge, lokal auf deinem Rechner) und schaut nach, was wirklich passiert:
Aufbau der Seite, Klicks, Meldungen in der Konsole, bei Bedarf ein Bildschirmfoto. Jede Prüfung
fragt neu; ohne Zustimmung startet nichts. Was er findet, landet als Notiz an deiner Checkliste.
Login
Die gesamte Funktionalität ist hinter dem Teilnehmenden-Login. Ohne gültigen Account passiert nichts —
eine öffentliche Marketplace-Listung ist daher unbedenklich. Melde dich mit deinem
Developer-Akademie-Zugang an; der Mentor startet für dein aktuelles Modul.
Mentor öffnen
Es gibt drei gleichwertige Wege — alle öffnen dieselbe Mentor-Ansicht:
- Icon in der Activity Bar (linke Icon-Leiste) — ein Klick dockt den Mentor als Seitenleiste an.
- Icon oben rechts im Editor-Titel — öffnet/fokussiert den Mentor.
- Tastenkürzel
Ctrl+Alt+M (macOS: Cmd+Alt+M).
Direkt ins Eingabefeld springen: Ctrl+L oder Ctrl+Alt+I (macOS: Cmd+L bzw. Cmd+Ctrl+I) —
nochmal gedrückt bist du wieder im Editor.
In der Command Palette:
- DA Coding Agent: Mentor öffnen (
daMentor.open)
- DA Coding Agent: Eingabefeld fokussieren (
daMentor.focusInput)
- DA Coding Agent: Token eintragen (
daMentor.enterToken)
- DA Coding Agent: Mikrofon für das Diktat wählen (
daMentor.pickMicrophone, nur Windows)
Im Explorer hängt die rechte Maustaste eine Datei an: An den Mentor anhängen.
Lieber rechts? Zieh die „Mentor"-Ansicht einmal per Drag in die rechte Sidebar
(Sekundär-Seitenleiste) — VS Code merkt sich die Position dauerhaft.
Datenschutz & KI-Transparenz
- Datenschutzhinweise:
PRIVACY.md — welche Daten verarbeitet
und an welche Anbieter übermittelt werden.
- KI-Transparenzhinweis:
AI-TRANSPARENCY.md — du
interagierst mit einem KI-System; Grenzen und menschliche Aufsicht.
- Drittanbieter-Lizenzen:
THIRD-PARTY-NOTICES.md.
Entwicklung
pnpm --filter @da/webview-ui build # Webview-Bundle bauen (lädt das Panel)
pnpm --filter da-coding-agent build # Extension-Host bündeln
Dann F5 (Launch-Config) und im neuen Fenster „DA Coding Agent: Mentor öffnen" ausführen.
Packen
Für die Aufnahme braucht der Extension-Host ein ffmpeg, und das gibt es je Plattform nur einmal.
Daraus folgen zwei Paketformen:
pnpm --filter da-coding-agent package # universell, OHNE Binary (~2 MB)
pnpm --filter da-coding-agent package:all # vier Ziele, je MIT Binary
pnpm --filter da-coding-agent package:target darwin-arm64 # ein einzelnes Ziel
pnpm --filter da-coding-agent ffmpeg:fetch win32-x64 # nur das Binary wechseln
Universell (kein --target): das Paket trägt kein Binary; der Host lädt beim ersten Diktat das
passende nach (src/host/ffmpegProvisioner.ts, Ablage im globalStorage, geprüft am Dateikopf).
Ein Paket für alle Plattformen — der Weg, solange der Marketplace-Upload nur EIN Paket je Version
annimmt. Preis: einmalig ~30 MB Netz je Rechner.
Je Ziel (--target): das Binary reist mit, das Diktat läuft offline ab der Installation. Der Bau
bricht ab, wenn das Binary in node_modules nicht zum Ziel passt — sonst entstünde ein Paket, in dem
das Diktat tot ist. Nach einem Lauf für ein fremdes Ziel liegt dessen Binary noch da; ein
ffmpeg:fetch mit dem eigenen Ziel stellt den Entwicklungsstand wieder her.
Beim Veröffentlichen brauchen die plattform-spezifischen Pakete vsce mit einem PAT (je Ziel ein
Upload). Der Web-Upload auf der Publisher-Seite nimmt ein Paket je Version — dort passt die
universelle Form.
Fürs Release am besten je Ziel auf dem eigenen Betriebssystem bauen: von Windows aus lässt sich
das Ausführungs-Bit nicht setzen, das der macOS-/Linux-Build braucht (der Host zieht es zur Laufzeit
nach, aber native gebaut ist es von Anfang an richtig).
Release-Runbook: specs/4-teach-measure-ship-release-runbook.md.