Files
tf_code/packages/web/src/content/docs/nb/modes.mdx
opencode-agent[bot] d578f80f00 chore: generate
2026-02-09 17:35:30 +00:00

332 lines
8.4 KiB
Plaintext

---
title: Modi
description: Ulike moduser for forskjellige brukstilfeller.
---
:::forsiktighet
Modi er nå konfigurert gjennom alternativet `agent` i opencode-konfigurasjonen. De
Alternativet `mode` er nå utdatert. [Finn ut mer](/docs/agents).
:::
Moduser i opencode lar deg tilpasse oppførselen, verktøyene og ledetekstene for ulike brukstilfeller.
Den kommer med to innebygde moduser: **bygg** og **plan**. Du kan tilpasse
disse eller konfigurer din egen gjennom opencode-konfigurasjonen.
Du kan bytte mellom moduser under en økt eller konfigurere dem i konfigurasjonsfilen.
---
## Innebygd
opencode kommer med to innebygde moduser.
---
### Bygg
Bygg er **standard**-modus med alle verktøy aktivert. Dette er standardmodusen for utviklingsarbeid der du trenger full tilgang til filoperasjoner og systemkommandoer.
---
### Plan
En begrenset modus designet for planlegging og analyse. I planmodus er følgende verktøy deaktivert som standard:
- `write` - Kan ikke opprette nye filer
- `edit` - Kan ikke endre eksisterende filer, bortsett fra filer som ligger på `.opencode/plans/*.md` for å detaljere selve planen
- `patch` - Kan ikke bruke patcher
- `bash` - Kan ikke utføre skallkommandoer
Denne modusen er nyttig når du vil at AI skal analysere kode, foreslå endringer eller lage planer uten å gjøre noen faktiske endringer i kodebasen.
---
## Bytte
Du kan bytte mellom moduser under en økt ved å bruke _Tab_-tasten. Eller din konfigurerte `switch_mode` nøkkelbinding.
Se også: [Formatters](/docs/formatters) for informasjon om konfigurasjon av kodeformatering.
---
## Konfigurer
Du kan tilpasse de innebygde modusene eller lage dine egne gjennom konfigurasjon. Modi kan konfigureres på to måter:
### JSON Konfigurasjon
Konfigurer moduser i konfigurasjonsfilen `opencode.json`:
```json title="opencode.json"
{
"$schema": "https://opencode.ai/config.json",
"mode": {
"build": {
"model": "anthropic/claude-sonnet-4-20250514",
"prompt": "{file:./prompts/build.txt}",
"tools": {
"write": true,
"edit": true,
"bash": true
}
},
"plan": {
"model": "anthropic/claude-haiku-4-20250514",
"tools": {
"write": false,
"edit": false,
"bash": false
}
}
}
}
```
### Markdown-konfigurasjon
Du kan også definere moduser ved å bruke markdown-filer. Plasser dem i:
- Globalt: `~/.config/opencode/modes/`
- Prosjekt: `.opencode/modes/`
```markdown title="~/.config/opencode/modes/review.md"
---
model: anthropic/claude-sonnet-4-20250514
temperature: 0.1
tools:
write: false
edit: false
bash: false
---
You are in code review mode. Focus on:
- Code quality and best practices
- Potential bugs and edge cases
- Performance implications
- Security considerations
Provide constructive feedback without making direct changes.
```
Markdown-filnavnet blir modusnavnet (f.eks. `review.md` oppretter en `review`-modus).
La oss se på disse konfigurasjonsalternativene i detalj.
---
### Modell
Bruk `model`-konfigurasjonen for å overstyre standardmodellen for denne modusen. Nyttig for bruk av ulike modeller optimalisert for ulike oppgaver. For eksempel en raskere modell for planlegging, en mer kapabel modell for implementering.
```json title="opencode.json"
{
"mode": {
"plan": {
"model": "anthropic/claude-haiku-4-20250514"
}
}
}
```
---
### Temperatur
Kontroller tilfeldigheten og kreativiteten til AIs svar med `temperature`-konfigurasjonen. Lavere verdier gjør svarene mer fokuserte og deterministiske, mens høyere verdier øker kreativiteten og variasjonen.
```json title="opencode.json"
{
"mode": {
"plan": {
"temperature": 0.1
},
"creative": {
"temperature": 0.8
}
}
}
```
Temperaturverdier varierer vanligvis fra 0,0 til 1,0:
- **0.0-0.2**: Veldig fokuserte og deterministiske svar, ideell for kodeanalyse og planlegging
- **0,3-0,5**: Balanserte svar med litt kreativitet, bra for generelle utviklingsoppgaver
- **0.6-1.0**: Mer kreative og varierte svar, nyttig for idédugnad og utforskning
```json title="opencode.json"
{
"mode": {
"analyze": {
"temperature": 0.1,
"prompt": "{file:./prompts/analysis.txt}"
},
"build": {
"temperature": 0.3
},
"brainstorm": {
"temperature": 0.7,
"prompt": "{file:./prompts/creative.txt}"
}
}
}
```
Hvis ingen temperatur er spesifisert, bruker opencode modellspesifikke standarder (vanligvis 0 for de fleste modeller, 0,55 for Qwen-modeller).
---
### Spør
Spesifiser en tilpasset systemmeldingsfil for denne modusen med `prompt`-konfigurasjonen. Spørrefilen skal inneholde instruksjoner som er spesifikke for modusens formål.
```json title="opencode.json"
{
"mode": {
"review": {
"prompt": "{file:./prompts/code-review.txt}"
}
}
}
```
Denne banen er i forhold til hvor konfigurasjonsfilen er plassert. Så dette fungerer for
både den globale opencode-konfigurasjonen og den prosjektspesifikke konfigurasjonen.
---
### Verktøy
Kontroller hvilke verktøy som er tilgjengelige i denne modusen med `tools`-konfigurasjonen. Du kan aktivere eller deaktivere spesifikke verktøy ved å sette dem til `true` eller `false`.
```json
{
"mode": {
"readonly": {
"tools": {
"write": false,
"edit": false,
"bash": false,
"read": true,
"grep": true,
"glob": true
}
}
}
}
```
Hvis ingen verktøy er spesifisert, er alle verktøy aktivert som standard.
---
#### Tilgjengelige verktøy
Her er alle verktøyene som kan kontrolleres gjennom moduskonfigurasjonen.
| Verktøy | Beskrivelse |
| ----------- | --------------------------- |
| `bash` | Utfør skallkommandoer |
| `edit` | Endre eksisterende filer |
| `write` | Opprett nye filer |
| `read` | Les filinnhold |
| `grep` | Søk filinnhold |
| `glob` | Finn filer etter mønster |
| `list` | Liste kataloginnhold |
| `patch` | Bruk patcher på filer |
| `todowrite` | Administrer gjøremålslister |
| `todoread` | Les gjøremålslister |
| `webfetch` | Hent nettinnhold |
---
## Egendefinerte moduser
Du kan lage dine egne tilpassede moduser ved å legge dem til konfigurasjonen. Her er eksempler som bruker begge tilnærmingene:
### Bruker JSON konfigurasjon
```json title="opencode.json" {4-14}
{
"$schema": "https://opencode.ai/config.json",
"mode": {
"docs": {
"prompt": "{file:./prompts/documentation.txt}",
"tools": {
"write": true,
"edit": true,
"bash": false,
"read": true,
"grep": true,
"glob": true
}
}
}
}
```
### Bruker markdown-filer
Lag modusfiler i `.opencode/modes/` for prosjektspesifikke moduser eller `~/.config/opencode/modes/` for globale moduser:
```markdown title=".opencode/modes/debug.md"
---
temperature: 0.1
tools:
bash: true
read: true
grep: true
write: false
edit: false
---
You are in debug mode. Your primary goal is to help investigate and diagnose issues.
Focus on:
- Understanding the problem through careful analysis
- Using bash commands to inspect system state
- Reading relevant files and logs
- Searching for patterns and anomalies
- Providing clear explanations of findings
Do not make any changes to files. Only investigate and report.
```
```markdown title="~/.config/opencode/modes/refactor.md"
---
model: anthropic/claude-sonnet-4-20250514
temperature: 0.2
tools:
edit: true
read: true
grep: true
glob: true
---
You are in refactoring mode. Focus on improving code quality without changing functionality.
Priorities:
- Improve code readability and maintainability
- Apply consistent naming conventions
- Reduce code duplication
- Optimize performance where appropriate
- Ensure all tests continue to pass
```
---
### Brukstilfeller
Her er noen vanlige brukstilfeller for forskjellige moduser.
- **Byggemodus**: Fullt utviklingsarbeid med alle verktøy aktivert
- **Planmodus**: Analyse og planlegging uten å gjøre endringer
- **Gjennomgangsmodus**: Kodegjennomgang med skrivebeskyttet tilgang pluss dokumentasjonsverktøy
- **Feilsøkingsmodus**: Fokusert på etterforskning med bash- og leseverktøy aktivert
- **Dokumentmodus**: Dokumentasjonsskriving med filoperasjoner, men ingen systemkommandoer
Du kan også finne at forskjellige modeller er gode for forskjellige brukstilfeller.