Ihr erstes Projekt

Schritt-für-Schritt-Anleitung zum Erstellen Ihres ersten CodeCourier-Projekts, zur Konfiguration der Einstellungen, zur Einrichtung von Kontexten und Assets, zum Hinzufügen von Teammitgliedern, zur Konfiguration von Personas und zur Durchführung eines End-to-End-Workflows.

12 min Lesezeit
first-projecttutorialproject-setup

Diese Anleitung führt Sie durch die Erstellung eines vollständig konfigurierten CodeCourier-Projekts von Grund auf. Am Ende haben Sie ein Projekt mit API-Keys, Kontexten, Assets, Session-Konfigurationen, Teammitgliedern, Personas, einem Workflow und einem abgeschlossenen Lauf mit extrahierten Learnings. Jeder Abschnitt baut auf dem vorherigen auf - folgen Sie ihnen daher der Reihe nach.

Projekt erstellen

1

Zur Projekterstellung navigieren

Nach der Anmeldung landen Sie auf dem Bildschirm zur Projektauswahl. Wenn Sie bereits in einem Projekt sind, klicken Sie auf den Projektnamen im Sidebar-Header, um zum Projekt-Switcher zurückzukehren. Klicken Sie auf Neues Projekt.

2

Projektdetails eingeben

Geben Sie die folgenden Informationen an:

  • Projektname- Ein menschenlesbarer Name für Ihr Projekt, z. B. „E-Commerce Backend“ oder „Design System“
  • GitHub-Repository-URL- (Optional) Die HTTPS-URL des Repositories, an dem Agenten arbeiten sollen, z. B. https://github.com/your-org/your-repo. Dies ermöglicht automatische Branch-Erstellung und PR-Generierung.

Der Projekt-Slug wird automatisch aus dem Namen generiert. Zum Beispiel wird „E-Commerce Backend“ zu e-commerce-backend. Dieser Slug wird in allen Projekt-URLs verwendet.

3

Erstellung bestätigen

Klicken Sie auf Projekt erstellen. CodeCourier erstellt den Projekt-Datensatz, setzt Sie als Owner, initialisiert die Projekteinstellungen mit Standardwerten und leitet Sie zum Projekt-Dashboard weiter. Das Dashboard zeigt zu Beginn auf null gestellte Zähler für Sandboxes, Läufe, Workflows und Mitglieder.

Projekteinstellungen konfigurieren

Navigieren Sie zu Projekteinstellungen(Schraubenschlüssel-Symbol in der Sidebar). Die Einstellungs-Seite ist in mehrere Tabs gegliedert.

API-Keys

Der Tab API Keys ist der Ort, an dem Sie die Anmeldeinformationen externer Dienste konfigurieren, die Ihr Projekt benötigt. Fügen Sie Schlüssel für jeden Provider hinzu:

  • E2B - Erforderlich für die Sandbox-Provisionierung. Vom E2B-Dashboard zu beziehen.
  • Anthropic - Erforderlich bei Verwendung von Claude Code als CLI-Tool. Dies ist der Standard-Anthropic-API-Key.
  • Anthropic Token - Ein alternativer OAuth-artiger Token für den Zugriff auf die Anthropic-API.
  • OpenRouter - Erforderlich bei Verwendung von OpenRouter für Modell-Routing und Zugriff auf mehrere Provider über einen einzigen Schlüssel.
  • OpenAI - Erforderlich bei Verwendung von OpenAI-basierten CLI-Tools wie Codex.
  • GitHub - Erforderlich für Branch-Erstellung und PR-Generierung. Verwenden Sie ein Personal Access Token mit Scope repo.

Projektbezogene Schlüssel

API-Keys werden pro Projekt konfiguriert, nicht global. Wenn Sie mehrere Projekte erstellen, benötigt jedes seine eigene Schlüsselkonfiguration. Dies stellt Isolation zwischen Projekten sicher und ermöglicht es verschiedenen Teammitgliedern, Schlüssel zu verschiedenen Projekten beizutragen.

Allgemeine Einstellungen

Im Tab Allgemeine Einstellungen können Sie Standardverhalten konfigurieren:

  • Sandbox-System-Prompt- Text, der jedem Agent-Prompt in diesem Projekt angehängt wird. Verwenden Sie dies für projektweite Konventionen wie „Immer TypeScript Strict Mode verwenden“ oder „Unser Commit-Message-Format befolgen“.
  • CLAUDE.md - Markdown-Inhalt, der als CLAUDE.md-Datei in der Sandbox geschrieben wird. Dies wird von Claude Code automatisch gelesen und dient als dauerhafte Anweisung für jede Session.

Umgebungsvariablen

Definieren Sie Umgebungsvariablen, die in jede Sandbox des Projekts eingespeist werden. Jede Variable hat einen Schlüssel, einen Wert und ein Secret-Flag. Secret-Variablen werden in der UI maskiert und bei der Übertragung mit besonderer Sorgfalt behandelt.

Beispiel-Umgebungsvariablen
NODE_ENV=development
DATABASE_URL=postgresql://localhost:5432/mydb  (marked as secret)
NEXT_PUBLIC_API_URL=https://api.example.com

Git-Konfiguration

Legen Sie Autorname und E-Mail-Adresse fest, die für Commits von Agenten innerhalb von Sandboxes verwendet werden. Damit bleiben Agent-Commits in Ihrer Git-Historie identifizierbar:

Beispiel-Git-Konfiguration
Git Commit Name: CodeCourier Bot
Git Commit Email: bot@codecourier.dev

Kontexte einrichten

Kontexte sind versionierte Anweisungs-Dokumente, die an bestimmte Session-Typen gebunden sind. Navigieren Sie zu Kontexte unter /p/[your-project]/context, um sie zu verwalten.

1

Issue-Session-Kontext erstellen

Klicken Sie auf Neuer Kontext und wählen Sie den Session-Typ issue. Schreiben Sie den System-Prompt, den der Issue-Scanning-Agent erhalten soll, einschließlich der Prioritäten Ihres Projekts, der Bereiche, denen besondere Aufmerksamkeit gilt, und der Muster, nach denen er suchen soll:

Beispiel: Issue-Session-Kontext
You are scanning a TypeScript/Next.js codebase for issues.
Focus on:
- Type safety violations and implicit any usage
- Missing error boundaries and unhandled promise rejections
- N+1 query patterns in data fetching
- Accessibility regressions in UI components
- Missing or inadequate test coverage

Prioritize issues that would affect production stability.
Generate specific, actionable titles and descriptions.

Speichern Sie den Kontext. CodeCourier erstellt Version 1 dieses Dokuments und verknüpft es mit Issue-Sessions in Ihrem Projekt.

2

Learning-Session-Kontext erstellen

Erstellen Sie einen weiteren Kontext für den Session-Typ learning. Dieser Kontext weist den Learning-Extraktions-Agenten an, wie er Learnings aus abgeschlossenen Läufen identifizieren und kategorisieren soll:

Beispiel: Learning-Session-Kontext
You are extracting learnings from an AI agent's completed coding session.
Focus on:
- Mistakes the agent made that were corrected
- Project-specific patterns or conventions that emerged
- Tool usage gotchas specific to this codebase
- Architectural decisions with rationale

Categorize each learning as: preference, pattern, gotcha, tool, or architecture.
Only extract learnings that would be actionable in future sessions.
3

Optional Kontexte für weitere Session-Typen erstellen

Wiederholen Sie dies für alle weiteren Session-Typen, die Sie verwenden: merging, answering, evaluating und judging. Jeder Kontext-Typ ist unabhängig; Sie können sie hinzufügen, sobald Sie die jeweilige Fähigkeit in Ihren Workflow einführen.

Kontext-Versionierung

Wenn Sie einen Kontext aktualisieren müssen, bearbeiten und speichern Sie ihn - die vorherige Version bleibt erhalten. So können Sie mit Anweisungs-Änderungen experimentieren, ohne dauerhaft zu verlieren, was zuvor funktioniert hat.

Assets einrichten

Assets (Skills, Commands und Scripts) erweitern, was Agenten innerhalb der Sandbox tun können. Navigieren Sie zum Asset-Bereich Ihrer Projekteinstellungen, um sie zu erstellen.

1

Einen Skill erstellen

Klicken Sie auf Neuer Skill. Geben Sie dem Skill einen Namen (z. B. „Project Conventions“) und fügen Sie eine oder mehrere Dateien hinzu. Jede Datei hat einen Namen und einen Inhalt:

Beispiel-Skill-Datei: conventions.md
# Project Conventions

## TypeScript
- All files must use strict mode
- Never use `any` - use `unknown` and narrow it
- Prefer interface over type for object shapes

## Database (Convex)
- Never call .collect() on large tables
- Use paginate() for lists longer than 100 items
- Batch writes use ctx.scheduler.runAfter

## Testing
- All new functions need a Vitest unit test
- Integration tests go in __tests__/integration/
- Use MSW for HTTP mocking, never mock fetch directly

Speichern Sie den Skill. Er ist nun verfügbar, um ihn an Personas und Session-Konfigurationen anzuhängen.

2

Nützliche Commands erstellen

Erstellen Sie Commands für Ihre häufigsten Agent-Operationen. Zum Beispiel:

  • Name: run-tests - Expression: npx vitest run --reporter=verbose
  • Name: typecheck - Expression: npx tsc --noEmit
  • Name: lint - Expression: npx eslint . --ext .ts,.tsx

Commands geben Agenten stabile, projektspezifische Aliase, die auch dann konsistent bleiben, wenn sich Ihre Tooling-Konfiguration ändert.

3

Optional Scripts erstellen

Scripts sind optional, aber nützlich für Pre-Run- oder Post-Run-Automatisierung. Ein Pre-Run-Script könnte zum Beispiel das Repository in einen bekannten Zustand klonen, oder ein Post-Run-Script könnte einen abschließenden Lint-Lauf durchführen und automatisch korrigierte Probleme committen.

Session-Konfigurationen konfigurieren

Mit Session-Konfigurationen können Sie Kontexte und Assets an jeden Session-Typ binden. Diese Einstellungen sind in den Projekteinstellungen über den eigenen Tab jedes Session-Typs erreichbar: Issue Session, Learning Session, Merge Session, Answering Session, Evaluator Session und Judge Session.

1

Issue Session konfigurieren

Navigieren Sie in den Projekteinstellungen zu Issue Session. Hier können Sie:

  • Einen Kontext binden - Wählen Sie den zuvor erstellten Issue-Kontext aus. Dieses Kontext-Dokument wird in jede Issue-Scanning-Session automatisch eingespeist.
  • Skills auswählen- Wählen Sie aus, welche Skill-Pakete in Issue-Sessions verfügbar sind. Ihr Skill „Project Conventions“ ist eine gute Standardauswahl.
  • Commands auswählen - Fügen Sie Ihre Commands run-tests und typecheck hinzu, damit der Scanning-Agent seine Funde validieren kann.
  • Issue-Session-Prompt setzen - Ein zusätzlicher Freitext-Prompt, der dem Discovery-Prompt des Benutzers vorangestellt wird.
2

Learning Session konfigurieren

Öffnen Sie den Konfigurations-Tab Learning Session. Binden Sie Ihr Learning-Kontext-Dokument und wählen Sie alle Skills oder Commands aus, die für die Learning-Extraktion relevant sind. Der Learning-Agent verwendet diese Ressourcen bei der Analyse abgeschlossener Sessions.

3

Weitere Session-Typen nach Bedarf konfigurieren

Wiederholen Sie den Bindungsprozess für Merge-, Answering-, Evaluator- und Judge-Sessions, sobald Sie diese Fähigkeiten einführen. Jeder Session-Typ ist vollständig unabhängig - Sie können sie schrittweise konfigurieren, während Ihr Workflow reift.

Teammitglieder hinzufügen

1

Zu Mitgliedern navigieren

Klicken Sie in der Sidebar unter dem Bereich Insights auf Mitglieder. Diese Seite zeigt alle aktuellen Mitglieder und ausstehenden Einladungen.

2

Ein Teammitglied einladen

Klicken Sie auf Mitglied einladen. Geben Sie die E-Mail-Adresse der Person ein, die Sie einladen möchten, und wählen Sie ihre Rolle:

  • Admin - Kann alle Projekt-Ressourcen und -Einstellungen verwalten und andere Mitglieder einladen
  • Member - Kann eigene Sandboxes, Läufe und Workflows erstellen und verwalten

Die Einladung wird sofort erstellt. Die eingeladene Person sieht beim Anmelden in CodeCourier eine ausstehende Einladung. Sobald sie annimmt, ändert sich ihr Status von „pending“ zu „accepted“ und sie erhält gemäß ihrer Rolle Zugriff auf alle Projekt-Ressourcen.

3

Bestehende Mitglieder verwalten

Auf der Mitglieder-Seite können Sie die Rolle eines Mitglieds ändern oder es aus dem Projekt entfernen. Der Projekt-Owner kann nicht entfernt werden, kann aber den Besitz übertragen, indem er ein anderes Mitglied zum Owner macht.

Mitgliederlimits

Die Anzahl der Teammitglieder wird in Projekt-Zählern verfolgt. Die Mitglieder-Seite und das Dashboard zeigen beide die aktuelle Anzahl aktiver Mitglieder und ausstehender Einladungen.

Personas einrichten

Personas definieren, wie sich Ihre KI-Agenten verhalten. Das Einrichten einiger zentraler Personas vor dem Ausführen von Workflows sichert konsistente Qualität. Jede Persona kann mit bestimmten Skills, Commands und Scripts aus den zuvor erstellten Assets verknüpft werden.

1

Zu Personas navigieren

Klicken Sie in der Sidebar auf Personas. Diese Seite zeigt alle für das Projekt konfigurierten Personas.

2

Designer-Persona erstellen

Klicken Sie auf Neue Persona und konfigurieren Sie:

  • Name: „Senior Developer“
  • Typ: Designer
  • Modell: Wählen Sie Ihr bevorzugtes Modell (z. B. claude-sonnet-4-6 für Geschwindigkeit oder claude-opus-4-6 für Qualität)
  • Thinking-Effort: Medium oder High
  • Anweisungen:
Beispiel-Anweisungen für Designer
You are a senior full-stack developer. Follow these principles:
- Write clean, well-documented TypeScript code
- Prefer composition over inheritance
- Write tests for all new functions
- Use existing project patterns and conventions
- Keep changes focused and minimal
  • Skills: Wählen Sie Ihren Skill „Project Conventions“ und weitere relevante Skills aus
  • Commands: Aktivieren Sie run-tests, typecheck und lint
  • Learnings: Aktivieren, um Projekt-Learnings in den Kontext aufzunehmen
3

Checker-Persona erstellen

Erstellen Sie eine zweite Persona für Code-Reviews:

  • Name: „Code Reviewer“
  • Typ: Checker
  • Modell: Verwenden Sie ein starkes Modell für die Prüfung ( claude-opus-4-6 empfohlen)
  • Thinking-Effort: High
  • Anweisungen:
Beispiel-Anweisungen für Checker
You are a thorough code reviewer. Evaluate the changes against:
- Correctness: Does the code do what was asked?
- Type safety: Are there any TypeScript errors or any-typed values?
- Edge cases: Are error states and boundary conditions handled?
- Testing: Are tests present and meaningful?
- Style: Does the code follow project conventions?

Return pass: true only if ALL criteria are met.
If rejecting, provide specific, actionable feedback.
4

Optional spezialisierte Personas erstellen

Erwägen Sie, zusätzliche Personas für spezifische Rollen zu erstellen:

  • Investigator - Für Recherche-Aufgaben, die Codebases erkunden, bevor Änderungen vorgenommen werden
  • Planner - Für Issue-Sessions und Codebase-Analysen mit bestimmten Architektur-Prinzipien
  • Reviewer - Fokussiert auf Lesbarkeit, Wartbarkeit und Code-Review-Gründlichkeit
  • Deep-dive - Für tiefgehende Analyse-Aufgaben mit erweitertem Reasoning

Eine Sandbox erstellen

Während Workflows Sandboxes automatisch erstellen, können Sie auch eigenständige Sandboxes für interaktive Erkundung erstellen.

1

Eine eigenständige Sandbox erstellen

Navigieren Sie in der Sidebar zu Sandboxes und klicken Sie auf Neue Sandbox. Konfigurieren Sie das Sandbox-Template, das Timeout und die Ressourcen. Geben Sie ihr einen beschreibenden Namen wie „Codebase erkunden“ und einen initialen Prompt.

Eigenständige Sandboxes sind nützlich für Einzelaufgaben: Untersuchung eines Bugs, Prototyping einer Lösung oder Testen einer Konfigurationsänderung, bevor sie in einen Workflow eingebettet wird.

2

Mit der Sandbox interagieren

Sobald die Sandbox läuft, können Sie den Nachrichten-Stream des Agenten in Echtzeit sehen. Die Detailseite zeigt den vollständigen Gesprächsverlauf, den Sandbox-Status und alle PR- oder Learning-Extraktions-Status.

Einen Workflow End-to-End ausführen

1

Einen Workflow mit Ihren Personas erstellen

Navigieren Sie zu Workflows und erstellen Sie einen neuen Workflow vom Typ Persona Pipeline:

  • Name: „Full Review Pipeline“
  • Typ: Persona Pipeline
  • Schritte: Fügen Sie Ihre Persona „Senior Developer“ als ersten Schritt hinzu, dann Ihre Persona „Code Reviewer“ als zweiten Schritt. Konfigurieren Sie optional eine Schleife zwischen ihnen mit einer maximalen Iterationsanzahl.
  • Template: Wählen Sie das Sandbox-Template, das zu Ihrer CLI-Tool-Präferenz passt
  • Timeout: 30 Minuten pro Schritt
2

Einen Lauf starten

Klicken Sie auf Ausführen bei Ihrem neuen Workflow. Geben Sie einen Prompt ein, der das Feature oder den Fix beschreibt, das Sie möchten:

Beispiel-Prompt
Add a reusable DateRangePicker component to
components/ui/date-range-picker.tsx. It should:

1. Accept startDate, endDate, and onChange props
2. Use the existing react-day-picker dependency
3. Support both controlled and uncontrolled modes
4. Include proper TypeScript types
5. Follow the existing shadcn/ui component patterns
6. Add a Storybook story file

Geben Sie einen Branch-Namen an (z. B. feat/date-range-picker) und bestätigen Sie bei Bedarf die GitHub-Repository-URL. Klicken Sie auf Lauf starten.

3

Überwachen und überprüfen

Verfolgen Sie den Lauf-Fortschritt auf der Run-Detailseite:

  1. Die Designer-Persona empfängt Ihren Prompt, erkundet das Repository und implementiert das Feature
  2. Die Checker-Persona prüft die Implementierung anhand Ihrer Kriterien und genehmigt entweder oder gibt Feedback
  3. Bei Ablehnung iteriert der Designer mit dem Feedback, bis er genehmigt wird oder die maximale Iterationsanzahl erreicht ist
  4. Qualitätsbewertungen werden für jeden Schritt aufgezeichnet - Sie können Korrektheits-, Typsicherheits-, Code-Stil-, Testabdeckungs- und Vollständigkeits-Werte in den Schritt-Details sehen
  5. Bei Abschluss erstellt CodeCourier einen PR auf dem angegebenen Branch

Eine Issue-Session mit Answering ausführen

Issue-Sessions können Fragen und Annahmen aufdecken, die vor der Implementierung geklärt werden müssen. So nutzen Sie die Funktion Answering Session:

1

Eine Issue-Session auslösen

Navigieren Sie in der Sidebar zu Issues und klicken Sie auf Neue Issue-Session. Wählen Sie den zu analysierenden Branch aus und geben Sie einen Discovery-Prompt an (oder verlassen Sie sich auf das zuvor konfigurierte Kontext-Dokument). Starten Sie die Session.

Die Session verwendet den Issue-Session-Kontext und die Assets, die Sie in den Projekteinstellungen konfiguriert haben. Bei Abschluss sehen Sie eine Liste generierter Issues mit Titeln, Beschreibungen und Prioritäten.

2

Fragen prüfen und Answering-Session starten

Einige Issues können mit offenen Fragen oder ungelösten Annahmen kommen - zum Beispiel: „Ist dieser Cache-Miss akzeptabel oder sollten wir den Cache vorwärmen?“ Wenn Sie solche Fragen an einem Issue sehen, klicken Sie auf Answering-Session starten.

Die Answering-Session erstellt eine Sandbox mit Ihrem konfigurierten Answering-Session-Kontext. Der Agent erhält die offenen Fragen und arbeitet sie ab, erzeugt strukturierte Antworten, die wieder an das Issue angehängt werden. Diese Antworten werden dann an den Implementierungslauf weitergegeben, sodass der Designer-Agent nicht raten muss.

3

Issues ausführen

Wenn die Fragen geklärt sind, klicken Sie auf Ausführen bei einem Issue (oder wählen Sie mehrere Issues aus und erstellen Sie eine Work Chain). Der Implementierungslauf erhält den vorgeschlagenen Prompt des Issues zusammen mit allen Antworten aus der Answering-Session.

Ergebnisse und Learnings ansehen

Pull Request

Nach Abschluss des Laufs prüfen Sie auf der Run-Detailseite den PR-Status. Wenn der Lauf für die PR-Erstellung konfiguriert war, sehen Sie die PR-URL, die direkt auf GitHub verlinkt. Der PR-Status wird in Echtzeit verfolgt: creating, created, merged oder failed. CI-Check-Ergebnisse erscheinen im Panel CI Checks, sobald Ihre Pipeline gegen den PR-Branch läuft.

Qualitätsbewertungen

Jeder abgeschlossene Lauf-Schritt zeigt seine Qualitätsbewertungen. Navigieren Sie zur Schrittliste des Laufs und klicken Sie auf einen beliebigen Schritt, um die Aufschlüsselung nach Korrektheit, Typsicherheit, Code-Stil, Testabdeckung, Vollständigkeit und dem Gesamtwert zu sehen. Der Gesamtqualitätswert des Laufs ist auf der Run-Zusammenfassungs-Karte sichtbar.

Learning-Extraktion

Wenn die Learning-Extraktion aktiviert ist (konfiguriert in den Projekteinstellungen und über die Learning-Session-Konfiguration), führt CodeCourier nach Abschluss einen Schritt aus, der die Session des Agenten unter Verwendung des Learning-Kontext-Dokuments analysiert und strukturierte Learnings extrahiert. Navigieren Sie in der Sidebar zu Learnings, um neu extrahierte Datensätze zu sehen.

Prüfen Sie jedes ausstehende Learning:

  • Freigeben Sie Learnings, die echtes Projektwissen erfassen - diese werden kompiliert und in zukünftige Sessions eingespeist
  • Ablehnen Sie Learnings, die falsch, zu generisch oder nicht anwendbar sind

Nutzung und Kosten

Navigieren Sie im Insights-Bereich zu Usage, um detaillierte Kostenaufschlüsselungen zu sehen. Nutzungsdatensätze verfolgen Token-Verbrauch, Sandbox-Dauer und Kosten pro Dienst (Claude Code, E2B, Trigger.dev) bis hinunter zum einzelnen Lauf-Schritt. Die Analytics-Seite bietet Diagramme und Trends über die Zeit.

Dashboard

Kehren Sie zum Dashboard zurück, um aktualisierte Projekt-Zähler zu sehen. Das Dashboard zeigt Gesamtanzahl Sandboxes, aktive Sandboxes, Gesamtanzahl Läufe, abgeschlossene und fehlgeschlagene Läufe, Gesamtanzahl Workflows, Teammitglieder und ausstehende Einladungen. Tägliche Statistiken verfolgen erstellte Sandboxes, erstellte und abgeschlossene Läufe, Iterationen und erstellte Workflows.

Nächste Schritte

Sie haben nun ein vollständig konfiguriertes Projekt mit Kontexten, Assets, Session-Konfigurationen, Personas und einem vollständigen End-to-End-Workflow. Hier sind empfohlene nächste Schritte, um Ihre Nutzung zu vertiefen: