# Erstellen eines Plug-Ins für GitHub Copilot CLI

Erstellen Sie ein Plug-In, um Anpassungen in einem einfach zu installierenden Paket freizugeben.

## Einleitung

Plugins sind Pakete, die die Funktionalität von Copilot CLI erweitern. Weitere Informationen findest du unter [Informationen zu GitHub Copilot Plug-Ins](/de/copilot/concepts/agents/about-plugins).

> \[!NOTE]
> Hilfe zur Verwendung von Plugins finden Sie, indem Sie `copilot plugin [SUBCOMMAND] --help` im Terminal eingeben.

## Plug-In-Struktur

Ein Plug-In besteht aus einem Verzeichnis mit einer bestimmten Struktur. Mindestens muss eine `plugin.json` Manifestdatei im Stammverzeichnis des Ordners enthalten sein. Sie kann auch eine beliebige Kombination aus Agents, Fähigkeiten, Hooks und MCP-Serverkonfigurationen enthalten.

### Beispiel-Plug-In-Struktur

```text
my-plugin/
├── plugin.json           # Required manifest
├── agents/               # Custom agents (optional)
│   └── helper.agent.md
├── skills/               # Skills (optional)
│   └── deploy/
│       └── SKILL.md
├── hooks.json            # Hook configuration (optional)
└── .mcp.json             # MCP server config (optional)
```

## Erstellen eines Plug-Ins

1. Erstellen Sie ein Verzeichnis für Ihr Plug-In.

2. Fügen Sie dem Stammverzeichnis eine `plugin.json` Manifestdatei hinzu.

**Beispieldatei `plugin.json`**

```json copy
{
  "name": "my-dev-tools",
  "description": "React development utilities",
  "version": "1.2.0",
  "author": {
    "name": "Jane Doe",
    "email": "jane@example.com"
  },
  "license": "MIT",
  "keywords": ["react", "frontend"],
  "agents": "agents/",
  "skills": ["skills/", "extra-skills/"],
  "hooks": "hooks.json",
  "mcpServers": ".mcp.json"
}
```

Ausführliche Informationen zu den vollständigen Feldern, die Sie in diese Datei aufnehmen können, finden Sie unter [GitHub Copilot CLI-Plug-In-Referenz](/de/copilot/reference/copilot-cli-reference/cli-plugin-reference#pluginjson).

1. Fügen Sie Ihrem Plug-In einige Komponenten hinzu, indem Sie die entsprechenden Dateien und Verzeichnisse für Agents, Fähigkeiten, Hooks und MCP-Serverkonfigurationen erstellen.

   Beispiel:

   1. Fügen Sie einen Agent hinzu, indem Sie eine `NAME.agent.md` Datei in einem `agents` Unterverzeichnis erstellen.

      ```markdown copy
      ---
      name: my-agent
      description: Helps with specific tasks
      tools: ["bash", "edit", "view"]
      ---

      You are a specialized assistant that...
      ```

   2. Fügen Sie eine Fähigkeit hinzu, indem Sie ein `skills/NAME` Unterverzeichnis Ihres Plug-In-Verzeichnisses erstellen, wo `NAME` der Name Ihrer Fähigkeiten ist. Erstellen Sie dann in diesem Unterverzeichnis eine `SKILL.md` Datei, die die Fähigkeit definiert.

      Um z. B. eine "Bereitstellen"-Fähigkeit zu erstellen, erstellen Sie `skills/deploy/SKILL.md`:

      ```markdown copy
      ---
      name: deploy
      description: Deploy the current project to...
      ---

      Instructions for the skill...
      ```

2. Installieren Sie Ihr Plug-In lokal, damit Sie es während der Entwicklung testen können.

   Geben Sie zum Beispiel, wo `./my-plugin` der Pfad zu Ihrem Plug-In-Verzeichnis ist, Folgendes ein:

   ```shell copy
   copilot plugin install ./my-plugin
   ```

3. Überprüfen Sie, ob das Plug-In erfolgreich geladen wurde, indem Sie Ihre Liste der installierten Plug-Ins anzeigen:

   ```shell copy
   copilot plugin list
   ```

   Sie können auch eine neue interaktive Sitzung starten und Folgendes eingeben:

   ```copilot copy
   /plugin list
   ```

4. Stellen Sie sicher, dass die von Ihnen definierten Agents, Fähigkeiten, Hooks und MCP-Serverkonfigurationen ordnungsgemäß geladen werden.

   Um beispielsweise in einer interaktiven Sitzung zu überprüfen, ob benutzerdefinierte Agents, die im Plug-In definiert wurden, geladen wurden, geben Sie Folgendes ein:

   ```copilot copy
   /agent
   ```

   Um zu überprüfen, ob im Plug-In definierte Fähigkeiten geladen wurden, geben Sie Folgendes ein:

   ```copilot copy
   /skills list
   ```

5. Verwenden Sie die von den Komponenten Ihres Plug-Ins bereitgestellten Funktionen, um sicherzustellen, dass jede Komponente wie erwartet funktioniert.

6. Überarbeiten Sie Ihre Plugin-Entwicklung bei Bedarf.

   > \[!IMPORTANT]
   > Wenn Sie ein Plug-In installieren, werden seine Komponenten zwischengespeichert, und die CLI liest aus dem Cache für nachfolgende Sitzungen. So übernehmen Sie Änderungen, die an einem lokalen Plugin vorgenommen wurden: Installieren Sie es erneut.
   >
   > ```shell copy
   > copilot plugin install ./my-plugin
   > ```

7. Nachdem Sie den Test abgeschlossen haben, können Sie die lokale Version Ihres Plug-Ins deinstallieren, indem Sie Folgendes eingeben:

   ```shell copy
   copilot plugin uninstall NAME
   ```

   > \[!NOTE]
   > Um ein Plug-In zu deinstallieren, verwenden Sie den Namen des Plug-Ins, wie im `name` Feld der Manifestdatei des Plug-Ins `plugin.json` angegeben, nicht den Pfad zum Verzeichnis des Plug-Ins.

## Verteilen Ihres Plug-Ins

Um Ihr Plug-In zu verteilen, können Sie es zu einem Marketplace hinzufügen. Weitere Informationen findest du unter [Erstellen eines Plugin-Marketplace für GitHub Copilot CLI](/de/copilot/how-tos/copilot-cli/customize-copilot/plugins-marketplace).

## Weiterführende Lektüre

* [Suchen und Installieren von Plug-Ins für GitHub Copilot CLI](/de/copilot/how-tos/copilot-cli/customize-copilot/plugins-finding-installing)
* [GitHub Copilot CLI-Plug-In-Referenz](/de/copilot/reference/copilot-cli-reference/cli-plugin-reference)