Przejdź do treści
Wróć do Nymbot

Baza wiedzy Kodem

Praca w repozytorium git

Pro może pracować w jednym z twoich repozytoriów tak, jak robi to agent kodujący – czytając rzeczywiste pliki i pisząc, zmieniając je.

Połączenie z repozytorium

?git, lub The Idź Chip w pasku narzędzi, łączy dostawcę: GitHub, GitLab lub Gitea/Forgejo – który obejmuje instancje Codeberg i samodzielnie hostowane. announces itself on Nostr Zamiast tego można go umieścić jako adres.

Nie musisz wpisywać nazwy repozytorium. Wklej token i wybierz Lista tego, co ten token może osiągnąć: Nymbot pyta forge, co ten token może zobaczyć i pokazuje odpowiedź jako listę, którą sprawdzasz. Checking łączy każdy z jego domyślną gałęzią już wypełnioną i umieszcza je wszystkie w tym czacie. Wszystko, co już jest podłączone, jest wyświetlane jako takie, a nie oferowane po raz drugi. Ta prośba idzie z urządzenia bezpośrednio do forge - nie za pośrednictwem pracownika Nymbot - więc token nie podróżuje tam, gdzie już nie idzie.

Po podłączeniu chip wyświetla nazwę repozytorium i wiadomości wysyłane za pomocą Dla modelu wybrane w kontekście tego repozytorium. ?git disconnect Zdejmij to Odłączenie na liście repozytorium zapomina token, ale utrzymuje tam repozytorium, oznaczone jako brak tokenów, dzięki czemu można dodać nowy później.

Moduł repozytoriów, w którym repozytorium GitHub, GitLab lub Gitea jest podłączone do czatu.
Podłączanie repozytorium Token synchronizuje się z innymi urządzeniami, zamkniętymi od końca do końca.

Repositories announced on Nostr

Niektóre repozytorium ogłaszają się na Nostr, a nie tylko na forge, używając NIP 34 Protokół za Niech Ogłoszenie jest wydarzeniem Nostr, które nosi nazwę projektu, jego konserwatorów, relayów, które zbierają jego poprawki i problemy, oraz adresy URL, z których można go klonować.

Pasztet na naddr lub a nostr:// adres do formularza repozytorium i prasa Spójrz na to w górę. Nymbot reads the announcement off the relays and fills the form in: the git host it is cloned from, the repository there, and the branch the project itself says is current. You still add a token for that host, because Nostr carries the announcement and the git server carries the code.

Repozytorium, którego adres URL klonu znajduje się na GitHub, GitLab, Gitea lub Forgejo - samodzielnie hostowane - jest jednym Nymbot może odczytać. git:// lub ssh nie ma API HTTP do odczytywania plików, a Nymbot mówi tak zamiast połowicznego łączenia.Gdzie host jest samodzielnie hostowany, dostawca jest domysłem z jego nazwy i możesz to naprawić przed zapisaniem.

W ten sposób dodany repozytorium jest badged Niech na liście, a odpowiedź nazywa go nazwą, którą ogłasza, a nie drogą na lustrze.

Co może zrobić

Model może wymieniać katalogi, czytać pliki i wyszukiwać drzewo, a następnie odpowiadać za pomocą tego, co rzeczywiście znalazł – więc „dlaczego pętla retry ustępuje wcześnie” jest odpowiedziana z kodu, a nie z przypuszczenia o kodzie, który wygląda jak twój.

Widzi gałąź, z którą się połączyłeś, na bieżącej głowie.

z Serwery biegają Włączony do czatu, może również poprosić o uruchomienie polecenia przeciwko kodowi, takiego jak testy, na serwerze Nymbot.

Zadanie repozytorium na telefonie: Nymbot znajduje błąd i wyświetla patch jako diff.
Zadanie repo na telefonie, z patchem i tym, co kosztuje bieganie.

Odwrócenie pisze o

?git writes on dodaje możliwość kompromisu plików, tworzenia gałęzi i otwierania żądań pociągnięcia lub łączenia. domyślnie wyłączone i warto zostawić, dopóki tego nie chcesz.

Pisząc, poproś o zmianę, a otrzymasz oddział i prośbę o wyciągnięcie do przeglądu, a nie plik wklejony do czatu: każde zadanie działa na Branża własnaNic nie jest przesuwane do domyślnej gałęzi, chyba że wyłączysz tę gałęzię, czyli gałęzie, które podłączyłeś i poprosiłeś o to.

Edycje biegu są wprowadzane jako jeden komitet na repozytorium, na końcu biegu lub gdy model decyduje o wykonaniu pracy. Zapytaj zanim się zaangażujesz Następnie bieg utrzymuje swoje zmiany, odpowiedź pokazuje je jako diff, a następnie Zastosuj Wykonuj je podczas odrzucenie Wyrzuć je z domu, nie kosztują nic.

Jedna gałąź dla każdego zadania

z Każde zadanie otrzymuje własną gałąź na, który jest dla każdego repozytorium, chyba że go wyłączysz, zadanie, które pisze zobowiązuje się do własnej gałęzi, o nazwie nymbot/ Nymbot wykonuje to od głowy gałęzi roboczej, gdy zadanie wykonuje swój pierwszy kompromis, więc zadanie, które tylko czyta, w ogóle nie tworzy gałęzi.

Po wykonaniu zadania Nymbot wykonuje to, co Kiedy zrobione Mówi się. Otwórz Pull Request Jest to deficyt; Oferta idzie zostawia przycisk Łączenie na odpowiedzi; Zostaw branżę nic więcej. domyślne ustawienie jest ustawione w ustawieniach, pod Kiedy zadania’ s gałęzi są wykonane, a każdy repozytorium może wybrać inaczej w swojej własnej formie.Jeśli forge nie ma API do żądań wyciągania, które Nymbot może używać, lub odrzuca jeden, gałąź zostaje pozostawiona tak, jak jest, a odpowiedź tak mówi.

Odpowiedź pokazuje, że oddział z Otwarte PR, Idź I Delete, a panel zadań listuje go z zadaniem. Podczas gdy zadanie nadal działa, jego karta, panel zadań i lista tego, co działa, nazywa gałęzię, gdy tylko istnieje, na każdym urządzeniu zarejestrowanym na konto. Zadanie, które jest zatrzymane lub nie działa częściowo, nadal ma swoją gałęzię z powrotem, dzięki czemu można ją połączyć, usunąć lub wyczyścić jak każda inna. Fusion jest komitetem fusionowym za pośrednictwem własnego żądania wyciągania, przyczepionym do nagranego komitetu Nymbot, więc nowe komity, które w międzyczasie są wciśnięte, nigdy nie są łączone niewidoczne. Nic nie jest siłą wciśnięte. Jeśli gałąź konfliktuje z działającą ga Otwórz PR, aby rozwiązać lub Poproś Nymbot o aktualizację oddziałuGitHub i Gitea lub Forgejo mogą to zrobić; GitLab nie ma API do tego, więc tam rozwiążesz go w żądaniu połączenia.

Zmiany w plikach CI i przepływu pracy nadal czekają na przegląd, dokładnie tak, jak robią to bez własnej gałęzi.

Oczyszczanie w górę

Twoje urządzenie pamięta nymbot/ następnego zadania w tym repozytorium, lub Wyczyść Nymbot Branches na liście repozytorium, usuwa te, których prośba o wyciągnięcie jest połączona lub zamknięta, lub które mają siedem dni i nie pozostało nic do połączenia. Oddział jest usuwany tylko wtedy, gdy nadal kończy się na kompromisu Nymbot zarejestrowany, więc jeden ktoś naciskał, ponieważ pozostaje sam, a żadna inna gałąź nigdy nie jest dotknięta. To działa z urządzenia z tokenem, który już wysyła; serwer nie przechowuje token, aby to zrobić później.

Wyłącz opcję, aby zlecić bezpośrednio do gałęzi roboczej. Zadanie ma następnie repozytorium dla siebie, a drugi na tej samej gałęzi tylko czyta go, aż pierwsza jest skończona.

Odkryj, co zmieniło się w biegu

Odpowiedź, która napisała do repozytorium, mówi, co dotknęła: repozytorium, gałąź i każdy plik. Podsumowując te zmiany Kładzie je z powrotem – każda z tych ścieżek jest czytana w kompromisie, na którym oddział stał przed biegiem i zobowiązał się tak, jak było. Branża własna Zostawił samą gałęzię roboczą, więc nie ma tam nic do odłożenia: Delete Zamiast tego usunąć gałąź.

To jest revert, nie rewrite.Nic nie jest usuwane i żadna historia nie jest ponownie zapisywana: to, co Nymbot zrobił, pozostaje w dzienniku, to po prostu nie jest już stan oddziału.

Undoing nie dotyczy żadnego modelu, więc nie wydaje żadnych kredytów - token dostępu podróżuje z tym jednym żądaniem tak, jak robi z każdym innym, a nic o punkcie kontrolnym nie jest przechowywane nigdzie oprócz własnego urządzenia.

Pliki tylko

Zamknięcie żądania wyciągnięcia kogoś w ich imieniu nie jest anulowaniem, a usunięcie gałęzi, którą inni ludzie mogli wyciągnąć, nie jest ani - zrób to sam, jeśli chcesz, aby odeszły.

Ile kosztuje zadanie repo

Zadanie repo wykorzystuje do sześciu połączeń modelowych na wiadomość — wyszukiwanie, czytanie, wyszukiwanie, odpowiedź — każda pobierana na rachunek modelu załączonego. za cenęOpłacane są tylko faktycznie używane połączenia, więc pytanie odpowiedziane z jednego pliku kosztuje o tym, ile kosztuje zwykła odpowiedź.

Aplikacja informuje o sumie i liczbie połączeń po każdym zadaniu repo.

Kiedy zadanie wychodzi z pokoju

Zadanie repozytorium to pętla, a nie pojedyncza odpowiedź: model wymienia katalog, czyta plik, wyszukuje drzewo, czyta inne, a dopiero potem pisze.

Gdy zadanie wykorzystuje swoje przydziały z pracą, która jest jeszcze do wykonania, Nymbot zatrzymuje się, daje to, co ma, i mówi tak.

Ustaw budżet kontynuacji w ustawieniach, a Nymbot kupi kolejny przydział z tego samego salda, gdy zadanie się skończy, odbierając dokładnie, gdzie się zatrzymało, zamiast odczytywać repozytorium od początku. To idzie jedną nogę na raz, każda noga mówi, ile kosztuje, i zatrzymuje się w momencie wydania budżetu, zadanie jest zakończone, lub naciśnij przycisk Stop.

Notatka

Domyślnie należy zatrzymać się i powiedzieć.Nic nie trwa i nic nie jest wydawane poza odpowiedź, o którą poprosiłeś, chyba że ustawiłeś budżet.

Zazwyczaj urządzenie wysyła każdą nogę, więc zadanie jest wykonywane tylko podczas otwarcia aplikacji. tło biegu Włączony, serwer wysyła następne nogi sam, podczas gdy aplikacja jest zamknięta, w tym samym budżecie, przy maksymalnie 40 nogach i 6 godzinach, i mówi ci raz, kiedy zadanie jest wykonane. Aby to zrobić, utrzymuje token repozytorium zapieczętowany kluczem, który utrzymuje tylko podczas pracy zadania, i usuwa go, gdy zadanie się kończy i zawsze w ciągu 6 godzin.

O tym tokenie

O tym tokenie

Token dostępu jest przechowywany na Twoich urządzeniach i synchronizuje się między nimi w zaszyfrowanych ustawieniach end-to-end, więc serwer przechowuje tylko zapieczętowaną kopię, której nie może odczytać. Urządzenie WIPE, podróżuje do pracownika Nymbot z każdym żądaniem i nigdy nie jest przechowywany na czytelnej stronie serwera lub publikowany na przekaźnikach. tło biegania włączono działa, przez maksymalnie 6 godzin. Zakres go do jednego repozytorium zamierzasz użyć, i odwołać go u swojego dostawcy, gdy jesteś skończony.

Ponieważ synchronizuje się, czat korzystający z repozytorium działa na każdym urządzeniu, na którym się zalogujesz, nie podłączając go ponownie. Serwis RunJest to kontener.