> For the complete documentation index, see [llms.txt](https://unsloth.ai/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://unsloth.ai/docs/jp/tong-he/opencode.md).

# OpenCodeでローカルAIモデルを実行する方法

このガイドでは、接続手順を順を追って説明します **OpenCode** を [Unsloth](https://github.com/unslothai/unsloth) オープンLLMを実行するために **完全にローカルで。** OpenCodeは **オープンソースのAIコーディングエージェント** 接続されたモデルを使って、プロジェクト全体のコードを読み取り、修正し、実行するものです。これは次のものなら何でも動作します: **ローカルモデル** Unslothの **OpenAI互換APIを通じて公開された**。たとえばDeepSeek、Qwen、Gemmaなどです。

OpenCodeはクライアントとして動作し、UnslothはローカルAPI経由でモデルを読み込み、提供します。セットアップ後、OpenCodeはUnslothに接続し、読み込まれたモデルを選んで **コーディングエージェントとして使用できます**.

このガイドでは、両方のセットアップ方法を説明します:

* **OpenCode Desktop:** Unsloth StudioをカスタムのOpenAI互換プロバイダーとして手動で追加します。
* **OpenCode CLI:** 次のコマンドで起動します: `unsloth start opencode` するとローカルモデルに自動で接続します。

<a href="https://unsloth.ai/docs/integrations/opencode#installing-opencode-desktop" class="button primary">OpenCodeのセットアップ</a><a href="/pages/3864bcb37ba6a47277fdce43a7f1d4bc977d7edb#quickstart" class="button primary">クイックスタート</a>

{% hint style="info" %}
このチュートリアルでは、 `unsloth/Qwen3.6-27B-GGUF` Unslothに読み込まれ、OpenCode内から直接アクセスできます。別のモデルを使いたいですか？Unslothに読み込むことで、他のモデルに切り替えられます。
{% endhint %}

### OpenCode Desktopのインストール

{% tabs %}
{% tab title="macOS" %}

#### **手順1: Mac用のOpenCodeインストーラーをダウンロード**

開く `opencode.ai/download` お好みのブラウザーで開きます。下へスクロールして **OpenCode Desktop（ベータ版）** を見つけて、 `ダウンロード` お使いのMacのアーキテクチャ（Apple SiliconまたはIntel）に対応するmacOSイメージ名の横にあるボタンをクリックします。

#### 手順2: OpenCodeをインストール

次を見つけてダブルクリックします: `OpenCode Desktop.dmg` ダウンロードフォルダ内のインストーラーファイル。

インストーラーウィンドウが開きます。マウスで次のものをドラッグします: **OpenCode** アプリアイコンを **アプリケーション** アイコンの上に、図のように置きます。

#### 手順3: OpenCodeを起動

次を見つけてダブルクリックします: **OpenCode** 次の下にあるアイコンを **アプリケーション** フォルダ。

この **OpenCode** デスクトップアプリが開き、次の操作ができる状態になります。

<div data-with-frame="true"><figure><img src="/files/f9bb4f3eef10281460c019c427bb6880ed1af78c" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Windows" %}

#### **手順1: Windows用のOpenCodeインストーラーをダウンロード**

開く `opencode.ai/download` ブラウザーで開きます。次へスクロールして **OpenCode Desktop（ベータ版）**&#x3078;移動し、 **ダウンロード** Windows（x64）インストーラーの横にあるボタンをクリックします。

#### **手順2: OpenCodeをインストール**

次を見つけます: `OpenCode Desktop Installer.exe` をDownloadsフォルダで見つけてダブルクリックします。その後、インストーラーウィンドウの案内に従ってインストールを完了します。

#### **手順3: OpenCodeを起動**

Windowsのスタートメニューを開き、次を検索します: **OpenCode**。\
\
OpenCodeのアプリアイコンをクリックして起動します。OpenCodeデスクトップアプリが開き、次の操作ができる状態になります

<div data-with-frame="true"><figure><img src="/files/469838916993568abcd7086c36580bd7b3212143" alt="" width="563"><figcaption></figcaption></figure></div>
{% endtab %}

{% tab title="Linux" %}

#### **手順1: Linux用のOpenCodeインストーラーをダウンロード**

移動します `opencode.ai/download` お好みのWebブラウザーを使って。次を見つけます: **OpenCode Desktop（ベータ版）** セクションを開き、システムに合ったLinuxのダウンロードオプションを選びます。

#### **手順2: OpenCodeをインストール**

Downloadsフォルダを開き、次を見つけます: **OpenCode** 先ほどダウンロードしたインストーラー。

AppImageをダウンロードした場合は、ファイルを右クリックして、次を開きます: **プロパティ**そして、ファイルをプログラムとして実行できるようにするオプションを有効にします。その後、AppImageをダブルクリックして起動します **OpenCode**.

または、ターミナルを使う場合は、次を実行します:

```
chmod +x OpenCode*.AppImage
./OpenCode*.AppImage
```

次をダウンロードした場合: `.deb` ファイルは、次でインストールします:

```
sudo apt install ./OpenCode*.deb
```

次をダウンロードした場合: `.rpm` ファイルは、次でインストールします:

```
sudo dnf install ./OpenCode*.rpm
```

#### **手順3: OpenCodeを起動**

Linuxのアプリケーションランチャーを開き、次を検索します: **OpenCode**.

OpenCodeのアプリアイコンをクリックして起動します。OpenCodeデスクトップアプリが開き、次の操作ができる状態になります。
{% endtab %}
{% endtabs %}

### ⚡ クイックスタート

OpenCodeをインストールしたら、OpenCodeでローカルモデルの提供と推論を行えるようにするため、Unsloth Studioをインストールする必要があります。

1. **Unsloth Studioをインストールまたは更新します。** 旧バージョンでは外部APIが公開されません。インストールを参照してください。
2. **Unsloth を起動します。** 起動するポートは通常 `8000` または `8888`です。ターミナル出力とブラウザの URL（`http://localhost:PORT`).
3. **モデルを読み込みます。** クリック **New Chat**をクリックし、モデル（GGUF）を選択または検索して、読み込みが完了するまで待ちます。
4. **OpenCodeに接続します。** 実行します `unsloth start opencode`APIキーを発行し、設定を書き込み、読み込まれたモデルに対してOpenCodeを起動します。

### 🔑 APIキーの作成

1. サイドバーを開き、左下の **Unsloth** アバターをクリックします。
2. 移動します **設定** → **API**.
3. わかりやすい名前を入力します（例： `claude-code-macbook`).
4. *（任意）* 有効期限を設定します。
5. クリック **作成**.
6. **キーはすぐにコピーしてください。** Unslothはハッシュのみを保存するため、再表示はできません。

<figure><img src="/files/56897ad32966d1081797ea8ccf97a7df82f0a550" alt="" width="375"><figcaption></figcaption></figure>

すべてのキーは次の接頭辞で始まります： `sk-unsloth-` です。同じページからいつでもキーを無効化できます。無効化されたキーでのリクエストは `401 Unauthorized`.

## 🖇️ UnslothをOpenCode Desktopに接続

**Opencode** はOpenAI互換のプロバイダーなら何でもサポートしているので、Unslothを **カスタム** プロバイダーとして組み込めます。セットアップはopencodeの **プロバイダー接続** ダイアログ内で一度だけ行います。

**1. プロバイダー選択画面を開きます。** opencodeで、次を入力します: `/model` （または入力欄の下部にあるモデルセレクターをクリックします）。

<div data-with-frame="true"><figure><img src="/files/64dc1680e765673bbd10b5333da71ae819405b8b" alt="" width="563"><figcaption></figcaption></figure></div>

次に、 **プロバイダー接続** をモデル選択ダイアログの右上でクリックします。

<div data-with-frame="true"><figure><img src="/files/ea04495ff1b7f0aba3c12b9c25624a6d011546d0" alt="" width="375"><figcaption></figcaption></figure></div>

**2. 「Custom」を選びます。** プロバイダー一覧で、 **その他** までスクロールして、 **カスタム**.

<div data-with-frame="true"><figure><img src="/files/b96ecf4b991c2c0c1c3b2e552e70c9b3085ce8ad" alt="" width="375"><figcaption></figcaption></figure></div>

**3. カスタムプロバイダーフォームに入力します:**

| 項目           | 値                                                                                |
| ------------ | -------------------------------------------------------------------------------- |
| **プロバイダーID** | `unsloth-studio` *（小文字、ハイフン可）*                                                   |
| **表示名**      | `Unsloth Studio`                                                                 |
| **ベースURL**   | `http://localhost:8888/v1/` *（置き換え `8888` お使いの* Unsloth *ポート番号に置き換え、末尾の `/v1/`)* |
| **API キー**   | あなたの `sk-unsloth-…` キー                                                           |

次の **モデル** セクションでは、公開したい各モデルごとに1行追加します。左側の欄はUnslothが提供するモデルID、右側の欄はopencodeに表示される名前です:

| モデルID（左）                                             | 表示名（右）                                      |
| ---------------------------------------------------- | ------------------------------------------- |
| `unsloth/Qwen3.6-27B-GGUF` *（Unslothに表示されるモデル名そのまま）* | `unsloth/Qwen3.6-27B-GGUF` *（opencode内に表示）* |

空欄のままにします **ヘッダー** カスタムヘッダーが必要な認証レイヤー経由でUnslothをプロキシしている場合を除き、空欄のままにします。

<div data-with-frame="true"><figure><img src="/files/eae09e6a7d3cf864f60b120c9daa15e0461ea066" alt="" width="375"><figcaption></figcaption></figure></div>

**4. 送信をクリックします。** 次の表示が出るはずです: *「Unsloth Studioに接続しました。Unslothモデルを使用できます」* トースト通知。

<figure><img src="/files/76b1046f86f21d02062e9412d800191bdc2cd4e1" alt="" width="375"><figcaption></figcaption></figure>

{% hint style="warning" %}
**プロバイダーを追加したらopencodeを再起動します。** 新しいプロバイダーは再起動後にのみ選択可能になります。
{% endhint %}

**5. Unslothモデルを選択します。** opencodeが再起動したら、次を入力します: `/model`、検索し、 `unsloth`、次のグループの下にあるモデルを選びます: **Unsloth Studio** グループ。次のメッセージから有効になります。

<div data-with-frame="true"><figure><img src="/files/55d552c4ba0889a3dc3ee69f60efe59ba53d5647" alt="" width="375"><figcaption></figcaption></figure></div>

UnslothはOpenAIとAnthropicの両方のPython SDKをサポートしています。

### ⚙️ **OpenCode CLI**

OpenCode CLIは、すでにUnsloth Studioで動作しているモデルに接続することも、Unslothが動作していないときに自動で起動することもできます。

#### Unsloth Studioがすでに動作している場合

Unsloth Studioにモデルが読み込まれている状態で、プロジェクトフォルダを開き、次を実行します:

```bash
unsloth start opencode
```

このコマンドを使うと、既存のOpenCode設定を変えずに、Unslothに現在読み込まれているモデルでOpenCodeを起動できます。

#### モデルを自動的に起動する

Unsloth Studioがまだ動作していない場合は、1つのコマンドで一時サーバーを起動し、モデルを読み込めます:

```bash
unsloth start opencode --model unsloth/gemma-4-26B-A4B-it-GGUF
```

<div data-with-frame="true"><figure><img src="/files/ef275348b56994e2b87b5b77c7eaa20c4fe78c5e" alt="" width="563"><figcaption></figcaption></figure></div>

起動したら **OpenCode** 開いたら、次のようなタスクを与えます:

```
ジャンプ、ダッシュ、2つのステージがある、Flash風のPython 2Dゲームを作成してください。
```

ローカルモデルを使ってプロジェクトを調査し、ファイルを作成し、コードを編集し、コマンドを実行できます。

<div align="center" data-with-frame="true"><figure><img src="/files/abeee508e2e790d9d2e9371860830490f787c6db" alt="" width="563"><figcaption></figcaption></figure></div>

この例では、モデルが2ステージのプラットフォーマーを作成しました。開いて、どのようになったか見てみましょう。

<div data-with-frame="true"><figure><img src="/files/74fdab8b8c739fb03ec56b67e519a663bf6d6b66" alt="" width="563"><figcaption></figcaption></figure></div>

#### 作業を再開

OpenCodeはセッション履歴を自動的に保存するので、必要ありません `--persist`。Unslothがもう動作していなくても、続きから再開するには次を使います:

```bash
unsloth start opencode \\
  --model unsloth/Qwen3.6-27B-GGUF \
  --continue
```

代わりに特定のセッションを開くには、次を使います: `--session <session-id>`.

完全な [unsloth start](/docs/jp/tong-he/unsloth-start.md) モデル読み込み、リモートUnslothサーバー、および詳細オプションのリファレンスです。&#x20;

### オプション: サーバーアクセスを設定

`unsloth run` ローカルAPIサーバーを起動し、OpenCodeが接続するためのモデルを読み込みます。起動時のサーバーの動作もカスタマイズできます。

```bash
# APIをポート8888で実行（--disable-toolsはOpenCode自身のツールをそのまま通します）
unsloth run \\
  --model unsloth/gemma-4-26B-A4B-it-GGUF \
  --disable-tools \
  -p 8888
```

{% hint style="warning" %}
使用 `--disable-tools` OpenCode（または他の外部コーディングエージェント）を使うとき。既定ではUnsloth Studioが独自のサーバー側ツールを実行するため、エージェントのツール呼び出しが吸収され、OpenCodeは応答するもののファイルは編集しません。 `--disable-tools` パススルーに切り替わり、OpenCode自身のツールが使われます。
{% endhint %}

使用 `-p` サーバーが実行するポートを変更するには。

```bash
# ネットワーク上の他のデバイスからの接続を許可
unsloth run \\
  --model unsloth/gemma-4-26B-A4B-it-GGUF \
  -H 0.0.0.0 \\
  --disable-tools \
  -p 8888
```

これによりサーバーは `0.0.0.0:8888`で起動し、ローカルネットワーク上の他のデバイスが接続できるようになります。

より高度なランタイム設定については、メインの [API tuning](https://unsloth.ai/docs/basics/api#unsloth-run-command) セクションを参照してください。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://unsloth.ai/docs/jp/tong-he/opencode.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
