123SUDODocs
Gidsen

Codewerkruimte

Wijs 9xchat naar een projectmap om scripts te inspecteren, te doorzoeken, uit te voeren, git-bewerkingen uit te voeren en AI-diffs in je codebase te bekijken.

Code verandert 9xchat in een agentische codeeromgeving. In plaats van losgekoppelde fragmenten te kopiëren en te plakken, opent u een volledige projectmap op schijf. De AI-assistent kan je directorystructuur verkennen, bestanden lezen, code doorzoeken, projectscripts uitvoeren, de git-geschiedenis inspecteren en bewerkingen voorstellen.

De Code-werkruimte is een geavanceerde desktopfunctie waarvoor een actief Pro-abonnement vereist is. Zie Credits, Pro en gebruik.

Een werkruimte openen

  1. Sleep een projectmap naar het scherm Codeof klik opMap selecteren.
  2. 9xchat indexeert de mapstructuur en geeft deze weer in het linkerprojectpaneel.
  3. Uw recente werkruimten worden opgeslagen onder Recente werkruimten voor snelle toegang.

Een werkruimte kan meer dan één map bevatten. Voeg een tweede root toe als een wijziging betrekking heeft op een app en de bibliotheek waarvan deze afhankelijk is. De eerste map blijft de primaire root, die bepaalt waar een dubbelzinnig pad eindigt. Als u de mappen in een werkruimte wijzigt, wordt de geschiedenis van het ongedaan maken van de AI gewist, dus de app vraagt ​​u eerst eventuele openstaande bewerkingen te behouden of te weigeren in plaats van ze vast te houden.

9xchat Codeerwerkruimte voordat een project wordt geopend, met een mapneerzetgebied en een map selecteren
Code wordt geopend in een map in plaats van in een enkel bestand, waardoor de AI volledig contextueel inzicht krijgt in uw project.

Navigatie in de werkruimte

De indeling van de Code-werkruimte is opgesplitst in gespecialiseerde panelen:

  • Sessieszijbalk: Houd aparte gespreksthreads voor verschillende taken in dezelfde codebase (bijvoorbeeld het herstructureren van auth-logica versus het toevoegen van unit-tests).
  • Bestandsverkenner: Blader door uw bestandshiërarchie met bestandstypepictogrammen en map uitbreiding.
  • Snelle bestandszoeker (⌘P / Ctrl+P): Vaag zoeken naar bestandsnamen op uw project om rechtstreeks naar elk bestand te springen.
  • Projectzoekopdracht in volledige tekst: Grep-tekst, functies en symbolen over de hele wereld volledige werkruimte met wedstrijdvoorbeelden.
  • Bestandsvoorbeeld met syntaxisaccentuering: Bekijk bestanden naast elkaar met regelnummers en taalaccentuering.
9xchat Codewerkruimte met een geopend project: sessies aan de linkerkant, de bestandsstructuur aan de rechterkant en Uitvoeren en Handmatig in de bovenste balk
Een open werkruimte. De bovenste balk bevat de bedieningselementen die op het hele project van invloed zijn: voer de invoerpagina uit, kies welke scripts zijn toegestaan ​​en schakel tussen Handmatige en Automatische beoordeling.

Agentische codeerhulpmiddelen

Tijdens het chatten in een Code-sessie met ondersteunde cloudmodellen heeft de assistent toegang tot ingebouwde ontwikkelaarstools:

GereedschapscategorieMogelijkheden
BestandsbewerkingenBestanden lezen, nieuwe bestanden maken, mapinhoud weergeven en zowel bestandsnamen als bestandsinhoud doorzoeken
AI-bewerkingen en verschillenStel exacte tekenreeksvervangingen of herschrijvingen voor een of meerdere bestanden voor
Git-integratieControleer git status, bekijk git diff, inspecteer de commitgeschiedenis en stage commits
Script RunnerVoer npm/yarn/pip-scripts uit, voer testsuites uit en controleer actieve achtergrondprocessen
PakketbeheerControleer en installeer projectafhankelijkheden
BrowserOpen een pagina in een venster naast de werkruimte en lees wat erop staat

Zoeken naar inhoud gebruikt ripgrep wanneer het op uw computer is geïnstalleerd, waardoor de bestands- en resultaatplafonds worden verwijderd die een JavaScript-scan nodig heeft. De assistent roept hoe dan ook dezelfde tool aan, dus er verandert niets aan het gesprek; een grote repository wordt eenvoudigweg niet meer in verkorte vorm doorzocht.

Of ripgrep nu aanwezig is of niet, dezelfde regels bepalen welke bestanden mogen worden gelezen. Een snellere zoekopdracht breidt niet uit wat de assistent mag zien.

De agentische coderingsworkflow is afhankelijk van de mogelijkheden voor het aanroepen van tools die worden ondersteund door cloudmodellen. Ollama-modellen ondersteunen momenteel geen tooluitvoering in 9xchat.

AI-bewerkingen beoordelen

Bewerkingen worden geënsceneerd in plaats van geschreven, en de diff-viewer toont toevoegingen en verwijderingen met regelnummers en syntaxisaccentuering. Keepschrijft de wijziging naar schijf;Ongedaan maken verwijdert het.

Handmatig en automatisch

Elke sessie is ofwel Handmatig(elke wijziging wacht tot u deze behoudt of ongedaan maakt) ofAutomatisch, waarbij bewerkingen worden toegepast zodra ze worden aangebracht. Het verwijderen en hernoemen van een bestand vraagt ​​nog steeds in de Auto-modus, omdat dat de twee zijn die pijnlijk zijn om terug te draaien.

De automatische modus geldt per sessie en wordt gereset naar Handmatig wanneer de app opnieuw wordt opgestart. Schrijftoegang is niet iets dat bij lanceringen stilletjes moet blijven bestaan.

De automatische modus stopt vanzelf na een mislukte aanvraag, of na tien beurten zonder beoordeling, en de kaart zegt welke. Een lange refactor loopt legitiem meerdere beurten – en dat geldt ook voor een model dat zijn eigen slechte bewerking in een lus plaatst. Vanuit de lus zien de twee er identiek uit, dus de telling is wat de tweede tegenhoudt. Als u automatisch weer inschakelt, wordt de teller gereset.

Houd uw code onder versiebeheer

Door een AI-bewerking aan te houden, worden echte bestanden in uw projectmap op schijf gewijzigd. Werk altijd in een git-repository of onderhoud een back-up, zodat je de wijzigingen indien nodig kunt terugdraaien.

De scripts van dit project uitvoeren

Scripts die de assistent kan uitvoeren geven een overzicht van wat package.json definieert en laten u ze één voor één inschakelen. Standaard is niets ingeschakeld, dus een nieuwe werkruimte kan niets uitvoeren totdat u zegt welke scripts veilig zijn - en als het project geen package.json heeft, of geen scripts definieert, zegt het dialoogvenster dat in plaats van een lege lijst aan te bieden.

Als u de automatische modus inschakelt, wordt elk script in de lijst ingeschakeld zolang het is ingeschakeld.

De scripts die de assistent kan uitvoeren, bevatten een lijst met build, dev, lint en test terwijl lint en test zijn ingeschakeld
Elk script wordt op zichzelf ingeschakeld en de regel eronder houdt de telling bij. Er is niets aan totdat u het inschakelt.

Een script dat blijft draaien (een ontwikkelaarsserver, een watcher) wordt verplaatst naar Scripts uitvoeren, waar u de uitvoer ervan kunt lezen of stoppen. De uitvoer kan opnieuw worden afgespeeld, dus een achtergronduitvoering die eerder in een sessie is gestart, kan nog steeds worden gelezen nadat u verder bent gegaan, en het aantal actieve processen blijft zichtbaar in de bovenste balk. Een proces dat u niet kunt zien, is het enige dat deze mogelijkheid nooit mag creëren.

Een voorbeeld van een pagina bekijken

Uitvoeren verschijnt wanneer de werkruimte een HTML-invoerdocument bevat en opent dit in een uitvoeringsvoorbeeld naast de editor. Lokale stylesheets, scripts en afbeeldingen worden vanuit de werkruimte geladen, zodat de pagina als geheel wordt weergegeven in plaats van als kale opmaak.

De preview is geïsoleerd: geen toegang tot de app, geen netwerk en geen eigen bestandstoegang. Dat is de reden waarom de bronnen ervan binnen het document reizen – en waarom een ​​pagina die van internet wordt opgehaald, aangeeft dat deze verzoeken zijn geblokkeerd.

Het voorbeeld van de werkruimte met een lokale pagina, met het logo, de kop en drie lijstitems die zijn gebouwd door een eigen script
De pagina zoals deze daadwerkelijk wordt uitgevoerd: het stylesheet, het SVG-logo en de lijst die het uitgestelde script opbouwt nadat het document is geparseerd.

Browser opent een echte pagina in een venster naast de werkruimte, wat de andere helft is: het voorbeeld is voor een document dat u aan het bewerken bent, het browservenster is voor het document dat u bekijkt.

Herinneringen aan de werkruimte

Een codesessie kan dingen onthouden die betrekking hebben op de werkruimte in plaats van op het gesprek, dus een feit over hoe een project is opgebouwd, blijft behouden in de volgende sessie op dezelfde codebase. Sessieherinneringen geeft werkruimteherinneringen weer boven sessieherinneringen; beide bevinden zich ook in Bibliotheek → Herinneringen, waar een werkruimtefilter ze op naam toont.

Kijken wat het kost

Sessiegebruik bekijken geeft aan wat een codeersessie heeft uitgegeven. Agenten lezen meer bestanden en bellen meer tools dan een chat, dus dit is de moeite waard om te controleren op een lange refactor in plaats van aan het einde van de maand.

Op deze pagina