Zamiast samodzielnie programować wszystkie etapy procesu, możemy opisać zadanie w języku naturalnym, korzystając z pliku Markdown.
Przykładowo możemy poprosić agenta AI o:
Analizowanie nieudanych testów w procesie CI.
Identyfikowanie potencjalnych przyczyn błędów.
Proponowanie nowych testów jednostkowych.
Sprawdzanie jakości zmian w Pull Requestach.
Aktualizowanie dokumentacji technicznej.
Analizowanie zgłoszeń błędów i sugerowanie ich kategoryzacji.
Przygotowywanie raportów dotyczących aktywności w repozytorium.
Agent wykonuje swoje zadania w środowisku GitHub Actions, wykorzystując dostępne narzędzia i uprawnienia.
Co ciekawe, rozwiązanie nie ogranicza się wyłącznie do GitHub Copilot. Obsługiwane są również inne silniki AI, w tym OpenAI Codex, Claude Code i Google Gemini.
Jak działa GitHub Agentic Workflows?
Mechanizm działania jest stosunkowo prosty, choć za kulisami wykorzystuje kilka zaawansowanych technologii.
Na początku programista przygotowuje plik Markdown, w którym określa zadanie do wykonania oraz konfigurację automatyzacji.
Plik składa się z dwóch części.
Pierwsza zawiera konfigurację YAML, która określa między innymi moment uruchomienia automatyzacji, wymagane uprawnienia oraz dostępne narzędzia.
Druga część zawiera instrukcje dla agenta AI zapisane w zwykłym języku.
Następnie narzędzie gh aw compile przekształca definicję w standardowy workflow GitHub Actions.
Po uruchomieniu agent otrzymuje odpowiedni kontekst i rozpoczyna wykonywanie zadania.
Wyobraźmy sobie następujący scenariusz.
Programista wprowadza zmiany w aplikacji internetowej i wysyła je do repozytorium GitHub. Uruchamia się standardowy proces CI, w którym wykonywane są automatyczne testy.
Niestety jeden z testów kończy się niepowodzeniem.
W tradycyjnym podejściu programista lub tester musi przeanalizować logi, znaleźć przyczynę błędu i zdecydować, jakie działania podjąć.
Dzięki GitHub Agentic Workflows można przygotować automatyzację, która po wykryciu problemu uruchomi agenta AI.
Agent może przeanalizować wyniki testów, zapoznać się z odpowiednimi fragmentami kodu i przygotować wyjaśnienie potencjalnej przyczyny problemu.
Może również zaproponować odpowiednie zmiany, które następnie zostaną zweryfikowane przez człowieka.
To przykładowe zastosowanie, a nie gwarancja, że agent poprawnie rozwiąże każdy błąd. Skuteczność zależy od konfiguracji, dostępnych danych i rodzaju problemu.
GitHub Agentic Workflows a automatyzacja testów oprogramowania
Jednym z najciekawszych zastosowań nowego rozwiązania jest obszar Quality Assurance.
Automatyzacja testów od lat stanowi istotny element procesu wytwarzania oprogramowania. Narzędzia takie jak Playwright, Cypress czy Selenium pozwalają weryfikować działanie aplikacji bez konieczności ręcznego wykonywania każdego scenariusza.
Jednak samo uruchomienie testów to tylko część pracy.
Testerzy muszą również analizować wyniki, aktualizować scenariusze, identyfikować niestabilne testy i dbać o odpowiedni poziom pokrycia kodu.
Właśnie tutaj pojawiają się interesujące możliwości zastosowania agentów AI.
1. Automatyczna analiza nieudanych testów
Agent AI może analizować logi i rezultaty testów uruchamianych w GitHub Actions.
Zamiast otrzymywać jedynie informację o niepowodzeniu testu, zespół może uzyskać dodatkowe wyjaśnienie możliwej przyczyny problemu.
Przykładowo agent może wskazać, że błąd wystąpił po zmianie nazwy elementu interfejsu albo że test próbuje odwołać się do nieistniejącego zasobu.
Pozwala to ograniczyć czas poświęcany na wstępną analizę błędów.
2. Wsparcie w tworzeniu nowych testów
Kolejnym zastosowaniem jest analizowanie zmian w kodzie i sugerowanie dodatkowych przypadków testowych.
Załóżmy, że programista wprowadza nową funkcjonalność odpowiedzialną za obliczanie rabatów w sklepie internetowym.
Agent AI może przeanalizować zmodyfikowany kod oraz istniejące testy, a następnie zaproponować dodatkowe scenariusze uwzględniające przypadki brzegowe.
W zależności od konfiguracji może również przygotować propozycję nowych testów.
Oczywiście wygenerowane rozwiązania nadal wymagają weryfikacji pod kątem poprawności i rzeczywistych wymagań biznesowych.
3. Wykrywanie potencjalnych luk w pokryciu testami
Agenci AI mogą także wspierać analizowanie obszarów aplikacji, które nie zostały wystarczająco przetestowane.
Na podstawie istniejących testów, zmian w kodzie oraz dostępnych raportów mogą sugerować, które scenariusze warto rozszerzyć.
Jest to szczególnie interesujące w większych projektach, gdzie utrzymywanie kompletnego zestawu testów bywa czasochłonne.
Warto jednak pamiętać, że agent nie zastępuje narzędzi mierzących pokrycie kodu ani nie gwarantuje wykrycia wszystkich brakujących scenariuszy.
Czy GitHub Agentic Workflows zastąpi GitHub Actions?
Nie. I jest to bardzo istotna kwestia.
GitHub Agentic Workflows nie zastępuje GitHub Actions, lecz rozszerza jego możliwości o zadania wymagające interpretacji i podejmowania decyzji.
Tradycyjne workflow nadal doskonale sprawdzają się podczas kompilowania aplikacji, uruchamiania testów, przeprowadzania analizy statycznej czy wdrażania nowych wersji oprogramowania.
Są to procesy, w których oczekujemy przewidywalnych, powtarzalnych rezultatów.
Z kolei agenci AI mogą zajmować się czynnościami wymagającymi rozumowania.
Dobrym przykładem jest różnica pomiędzy uruchomieniem testów a analizą przyczyn ich niepowodzenia.
GitHub Actions może automatycznie uruchomić zestaw testów Playwright. Agent AI może natomiast przeanalizować wyniki tego procesu i zasugerować, dlaczego określony scenariusz przestał działać.
Oba rozwiązania mogą więc współpracować, tworząc bardziej zaawansowany proces automatyzacji.
Bezpieczeństwo agentów AI – czy można im zaufać?
Jednym z największych wyzwań związanych z agentami AI jest zapewnienie odpowiedniego poziomu bezpieczeństwa.
Dostęp do repozytorium oznacza potencjalną możliwość analizowania kodu źródłowego, konfiguracji projektu i innych informacji technicznych.
Dlatego GitHub wprowadził w Agentic Workflows wielowarstwowe mechanizmy zabezpieczeń.
Agenci domyślnie działają z uprawnieniami tylko do odczytu, a ich wykonywanie odbywa się w odizolowanym środowisku.
Dodatkowo mechanizm Safe Outputs umożliwia kontrolowanie operacji, które mogą prowadzić do zmian w repozytorium, takich jak tworzenie zgłoszeń czy Pull Requestów.
Wykorzystywane są również mechanizmy wykrywania potencjalnych zagrożeń.
Nie oznacza to jednak całkowitego wyeliminowania ryzyka.
Modele AI mogą popełniać błędy, nieprawidłowo interpretować instrukcje lub reagować na złośliwe treści znajdujące się w analizowanych danych.
Dlatego szczególnie w środowiskach produkcyjnych warto stosować zasadę minimalnych uprawnień, kontrolować koszty wykonywania agentów i wymagać weryfikacji zmian przez człowieka.
Jak rozpocząć pracę z GitHub Agentic Workflows?
Rozwiązanie jest dostępne na GitHub.com dla użytkowników planów Free, Team i Enterprise.
Do rozpoczęcia pracy potrzebujemy repozytorium z włączonym GitHub Actions, narzędzia GitHub CLI oraz dostępu do obsługiwanego silnika AI.
Pierwszym krokiem może być instalacja rozszerzenia:
gh extension install github/gh-aw
Następnie możemy zainicjalizować konfigurację w repozytorium:
gh aw init
Kolejnym krokiem jest utworzenie odpowiedniego pliku Markdown z definicją zadania albo skorzystanie z gotowego szablonu.
Przygotowany workflow można skompilować za pomocą polecenia:
gh aw compile
Wygenerowany plik .lock.yml należy dodać do repozytorium razem z plikiem źródłowym Markdown.
Po skonfigurowaniu uwierzytelniania wybranego silnika AI i wymaganych uprawnień automatyzacja może zostać uruchomiona przez GitHub Actions.
Warto zaznaczyć, że sama dostępność GitHub Agentic Workflows nie oznacza bezpłatnego wykonywania wszystkich operacji AI. Korzystanie z domyślnego silnika GitHub Copilot wymaga odpowiedniej licencji, a użycie modeli i infrastruktury może generować koszty zależne od konfiguracji.
Szczegółową instrukcję konfiguracji można znaleźć w oficjalnej dokumentacji GitHub Agentic Workflows.
Czy agenci AI zmienią pracę programistów i testerów?
Moim zdaniem GitHub Agentic Workflows pokazuje bardzo interesujący kierunek rozwoju narzędzi programistycznych.
Jeszcze niedawno wykorzystywanie AI w programowaniu kojarzyło się przede wszystkim z generowaniem fragmentów kodu, wyjaśnianiem błędów czy podpowiadaniem kolejnych instrukcji.
Obecnie coraz większe znaczenie zyskują rozwiązania, które mogą wykonywać całe procesy, korzystać z różnych narzędzi i analizować rezultaty własnych działań.
Dla programistów oznacza to możliwość ograniczenia części powtarzalnych obowiązków.
Dla testerów może to być okazja do automatyzacji czasochłonnych czynności związanych z analizowaniem wyników testów, przygotowywaniem scenariuszy i utrzymywaniem jakości oprogramowania.
Nie uważam jednak, że tego rodzaju rozwiązania oznaczają koniec zawodu programisty czy testera.
Wręcz przeciwnie.
Coraz ważniejsza może stać się umiejętność projektowania odpowiednich procesów automatyzacji, weryfikowania rezultatów generowanych przez AI i rozumienia rzeczywistych potrzeb biznesowych.
Sztuczna inteligencja może wykonywać coraz więcej czynności technicznych, ale odpowiedzialność za jakość, bezpieczeństwo i prawidłowe działanie produktu nadal spoczywa na zespole.
Podsumowanie
GitHub Agentic Workflows to kolejny przykład tego, jak szybko rozwija się wykorzystanie sztucznej inteligencji w procesie tworzenia oprogramowania.
Możliwość definiowania automatyzacji w języku naturalnym, integracja z GitHub Actions oraz obsługa różnych agentów AI otwierają interesujące możliwości zarówno dla programistów, jak i testerów.
Szczególnie ciekawie wygląda perspektywa automatycznego analizowania błędów CI, proponowania nowych testów oraz przygotowywania zmian na podstawie aktualnego stanu repozytorium.
Nie oznacza to, że wszystkie te procesy będą od razu działały bezbłędnie i bez nadzoru.
Jednak kierunek jest wyraźny: AI przestaje być wyłącznie narzędziem do odpowiadania na pytania i coraz częściej staje się elementem rzeczywistych procesów programistycznych.
Warto obserwować rozwój GitHub Agentic Workflows, ponieważ rozwiązania tego typu mogą w kolejnych latach istotnie zmienić sposób organizowania pracy zespołów IT.
A jakie jest Twoje zdanie? Czy wykorzystałbyś agenta AI do analizowania błędów i przygotowywania testów w swoim projekcie?
Źródła: