Wissensdatenbank Der Code
Arbeiten in einem Git-Repository
Pro kann in einem Ihrer Repositorys so arbeiten, wie ein Codierungsagent es tut - Ihre tatsächlichen Dateien lesen und mit Schreiben ändern.
Diese Seite wurde der Einfachheit halber maschinell übersetzt. Es gilt das englische Original.
Verbindung zu einem Repository
?git, oder die Gehen Chip in der Symbolleiste verbindet einen Anbieter: GitHub, GitLab oder Gitea/Forgejo – der Codeberg und selbst gehostete Instanzen abdeckt.
Ankündigen Sie sich auf Nostr kann stattdessen als Adresse eingefügt werden.
Sie müssen den Namen des Repositories nicht eingeben. Geben Sie den Token ein und wählen Sie Liste, was dieser Token erreichen kann: Nymbot fragt den Forge, was dieser Token sehen kann, und zeigt die Antwort als eine Liste, die Sie überprüfen. Checking verbindet jeden mit seinem Standardzweig, der bereits ausgefüllt ist, und legt sie alle in diesen Chat. Alles, was bereits verbunden ist, wird als solches angezeigt, anstatt ein zweites Mal angeboten. Diese Anfrage geht von Ihrem Gerät direkt zum Forge - nicht durch den Nymbot-Arbeiter - so dass das Token nicht überall reist, wo es nicht bereits geht.
Sobald der Chip angeschlossen ist, zeigt er den Namen des Repositories an und die mit einem
Pro Modell ausgewählte Ausführung im Kontext dieses Repositorys.
?git disconnect Entfernen Sie es. Entkoppeln in der Repository-Liste vergisst das Token, hält aber das Repository dort, gekennzeichnet als ohne Token, so dass Sie später ein neues hinzufügen können.
Repositories auf Nostr angekündigt
Einige Repositories verkünden sich auf Nostr und nicht nur auf einer Schmiede, indem sie Die NIP34 Das Protokoll dahinter hängen Die Ankündigung ist ein Nostr-Ereignis, das den Namen des Projekts, seine Inhaber, die Relais, die seine Patches und Probleme sammeln, und die URLs, von denen es klonen kann, trägt.
Paste ein naddr oder a nostr:// Adresse in das Repository-Formular und Druck Schau es hoch. 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.
Ein Repository, dessen Klon-URL auf GitHub, GitLab, Gitea oder Forgejo liegt – selbst gehostet – ist ein Nymbot, der lesen kann. git:// oder ssh hat keine HTTP-API, um Dateien durchzulesen, und Nymbot sagt so anstatt halbverbindlich.Wo der Host selbst gehostet wird, ist der Anbieter eine Vermutung aus seinem Namen, und Sie können es korrigieren, bevor Sie speichern.
Ein Repository, das auf diese Weise hinzugefügt wird, ist badged hängen in der Liste, und antwortet nennt es nach dem Namen, den es verkündet, anstatt nach seinem Weg auf dem Spiegel.
Was es tun kann
Das Modell kann Verzeichnisse auflisten, Dateien lesen und den Baum durchsuchen und dann mit dem antworten, was es tatsächlich gefunden hat - also "warum gibt die Retry-Schleife früh auf" wird aus Ihrem Code beantwortet, nicht aus einer Vermutung über Code, der wie Ihr aussieht.
Es sieht den Zweig, den Sie verbunden haben, an seinem aktuellen Kopf.
mit Server läuft für den Chat aktiviert, kann es auch bitten, einen Befehl gegen Ihren Code, wie die Tests, auf einem Nymbot-Server auszuführen.
Drehen schreibt auf
?git writes on fügt die Möglichkeit hinzu, Dateien zu kompromittieren, Zweige zu erstellen und Drag- oder Fusionsanfragen zu öffnen. Standardmäßig deaktiviert, und es lohnt sich, es zu verlassen, bis Sie es wollen.
Mit Schreiben auf, bitten Sie um eine Änderung und Sie erhalten einen Zweig und eine Pull-Anfrage zu überprüfen, anstatt ein Patch in den Chat eingefügt: jede Aufgabe funktioniert auf Ein Zweig von sich selbstNichts wird zu Ihrem Standardzweig gedrückt, es sei denn, Sie schalten es aus, das ist der Zweig, den Sie verbunden haben, und Sie haben ihn angefordert.
Die Bearbeitungen eines Laufens gehen als ein Kommit pro Repository ein, am Ende des Laufens oder wenn das Modell entscheidet, dass ein Stück Arbeit abgeschlossen ist. Fragen, bevor Sie sich verpflichten Die Ausführung hält dann ihre Änderungen zurück, die Antwort zeigt sie als Diff und Anwenden Sie verpflichten sich, während Entlassung Werfen Sie es weg, es kostet nichts.
Eine Branche für jede Aufgabe
mit Jede Aufgabe bekommt einen eigenen Zweig auf, die es für jedes Repository ist, es sei denn, Sie schalten es aus, eine Aufgabe, die schreibt, verpflichtet sich an einen eigenen Zweig namens
nymbot/ Nymbot macht es vom Kopf der Arbeitszweig, wenn die Aufgabe ihren ersten Kommit macht, so dass eine Aufgabe, die nur liest, keine Zweige überhaupt macht.
Wenn die Aufgabe abgeschlossen ist, macht Nymbot das, was Wenn getan sagt zu. Öffnen Sie eine Pull-Anfrage Das ist der Defekt; Bieten Sie einen merge hinterlässt einen Merge-Button auf der Antwort; Verlassen Sie die Branche nicht mehr funktioniert. Der Standard ist in Settings eingestellt, unter Wenn eine Aufgabe’s Branche abgeschlossen istWenn der Forger keine API für Pull-Anfragen hat, die Nymbot verwenden kann, oder es eine ablehnt, bleibt der Zweig so, wie er ist, und die Antwort sagt so.
Die Antwort zeigt den Zweig mit Offener PR, gehen Und Delete, und das Task-Panel listet es mit der Aufgabe auf. Während die Aufgabe noch läuft, kann ihre Karte, das Task-Panel und die Liste dessen, was läuft, den Zweig benennen, sobald er existiert, auf jedem Gerät, das in das Konto eingeloggt ist. Eine Aufgabe, die gestoppt oder teilweise fehlschlägt, hält immer noch ihren Zweig zurück, so dass er wie jeder andere zusammengeführt, gelöscht oder gereinigt werden kann. Eine Verschmelzung ist ein zusammengeführter Zweig durch die Forge’s eigene Pull-Anfrage, angeschlossen an den aufgezeichneten Commit Nymbot, so dass die dort in der Zwischenzeit gedrückten neuen Commits nie unsichtbar zusammengeführt werden. Nichts Öffnen Sie die PR, um zu lösen oder Bitten Sie Nymbot, die Branche zu aktualisierenGitHub und Gitea oder Forgejo können das tun; GitLab hat dafür keine API, so dass Sie es dort in der Fusion-Anfrage lösen.
Änderungen an CI- und Workflow-Dateien warten immer noch auf Ihre Überprüfung, genau wie sie ohne einen eigenen Zweig tun.
Ihr Gerät erinnert sich an die nymbot/ Branchen dieses Kontos gemacht.Die nächste Aufgabe in diesem Repository oder Reinigen Sie Nymbot Branches in der Repository-Liste, löscht diejenigen, deren Pull-Anforderung zusammengeführt oder geschlossen ist, oder die sieben Tage alt sind und nichts übrig ist, um zu fusionieren. Ein Zweig wird nur gelöscht, wenn er immer noch am Commit Nymbot aufgezeichnet endet, so dass jemand gedrückt hat, seitdem allein gelassen wird, und keine andere Zweig wird jemals berührt. Es läuft von Ihrem Gerät mit dem Token, das es bereits sendet; der Server behält kein Token, um es später zu tun.
Eine Aufgabe hat dann das Repository an sich, und eine zweite auf derselben Zweigstelle liest sie nur, bis die erste fertig ist.
Undoing was ein Lauf verändert
Eine Antwort, die in Ihr Repository geschrieben wurde, sagt, was es berührt hat: das Repository, die Zweigstelle und jede Datei. Undo diese Veränderungen stellt sie zurück - jeder dieser Wege wird beim Kommit gelesen, auf dem der Zweig vor dem Lauf stand und verpflichtet, wie er war. Ein Zweig von sich selbst Sie haben den Arbeitsraum allein verlassen, so dass es nichts gibt, was man zurückbringen kann: Delete Entfernen Sie stattdessen Ihren Zweig.
Nichts wird gelöscht und keine Geschichte wird neu geschrieben: Was Nymbot getan hat, bleibt im Protokoll, es ist einfach nicht mehr der Zustand des Zweigs.
Undoing berührt kein Modell, so dass es keine Credits ausgibt - der Zugangstoken reist mit dieser Anfrage so, wie es mit jeder anderen tut, und nichts über den Checkpoint wird irgendwo gespeichert, außer Ihrem eigenen Gerät.
Eine Zweig- oder Pull-Anforderung, die geöffnet wurde, wird aufgelistet und hinterlassen, wo sie ist. Das Schließen der Pull-Anforderung von jemandem in ihrem Namen ist keine Aufhebung, und das Löschen einer Zweig- oder Pull-Anforderung, die andere Personen möglicherweise abgeholt haben, ist weder - tun Sie diese selbst, wenn Sie möchten, dass sie weg sind.
Was kostet eine Repo-Aufgabe
Eine Repo-Aufgabe verwendet bis zu sechs Modellanrufe pro Nachricht – ansehen, lesen, suchen, antworten – die jeweils an das geklebte Modell gebucht werden. Für den PreisNur die tatsächlich verwendeten Anrufe werden berechnet, so dass eine Frage, die aus einer Datei beantwortet wird, die Kosten für eine normale Antwort beträgt.
Die App meldet die Gesamt- und Anzahl der Anrufe nach jeder Repo-Aufgabe.
Wenn eine Aufgabe aus dem Raum läuft
Eine Repository-Aufgabe ist eine Schleife, keine einzelne Antwort: Das Modell listet ein Verzeichnis auf, liest eine Datei, sucht nach dem Baum, liest einen anderen und schreibt erst dann.
Wenn eine Aufgabe ihre Zuwendung mit noch zu erledigender Arbeit nutzt, stoppt Nymbot, gibt Ihnen, was sie hat, und sagt so.
Sie können es auch fortführen lassen. Setzen Sie ein Fortsetzungsbudget in den Einstellungen und Nymbot kauft einen weiteren Zuschlag aus dem gleichen Saldo, wenn eine Aufgabe abläuft, und holt genau auf, wo sie aufgehört hat, anstatt das Repository von Anfang an zu lesen. Es geht ein Bein zu einer Zeit, jedes Bein sagt, was es kostet, und stoppt, wenn das Budget ausgegeben wird, die Aufgabe abgeschlossen ist, oder Sie drücken Stop.
Nichts geht weiter und nichts wird über die Antwort hinausgegeben, die Sie angefordert haben, es sei denn, Sie haben ein Budget festgelegt.
Normalerweise sendet Ihr Gerät jedes Bein, so dass eine Aufgabe nur fortgesetzt wird, während die App geöffnet ist. Hintergrund läuft angeschaltet, sendet der Server die nächsten Beine selbst, während die App geschlossen ist, innerhalb des gleichen Budgets, bei maximal 40 Beinen und 6 Stunden, und sagt Ihnen einmal, wenn die Aufgabe abgeschlossen ist. Um dies zu tun, hält er das Repository-Token mit einem Schlüssel versiegelt, den er nur hält, während die Aufgabe arbeitet, und löscht es, wenn die Aufgabe endet und immer innerhalb von 6 Stunden.
Über diesen Token
Der Zugriffstoken wird auf Ihren Geräten gespeichert und synchronisiert zwischen ihnen innerhalb Ihrer end-to-end-verschlüsselten Einstellungen, so dass der Server nur eine versiegelte Kopie hält, die sie nicht lesen kann. Gerät WIPE, reist mit jeder Anfrage zum Nymbot-Arbeiter und wird niemals auf lesbarer Serverseite gespeichert oder an Relays veröffentlicht. Hintergrund Run Sie haben angeschaltet funktioniert, für maximal 6 Stunden. erstrecken Sie es auf das einzige Repository, das Sie beabsichtigen zu verwenden, und widerrufen Sie es bei Ihrem Anbieter, wenn Sie fertig sind.
Weil es synchronisiert, funktioniert ein Chat, der das Repository verwendet, auf jedem Gerät, auf dem Sie sich anmelden, ohne es erneut zu verbinden. Server läuftUnd der Container.