---
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
  paru -S opencode-bin
  ```

#### 窓

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

- **Chocolatey の使用**

  ```bash
  choco install opencode
  ```

- **スクープの使用**

  ```bash
  scoop install opencode
  ```

- **NPM の使用**

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

- **ミセの使い方**

  ```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 によってテストおよび検証されたモデルの厳選されたリストです。
team.

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 がプロジェクトの構造とコーディング パターンを理解するのに役立ちます。
used.

---

## 使用法

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

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

---

### 質問する

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 モード_ があり、
代わりに、その機能を*どのように*実装するかを提案してください。

**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 に多くのコンテキストと例を提供して、意図する内容を理解できるようにします。
want.
:::

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 モード*に戻ります。
**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 が適切な情報を提供できるように、十分な量の詳細を確実に提供する必要があります。
changes.

---

### 変更を元に戻す

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 は加えた変更を元に戻し、元のメッセージを表示します。
again.

```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 config](/docs/config) を試してみる] ことをお勧めします。
