summaryrefslogtreecommitdiffhomepage
path: root/packages/web/src/content/docs/da/index.mdx
blob: 65cf34f9a951c6a9c00d3dc9ab0383b15360665f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
---
title: Introduktion
description: Kom godt i gang med OpenCode.
---

import { Tabs, TabItem } from "@astrojs/starlight/components"
import config from "../../../../config.mjs"
export const console = config.console

[**OpenCode**](/) er en open source AI-kodningsagent. Den er tilgængelig som en terminalbaseret grænseflade, desktop-app eller IDE-udvidelse.

![OpenCode TUI med opencode-temaet](../../../assets/lander/screenshot.png)

Lad os komme i gang.

---

#### Forudsætninger

For at bruge OpenCode i din terminal skal du bruge:

1. En moderne terminalemulator som:
   - [WezTerm](https://wezterm.org), på tværs af platforme
   - [Alacritty](https://alacritty.org), på tværs af platforme
   - [Ghostty](https://ghostty.org), Linux og macOS
   - [Kitty](https://sw.kovidgoyal.net/kitty/), Linux og macOS

2. API-nøgler til de LLM udbydere, du vil bruge.

---

## Installation

Den nemmeste måde at installere OpenCode på er gennem installationsscriptet.

```bash
curl -fsSL https://opencode.ai/install | bash
```

Du kan også installere det med følgende kommandoer:

- **Bruger Node.js**

        <Tabs>

      <TabItem label="npm">
      ```bash
      npm install -g opencode-ai
      ```

          </TabItem>

        <TabItem label="Bun">
        ```bash
        bun install -g opencode-ai
        ```

          </TabItem>

        <TabItem label="pnpm">
        ```bash
        pnpm install -g opencode-ai
        ```

          </TabItem>

        <TabItem label="Yarn">
        ```bash
        yarn global add opencode-ai
        ```

      </TabItem>

  </Tabs>

- **Brug af Homebrew på macOS og Linux**

  ```bash
  brew install anomalyco/tap/opencode
  ```

  > Vi anbefaler at bruge OpenCode-tap for at få de mest opdaterede udgivelser. Den officielle `brew install opencode`-formel vedligeholdes af Homebrew-teamet og opdateret sjældnere.

- **Brug af Paru på Arch Linux**

  ```bash
  sudo pacman -S opencode           # Arch Linux (Stable)
  paru -S opencode-bin              # Arch Linux (Latest from AUR)
  ```

#### Windows

:::tip[Anbefalet: Brug WSL]
For at få den bedste oplevelse på Windows anbefaler vi at bruge [Windows Subsystem for Linux (WSL)](/docs/windows-wsl). Det giver bedre ydeevne og fuld kompatibilitet med OpenCodes funktioner.
:::

- **Brug af Chocolatey**

  ```bash
  choco install opencode
  ```

- **Brug af Scoop**

  ```bash
  scoop install opencode
  ```

- **Bruger NPM**

  ```bash
  npm install -g opencode-ai
  ```

- **Brug af Mise**

  ```bash
  mise use -g github:anomalyco/opencode
  ```

- **Brug af Docker**

  ```bash
  docker run -it --rm ghcr.io/anomalyco/opencode
  ```

Support til installation af OpenCode på Windows ved hjælp af Bun er i gang.

Du kan også få fat i binæren fra [Releases](https://github.com/anomalyco/opencode/releases).

---

## Konfiguration

Med OpenCode kan du bruge enhver LLM udbyder ved at konfigurere deres API-nøgler.

Hvis du er ny til at bruge LLM-udbydere, anbefaler vi at bruge [OpenCode Zen](/docs/zen).
Det er en udvalgt liste over modeller, der er blevet testet og verificeret af OpenCode
holde.

1. Kør kommandoen `/connect` i TUI, vælg opencode, og gå til [opencode.ai/auth](https://opencode.ai/auth).

   ```txt
   /connect
   ```

2. Log ind, tilføj dine faktureringsoplysninger, og kopier din API-nøgle.

3. Indsæt din API-nøgle.

   ```txt
   ┌ API key
   │
   │
   └ enter
   ```

Alternativt kan du vælge en af ​​de andre udbydere. [Læs mere](/docs/providers#directory).

---

## Initialisering

Nu hvor du har konfigureret en udbyder, kan du navigere til et projekt, der
du vil arbejde på.

```bash
cd /path/to/project
```

Og kør OpenCode.

```bash
opencode
```

Derefter initialiseres OpenCode for projektet ved at køre følgende kommando.

```bash frame="none"
/init
```

Dette får OpenCode til at analysere dit projekt og oprette en `AGENTS.md` fil i
projektets rod.

:::tip
Du bør overgive dit projekter `AGENTS.md` fil til Git.
:::

Dette hjælper OpenCode med at forstå projektstrukturen og kodningsmønstrene
brugt.

---

## Brug

Du er nu klar til at bruge OpenCode til at arbejde på dit projekt. Spørg det gerne
noget!

Hvis du er ny til at bruge en AI-kodningsagent, er her nogle eksempler, der evt
hjælp.

---

### Stil spørgsmål

Du kan bede OpenCode om at forklare kodebasen for dig.

:::tip
Brug `@`-tasten til at søge efter filer i projektet.
:::

```txt frame="none" "@packages/functions/src/api/index.ts"
How is authentication handled in @packages/functions/src/api/index.ts
```

Dette er nyttigt, hvis der er en del af kodebasen, som du ikke har arbejdet på.

---

### Tilføj funktioner

Du kan bede OpenCode om at tilføje nye funktioner til dit projekt. Selvom vi først anbefaler, at du beder den om at lave en plan.

1. **Opret en plan**

   OpenCode har en _Plan mode_, der deaktiverer dens evne til at foretage ændringer og
   foreslå i stedet _hvordan_ det vil implementere funktionen.

   Skift til det ved hjælp af **Tab**-tasten. Du vil se en indikator for dette i nederste højre hjørne.

   ```bash frame="none" title="Skift til Plan-tilstand"
   <TAB>
   ```

   Lad os nu beskrive, hvad vi vil have den til at gøre.

   ```txt frame="none"
   When a user deletes a note, we'd like to flag it as deleted in the database.
   Then create a screen that shows all the recently deleted notes.
   From this screen, the user can undelete a note or permanently delete it.
   ```

   Du vil give OpenCode nok detaljer til at forstå, hvad du ønsker. Det hjælper
   at tale med det, som om du taler med en juniorudvikler på dit team.

:::tip
Giv OpenCode masser af kontekst og eksempler for at hjælpe den med at forstå, hvad du
ønsker.
:::

2. **Gentag om planen**

   Når det giver dig en plan, kan du give den feedback eller tilføje flere detaljer.

   ```txt frame="none"
   We'd like to design this new screen using a design I've used before.
   [Image #1] Take a look at this image and use it as a reference.
   ```

:::tip
Træk og slip billeder i terminalen for at tilføje dem til prompten.
:::

OpenCode kan scanne alle billeder, du giver dem og tilføje dem til prompten. Det kan du
gør dette ved at trække og slippe et billede ind i terminalen.

3. **Byg funktionen**

   Når du føler dig godt tilpas med planen, skal du skifte tilbage til _Byggetilstand_ ved
   trykke på **Tab**-tasten igen.

   ```bash frame="none"
   <TAB>
   ```

   Og beder den om at foretage ændringerne.

   ```bash frame="none"
   Sounds good! Go ahead and make the changes.
   ```

---

### Foretag ændringer

For mere ligetil ændringer kan du bede OpenCode om at bygge den direkte
uden at skulle gennemgå planen først.

```txt frame="none" "@packages/functions/src/settings.ts" "@packages/functions/src/notes.ts"
We need to add authentication to the /settings route. Take a look at how this is
handled in the /notes route in @packages/functions/src/notes.ts and implement
the same logic in @packages/functions/src/settings.ts
```

Du vil sikre dig, at du giver en god mængde detaljer, så OpenCode gør det rigtige
ændringer.

---

### Fortryd ændringer

Lad os sige, at du beder OpenCode om at foretage nogle ændringer.

```txt frame="none" "@packages/functions/src/api/index.ts"
Can you refactor the function in @packages/functions/src/api/index.ts?
```

Men du indser, at det ikke er, hvad du ønskede. Du **kan fortryde** ændringerne
ved hjælp af kommandoen `/undo`.

```bash frame="none"
/undo
```

OpenCode vil nu vende tilbage til ændringerne, du har foretaget, og vise din oprindelige besked
igen.

```txt frame="none" "@packages/functions/src/api/index.ts"
Can you refactor the function in @packages/functions/src/api/index.ts?
```

Herfra kan du justere prompten og bede OpenCode om at prøve igen.

:::tip
Du kan køre `/undo` flere gange for at fortryde flere ændringer.
:::

Eller du **kan gentage** ændringerne ved hjælp af kommandoen `/redo`.

```bash frame="none"
/redo
```

---

## Deling

De samtaler, du har med OpenCode, kan [deles med din
team](/docs/share).

```bash frame="none"
/share
```

Dette vil oprette et link til den aktuelle samtale og kopiere det til denne udklipsholder.

:::note
Samtaler dele ikke som standard.
:::

Her er en [eksempelsamtale](https://opencode.ai/s/4XP1fce5) med OpenCode.

---

## Tilpasning

Og det er det! Du er nu en professionel i at bruge OpenCode.

For at gøre det til dit eget, anbefaler vi [at vælge et tema](/docs/themes), [tilpasse genvejstaster](/docs/keybinds), [konfigurere kodeformater](/docs/formatters), [oprette brugerdefinerede kommandoer](/docs/commands) eller at lege med [OpenCode-konfiguration](/docs/config).