Белем базасы Код
Гит саклагычында эшләү
Pro сезнең репозиторийләрегезнең берсендә код язу агенты кебек эшләгән может — сезнең файлларыгызны укып, аларны үзгәртергә язмалар ясап.
Бу бит уңайлык өчен машинага тәрҗемә ителгән. Инглизчә оригиналь - кулланыла торган версия.
Репозиторийны ئە bağlantлау
?git, яки Git GitHub, GitLab яки Gitea/Forgejo — Codeberg һәм үзәкләштерелгән (self-hosted) инстансләрне күмәтә.
Ул махсус куллану өчен шланген (scoped) персональ доступ токенын, репозиторийны һәм ветны ала. Репозиторий, ул...
Nostr платформасында үзе турында хәбәр бирә үземәлек исеме дәк белән куерса була.
Репозиторий исемен язырга кирәк түгел. Токенны куегыз һәм сайлагыз Бу токен нәрсәгә охыш була алачак исемлекне языгызNymbot forgeга бу токен нәрсә күрә алуын сорый һәм җавапны сез тикшерә аларга итеп список итеп күрсәтә. Тикшерү һәрбер элементны үзенә буын белән автоматтык рәвештә бәйли һәм аларның барын да бу чатныкыга кертемә. Илгеがあнча бәйләнгән нәрсәләр кабатлап күрсәтелми, ә алар бәйләнгән булып күрсәтелә. Бу сорау сезнең хәзерге хәзерге җәһәзтән бербәр җитәкчелексез төгәлтән forge-га бара — Nymbot worker аша түгел — шуный өчен токен үзен барган урыннарыннан башка бергә дә китеп не, ул үзен барган урыннарыннан башка бергә дә китеп не. Cross-origin сорауларын кабул итмәгән self-hosted forge-ны списокка кертү мөмкин түгел; репозиторий исемен кул белән языгыз, башка нәрсәләр исә үз тәртибендә эшлир.
Җенәをつканда, чип репозиторий исемен һәм ... белән җибәрелгән хәбәрләрне күрсәтә
Pro модель шул репозиторий контекстында сайланган узарту.
?git disconnect аныңны уәләп чыга. Аерту репозиторийләр исемлегендә
токенны сызып такы, ләкин репозиторийне үз унында калдыра, токен юк дип билгеләнгән, шулайча ул киләчәкндә яңасын өстәргә мөмкин була.
Nostr-да аңлатылган репозиторийләр
Кейче репозиторийләр үзләрен нигездә Forge-та түгел, ә Nostr-да ачыкларга хезмәт итәләр, шулай ук NIP-34 — протокол, арткындагы ngit һәм gitworkshop. Хәбәр итү — ул проект исеме, аның төзәтүчеләре, патчларны һәм мәсьәләләрне җыючы релеләр һәм клонлау өчен URLлар күрсәтелгән Nostr ивенты. Икенче ивент һәр бүлек (branch) ахырдагыча кайда күрсәтелгән икәнен әйтә.
Чакырыгыз naddr яки nostr:// репозиторий формасына адресны кертегез һәм
басыгыз Анализ итNymbot релеясеннән хәбәрне укый һәм форманы тулыктыра: ул клонланган git хосты, шундагы репозиторий һәм проектның үзенең актуаль дип билгеләгән вет. Сез әйтешкә (token) һаман да шуเตอร์ өчен өстәргә кирәк, чөнки хәбәрне Nostr алып барды, ә кодны git серверо алып бара.
Бу ни значит итә, что правило — бу шундый уاية, нинди уاية клонланган. GitHub, GitLab, Gitea яки Forgejo (үзеңә хостланганнар да керә) URL-ы булган репозиторийны Nymbot укый ала.
Төннәк клонланган... git:// or ssh файлы укыу өчен HTTP API юк, һәм
Nymbot ярим-берләшмәләр биреп урынга шулай әйтә. Хост үзенең серверинда урнашкан булса, провайдер аның исеменнән табах була, һәм аны саклап алу алдыннан төзәтә аласыз.
Бу тәсем а través өйрәтү репозиторий билгеләнә ngit төлämmдә һәм җавапларда аны аның айнадагу сәбәбе белән түгел, аның үзе әйткән исеме белән авызыңа ал.
Аның нинди мөмкинлекләре бар
Репозиторий контекстындагы билге беркеләч тулыландыру (completion) буларак түгел, әлече агент буларак авырга алып бара. Модель директориялар исемлеген бирә ала, файлларны укый һәм арызлы структураны эзләп тап була, аннары а actually тапкан нәрсәсенә нигезләнеп җавап бирә — шунда "кайталау циклы нигездә иртә туктарга ярдәм итә?" сорауы сезнең кодыннан җавап алына, сезникенә охшаган код турындагы тахмингән түгел.
Ул син бәйләштергән бәрелмәне аның хәзерге башлыгында күредә.
белән сервер эшлит чат өчен кушылды, ул кодларыгызга, мәсәлән, тестларга, Nymbot серверында команда узатуны да соравы мөмкин. Һәрбер узату сезнең рөхслетегезне доклап көтә.
Язуны quite күтәрү
?git writes on файлларны коммитлау, филиал ярату һәм pull яки merge запросларын ачу мөмкинлеген өстәргә. Тәбигыннән өчтә, ул кирәк булганда гына күрсәтү тәгаüllәр.
Язулар ачык булганда, үзгәрterenдерүләрне сорасагыз, чатка ябыштырылган патч түгел, ә карау өчен бүлек (branch) һәм pull request аласыз: һәр такеск ... өстендә эшли үзе үзе шөбәгеСез үзеңиз үткәрмәс$(e)нә, стандартка бүекка (default branch) бернәр дә җибәрелми, ул сиз бәйләшгән һәм сиз сораган бүекка.
Яруның үзгәртемнәрлекләре яру ахырында яки модель эш тамамланды деп карарга карар биргендә, һәр репозиторий өчен бер commit итеп керә. Әгәр сезне аларны алින්нә разъeen күрү теләсәгез, күрсәтегез Җиткермәс afore committing шул репозиторий өчен. Аннан соң үткәрү үз үзгәртемнәрен саклый, җавап аларны diff качествендә күрсәтә, һәм Тиз дә кулланырга аларны башкарган онычта Алып ташлау аларны ташлый. Гаразынга баа түләми.
Һәр төрле чикләү өчен өзлек
белән Һәрбер эш үзенең бүтенә иелә һәм, ул һәр репозиторий өчен калса
сез аны өчтәрмегенчә, үзенең үзене исемләгән бүтенә коммитләр язышыч таbarrow
nymbot/ һәм кыска ID. Nymbot аны эшчән бранчның башыннан ясый
задача үзенең беренче коммитын ясаганда, шуный өчен тик укыучы гына эшләгән задача бернәр бранч да ясамарга мөмкин.
Эшчән бранчның үзене арый, шуга күрә берничә задача үз киреге кайтсын дип күт негелмәсч, бер урамда бергә яза ала.
Эш тәмамланганда, Nymbot нәрсә қилә? Тобәткәндә $$\text{һип}$$ Pull request ачу тәгаенләшкән настройка булып тора; Берләштерүне тәкъдим итү җавапта берләштерү (Merge) төбмәген калдыра; Талны ташлагыз үткәрми. Тәгаберleген Settings аша, астында kurulган Задачаның бәрәнчесе тәмамланганда, һәм һәрбер репозиторий үз формында төрле төрле сайлый ала. Әгәр forge Nymbot кулланырга мөмкин булган pull requestләр өчен API бирмәсә яки аны кабул итмәсә, һәмә вет үз көйләрендә кала һәм җавапта бу турында языла.
Җавап шуны күрсәтә: PR ачу, Берләштерү һәм Учырыту, ә Задачалар панельдә ул задача белән бергә күрсәтелә. Задача әйтешкән чакта, аның картасы, Задачалар панельдәге һәм эшләгәннар исемлеге төркемне аның бар булган timescales авытында, аккаунтка кергән һәр аппаратта күрсәтә. Туктатылган яки уртада сыймыкталган задача да үз төркемен һали итә, шулай өчен аны башкалар кебек берләштерү, үчерү яки чистарту мөмкин. Берләштерү — ул forgeның үз pull request-ы берләштерү коммиты, ул Nymbot теркәгән коммиткә бүктелгән, шулай өчен арада тудырылган яңа коммитлар һич кайсы күреп алынмый без яңа timescales берләштерүгә кадәр. Һичなって force-push ителми. Әгәр төркем эшлигән төркем белән конфликт кишкән, җавап түбәндәгеләрне тәкъдим итә PRны ачыгыз чирету өчен яки Nymbotта соста ныгызын яңартуны ышарала, каторы эшчәнәрче өлшәмне rebase ясау түгел, ә merge commit аша үзгәртер. GitHub һәм Gitea яки Forgejo буны эшләргә мөмкин; GitLabның буны эшләргә API-сы юк, шуңа күрә анда син аны merge request ичендә чишерсең.
CI һәм workflow файлларына кертелгән үзгәрешләр дә сезнең каравыгызны көтә, алар үзенең бүтен яки югарырак бүтен булмаганнардагы кебек.
Сезнең җыелгыч сезнең... nymbot/ бу аккаунт яраткан веткалар. Бу репозиторийдәге киләчәк задача яки... Nymbot бранчларын чистарту репозиторийләр исемлегендә,
pull request-ы галба بيها яки ябылган, яки берәр нәрсә галбарга калмыйча ун өч көн итен дә узларны сызып ташлый.
Фил веткалар Nymbot теркәгән commit-та туктаулы булган гына сызыла, шулай итеп, берәрсе берәрсе аңа яңа нәрсәләр иткән булса, ул калдырыла,
һәм башка бер ветка да каралмый. Ул сезнеңtog токен белән үз җесьегезнәнEs эшлә ); сервер улны кайгырыкыннан эшләргә өчен токен сакламый.
Эшләнеш веткасына (working branch) турадан-туры коммит итү опциясен өнерә тор. Шуннан соң, эш (task) репозиторийне үзенең битке ия була һәм берничә веткадагы икенче эш беренчесе тәмамланмагучы аны тик<br>илэ<br>ана. За群众 кушымтаның эски версияләре дә шулай эшли.
Ягу үзгәртергән нәрсәләрне кайтару
Сезнең репозиторийгә язылган җавап нәрсәгә таянырга тиешлеген әйтеп тора: репозиторий, вет һәм һәрбер файл. Бу үзгәрешләрне кайтарма аларны урыннарына кайтара — шул юлларның һәрберсе ягу җәерлегендәгы коммитта укына һәм ягу алдыннан нинди хәлләрдә булса, шулай коммитлана. Аны эшләгән таска... Үзенлеккә бирелгән бәрәк эшләгән филиалын күтәрмәде, шуңа күрә кайтарчак нинди нәрсә дә юк: Учырыту үземәгенә кара үземәгенә кара.
Бу — кайтару, әллә яңадан языу түгел. Нич út өчертелмәгән һәм тарих яңадан язылмаган: Nymbot нәрсә эшләгән булса, ул логда кала, ул бик тә бүгенге ветка хәле түгел генә. Арада ინფორმაция алырга (pull) улган һәркемдә дә һали работать ителгән версия кала.
Бу үлеш тә требу итми. Гадәттәге кебек, телгә кирәкле үзгәрешләр модельгә берәр тапшырма аша бара, шуңа күрә кредиттар сакланмый — телгә керү токены һәр тапшырма белән бергә үтә һәм чекпоинт турындагы берәр нәрсә дә сезнең үз уегыннан башка бер нинди дә урынга сакланмый.
Ачылган run филиалы яки pull request исемлектә калдырыла һәм үз урынында кала. Кешенең исеменнән аның pull requestын ябыту — ул кайтарма хезмәт түгел, шулай ук башкалар йөкләгән (fetch) филиалны сызып ташлау да үз урынында кайтарма хезмәт түгел — әгәр аларны сызып ташлаган булсагыз, шуны үзегез эшләгез.
Репозиторий өлешене ничә тулай?
Repo задача һәр хәбәр өчен алты модель чакыруына кадәр уза — карау, укыу, эзләү, җавап биреү — һәрберсе фиксацияләнгән модель ценасы буенча түләнә Профессиональ баهاсыФәкыт файдаланылган чакырулар өчен генә акча алына, шуңа күрә бер файлдан бирелгән җавапның баасы гади җавапның баасына якын була.
Заглотма һәр репо таbarrow үткәрүдән соң җалды сумманы һәм чакырулар санын күрсәтә.
Задача урын җетмәгәннәндә
Репозиторий задачасы — ул бер җавап түгел, ә цикл: модель директорияны исемләү, файл укыу, ағач эчендә эзләү, башкасын укыу һәм гына языу. Бу циклның лимитле вакыты бар — җавап өчен сакланган кредитлар саны — чөнки чикләнмәгән агент — чикләнмәгән счёт.
Эгер эш башкарыла尚未 көндә тапшырма үз эзлек итү лимитын исәпкә алса, Nymbot тыкыллый, үзедә булган нәтиҗәләрне бирә һәм бу турында хәбәр итә. Киләчәк түләүләр алынмый.
Сез аны дә алга продолция итә аласыз. Settingsтә продолция бюджетандалтыгыз һәм Nymbot задача тәмамланганда бер төлләмнән башка сумманы сатып ала, шундый timescales, репозиторийны башынан яңадан укыргач, дә дәл кайда тыниса, шунда продолция итә. Ул һәр адымны берсеннән соң башка, һәр адымның кыйммәтен әйтә һәм бюджет тәмамланганда, задача аякландаганда яки Сез Stop басса, дә туктарга. “until my balance runs out” сайлау — ул һаман да чик — ул Сез языган сан түгел, ә Сезнең балансыгыз.
Стандарт режим буенча — туктарга һәм сезне хәбәр итәргә. Сез бюджет билгеләмәгән булсагыз, ничне дә дәвам итми һәм сез сораган җаваптан башка берне дә чыгым ителми.
Әйтешчә, сезнең җыелгычларыгыз һәр этапны төрле итеп җибәрә, шуңа күрә дәк \\\ задача приложение ачык булганда гына дәвам итә. фон тиклегән йөршеләр күбәргендә, сервер кушымта ябык булганда, үзе шул бюджет пределах эчендә, максимум 40 этап һәм 6 сәгать эчтә киләге этапны үз эчендә җибәрә, һәм эш тәмамланганда сиңа бер тапкыр хәбәр бирә. Бу өчен ул эш яңгырый келәгә, эш яңгыруы дәүам иткәч, үзе генә билгеләгән ачкыч белән репозиторий токенын бүктеп тота, һәм эш тәмамланганда, һәрвакыт 6 сәгать эчендә аны үчерә. Фон эшчесе башка берчә эш кебек үзнеңە үз бранчына языша.
Бу билге турында
Access token сезнең устройстваларында саклана һәм алар арасында end-to-end шифрланган теләшмәләр иресендә синхронлаша, шуныбы means сервер аның укый алмыйган махфи ← копиясын гына саклай. Ул яңадан... тәхәтне чиндирү, һәр бер сорау белән Nymbot работнигына бара, сервер яKLендә укылалы сакланмый һәм релеясларга чыгарылмый. Сервер аны тик бүктә генә саклый, ә... фонныда йөреү син ултырдың, ул максимум 6 сәгать эшли. Аны сиз кулланырга теләгән бер генә репозиторий белән чикләгез һәм эшегез тәмамланганда аны провайдерыңыздаңнан аерыгыз.
Синхронлашу сәхәбәсеннән файдаланган чат, сиз яңадан подключация итмичә, керү үткән һәрбер җыелгычта эшли. Бер җыелгычта сәхәбәне өзеп тору башка җыелгычларда да токенны чинди. Токен һич качан... сервер үткерүконтейнеры.