OpenAI
Ta strona została przetłumaczona maszynowo. Wyświetl oryginalny artykuł w języku angielskim.

Importowanie i synchronizowanie katalogów wtyczek z GitHub

Dowiedz się, jak importować katalog wtyczek z GitHub, zarządzać dostępem w przestrzeni roboczej i aktualizować wtyczki.

Zaktualizowano: 24 hours ago

Przegląd

Administratorzy przestrzeni roboczej mogą zaimportować katalog wtyczek z GitHuba do katalogu swojej przestrzeni roboczej. Katalog wtyczek to plik JSON zawierający listę wtyczek do zaimportowania. Po imporcie codzienna synchronizacja aktualizuje wtyczki zgodnie ze zmianami w repozytorium.


Synchronizacja katalogu importuje zawartość wtyczek — nie łączy kont członków przestrzeni roboczej ani nie przyznaje dostępu do aplikacji zawartych we wtyczce.


Wprowadzenie do wtyczek i zawartych w nich aplikacji znajdziesz w artykule Wtyczki w ChatGPT i Codex.

Zanim zaczniesz

  • Użyj konta GitHub z uprawnieniami do odczytu repozytorium katalogu wtyczek oraz wszystkich innych repozytoriów, do których katalog się odwołuje. Obsługiwane są publiczne i prywatne repozytoria w serwisie github.com.

  • Uzyskaj wszelkie zgody organizacji w GitHubie wymagane, aby konto używane do importu miało dostęp do tych repozytoriów.

  • Sprawdź zawartość repozytorium. Import przetwarza wszystkie prawidłowe wtyczki bez osobnego zatwierdzania każdej z nich, a przyszłe synchronizacje mogą dodawać nowe wtyczki.

Nowe wtyczki mają początkowo zasady instalacji ustawione na Dostępna i wymagają uwierzytelnienia przy instalacji. Nowe katalogi wtyczek mają włączoną automatyczną codzienną synchronizację. Po imporcie sprawdź ustawienia każdej wtyczki w przestrzeni roboczej i wymagane przez nią aplikacje.

Importowanie katalogu wtyczek

  1. Przejdź do Konsoli administratora, wybierz odpowiednią przestrzeń roboczą ChatGPT i otwórz sekcję Wtyczki. Następnie wybierz Dodaj, a potem Importuj katalog wtyczek.

  2. W polu Źródło wpisz adres URL repozytorium, np. https://github.com/example/team-plugins. Użyj wyłącznie adresu URL repozytorium, bez adresu gałęzi ani folderu.

  3. Jeśli katalog wtyczek znajduje się w podkatalogu, wpisz ten podkatalog w polu Ścieżka. Na przykład dla team-tools/.agents/plugins/marketplace.json wpisz team-tools. W przypadku katalogu głównego repozytorium pozostaw pole Ścieżka puste. Nie wpisuj nazwy pliku manifestu.

  4. Opcjonalnie wypełnij pole Gałąź, tag lub commit. Pozostaw je puste, aby użyć domyślnej gałęzi repozytorium. Użyj gałęzi, aby otrzymywać przyszłe commity. Wskazanie konkretnego commitu powoduje pozostanie przy tej wersji.

  5. Wybierz Importuj katalog wtyczek i autoryzuj dostęp do GitHuba, gdy pojawi się prośba.

  6. Sprawdź Wyniki importu, a następnie otwórz każdą zaimportowaną wtyczkę, aby skonfigurować jej zasady instalacji i wymagane aplikacje.

Pierwszy import bardzo dużych katalogów wtyczek może potrwać do 1 godziny. Kolejne codzienne synchronizacje trwają zwykle kilka minut.

Jeśli nie można zaimportować wtyczki, raport wyjaśnia przyczynę błędu. Pozostałe prawidłowe wtyczki nadal można zaimportować.

Obsługiwane formaty

Wybrany katalog musi zawierać manifest w obsługiwanym formacie:

  • .agents/plugins/marketplace.json dla katalogu wtyczek Codex.

  • .claude-plugin/marketplace.json dla katalogu wtyczek zgodnego z Claude.

  • .claude-plugin/plugin.json dla samodzielnej wtyczki Claude, gdy nie ma manifestu katalogu wtyczek.

Wpisy w katalogu wtyczek mogą odwoływać się do folderów wtyczek w tym samym repozytorium lub do obsługiwanych źródeł w repozytoriach GitHuba. Import do przestrzeni roboczej nie obsługuje innych usług hostingu Git ani źródeł w rejestrach pakietów, takich jak npm.

Obsługiwane formaty, przykłady JSON i pola źródeł opisano w artykule Zarządzanie wtyczkami.

Konfigurowanie dostępu w przestrzeni roboczej

GitHub dostarcza zawartość wtyczek, a ustawienia przestrzeni roboczej określają zasady instalacji i uwierzytelniania. Import i synchronizacja nie stosują wartości zasad z repozytorium, takich jak AVAILABLE czy ON_USE. Skonfiguruj te ustawienia dla każdej wtyczki w swojej przestrzeni roboczej.


W sekcji Zasady instalacji wybierz opcję Dostępna lub Zainstalowana dla każdej uprawnionej roli. Wymagane aplikacje również muszą być włączone, a członkowie muszą mieć dostęp do połączonej usługi i przejść wymagane uwierzytelnianie.


Synchronizacja aktualizacji wtyczki lub przeniesienie zarządzania istniejącą wtyczką do GitHuba zachowuje jej zasady w przestrzeni roboczej. Import wtyczki nie przyznaje dostępu do aplikacji ani nie łączy kont członków.


Informacje o nawigacji po przestrzeni roboczej, dostępie do aplikacji i ustawieniach administracyjnych przestrzeni roboczej znajdziesz w artykule Ustawienia administracyjne, bezpieczeństwo i zgodność wtyczek i aplikacji.

Aktualizowanie wtyczek

Nowe katalogi wtyczek codziennie sprawdzają dostępność aktualizacji. Aby uruchomić aktualizację bez czekania na automatyczną synchronizację:

  1. Przejdź do Konsoli administratora, wybierz odpowiednią przestrzeń roboczą ChatGPT i otwórz sekcję Wtyczki.

  2. Otwórz sekcję Katalogi wtyczek i wybierz katalog.

  3. Wybierz Synchronizuj teraz.

Synchronizacja może dodawać nowe pozycje z katalogu i aktualizować istniejące wtyczki. Sprawdzaj zmiany w repozytorium przed ich scaleniem, ponieważ automatyczna synchronizacja może importować nowe wtyczki bez osobnego kroku importu.

Sprawdzanie wyników synchronizacji

Po synchronizacji sprawdź jej stan i zapisany raport. Stan Zakończono — liczba błędów: N oznacza, że synchronizacja się zakończyła, ale nie udało się przetworzyć niektórych wtyczek.


Jeśli aktualizacja istniejącej wtyczki jest nieprawidłowa, zachowywana jest jej ostatnia działająca wersja. Pozostałe prawidłowe aktualizacje nadal mogą zostać ukończone. Napraw zgłoszony problem w GitHubie, a następnie wybierz Synchronizuj teraz, aby spróbować ponownie.


Jeśli w widoku administratora przy wtyczce zaimportowanej pojedynczo widoczna jest opcja Odśwież, użyj jej, aby odświeżyć tę wtyczkę. Opcja Odśwież listę wtyczek tylko ponownie wczytuje wyświetlaną listę — nie synchronizuje jej z GitHubem.

Zasady usuwania wpisów i katalogów

Usunięcie wpisu z repozytorium nie usuwa jego kopii zaimportowanej do przestrzeni roboczej. Wtyczka otrzymuje oznaczenie Nie ma już w źródle.


Usunięcie katalogu wtyczek w ChatGPT usuwa wszystkie zaimportowane z niego wtyczki. Nie usuwaj katalogu wtyczek, aby ponownie połączyć GitHuba lub zmienić właściciela.

Ponowne łączenie lub zmiana dostępu do GitHuba

Synchronizacja katalogu wtyczek korzysta z połączenia z GitHubem administratora, który go zaimportował. To konto musi zachować dostęp do repozytorium katalogu wtyczek i wszystkich repozytoriów, do których katalog się odwołuje.

Ponowne łączenie pierwotnego konta

  1. Upewnij się, że konto GitHub użyte do importu nadal ma dostęp do wszystkich wymaganych repozytoriów.

  2. Poproś administratora, który pierwotnie zaimportował katalog wtyczek, o otwarcie wtyczki GitHub w ChatGPT i ponowne połączenie swojego konta.

Przekazywanie zarządzania nowemu administratorowi

Nowy administrator przestrzeni roboczej może zaimportować ten sam katalog wtyczek, korzystając z własnego połączenia z GitHubem:

  1. Przejdź do Konsoli administratora, wybierz odpowiednią przestrzeń roboczą ChatGPT i otwórz sekcję Wtyczki. Następnie wybierz Dodaj > Importuj katalog wtyczek.

  2. Wpisz w polach Źródło, Ścieżka i Gałąź, tag lub commit te same wartości, których użyto dla istniejącego katalogu wtyczek.

  3. Wybierz Importuj katalog wtyczek i autoryzuj dostęp do GitHuba, gdy pojawi się prośba.

Przyszłe synchronizacje będą korzystać z połączenia z GitHubem nowego administratora. Konto nowego administratora musi mieć uprawnienia do odczytu repozytorium katalogu wtyczek i wszystkich repozytoriów, do których katalog się odwołuje.

Przenoszenie zarządzania istniejącą wtyczką do GitHuba

Za pomocą katalogu wtyczek możesz zarządzać istniejącą wtyczką w przestrzeni roboczej, która została przesłana jako archiwum lub nie jest jeszcze zarządzana ze źródła w GitHubie. Istniejąca wtyczka musi znajdować się w tej samej przestrzeni roboczej i mieć tę samą nazwę. Nie można w ten sposób przejąć zarządzania wtyczką, którą zarządza inne źródło w GitHubie.


Aby wskazać istniejącą wtyczkę w katalogu:

  1. Przejdź do Konsoli administratora, wybierz odpowiednią przestrzeń roboczą ChatGPT i otwórz sekcję Wtyczki. Otwórz wtyczkę.

  2. Skopiuj identyfikator wtyczki znajdujący się po /admin/plugins/ w jej adresie URL.

  3. Dodaj ten identyfikator jako pluginId obok name i source w odpowiednim wpisie tablicy plugins katalogu wtyczek. Nie dodawaj go do pliku plugin.json wtyczki.

Wtyczka zachowuje swój identyfikator, ustawienia udostępniania i zasady obowiązujące w przestrzeni roboczej. GitHub staje się źródłem przyszłych aktualizacji, więc późniejsze przesłanie archiwum nie może go zastąpić.


Przykład migracji i wymagania znajdziesz w artykule Zarządzanie wtyczkami.

Dodawanie odwołania do istniejącej aplikacji

Wtyczka może odwoływać się do istniejącej aplikacji w pliku .app.json w katalogu głównym wtyczki. Uwzględnij kropkę na początku nazwy pliku i użyj identyfikatora aplikacji zamiast identyfikatora wtyczki. W przypadku wtyczki natywnej ustaw pole apps w pliku .codex-plugin/plugin.json na ./.app.json.


Odwołanie nie tworzy aplikacji ani nie przyznaje dodatkowych uprawnień. Nadal obowiązują dotychczasowe zasady dostępu do aplikacji w przestrzeni roboczej, uwierzytelniania i kontroli działań oraz uprawnienia do połączonych usług.


Opis formatu JSON znajdziesz w artykule Zarządzanie wtyczkami.

Co oznacza etykieta „Tylko na komputerze”

Wtyczka z etykietą Tylko na komputerze nie może działać w przeglądarkowej wersji ChatGPT. Zaimportowane wtyczki mogą otrzymać tę etykietę, jeśli deklarują serwery MCP, na przykład w pliku mcp.json lub .mcp.json, nawet gdy serwer korzysta ze zdalnego adresu URL HTTPS.


Samo dodanie odwołania w pliku .app.json nie usuwa etykiety Tylko na komputerze. Każda aplikacja, do której wtyczka się odwołuje, musi nadal być dostępna dla roli danego członka. Obowiązują też standardowe wymagania tej aplikacji dotyczące dostępu i uwierzytelniania.

Czy ten artykuł był pomocny?