Przejdź do głównej zawartości

GitLab

Integracja z platformą GitLab umożliwia Speedwave bezpośrednią współpracę z serwisem GitLab.com oraz instalacjami self-hosted: przeglądanie kodu, analizę git blame na poziomie wierszy, obsługę merge requestów, inspekcję logów potoków CI/CD oraz zarządzanie zgłoszeniami.

GitLab działa w odrębnym kontenerze workera. Dane konfiguracyjne znajdują się w katalogu ~/.speedwave/tokens/<projekt>/gitlab/ (zawierając adres instancji oraz token Personal Access Token) i są montowane do kontenera w trybie tylko do odczytu.

Adres instancji jest rozwiązywany w kolejności: zapisany plik konfiguracyjny, zmienna środowiskowa GITLAB_URL lub domyślny adres https://gitlab.com.

Żądania z sesji Claude trafiają przez bezstanowy Tool Gateway bezpośrednio do workera GitLab.

Worker GitLab udostępnia 46 operacji:

NarzędzieZakres działania
listProjectIds, getProjectFullLista dostępnych projektów oraz odczyt pełnych metadanych wybranego repozytorium.
searchCodeWyszukiwanie kodu w dostępnych projektach lub pojedynczym repozytorium.
getTree, getFilePrzeglądanie drzewa plików oraz odczyt zawartości pliku.
getBlameOdczyt historii modyfikacji poszczególnych linii kodu (git blame).
listBranches, getBranch, compareBranchesWykaz gałęzi, pobieranie szczegółów oraz porównywanie commitów między gałęziami.
createBranchTworzenie nowej gałęzi z podanej referencji.
deleteBranchUsuwanie niechronionej gałęzi.
listCommits, listBranchCommits, getCommitDiffPrzegląd historii commitów z filtrami oraz pobieranie ujednoliconych diffów.
searchCommitsWyszukiwanie w treściach wiadomości commitów.
NarzędzieZakres działania
listMrIds, getMrFull, getMrChangesPrzegląd merge requestów, odczyt pełnych danych oraz pobieranie diffa zmian.
createMergeRequest, updateMergeRequestTworzenie nowych merge requestów oraz edycja istniejących.
approveMergeRequestZatwierdzanie merge requestów.
mergeMergeRequestScalanie merge requestów z opcją squash i usuwania gałęzi źródłowej.
listMrCommits, listMrPipelinesWykaz commitów i potoków powiązanych z merge requestem.
listMrNotes, createMrNoteOdczyt i dodawanie komentarzy ogólnych pod merge requestem.
listMrDiscussions, createMrDiscussionOdczyt oraz inicjowanie wątków dyskusyjnych w przeglądzie zmian.
NarzędzieZakres działania
listPipelineIds, getPipelineFullLista wykonań potoków CI oraz odczyt statusu zadań.
getJobLogPobieranie logów konsolowych wybranego zadania CI.
retryPipelinePonowienie nieudanego potoku CI/CD.
triggerPipelineRęczne uruchomienie potoku na wybranej gałęzi.
listArtifacts, downloadArtifactPrzegląd i pobieranie artefaktów wygenerowanych w zadaniach.
deleteArtifactsCzyszczenie archiwów artefaktów.
listIssues, getIssuePrzegląd i pobieranie szczegółów zgłoszeń w projekcie.
createIssue, updateIssue, closeIssueTworzenie, edycja oraz zamykanie zgłoszeń.
listLabels, createLabelZarządzanie etykietami projektu.
createTag, deleteTagTworzenie i usuwanie tagów Git.
createReleaseTworzenie oficjalnych wydań GitLab Releases na podstawie tagów.
  1. W aplikacji Desktop otwórz projekt i przejdź do widoku Integracje -> GitLab.
  2. Wprowadź Adres GitLaba (https://gitlab.com lub adres własnego serwera https://gitlab.example.com).
  3. Wygeneruj token Personal Access Token (prefiks glpat-) z uprawnieniami api, read_repository oraz write_repository w profilu GitLab.
  4. Wklej token w formularzu i zapisz ustawienia.

Worker GitLaba operuje wyłącznie na swoim tokenie zamontowanym w trybie tylko do odczytu. Tool Gateway nie przechowuje poświadczeń. Wszelkie operacje podlegają uprawnieniom konta powiązanego z tokenem oraz regułom chronionych gałęzi i tagów w GitLabie. Szczegóły znajdziesz w rozdziale Zarządzanie poświadczeniami.