Zum Inhalt

🤖 Erklären mit KI

Einrichten der intelligenten Kontextinjektion für Ihre Codebasis

Übersicht

Smart Context Injection unterscheidet 4Geeks AI Studio von generischen AI-Codierungstools. Im Gegensatz zu Standardtools, die Codefragmente isoliert betrachten, bildet die AI Factory Ihre gesamte Codebasis ab und fügt projektweiten Kontext in jede Anfrage ein – so wird sichergestellt, dass die KI Ihre spezifische Architektur, Namenskonventionen und Geschäftslogik versteht.

In diesem Tutorial lernen Sie:

  • Wie Smart Context Injection funktioniert
  • So bereiten Sie Ihre Codebasis für eine optimale Kontextzuordnung vor
  • So konfigurieren Sie Kontextregeln und Konventionen – So überprüfen Sie die Kontextqualität im generierten Code

So funktioniert die intelligente Kontextinjektion

Your Repository
    │
    ▼
Codebase Mapping
    ├── File structure analysis
    ├── Dependency graph construction
    ├── Architecture pattern detection
    ├── Naming convention extraction
    └── Business logic identification
    │
    ▼
Context Index Creation
    ├── Module relationships
    ├── API contracts
    ├── Data models
    ├── Configuration patterns
    └── Coding standards
    │
    ▼
Context Injection (per task)
    ├── Relevant modules identified
    ├── Related code snippets included
    ├── Architecture constraints applied
    └── Naming conventions enforced
    │
    ▼
AI Code Generation (with full context)

Schritt 1: Verbinden Sie Ihr Repository

  1. Gehen Sie zu Ihren AI Studio-Projekteinstellungen
  2. Navigieren Sie zu Repository-Verbindung
  3. Verbinden Sie Ihr Repository:
  4. GitHub: Autorisieren Sie 4Geeks, auf Ihr Repo zuzugreifen
  5. GitLab: Geben Sie Ihre GitLab-Instanz-URL und Ihr Token an
  6. Bitbucket: Verbindung über OAuth oder App-Passwort herstellen
  7. Wählen Sie die Zweige aus, die einbezogen werden sollen (normalerweise „Hauptzweig“ + Zweige mit aktiven Funktionen).

Schritt 2: Kontextregeln konfigurieren

Architekturdokumentation

Stellen Sie ein Architekturdokument bereit oder erstellen Sie es, das Folgendes beschreibt:

# Project Architecture

## Tech Stack
- Frontend: React 18, TypeScript, Tailwind CSS
- Backend: Node.js, Express, PostgreSQL
- Infrastructure: AWS (ECS, RDS, S3)

## Directory Structure
/src
  /components    # Reusable UI components
  /pages         # Route-level components
  /services      # API clients and business logic
  /hooks         # Custom React hooks
  /utils         # Utility functions
  /types         # TypeScript type definitions

## Key Patterns
- Feature-based module organization
- Repository pattern for data access
- Service layer for business logic
- Custom hooks for shared state logic

Codierungsstandards

Definieren Sie Ihre Codierungskonventionen:

# Coding Standards

## Naming Conventions
- Components: PascalCase (UserCard.tsx)
- Functions: camelCase (getUserById)
- Constants: UPPER_SNAKE_CASE (MAX_RETRIES)
- Types/interfaces: PascalCase with I prefix (IUser)

## Code Style
- 2-space indentation
- Single quotes for strings
- Semicolons required
- Max line length: 100 characters

## Testing
- Unit tests: Jest, colocated with source files
- Integration tests: Separate /tests directory
- E2E tests: Playwright in /e2e directory

API-Verträge

Wenn Sie über OpenAPI/Swagger-Spezifikationen, GraphQL-Schemas oder Protobuf-Definitionen verfügen, stellen Sie diese bereit:

/api
  openapi.yaml      # REST API specification
  graphql/
    schema.graphql  # GraphQL schema

Schritt 3: Kontextprioritätsstufen festlegen

Nicht jeder Code ist für den Kontext gleich wichtig. Prioritätsstufen konfigurieren:

Priorität Was ist enthalten Bei Verwendung
Kritisch Kernarchitektur, gemeinsame Dienstprogramme, Typdefinitionen Jede Aufgabe
Hoch Verwandte Module, API-Verträge, Datenbankschemata Die meisten Aufgaben
Mittel Ähnliche Komponenten, zugehörige Dienstleistungen Funktionsspezifische Aufgaben
Niedrig Historischer Code, veraltete Module Selten enthalten

Konfiguration

  1. Gehen Sie zu AI-Werkseinstellungen → Kontextkonfiguration
  2. Legen Sie Prioritätsregeln fest:
  3. Immer enthalten: Kerntypen, gemeinsam genutzte Dienstprogramme, Konfigurationsdateien
  4. Bei Bedarf einbeziehen: Verwandte Module, API-Endpunkte
  5. Ausschließen: node_modules, dist, Build-Artefakte, Testvorrichtungen
  6. Dateimuster definieren:
    Always include:
    - src/types/**/*.ts
    - src/utils/**/*.ts
    - src/config/**/*
    
    Include when relevant:
    - src/components/**/*.tsx
    - src/services/**/*.ts
    
    Exclude:
    - **/*.test.ts
    - **/*.spec.ts
    - node_modules/**
    - dist/**
    

Schritt 4: Überprüfen Sie die Kontextqualität

Nachdem Ihr leitender Architekt die erste Zuordnung abgeschlossen hat:

Überprüfen Sie den Kontextbericht

  1. Gehen Sie zu AI Factory → Kontextbericht
  2. Rezension:
  3. Zugeordnete Dateien: Gesamtzahl der für den Kontext indizierten Dateien
  4. Abhängigkeitsdiagramm: Visuelle Darstellung der Modulbeziehungen
  5. Architekturmuster: Erkannte Muster (MVC, Repository usw.)
  6. Namenskonventionen: Extrahierte Konventionen – Abdeckung: % der Codebasis erfolgreich zugeordnet

Kontextinjektion testen

Senden Sie eine Testaufgabe und überprüfen Sie Folgendes:

  1. Architekturbewusstsein: Folgt der generierte Code Ihren Mustern?
  2. Konsistenz der Benennung: Werden Konventionen korrekt angewendet?
  3. Importgenauigkeit: Werden Importe aus den richtigen Modulen durchgeführt?
  4. Typverwendung: Werden vorhandene Typen wiederverwendet statt neu definiert?

Best Practices

Bereiten Sie Ihre Codebasis vor

  • Vor dem Herstellen einer Verbindung aufräumen: Entfernen Sie toten Code und beheben Sie offensichtliche Probleme
  • Schlüsselentscheidungen dokumentieren: ADRs (Architecture Decision Records) hinzufügen
  • Typdefinitionen pflegen: TypeScript-Typen sind für den Kontext von entscheidender Bedeutung
  • Tests getrennt halten: Testdateien aus dem Kontext ausschließen, um Rauschen zu reduzieren

Kontextgröße optimieren

  • Seien Sie wählerisch: Geben Sie nur das ein, was für die Codegenerierung erforderlich ist
  • Abstraktionen verwenden: High-Level-Architekturdokumente sind wertvoller als jede Datei
  • Regelmäßige Aktualisierung: Führen Sie die Kontextzuordnung nach größeren Umgestaltungen erneut aus
  • Token-Nutzung überwachen: Größerer Kontext = mehr Token = höhere Kosten

Häufige Probleme und Lösungen

Problem Lösung
KI generiert Code, der nicht mit Mustern übereinstimmt Explizite Musterdokumentation zum Kontext hinzufügen
Falsche Importe Überprüfen Sie die Genauigkeit des Abhängigkeitsdiagramms
Neudefinierte Typen statt wiederverwendet Stellen Sie sicher, dass sich die Typdateien im Verzeichnis „Immer einschließen“
Zu viele Token verbraucht Kontextbereich reduzieren, unnötige Dateien ausschließen
Fehlender Geschäftslogikkontext Domänenspezifische Dokumentation hinzufügen

Was kommt als nächstes?

Brauchen Sie Hilfe?


Noch Fragen? Frag uns auf Discord oder entdecke die Tutorials.