Gå til innholdet

Moduser

Ulike moduser for forskjellige brukstilfeller.

Moduser i OpenCode lar deg tilpasse oppførselen, verktøyene og prompter 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 din.


Innebygd

OpenCode kommer med to innebygde moduser.


Bygg

Bygg er standard-modusen 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 shell-kommandoer

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 hurtigtast.

Se også: Formatters for informasjon om kodeformateringskonfigurasjon.


Konfigurer

Du kan tilpasse de innebygde modusene eller opprette din egen gjennom konfigurasjon. Moduser kan konfigureres på to måter:

JSON-konfigurasjon

Konfigurer moduser i din opencode.json konfigurasjonsfil:

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 hjelp av markdown-filer. Plasser dem i:

  • Globalt: ~/.config/opencode/modes/
  • Prosjekt: .opencode/modes/
~/.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.

Filnavnet til markdown-filen 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 å bruke forskjellige modeller optimalisert for forskjellige oppgaver. For eksempel en raskere modell for planlegging, en mer kapabel modell for implementering.

opencode.json
{
"mode": {
"plan": {
"model": "anthropic/claude-haiku-4-20250514"
}
}
}

Temperatur

Kontroller tilfeldigheten og kreativiteten til AI-ens svar med temperature-konfigurasjonen. Lavere verdier gjør svarene mer fokuserte og deterministiske, mens høyere verdier øker kreativiteten og variasjonen.

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, ideelt 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
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 standardinnstillinger (vanligvis 0 for de fleste modeller, 0,55 for Qwen-modeller).


Prompt

Angi en tilpasset systemprompt-fil for denne modusen med prompt-konfigurasjonen. Prompt-filen skal inneholde instruksjoner som er spesifikke for modusens formål.

opencode.json
{
"mode": {
"review": {
"prompt": "{file:./prompts/code-review.txt}"
}
}
}

Denne banen er relativ til der 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.

{
"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øyBeskrivelse
bashUtfør shell-kommandoer
editEndre eksisterende filer
writeOpprett nye filer
readLes filinnhold
grepSøk i filinnhold
globFinn filer etter mønster
listList opp kataloginnhold
patchBruk patcher på filer
todowriteAdministrer gjøremålslister
todoreadLes gjøremålslister
webfetchHent webinnhold

Egendefinerte moduser

Du kan opprette dine egne tilpassede moduser ved å legge dem til i konfigurasjonen. Her er eksempler på bruk av begge metodene:

Bruke JSON-konfigurasjon

opencode.json
{
"$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
}
}
}
}

Bruke markdown-filer

Opprett modusfiler i .opencode/modes/ for prosjektspesifikke moduser eller ~/.config/opencode/modes/ for globale moduser:

.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.
~/.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

Bruksområder

Her er noen vanlige bruksområder for forskjellige moduser.

  • Bygg-modus: Fullt utviklingsarbeid med alle verktøy aktivert
  • Plan-modus: Analyse og planlegging uten å gjøre endringer
  • Review-modus: Kodegjennomgang med skrivebeskyttet tilgang pluss dokumentasjonsverktøy
  • Debug-modus: Fokusert på etterforskning med bash- og leseverktøy aktivert
  • Docs-modus: Dokumentasjonsskriving med filoperasjoner, men ingen systemkommandoer

Du kan også finne at forskjellige modeller er gode for forskjellige bruksområder.