summaryrefslogtreecommitdiffhomepage
path: root/packages/web/src/content/docs/ja/index.mdx
blob: e4e84d7b1cd21953d7f336bb41d44026c6bc55c8 (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
---
title: はじめに
description: OpenCode を始めましょう。
---

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

[**OpenCode**](/) は、オープンソースの AI コーディングエージェントです。これは、ターミナルベースのインターフェイス、デスクトップアプリ、または IDE 拡張機能として利用できます。

![opencodeテーマ](../../../assets/lander/screenshot.png)を使用したOpenCode TUI

始めましょう。

---

#### 前提条件

ターミナルで OpenCode を使用するには、次のものが必要です。

1. 次のような最新のターミナルエミュレータ:
   - [WezTerm](https://wezterm.org)、クロスプラットフォーム
   - [Alacritty](https://alacritty.org)、クロスプラットフォーム
   - [Ghostty](https://ghostty.org)、Linux および macOS
   - [Kitty](https://sw.kovidgoyal.net/kitty/)、Linux および macOS

2. 使用する LLM プロバイダーの API キー。

---

## インストール

OpenCode をインストールする最も簡単な方法は、インストールスクリプトを使用することです。

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

次のコマンドを使用してインストールすることもできます。

- **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>

- **macOS および Linux での Homebrew の使用**

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

  > 最新のリリースには OpenCode タップを使用することをお勧めします。公式の `brew install opencode` 式は Homebrew チームによって維持されており、更新頻度は低くなります。

- **Arch Linux での Paru の使用**

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

#### Windows

:::tip[推奨: WSL を使用する]
Windows で最高のエクスペリエンスを得るには、[Windows Subsystem for Linux (WSL)](/docs/windows-wsl) を使用することをお勧めします。これにより、パフォーマンスが向上し、OpenCode の機能との完全な互換性が提供されます。
:::

- **Chocolatey の使用**

  ```bash
  choco install opencode
  ```

- **Scoop の使用**

  ```bash
  scoop install opencode
  ```

- **npm の使用**

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

- **Mise の使用**

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

- **Docker の使用**

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

Bun を使用して Windows に OpenCode をインストールするためのサポートは現在進行中です。

[Releases](https://github.com/anomalyco/opencode/releases).

---

## 設定

OpenCode を使用すると、API キーを構成することで任意の LLM プロバイダーを使用できます。

LLM プロバイダーを初めて使用する場合は、[OpenCode Zen](/docs/zen) をお勧めします。
これは、OpenCode チームによってテストおよび検証されたモデルの厳選されたリストです。

1. TUI で `/connect` コマンドを実行し、opencode を選択して、[opencode.ai/auth](https://opencode.ai/auth) で認証します。

   ```txt
   /connect
   ```

2. サインインし、お支払いの詳細を追加し、API キーをコピーします。

3. API キーを貼り付けます。

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

あるいは、他のプロバイダーのいずれかを選択することもできます。 [詳細はこちら](/docs/providers#directory)。

---

## 初期化

プロバイダーを構成したので、取り組みたいプロジェクトに移動できます。

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

そしてOpenCodeを実行します。

```bash
opencode
```

次に、次のコマンドを実行して、プロジェクトの OpenCode を初期化します。

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

これにより、OpenCode がプロジェクトを分析し、プロジェクトのルートに `AGENTS.md` ファイルを作成します。

:::tip
プロジェクトの `AGENTS.md` ファイルを Git にコミットする必要があります。
:::

これは、OpenCode がプロジェクトの構造と使用されているコーディングパターンを理解するのに役立ちます。

---

## 使用法

これで、OpenCode を使用してプロジェクトに取り組む準備が整いました。何でもお気軽にお尋ねください!

AI コーディングエージェントを初めて使用する場合は、次の例を参考にしてください。

---

### 質問する

OpenCode にコードベースの説明を依頼できます。

:::tip
プロジェクト内のファイルをあいまい検索するには、`@` キーを使用します。
:::

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

これは、コードベースに作業していない部分がある場合に役立ちます。

---

### 機能を追加する

OpenCode に新しい機能をプロジェクトに追加するよう依頼できます。ただし、最初は計画の作成を依頼することをお勧めします。

1. **計画を作成する**

OpenCode には、変更を加える機能を無効にする _Plan mode_ があり、
代わりに、その機能を*どのように*実装するかを提案します。

**Tab** キーを使用してそれに切り替えます。右下隅にこれを示すインジケーターが表示されます。

```bash frame="none" title="Switch to Plan mode"
   <TAB>
```

では、何をしたいのかを説明しましょう。

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

自分が何を望んでいるのかを理解するために、OpenCode に十分な詳細を提供したいと考えています。
チームの若手開発者と話しているように話すと良いでしょう。

:::tip
OpenCode に多くのコンテキストと例を提供して、意図する内容を理解できるようにします。
:::

2. **計画を反復する**

計画が示されたら、フィードバックを送信したり、詳細を追加したりできます。

```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
画像をターミナルにドラッグアンドドロップして、プロンプトに追加します。
:::

OpenCode は、指定された画像をスキャンしてプロンプトに追加できます。
画像をターミナルにドラッグアンドドロップしてこれを行うことができます。

3. **機能を構築する**

計画に慣れたら、*Build mode*に戻ります。
**Tab** キーをもう一度押します。

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

そして変更を加えるように依頼します。

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

---

### 変更を加える

より単純な変更については、OpenCode に直接ビルドするよう依頼できます。
最初に計画を見直す必要はありません。

```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
```

OpenCode が適切な変更を行えるように、十分な量の詳細を確実に提供する必要があります。

---

### 変更を元に戻す

OpenCode にいくつかの変更を依頼するとします。

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

しかし、それは自分が望んでいたものではないことに気づきます。変更は **元に戻すことができます**
`/undo` コマンドを使用します。

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

OpenCode は加えた変更を元に戻し、元のメッセージを再度表示します。

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

ここからプロンプトを調整し、OpenCode に再試行を依頼できます。

:::tip
`/undo` を複数回実行すると、複数の変更を元に戻すことができます。
:::

または、`/redo` コマンドを使用して変更を**やり直す**こともできます。

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

---

## 共有

OpenCode との会話は [他のチームメンバーと共有できます](/docs/share)。

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

これにより、現在の会話へのリンクが作成され、クリップボードにコピーされます。

:::note
会話はデフォルトでは共有されません。
:::

これは [OpenCode を使用した会話 ](https://opencode.ai/s/4XP1fce5) の例です。

---

## カスタマイズ

それで終わりです!これであなたは OpenCode の使い方のプロになりました。

独自のものにするには、[テーマ](/docs/themes) を選択する、[キーバインドをカスタマイズする](/docs/keybinds)、[コードフォーマッタ](/docs/formatters) を設定する、[カスタムコマンド](/docs/commands) を作成する、または [OpenCode設定](/docs/config) を試してみることをお勧めします。