Skonfiguruj integrację GitHub
Ten poradnik obejmuje części konfiguracji właściwe dla GitHuba. GitHub to jeden z trzech obsługiwanych hostów kodu — jak połączyć GitLab lub Bitbucket i jak jeden obszar roboczy łączy je wszystkie, opisuje Połącz host kodu.
Wymagania wstępne
Dział zatytułowany „Wymagania wstępne”- Konto GitHub z dostępem do repozytoriów, na których chcesz pracować
- Albo GitHub App zarejestrowana dla Twojego serwera (zobacz
Utwórz GitHub App), aby móc się
zalogować, albo osobisty token dostępu z
repoiread:orgdo wklejenia
Zaloguj się przez GitHub
Dział zatytułowany „Zaloguj się przez GitHub”Przepływ urządzenia: GitHub pokazuje krótki kod, zatwierdzasz go na github.com, a serwer otrzymuje poświadczenie — żaden adres URL wywołania zwrotnego, żaden port, nic do wystawienia na zewnątrz. Dostępne zawsze, gdy serwer ma identyfikator klienta, który oficjalna kompilacja już zawiera.
- Przejdź do Ustawienia → Obszar roboczy → Profil i tożsamość → Hosting kodu (albo do pierwszego kroku konfiguracji)
- W wierszu GitHub kliknij Zaloguj się przez GitHub
- Okno dialogowe pokazuje ośmioznakowy kod i otwiera github.com/login/device w Twojej przeglądarce. Kod jest już w Twoim schowku
- Wklej go, zatwierdź aplikację i wróć. Wiersz sam zmieni się na „Zalogowano jako your-username”
Okno dialogowe można zamknąć, kiedy kończysz w przeglądarce — serwer odpytuje dalej, aż kod wygaśnie (około 15 minut), więc logowanie i tak się dokona.
Albo wklej token
Dział zatytułowany „Albo wklej token”Rozwiązanie zapasowe, gdy serwer nie ma aplikacji, gdy aplikacja nie jest zainstalowana na koncie, którego potrzebujesz, albo gdy po prostu wolisz użyć tokenu PAT.
- Przejdź do Ustawienia → Obszar roboczy → Profil i tożsamość → Hosting kodu
- W wierszu GitHub kliknij Dodaj token
- Wklej token z
repoiread:org(klasyczny) i zapisz. Token drobnoziarnisty wymaga uprawnień repozytorium Contents i Pull requests (odczyt i zapis) oraz Checks i Actions (odczyt).
Token jest sprawdzany już przy zapisie, więc wiersz może podać konto, do którego należy. Kliknij Rozłącz, aby go usunąć.
Punkt kontrolny: wiersz GitHub głosi „Zalogowano jako your-username”. Gdy odpowiadające poświadczenie nie jest Twoje, przyrostek wskazuje jego źródło — „przez aplikację tego serwera” albo „ze środowiska”.
Co daje Ci ta integracja
Dział zatytułowany „Co daje Ci ta integracja”| Możliwość | Jak |
|---|---|
| Lista i szczegóły PR-ów | Interfejs REST API GitHuba, z serwera, na tożsamości aplikacji albo na Twoich własnych poświadczeniach |
| Uruchomienia kontroli | Interfejs Checks API GitHuba |
| Publikowanie recenzji | Krok wymagający zatwierdzenia przez użytkownika, który publikuje Twoją recenzję w PR |
| Rejestracja repozytoriów | Kopia robocza jest przyjmowana, jeśli jej zdalne repozytorium origin wskazuje na github.com — albo na gitlab.com / bitbucket.org |
| Dostęp agentów do GitHuba | Broker poświadczeń wstrzykuje token tylko do odczytu jako GH_TOKEN / GITHUB_TOKEN; push przechodzi przez Control Center |
| Sygnały powiadomień | Odpytywanie po stronie serwera Twojej skrzynki powiadomień GitHub wywołuje „Wzmianka w pull requeście” i „Prośba o recenzję” |
| Profile użytkowników | Karty profili po najechaniu i filtrowanie PR-ów według autora |
Niektóre ścieżki używają interfejsu GraphQL API zamiast REST, gdy jest to tańsze — aktywność gałęzi dla selektora tworzenia PR-a oraz bieżący stan recenzji, który decyduje, czy powiadomienie o prośbie o recenzję jest nadal oczekujące.
Uważaj na awarie GitHuba
Dział zatytułowany „Uważaj na awarie GitHuba”Pasek tytułu pokazuje wskaźnik statusu, gdy któryś dostawca działa ze zmniejszoną sprawnością — obejmuje to GitHuba, Claude, OpenAI i Kimi. Jest ukryty, dopóki wszystko działa poprawnie — obecność wskaźnika sygnalizuje problem, nie jego brak.
Kliknij wskaźnik, aby otworzyć panel wysuwany ze stanem każdego dostawcy i przyciskiem odświeżania. Statusy odświeżają się same co dwie minuty.
Wiedz, jak agenci działają na GitHubie
Dział zatytułowany „Wiedz, jak agenci działają na GitHubie”- Agent pracujący w worktree GitHuba zawsze otrzymuje token GitHub tylko do odczytu. Push przechodzi przez Control Center, który pyta regułę Push do zdalnego repozytorium, a potem przekazuje go z tokenem zapisu, którego agent nigdy nie posiada. Zobacz Skonfiguruj polityki sandboxa
- Commity tworzone przez agenta mają autora samego agenta — nazwę
wyświetlaną plus
(agent), pod syntetycznym adresem opartym na identyfikatorze agenta — nigdy nie człowieka. Osoba, która o nie poprosiła, jest ujęta w stopceCo-Authored-By - Gdy skonfigurowano GitHub App, broker tworzy przy każdym uruchomieniu
drobnoziarniste tokeny instalacji o zasięgu repozytorium, ważne około godziny,
zamiast przekazywać szeroki token. Instalacja jest ustalana na podstawie
właściciela repozytorium danego uruchomienia, więc jedna aplikacja
zainstalowana na kilku kontach obejmuje właściwe z nich — to, którego dotknie
uruchomienie. Bez aplikacji agenci otrzymują token ze środowiska, którego nie
da się ograniczyć do odczytu: reguła push wiąże wtedy
git push, ale nie kod, który używa tokenu bezpośrednio - Token zawsze należy do brokera, nigdy do członka, który zlecił uruchomienie. Token serwera jest wstrzymywany dla uruchomienia działającego w imieniu członka, który nie jest właścicielem i nie połączył GitHuba
Rozwiązywanie problemów
Dział zatytułowany „Rozwiązywanie problemów”Lista PR-ów jest pusta i informuje, że GitHub nie jest połączony
Dział zatytułowany „Lista PR-ów jest pusta i informuje, że GitHub nie jest połączony”Nie masz poświadczenia GitHub na tym serwerze. Zaloguj się albo wklej token w Hostingu kodu. Repozytoria na innych forge pozostają bez zmian — tylko te z GitHuba nie wnoszą nic.
Wiersz oferuje „Dodaj token”, ale nie „Zaloguj się przez GitHub”
Dział zatytułowany „Wiersz oferuje „Dodaj token”, ale nie „Zaloguj się przez GitHub””Serwer nie ma identyfikatora klienta — to normalny stan dla kompilacji ze źródeł, ponieważ poświadczenia są wbudowywane wyłącznie w oficjalne kompilacje. Zobacz Utwórz GitHub App: zajmuje to około dwóch minut i raz musi to zrobić tylko właściciel serwera.
Okno logowania informuje, że dostawca nie zwrócił kodu urządzenia
Dział zatytułowany „Okno logowania informuje, że dostawca nie zwrócił kodu urządzenia”GitHub App istnieje, ale jej pole wyboru Device flow jest wyłączone. Włącz je w ustawieniach aplikacji (General → Device flow) i spróbuj ponownie.
Wiersz mówi „przez aplikację tego serwera”, choć oczekujesz własnego konta
Dział zatytułowany „Wiersz mówi „przez aplikację tego serwera”, choć oczekujesz własnego konta”Nie zalogowałeś się; to, co widzisz, to odpowiadająca tożsamość aplikacji serwera. Kliknij Zaloguj się przez GitHub w tym wierszu.
Drobnoziarnisty PAT nie pokazuje przycisku scalania ani stanu kontroli
Dział zatytułowany „Drobnoziarnisty PAT nie pokazuje przycisku scalania ani stanu kontroli”Token wymaga Contents i Pull requests (odczyt i zapis) oraz Checks i Actions (odczyt). Po zmianie wklej go ponownie w Hostingu kodu.
Dodanie repozytorium zostaje odrzucone
Dział zatytułowany „Dodanie repozytorium zostaje odrzucone”Rejestracja wymaga wszystkich trzech warunków: ścieżka znajduje się w drzewie
roboczym Gita, repozytorium ma zdalne origin, a to zdalne repozytorium wskazuje
na obsługiwany forge (github.com, gitlab.com lub bitbucket.org). Zobacz
Dodaj repozytoria do obszaru roboczego.
Po intensywnym użytkowaniu wszystko na jakiś czas przestaje działać
Dział zatytułowany „Po intensywnym użytkowaniu wszystko na jakiś czas przestaje działać”To wyłącznik bezpieczeństwa przy limicie żądań. GitHub sygnalizuje swój główny
limit odpowiedzią 403 z nagłówkiem x-ratelimit-remaining: 0 i czasem resetu;
gdy klient ją zobaczy, odrzuca kolejne żądania lokalnie, bez wywołania
sieciowego, aż upłynie okno — dzięki temu burza ponowień nie pogłębia limitu.
Przejściowe błędy są ponawiane maksymalnie trzy razy z wykładniczym opóźnieniem,
z poszanowaniem nagłówka retry-after.