Slaan oor na die inhoud
Terug na Nymbot

Kennisbasis Kodeer

Werk in 'n git-bewaarplek

Pro kan binne een van jou repositories werk soos 'n kodeeragent doen - lees jou werklike lêers, en met skryf op, verander dit.

Verbinding met 'n repository

?gitof die Gaan die chip in die werkbalk, verbind 'n verskaffer: GitHub, GitLab, of Gitea / Forgejo - wat Codeberg en self-hosted instansie dek. Dit neem 'n uitgebreide persoonlike toegang token, 'n repository en 'n tak. announces itself on Nostr Dit kan as sy adres in plaas daarvan geplaas word.

Jy hoef nie die naam van die repository in te skryf nie. Pas die token in en kies List wat hierdie token kan bereik: Nymbot vra die forge wat daardie token kan sien en toon die antwoord as 'n lys wat jy kyk. Checking verbind elkeen met sy standaardtak reeds gevul, en plaas hulle almal in hierdie chat. Alles wat reeds verbind word, word as sodanig getoon eerder as 'n tweede keer aangebied. Hierdie versoek gaan van jou toestel reguit na die forge - nie deur die Nymbot werker nie - so die token reis nie waar dit nie reeds gaan nie. 'N Self-hosted forge wat weier kruis-oorsprong versoekings eenvoudig nie vermeld kan word nie; typ die repository in met die hand en alles anders werk dieselfde.

Sodra verbind, die chip toon die repository naam, en boodskappe gestuur met 'n Vir die model die geselekteerde loop in die konteks van daardie repository. ?git disconnect Verwyder dit. Afskakel in die repository lys vergeet die token maar hou die repository daar, gemerk as het geen token nie, sodat jy 'n nuwe een later kan voeg.

Die Repositories modal, waar 'n GitHub, GitLab of Gitea repository verbind word met 'n chat.
Die token sinchroniseer met jou ander toestelle, verzegel einde tot einde.

Repositories announced on Nostr

Sommige repositories verklaar hulself op Nostr eerder as net op 'n vervalsing, met behulp van Die NIP-34 Die protocol agter Gooi en gitworkshop. Die aankondiging is 'n Nostr-gebeurtenis wat die naam van die projek, sy onderhouers, die relay's wat sy patches en uitkomste versamel, en die URL's waaruit dit gekloon kan word, dra.

Pas op naddr of a nostr:// Adres in die repository vorm en druk Kyk dit op. 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.

'N repository waarvan die klone URL op GitHub, GitLab, Gitea of Forgejo is - self-hosted ingesluit - is een Nymbot kan lees. git:// of ssh het geen HTTP API om lêers deur te lees nie, en Nymbot sê dit eerder as halfverbinding. Waar die gasheer self gehost word, is die verskaffer 'n raai uit sy naam, en jy kan dit regmaak voordat jy spaar.

'N Repository toegevoeg op hierdie manier is badged Gooi in die lys, en antwoorde noem dit deur die naam wat dit aankondig eerder as deur sy pad op die spieël.

Wat dit kan doen

'N boodskap in repo konteks loop as 'n klein agent eerder as 'n enkele voltooiing. die model kan direkteure lys, lê lê lêers en soek na die boom, dan antwoord met wat dit eintlik gevind het - so "waarom gee die retry loop vroeg op" word beantwoord uit jou kode, nie uit 'n raai oor kode wat lyk soos jou.

Dit sien die tak wat jy verbind het, by sy huidige kop.

met Die server loop Dit kan ook vra om 'n bevel teen jou kode, soos die toetse, op 'n Nymbot-bediener uit te voer.

'N repository taak op 'n telefoon: Nymbot vind 'n fout en toon die patch as 'n diff.
'N Repo taak op 'n telefoon, met die patch en wat die loop kos.

Omdraai skryf oor

?git writes on voeg die vermoë by om lêers te verbind, takke te skep en trek- of samesmeltverzoeke oop te maak. By die standaard, en dit is die moeite werd om te verlaat totdat jy dit wil.

Met skryf op, vra vir 'n verandering en jy kry 'n tak en 'n trek versoek om te hersien eerder as 'n patch in die chat: elke taak werk op 'n Branch van sy eieNiks word gedruk na jou standaardtak, tensy jy dit uitskakel, dit is die tak wat jy verbind het, en jy het dit gevra.

Die bewerkings van 'n loop gaan in as een komitee per repository, aan die einde van die loop of wanneer die model besluit dat 'n werk gedoen word. Vra voordat jy verbind Die loop hou dan sy veranderinge terug, die antwoord toon hulle as 'n diff, en Toepassing Vermy hulle terwyl afskeid Die gebruik daarvan kos niks nie.

'N Branch vir elke taak

met Elke taak kry sy eie tak op, wat dit vir elke repository is, tensy jy dit uitskakel, 'n taak wat skryf, verbind aan 'n tak van sy eie, genaamd nymbot/ Nymbot maak dit van die hoof van die werkgrens wanneer die taak sy eerste komitee maak, sodat 'n taak wat net lees, geen grens maak nie.

Wanneer die taak voltooi is, doen Nymbot wat Wanneer gedoen Hy sê. Open 'n pull versoek is die verval; Aanbied 'n loop 'n knoppie op die antwoord; Verlaat die tak nie meer doen nie. Die standaard is ingestel in instellings, onder Wanneer 'n taak’s tak voltooi word, en elke repository kan verskillend kies in sy eie vorm. As die forge geen API vir trekverzoeke het wat Nymbot kan gebruik nie, of dit verwerp een, word die takke soos dit is en die antwoord sê dit.

Die antwoord toon die tak met Openbare PR, Gaan en Verwyder, en die Tasks pane lys dit met die taak. Terwyl die taak nog hardloop, sy kaart, die Tasks pane en die lys van wat hardloop die naam van die tak as dit bestaan, op elke toestel aangemeld by die rekening. 'n taak wat gestop of misluk gedeeltelik nog steeds sy tak terug, sodat dit kan samesmelt, verwyder of skoonmaak soos enige ander. 'N samesmelting is 'n samesmelting komitee deur die forge’s eie trek versoek, gekoppeld aan die komitee Nymbot opgespoor, sodat nuwe komitee wat daar gedruk word, nooit onsienlik saamgesmelt word nie. Open die PR om op te los of Vra Nymbot om die tak te actualiseerGitHub en Gitea of Forgejo kan dit doen; GitLab het geen API vir dit nie, so daar los jy dit in die fusie versoek.

Veranderings aan CI en werkstroom lêers wag nog vir jou hersiening, presies soos hulle doen sonder 'n tak van hul eie.

skoonmaak

Jou toestel onthou die nymbot/ die volgende taak op daardie repository, of Maak die Nymbot-takke skoon in die repository lys, verwyder diegene wie se trek versoek is samesmelt of gesluit, of wat sewe dae oud is met niks oor om te samesmelt nie. 'N tak word slegs verwyder as dit nog steeds eindig by die kompromie Nymbot opgeneem, so een iemand het gedruk sedert is alleen gebly, en geen ander tak ooit aangeraak word nie. Dit loop van jou toestel met die token wat dit reeds stuur; die bediener hou geen token om dit later te doen nie.

Skakel die opsie uit om direk na die werkgrens te verbind. 'N Taak het dan die repository vir homself, en 'n tweede op dieselfde grens lees dit slegs totdat die eerste voltooi is.

Ontken wat 'n loop verander

'N Antwoord wat aan jou repository geskryf is, sê wat dit aangeraak het: die repository, die tak en elke lêer. Vermy hierdie veranderinge sit hulle terug - elkeen van daardie paaie word gelees by die komitee wat die tak voor die hardloop opgestel het en toegepas het soos dit was. 'n Branch van sy eie Hy het die werkgrens alleen verlaat, so daar is niks daar om terug te sit nie: Verwyder Verwyder die tak in plaas daarvan.

Dit is 'n revert, nie 'n rewrite nie. Niks word verwyder en geen geskiedenis word herschryf nie: wat Nymbot gedoen het, bly in die log, dit is eenvoudig nie meer die toestand van die tak nie.

Undoing raak geen model nie, dus spandeer dit geen krediete nie - die toegang token reis met daardie een versoek soos dit met elke ander doen, en niks oor die kontrolepunt word elders as jou eie toestel opgeslagen nie.

Files alleen

'N tak of trek versoek wat die loop geopen word, word opgelys en bly waar dit is. die sluit van iemand se trek versoek namens hulle is nie 'n afwyking nie, en die verwydering van 'n tak ander mense mag nie opgehaal het nie - doen dit jouself as jy wil hulle weg.

Wat 'n repo taak kos

'N Repo-taak gebruik tot ses modeloproepe per boodskap - kyk, lees, soek, antwoord - elkeen wat by die gekoppelde model in rekening geneem word vir die prysSlegs die oproepe wat eintlik gebruik word, word in rekening geneem, dus 'n vraag beantwoord van een lêer kos oor wat 'n gewone antwoord kos.

Die app rapporteer die totaal en aantal oproepe na elke repo taak.

Wanneer 'n taak uit die kamer loop

'N repository taak is 'n loop, nie 'n enkele antwoord nie: die model lys 'n directory, lees 'n lêer, soek na die boom, lees 'n ander, en eers dan skryf.

Wanneer 'n taak sy toekenning gebruik met werk wat nog gedoen moet word, stop Nymbot, gee jou wat dit het, en sê dit.

Jy kan ook laat dit voortgaan. Stel 'n voortgesette begroting in instellings en Nymbot koop 'n ander toekenning van dieselfde balans wanneer 'n taak uitkom, wat presies opneem waar dit gestop het eerder as om die repository van die begin af te lees. Dit gaan een been op 'n tyd, elke been sê wat dit kos, en stop op die oomblik dat die begroting bestee word, die taak voltooi is, of jy druk Stop.

Let wel

Niks gaan voort, en niks word bestee as wat jy gevra het nie, tensy jy 'n begroting ingestel het.

Gewoonlik stuur jou toestel elke been, sodat 'n taak slegs voortduur terwyl die app oop is. agtergrond loop ingesluit, die bediener stuur die volgende voete self terwyl die app gesluit is, binne dieselfde begroting, by 'n maksimum van 40 voete en 6 uur, en vertel jou een keer wanneer die taak voltooi is. Om dit te doen, hou dit die repository token gesegeld met 'n sleutel wat dit net hou terwyl die taak werk, en verwyder dit wanneer die taak eindig en altyd binne 6 uur. 'N agtergrondtaak skryf na sy eie tak soos enige ander taak.

Oor daardie teken

Oor daardie teken

Die toegang token word op jou toestelle gehou en synchroniseer tussen hulle binne jou eind-tot-end-versleutelde instellings, sodat die bediener slegs 'n gesegelde kopie hou wat dit nie kan lees nie. Gebruik Wipe, reis na die Nymbot werker met elke versoek, en word nooit opgeslagen leesbare server-kant of gepubliseer aan oordragers. agtergrond loop jy ingesluit is werk, vir ten hoogste 6 uur. Omvat dit na die een repository wat jy bedoel om te gebruik, en herroep dit by jou verskaffer wanneer jy klaar is.

Omdat dit sinchroniseer, werk 'n chat wat die repository gebruik op elke toestel wat jy inskryf sonder om dit weer te verbind. Die server loopvan die container.