{"meta":{"title":"Die Verwendung des Copilot-Cloud-Agents über die API","intro":"Sie können Aufgaben programmgesteuert mithilfe der REST-API starten und verwalten Copilot cloud agent .","product":"GitHub Copilot","breadcrumbs":[{"href":"/de/copilot","title":"GitHub Copilot"},{"href":"/de/copilot/how-tos","title":"Vorgehensweisen"},{"href":"/de/copilot/how-tos/use-copilot-agents","title":"Copilot-Agents verwenden"},{"href":"/de/copilot/how-tos/use-copilot-agents/cloud-agent","title":"Cloud agent"},{"href":"/de/copilot/how-tos/use-copilot-agents/cloud-agent/use-cloud-agent-via-the-api","title":"Verwenden des Cloud-Agents über die API"}],"documentType":"article"},"body":"# Die Verwendung des Copilot-Cloud-Agents über die API\n\nSie können Aufgaben programmgesteuert mithilfe der REST-API starten und verwalten Copilot cloud agent .\n\nSie können die Agentaufgaben-API verwenden, um cloud agent in Ihre eigenen Tools und Workflows zu integrieren. Sie können z. B. eine neue Aufgabe starten, vorhandene Aufgaben auflisten oder den Status einer Aufgabe überprüfen.\n\nDarüber hinaus können Sie die REST- und GraphQL-APIs für Probleme verwenden, um Probleme an Copilot zuzuweisen.\n\n## Verwenden der API für Agent-Aufgaben\n\n> \\[!NOTE]\n> Die Agentaufgaben-API befindet sich in Öffentliche Vorschau und kann geändert werden.\n\n### Authentifizierung\n\nDie Agentaufgaben-API unterstützt nur Benutzer-zu-Server-Token. Sie können sich mit einem personal access tokenToken, einem OAuth app Token oder einem GitHub App Benutzer-zu-Server-Token authentifizieren.\n\nServer-zu-Server-Token, wie GitHub App Installationszugriffstoken, werden nicht unterstützt.\n\n### Starten einer Aufgabe über die API\n\nUm eine neue cloud agent Aufgabe zu starten, senden Sie eine `POST` Anforderung an `/agents/repos/{owner}/{repo}/tasks`. Der einzige erforderliche Parameter ist `prompt`, bei dem es sich um die Aufforderung für den Agent handelt.\n\n```shell copy\ncurl -X POST \\\n  -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  -H \"Authorization: Bearer YOUR-TOKEN\" \\\n  https://api.github.com/agents/repos/OWNER/REPO/tasks \\\n  -d '{\n    \"prompt\": \"Fix the login button on the homepage\",\n    \"base_ref\": \"main\"\n  }'\n```\n\nErsetzen Sie die folgenden Platzhalterwerte:\n\n* `YOUR-TOKEN`: Ein personal access token- oder GitHub App-Benutzer-zu-Server-Token.\n* `OWNER`: Der Kontobesitzer des Repositorys.\n* `REPO`: Der Name des Repositorys.\n\nSie können auch die folgenden optionalen Parameter in den Anforderungstext einschließen:\n\n* ```\n            `base_ref`: Die Basisverzweigung für die neue Verzweigung und Pull-Anforderung.\n  ```\n* `model`: Das KI-Modell, das für die Aufgabe verwendet werden soll. Wenn nicht angegeben, wird auto model selection verwendet. Weitere Informationen zu unterstützten Modellen finden Sie unter [REST-API-Endpunkte für Agentaufgaben](/de/rest/agent-tasks/agent-tasks).\n* `create_pull_request`: Ein boolescher Wert, der bestimmt, ob eine Pullanforderung für die Aufgabe erstellt werden soll.\n\n### Auflisten von Aufgaben\n\nSie können Aufgaben für ein bestimmtes Repository oder für alle Repositorys auflisten, auf die Sie Zugriff haben.\n\nSo listen Sie Aufgaben für ein bestimmtes Repository auf:\n\n```shell copy\ncurl -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  -H \"Authorization: Bearer YOUR-TOKEN\" \\\n  https://api.github.com/agents/repos/OWNER/REPO/tasks\n```\n\nSo listen Sie Ihre Aufgaben in allen Repositorys auf:\n\n```shell copy\ncurl -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  -H \"Authorization: Bearer YOUR-TOKEN\" \\\n  https://api.github.com/agents/tasks\n```\n\n### Überprüfen des Status eines Vorgangs\n\nUm den Status einer bestimmten Aufgabe zu überprüfen, senden Sie eine `GET` Anforderung mit der Aufgaben-ID:\n\n```shell copy\ncurl -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  -H \"Authorization: Bearer YOUR-TOKEN\" \\\n  https://api.github.com/agents/repos/OWNER/REPO/tasks/TASK-ID\n```\n\nErsetzen Sie sie `TASK-ID` durch die ID der Aufgabe, die Sie überprüfen möchten. Sie können diese ID aus der Antwort abrufen, wenn Sie eine Aufgabe oder Listenaufgaben erstellen. Die Antwort enthält den aktuellen `state`-Vorgang, der eine von: `queued`, `in_progress`, `completed`, `failed`, `idle`, `waiting_for_user`, `timed_out` oder `cancelled` sein kann.\n\n## Verwendung der Issues-API\n\n> \\[!NOTE]\n> Diese Funktion befindet sich in Öffentliche Vorschau und kann Änderungen unterliegen.\n\nSie können Probleme Copilot entweder mit der GraphQL-API oder der REST-API zuweisen. Beide APIs unterstützen eine optionale Agent-Zuweisungseingabe zum Anpassen der Aufgabe:\n\n| GraphQL-Parameter    | REST-Parameter        | Description                                  |\n| -------------------- | --------------------- | -------------------------------------------- |\n| `targetRepositoryId` | `target_repo`         | Das Repository, in dem Copilot arbeiten wird |\n| `baseRef`            | `base_branch`         | Der Zweig, von dem Copilot abzweigen wird    |\n| `customInstructions` | `custom_instructions` | Zusätzliche Anweisungen für Copilot          |\n| `customAgent`        | `custom_agent`        | custom agent für die Aufgabe.                |\n| `model`              | `model`               | Das Modell für Copilot zur Verwendung        |\n\n### Verwenden der GraphQL-API\n\n> \\[!NOTE]\n> Sie müssen die `GraphQL-Features` Kopfzeile mit den Werten `issues_copilot_assignment_api_support` und `coding_agent_model_selection` beifügen.\n\nSie können die folgenden GraphQL-Mutationen verwenden, um Probleme zuzuweisen Copilot:\n\n* [`updateIssue`](/de/graphql/reference/issues#mutation-updateissue)\n* [`createIssue`](/de/graphql/reference/issues#mutation-createissue)\n* [`addAssigneesToAssignable`](/de/graphql/reference/issues#mutation-addassigneestoassignable)\n* [`replaceActorsForAssignable`](/de/graphql/reference/issues#mutation-replaceactorsforassignable)\n\n#### Erstellen und Zuweisen eines neuen Issues\n\n1. Stellen Sie sicher, dass Sie sich mit der API mit einem Benutzertoken authentifizieren, z. B. mit einem personal access tokenGitHub App Benutzer-zu-Server-Token.\n\n   > \\[!NOTE]\n   > Wenn Sie ein fine-grained personal access token verwenden, benötigt es die folgenden Berechtigungen, um Copilot einem Problem zuzuweisen:\n   >\n   > * Lesezugriff auf Metadaten\n   > * Lese- und Schreibzugriff auf Aktionen, Inhalte, Probleme und Pullanforderungen\n   >\n   > Falls ein personal access token (classic) verwendet wird, benötigt es den `repo`-Bereich, um Copilot einem Problem zuzuweisen.\n\n2. Überprüfen Sie, ob Copilot cloud agent im Repository aktiviert ist, indem Sie prüfen, ob die GraphQL-API des Repositories `suggestedActors`Copilot enthält. Ersetze `octo-org` durch die Person im Repositorybesitz und `octo-repo` durch den Repositorynamen.\n\n   ```graphql copy\n   query {\n     repository(owner: \"octo-org\", name: \"octo-repo\") {\n       suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) {\n         nodes {\n           login\n           __typename\n\n           ... on Bot {\n             id\n           }\n\n           ... on User {\n             id\n           }\n         }\n       }\n     }\n   }\n   ```\n\n   Wenn Copilot cloud agent für den Benutzer und im Repository aktiviert ist, weist der erste von der Abfrage zurückgegebene Knoten den `login` Wert `copilot-swe-agent`auf.\n\n3. Notiere den Wert `id` dieser Anmeldung.\n\n4. Rufe die globale GraphQL-ID des Repositorys ab, in dem du das Issue erstellen möchtest, ersetze `octo-org` durch die Person im Repositorybesitz und `octo-repo` durch den Repositorynamen.\n\n   ```graphql copy\n   query {\n     repository(owner: \"octo-org\", name: \"octo-repo\") {\n       id\n     }\n   }\n   ```\n\n5. Erstelle das Issue mit der `createIssue`-Mutation. Ersetze `REPOSITORY_ID` durch die im vorherigen Schritt zurückgegebene ID und `BOT_ID` durch die im Schritt davor zurückgegebene ID. Optional können Sie die `agentAssignment` Eingabe einschließen, um die Aufgabe anzupassen.\n\n   ```shell copy\n   gh api graphql -f query='mutation {\n     createIssue(input: {\n       repositoryId: \"REPOSITORY_ID\",\n       title: \"Implement comprehensive unit tests\",\n       body: \"DETAILS\",\n       assigneeIds: [\"BOT_ID\"],\n       agentAssignment: {\n         targetRepositoryId: \"REPOSITORY_ID\",\n         baseRef: \"main\",\n         customInstructions: \"Add comprehensive test coverage\",\n         customAgent: \"\",\n         model: \"\"\n       }\n     }) {\n       issue {\n         id\n         title\n         assignees(first: 10) {\n           nodes {\n             login\n           }\n         }\n       }\n     }\n   }' -H 'GraphQL-Features: issues_copilot_assignment_api_support,coding_agent_model_selection'\n   ```\n\n#### Zuweisen eines vorhandenen Issues\n\n1. Stellen Sie sicher, dass Sie sich mit der API mit einem Benutzertoken authentifizieren, z. B. mit einem personal access tokenGitHub App Benutzer-zu-Server-Token.\n\n2. Überprüfen Sie, ob Copilot cloud agent im Repository aktiviert ist, indem Sie prüfen, ob die GraphQL-API des Repositories `suggestedActors`Copilot enthält. Ersetze `octo-org` durch die Person im Repositorybesitz und `octo-repo` durch den Repositorynamen.\n\n   ```graphql copy\n   query {\n     repository(owner: \"monalisa\", name: \"octocat\") {\n       suggestedActors(capabilities: [CAN_BE_ASSIGNED], first: 100) {\n         nodes {\n           login\n           __typename\n\n           ... on Bot {\n             id\n           }\n\n           ... on User {\n             id\n           }\n         }\n       }\n     }\n   }\n   ```\n\n   Wenn Copilot cloud agent für den Benutzer und im Repository aktiviert ist, weist der erste von der Abfrage zurückgegebene Knoten den `login` Wert `copilot-swe-agent`auf.\n\n3. Rufen Sie die globale GraphQL-ID des Issues ab, das Sie Copilot zuweisen möchten. Ersetzen Sie `monalisa` durch den Repositorybesitzer, `octocat` durch den Namen und `9000` durch die Problemnummer.\n\n   ```graphql copy\n   query {\n     repository(owner: \"monalisa\", name: \"octocat\") {\n       issue(number: 9000) {\n         id\n         title\n       }\n     }\n   }\n   ```\n\n4. Weisen Sie das vorhandene Problem Copilot zu mit der Mutation `replaceActorsForAssignable`. Ersetzen Sie `ISSUE_ID` durch die ID, die aus dem vorherigen Schritt zurückgegeben wurde, `BOT_ID` durch die ID, die vor diesem Schritt zurückgegeben wurde, und `REPOSITORY_ID` durch die Repository-ID. Optional können Sie die `agentAssignment` Eingabe einschließen, um die Aufgabe anzupassen.\n\n   ```shell copy\n   gh api graphql -f query='mutation {\n     replaceActorsForAssignable(input: {\n       assignableId: \"ISSUE_ID\",\n       actorIds: [\"BOT_ID\"],\n       agentAssignment: {\n         targetRepositoryId: \"REPOSITORY_ID\",\n         baseRef: \"main\",\n         customInstructions: \"Fix the reported bug\",\n         customAgent: \"\",\n         model: \"\"\n       }\n     }) {\n       assignable {\n         ... on Issue {\n           id\n           title\n           assignees(first: 10) {\n             nodes {\n               login\n             }\n           }\n         }\n       }\n     }\n   }' -H 'GraphQL-Features: issues_copilot_assignment_api_support,coding_agent_model_selection'\n   ```\n\n5. Alternativ können Sie die `updateIssue` Mutation verwenden, um ein vorhandenes Problem zu aktualisieren und es zuzuweisen Copilot. Ersetzen Sie `ISSUE_ID` mit der Problem-ID und `BOT_ID` mit der Bot-ID.\n\n   ```shell copy\n   gh api graphql -f query='mutation {\n     updateIssue(input: {\n       id: \"ISSUE_ID\",\n       assigneeIds: [\"BOT_ID\"],\n       agentAssignment: {\n         targetRepositoryId: \"REPOSITORY_ID\",\n         baseRef: \"main\",\n         customInstructions: \"Update feature implementation\",\n         customAgent: \"\",\n         model: \"\"\n       }\n     }) {\n       issue {\n         id\n         title\n         assignees(first: 10) {\n           nodes {\n             login\n           }\n         }\n       }\n     }\n   }' -H 'GraphQL-Features: issues_copilot_assignment_api_support,coding_agent_model_selection'\n   ```\n\n6. Sie können auch die `addAssigneesToAssignable` Mutation verwenden, um Copilot zu einem vorhandenen Problem hinzuzufügen, während andere Bearbeiter beibehalten werden. Ersetzen Sie `ISSUE_ID` mit der Problem-ID und `BOT_ID` mit der Bot-ID.\n\n   ```shell copy\n   gh api graphql -f query='mutation {\n     addAssigneesToAssignable(input: {\n       assignableId: \"ISSUE_ID\",\n       assigneeIds: [\"BOT_ID\"],\n       agentAssignment: {\n         targetRepositoryId: \"REPOSITORY_ID\",\n         baseRef: \"main\",\n         customInstructions: \"Collaborate on this task\",\n         customAgent: \"\",\n         model: \"\"\n       }\n     }) {\n       assignable {\n         ... on Issue {\n           id\n           title\n           assignees(first: 10) {\n             nodes {\n               login\n             }\n           }\n         }\n       }\n     }\n   }' -H 'GraphQL-Features: issues_copilot_assignment_api_support,coding_agent_model_selection'\n   ```\n\n### Verwenden der REST-API\n\nSie können die folgenden REST-API-Endpunkte verwenden, um Probleme zuzuweisen Copilot:\n\n* [Zugewiesene Personen zu einem Issue hinzufügen](/de/rest/issues/assignees#add-assignees-to-an-issue)\n* [Erstellen eines Problems](/de/rest/issues/issues#create-an-issue)\n* [Aktualisieren eines Problems](/de/rest/issues/issues#update-an-issue)\n\n#### Hinzufügen von Zuständigen zu einem vorhandenen Vorgang\n\n```shell copy\ngh api \\\n  --method POST \\\n  -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  /repos/OWNER/REPO/issues/ISSUE_NUMBER/assignees \\\n  --input - <<< '{\n  \"assignees\": [\"copilot-swe-agent[bot]\"],\n  \"agent_assignment\": {\n    \"target_repo\": \"OWNER/REPO\",\n    \"base_branch\": \"main\",\n    \"custom_instructions\": \"\",\n    \"custom_agent\": \"\",\n    \"model\": \"\"\n  }\n}'\n```\n\n#### Erstellen eines neuen Problems\n\n```shell copy\ngh api \\\n  --method POST \\\n  -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  /repos/OWNER/REPO/issues \\\n  --input - <<< '{\n  \"title\": \"Issue title\",\n  \"body\": \"Issue description.\",\n  \"assignees\": [\"copilot-swe-agent[bot]\"],\n  \"agent_assignment\": {\n    \"target_repo\": \"OWNER/REPO\",\n    \"base_branch\": \"main\",\n    \"custom_instructions\": \"\",\n    \"custom_agent\": \"\",\n    \"model\": \"\"\n  }\n}'\n```\n\n#### Aktualisieren eines vorhandenen Problems\n\n```shell copy\ngh api \\\n  --method PATCH \\\n  -H \"Accept: application/vnd.github+json\" \\\n  -H \"X-GitHub-Api-Version: 2022-11-28\" \\\n  /repos/OWNER/REPO/issues/ISSUE_NUMBER \\\n  --input - <<< '{\n  \"assignees\": [\"copilot-swe-agent[bot]\"],\n  \"agent_assignment\": {\n    \"target_repo\": \"OWNER/REPO\",\n    \"base_branch\": \"main\",\n    \"custom_instructions\": \"\",\n    \"custom_agent\": \"\",\n    \"model\": \"\"\n  }\n}'\n```\n\n## Weiterführende Lektüre\n\n* [REST-API-Endpunkte für Agentaufgaben](/de/rest/agent-tasks/agent-tasks)\n* [Informationen zu GitHub Copilot Cloud-Agent](/de/copilot/concepts/agents/cloud-agent/about-cloud-agent)\n* [Sitzungen mit GitHub Copilot starten](/de/copilot/how-tos/use-copilot-agents/cloud-agent/start-copilot-sessions)"}