Pakiet robota
Pakiet robota to komplet plików, które trafiają na maszynę agenta i stanowią kod Twojej automatyzacji: skrypt główny, moduły pomocnicze, pliki konfiguracyjne, szablony i manifest zależności. Pakietem zarządzasz w zakładce Pliki automatyzacji w widoku automatyzacji.
1. Co wchodzi w skład pakietu
Pakiet odwzorowuje strukturę katalogów jeden do jednego - to, co widzisz na liście, zobaczy też skrypt w swoim katalogu roboczym.
main.py ← punkt wejścia
requirements.txt ← manifest zależności
lib/
klient_erp.py ← moduł pomocniczy
modele.py
config/
ustawienia.json
szablony/
faktura.html
Dzięki temu importy sąsiedzkie i pakietowe działają dokładnie tak, jak lokalnie na Twoim komputerze:
from lib.klient_erp import KlientERP
Na liście każdy katalog jest osobną, zwijaną grupą z licznikiem plików - ./ (katalog główny pakietu), ./config/, ./lib/, ./szablony/. Licznik przy nazwie zakładki pokazuje łączną liczbę plików w pakiecie.
2. Wgrywanie plików
W zakładce Pliki automatyzacji możesz:
- przeciągnąć pojedyncze pliki na obszar wgrywania,
- przeciągnąć cały katalog - struktura zostanie zachowana,
- wybrać wiele pozycji naraz przez okno wyboru plików.
2.1. Pliki pomijane automatycznie
Platforma odsiewa artefakty budowania i pliki systemowe, żeby nie zaśmiecały pakietu - katalogi __pycache__, pliki .pyc, metadane systemu plików. Po wgraniu zobaczysz komunikat informujący, ile pozycji pominięto.
Wgrywaj katalog projektu bez sprzątania
Nie musisz ręcznie czyścić katalogu przed wgraniem. Jeśli jednak wszystkie wybrane pliki zostaną odsiane, platforma powie o tym wprost - to zwykle znak, że wskazano katalog build zamiast źródeł.
3. Punkt wejścia
Punkt wejścia to plik .py, od którego zaczyna się wykonanie.
W automatyzacji utworzonej od zera punkt wejścia jest już ustawiony na main.py z pakietu startowego. Zmieniasz go wtedy, gdy wgrywasz własny pakiet o innej strukturze:
- Kliknij menu (⋮) przy pliku
.py. - Wybierz Ustaw jako punkt wejścia.
Oznaczony plik jest wyróżniony na liście etykietą PUNKT WEJŚCIA - widać ją przy main.py na zrzucie w punkcie 1.
Dopóki żaden plik nie jest oznaczony, nad listą wisi ostrzeżenie, a uruchomienie jest zablokowane:
⚠️ Nie ustawiono punktu wejścia. Oznacz plik .py jako punkt wejścia przed uruchomieniem.
Etykieta przenosi się, plik zostaje
Wskazanie innego pliku przenosi etykietę - poprzedni punkt wejścia zostaje w pakiecie i przestaje być plikiem startowym. Nie jest kasowany.
3.1. Punkt wejścia w podkatalogu
Punkt wejścia nie musi leżeć w katalogu głównym pakietu. Skrypt uruchamiany jest w miejscu, więc jego importy sąsiedzkie zachowują się tak samo jak podczas pracy lokalnej.
3.2. Skrypt musi coś wywołać
Plik zawierający wyłącznie definicje funkcji zakończyłby się kodem 0, czyli formalnym sukcesem, mimo że nic nie zrobił. Dlatego agent analizuje punkt wejścia przed startem i odmawia uruchomienia takiego pakietu - zamiast raportować sukces procesu, który nic nie wykonał, kończy przebieg niepowodzeniem i podaje powód w opisie.
Pamiętaj więc o wywołaniu:
if __name__ == "__main__":
main()
Domyślny main.py kończy się wywołaniem sys.exit(main()) obudowanym w try/except, więc podmieniając wyłącznie treść funkcji main() spełniasz ten warunek automatycznie.
4. Zależności
Zależności instalowane są przed startem skryptu, na podstawie jednego pliku z katalogu głównego pakietu.
4.1. requirements.txt
Domyślny i najprostszy wariant - zwykły plik pip:
requests==2.32.3
playwright==1.62.0
4.2. Manifest conda
Alternatywnie możesz użyć manifestu conda o jednej z nazw: conda.yaml, conda.yml, environment.yml albo environment.yaml.
dependencies:
- python=3.11
- pip
- pip:
- requests==2.32.3
- playwright==1.62.0
Agent webowy instaluje wyłącznie blok pip:
Z manifestu conda brana jest tylko zawartość bloku pip:. Pozycje wypisane bezpośrednio pod dependencies: to pakiety conda-native - agent webowy ich nie stawia i pomija je z ostrzeżeniem w dzienniku. Manifest bez bloku pip: jest poprawnym plikiem YAML, po którym środowisko zostaje puste.
4.3. Pierwszeństwo i brak manifestu
| Sytuacja | Zachowanie |
|---|---|
Tylko requirements.txt |
Instalacja z requirements.txt. |
| Tylko manifest conda | Instalacja z bloku pip: manifestu. |
| Oba pliki naraz | Wygrywa manifest conda, requirements.txt jest pomijany. Platforma pokazuje o tym ostrzeżenie. |
| Żaden z nich | Skrypt startuje na samym obrazie bazowym - nic nie jest doinstalowywane. |
Nieudana instalacja jest odróżnialna od błędu skryptu
Jeśli zależności nie dadzą się zainstalować, uruchomienie kończy się osobnym komunikatem, innym niż awaria samego robota. Dzięki temu od razu wiadomo, czy problem leży w manifeście, czy w kodzie.
Nazwy plików są zamknięte
Rozpoznawane są wyłącznie requirements.txt, conda.yaml, conda.yml, environment.yml i environment.yaml. Plik nazwany inaczej - na przykład wymagania.txt albo deps.txt - trafi do pakietu i zostanie pominięty bez ostrzeżenia, a skrypt wystartuje bez zależności.
Gdy w pakiecie nie ma żadnego manifestu, platforma mówi o tym wprost nad listą plików:
ⓘ W pakiecie nie ma pliku z zależnościami - agent webowy instaluje je z requirements.txt albo z manifestu conda (conda.yaml, conda.yml, environment.yml, environment.yaml). Bez żadnego z nich skrypt rusza na samym obrazie bazowym.
5. Operacje na plikach
Menu kontekstowe (⋮) każdego pliku udostępnia zestaw operacji.
| Operacja | Opis |
|---|---|
| Podgląd | Otwiera zawartość pliku tekstowego bez pobierania go na dysk. |
| Pobierz | Zapisuje plik lokalnie. |
| Edytuj | Pozwala poprawić plik bezpośrednio w przeglądarce - wygodne przy drobnych korektach parametru albo literówki. |
| Ustaw jako punkt wejścia | Dostępne dla plików .py. |
| Usuń | Trwale usuwa plik z pakietu. |
Przy strojeniu automatyzacji poprawka wprost w przeglądarce i ponowne uruchomienie są dużo szybsze niż zmiana lokalna, ponowne wgranie i uruchomienie. Do większych zmian wracaj jednak do swojego repozytorium - pakiet w platformie nie zastępuje kontroli wersji.
6. Ograniczenia
| Ograniczenie | Wartość |
|---|---|
| Maksymalny rozmiar pojedynczego wgrywanego pliku | ok. 1 MB |
| Liczba plików w jednym pakiecie | bez ustalonego limitu |
| Struktura katalogów | zachowywana bez ograniczenia głębokości |
Duże pliki dziel albo pobieraj w trakcie pracy
Plik przekraczający limit zostanie odrzucony. Jeśli automatyzacja potrzebuje dużego zbioru danych, lepszym rozwiązaniem jest pobranie go przez skrypt w trakcie pracy - z magazynu obiektów albo z systemu źródłowego - niż trzymanie go w pakiecie.
7. Pakiet a wersje automatyzacji
Pakiet należy do konkretnej wersji automatyzacji. Po opublikowaniu wersji jej pliki stają się niezmienne - to gwarantuje, że opublikowany proces zachowa się jutro tak samo jak dziś.
Aby zmienić kod opublikowanej automatyzacji, utwórz z niej nową wersję roboczą. Szczegóły opisuje strona Zarządzanie automatyzacjami.




