KI-assistent¶
En assistent inne i redigereren som styrer den KI-agenten på kommandolinjen du allerede har installert — forklar, omstrukturer, rett, skriv tester, sammenfatt, oversett og samtal, med hver foreslåtte endring vist som en forskjell du kan gå gjennom og ta i bruk med vilje.
Ta med din egen agent¶
Assistenten ber deg ikke om en API-nøkkel og logger deg ikke inn noe sted. Den kjører i stedet en lokalt installert KI-agent på kommandolinjen som en hjelper og strømmer utdataene dens inn i redigereren. Pålogging, abonnementet ditt og valget av modell hører alt sammen til det verktøyet.
- I dag: Claude Code (
claude) og Codex CLI (codex). Installer én av dem, og logg inn én gang (såclaudeellercodexvirker fra en terminal); redigereren finner den av seg selv. Gemini tilbys også, men integrasjonen mot kommandolinjen dens er ennå ikke bekreftet. - Letingen skjer av seg selv og stopper ingenting. Redigereren leter etter agenten i bakgrunnen rett etter oppstart — vinduet venter aldri på den. Mens letingen pågår, er Vis → KI-samtale kort slått av med hjelpetipset Leter etter KI-motoren…; noen sekunder senere blir den enten slått på (agenten ble funnet) eller stående nedtonet med et hint som sier hva du må installere.
Agenten er et eget program du installerer
Redigereren leverer eller henter ikke noen KI-agent, og den sender ikke teksten din noe sted selv — det er kommandolinjeagenten du installerte, som sender forespørselen med sin egen konto og sin egen nettforbindelse. Er agenten ikke installert eller ikke pålogget, blir KI-funksjonene ganske enkelt stående av, og ingenting annet i redigereren påvirkes.
Krav¶
Assistenten har ett ufravikelig krav: en støttet KI-agent på kommandolinjen som
er installert og pålogget i systemets PATH.
- Installer en støttet agent. I dag er det
Claude Code (
claude) eller Codex CLI (codex). - Logg inn én gang. Kjør agenten fra en terminal, og fullfør dens egen innlogging, så den virker uten et grensesnitt etterpå. Redigereren ber aldri om og lagrer aldri en API-nøkkel — abonnementet og innloggingen din ligger helt og holdent i det verktøyet.
- Se til at den ligger i
PATH. Kan redigereren ikke kjøre den, er Vis → KI-samtale nedtonet med et hjelpetips som forklarer hvorfor.
KI-samtale-panelet¶
Det finnes ingen egen KI-meny på øverste nivå — alt ligger i ett panel nederst, som slås av og på fra Vis → KI-samtale. Var panelet åpent da du sist lukket redigereren, åpnes det igjen ved neste oppstart (så snart motoren er funnet).
Fra øverst til nederst viser panelet:
- en Motor-rulleliste (valget ditt huskes mellom øktene) og avkrysningsboksen Tillat filendringer (se nedenfor);
- en statuslinje — motoren og versjonen som ble funnet, en merknad om leting eller
framdrift, eller hintet om å «installere og logge inn». Etter det første svaret
navngir den også den modellen agenten faktisk brukte, for eksempel
Motor: Claude (2.1.200) · claude-sonnet-5— verdt et blikk, siden modellen avgjør hva kjøringen koster deg (se Å velge modell); - en tynn opptattlinje med en Stopp-knapp mens agenten arbeider;
- konsollen — hele samtalen i én visning;
- en hintlinje som viser de tilgjengelige kommandoene som klikkbare lenker.
Konsollen¶
Samtalen virker som en terminal: historikken over, og du skriver på slutten, etter
›-ledeteksten.
- Enter sender; Shift+Enter setter inn et linjeskift, så forespørsler over flere linjer virker.
- Klikker eller skriver du hvor som helst i historikken, flyttes markøren tilbake til ledeteksten — historikken kan merkes og kopieres, men aldri redigeres.
- Esc avbryter den forespørselen som kjører; kjører ingenting, tømmer den det du
har skrevet etter
›. Esc virker med fokus hvor som helst i panelet. - Ctrl+A merker bare det spørsmålet du holder på å skrive, så det du skriver videre, erstatter det; har du ikke skrevet noe, merkes hele samtaleutskriften i stedet, klar til å kopieres.
- Pil opp og Pil ned henter fram det du har spurt om før, slik et skall gjør. Pil opp på den første linjen av det du skriver, går bakover gjennom de tidligere spørsmålene dine; Pil ned går framover igjen, og går du forbi det nyeste, får du tilbake den halvskrevne linjen du begynte med. Inne i en forespørsel over flere linjer flytter de deg ganske enkelt mellom linjene, og så snart du endrer et framhentet spørsmål, blir det ditt nye utkast. Historikken gjelder per panel og beholdes ikke mellom øktene.
- Mens et svar strømmer inn, følger visningen med hvis du er nederst; ruller du opp for å lese, blir den stående. Når svaret er ferdig, plasserer visningen det med omtanke: et kort svar rulles til bunnen, så du ser det og ledeteksten under det, mens et langt svar stiller Assistent-overskriften sin på linje med toppen av panelet, så du kan lese fra begynnelsen.
- Hvert svars Markdown gjengis for seg, så nummererte lister begynner på 1 hver gang i stedet for å fortsette nummereringen fra det forrige svaret.
Kommandoer¶
Skriv en kommando ved ledeteksten, eller klikk på den i hintlinjen (kommandoer som tar et argument, får et mellomrom på slutten og venter på at du gjør linjen ferdig):
| Kommando | Hva den gjør | Resultat |
|---|---|---|
.explain |
Forklar den merkede koden | svar i samtalen |
.summarize |
Sammenfatt den merkede teksten | svar i samtalen |
.refactor <how> |
Omstrukturer slik du sier (for eksempel .refactor extract a helper) |
en endring du kan gå gjennom |
.fix |
Rett den merkede koden | en endring du kan gå gjennom |
.tests |
Skriv enhetstester for merkingen | en endring du kan gå gjennom |
.translate <language> |
Oversett merkingen (for eksempel .translate German) |
en endring du kan gå gjennom |
.model <id> |
Fest den modellen denne redigereren ber om (se Å velge modell) | besvares med det samme, uten at agenten kjøres |
Alt annet du skriver, håndteres naturlig:
- Ren tekst er et fritt formulert spørsmål til agenten, sendt sammen med det du har på skjermen (se nedenfor).
- En linje som begynner med
/, er en av agentens egne kommandoer (som Claudes/help) og sendes videre nøyaktig som du skrev den — ingenting fra redigereren legges til, og det trengs ikke noe samtykke, for ingenting av ditt sendes. Det gjelder motorer der kommandosettet er bekreftet — i dag Claude; på de andre behandles en/-linje som et alminnelig spørsmål. - Et
.ordsom ikke gjenkjennes, er ikke en feil; det sendes videre som en forespørsel.
Ikke hver kommandolinjekommando betyr det samme her som i agentens egen terminal: noen
krever en samtale med et grensesnitt som redigererens kjøringer ikke har, noen gjelder
samtaler redigereren allerede styrer selv, og noen — som /model — kan ganske enkelt
ikke overleve én enkelt forespørsel. Sender du en av dem, sender redigereren den videre
likevel og legger til en kort merknad om hvorfor den kanskje ikke gjør det du venter.
Du ser hver merknad én gang per økt.
Agentens egen /model kan ikke bli sittende — bruk .model
Hvert spørsmål kjører agenten på nytt, og en ny kjøring begynner alltid med den
modellen kommandolinjeverktøyet ditt er satt opp med. /model … svarer «Modellen
er satt til … bare for denne økten», men den økten er over i det øyeblikket svaret
er det: det neste spørsmålet — selv et som fortsetter den samme samtalen — er
tilbake på den oppsatte modellen. Bruk .model <id> i stedet; det er
redigererens egen kommando og fester modellen for hvert senere spørsmål. Se
Å velge modell.
Matchingen skiller ikke mellom store og små bokstaver, og hintlinjen snevres inn mens du
skriver (.r → .refactor …).
Merking eller hele dokumentet¶
Kommandoene virker på den gjeldende merkingen. Med ingen merking virker de på hele dokumentet — og fordi det sender hele filen til agenten, spør redigereren først: Sende hele dokumentet «…» til Claude? Du blir spurt én gang per dokument per redigeringsøkt; avslår du, avbrytes sendingen, og det du skrev, blir stående. Spørsmålet kan slås av under Innstillinger → KI-assistent, med valget Spør før et helt dokument sendes til KI-motoren; med det av sendes hele dokumentet uten at det spørres.
Hva assistenten vet om dokumentet ditt¶
Agenten leser filer fra disken. Overlatt til seg selv ville den derfor svare på spørsmål om en fil du har endret, men ikke lagret, ut fra den gamle teksten, og den ville ikke se en buffer uten navn i det hele tatt. Derfor forteller et fritt formulert spørsmål den hva du faktisk har åpent:
- Lagret uten ulagrede endringer — assistenten navngir ganske enkelt filen og lar agenten lese den. Ingenting forlater redigereren, så det spørres ikke om noe.
- Ulagrede endringer, eller et dokument som aldri er lagret — den gjeldende teksten sendes sammen med spørsmålet ditt. Små dokumenter reiser i selve spørsmålet; større skrives til en midlertidig kopi som agenten pekes mot. Kopien slettes så snart utvekslingen er over.
- Med en mappe åpen — hvert annet åpent dokument med ulagrede endringer tas med på samme måte, så agenten ser prosjektet slik du ser det, og ikke slik det sist ble lagret.
Fordi det sender tekst ut, spør redigereren først — én gang per dokument per redigeringsøkt, og én gang for hele forespørselen selv når flere dokumenter er med: Det gjeldende, ulagrede innholdet i disse dokumentene sendes til Claude: …. Fortsette? Avslår du, forlates forespørselen, og det du skrev, blir stående.
En merking går fortsatt foran som det du peker på: den sendes som Relevant merking ved siden av dokumentet og ikke i stedet for det.
I den skrivebeskyttede standardmodusen får agenten også beskjed om at den ikke kan endre
dokumentet ditt, og at en endring bør foreslås gjennom kommandoene .refactor, .fix,
.tests og .translate — som viser deg en forskjell.
Å gå gjennom og ta i bruk endringer¶
Endringskommandoer skriver aldri om teksten din i stillhet. Når agenten er ferdig, åpnes et gjennomgangsvindu med én avkrysselig, farget endringsgruppe per endring — fjernede linjer i rødt, tilføyde linjer i grønt:
- fjern krysset ved de endringene du ikke vil ha;
- Bruk erstatter merkingen (eller hele dokumentet, når ingenting var merket) med bare de endringene du har tatt imot;
- Forkast lar bufferen være nøyaktig som den var.
Endringer som er tatt i bruk, er alminnelige endringer, så Ctrl+Z angrer dem som alt
annet. Filens linjeskiftstil (CRLF/LF) beholdes. Nekter agenten å gjøre en endring,
kommer forklaringen dens fram som et vanlig svar i samtalen i stedet for som en falsk
forskjell.
Fortsatte du å redigere mens agenten arbeidet, skjøter redigereren aldri en foreldet endring over den nyere teksten din. Hva den gjør i stedet, avhenger av hva den fortsatt kan vite sikkert:
- skrivingen din flyttet målet, men lot det være helt → endringen tas i bruk der teksten er nå;
- kommandoen dekket hele dokumentet, og dokumentet har siden endret seg → forslaget sammenlignes med den gjeldende teksten din, og du går gjennom den forskjellen, så svaret ikke går til spille;
- den opprinnelige teksten er borte, eller den finnes nå flere steder → redigereren avslår heller enn å gjette, og ber deg kjøre kommandoen på nytt.
Fargene i forskjellen følger fargetemaet ditt: temaer kan sette egne farger for Tilføyd tekst i forskjell og Fjernet tekst i forskjell (som kan endres under Innstillinger → Syntaksfarging → Temaer), og uten dem velger redigereren lesbare standarder for lyse og mørke grensesnitt.
Samtaler¶
Fritt formulerte spørsmål utgjør en fortløpende samtale: agenten husker dine
tidligere spørsmål og svar. Det er én samtale per åpnet mappe (eller per fil, når ingen
mappe er åpen), så prosjekter som ikke har noe med hverandre å gjøre, deler ikke
sammenheng. Endringskommandoer (.refactor, .fix …) kjører med vilje for seg selv og
forurenser ikke sammenhengen i samtalen. Samtaler bevares ikke — starter du redigereren
på nytt, begynner nye samtaler.
Både Claude og Codex fortsetter samtaler. Codex gir selv hver samtale et navn og
melder navnet når den begynner; senere spørsmål tar opp samtalen derfra. Slutter en
kjøring av Codex uten at noe navn er meldt, viser samtalepanelet [samtalen kunne ikke
fortsettes — motoren oppga ingen økt-ID; neste melding starter en ny] — svaret du
fikk, står ved lag, men det neste spørsmålet ditt begynner en ny samtale uten den
tidligere sammenhengen.
En samtale overlever også det som går galt. Å stoppe et svar beholder det, så et spørsmål du avbrøt, kan ganske enkelt tas opp igjen — spør «fortsett med den forrige oppgaven», så vet agenten fortsatt hva den holdt på med, selv om du stoppet den før den rakk å si et ord. En enkeltstående feil (en grense for forespørsler, en brutt forbindelse) kaster heller ikke historikken; bare en feil nummer to på rad begynner en ny samtale.
Å stoppe en kjøring¶
Mens agenten arbeider, kommer en opptattlinje fram med en Stopp-knapp — klikk på
den (eller trykk Esc hvor som helst i panelet) for å avbryte. Det som hadde strømmet
inn så langt, blir stående i utskriften, kjøringen merkes [Avbrutt], og ingen
endring tas i bruk. Samtalen beholdes, så det neste spørsmålet ditt fortsetter den (se
Samtaler). Å trykke Enter midt i en kjøring legger ingenting i kø;
statuslinjen minner deg om at agenten fortsatt arbeider.
Å la agenten redigere filer¶
Som standard er assistenten skrivebeskyttet: hver kjøring starter agenten med filredigeringsverktøyene, skalltilgangen og underagentene sperret, så endringer når deg bare som forslag du kan gå gjennom. For motorer med bekreftede tillatelsesflagg er det en hard sperre som agenten selv håndhever, uansett hvordan kommandolinjeverktøyet ditt er satt opp:
- Claude kjører med filredigeringsverktøyene, skalltilgangen og underagentene slått av.
- Codex kjører i sin skrivebeskyttede sandkasse (
-s read-only). Sandkassen virker annerledes: den slår ikke av skallkommandoer, den stenger dem inne — Codex kan fortsatt kjøre kommandoer for å se seg om, men de kan ikke skrive noe. Inntil videre ber redigereren i tillegg Codex med rene ord om å holde seg skrivebeskyttet.
Skrivebeskyttelse er ikke garantert for hver motor
Den harde sperren bygger på motorens egne tillatelsesflagg. Gemini har ennå ingen bekreftede flagg, så redigereren kan bare be den — som et beste forsøk — om å holde seg skrivebeskyttet; den kan ikke tvinge den. Regn skrivebeskyttelsen som ikke garantert for Gemini: den kan fortsatt skrive til disken, og oppførselen dens styres til sjuende og sist av oppsettet i ditt eget kommandolinjeverktøy. Hold slikt arbeid i en mappe under versjonskontroll om det betyr noe for deg.
Avkrysningsboksen Tillat filendringer (ved siden av motorrullelisten, av som standard, huskes mellom øktene) melder deg på at agenten selv får redigere:
- agentens filendringer godtas automatisk, og den kan endre filer i den åpnede mappen under en kjøring;
- hver skriving meldes i samtalen som
[agenten endret en fil: …], og åpne dokumenter tar inn endringene gjennom redigererens vanlige filovervåking; - når kjøringen er over, viser én enkelt sammendragslinje hele settet av berørte filer
med et antall, for eksempel
[endrede filer (3): …]; - Claudes skalltilgang og underagenter forblir sperret også med valget på.
Med Codex setter valget sandkassen dens til -s workspace-write: Codex kan da
redigere filer, og kjøre skallkommandoer, innenfor den åpnede mappen og den
midlertidige katalogen. Codex melder ikke endringene sine til redigereren, så
samtalen lister ikke filene den har endret, og det kommer ingen sammendragslinje;
åpne dokumenter tar likevel inn endringene gjennom filovervåkingen. Selve skrivingen
utføres av Codex' egen sandkasse: svarer Codex at den ikke fikk startet
kommandokjøreren sin, virker ikke den sandkassen på maskinen din — sjekk dens egen
diagnostikk (codex doctor), ikke redigereren.
Den samme bryteren finnes også under Innstillinger → KI-assistent, som Tillat KI-motoren å redigere filer. De er én innstilling og ikke to: tar du den i bruk under Innstillinger, krysses panelets avkrysningsboks av eller ikke med det samme, og det du setter i panelet, er det Innstillinger viser neste gang du åpner det.
Dokumenter med ulagrede endringer håndteres for deg. Agenten må ikke redigere filen på disken for et dokument du har endret, men ikke lagret — den kopien er foreldet, og å skrive til den ville gjøre at filen og redigereren din var uenige. Så agenten får i stedet den midlertidige kopien av den gjeldende teksten din å redigere, og når kjøringen er over, bringer redigereren resultatet tilbake inn i det åpne dokumentet ditt som en alminnelig endring du kan angre. Dokumenter uten navn virker på samme måte, selv om de ikke har noen fil i det hele tatt. Hendte det at du selv redigerte dokumentet mens agenten arbeidet, overskriver redigereren deg ikke: den åpner det vanlige gjennomgangsvinduet mot den gjeldende teksten din, så du bestemmer endring for endring. Å lukke dokumentet under kjøringen forkaster ganske enkelt agentens arbeid, med en merknad i samtalen.
Tillat filendringer kan overskrive eller slette arbeidet ditt
Med valget på skriver agenten rett til disken, og de skrivningene godtas automatisk — det finnes ikke noe gjennomgangsvindu per endring. Agenten kan overskrive, slette eller ødelegge filer i den åpnede mappen, og endringer i filer du ikke har åpne, vises ikke for deg som forskjeller. Slå bare dette på for en mappe under versjonskontroll (Git, SVN …): sjekk inn eller legg arbeidet ditt til side først, og bruk så forskjellen i versjonskontrollen til å se gjennom hver endring og ta tilbake alt du ikke vil ha — regn versjonskontrollen som angrefunksjonen din for agentens endringer. Gemini, der tillatelsesflaggene ennå ikke er bekreftet, ser helt bort fra dette valget, så endringene dens styres bare av oppsettet i ditt eget kommandolinjeverktøy.
Å bytte motor¶
Ved oppstart leter redigereren etter hver motor den kjenner, og Motor-rullelisten viser bare de som er installert på denne maskinen. Er motoren du valgte sist, ikke lenger der, tar den første installerte automatisk plassen dens. En motor du installerer mens redigereren kjører, dukker opp etter en omstart. Er ingen motor installert i det hele tatt, viser rullelisten hver motor redigereren kjenner, og panelet blir stående nedtonet med hintet om å installere og logge inn.
Velg en annen agent fra Motor-rullelisten når som helst (den er slått av mens en kjøring pågår). Et bytte avbryter letingen etter den forrige motoren, leter etter den nye i bakgrunnen og begynner nye samtaler — en samtale som er begynt med én motor, kan ikke fortsettes av en annen. Byttet tømmer også utskriften, siden den samtalen hørte til den andre motoren; det du hadde skrevet i inndatafeltet, beholdes.
Å velge modell¶
Som standard ber redigereren ikke om en modell, så hver kjøring bruker det
kommandolinjeverktøyet ditt er satt opp med — for Claude Code er det model i din
personlige ~/.claude/settings.json. Det er ofte ikke det du vil ha for redigereren:
det er et globalt valg, det kan endre seg uten at du merker det, og modellen avgjør hva
hver forespørsel koster.
Statuslinjen forteller deg hva som faktisk ble brukt, så du kan alltid sjekke. Vil du feste en modell for selve redigereren, skriver du den i samtalen:
| Du skriver | Hva som skjer |
|---|---|
.model claude-sonnet-5 |
hvert senere spørsmål ber om den modellen |
.model |
melder den festede modellen og den modellen som sist faktisk ble brukt |
.model default |
fjerner festingen; agentens egen standard gjelder igjen |
.model håndteres av redigereren — den starter aldri agenten, så den svarer med det
samme og koster ingenting. En festing får virkning fra det neste spørsmålet ditt, og
statuslinjen bekrefter den når svaret kommer.
Det samme kan settes for hånd, per motor, i OctoEdits innstillingsfil:
| Nøkkel | Verdi | Virkning |
|---|---|---|
ai/model/<engine> |
en modell-id, for eksempel claude-sonnet-5 |
hver kjøring bruker den modellen |
ai/model/<engine> |
tom / fraværende (standard) | kommandolinjeagentens egen standard |
<engine> er motorens id slik den står i rullelisten, med små bokstaver — for eksempel
ai/model/claude eller ai/model/codex. Panelets neste forespørsel må starte for at
den skal få virkning, og så kan du bekrefte den i statuslinjen. Gemini, der
modellflagget ennå ikke er bekreftet, ser bort fra innstillingen.
En beslektet innstilling for erfarne brukere
ai/programPath/<engine> gjør det samme for programfilen: sett den til en
absolutt sti når agenten er installert et sted redigererens PATH-søk ikke ser.
Begge nøklene er med vilje nødutganger som bare finnes i filen — en gal verdi feiler
høylytt i stedet for å bli hoppet over i stillhet.
Når en kjøring mislykkes¶
Avslutter agenten med en feil, viser samtalen [agent exited with code N fulgt av
agentens egne feillinjer og en avsluttende ] — for Codex oppstartsbanneret og
ERROR: …-linjene dens, som den 401 Unauthorized du får når du ikke er logget inn.
Det er som regel nok til å se hva som gikk galt; å kjøre agenten én gang fra en
terminal forteller deg resten.
Redigererens logg (mte.log, se Logging og diagnostikk)
fører hver kjøring i linjer som begynner med AI: — hvilke motorer som ble funnet,
programmet og argumentene for hver kjøring, avslutningskoden og agentens siste
feillinjer når en kjøring mislykkes; starter du redigereren med --log=debug, kommer
resten av agentens diagnostikkutdata med. Spørsmålet ditt og svaret vises aldri i
feilmeldingen og skrives aldri til loggen: loggen oppgir bare størrelsen på spørsmålet
i byte.
Personvern og kostnad¶
Forespørslene sendes av den kommandolinjeagenten du valgte, med dens egen konto og nettforbindelse — redigereren legger ikke til noen egen telemetri eller noen egne endepunkter. (Codex gjentar hele utvekslingen i diagnostikkutdataene sine; redigereren forkaster den kopien og skriver den aldri til loggen sin.) Hva som sendes (instruksjonen din, merkingen eller dokumentet ditt, og den ulagrede teksten i åpne dokumenter når et spørsmål trenger den), og hva det koster, styres av det abonnementet eller den avtalen agenten har. Ingenting forlater redigereren uten det samtykkespørsmålet som er beskrevet ovenfor, og statuslinjen navngir den modellen hver forespørsel faktisk brukte.
Hva som leveres i dag
Kommandoene virker på den gjeldende merkingen (eller hele dokumentet, med samtykke) og erstatter den når du tar imot. Det finnes to myndighetsnivåer: den skrivebeskyttede flyten ovenfor der det bare foreslås, eller den uttrykkelige påmeldingen Tillat filendringer. Det finnes ingen egen gjennomgang inne i redigereren av agentens egne endringer på disken — med Tillat filendringer på må du stole på versjonskontrollen din i stedet; det ene unntaket er et dokument som er åpent med ulagrede endringer, der endringene kommer tilbake gjennom redigereren.