# Stripe Projects-CLI

Nehmen Sie Dienstleistungen von Drittanbietern in Ihre App auf, synchronisieren Sie Zugangsdaten mit Ihrem Projekt und verwalten Sie Upgrades.

Weitere Informationen finden Sie im [Referenzdokument für das Stripe CLI](https://docs.stripe.com/cli.md).

> Stripe Projects ist als öffentliche Vorschau verfügbar. Tragen Sie sich unter [projects.dev](https://projects.dev/) in die Warteliste ein, um einen frühen Zugang zu beantragen.

Ein Stripe-Projekt stellt eine einzelne Anwendung oder Codebasis dar und gruppiert die Dienste und Ressourcen eines Anbieterkontos.

- **Anbieter-Konto**: Das Konto bei Ihrem Anbieter, wie Vercel, Supabase, Clerk oder PostHog.
- **Service**: Das Produktangebot des Anbieters, wie Datenbank, Autorisierung oder Analyse.
- **Ressource**: Eine Instanz des Dienstes für Ihr Konto sowie die zugehörigen Zugangsdaten und Umgebungsvariablen. Zum Beispiel `test-db-1`, `Autorisierung` oder `test-analytics-1`.

Sie können ein Projekt nutzen, um:

- Fügen Sie ein bestehendes Anbieterkonto hinzu oder erstellen Sie ein neues
- Bereitstellung von Ressourcen wie Datenbanken, Autorisierungsinstanzen und Analyseprojekten
- Speichere Zugangsdaten im Tresor und synchronisiere sie mit deiner Umgebung :(`.env`) als Umweltvariablen
- Verwaltung von Upgrades und rotierende Zugangsdaten

Nachdem Sie ein Provider-Konto mit Ihrem Stripe-Konto verknüpft haben, bleibt es autorisiert, bis Sie die Verknüpfung ausdrücklich entfernen. Sie können ein Provider-Konto für neue Projekte im selben Stripe-Konto wiederverwenden. Wenn Sie ein anderes Stripe-Konto verwenden möchten, müssen Sie das Provider-Konto erneut verknüpfen.

Du kannst ein Projekt in einem neuen Verzeichnis oder einer bestehenden Codebasis initialisieren. Wenn du eine bestehende Codebasis verwendest und Dienste hinzufügst, werden neue Zugangsdaten und Umgebungsvariablen in deine bestehende Umgebung (`.env`) und Projektkonfiguration integriert.

## Before you begin

- Ein Stripe-Konto
- Die installierte und aktuelle [Stripe-CLI](https://docs.stripe.com/stripe-cli/install.md)
- Das installierte Projects-Plug-in:

```bash
stripe plugin install projects
```

### Verwenden Sie einen Codierungsagenten

Du kannst einen Codierer bitten, das Stripe-CLI- und Projekt-Plug-in zu installieren:

```bash
Install the Stripe CLI, install the `projects` plugin, verify `stripe projects --help` works.
```

## Quickstart

In diesem Beispiel werden Hosting, eine Datenbank, Authentifizierung und Analysen einem Projekt hinzugefügt und dann die Anmeldedaten mit Ihrer lokalen Umgebung synchronisiert.

```bash
# Create a project
stripe projects init my-app

# Associate a provider account or add a service
stripe projects link vercel
# or
stripe projects add vercel/project

# Add more services
stripe projects add clerk/auth
stripe projects add posthog/analytics
```

Stripe Projects speichert Zugangsdaten im Vault und synchronisiert die Umweltvariablen mit deiner lokalen Umgebung (`.env`) automatisch:

```bash
VERCEL_PROJECT_ID=...
SUPABASE_DATABASE_URL=...
CLERK_SECRET_KEY=...
POSTHOG_PROJECT_API_KEY=...
```

## Erstellen Sie ein Projekt

Führen Sie `init` in dem Verzeichnis aus, das Sie für Ihr Projekt verwenden möchten:

```bash
stripe projects init [name]
```

Dadurch wird ein Stripe-Projekt für dieses Verzeichnis initialisiert. Wenn du den Namen weglässt, verwendet Stripe Projects den Ordnernamen.

Stripe Projects schreibt den Projektzustand unter `.projekte/`, wo die zugehörigen Anbieterkonten, bereitgestellten Ressourcen und die lokale Projektkonfiguration verfolgt werden. Sie können die Werkzeuge sehen, die Ihr Projekt in `.projekte/state.json` nutzt. Die Datei `.projekte/state.local.json` in Ihrem privaten Repository enthält die Ressourcen-IDs, die dein Team benötigt, um denselben Projektstatus zu teilen.

## Verwenden Sie einen Codierungsagenten

Wenn Sie ein Projekt initialisieren, schreibt Stripe Projects die Coding Agent-Fähigkeiten in das lokale Projektverzeichnis. Diese Fähigkeiten bieten Kontext und Handlungen, damit Ihr Agent über den Stripe Projects-Workflow in Ihr Projekt eingebunden werden kann.

Anschließend können Sie Ihren Makler bitten, Aufgaben zu erledigen, wie zum Beispiel:

- “Mein bestehendes Neon-Konto verknüpfen und eine Datenbank bereitstellen.”
- „Füge Turso-Authentifizierung und PostHog auf der kostenlosen Stufe hinzu.“
- „Richte die Dienste ein, die dieses Repository braucht, und erkläre, was sich geändert hat.“

Ihr Agent verwendet dieselben Stripe Projects CLI-Befehle. Das bedeutet, dass Sie Zugangsdaten bereitstellen, aktualisieren, konfigurieren und synchronisieren können, indem Sie denselben deterministischen, auditierbaren Pfad verwenden wie die direkte Nutzung der CLI.

Um Browser-Pop-ups während der Bereitstellung und des Austauschs von Zugangsdaten zu vermeiden, empfehlen wir folgenden Ablauf:

- Melden Sie sich bei Ihrem Stripe-Konto an.
- Verknüpfe dein bestehendes Anbieterkonto (oder erstelle ein neues) mit einem `Link zu Stripe-Projekten`.
- Fügen Sie mit `Abrechnung für Stripe-Projekte hinzufügen` eine Zahlungsmethode hinzu.
- Beginnen Sie mit der Agentensitzung.

## Prüfen Sie den Status des Projekts

Führen Sie, nachdem Sie Dienste oder verbundene Anbieter hinzugefügt haben, `status` aus, um Ihr Projekt zu überprüfen:

```bash
stripe projects status
```

Hier werden Ihr Projektname, Ihr Stripe-Konto, zugehörige Anbieterkonten, bereitgestellte Ressourcen, aktuelle Stufen und der Zustandsscore angezeigt.

## Integrieren Sie Projekte in Ihren Arbeitsablauf

Sie können Stripe Projects für neue Apps, bestehende Codebasen und aktive Setups verwenden.

### Ein neues Projekt starten

Wenn Sie eine neue App haben, können Sie ein Projekt erstellen, Associate-Provider-Konten erstellen oder neue erstellen und Ressourcen bereitstellen, wie Datenbank, Autorisierungen und Analysen.

### Dienste zu einer bestehenden Codebasis hinzufügen

Sie können Stripe-Projekte in einem bestehenden Anwendungsverzeichnis initialisieren. Wenn Sie ein bestehendes Verzeichnis verwenden und Dienste hinzufügen, werden neue Zugangsdaten und Umgebungsvariablen in Ihre bestehende Umgebung (`.env`) und Projektkonfiguration integriert. Dies ist nützlich, wenn eine App bereits über ein Hosting verfügt, aber Dienste wie eine Datenbank, Authentifizierung, Analysen, Feature-Flags oder andere verwaltete Infrastrukturelemente benötigt.

### Verwaltung eines bestehenden Setups

Wenn Sie die bereits genutzten Provider-Konten mit Ihrem Stripe-Konto verknüpfen, wird das Projekt an einem einzigen Ort dargestellt. Das ermöglicht es Ihnen auch, bestehende Ressourcen zuzuordnen und relevante Umgebungsvariablen hinzuzufügen.

### Arbeit in mehreren Umgebungen

Ein einzelnes Stripe-Projekt kann mehrere Umgebungen repräsentieren, einschließlich Entwicklung und Produktion. Fügen Sie die benötigten Ressourcen für jede Umgebung hinzu oder stellen Sie sie bereit und synchronisieren Sie die Variablen anschließend mit der entsprechenden Projektkonfiguration und lokalen `.env`-Dateien.

## Durchsuchen Sie den Dienstkatalog

Verwenden Sie `catalog`, um alle verfügbaren Anbieter, ihre Dienstkategorien, Planstufen, Add-ons und Preise aufzulisten:

```bash
stripe projects catalog
stripe projects catalog <provider>
stripe projects catalog <category>
```

## Einen Dienst verwalten

### Einen Dienst hinzufügen

Fügen Sie Ihrem Projekt einen Anbieterdienst hinzu:

```bash
stripe projects add <provider>/<service>
```

Wenn Sie einen Dienst hinzufügen, verknüpft diese Aktion ein bestehendes Anbieterkonto mit Ihrem Stripe-Konto oder erstellt eines, bevor der Dienst hinzugefügt wird.

Das Hinzufügen eines Dienstes stellt eine Ressource in Ihrem Provider-Konto bereit. Verwenden Sie den Befehl `Hinzufügen` zur Bereitstellung einer Datenbank, einer Authentifizierungsinstanz, eines Analyseprojekts, von Feature-Flags oder einer anderen verwalteten Infrastruktur für Ihre App.

### Einen Anbieter mit dem Link-Befehl verknüpfen

Einen Anbieter-Account verknüpfen oder ein Konto erstellen, ohne eine Ressource bereitzustellen. Das ist hilfreich in agentengesteuerten Workflows, wenn Sie vor der Bereitstellung von Ressourcen eine Verbindung zum Anbieter herstellen möchten.

```bash
stripe projects link <provider>
```

### Einen Dienst entfernen

Entfernen Sie einen Dienst aus Ihrem Konto und Ihrem lokalen Projekt:

```bash
stripe projects remove <provider>/<service>
#or
stripe projects remove <resource_name>
```

### Anmeldedaten rotieren

Rotieren Sie Anmeldedaten für einen bestimmten Dienst:

```bash
stripe projects rotate <provider>/<service>
#or
stripe projects rotate <resource_name>
```

### Eine Servicestufe aktualisieren

Du kannst die Service-Stufe aufrüsten, wenn ein Service mehr Kapazität, Funktionen oder Limits benötigt als die aktuelle Stufe bietet.

```bash
stripe projects upgrade <provider> | <provider>/<service> | <resource_name>
```

Überprüfen Sie vor dem Upgrade die aktuelle Stufe für jeden Service im Status- oder Anbieter-Dashboard.

Sie müssen Ihre Zahlungsmethode nur einmal bei Stripe hinterlegen. Wenn Sie in der CLI einen kostenpflichtigen Plan auswählen, wandelt Stripe Ihre Zahlungsdaten in ein [Shared Payment Token](https://docs.stripe.com/agentic-commerce/concepts/shared-payment-tokens.md) um und gewährt dem Anbieter eine Zahlungsberechtigung für dieses Upgrade. Der Anbieter rechnet über dieses Token ab. Ihre eigentlichen Zahlungsdaten werden nicht weitergegeben.

> In der Entwicklervorschau ist diese Zahlungsweiterleitung nur in den USA, der EU, Großbritannien und Kanada verfügbar.

### Ein Anbieter-Dashboard öffnen

Öffnen Sie das Dashboard eines Anbieters in Ihrem Standardbrowser:

```bash
stripe projects open <provider>
```

## Umgebungsvariablen verwalten

Stripe Projects speichert Zugangsdaten im Vault und synchronisiert die Umgebungsvariablen mit Ihrer lokalen Umgebung (`.env`) automatisch, wenn Sie Dienste hinzufügen oder ändern.

### Variablen auflisten

Zeigen Sie alle Projektumgebungsvariablen an. Werte werden in der Ausgabe nicht angezeigt:

```bash
stripe projects env
```

Umgebungsvariablen synchronisieren sich ebenfalls automatisch nach der Ressourcenbereitstellung.

### Variablen synchronisieren

Aktualisieren Sie Ihre lokalen `.env`Dateien und füllen Sie Ihren Anmeldedaten-Tresor auf. Er wird auch automatisch nach der Ressourcenbereitstellung aktualisiert.

```bash
stripe projects env --pull
```

## Die Abrechnung verwalten

Zahlungsmethoden sind mit Ihrem Stripe-Konto verknüpft.

### Die Zahlungsmethode anzeigen

Zeigen Sie Ihre Zahlungsmethode in der Datei an:

```bash
stripe projects billing show
```

### Eine Zahlungsmethode hinzufügen oder aktualisieren

Fügen Sie eine Zahlungsmethode hinzu oder ersetzen Sie eine bestehende:

```bash
stripe projects billing add
```

## LLM-Kontext generieren

Zeigen Sie eine lokale Datei an, die Ihren Projektkontext mit allen vom Anbieter bereitgestellten LLM-Kontextdateien kombiniert, und erstellen Sie eine solche Datei:

```bash
stripe projects llm-context
```

## Nicht-interaktive Umgebungen verwenden

Jeder Befehl unterstützt Flags für nicht-interaktive Umgebungen wie CI/CD-Pipelines, Scripts und Agenten.

### Globale Flags

| Flag               | Beschreibung                                                                                                                             |
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `--json`           | Geben Sie die Ausgabe als strukturierte JSON anstelle von formatiertem Text zurück.                                                      |
| `--no-interactive` | Deaktivieren Sie interaktive Eingabeaufforderungen und Bestätigungsdialoge. Befehle schlagen fehl, wenn die erforderliche Eingabe fehlt. |
| `--auto-confirm`   | Akzeptieren Sie Bestätigungsaufforderungen automatisch, z.&nbsp;B. wenn Sie einen Dienst entfernen.                                      |
| `--quiet`          | Unterdrücken Sie nicht wesentliche Ausgaben und geben Sie nur endgültige Ergebnisse oder Fehler zurück.                                  |

## Verfügbare Anbieter

Diese Anbieter haben das Integrationsprotokoll gemeinsam mit Stripe entwickelt. Das Protokoll standardisiert die Bereitstellung, die Planauswahl, Upgrades und die Übergabe von Anmeldedaten.

| Anbieter     | Hauptkategorien                           |
| ------------ | ----------------------------------------- |
| Vercel       | Hosting                                   |
| Cloudfare    | Hosting, Domains                          |
| Railway      | Hosting, Datenbank, Speicher              |
| Fly.io       | Hosting, Datenbank                        |
| Supabase     | Datenbank, Authentifizierung, Speicherung |
| Neon         | Datenbank, Authentifizierung              |
| PlanetScale  | Datenbank                                 |
| Turso        | Datenbank                                 |
| Chroma       | Vektordatenbank                           |
| Clerk        | Authentifizierung                         |
| PostHog      | Analysen, Feature-Flags                   |
| Amplitude    | Analysen, Feature-Flags                   |
| Mixpanel     | Analytik                                  |
| Firecrawl    | Suche                                     |
| OpenRouter   | KI-Modelle                                |
| Hugging Face | KI                                        |
| Inngest      | KI                                        |
| Runloop      | Sandboxes, Hosting                        |

Sie können jederzeit `stripe projects catalog` ausführen, um die aktuellste Liste der Anbieter und verfügbaren Servicestufen anzuzeigen. Alternativ ist das Verzeichnis auch unter [projects.dev/providers](https://projects.dev/providers) abrufbar.

> #### Fragen Sie nach einem Anbieter
> 
> Kontaktieren Sie [provider-request@stripe.com](mailto:provider-request@stripe.com), wenn Sie daran interessiert sind, ein Anbieter im Netzwerk von Stripe Projects zu werden, oder wenn Sie an einem bestimmten Anbieter interessiert sind.

## Befehlsreferenz

| Befehl                                             | Beschreibung                                                                 |
| -------------------------------------------------- | ---------------------------------------------------------------------------- |
| `init <name>`                                      | Erstellen Sie ein Projekt und melden Sie sich an oder registrieren Sie sich. |
| `status`                                           | Zeigen Sie den Projektnamen, Dienste, Stufen und Zustandsangaben an.         |
| `catalog`                                          | Listen Sie verfügbare Anbieter, Kategorien und Dienstleistungen auf.         |
| `add <provider>/<category>`                        | Fügen Sie Ihrem Projekt einen Dienst hinzu.                                  |
| `link <provider>`                                  | Verbinden Sie einen Anbieter mit Ihrem Projekt.                              |
| `entfernen <provider>/<service> | <resource_name>` | Entfernen Sie einen Dienst aus Ihrem Projekt.                                |
| `rotieren <provider>/<service> | <resource_name>`  | Rotieren Sie Anmeldedaten für einen Dienst.                                  |
| `upgrade <provider>/<service> | <resource_name>`   | Ändern Sie die Stufe eines Dienstes.                                         |
| `open <provider>`                                  | Öffnen Sie das Dashboard eines Anbieters im Browser.                         |
| `env [--pull]`                                     | Projektumgebungsvariablen auflisten oder synchronisieren.                    |
| `Abrechnung anzeigen`                              | Zeigen Sie die aktuelle Zahlungsmethode an.                                  |
| `Abrechnung hinzufügen`                            | Fügen Sie eine Zahlungsmethode hinzu oder ersetzen Sie eine Zahlungsmethode. |
| `llm-context`                                      | Generieren Sie eine kombinierte LLM-Kontextdatei.                            |
