Material: Teil 5. Ersteinrichtung des Projekts

Lektion 1 von 5 im Modul «Teil 5. Ersteinrichtung des Projekts»
Sie sehen die Lektion ohne Anmeldung an. Anmelden, um Ihren Fortschritt zu speichern und Tests zu absolvieren.

Teil 5. Ersteinrichtung des Projekts

Die Ersteinrichtung ist nicht die Generierung der gesamten Anwendung. Es ist die Erstellung einer minimalen, verständlichen Basis, auf der man sicher die Konstitution und die erste Feature-Spezifikation schreiben kann. Im Lernprojekt wird die Basis ein TypeScript-Projekt mit Git sein, jedoch ohne Produktlogik.

Ziel dieser Phase

Nach der Ersteinrichtung sollten Sie haben:

  • Git-Repository;
  • README.md mit einer kurzen Produktvision;
  • QWEN.md;
  • .qwen/settings.json;
  • minimale TypeScript-Vorlage;
  • leere oder fast leere src/index.ts;
  • package.json;
  • tsconfig.json im strengen Modus.

Fügen Sie noch nicht Hono, SQLite, Vitest oder Seiten hinzu. Diese Entscheidungen sollten in specs/tech-stack.md und der Roadmap landen und dann über Feature-Spezifikationen implementiert werden.

Befehle

mkdir agentclinic
cd agentclinic
git init
npm init -y
npm install -D typescript @types/node
npx tsc --init
mkdir -p src specs .qwen
touch src/index.ts

Öffnen Sie tsconfig.json und stellen Sie sicher, dass der strenge Modus aktiviert ist:

{
  "compilerOptions": {
    "strict": true
  }
}

Fügen Sie in package.json hinzu:

{
  "scripts": {
    "typecheck": "tsc --noEmit"
  }
}

Erstellen Sie .gitignore, um versehentlich Build-Artefakte und lokale Geheimnisse zu committen:

node_modules/
dist/
build/
.env
.env.*

# lokaler SQLite-Speicher (siehe Teil 19)
.qwen/memory/agent-memory.db
.qwen/memory/agent-memory.db-shm
.qwen/memory/agent-memory.db-wal

# IDE
.idea/
.vscode/

Legen Sie die Konfiguration .qwen/settings.json nicht in .gitignore — sie wird vom Team benötigt. Prüfen Sie jedoch, dass sie keine Geheimnisse enthält; für Geheimnisse gibt es Umgebungsvariablen und .env.

Prüfen Sie:

npm run typecheck
git status

Was dem Agenten zu Beginn der Sitzung vorgelegt werden soll

Jeder Start von Qwen Code ist ein neues Fenster. Wenn der Agent jedes Mal selbst errät, was er lesen soll, verbrauchen Sie einen Teil der Anfrage dafür, ihn auf den neuesten Stand zu bringen. Zuverlässiger ist es, im Voraus festzulegen, welche Dateien er zu Beginn lesen soll:

  • QWEN.md — Verhaltensregeln des Agenten im Repository.
  • specs/mission.md, specs/tech-stack.md, specs/roadmap.md — Projekt-Konstitution.
  • Ordner der aktuellen Spezifikation, wenn an einem Feature gearbeitet wird: specs/<YYYY-MM-DD-feature>/.

Das ist dieselbe Idee wie @file in Anfragen, aber Sie heben sie auf die Ebene der Gewohnheit und QWEN.md. Eine der Varianten — einen Block in QWEN.md hinzufügen:

Bevor du mit der Arbeit beginnst, lies:
- README.md
- specs/mission.md, specs/tech-stack.md, specs/roadmap.md
- die aktive Feature-Spezifikation, falls sie in der Anfrage angegeben ist.
Rate den Inhalt dieser Dateien nicht: wenn sie nicht existieren, sage das.

In Unternehmenstexten wird diese Praxis Knowledge Priming genannt — das «Laden von Wissen» zu Beginn der Sitzung. Der Name ist unwichtig; wichtig ist, dass der Agent vor der ersten Aktion bereits drei grundlegende Dinge weiß: warum das Projekt existiert, welcher Stack verwendet wird und welche aktuelle Phase läuft.

Minimales README

# AgentClinic

AgentClinic — eine fiktive Klinik für psychische Gesundheit, in der KI-Agenten sich von dem Stress der Arbeit mit Menschen erholen.

Wünsche der Projektbeteiligten:
- das Engineering-Team möchte eine zuverlässige Lernanwendung in TypeScript;
- das Produktteam möchte Agenten, Leiden, Therapien, Terminbuchungen, Feedback und Bewertungen;
- das Marketing braucht ein modernes Browser-Erlebnis mit einem einprägsamen satirischen Ton.

Dieses README dient nicht als finale Dokumentation, sondern als ursprüngliche Wünsche der Projektbeteiligten für den Agenten. Im nächsten Teil wird Qwen Code es lesen und Fragen stellen, bevor die Konstitution erstellt wird.

Erster Commit

git add README.md QWEN.md package.json package-lock.json tsconfig.json src .qwen
git commit -m "Initialize AgentClinic scaffold"

Wenn Sie .qwen/settings.json noch nicht committen möchten, prüfen Sie, ob dort keine Geheimnisse enthalten sind. Die Konfiguration mit dem Modellnamen ist in der Regel zulässig, Schlüssel jedoch nicht.

Überprüfung der Ersteinrichtung durch Qwen Code

Starten Sie:

qwen

Geben Sie ein:

Überprüfe dieses Repository.
Schreibe keine Dateien.
Melde:
1. ob Git initialisiert ist;
2. ob der strenge TypeScript-Modus aktiviert ist;
3. ob `QWEN.md` ausreichend SDD-Regeln festlegt;
4. was vor der Erstellung von specs/mission.md, tech-stack.md und roadmap.md fehlt.

Wenn Qwen sofort vorschlägt, ein Framework zu installieren oder die Anwendung zu schreiben, stoppen Sie ihn. Vor der Konstitution ist dies verfrüht.

Warum nicht sofort Code schreiben

In der normalen Entwicklung mit Agenten wird die Ersteinrichtung oft zur «Baue die Anwendung». Bei SDD sollte sie langweilig sein. Ihre Aufgabe ist es, dem Agenten einen Arbeitsbereich und eine Git-Grenze zu geben, nicht Produktentscheidungen zu treffen.

Vergleichen Sie:

Baue die Anwendung AgentClinic.

und:

Bereite das Repository für SDD vor.
Wähle noch kein Web-Framework.
Implementiere keine Produktrouten.

Stelle sicher, dass TypeScript und Git bereit sind.

Die zweite Anfrage bewahrt Entscheidungen für die richtige Phase auf.

Praxis

  1. Führen Sie die Ersteinrichtung durch.
  2. Starten Sie npm run typecheck.
  3. Fragen Sie Qwen Code nach der Bereitschaft des Repositorys.
  4. Beheben Sie nur blockierende Probleme der Ersteinrichtung.
  5. Machen Sie einen Commit.

Kontrollfragen

  1. Warum sollte die Ersteinrichtung keine Produktfeatures enthalten?
  2. Welche Dateien benötigt der Agent vor der Erstellung der Konstitution?
  3. Was sollte vor dem ersten Feature-Branch committed sein?
Meine Notizen
0 / 10000

Notizen werden in diesem Browser gespeichert. Auf anderen Geräten erscheinen sie nicht.

Kursmenü

Kurs

Spezifikationsgetriebene Entwicklung mit Qwen Code CLI
Fortschritt 0 / 135