fix(docs): locale translations for nav elements and headings
This commit is contained in:
@@ -1,18 +1,18 @@
|
||||
---
|
||||
title: ACPのサポート
|
||||
title: ACP サポート
|
||||
description: ACP 互換エディターで OpenCode を使用します。
|
||||
---
|
||||
|
||||
OpenCode は [Agent Client Protocol](https://agentclientprotocol.com) または (ACP) をサポートしているため、互換性のあるエディターや IDE で直接使用できます。
|
||||
|
||||
:::tip
|
||||
ACP をサポートするエディターとツールのリストについては、[ACP progress report](https://zed.dev/blog/acp-progress-report#available-now).
|
||||
ACP をサポートするエディターとツールのリストについては、[ACP progress report](https://zed.dev/blog/acp-progress-report#available-now) を参照してください。
|
||||
:::
|
||||
ACP は、コード エディターと AI コーディング エージェント間の通信を標準化するオープン プロトコルです。
|
||||
ACP は、コードエディターと AI コーディングエージェント間の通信を標準化するオープンプロトコルです。
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
ACP 経由で OpenCode を使用するには、`opencode acp` コマンドを実行するようにエディタを設定します。
|
||||
|
||||
@@ -37,9 +37,9 @@ ACP 経由で OpenCode を使用するには、`opencode acp` コマンドを実
|
||||
}
|
||||
```
|
||||
|
||||
これを開くには、**コマンド パレット**の `agent: new thread` アクションを使用します。
|
||||
これを開くには、**コマンドパレット**の `agent: new thread` アクションを使用します。
|
||||
|
||||
`keymap.json` を編集してキーボード ショートカットをバインドすることもできます。
|
||||
`keymap.json` を編集してキーボードショートカットをバインドすることもできます。
|
||||
|
||||
```json title="keymap.json"
|
||||
[
|
||||
@@ -81,7 +81,7 @@ ACP 経由で OpenCode を使用するには、`opencode acp` コマンドを実
|
||||
}
|
||||
```
|
||||
|
||||
これを開くには、AI Chat エージェント セレクターで新しい「OpenCode」エージェントを使用します。
|
||||
これを開くには、AI Chat エージェントセレクターで新しい「OpenCode」エージェントを使用します。
|
||||
|
||||
---
|
||||
|
||||
@@ -141,15 +141,15 @@ require("codecompanion").setup({
|
||||
|
||||
## サポート
|
||||
|
||||
OpenCode は、ACP 経由でもterminal 内で動作するのと同じように動作します。すべての機能がサポートされています。
|
||||
OpenCode は、ACP 経由でもターミナル内で動作するのと同じように動作します。すべての機能がサポートされています。
|
||||
|
||||
:::note
|
||||
`/undo` や `/redo` などの一部の組み込みスラッシュ コマンドは現在サポートされていません。
|
||||
`/undo` や `/redo` などの一部の組み込みスラッシュコマンドは現在サポートされていません。
|
||||
:::
|
||||
|
||||
- 組み込みツール (ファイル操作、terminalコマンドなど)
|
||||
- 組み込みツール (ファイル操作、ターミナルコマンドなど)
|
||||
- カスタムツールとスラッシュコマンド
|
||||
- OpenCode 構成で構成された MCP サーバー
|
||||
- OpenCode 設定で構成された MCP サーバー
|
||||
- `AGENTS.md` のプロジェクト固有のルール
|
||||
- カスタムフォーマッタとリンター
|
||||
- エージェントと権限システム
|
||||
|
||||
@@ -3,12 +3,13 @@ title: エージェント
|
||||
description: 特殊なエージェントを構成して使用します。
|
||||
---
|
||||
|
||||
エージェントは、特定のタスクやワークフロー向けに構成できる特殊な AI アシスタントです。これらを使用すると、カスタム プロンプト、モデル、ツール アクセスを備えた焦点を絞ったツールを作成できます。
|
||||
エージェントは、特定のタスクやワークフロー向けに構成できる特殊な AI アシスタントです。これらを使用すると、カスタムプロンプト、モデル、ツールアクセスを備えた焦点を絞ったツールを作成できます。
|
||||
|
||||
:::tip
|
||||
プラン エージェントを使用すると、コードを変更せずにコードを分析し、提案を確認できます。
|
||||
Plan エージェントを使用すると、コードを変更せずにコードを分析し、提案を確認できます。
|
||||
:::
|
||||
You can switch between agents during a session or invoke them with the `@` mention.
|
||||
|
||||
セッション中にエージェントを切り替えたり、`@` メンションでエージェントを呼び出したりできます。
|
||||
|
||||
---
|
||||
|
||||
@@ -18,40 +19,41 @@ OpenCode には 2 種類のエージェントがあります。プライマリ
|
||||
|
||||
---
|
||||
|
||||
### 主要エージェント
|
||||
### プライマリエージェント
|
||||
|
||||
プライマリ エージェントは、直接対話する主要なアシスタントです。 **Tab** キー、または設定した `switch_agent` キーバインドを使用して、それらを切り替えることができます。これらのエージェントが主な会話を処理します。ツールへのアクセスは権限によって構成されます。たとえば、Build ではすべてのツールが有効になっていますが、Plan は制限されています。
|
||||
プライマリエージェントは、直接対話する主要なアシスタントです。 **Tab** キー、または設定した `switch_agent` キーバインドを使用して、それらを切り替えることができます。これらのエージェントが主な会話を処理します。ツールへのアクセスは権限によって構成されます。たとえば、Build ではすべてのツールが有効になっていますが、Plan は制限されています。
|
||||
|
||||
:::tip
|
||||
**Tab** キーを使用して、セッション中にプライマリ エージェントを切り替えることができます。
|
||||
**Tab** キーを使用して、セッション中にプライマリエージェントを切り替えることができます。
|
||||
:::
|
||||
OpenCode には、**Build** と **Plan** という 2 つの組み込みプライマリ エージェントが付属しています。これらについて以下で説明します。
|
||||
|
||||
OpenCode には、**Build** と **Plan** という 2 つの組み込みプライマリエージェントが付属しています。これらについて以下で説明します。
|
||||
|
||||
---
|
||||
|
||||
### サブエージェント
|
||||
|
||||
サブエージェントは、プライマリ エージェントが特定のタスクのために呼び出すことができる特殊なアシスタントです。メッセージ内で **@ メンション**することで、手動で呼び出すこともできます。
|
||||
サブエージェントは、プライマリエージェントが特定のタスクのために呼び出すことができる特殊なアシスタントです。メッセージ内で **@ メンション**することで、手動で呼び出すこともできます。
|
||||
|
||||
OpenCode には、**General** と **Explore** という 2 つの組み込みサブエージェントが付属しています。これについては以下で見ていきます。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
OpenCode には、2 つの組み込みプライマリ エージェントと 2 つの組み込みサブエージェントが付属しています。
|
||||
OpenCode には、2 つの組み込みプライマリエージェントと 2 つの組み込みサブエージェントが付属しています。
|
||||
|
||||
---
|
||||
|
||||
### ビルドを使用する
|
||||
### Build
|
||||
|
||||
_モード_: `primary`
|
||||
|
||||
ビルドは、すべてのツールが有効になっている **デフォルト** プライマリ エージェントです。これは、ファイル操作やシステム コマンドへの完全なアクセスが必要な開発作業用の標準エージェントです。
|
||||
Build は、すべてのツールが有効になっている **デフォルト** プライマリエージェントです。これは、ファイル操作やシステムコマンドへの完全なアクセスが必要な開発作業用の標準エージェントです。
|
||||
|
||||
---
|
||||
|
||||
### 利用プラン
|
||||
### Plan
|
||||
|
||||
_モード_: `primary`
|
||||
|
||||
@@ -65,15 +67,15 @@ _モード_: `primary`
|
||||
|
||||
---
|
||||
|
||||
### 一般的な使用
|
||||
### General
|
||||
|
||||
_モード_: `subagent`
|
||||
|
||||
複雑な質問を調査し、複数ステップのタスクを実行するための汎用エージェント。完全なツール アクセス権 (todo を除く) があるため、必要に応じてファイルを変更できます。これを使用して、複数の作業単位を並行して実行します。
|
||||
複雑な質問を調査し、複数ステップのタスクを実行するための汎用エージェント。完全なツールアクセス権 (todo を除く) があるため、必要に応じてファイルを変更できます。これを使用して、複数の作業単位を並行して実行します。
|
||||
|
||||
---
|
||||
|
||||
### 探索を使用する
|
||||
### Explore
|
||||
|
||||
_モード_: `subagent`
|
||||
|
||||
@@ -81,36 +83,36 @@ _モード_: `subagent`
|
||||
|
||||
---
|
||||
|
||||
### 圧縮を使用する
|
||||
### Compact
|
||||
|
||||
_モード_: `primary`
|
||||
|
||||
長いコンテキストを小さな要約に圧縮する隠しシステム エージェント。これは必要に応じて自動的に実行され、UI では選択できません。
|
||||
長いコンテキストを小さな要約に圧縮する隠しシステムエージェント。これは必要に応じて自動的に実行され、UI では選択できません。
|
||||
|
||||
---
|
||||
|
||||
### タイトルを使用する
|
||||
### Title
|
||||
|
||||
_モード_: `primary`
|
||||
|
||||
短いセッション タイトルを生成する非表示のシステム エージェント。これは自動的に実行され、UI では選択できません。
|
||||
短いセッションタイトルを生成する非表示のシステムエージェント。これは自動的に実行され、UI では選択できません。
|
||||
|
||||
---
|
||||
|
||||
### 使用概要
|
||||
### Summary
|
||||
|
||||
_モード_: `primary`
|
||||
|
||||
セッション概要を作成する非表示のシステム エージェント。これは自動的に実行され、UI では選択できません。
|
||||
セッション概要を作成する非表示のシステムエージェント。これは自動的に実行され、UI では選択できません。
|
||||
|
||||
---
|
||||
|
||||
## 使用法
|
||||
|
||||
1. プライマリ エージェントの場合は、セッション中に **Tab** キーを使用してエージェントを切り替えます。設定した `switch_agent` キーバインドを使用することもできます。
|
||||
1. プライマリエージェントの場合は、セッション中に **Tab** キーを使用してエージェントを切り替えます。設定した `switch_agent` キーバインドを使用することもできます。
|
||||
|
||||
2. サブエージェントは次のように呼び出すことができます。
|
||||
- プライマリ エージェントによって、説明に基づいて特殊なタスクを **自動的に** 実行されます。
|
||||
- プライマリエージェントによって、説明に基づいて特殊なタスクを **自動的に** 実行されます。
|
||||
- メッセージ内でサブエージェントを **@ メンション**することで手動で実行できます。例えば。
|
||||
|
||||
```txt frame="none"
|
||||
@@ -125,7 +127,7 @@ _モード_: `primary`
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
組み込みエージェントをカスタマイズしたり、構成を通じて独自のエージェントを作成したりできます。エージェントは次の 2 つの方法で構成できます。
|
||||
|
||||
@@ -133,7 +135,7 @@ _モード_: `primary`
|
||||
|
||||
### JSON
|
||||
|
||||
`opencode.json` 構成ファイルでエージェントを構成します。
|
||||
`opencode.json` 設定ファイルでエージェントを構成します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -209,7 +211,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
|
||||
## オプション
|
||||
|
||||
これらの構成オプションを詳しく見てみましょう。
|
||||
これらの設定オプションを詳しく見てみましょう。
|
||||
|
||||
---
|
||||
|
||||
@@ -227,7 +229,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
}
|
||||
```
|
||||
|
||||
これは**必須**の構成オプションです。
|
||||
これは**必須**の設定オプションです。
|
||||
|
||||
---
|
||||
|
||||
@@ -278,7 +280,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
|
||||
---
|
||||
|
||||
### 最大ステップ数
|
||||
### ステップ数
|
||||
|
||||
エージェントが強制的にテキストのみで応答するまでに実行できるエージェントの反復の最大数を制御します。これにより、コストを管理したいユーザーは、エージェントのアクションに制限を設定できます。
|
||||
|
||||
@@ -296,7 +298,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
}
|
||||
```
|
||||
|
||||
制限に達すると、エージェントは、作業の概要と推奨される残りのタスクを応答するように指示する特別なシステム プロンプトを受け取ります。
|
||||
制限に達すると、エージェントは、作業の概要と推奨される残りのタスクを応答するように指示する特別なシステムプロンプトを受け取ります。
|
||||
|
||||
:::caution
|
||||
従来の `maxSteps` フィールドは非推奨になりました。代わりに `steps` を使用してください。
|
||||
@@ -304,7 +306,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
|
||||
---
|
||||
|
||||
### 無効にする
|
||||
### 無効化
|
||||
|
||||
エージェントを無効にするには、`true` に設定します。
|
||||
|
||||
@@ -322,7 +324,7 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
|
||||
### プロンプト
|
||||
|
||||
`prompt` 構成を使用して、このエージェントのカスタム システム プロンプト ファイルを指定します。プロンプト ファイルには、エージェントの目的に固有の指示が含まれている必要があります。
|
||||
`prompt` 設定を使用して、このエージェントのカスタムシステムプロンプトファイルを指定します。プロンプトファイルには、エージェントの目的に固有の指示が含まれている必要があります。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -334,16 +336,16 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
}
|
||||
```
|
||||
|
||||
このパスは、構成ファイルが配置されている場所に対する相対パスです。したがって、これはグローバルな OpenCode 構成とプロジェクト固有の構成の両方で機能します。
|
||||
このパスは、設定ファイルが配置されている場所に対する相対パスです。したがって、これはグローバルな OpenCode 設定とプロジェクト固有の設定の両方で機能します。
|
||||
|
||||
---
|
||||
|
||||
### モデル
|
||||
|
||||
`model` 構成を使用して、このエージェントのモデルをオーバーライドします。さまざまなタスクに最適化されたさまざまなモデルを使用する場合に役立ちます。たとえば、計画にはより高速なモデルを、実装にはより有能なモデルを使用します。
|
||||
`model` 設定を使用して、このエージェントのモデルをオーバーライドします。さまざまなタスクに最適化されたさまざまなモデルを使用する場合に役立ちます。たとえば、計画にはより高速なモデルを、実装にはより有能なモデルを使用します。
|
||||
|
||||
:::tip
|
||||
モデルを指定しない場合、プライマリ エージェントは [グローバルに設定されたモデル ](/docs/config#models) を使用し、サブエージェントはサブエージェントを呼び出したプライマリ エージェントのモデルを使用します。
|
||||
モデルを指定しない場合、プライマリエージェントは [グローバルに設定されたモデル](/docs/config#models) を使用し、サブエージェントはサブエージェントを呼び出したプライマリエージェントのモデルを使用します。
|
||||
:::
|
||||
|
||||
```json title="opencode.json"
|
||||
@@ -356,13 +358,13 @@ Markdown ファイル名がエージェント名になります。たとえば
|
||||
}
|
||||
```
|
||||
|
||||
OpenCode 構成内のモデル ID は、`provider/model-id` という形式を使用します。たとえば、[OpenCode Zen](/docs/zen) を使用している場合、GPT 5.1 Codex には `opencode/gpt-5.1-codex` を使用します。
|
||||
OpenCode 設定内のモデル ID は、`provider/model-id` という形式を使用します。たとえば、[OpenCode Zen](/docs/zen) を使用している場合、GPT 5.1 Codex には `opencode/gpt-5.1-codex` を使用します。
|
||||
|
||||
---
|
||||
|
||||
### ツール
|
||||
|
||||
`tools` 構成を使用して、このエージェントで使用できるツールを制御します。特定のツールを `true` または `false` に設定することで、有効または無効にすることができます。
|
||||
`tools` 設定を使用して、このエージェントで使用できるツールを制御します。特定のツールを `true` または `false` に設定することで、有効または無効にすることができます。
|
||||
|
||||
```json title="opencode.json" {3-6,9-12}
|
||||
{
|
||||
@@ -402,7 +404,7 @@ MCP サーバーからすべてのツールを無効にするには、次のよ
|
||||
}
|
||||
```
|
||||
|
||||
[tools](/docs/tools) について詳しくはこちらをご覧ください。
|
||||
[ツール](/docs/tools) について詳しくはこちらをご覧ください。
|
||||
|
||||
---
|
||||
|
||||
@@ -478,7 +480,7 @@ Only analyze code and suggest changes.
|
||||
}
|
||||
```
|
||||
|
||||
これにはグロブ パターンを使用できます。
|
||||
これにはグロブパターンを使用できます。
|
||||
|
||||
```json title="opencode.json" {7}
|
||||
{
|
||||
@@ -536,9 +538,9 @@ Only analyze code and suggest changes.
|
||||
|
||||
---
|
||||
|
||||
### 隠れた
|
||||
### 非表示
|
||||
|
||||
`@` を使用して、`hidden: true` オートコンプリート メニューからサブエージェントを非表示にします。他のエージェントによってタスク ツールを介してプログラム的にのみ呼び出す必要がある内部サブエージェントに役立ちます。
|
||||
`@` を使用して、`hidden: true` オートコンプリートメニューからサブエージェントを非表示にします。他のエージェントによってタスクツールを介してプログラム的にのみ呼び出す必要がある内部サブエージェントに役立ちます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -551,7 +553,7 @@ Only analyze code and suggest changes.
|
||||
}
|
||||
```
|
||||
|
||||
これは、オートコンプリート メニューでのユーザーの表示にのみ影響します。権限が許可されていれば、非表示のエージェントをタスク ツール経由でモデルから呼び出すことができます。
|
||||
これは、オートコンプリートメニューでのユーザーの表示にのみ影響します。権限が許可されていれば、非表示のエージェントをタスクツール経由でモデルから呼び出すことができます。
|
||||
|
||||
:::note
|
||||
`mode: subagent` エージェントにのみ適用されます。
|
||||
@@ -561,7 +563,7 @@ Only analyze code and suggest changes.
|
||||
|
||||
### タスクの権限
|
||||
|
||||
`permission.task` を使用して、エージェントがタスク ツール経由でどのサブエージェントを呼び出すことができるかを制御します。柔軟なマッチングのためにグロブ パターンを使用します。
|
||||
`permission.task` を使用して、エージェントがタスクツール経由でどのサブエージェントを呼び出すことができるかを制御します。柔軟なマッチングのためにグロブパターンを使用します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -580,12 +582,12 @@ Only analyze code and suggest changes.
|
||||
}
|
||||
```
|
||||
|
||||
`deny` に設定すると、サブエージェントはタスク ツールの説明から完全に削除されるため、モデルはそれを呼び出そうとしません。
|
||||
`deny` に設定すると、サブエージェントはタスクツールの説明から完全に削除されるため、モデルはそれを呼び出そうとしません。
|
||||
|
||||
:::tip
|
||||
ルールは順番に評価され、**最後に一致したルールが優先されます**。上記の例では、`orchestrator-planner` は `*` (拒否) と `orchestrator-*` (許可) の両方に一致しますが、`orchestrator-*` は `*` の後に来るため、結果は `allow` になります。
|
||||
:::tip
|
||||
ユーザーは、エージェントのタスク権限が拒否する場合でも、`@` オートコンプリート メニューを介して、いつでもサブエージェントを直接呼び出すことができます。
|
||||
ユーザーは、エージェントのタスク権限が拒否する場合でも、`@` オートコンプリートメニューを介して、いつでもサブエージェントを直接呼び出すことができます。
|
||||
:::
|
||||
|
||||
---
|
||||
@@ -611,7 +613,7 @@ Only analyze code and suggest changes.
|
||||
|
||||
---
|
||||
|
||||
### トップP
|
||||
### Top P
|
||||
|
||||
`top_p` オプションで応答の多様性を制御します。ランダム性を制御するための温度の代替手段。
|
||||
|
||||
@@ -629,9 +631,9 @@ Only analyze code and suggest changes.
|
||||
|
||||
---
|
||||
|
||||
### 追加
|
||||
### 追加オプション
|
||||
|
||||
エージェント設定で指定したその他のオプションはすべて、モデル オプションとしてプロバイダーに**直接渡されます**。これにより、プロバイダー固有の機能とパラメーターを使用できるようになります。
|
||||
エージェント設定で指定したその他のオプションはすべて、モデルオプションとしてプロバイダーに**直接渡されます**。これにより、プロバイダー固有の機能とパラメーターを使用できるようになります。
|
||||
|
||||
たとえば、OpenAI の推論モデルを使用すると、推論の労力を制御できます。
|
||||
|
||||
@@ -668,9 +670,9 @@ opencode agent create
|
||||
|
||||
1. エージェントを保存する場所を尋ねます。グローバルまたはプロジェクト固有。
|
||||
2. エージェントが行うべきことの説明。
|
||||
3. 適切なシステム プロンプトと識別子を生成します。
|
||||
3. 適切なシステムプロンプトと識別子を生成します。
|
||||
4. エージェントがアクセスできるツールを選択できます。
|
||||
5. 最後に、エージェント構成を含むMarkdown ファイルを作成します。
|
||||
5. 最後に、エージェント設定を含む Markdown ファイルを作成します。
|
||||
|
||||
---
|
||||
|
||||
@@ -678,11 +680,11 @@ opencode agent create
|
||||
|
||||
さまざまなエージェントの一般的な使用例をいくつか示します。
|
||||
|
||||
- **ビルド エージェント**: すべてのツールを有効にした完全な開発作業
|
||||
- **ビルドエージェント**: すべてのツールを有効にした完全な開発作業
|
||||
- **計画エージェント**: 変更を加えずに分析および計画を立てる
|
||||
- **レビュー エージェント**: 読み取り専用アクセスとドキュメント ツールを備えたコード レビュー
|
||||
- **デバッグ エージェント**: bash および読み取りツールを有効にして調査に重点を置きます
|
||||
- **ドキュメント エージェント**: ファイル操作を使用してドキュメントを作成しますが、システム コマンドは使用しません
|
||||
- **レビューエージェント**: 読み取り専用アクセスとドキュメントツールを備えたコードレビュー
|
||||
- **デバッグエージェント**: bash および読み取りツールを有効にして調査に重点を置きます
|
||||
- **ドキュメントエージェント**: ファイル操作を使用してドキュメントを作成しますが、システムコマンドは使用しません
|
||||
|
||||
---
|
||||
|
||||
@@ -696,7 +698,7 @@ opencode agent create
|
||||
|
||||
---
|
||||
|
||||
### 文書作成エージェント
|
||||
### ドキュメント作成エージェント
|
||||
|
||||
```markdown title="~/.config/opencode/agents/docs-writer.md"
|
||||
---
|
||||
@@ -718,7 +720,7 @@ Focus on:
|
||||
|
||||
---
|
||||
|
||||
### セキュリティ監査人
|
||||
### セキュリティ監査エージェント
|
||||
|
||||
```markdown title="~/.config/opencode/agents/security-auditor.md"
|
||||
---
|
||||
|
||||
@@ -21,15 +21,15 @@ opencode run "Explain how closures work in JavaScript"
|
||||
|
||||
### tui
|
||||
|
||||
OpenCode terminal ユーザー インターフェイスを開始します。
|
||||
OpenCode ターミナルユーザーインターフェイスを開始します。
|
||||
|
||||
```bash
|
||||
opencode [project]
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| フラグ | ショート | 説明 |
|
||||
| ------------ | ----------- | ---------------------------------------------------------- |
|
||||
| `--continue` | `-c` | 最後のセッションを続行 |
|
||||
| `--session` | | 続行時にセッションをフォーク (`-s` または `--fork` と併用) |
|
||||
@@ -60,7 +60,7 @@ opencode agent [command]
|
||||
|
||||
### attach
|
||||
|
||||
`serve` または `web` コマンドを使用して起動された、すでに実行中の OpenCode バックエンド サーバーにterminal を接続します。
|
||||
`serve` または `web` コマンドを使用して起動された、すでに実行中の OpenCode バックエンドサーバーにターミナルを接続します。
|
||||
|
||||
```bash
|
||||
opencode attach [url]
|
||||
@@ -76,12 +76,12 @@ opencode web --port 4096 --hostname 0.0.0.0
|
||||
opencode attach http://10.20.30.40:4096
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| ----------- | ----- | ------------------------------ |
|
||||
| `--dir` | | TUI を開始する作業ディレクトリ |
|
||||
| `--session` | `-s` | 続行するセッション ID |
|
||||
| フラグ | ショート | 説明 |
|
||||
| ----------- | -------- | ------------------------------ |
|
||||
| `--dir` | | TUI を開始する作業ディレクトリ |
|
||||
| `--session` | `-s` | 続行するセッション ID |
|
||||
|
||||
---
|
||||
|
||||
@@ -93,7 +93,7 @@ opencode attach http://10.20.30.40:4096
|
||||
opencode agent create
|
||||
```
|
||||
|
||||
このコマンドは、カスタム システム プロンプトとツール構成を使用して新しいエージェントを作成する手順を示します。
|
||||
このコマンドは、カスタムシステムプロンプトとツール構成を使用して新しいエージェントを作成する手順を示します。
|
||||
|
||||
---
|
||||
|
||||
@@ -119,7 +119,7 @@ opencode auth [command]
|
||||
|
||||
#### login
|
||||
|
||||
OpenCode は [Models.dev](https://models.dev) のプロバイダー リストを利用しているため、`opencode auth login` を使用して、使用したいプロバイダーの API キーを構成できます。これは`~/.local/share/opencode/auth.json`に保存されます。
|
||||
OpenCode は [Models.dev](https://models.dev) のプロバイダーリストを利用しているため、`opencode auth login` を使用して、使用したいプロバイダーの API キーを構成できます。これは `~/.local/share/opencode/auth.json` に保存されます。
|
||||
|
||||
```bash
|
||||
opencode auth login
|
||||
@@ -185,18 +185,18 @@ GitHub エージェントを実行します。これは通常、GitHub Actions
|
||||
opencode github run
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| フラグ | 説明 |
|
||||
| --------- | --------------------------------------------------- |
|
||||
| `--event` | エージェントを実行するための GitHub モック イベント |
|
||||
| `--token` | GitHub個人アクセストークン |
|
||||
| `--token` | GitHub 個人アクセストークン |
|
||||
|
||||
---
|
||||
|
||||
### mcp
|
||||
|
||||
モデル コンテキスト プロトコル サーバーを管理します。
|
||||
モデルコンテキストプロトコルサーバーを管理します。
|
||||
|
||||
```bash
|
||||
opencode mcp [command]
|
||||
@@ -286,7 +286,7 @@ opencode models [provider]
|
||||
|
||||
このコマンドは、構成されたプロバイダー全体で利用可能なすべてのモデルを `provider/model` の形式で表示します。
|
||||
|
||||
これは、config](/docs/config/) で使用する正確なモデル名を把握するのに役立ちます。
|
||||
これは、[設定](/docs/config/) で使用する正確なモデル名を把握するのに役立ちます。
|
||||
|
||||
オプションでプロバイダー ID を渡して、そのプロバイダーによってモデルをフィルターできます。
|
||||
|
||||
@@ -294,14 +294,14 @@ opencode models [provider]
|
||||
opencode models anthropic
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| フラグ | 説明 |
|
||||
| ----------- | --------------------------------------------------------------- |
|
||||
| `--refresh` | models.dev からモデル キャッシュを更新します。 |
|
||||
| `--refresh` | models.dev からモデルキャッシュを更新します。 |
|
||||
| `--verbose` | より詳細なモデル出力を使用します (コストなどのメタデータを含む) |
|
||||
|
||||
`--refresh` フラグを使用して、キャッシュされたモデル リストを更新します。これは、新しいモデルがプロバイダーに追加され、それを OpenCode で確認したい場合に便利です。
|
||||
`--refresh` フラグを使用して、キャッシュされたモデルリストを更新します。これは、新しいモデルがプロバイダーに追加され、それを OpenCode で確認したい場合に便利です。
|
||||
|
||||
```bash
|
||||
opencode models --refresh
|
||||
@@ -311,7 +311,7 @@ opencode models --refresh
|
||||
|
||||
### run
|
||||
|
||||
プロンプトを直接渡して、非対話モードでopencodeを実行します。
|
||||
プロンプトを直接渡して、非対話モードで opencode を実行します。
|
||||
|
||||
```bash
|
||||
opencode run [message..]
|
||||
@@ -323,7 +323,7 @@ opencode run [message..]
|
||||
opencode run Explain the use of context in Go
|
||||
```
|
||||
|
||||
実行中の `opencode serve` インスタンスにアタッチして、実行ごとの MCP サーバーのコールド ブート時間を回避することもできます。
|
||||
実行中の `opencode serve` インスタンスにアタッチして、実行ごとの MCP サーバーのコールドブート時間を回避することもできます。
|
||||
|
||||
```bash
|
||||
# Start a headless server in one terminal
|
||||
@@ -333,9 +333,9 @@ opencode serve
|
||||
opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| フラグ | ショート | 説明 |
|
||||
| ------------ | ----------- | ----------------------------------------------------------------------------------------- |
|
||||
| `--command` | | 実行するコマンド。引数には message を使用します。 |
|
||||
| `--continue` | `-c` | 最後のセッションを続行 |
|
||||
@@ -347,24 +347,24 @@ opencode run --attach http://localhost:4096 "Explain async/await in JavaScript"
|
||||
| `--file` | `-f` | メッセージに添付するファイル |
|
||||
| `--format` | | 形式: デフォルト (フォーマット済み) または json (生の JSON イベント) |
|
||||
| `--title` | | セッションのタイトル (値が指定されていない場合は、切り詰められたプロンプトが使用されます) |
|
||||
| `--attach` | | 実行中のopencodeサーバー (http://localhost:4096 など) に接続します。 |
|
||||
| `--attach` | | 実行中の opencode サーバー (http://localhost:4096 など) に接続します。 |
|
||||
| `--port` | | ローカルサーバーのポート (デフォルトはランダムポート) |
|
||||
|
||||
---
|
||||
|
||||
### serve
|
||||
|
||||
API アクセスのためにヘッドレス OpenCode サーバーを起動します。完全な HTTP インターフェイスについては、[server docs](/docs/server) を確認してください。
|
||||
API アクセスのためにヘッドレス OpenCode サーバーを起動します。完全な HTTP インターフェイスについては、[サーバーのドキュメント](/docs/server) を確認してください。
|
||||
|
||||
```bash
|
||||
opencode serve
|
||||
```
|
||||
|
||||
これにより、TUI インターフェイスを使用せずにopencode機能への API アクセスを提供する HTTP サーバーが起動します。 `OPENCODE_SERVER_PASSWORD` を設定して HTTP 基本認証を有効にします (ユーザー名のデフォルトは `opencode`)。
|
||||
これにより、TUI インターフェイスを使用せずに opencode 機能への API アクセスを提供する HTTP サーバーが起動します。 `OPENCODE_SERVER_PASSWORD` を設定して HTTP 基本認証を有効にします (ユーザー名のデフォルトは `opencode`)。
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| フラグ | 説明 |
|
||||
| ------------ | --------------------------------------- |
|
||||
| `--port` | リッスンするポート |
|
||||
| `--hostname` | リッスンするホスト名 |
|
||||
@@ -391,12 +391,12 @@ opencode session [command]
|
||||
opencode session list
|
||||
```
|
||||
|
||||
##### Flags
|
||||
##### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| ------------- | ----- | ---------------------------------------- |
|
||||
| `--max-count` | `-n` | 最新のセッションを N 個に制限 |
|
||||
| `--format` | | 出力形式: テーブルまたは json (テーブル) |
|
||||
| フラグ | ショート | 説明 |
|
||||
| ------------- | -------- | ---------------------------------------- |
|
||||
| `--max-count` | `-n` | 最新のセッションを N 個に制限 |
|
||||
| `--format` | | 出力形式: テーブルまたは json (テーブル) |
|
||||
|
||||
---
|
||||
|
||||
@@ -408,20 +408,20 @@ OpenCode セッションのトークンの使用状況とコストの統計を
|
||||
opencode stats
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| ----------- | --------------------------------------------------------------------------- |
|
||||
| `--days` | Show stats for the last N days (all time) |
|
||||
| `--tools` | Number of tools to show (all) |
|
||||
| `--models` | Show model usage breakdown (hidden by default). Pass a number to show top N |
|
||||
| `--project` | Filter by project (all projects, empty string: current project) |
|
||||
| フラグ | 説明 |
|
||||
| ----------- | ------------------------------------------------------------------------------------------ |
|
||||
| `--days` | 過去 N 日間の統計を表示 (全期間) |
|
||||
| `--tools` | 表示するツールの数 (すべて) |
|
||||
| `--models` | モデルの使用状況の内訳を表示 (デフォルトでは非表示)。上位 N 件を表示するには数値を渡します |
|
||||
| `--project` | プロジェクトでフィルタリング (全プロジェクト、空文字列: 現在のプロジェクト) |
|
||||
|
||||
---
|
||||
|
||||
### export
|
||||
|
||||
セッションデータをJSONとしてエクスポートします。
|
||||
セッションデータを JSON としてエクスポートします。
|
||||
|
||||
```bash
|
||||
opencode export [sessionID]
|
||||
@@ -433,13 +433,13 @@ opencode export [sessionID]
|
||||
|
||||
### import
|
||||
|
||||
JSON ファイルまたは OpenCode 共有 URL からセッション データをインポートします。
|
||||
JSON ファイルまたは OpenCode 共有 URL からセッションデータをインポートします。
|
||||
|
||||
```bash
|
||||
opencode import <file>
|
||||
```
|
||||
|
||||
ローカル ファイルまたは OpenCode 共有 URL からインポートできます。
|
||||
ローカルファイルまたは OpenCode 共有 URL からインポートできます。
|
||||
|
||||
```bash
|
||||
opencode import session.json
|
||||
@@ -458,9 +458,9 @@ opencode web
|
||||
|
||||
これにより、HTTP サーバーが起動し、Web ブラウザが開き、Web インターフェイスを通じて OpenCode にアクセスします。 `OPENCODE_SERVER_PASSWORD` を設定して HTTP 基本認証を有効にします (ユーザー名のデフォルトは `opencode`)。
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| フラグ | 説明 |
|
||||
| ------------ | --------------------------------------- |
|
||||
| `--port` | リッスンするポート |
|
||||
| `--hostname` | リッスンするホスト名 |
|
||||
@@ -471,7 +471,7 @@ opencode web
|
||||
|
||||
### acp
|
||||
|
||||
ACP (エージェント クライアント プロトコル) サーバーを起動します。
|
||||
ACP (エージェントクライアントプロトコル) サーバーを起動します。
|
||||
|
||||
```bash
|
||||
opencode acp
|
||||
@@ -479,9 +479,9 @@ opencode acp
|
||||
|
||||
このコマンドは、nd-JSON を使用して stdin/stdout 経由で通信する ACP サーバーを起動します。
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Description |
|
||||
| フラグ | 説明 |
|
||||
| ------------ | -------------------- |
|
||||
| `--cwd` | 作業ディレクトリ |
|
||||
| `--port` | リッスンするポート |
|
||||
@@ -497,20 +497,20 @@ OpenCode をアンインストールし、関連ファイルをすべて削除
|
||||
opencode uninstall
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| --------------- | ----- | ------------------------------------------- |
|
||||
| `--keep-config` | `-c` | Keep configuration files |
|
||||
| `--keep-data` | `-d` | Keep session data and snapshots |
|
||||
| `--dry-run` | | Show what would be removed without removing |
|
||||
| `--force` | `-f` | Skip confirmation prompts |
|
||||
| フラグ | ショート | 説明 |
|
||||
| --------------- | -------- | -------------------------------------------- |
|
||||
| `--keep-config` | `-c` | 構成ファイルを保持する |
|
||||
| `--keep-data` | `-d` | セッションデータとスナップショットを保持する |
|
||||
| `--dry-run` | | 削除せずに削除される内容を表示する |
|
||||
| `--force` | `-f` | 確認プロンプトをスキップする |
|
||||
|
||||
---
|
||||
|
||||
### upgrade
|
||||
|
||||
opencodeを最新バージョンまたは特定のバージョンに更新します。
|
||||
opencode を最新バージョンまたは特定のバージョンに更新します。
|
||||
|
||||
```bash
|
||||
opencode upgrade [target]
|
||||
@@ -528,24 +528,24 @@ opencode upgrade
|
||||
opencode upgrade v0.1.48
|
||||
```
|
||||
|
||||
#### Flags
|
||||
#### フラグ
|
||||
|
||||
| Flag | Short | Description |
|
||||
| ---------- | ----- | ------------------------------------------------------ |
|
||||
| `--method` | `-m` | 使用されたインストール方法。curl, npm, pnpm, bun, brew |
|
||||
| フラグ | ショート | 説明 |
|
||||
| ---------- | -------- | ------------------------------------------------------ |
|
||||
| `--method` | `-m` | 使用されたインストール方法。curl, npm, pnpm, bun, brew |
|
||||
|
||||
---
|
||||
|
||||
## Global Flags
|
||||
## グローバルフラグ
|
||||
|
||||
opencode CLI は次のグローバル フラグを受け取ります。
|
||||
opencode CLI は次のグローバルフラグを受け取ります。
|
||||
|
||||
| Flag | Short | Description |
|
||||
| -------------- | ----- | -------------------------------------- |
|
||||
| `--help` | `-h` | ヘルプを表示 |
|
||||
| `--version` | `-v` | バージョン番号を出力 |
|
||||
| `--print-logs` | | ログを標準エラー出力に出力 |
|
||||
| `--log-level` | | ログ レベル (DEBUG、INFO、WARN、ERROR) |
|
||||
| フラグ | ショート | 説明 |
|
||||
| -------------- | -------- | ------------------------------------- |
|
||||
| `--help` | `-h` | ヘルプを表示 |
|
||||
| `--version` | `-v` | バージョン番号を出力 |
|
||||
| `--print-logs` | | ログを標準エラー出力に出力 |
|
||||
| `--log-level` | | ログレベル (DEBUG、INFO、WARN、ERROR) |
|
||||
|
||||
---
|
||||
|
||||
@@ -562,7 +562,7 @@ OpenCode は環境変数を使用して構成できます。
|
||||
| `OPENCODE_CONFIG_CONTENT` | 文字列 | インライン JSON 構成コンテンツ |
|
||||
| `OPENCODE_DISABLE_AUTOUPDATE` | ブール値 | 自動更新チェックを無効にする |
|
||||
| `OPENCODE_DISABLE_PRUNE` | ブール値 | 古いデータのプルーニングを無効にする |
|
||||
| `OPENCODE_DISABLE_TERMINAL_TITLE` | ブール値 | terminal titleの自動更新を無効にする |
|
||||
| `OPENCODE_DISABLE_TERMINAL_TITLE` | ブール値 | ターミナルタイトルの自動更新を無効にする |
|
||||
| `OPENCODE_PERMISSION` | 文字列 | インライン化された json 権限設定 |
|
||||
| `OPENCODE_DISABLE_DEFAULT_PLUGINS` | ブール値 | デフォルトのプラグインを無効にする |
|
||||
| `OPENCODE_DISABLE_LSP_DOWNLOAD` | ブール値 | LSP サーバーの自動ダウンロードを無効にする |
|
||||
@@ -571,7 +571,7 @@ OpenCode は環境変数を使用して構成できます。
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE` | ブール値 | `.claude` からの読み取りを無効にする (プロンプト + スキル) |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_PROMPT` | ブール値 | `~/.claude/CLAUDE.md` の読み取りを無効にする |
|
||||
| `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS` | ブール値 | `.claude/skills` のロードを無効にする |
|
||||
| `OPENCODE_DISABLE_MODELS_FETCH` | ブール値 | リモート ソースからのモデルの取得を無効にする |
|
||||
| `OPENCODE_DISABLE_MODELS_FETCH` | ブール値 | リモートソースからのモデルの取得を無効にする |
|
||||
| `OPENCODE_FAKE_VCS` | 文字列 | テスト目的の偽の VCS プロバイダー |
|
||||
| `OPENCODE_DISABLE_FILETIME_CHECK` | ブール値 | 最適化のためにファイル時間チェックを無効にする |
|
||||
| `OPENCODE_CLIENT` | 文字列 | クライアント識別子 (デフォルトは `cli`) |
|
||||
@@ -591,13 +591,13 @@ OpenCode は環境変数を使用して構成できます。
|
||||
| `OPENCODE_EXPERIMENTAL` | ブール値 | すべての実験的機能を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_ICON_DISCOVERY` | ブール値 | アイコン検出を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT` | ブール値 | TUI で選択時のコピーを無効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | 番号 | bash コマンドのデフォルトのタイムアウト (ミリ秒) |
|
||||
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 番号 | LLM 応答の最大Output Tokens |
|
||||
| `OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS` | 数値 | bash コマンドのデフォルトのタイムアウト (ミリ秒) |
|
||||
| `OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX` | 数値 | LLM 応答の最大出力トークン |
|
||||
| `OPENCODE_EXPERIMENTAL_FILEWATCHER` | ブール値 | ディレクトリ全体のファイル監視を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_OXFMT` | ブール値 | oxfmt フォーマッタを有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TOOL` | ブール値 | 実験的な LSP ツールを有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_DISABLE_FILEWATCHER` | ブール値 | ファイルウォッチャーを無効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_EXA` | ブール値 | 実験的な Exa 機能を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TY` | ブール値 | 実験的な LSP タイプ チェックを有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | ブール値 | 試験的なMarkdown機能を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_LSP_TY` | ブール値 | 実験的な LSP タイプチェックを有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_MARKDOWN` | ブール値 | 試験的な Markdown 機能を有効にする |
|
||||
| `OPENCODE_EXPERIMENTAL_PLAN_MODE` | ブール値 | プランモードを有効にする |
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
---
|
||||
title: コマンド
|
||||
description: 反復的なタスク用のカスタム コマンドを作成します。
|
||||
description: 反復的なタスク用のカスタムコマンドを作成します。
|
||||
---
|
||||
|
||||
カスタム コマンドを使用すると、TUI でコマンドを実行するときに実行するプロンプトを指定できます。
|
||||
カスタムコマンドを使用すると、TUI でコマンドを実行するときに実行するプロンプトを指定できます。
|
||||
|
||||
```bash frame="none"
|
||||
/my-command
|
||||
```
|
||||
|
||||
カスタム コマンドは、`/init`、`/undo`、`/redo`、`/share`、`/help` などの組み込みコマンドに追加されます。 [詳細はこちら](/docs/tui#commands)。
|
||||
カスタムコマンドは、`/init`、`/undo`、`/redo`、`/share`、`/help` などの組み込みコマンドに追加されます。 [詳細はこちら](/docs/tui#commands)。
|
||||
|
||||
---
|
||||
|
||||
## コマンドファイルの作成
|
||||
|
||||
カスタム コマンドを定義するには、`commands/` ディレクトリにMarkdown ファイルを作成します。
|
||||
カスタムコマンドを定義するには、`commands/` ディレクトリに Markdown ファイルを作成します。
|
||||
|
||||
`.opencode/commands/test.md` を作成します。
|
||||
|
||||
@@ -40,15 +40,15 @@ Focus on the failing tests and suggest fixes.
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
カスタム コマンドは、OpenCode 構成を通じて、または `commands/` ディレクトリにMarkdown ファイルを作成することによって追加できます。
|
||||
カスタムコマンドは、OpenCode 設定を通じて、または `commands/` ディレクトリに Markdown ファイルを作成することによって追加できます。
|
||||
|
||||
---
|
||||
|
||||
### JSON
|
||||
|
||||
OpenCode で `command` オプションを使用します [config](/docs/config):
|
||||
OpenCode [設定](/docs/config)で `command` オプションを使用します:
|
||||
|
||||
```json title="opencode.jsonc" {4-12}
|
||||
{
|
||||
@@ -104,7 +104,7 @@ Markdown ファイル名がコマンド名になります。たとえば、`test
|
||||
|
||||
## プロンプト構成
|
||||
|
||||
カスタム コマンドのプロンプトは、いくつかの特別なプレースホルダーと構文をサポートしています。
|
||||
カスタムコマンドのプロンプトは、いくつかの特別なプレースホルダーと構文をサポートしています。
|
||||
|
||||
---
|
||||
|
||||
@@ -161,11 +161,11 @@ with the following content: $3
|
||||
|
||||
---
|
||||
|
||||
### Shell 出力
|
||||
### シェル出力
|
||||
|
||||
_!`command`_ を使用して、[bash command](/docs/tui#bash-commands) の出力をプロンプトに挿入します。
|
||||
_!`command`_ を使用して、[bash コマンド](/docs/tui#bash-commands) の出力をプロンプトに挿入します。
|
||||
|
||||
たとえば、テスト カバレッジを分析するカスタム コマンドを作成するには、次のようにします。
|
||||
たとえば、テストカバレッジを分析するカスタムコマンドを作成するには、次のようにします。
|
||||
|
||||
```md title=".opencode/commands/analyze-coverage.md"
|
||||
---
|
||||
@@ -191,7 +191,7 @@ Recent git commits:
|
||||
Review these changes and suggest any improvements.
|
||||
```
|
||||
|
||||
コマンドはプロジェクトのルート ディレクトリで実行され、その出力はプロンプトの一部になります。
|
||||
コマンドはプロジェクトのルートディレクトリで実行され、その出力はプロンプトの一部になります。
|
||||
|
||||
---
|
||||
|
||||
@@ -214,7 +214,7 @@ Check for performance issues and suggest improvements.
|
||||
|
||||
## オプション
|
||||
|
||||
構成オプションを詳しく見てみましょう。
|
||||
設定オプションを詳しく見てみましょう。
|
||||
|
||||
---
|
||||
|
||||
@@ -232,7 +232,7 @@ Check for performance issues and suggest improvements.
|
||||
}
|
||||
```
|
||||
|
||||
これは**必須**の構成オプションです。
|
||||
これは**必須**の設定オプションです。
|
||||
|
||||
---
|
||||
|
||||
@@ -270,14 +270,14 @@ Check for performance issues and suggest improvements.
|
||||
}
|
||||
```
|
||||
|
||||
これは**オプション**の構成オプションです。指定しない場合、デフォルトで現在のエージェントが使用されます。
|
||||
これは**オプション**の設定オプションです。指定しない場合、デフォルトで現在のエージェントが使用されます。
|
||||
|
||||
---
|
||||
|
||||
### サブタスク
|
||||
|
||||
`subtask` ブール値を使用して、コマンドが [subagent](/docs/agents/#subagents) 呼び出しを強制的にトリガーします。
|
||||
これは、コマンドがプライマリ コンテキストを汚染せず、エージェントがサブエージェントとして動作するように**強制**する場合に便利です。
|
||||
これは、コマンドがプライマリコンテキストを汚染せず、エージェントがサブエージェントとして動作するように**強制**する場合に便利です。
|
||||
[agent](/docs/agents) 設定で `mode` が `primary` に設定されている場合でも。
|
||||
|
||||
```json title="opencode.json"
|
||||
@@ -290,13 +290,13 @@ Check for performance issues and suggest improvements.
|
||||
}
|
||||
```
|
||||
|
||||
これは**オプション**の構成オプションです。
|
||||
これは**オプション**の設定オプションです。
|
||||
|
||||
---
|
||||
|
||||
### モデル
|
||||
|
||||
`model` 設定を使用して、このコマンドのデフォルト モデルをオーバーライドします。
|
||||
`model` 設定を使用して、このコマンドのデフォルトモデルをオーバーライドします。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -308,15 +308,15 @@ Check for performance issues and suggest improvements.
|
||||
}
|
||||
```
|
||||
|
||||
これは**オプション**の構成オプションです。
|
||||
これは**オプション**の設定オプションです。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
opencode には、`/init`、`/undo`、`/redo`、`/share`、`/help` などのいくつかの組み込みコマンドが含まれています。 [詳細はこちら](/docs/tui#commands)。
|
||||
OpenCode には、`/init`、`/undo`、`/redo`、`/share`、`/help` などのいくつかの組み込みコマンドが含まれています。 [詳細はこちら](/docs/tui#commands)。
|
||||
|
||||
:::note
|
||||
カスタム コマンドは組み込みコマンドをオーバーライドできます。
|
||||
カスタムコマンドは組み込みコマンドをオーバーライドできます。
|
||||
:::
|
||||
同じ名前のカスタム コマンドを定義すると、組み込みコマンドがオーバーライドされます。
|
||||
同じ名前のカスタムコマンドを定義すると、組み込みコマンドがオーバーライドされます。
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: 構成
|
||||
description: OpenCode JSON 構成を使用します。
|
||||
title: 設定
|
||||
description: OpenCode JSON 設定を使用します。
|
||||
---
|
||||
|
||||
JSON 構成ファイルを使用して OpenCode を構成できます。
|
||||
JSON 設定ファイルを使用して OpenCode を構成できます。
|
||||
|
||||
---
|
||||
|
||||
@@ -23,15 +23,14 @@ OpenCode は、**JSON** と **JSONC** (コメント付きの JSON) 形式の両
|
||||
|
||||
---
|
||||
|
||||
## 所在地
|
||||
## ファイルの場所
|
||||
|
||||
構成をいくつかの異なる場所に配置できます。
|
||||
優先順位が違う。
|
||||
設定をいくつかの異なる場所に配置できます。
|
||||
優先順位が異なります。
|
||||
|
||||
:::note
|
||||
構成ファイルは置き換えられるのではなく、**マージ**されます。
|
||||
設定ファイルは置き換えられるのではなく、**マージ**されます。設定は、次の構成場所から結合されます。後続の設定は、競合するキーに対してのみ以前の設定をオーバーライドします。すべての設定の競合しない設定は保持されます。
|
||||
:::
|
||||
構成ファイルは、置き換えられるのではなく、マージされます。設定は、次の構成場所から結合されます。後続の構成は、競合するキーに対してのみ以前の構成をオーバーライドします。すべての構成の競合しない設定は保持されます。
|
||||
|
||||
たとえば、グローバル設定で `theme: "opencode"` と `autoupdate: true` が設定され、プロジェクト設定で `model: "anthropic/claude-sonnet-4-5"` が設定されている場合、最終的な設定には 3 つの設定がすべて含まれます。
|
||||
|
||||
@@ -39,16 +38,16 @@ OpenCode は、**JSON** と **JSONC** (コメント付きの JSON) 形式の両
|
||||
|
||||
### 優先順位
|
||||
|
||||
構成ソースは次の順序でロードされます (後のソースは前のソースをオーバーライドします)。
|
||||
設定ソースは次の順序でロードされます (後のソースは前のソースをオーバーライドします)。
|
||||
|
||||
1. **リモート設定** (`.well-known/opencode` から) - 組織のデフォルト
|
||||
2. **グローバル設定** (`~/.config/opencode/opencode.json`) - ユーザー設定
|
||||
3. **カスタム構成** (`OPENCODE_CONFIG` 環境変数) - カスタム オーバーライド
|
||||
4. **プロジェクト構成** (プロジェクト内の`opencode.json`) - プロジェクト固有の設定
|
||||
3. **カスタム設定** (`OPENCODE_CONFIG` 環境変数) - カスタムオーバーライド
|
||||
4. **プロジェクト設定** (プロジェクト内の `opencode.json`) - プロジェクト固有の設定
|
||||
5. **`.opencode` ディレクトリ** - エージェント、コマンド、プラグイン
|
||||
6. **インライン構成** (`OPENCODE_CONFIG_CONTENT` 環境変数) - ランタイムオーバーライド
|
||||
6. **インライン設定** (`OPENCODE_CONFIG_CONTENT` 環境変数) - ランタイムオーバーライド
|
||||
|
||||
つまり、プロジェクト構成はグローバルのデフォルトをオーバーライドでき、グローバル構成はリモート組織のデフォルトをオーバーライドできます。
|
||||
つまり、プロジェクト設定はグローバルのデフォルトをオーバーライドでき、グローバル設定はリモート組織のデフォルトをオーバーライドできます。
|
||||
|
||||
:::note
|
||||
`.opencode` および `~/.config/opencode` ディレクトリでは、サブディレクトリに **複数名** が使用されています: `agents/`、`commands/`、`modes/`、`plugins/`、`skills/`、`tools/`、および `themes/`。下位互換性のために、単数形の名前 (`agent/` など) もサポートされています。
|
||||
@@ -58,9 +57,9 @@ OpenCode は、**JSON** と **JSONC** (コメント付きの JSON) 形式の両
|
||||
|
||||
### リモート
|
||||
|
||||
組織は、`.well-known/opencode` エンドポイント経由でデフォルト構成を提供できます。これは、それをサポートするプロバイダーで認証するときに自動的に取得されます。
|
||||
組織は、`.well-known/opencode` エンドポイント経由でデフォルト設定を提供できます。これは、それをサポートするプロバイダーで認証するときに自動的に取得されます。
|
||||
|
||||
リモート設定が最初にロードされ、基本層として機能します。他のすべての構成ソース (グローバル、プロジェクト) は、これらのデフォルトをオーバーライドできます。
|
||||
リモート設定が最初にロードされ、基本層として機能します。他のすべての設定ソース (グローバル、プロジェクト) は、これらのデフォルトをオーバーライドできます。
|
||||
|
||||
たとえば、組織がデフォルトで無効になっている MCP サーバーを提供している場合:
|
||||
|
||||
@@ -94,7 +93,7 @@ OpenCode は、**JSON** と **JSONC** (コメント付きの JSON) 形式の両
|
||||
|
||||
### グローバル
|
||||
|
||||
グローバル OpenCode 構成を `~/.config/opencode/opencode.json` に配置します。テーマ、プロバイダー、キーバインドなどのユーザー全体の設定にはグローバル設定を使用します。
|
||||
グローバル OpenCode 設定を `~/.config/opencode/opencode.json` に配置します。テーマ、プロバイダー、キーバインドなどのユーザー全体の設定にはグローバル設定を使用します。
|
||||
|
||||
グローバル設定はリモート組織のデフォルトをオーバーライドします。
|
||||
|
||||
@@ -102,33 +101,34 @@ OpenCode は、**JSON** と **JSONC** (コメント付きの JSON) 形式の両
|
||||
|
||||
### プロジェクトごと
|
||||
|
||||
プロジェクトのルートに `opencode.json` を追加します。プロジェクト構成は、標準構成ファイルの中で最も高い優先順位を持ち、グローバル構成とリモート構成の両方をオーバーライドします。
|
||||
プロジェクトのルートに `opencode.json` を追加します。プロジェクト設定は、標準設定ファイルの中で最も高い優先順位を持ち、グローバル設定とリモート設定の両方をオーバーライドします。
|
||||
|
||||
:::tip
|
||||
プロジェクト固有の構成をプロジェクトのルートに配置します。
|
||||
プロジェクト固有の設定をプロジェクトのルートに配置します。
|
||||
:::
|
||||
OpenCode が起動すると、現在のディレクトリで構成ファイルを検索するか、最も近い Git ディレクトリまで移動します。
|
||||
|
||||
これは Git に安全にチェックインでき、グローバル スキーマと同じスキーマを使用します。
|
||||
OpenCode が起動すると、現在のディレクトリで設定ファイルを検索するか、最も近い Git ディレクトリまで移動します。
|
||||
|
||||
これは Git に安全にチェックインでき、グローバルスキーマと同じスキーマを使用します。
|
||||
|
||||
---
|
||||
|
||||
### カスタムパス
|
||||
|
||||
`OPENCODE_CONFIG` 環境変数を使用してカスタム構成ファイルのパスを指定します。
|
||||
`OPENCODE_CONFIG` 環境変数を使用してカスタム設定ファイルのパスを指定します。
|
||||
|
||||
```bash
|
||||
export OPENCODE_CONFIG=/path/to/my/custom-config.json
|
||||
opencode run "Hello world"
|
||||
```
|
||||
|
||||
カスタム構成は、優先順位でグローバル構成とプロジェクト構成の間にロードされます。
|
||||
カスタム設定は、優先順位でグローバル設定とプロジェクト設定の間にロードされます。
|
||||
|
||||
---
|
||||
|
||||
### カスタムディレクトリ
|
||||
|
||||
`OPENCODE_CONFIG_DIR` を使用してカスタム構成ディレクトリを指定します。
|
||||
`OPENCODE_CONFIG_DIR` を使用してカスタム設定ディレクトリを指定します。
|
||||
環境変数。このディレクトリでは、エージェント、コマンド、
|
||||
モードとプラグインは標準の `.opencode` ディレクトリと同様であり、次のようにする必要があります。
|
||||
同じ構造に従います。
|
||||
@@ -138,13 +138,13 @@ export OPENCODE_CONFIG_DIR=/path/to/my/config-directory
|
||||
opencode run "Hello world"
|
||||
```
|
||||
|
||||
カスタム ディレクトリはグローバル config ディレクトリと `.opencode` ディレクトリの後にロードされるため、それらの設定を**オーバーライド**できます。
|
||||
カスタムディレクトリはグローバル config ディレクトリと `.opencode` ディレクトリの後にロードされるため、それらの設定を**オーバーライド**できます。
|
||||
|
||||
---
|
||||
|
||||
## スキーマ
|
||||
|
||||
構成ファイルには、[**`opencode.ai/config.json`**](https://opencode.ai/config.json).
|
||||
設定ファイルには、[**`opencode.ai/config.json`**](https://opencode.ai/config.json) を使用します。
|
||||
|
||||
エディターはスキーマに基づいて検証し、オートコンプリートできる必要があります。
|
||||
|
||||
@@ -169,15 +169,15 @@ opencode run "Hello world"
|
||||
|
||||
利用可能なオプション:
|
||||
|
||||
- `scroll_acceleration.enabled` - macOS スタイルのスクロール アクセラレーションを有効にします。 **`scroll_speed` よりも優先されます。**
|
||||
- `scroll_acceleration.enabled` - macOS スタイルのスクロールアクセラレーションを有効にします。 **`scroll_speed` よりも優先されます。**
|
||||
- `scroll_speed` - カスタムのスクロール速度乗数 (デフォルト: `3`、最小: `1`)。 `scroll_acceleration.enabled` が `true` の場合は無視されます。
|
||||
- `diff_style` - 差分レンダリングを制御します。 `"auto"` はterminal の幅に適応し、`"stacked"` は常に 1 列を表示します。
|
||||
- `diff_style` - 差分レンダリングを制御します。 `"auto"` はターミナルの幅に適応し、`"stacked"` は常に 1 列を表示します。
|
||||
|
||||
[TUI の使用方法の詳細については、こちら](/docs/tui) をご覧ください。
|
||||
|
||||
---
|
||||
|
||||
### サーバ
|
||||
### サーバー
|
||||
|
||||
`opencode serve` オプションを使用して、`opencode web` および `server` コマンドのサーバー設定を構成できます。
|
||||
|
||||
@@ -199,7 +199,7 @@ opencode run "Hello world"
|
||||
- `port` - リッスンするポート。
|
||||
- `hostname` - リッスンするホスト名。 `mdns` が有効でホスト名が設定されていない場合、デフォルトは `0.0.0.0` になります。
|
||||
- `mdns` - mDNS サービス検出を有効にします。これにより、ネットワーク上の他のデバイスが OpenCode サーバーを検出できるようになります。
|
||||
- `mdnsDomain` - mDNS サービスのカスタム ドメイン名。デフォルトは `opencode.local` です。同じネットワーク上で複数のインスタンスを実行する場合に便利です。
|
||||
- `mdnsDomain` - mDNS サービスのカスタムドメイン名。デフォルトは `opencode.local` です。同じネットワーク上で複数のインスタンスを実行する場合に便利です。
|
||||
- `cors` - ブラウザベースのクライアントから HTTP サーバーを使用するときに CORS を許可する追加のオリジン。値は完全なオリジン (スキーム + ホスト + オプションのポート) である必要があります (例: `https://app.example.com`)。
|
||||
|
||||
[サーバーの詳細については、こちら](/docs/server)をご覧ください。
|
||||
@@ -226,7 +226,7 @@ LLM が使用できるツールは、`tools` オプションを通じて管理
|
||||
|
||||
### モデル
|
||||
|
||||
`provider`、`model`、および `small_model` オプションを使用して、OpenCode 構成で使用するプロバイダーとモデルを構成できます。
|
||||
`provider`、`model`、および `small_model` オプションを使用して、OpenCode 設定で使用するプロバイダーとモデルを構成できます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -237,9 +237,9 @@ LLM が使用できるツールは、`tools` オプションを通じて管理
|
||||
}
|
||||
```
|
||||
|
||||
`small_model` オプションは、タイトル生成などの軽量タスク用に別のモデルを構成します。デフォルトでは、OpenCode は、プロバイダーから安価なモデルが入手可能な場合は、より安価なモデルを使用しようとします。そうでない場合は、メイン モデルにフォールバックします。
|
||||
`small_model` オプションは、タイトル生成などの軽量タスク用に別のモデルを構成します。デフォルトでは、OpenCode は、プロバイダーから安価なモデルが入手可能な場合は、より安価なモデルを使用しようとします。そうでない場合は、メインモデルにフォールバックします。
|
||||
|
||||
プロバイダー オプションには、`timeout` および `setCacheKey` を含めることができます。
|
||||
プロバイダーオプションには、`timeout` および `setCacheKey` を含めることができます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -256,7 +256,7 @@ LLM が使用できるツールは、`tools` オプションを通じて管理
|
||||
```
|
||||
|
||||
- `timeout` - リクエストのタイムアウト (ミリ秒単位) (デフォルト: 300000)。無効にするには、`false` に設定します。
|
||||
- `setCacheKey` - 指定されたプロバイダーに対してキャッシュ キーが常に設定されていることを確認します。
|
||||
- `setCacheKey` - 指定されたプロバイダーに対してキャッシュキーが常に設定されていることを確認します。
|
||||
|
||||
[ローカルモデル](/docs/models#local). [詳細はこちら](/docs/models)。
|
||||
|
||||
@@ -268,7 +268,7 @@ LLM が使用できるツールは、`tools` オプションを通じて管理
|
||||
|
||||
##### Amazon Bedrock
|
||||
|
||||
Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
Amazon Bedrock は、AWS 固有の設定をサポートしています。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -287,19 +287,19 @@ Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
|
||||
- `region` - Bedrock の AWS リージョン (デフォルトは `AWS_REGION` 環境変数または `us-east-1`)
|
||||
- `profile` - `~/.aws/credentials` からの AWS 名前付きプロファイル (デフォルトは `AWS_PROFILE` 環境変数)
|
||||
- `endpoint` - VPC エンドポイントのカスタム エンドポイント URL。これは、AWS 固有の用語を使用した汎用 `baseURL` オプションのエイリアスです。両方を指定した場合は、`endpoint` が優先されます。
|
||||
- `endpoint` - VPC エンドポイントのカスタムエンドポイント URL。これは、AWS 固有の用語を使用した汎用 `baseURL` オプションのエイリアスです。両方を指定した場合は、`endpoint` が優先されます。
|
||||
|
||||
:::note
|
||||
ベアラー トークン (`AWS_BEARER_TOKEN_BEDROCK` または `/connect`) は、プロファイルベースの認証より優先されます。詳細については、「認証優先順位](/docs/providers#authentication-precedence)」を参照してください。
|
||||
:::
|
||||
|
||||
[Amazon Bedrock 構成 ](/docs/providers#amazon-bedrock) の詳細をご覧ください。
|
||||
[Amazon Bedrock 設定 ](/docs/providers#amazon-bedrock) の詳細をご覧ください。
|
||||
|
||||
---
|
||||
|
||||
### テーマ
|
||||
|
||||
`theme` オプションを使用して、OpenCode 構成で使用するテーマを構成できます。
|
||||
`theme` オプションを使用して、OpenCode 設定で使用するテーマを構成できます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -334,7 +334,7 @@ Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
}
|
||||
```
|
||||
|
||||
`~/.config/opencode/agents/` または `.opencode/agents/` のMarkdown ファイルを使用してエージェントを定義することもできます。 [詳細はこちら](/docs/agents)。
|
||||
`~/.config/opencode/agents/` または `.opencode/agents/` の Markdown ファイルを使用してエージェントを定義することもできます。 [詳細はこちら](/docs/agents)。
|
||||
|
||||
---
|
||||
|
||||
@@ -349,9 +349,9 @@ Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
}
|
||||
```
|
||||
|
||||
デフォルトのエージェントはプライマリ エージェントである必要があります (サブエージェントではありません)。これは、`"build"` や `"plan"` のような組み込みエージェント、または定義したカスタム Agent](/docs/agents) にすることができます。指定されたエージェントが存在しないか、サブエージェントである場合、OpenCode は警告とともに `"build"` にフォールバックします。
|
||||
デフォルトのエージェントはプライマリエージェントである必要があります (サブエージェントではありません)。これは、`"build"` や `"plan"` のような組み込みエージェント、または定義した[カスタムエージェント](/docs/agents) にすることができます。指定されたエージェントが存在しないか、サブエージェントである場合、OpenCode は警告とともに `"build"` にフォールバックします。
|
||||
|
||||
この設定は、TUI、CLI (`opencode run`)、デスクトップ アプリ、および GitHub Action のすべてのインターフェイスに適用されます。
|
||||
この設定は、TUI、CLI (`opencode run`)、デスクトップアプリ、および GitHub Action のすべてのインターフェイスに適用されます。
|
||||
|
||||
---
|
||||
|
||||
@@ -378,7 +378,7 @@ Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
|
||||
### コマンド
|
||||
|
||||
`command` オプションを使用して、反復タスク用のカスタム コマンドを構成できます。
|
||||
`command` オプションを使用して、反復タスク用のカスタムコマンドを構成できます。
|
||||
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
@@ -398,7 +398,7 @@ Amazon Bedrock は、AWS 固有の構成をサポートしています。
|
||||
}
|
||||
```
|
||||
|
||||
`~/.config/opencode/commands/` または `.opencode/commands/` のMarkdown ファイルを使用してコマンドを定義することもできます。 [詳細はこちら](/docs/commands)。
|
||||
`~/.config/opencode/commands/` または `.opencode/commands/` の Markdown ファイルを使用してコマンドを定義することもできます。 [詳細はこちら](/docs/commands)。
|
||||
|
||||
---
|
||||
|
||||
@@ -429,13 +429,13 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
```
|
||||
|
||||
更新は必要ないが、新しいバージョンが利用可能になったときに通知を受け取りたい場合は、`autoupdate` を `"notify"` に設定します。
|
||||
これは、Homebrew などのパッケージ マネージャーを使用してインストールされていない場合にのみ機能することに注意してください。
|
||||
これは、Homebrew などのパッケージマネージャーを使用してインストールされていない場合にのみ機能することに注意してください。
|
||||
|
||||
---
|
||||
|
||||
### フォーマッタ
|
||||
|
||||
`formatter` オプションを使用してコード フォーマッタを設定できます。
|
||||
`formatter` オプションを使用してコードフォーマッタを設定できます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -500,7 +500,7 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
|
||||
### ウォッチャー
|
||||
|
||||
`watcher` オプションを使用して、ファイル ウォッチャーの無視パターンを構成できます。
|
||||
`watcher` オプションを使用して、ファイルウォッチャーの無視パターンを構成できます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -532,9 +532,9 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
|
||||
### プラグイン
|
||||
|
||||
[Plugins](/docs/plugins) は、カスタム ツール、フック、統合を使用して OpenCode を拡張します。
|
||||
[Plugins](/docs/plugins) は、カスタムツール、フック、統合を使用して OpenCode を拡張します。
|
||||
|
||||
プラグインファイルを`.opencode/plugins/`または`~/.config/opencode/plugins/`に配置します。 `plugin` オプションを使用して npm からプラグインをロードすることもできます。
|
||||
プラグインファイルを `.opencode/plugins/` または `~/.config/opencode/plugins/` に配置します。 `plugin` オプションを使用して npm からプラグインをロードすることもできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -547,9 +547,9 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
|
||||
---
|
||||
|
||||
### 説明書
|
||||
### 指示
|
||||
|
||||
`instructions` オプションを使用して、使用しているモデルの命令を構成できます。
|
||||
`instructions` オプションを使用して、使用しているモデルの指示を構成できます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -558,8 +558,7 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
}
|
||||
```
|
||||
|
||||
これは、命令ファイルへのパスとグロブ パターンの配列を受け取ります。 [もっと詳しく知る
|
||||
ルールについてはこちら](/docs/rules)。
|
||||
これは、指示ファイルへのパスとグロブパターンの配列を受け取ります。 [ルールについて詳しくはこちら](/docs/rules)。
|
||||
|
||||
---
|
||||
|
||||
@@ -624,7 +623,7 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
|
||||
## 変数
|
||||
|
||||
構成ファイル内で変数置換を使用して、環境変数とファイルの内容を参照できます。
|
||||
設定ファイル内で変数置換を使用して、環境変数とファイルの内容を参照できます。
|
||||
|
||||
---
|
||||
|
||||
@@ -669,7 +668,7 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
}
|
||||
```
|
||||
|
||||
ファイル パスは次のとおりです。
|
||||
ファイルパスは次のとおりです。
|
||||
|
||||
- 設定ファイルのディレクトリからの相対パス
|
||||
- または、`/` または `~` で始まる絶対パス
|
||||
@@ -677,5 +676,5 @@ OpenCode は起動時に新しいアップデートを自動的にダウンロ
|
||||
これらは次の場合に役立ちます。
|
||||
|
||||
- API キーなどの機密データを別のファイルに保存します。
|
||||
- 構成を乱雑にすることなく、大きな命令ファイルを含めることができます。
|
||||
- 複数の構成ファイル間で共通の構成スニペットを共有します。
|
||||
- 設定を乱雑にすることなく、大きな指示ファイルを含めることができます。
|
||||
- 複数の設定ファイル間で共通の設定スニペットを共有します。
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: カスタムツール
|
||||
description: LLM がopencodeで呼び出すことができるツールを作成します。
|
||||
description: LLM が OpenCode で呼び出すことができるツールを作成します。
|
||||
---
|
||||
|
||||
カスタム ツールは、会話中に LLM が呼び出すことができる作成した関数です。これらは、opencode の[組み込みツール](/docs/tools) (`read`、`write`、`bash` など) と連携して動作します。
|
||||
カスタムツールは、会話中に LLM が呼び出すことができる作成した関数です。これらは、OpenCode の[組み込みツール](/docs/tools) (`read`、`write`、`bash` など) と連携して動作します。
|
||||
|
||||
---
|
||||
|
||||
@@ -13,7 +13,7 @@ description: LLM がopencodeで呼び出すことができるツールを作成
|
||||
|
||||
---
|
||||
|
||||
### 位置
|
||||
### 場所
|
||||
|
||||
それらは次のように定義できます。
|
||||
|
||||
@@ -24,7 +24,7 @@ description: LLM がopencodeで呼び出すことができるツールを作成
|
||||
|
||||
### 構造
|
||||
|
||||
ツールを作成する最も簡単な方法は、タイプ セーフティと検証を提供する `tool()` ヘルパーを使用することです。
|
||||
ツールを作成する最も簡単な方法は、型安全性と検証を提供する `tool()` ヘルパーを使用することです。
|
||||
|
||||
```ts title=".opencode/tools/database.ts" {1}
|
||||
import { tool } from "@opencode-ai/plugin"
|
||||
@@ -89,7 +89,7 @@ args: {
|
||||
}
|
||||
```
|
||||
|
||||
[Zod](https://zod.dev) を直接インポートしてプレーン オブジェクトを返すこともできます。
|
||||
[Zod](https://zod.dev) を直接インポートしてプレーンオブジェクトを返すこともできます。
|
||||
|
||||
```ts {6}
|
||||
import { z } from "zod"
|
||||
@@ -108,7 +108,7 @@ export default {
|
||||
|
||||
---
|
||||
|
||||
### Context
|
||||
### コンテキスト
|
||||
|
||||
ツールは現在のセッションに関するコンテキストを受け取ります。
|
||||
|
||||
@@ -126,14 +126,14 @@ export default tool({
|
||||
})
|
||||
```
|
||||
|
||||
セッション作業ディレクトリには `context.directory` を使用します。
|
||||
git ワークツリー ルートには `context.worktree` を使用します。
|
||||
セッションの作業ディレクトリには `context.directory` を使用します。
|
||||
git ワークツリーのルートには `context.worktree` を使用します。
|
||||
|
||||
---
|
||||
|
||||
## 例
|
||||
|
||||
### Python でツールを作成する
|
||||
### Python でのツールの作成
|
||||
|
||||
ツールは任意の言語で作成できます。以下は、Python を使用して 2 つの数値を加算する例です。
|
||||
|
||||
|
||||
@@ -3,10 +3,10 @@ title: エコシステム
|
||||
description: OpenCode で構築されたプロジェクトと統合。
|
||||
---
|
||||
|
||||
OpenCode に基づいて構築されたコミュニティ プロジェクトのコレクション。
|
||||
OpenCode に基づいて構築されたコミュニティプロジェクトのコレクション。
|
||||
|
||||
:::note
|
||||
OpenCode 関連プロジェクトをこのリストに追加したいですか? PRを送信してください。
|
||||
OpenCode 関連プロジェクトをこのリストに追加したいですか? PR を送信してください。
|
||||
:::
|
||||
[awesome-opencode](https://github.com/awesome-opencode/awesome-opencode) および [opencode.cafe](https://opencode.cafe) もチェックしてください。
|
||||
|
||||
@@ -14,38 +14,38 @@ OpenCode 関連プロジェクトをこのリストに追加したいですか?
|
||||
|
||||
## プラグイン
|
||||
|
||||
| 名前 | 説明 |
|
||||
| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
|
||||
| [opencode-daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) | git sync とライブ プレビューを使用して、隔離された Daytona サンドボックスで OpenCode セッションを自動的に実行します。 |
|
||||
| [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) | リクエストのグループ化のために Helicone セッション ヘッダーを自動的に挿入する |
|
||||
| [opencode-type-inject](https://github.com/nick-vi/opencode-type-inject) | ルックアップ ツールを使用して TypeScript/Svelte 型をファイル読み取りに自動挿入する |
|
||||
| [opencode-openai-codex-auth](https://github.com/numman-ali/opencode-openai-codex-auth) | API クレジットの代わりに ChatGPT Plus/Pro サブスクリプションを使用する |
|
||||
| [opencode-gemini-auth](https://github.com/jenslys/opencode-gemini-auth) | API 課金の代わりに既存の Gemini プランを使用する |
|
||||
| [opencode-antigravity-auth](https://github.com/NoeFabris/opencode-antigravity-auth) | API 課金の代わりに Antigravity の無料モデルを使用する |
|
||||
| [opencode-devcontainers](https://github.com/athal7/opencode-devcontainers) | 浅いクローンと自動割り当てポートを使用したマルチブランチ devcontainer の分離 |
|
||||
| [opencode-google-antigravity-auth](https://github.com/shekohex/opencode-google-antigravity-auth) | Google Antigravity OAuth プラグイン、Google 検索のサポート、およびより堅牢な API 処理 |
|
||||
| [opencode-dynamic-context-pruning](https://github.com/Tarquinen/opencode-dynamic-context-pruning) | 古いツールの出力を削除してトークンの使用を最適化する |
|
||||
| [opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited.git) | Google ベースのスタイルでサポートされているプロバイダーにネイティブ Web 検索サポートを追加 |
|
||||
| [opencode-pty](https://github.com/shekohex/opencode-pty.git) | AI エージェントが PTY でバックグラウンド プロセスを実行し、インタラクティブな入力を送信できるようにします。 |
|
||||
| [opencode-shell-strategy](https://github.com/JRedeker/opencode-shell-strategy) | 非対話型shell コマンドの手順 - TTY に依存する操作によるハングの防止 |
|
||||
| [opencode-wakatime](https://github.com/angristan/opencode-wakatime) | wakatime で OpenCode の使用状況を追跡する |
|
||||
| [opencode-md-table-formatter](https://github.com/franlol/opencode-md-table-formatter/tree/main) | LLM によって生成されたMarkdown テーブルをクリーンアップする |
|
||||
| [opencode-morph-fast-apply](https://github.com/JRedeker/opencode-morph-fast-apply) | Morph Fast apply API と遅延編集マーカーにより 10 倍高速なコード編集 |
|
||||
| [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) | バックグラウンド エージェント、事前構築された LSP/AST/MCP ツール、厳選されたエージェント、Claude Code 互換 |
|
||||
| [opencode-notificator](https://github.com/panta82/opencode-notificator) | OpenCode セッションのデスクトップ通知とサウンド アラート |
|
||||
| [opencode-notifier](https://github.com/mohak34/opencode-notifier) | 許可、完了、エラー イベントのデスクトップ通知とサウンド アラート |
|
||||
| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | OpenCode コンテキストに基づいた AI による自動 Zellij セッション命名 |
|
||||
| [opencode-skillful](https://github.com/zenobi-us/opencode-skillful) | OpenCode エージェントがスキルの検出と挿入を使用してオンデマンドでプロンプトを遅延ロードできるようにする |
|
||||
| [opencode-supermemory](https://github.com/supermemoryai/opencode-supermemory) | スーパーメモリを使用したセッション間での永続メモリ |
|
||||
| [@plannotator/opencode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | 視覚的な注釈とプライベート/オフライン共有による対話型の計画レビュー |
|
||||
| [@openspoon/subtask2](https://github.com/spoons-and-mirrors/subtask2) | opencode/コマンドをきめ細かいフロー制御を備えた強力なオーケストレーション システムに拡張 |
|
||||
| [opencode-scheduler](https://github.com/different-ai/opencode-scheduler) | launchd (Mac) または systemd (Linux) を cron 構文で使用して、定期的なジョブをスケジュールする |
|
||||
| [micode](https://github.com/vtemian/micode) | 構造化されたブレインストーミング → 計画 → セッション継続性のあるワークフローの実装 |
|
||||
| [octto](https://github.com/vtemian/octto) | 複数の質問フォームを使用した AI ブレインストーミング用のインタラクティブなブラウザ UI |
|
||||
| [opencode-background-agents](https://github.com/kdcokenny/opencode-background-agents) | 非同期委任とコンテキスト永続性を備えた Claude Code スタイルのバックグラウンド エージェント |
|
||||
| [opencode-notify](https://github.com/kdcokenny/opencode-notify) | OpenCode のネイティブ OS 通知 – タスクがいつ完了したかを知る |
|
||||
| [opencode-workspace](https://github.com/kdcokenny/opencode-workspace) | バンドルされたマルチエージェント オーケストレーション ハーネス – 16 コンポーネント、1 回のインストール |
|
||||
| [opencode-worktree](https://github.com/kdcokenny/opencode-worktree) | OpenCode 用のゼロフリクション Git ワークツリー |
|
||||
| 名前 | 説明 |
|
||||
| --------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
|
||||
| [opencode-daytona](https://github.com/jamesmurdza/daytona/blob/main/guides/typescript/opencode/README.md) | git sync とライブプレビューを使用して、隔離された Daytona サンドボックスで OpenCode セッションを自動的に実行します。 |
|
||||
| [opencode-helicone-session](https://github.com/H2Shami/opencode-helicone-session) | リクエストのグループ化のために Helicone セッションヘッダーを自動的に挿入する |
|
||||
| [opencode-type-inject](https://github.com/nick-vi/opencode-type-inject) | ルックアップツールを使用して TypeScript/Svelte 型をファイル読み取りに自動挿入する |
|
||||
| [opencode-openai-codex-auth](https://github.com/numman-ali/opencode-openai-codex-auth) | API クレジットの代わりに ChatGPT Plus/Pro サブスクリプションを使用する |
|
||||
| [opencode-gemini-auth](https://github.com/jenslys/opencode-gemini-auth) | API 課金の代わりに既存の Gemini プランを使用する |
|
||||
| [opencode-antigravity-auth](https://github.com/NoeFabris/opencode-antigravity-auth) | API 課金の代わりに Antigravity の無料モデルを使用する |
|
||||
| [opencode-devcontainers](https://github.com/athal7/opencode-devcontainers) | 浅いクローンと自動割り当てポートを使用したマルチブランチ devcontainer の分離 |
|
||||
| [opencode-google-antigravity-auth](https://github.com/shekohex/opencode-google-antigravity-auth) | Google Antigravity OAuth プラグイン、Google 検索のサポート、およびより堅牢な API 処理 |
|
||||
| [opencode-dynamic-context-pruning](https://github.com/Tarquinen/opencode-dynamic-context-pruning) | 古いツールの出力を削除してトークンの使用を最適化する |
|
||||
| [opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited.git) | Google ベースのスタイルでサポートされているプロバイダーにネイティブ Web 検索サポートを追加 |
|
||||
| [opencode-pty](https://github.com/shekohex/opencode-pty.git) | AI エージェントが PTY でバックグラウンドプロセスを実行し、インタラクティブな入力を送信できるようにします。 |
|
||||
| [opencode-shell-strategy](https://github.com/JRedeker/opencode-shell-strategy) | 非対話型シェルコマンドの手順 - TTY に依存する操作によるハングの防止 |
|
||||
| [opencode-wakatime](https://github.com/angristan/opencode-wakatime) | wakatime で OpenCode の使用状況を追跡する |
|
||||
| [opencode-md-table-formatter](https://github.com/franlol/opencode-md-table-formatter/tree/main) | LLM によって生成された Markdown テーブルをクリーンアップする |
|
||||
| [opencode-morph-fast-apply](https://github.com/JRedeker/opencode-morph-fast-apply) | Morph Fast apply API と遅延編集マーカーにより 10 倍高速なコード編集 |
|
||||
| [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) | バックグラウンドエージェント、事前構築された LSP/AST/MCP ツール、厳選されたエージェント、Claude Code 互換 |
|
||||
| [opencode-notificator](https://github.com/panta82/opencode-notificator) | OpenCode セッションのデスクトップ通知とサウンドアラート |
|
||||
| [opencode-notifier](https://github.com/mohak34/opencode-notifier) | 許可、完了、エラーイベントのデスクトップ通知とサウンドアラート |
|
||||
| [opencode-zellij-namer](https://github.com/24601/opencode-zellij-namer) | OpenCode コンテキストに基づいた AI による自動 Zellij セッション命名 |
|
||||
| [opencode-skillful](https://github.com/zenobi-us/opencode-skillful) | OpenCode エージェントがスキルの検出と挿入を使用してオンデマンドでプロンプトを遅延ロードできるようにする |
|
||||
| [opencode-supermemory](https://github.com/supermemoryai/opencode-supermemory) | スーパーメモリを使用したセッション間での永続メモリ |
|
||||
| [@plannotator/opencode](https://github.com/backnotprop/plannotator/tree/main/apps/opencode-plugin) | 視覚的な注釈とプライベート/オフライン共有による対話型の計画レビュー |
|
||||
| [@openspoon/subtask2](https://github.com/spoons-and-mirrors/subtask2) | OpenCode/コマンドをきめ細かいフロー制御を備えた強力なオーケストレーションシステムに拡張 |
|
||||
| [opencode-scheduler](https://github.com/different-ai/opencode-scheduler) | launchd (Mac) または systemd (Linux) を cron 構文で使用して、定期的なジョブをスケジュールする |
|
||||
| [micode](https://github.com/vtemian/micode) | 構造化されたブレインストーミング → 計画 → セッション継続性のあるワークフローの実装 |
|
||||
| [octto](https://github.com/vtemian/octto) | 複数の質問フォームを使用した AI ブレインストーミング用のインタラクティブなブラウザ UI |
|
||||
| [opencode-background-agents](https://github.com/kdcokenny/opencode-background-agents) | 非同期委任とコンテキスト永続性を備えた Claude Code スタイルのバックグラウンドエージェント |
|
||||
| [opencode-notify](https://github.com/kdcokenny/opencode-notify) | OpenCode のネイティブ OS 通知 – タスクがいつ完了したかを知る |
|
||||
| [opencode-workspace](https://github.com/kdcokenny/opencode-workspace) | バンドルされたマルチエージェントオーケストレーションハーネス – 16 コンポーネント、1 回のインストール |
|
||||
| [opencode-worktree](https://github.com/kdcokenny/opencode-worktree) | OpenCode 用のゼロフリクション Git ワークツリー |
|
||||
|
||||
---
|
||||
|
||||
@@ -57,13 +57,13 @@ OpenCode 関連プロジェクトをこのリストに追加したいですか?
|
||||
| [opencode.nvim](https://github.com/NickvanDyke/opencode.nvim) | API に基づいて構築された、エディター対応プロンプト用の Neovim プラグイン |
|
||||
| [portal](https://github.com/hosenur/portal) | Tailscale/VPN 上の OpenCode 向けモバイルファースト Web UI |
|
||||
| [opencode plugin template](https://github.com/zenobi-us/opencode-plugin-template/) | OpenCode プラグインを構築するためのテンプレート |
|
||||
| [opencode.nvim](https://github.com/sudo-tee/opencode.nvim) | Neovim opencode用フロントエンド - terminal ベースの AI コーディング エージェント |
|
||||
| [opencode.nvim](https://github.com/sudo-tee/opencode.nvim) | Neovim OpenCode用フロントエンド - ターミナルベースの AI コーディングエージェント |
|
||||
| [ai-sdk-provider-opencode-sdk](https://github.com/ben-vargas/ai-sdk-provider-opencode-sdk) | @opencode-ai/sdk 経由で OpenCode を使用するための Vercel AI SDK プロバイダー |
|
||||
| [OpenChamber](https://github.com/btriapitsyn/openchamber) | OpenCode 用の Web/デスクトップ アプリと VS Code 拡張機能 |
|
||||
| [OpenChamber](https://github.com/btriapitsyn/openchamber) | OpenCode 用の Web/デスクトップアプリと VS Code 拡張機能 |
|
||||
| [OpenCode-Obsidian](https://github.com/mtymek/opencode-obsidian) | Obsidian の UI に OpenCode を埋め込む Obsidian プラグイン |
|
||||
| [OpenWork](https://github.com/different-ai/openwork) | OpenCode を利用した、Claude Cowork に代わるオープンソース |
|
||||
| [ocx](https://github.com/kdcokenny/ocx) | 移植可能な独立したプロファイルを備えた OpenCode 拡張機能マネージャー。 |
|
||||
| [CodeNomad](https://github.com/NeuralNomadsAI/CodeNomad) | OpenCode 用のデスクトップ、Web、モバイル、およびリモート クライアント アプリ |
|
||||
| [CodeNomad](https://github.com/NeuralNomadsAI/CodeNomad) | OpenCode 用のデスクトップ、Web、モバイル、およびリモートクライアントアプリ |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
---
|
||||
title: Enterprise
|
||||
title: エンタープライズ
|
||||
description: 組織内で OpenCode を安全に使用します。
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
export const email = `mailto:${config.email}`
|
||||
|
||||
OpenCode Enterprise は、コードとデータがインフラストラクチャから決して流出しないようにしたい組織を対象としています。これは、SSO および内部 AI ゲートウェイと統合された一元化された構成を使用することで実現できます。
|
||||
OpenCode Enterprise は、コードとデータがインフラストラクチャから決して流出しないようにしたい組織を対象としています。これは、SSO および内部 AI ゲートウェイと統合された一元化された設定を使用することで実現できます。
|
||||
|
||||
:::note
|
||||
OpenCode は、コードやコンテキスト データを一切保存しません。
|
||||
OpenCode は、コードやコンテキストデータを一切保存しません。
|
||||
:::
|
||||
OpenCode Enterprise を始めるには:
|
||||
|
||||
@@ -20,16 +20,15 @@ OpenCode Enterprise を始めるには:
|
||||
|
||||
## トライアル
|
||||
|
||||
OpenCode はオープン ソースであり、コードやコンテキスト データは一切保存されないため、開発者は簡単に [開始してトライアルを実行できます。
|
||||
OpenCode はオープンソースであり、コードやコンテキストデータは一切保存されないため、開発者は簡単に開始してトライアルを実行できます。
|
||||
|
||||
---
|
||||
|
||||
### データの取り扱い
|
||||
|
||||
**OpenCode はコードやコンテキスト データを保存しません。** すべての処理はローカルで、または AI プロバイダーへの直接 API 呼び出しを通じて行われます。
|
||||
**OpenCode はコードやコンテキストデータを保存しません。** すべての処理はローカルで、または AI プロバイダーへの直接 API 呼び出しを通じて行われます。
|
||||
|
||||
つまり、信頼できるプロバイダー、または内部プロバイダーを使用している限り、
|
||||
AIゲートウェイならOpenCodeを安全に利用できます。
|
||||
つまり、信頼できるプロバイダー、または内部 AI ゲートウェイを使用している限り、OpenCode を安全に利用できます。
|
||||
|
||||
ここでの唯一の注意点は、オプションの `/share` 機能です。
|
||||
|
||||
@@ -39,7 +38,7 @@ AIゲートウェイならOpenCodeを安全に利用できます。
|
||||
|
||||
ユーザーが `/share` 機能を有効にすると、会話とそれに関連付けられたデータが、opencode.ai でこれらの共有ページをホストするために使用されるサービスに送信されます。
|
||||
|
||||
現在、データは CDN のエッジ ネットワークを通じて提供され、ユーザーの近くのエッジにキャッシュされます。
|
||||
現在、データは CDN のエッジネットワークを通じて提供され、ユーザーの近くのエッジにキャッシュされます。
|
||||
|
||||
試用版ではこれを無効にすることをお勧めします。
|
||||
|
||||
@@ -60,7 +59,7 @@ AIゲートウェイならOpenCodeを安全に利用できます。
|
||||
|
||||
---
|
||||
|
||||
## 価格設定
|
||||
## 価格
|
||||
|
||||
OpenCode Enterprise ではシートごとのモデルを使用します。独自の LLM ゲートウェイをお持ちの場合、使用されたトークンに対して料金はかかりません。価格と実装オプションの詳細については、**<a href={email}>お問い合わせください</a>**。
|
||||
|
||||
@@ -68,31 +67,30 @@ OpenCode Enterprise ではシートごとのモデルを使用します。独自
|
||||
|
||||
## 導入
|
||||
|
||||
トライアルが完了し、OpenCode を使用する準備が整ったら、
|
||||
貴組織の場合は、**<a href={email}>お問い合わせ</a>**してご相談ください。
|
||||
価格設定と実装オプション。
|
||||
トライアルが完了し、OpenCode を組織で使用する準備が整ったら、
|
||||
**<a href={email}>お問い合わせ</a>**して価格設定と実装オプションについてご相談ください。
|
||||
|
||||
---
|
||||
|
||||
### 中央構成
|
||||
### 中央設定
|
||||
|
||||
組織全体で単一の中央構成を使用するように OpenCode をセットアップできます。
|
||||
組織全体で単一の中央設定を使用するように OpenCode をセットアップできます。
|
||||
|
||||
この一元化された構成は SSO プロバイダーと統合でき、すべてのユーザーが内部 AI ゲートウェイのみにアクセスできるようにします。
|
||||
この一元化された設定は SSO プロバイダーと統合でき、すべてのユーザーが内部 AI ゲートウェイのみにアクセスできるようにします。
|
||||
|
||||
---
|
||||
|
||||
### SSOの統合
|
||||
### SSO統合
|
||||
|
||||
中央の構成を通じて、OpenCode は認証のために組織の SSO プロバイダーと統合できます。
|
||||
中央の設定を通じて、OpenCode は認証のために組織の SSO プロバイダーと統合できます。
|
||||
|
||||
これにより、OpenCode は既存の ID 管理システムを通じて内部 AI ゲートウェイの認証情報を取得できるようになります。
|
||||
|
||||
---
|
||||
|
||||
### 社内AIゲートウェイ
|
||||
### 内部AIゲートウェイ
|
||||
|
||||
中央構成を使用すると、内部 AI ゲートウェイのみを使用するように OpenCode を構成することもできます。
|
||||
中央設定を使用すると、内部 AI ゲートウェイのみを使用するように OpenCode を構成することもできます。
|
||||
|
||||
他のすべての AI プロバイダーを無効にして、すべてのリクエストが組織の承認されたインフラストラクチャを通過するようにすることもできます。
|
||||
|
||||
@@ -100,7 +98,7 @@ OpenCode Enterprise ではシートごとのモデルを使用します。独自
|
||||
|
||||
### セルフホスティング
|
||||
|
||||
データが流出しないように共有ページを無効にすることをお勧めします
|
||||
データが流出しないように共有ページを無効にすることをお勧めします。
|
||||
貴社のインフラストラクチャ上でセルフホストすることもお手伝いします。
|
||||
|
||||
これは現在ロードマップに載っています。ご興味がございましたら、**<a href={email}>お知らせください</a>**。
|
||||
@@ -110,41 +108,41 @@ OpenCode Enterprise ではシートごとのモデルを使用します。独自
|
||||
## よくある質問
|
||||
|
||||
<details>
|
||||
<summary>What is OpenCode Enterprise?</summary>
|
||||
<summary>OpenCode Enterpriseとは何ですか?</summary>
|
||||
|
||||
OpenCode Enterprise は、コードとデータがインフラストラクチャから決して流出しないようにしたい組織を対象としています。これは、SSO および内部 AI ゲートウェイと統合された一元化された構成を使用することで実現できます。
|
||||
OpenCode Enterprise は、コードとデータがインフラストラクチャから決して流出しないようにしたい組織を対象としています。これは、SSO および内部 AI ゲートウェイと統合された一元化された設定を使用することで実現できます。
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>How do I get started with OpenCode Enterprise?</summary>
|
||||
<summary>OpenCode Enterpriseを始めるにはどうすればよいですか?</summary>
|
||||
|
||||
まずはチームの内部トライアルから始めてください。 OpenCode はデフォルトでコードやコンテキスト データを保存しないため、簡単に開始できます。
|
||||
まずはチームの内部トライアルから始めてください。 OpenCode はデフォルトでコードやコンテキストデータを保存しないため、簡単に開始できます。
|
||||
|
||||
その後、**<a href={email}>お問い合わせ</a>**いただき、価格や実装オプションについてご相談ください。
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>How does enterprise pricing work?</summary>
|
||||
<summary>エンタープライズの価格設定はどのようになっていますか?</summary>
|
||||
|
||||
エンタープライズ価格はシートごとに提供されます。独自の LLM ゲートウェイをお持ちの場合、使用されたトークンに対して料金はかかりません。詳細については、組織のニーズに基づいたカスタム見積もりをご希望の場合は、**<a href={email}>お問い合わせください</a>**。
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Is my data secure with OpenCode Enterprise?</summary>
|
||||
<summary>OpenCode Enterpriseでデータは安全ですか?</summary>
|
||||
|
||||
はい。 OpenCode はコードやコンテキスト データを保存しません。すべての処理はローカルで、または AI プロバイダーへの直接 API 呼び出しを通じて行われます。一元的な構成と SSO の統合により、データは組織のインフラストラクチャ内で安全に保たれます。
|
||||
はい。 OpenCode はコードやコンテキストデータを保存しません。すべての処理はローカルで、または AI プロバイダーへの直接 API 呼び出しを通じて行われます。一元的な設定と SSO の統合により、データは組織のインフラストラクチャ内で安全に保たれます。
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Can we use our own private npm registry?</summary>
|
||||
<summary>独自のプライベートnpmレジストリを使用できますか?</summary>
|
||||
|
||||
OpenCode は、Bun のネイティブ `.npmrc` ファイル サポートを通じてプライベート npm レジストリをサポートします。組織が JFrog Artifactory、Nexus などのプライベート レジストリを使用している場合は、OpenCode を実行する前に開発者が認証されていることを確認してください。
|
||||
OpenCode は、Bun のネイティブ `.npmrc` ファイルサポートを通じてプライベート npm レジストリをサポートします。組織が JFrog Artifactory、Nexus などのプライベートレジストリを使用している場合は、OpenCode を実行する前に開発者が認証されていることを確認してください。
|
||||
|
||||
プライベート レジストリを使用して認証を設定するには、次の手順を実行します。
|
||||
プライベートレジストリを使用して認証を設定するには、次の手順を実行します。
|
||||
|
||||
```bash
|
||||
npm login --registry=https://your-company.jfrog.io/api/npm/npm-virtual/
|
||||
@@ -154,7 +152,7 @@ npm login --registry=https://your-company.jfrog.io/api/npm/npm-virtual/
|
||||
これを拾ってください。
|
||||
|
||||
:::caution
|
||||
OpenCode を実行する前に、プライベート レジストリにログインする必要があります。
|
||||
OpenCode を実行する前に、プライベートレジストリにログインする必要があります。
|
||||
:::
|
||||
あるいは、.npmrc ファイルを手動で構成することもできます。
|
||||
|
||||
@@ -163,6 +161,6 @@ registry=https://your-company.jfrog.io/api/npm/npm-virtual/
|
||||
//your-company.jfrog.io/api/npm/npm-virtual/:_authToken=${NPM_AUTH_TOKEN}
|
||||
```
|
||||
|
||||
開発者は、エンタープライズ レジストリからパッケージを確実にインストールできるように、OpenCode を実行する前にプライベート レジストリにログインする必要があります。
|
||||
開発者は、エンタープライズレジストリからパッケージを確実にインストールできるように、OpenCode を実行する前にプライベートレジストリにログインする必要があります。
|
||||
|
||||
</details>
|
||||
|
||||
@@ -3,11 +3,11 @@ title: フォーマッタ
|
||||
description: OpenCode は言語固有のフォーマッタを使用します。
|
||||
---
|
||||
|
||||
OpenCode は、言語固有のフォーマッタを使用してファイルを作成または編集した後、ファイルを自動的にフォーマットします。これにより、生成されるコードがプロジェクトのコード スタイルに従っていることが保証されます。
|
||||
OpenCode は、言語固有のフォーマッタを使用してファイルを作成または編集した後、ファイルを自動的にフォーマットします。これにより、生成されるコードがプロジェクトのコードスタイルに従っていることが保証されます。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
OpenCode には、一般的な言語およびフレームワーク用のいくつかの組み込みフォーマッタが付属しています。以下は、フォーマッタ、サポートされているファイル拡張子、および必要なコマンドまたは構成オプションのリストです。
|
||||
|
||||
@@ -47,16 +47,16 @@ OpenCode には、一般的な言語およびフレームワーク用のいく
|
||||
OpenCode がファイルを書き込んだり編集したりすると、次のことが行われます。
|
||||
|
||||
1. 有効なすべてのフォーマッタに対してファイル拡張子をチェックします。
|
||||
2. ファイルに対して適切なフォーマッタ コマンドを実行します。
|
||||
2. ファイルに対して適切なフォーマッタコマンドを実行します。
|
||||
3. 書式の変更を自動的に適用します。
|
||||
|
||||
このプロセスはバックグラウンドで実行されるため、手動の手順を行わなくてもコード スタイルが維持されます。
|
||||
このプロセスはバックグラウンドで実行されるため、手動の手順を行わなくてもコードスタイルが維持されます。
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
OpenCode 構成の `formatter` セクションを通じてフォーマッタをカスタマイズできます。
|
||||
OpenCode 設定の `formatter` セクションを通じてフォーマッタをカスタマイズできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
|
||||
@@ -7,7 +7,7 @@ OpenCode は GitHub ワークフローと統合します。コメントで `/ope
|
||||
|
||||
---
|
||||
|
||||
## 特徴
|
||||
## 機能
|
||||
|
||||
- **問題のトリアージ**: OpenCode に問題を調べて説明してもらいます。
|
||||
- **修正と実装**: OpenCode に問題の修正または機能の実装を依頼します。そして、新しいブランチで動作し、すべての変更を含む PR を送信します。
|
||||
@@ -33,11 +33,11 @@ opencode github install
|
||||
|
||||
1. **GitHub アプリをインストールします**
|
||||
|
||||
[**github.com/apps/opencode-agent**](https://github.com/apps/opencode-agent) にアクセスしてください。ターゲット リポジトリにインストールされていることを確認してください。
|
||||
[**github.com/apps/opencode-agent**](https://github.com/apps/opencode-agent) にアクセスしてください。ターゲットリポジトリにインストールされていることを確認してください。
|
||||
|
||||
2. **ワークフローを追加**
|
||||
|
||||
次のワークフロー ファイルをリポジトリの `.github/workflows/opencode.yml` に追加します。適切な `model` と必要な API キーを `env` に設定してください。
|
||||
次のワークフローファイルをリポジトリの `.github/workflows/opencode.yml` に追加します。適切な `model` と必要な API キーを `env` に設定してください。
|
||||
|
||||
```yml title=".github/workflows/opencode.yml" {24,26}
|
||||
name: opencode
|
||||
@@ -73,19 +73,19 @@ opencode github install
|
||||
# github_token: xxxx
|
||||
```
|
||||
|
||||
3. **API キーをシークレットに保存します**
|
||||
3. **API キーをシークレットに保存する**
|
||||
|
||||
組織またはプロジェクトの**設定**で、左側の**シークレットと変数**を展開し、**アクション**を選択します。そして、必要な API キーを追加します。
|
||||
|
||||
---
|
||||
|
||||
## 構成
|
||||
## 設定
|
||||
|
||||
- `model`: OpenCode で使用するモデル。 `provider/model` の形式をとります。これは**必須**です。
|
||||
- `agent`: 使用するエージェント。プライマリ エージェントである必要があります。見つからない場合は、設定から `default_agent` にフォールバックするか、`"build"` にフォールバックします。
|
||||
- `share`: OpenCode セッションを共有するかどうか。パブリック リポジトリのデフォルトは **true** です。
|
||||
- `prompt`: デフォルトの動作をオーバーライドするためのオプションのカスタム プロンプト。これを使用して、OpenCode がリクエストを処理する方法をカスタマイズします。
|
||||
- `token`: コメントの作成、変更のコミット、プル リクエストのオープンなどの操作を実行するためのオプションの GitHub アクセス トークン。デフォルトでは、OpenCode は OpenCode GitHub アプリからのインストール アクセス トークンを使用するため、コミット、コメント、プル リクエストはアプリからのものとして表示されます。
|
||||
- `agent`: 使用するエージェント。プライマリエージェントである必要があります。見つからない場合は、設定から `default_agent` にフォールバックするか、`"build"` にフォールバックします。
|
||||
- `share`: OpenCode セッションを共有するかどうか。パブリックリポジトリのデフォルトは **true** です。
|
||||
- `prompt`: デフォルトの動作をオーバーライドするためのオプションのカスタムプロンプト。これを使用して、OpenCode がリクエストを処理する方法をカスタマイズします。
|
||||
- `token`: コメントの作成、変更のコミット、プルリクエストのオープンなどの操作を実行するためのオプションの GitHub アクセストークン。デフォルトでは、OpenCode は OpenCode GitHub アプリからのインストールアクセストークンを使用するため、コミット、コメント、プルリクエストはアプリからのものとして表示されます。
|
||||
|
||||
あるいは、OpenCode GitHub アプリをインストールせずに、GitHub Action ランナーの [組み込み `GITHUB_TOKEN`](https://docs.github.com/en/actions/tutorials/authenticate-with-github_token) を使用することもできます。ワークフローで必要な権限を必ず付与してください。
|
||||
|
||||
@@ -97,7 +97,7 @@ permissions:
|
||||
issues: write
|
||||
```
|
||||
|
||||
必要に応じて、[パーソナル アクセス トークン](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens)(PAT) を使用することもできます。
|
||||
必要に応じて、[パーソナルアクセストークン](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens)(PAT) を使用することもできます。
|
||||
|
||||
---
|
||||
|
||||
@@ -105,16 +105,16 @@ permissions:
|
||||
|
||||
OpenCode は、次の GitHub イベントによってトリガーできます。
|
||||
|
||||
| イベントの種類 | きっかけ | 詳細 |
|
||||
| イベントの種類 | トリガー | 詳細 |
|
||||
| ----------------------------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `issue_comment` | 問題または PR についてコメントする | コメントで `/opencode` または `/oc` について言及してください。 OpenCode はコンテキストを読み取り、ブランチを作成したり、PR を開いたり、返信したりできます。 |
|
||||
| `pull_request_review_comment` | PR 内の特定のコード行にコメントする | コードをレビューするときに、`/opencode` または `/oc` について言及します。 OpenCode は、ファイル パス、行番号、および diff コンテキストを受け取ります。 |
|
||||
| `pull_request_review_comment` | PR 内の特定のコード行にコメントする | コードをレビューするときに、`/opencode` または `/oc` について言及します。 OpenCode は、ファイルパス、行番号、および diff コンテキストを受け取ります。 |
|
||||
| `issues` | 問題がオープンまたは編集されました | 問題が作成または変更されると、OpenCode が自動的にトリガーされます。 `prompt` 入力が必要です。 |
|
||||
| `pull_request` | PR がオープンまたは更新されました | PR が開かれる、同期される、または再度開かれるときに、OpenCode を自動的にトリガーします。自動レビューに役立ちます。 |
|
||||
| `schedule` | Cron ベースのスケジュール | スケジュールに従って OpenCode を実行します。 `prompt` 入力が必要です。出力はログと PR に送られます (コメントする問題はありません)。 |
|
||||
| `workflow_dispatch` | GitHub UI からの手動トリガー | [アクション] タブから OpenCode をオンデマンドでトリガーします。 `prompt` 入力が必要です。出力はログと PR に送られます。 |
|
||||
|
||||
### スケジュール例
|
||||
### スケジュールの例
|
||||
|
||||
スケジュールに従って OpenCode を実行し、自動化されたタスクを実行します。
|
||||
|
||||
@@ -150,7 +150,7 @@ jobs:
|
||||
If you find issues worth addressing, open an issue to track them.
|
||||
```
|
||||
|
||||
スケジュールされたイベントの場合、指示を抽出するためのコメントがないため、`prompt` 入力は **必須** です。スケジュールされたワークフローは、権限チェックのためのユーザー コンテキストなしで実行されるため、OpenCode がブランチまたは PR を作成することが予想される場合、ワークフローは `contents: write` および `pull-requests: write` を付与する必要があります。
|
||||
スケジュールされたイベントの場合、指示を抽出するためのコメントがないため、`prompt` 入力は **必須** です。スケジュールされたワークフローは、権限チェックのためのユーザーコンテキストなしで実行されるため、OpenCode がブランチまたは PR を作成することが予想される場合、ワークフローは `contents: write` および `pull-requests: write` を付与する必要があります。
|
||||
|
||||
---
|
||||
|
||||
@@ -191,11 +191,11 @@ jobs:
|
||||
- Suggest improvements
|
||||
```
|
||||
|
||||
`pull_request` イベントの場合、`prompt` が指定されていない場合、OpenCode はデフォルトでプル リクエストをレビューします。
|
||||
`pull_request` イベントの場合、`prompt` が指定されていない場合、OpenCode はデフォルトでプルリクエストをレビューします。
|
||||
|
||||
---
|
||||
|
||||
### 問題のトリアージの例
|
||||
### Issueのトリアージの例
|
||||
|
||||
新しい問題を自動的に優先順位付けします。この例では、スパムを減らすために 30 日より古いアカウントにフィルターを適用します。
|
||||
|
||||
@@ -273,7 +273,7 @@ jobs:
|
||||
|
||||
GitHub で OpenCode を使用する方法の例をいくつか示します。
|
||||
|
||||
- **問題の説明**
|
||||
- **Issueの説明**
|
||||
|
||||
このコメントを GitHub の問題に追加します。
|
||||
|
||||
@@ -283,7 +283,7 @@ GitHub で OpenCode を使用する方法の例をいくつか示します。
|
||||
|
||||
OpenCode は、すべてのコメントを含むスレッド全体を読み取り、明確な説明を返信します。
|
||||
|
||||
- **問題を修正**
|
||||
- **Issueの修正**
|
||||
|
||||
GitHub の問題で次のように言います。
|
||||
|
||||
@@ -293,7 +293,7 @@ GitHub の問題で次のように言います。
|
||||
|
||||
そして、OpenCode は新しいブランチを作成し、変更を実装し、変更を含む PR を開きます。
|
||||
|
||||
- **PR を確認して変更を加える**
|
||||
- **PR をレビューして変更を加える**
|
||||
|
||||
GitHub PR に次のコメントを残してください。
|
||||
|
||||
@@ -303,7 +303,7 @@ GitHub PR に次のコメントを残してください。
|
||||
|
||||
OpenCode は要求された変更を実装し、同じ PR にコミットします。
|
||||
|
||||
- **特定のコード行を確認してください**
|
||||
- **特定のコード行のレビュー**
|
||||
|
||||
PR の「ファイル」タブのコード行に直接コメントを残します。 OpenCode は、ファイル、行番号、および diff コンテキストを自動的に検出して、正確な応答を提供します。
|
||||
|
||||
@@ -319,4 +319,4 @@ PR の「ファイル」タブのコード行に直接コメントを残しま
|
||||
- 周囲の差分コンテキスト
|
||||
- 行番号情報
|
||||
|
||||
これにより、ファイル パスや行番号を手動で指定する必要がなく、よりターゲットを絞ったリクエストが可能になります。
|
||||
これにより、ファイルパスや行番号を手動で指定する必要がなく、よりターゲットを絞ったリクエストが可能になります。
|
||||
|
||||
@@ -17,17 +17,17 @@ OpenCode は通常の GitLab パイプラインで動作します。 [CI コン
|
||||
|
||||
---
|
||||
|
||||
### 特徴
|
||||
### 機能
|
||||
|
||||
- **ジョブごとにカスタム構成を使用する**: カスタム構成ディレクトリ (`./config/#custom-directory` など) を使用して OpenCode を構成し、OpenCode の呼び出しごとに機能を有効または無効にします。
|
||||
- **最小限のセットアップ**: CI コンポーネントはバックグラウンドで OpenCode をセットアップします。必要なのは、OpenCode 構成と初期プロンプトを作成することだけです。
|
||||
- **ジョブごとにカスタム設定を使用する**: カスタム設定ディレクトリ (`./config/#custom-directory` など) を使用して OpenCode を構成し、OpenCode の呼び出しごとに機能を有効または無効にします。
|
||||
- **最小限のセットアップ**: CI コンポーネントはバックグラウンドで OpenCode をセットアップします。必要なのは、OpenCode 設定と初期プロンプトを作成することだけです。
|
||||
- **柔軟性**: CI コンポーネントは、動作をカスタマイズするための複数の入力をサポートしています。
|
||||
|
||||
---
|
||||
|
||||
### 設定
|
||||
|
||||
1. OpenCode 認証 JSON をファイル タイプ CI 環境変数として [**設定**] > [**CI/CD**] > [**変数**] に保存します。必ず「マスクして非表示」としてマークしてください。
|
||||
1. OpenCode 認証 JSON をファイルタイプ CI 環境変数として [**設定**] > [**CI/CD**] > [**変数**] に保存します。必ず「マスクして非表示」としてマークしてください。
|
||||
2. 以下を `.gitlab-ci.yml` ファイルに追加します。
|
||||
|
||||
```yaml title=".gitlab-ci.yml"
|
||||
@@ -40,7 +40,7 @@ OpenCode は通常の GitLab パイプラインで動作します。 [CI コン
|
||||
message: "Your prompt here"
|
||||
```
|
||||
|
||||
さらに多くの入力と使用例については、このコンポーネントの docs](https://gitlab.com/explore/catalog/nagyv/gitlab-opencode) をチェックしてください。
|
||||
さらに多くの入力と使用例については、このコンポーネントの [ドキュメント](https://gitlab.com/explore/catalog/nagyv/gitlab-opencode) をチェックしてください。
|
||||
|
||||
---
|
||||
|
||||
@@ -51,7 +51,7 @@ OpenCode は GitLab ワークフローと統合します。
|
||||
|
||||
---
|
||||
|
||||
### 特徴
|
||||
### 機能
|
||||
|
||||
- **問題のトリアージ**: OpenCode に問題を調べて説明してもらいます。
|
||||
- **修正と実装**: OpenCode に問題の修正または機能の実装を依頼します。
|
||||
@@ -70,14 +70,14 @@ OpenCode は GitLab CI/CD パイプラインで実行されます。セットア
|
||||
|
||||
1. GitLab 環境を構成する
|
||||
2. CI/CD のセットアップ
|
||||
3. AI モデル プロバイダー API キーを取得する
|
||||
3. AI モデルプロバイダー API キーを取得する
|
||||
4. サービスアカウントを作成する
|
||||
5. CI/CD変数を構成する
|
||||
6. フロー構成ファイルを作成します。例を次に示します。
|
||||
6. フロー設定ファイルを作成します。例を次に示します。
|
||||
|
||||
<details>
|
||||
|
||||
<summary>Flow configuration</summary>
|
||||
<summary>フロー設定</summary>
|
||||
|
||||
```yaml
|
||||
image: node:22-slim
|
||||
@@ -161,7 +161,7 @@ OpenCode は GitLab CI/CD パイプラインで実行されます。セットア
|
||||
GitLab で OpenCode を使用する方法の例をいくつか示します。
|
||||
|
||||
:::tip
|
||||
`@opencode` とは異なるトリガー フレーズを使用するように設定できます。
|
||||
`@opencode` とは異なるトリガーフレーズを使用するように設定できます。
|
||||
:::
|
||||
|
||||
- **問題の説明**
|
||||
@@ -182,14 +182,14 @@ GitLab の問題では、次のように言います。
|
||||
@opencode fix this
|
||||
```
|
||||
|
||||
OpenCode は新しいブランチを作成し、変更を実装し、変更を含むマージ リクエストを開きます。
|
||||
OpenCode は新しいブランチを作成し、変更を実装し、変更を含むマージリクエストを開きます。
|
||||
|
||||
- **マージリクエストを確認する**
|
||||
|
||||
GitLab マージ リクエストに次のコメントを残してください。
|
||||
GitLab マージリクエストに次のコメントを残してください。
|
||||
|
||||
```
|
||||
@opencode review this merge request
|
||||
```
|
||||
|
||||
OpenCode はマージ リクエストをレビューし、フィードバックを提供します。
|
||||
OpenCode はマージリクエストをレビューし、フィードバックを提供します。
|
||||
|
||||
@@ -3,14 +3,14 @@ title: IDE
|
||||
description: VS Code、Cursor、およびその他の IDE 用の OpenCode 拡張機能
|
||||
---
|
||||
|
||||
OpenCode は、VS Code、Cursor、またはterminal をサポートする任意の IDE と統合します。開始するには、terminal で `opencode` を実行するだけです。
|
||||
OpenCode は、VS Code、Cursor、またはターミナルをサポートする任意の IDE と統合します。開始するには、ターミナルで `opencode` を実行するだけです。
|
||||
|
||||
---
|
||||
|
||||
## 使用法
|
||||
|
||||
- **クイック起動**: `Cmd+Esc` (Mac) または `Ctrl+Esc` (Windows/Linux) を使用して、分割terminal ビューで OpenCode を開くか、既存のterminal セッションが既に実行されている場合はそれにフォーカスします。
|
||||
- **新しいセッション**: すでに開いている場合でも、`Cmd+Shift+Esc` (Mac) または `Ctrl+Shift+Esc` (Windows/Linux) を使用して、新しい OpenCode terminal セッションを開始します。 UI の [OpenCode] ボタンをクリックすることもできます。
|
||||
- **クイック起動**: `Cmd+Esc` (Mac) または `Ctrl+Esc` (Windows/Linux) を使用して、分割ターミナルビューで OpenCode を開くか、既存のターミナルセッションが既に実行されている場合はそれにフォーカスします。
|
||||
- **新しいセッション**: すでに開いている場合でも、`Cmd+Shift+Esc` (Mac) または `Ctrl+Shift+Esc` (Windows/Linux) を使用して、新しい OpenCode ターミナルセッションを開始します。 UI の [OpenCode] ボタンをクリックすることもできます。
|
||||
- **コンテキスト認識**: 現在の選択またはタブを OpenCode と自動的に共有します。
|
||||
- **ファイル参照のショートカット**: ファイル参照を挿入するには、`Cmd+Option+K` (Mac) または `Alt+Ctrl+K` (Linux/Windows) を使用します。たとえば、`@File#L37-42`。
|
||||
|
||||
@@ -20,8 +20,8 @@ OpenCode は、VS Code、Cursor、またはterminal をサポートする任意
|
||||
|
||||
OpenCode を VS Code および Cursor、Windsurf、VSCodium などの一般的なフォークにインストールするには:
|
||||
|
||||
1. VS Codeを開く
|
||||
2. 統合terminal を開きます
|
||||
1. VS Code を開く
|
||||
2. 統合ターミナルを開きます
|
||||
3. `opencode` を実行します - 拡張機能は自動的にインストールされます
|
||||
|
||||
一方、TUI から `/editor` または `/export` を実行するときに独自の IDE を使用したい場合は、`export EDITOR="code --wait"` を設定する必要があります。 [詳細はこちら](/docs/tui/#editor-setup)。
|
||||
@@ -38,11 +38,11 @@ Extension Marketplace で **OpenCode** を検索し、**インストール** を
|
||||
|
||||
拡張機能が自動的にインストールされない場合:
|
||||
|
||||
- 統合terminal で `opencode` を実行していることを確認してください。
|
||||
- 統合ターミナルで `opencode` を実行していることを確認してください。
|
||||
- IDE の CLI がインストールされていることを確認します。
|
||||
- VS コードの場合: `code` コマンド
|
||||
- Cursorの場合: `cursor` コマンド
|
||||
- Windsurfの場合: `windsurf` コマンド
|
||||
- VS Code の場合: `code` コマンド
|
||||
- Cursor の場合: `cursor` コマンド
|
||||
- Windsurf の場合: `windsurf` コマンド
|
||||
- VSCodium の場合: `codium` コマンド
|
||||
- そうでない場合は、`Cmd+Shift+P` (Mac) または `Ctrl+Shift+P` (Windows/Linux) を実行し、「Shell Command: Install 'code' command in PATH」(または IDE の同等のコマンド) を検索します。
|
||||
- VS Code に拡張機能をインストールする権限があることを確認してください
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: イントロ
|
||||
title: はじめに
|
||||
description: OpenCode を始めましょう。
|
||||
---
|
||||
|
||||
@@ -7,7 +7,7 @@ import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||||
import config from "../../../../config.mjs"
|
||||
export const console = config.console
|
||||
|
||||
[**OpenCode**](/) は、オープンソースの AI コーディング エージェントです。これは、terminal ベースのインターフェイス、デスクトップ アプリ、または IDE 拡張機能として利用できます。
|
||||
[**OpenCode**](/) は、オープンソースの AI コーディングエージェントです。これは、ターミナルベースのインターフェイス、デスクトップアプリ、または IDE 拡張機能として利用できます。
|
||||
|
||||
を使用したOpenCode TUI
|
||||
|
||||
@@ -17,9 +17,9 @@ export const console = config.console
|
||||
|
||||
#### 前提条件
|
||||
|
||||
terminal で OpenCode を使用するには、次のものが必要です。
|
||||
ターミナルで OpenCode を使用するには、次のものが必要です。
|
||||
|
||||
1. 次のような最新のterminal エミュレータ:
|
||||
1. 次のような最新のターミナルエミュレータ:
|
||||
- [WezTerm](https://wezterm.org)、クロスプラットフォーム
|
||||
- [Alacritty](https://alacritty.org)、クロスプラットフォーム
|
||||
- [Ghostty](https://ghostty.org)、Linux および macOS
|
||||
@@ -31,7 +31,7 @@ terminal で OpenCode を使用するには、次のものが必要です。
|
||||
|
||||
## インストール
|
||||
|
||||
OpenCode をインストールする最も簡単な方法は、インストール スクリプトを使用することです。
|
||||
OpenCode をインストールする最も簡単な方法は、インストールスクリプトを使用することです。
|
||||
|
||||
```bash
|
||||
curl -fsSL https://opencode.ai/install | bash
|
||||
@@ -99,19 +99,19 @@ Windows で最高のエクスペリエンスを得るには、[Windows Subsystem
|
||||
choco install opencode
|
||||
```
|
||||
|
||||
- **Using Scoop**
|
||||
- **Scoop の使用**
|
||||
|
||||
```bash
|
||||
scoop install opencode
|
||||
```
|
||||
|
||||
- **NPM の使用**
|
||||
- **npm の使用**
|
||||
|
||||
```bash
|
||||
npm install -g opencode-ai
|
||||
```
|
||||
|
||||
- **Using Mise**
|
||||
- **Mise の使用**
|
||||
|
||||
```bash
|
||||
mise use -g github:anomalyco/opencode
|
||||
@@ -129,15 +129,14 @@ Bun を使用して Windows に OpenCode をインストールするためのサ
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
OpenCode を使用すると、API キーを構成することで任意の LLM プロバイダーを使用できます。
|
||||
|
||||
LLM プロバイダーを初めて使用する場合は、[OpenCode Zen](/docs/zen).
|
||||
これは、OpenCode によってテストおよび検証されたモデルの厳選されたリストです。
|
||||
team.
|
||||
LLM プロバイダーを初めて使用する場合は、[OpenCode Zen](/docs/zen) をお勧めします。
|
||||
これは、OpenCode チームによってテストおよび検証されたモデルの厳選されたリストです。
|
||||
|
||||
1. TUI で `/connect` コマンドを実行し、opencode を選択して、[opencode.ai/auth](https://opencode.ai/auth).
|
||||
1. TUI で `/connect` コマンドを実行し、opencode を選択して、[opencode.ai/auth](https://opencode.ai/auth) で認証します。
|
||||
|
||||
```txt
|
||||
/connect
|
||||
@@ -158,10 +157,9 @@ team.
|
||||
|
||||
---
|
||||
|
||||
## 初期化する
|
||||
## 初期化
|
||||
|
||||
プロバイダーを構成したので、次のプロジェクトに移動できます。
|
||||
取り組みたいと考えています。
|
||||
プロバイダーを構成したので、取り組みたいプロジェクトに移動できます。
|
||||
|
||||
```bash
|
||||
cd /path/to/project
|
||||
@@ -179,25 +177,21 @@ opencode
|
||||
/init
|
||||
```
|
||||
|
||||
これにより、OpenCode がプロジェクトを分析し、`AGENTS.md` ファイルを作成します。
|
||||
プロジェクトのルート。
|
||||
これにより、OpenCode がプロジェクトを分析し、プロジェクトのルートに `AGENTS.md` ファイルを作成します。
|
||||
|
||||
:::tip
|
||||
プロジェクトの `AGENTS.md` ファイルを Git にコミットする必要があります。
|
||||
:::
|
||||
|
||||
これは、OpenCode がプロジェクトの構造とコーディング パターンを理解するのに役立ちます。
|
||||
used.
|
||||
これは、OpenCode がプロジェクトの構造と使用されているコーディングパターンを理解するのに役立ちます。
|
||||
|
||||
---
|
||||
|
||||
## 使用法
|
||||
|
||||
これで、OpenCode を使用してプロジェクトに取り組む準備が整いました。お気軽にお尋ねください
|
||||
何でも!
|
||||
これで、OpenCode を使用してプロジェクトに取り組む準備が整いました。何でもお気軽にお尋ねください!
|
||||
|
||||
AI コーディング エージェントを初めて使用する場合は、次の例を参考にしてください。
|
||||
help.
|
||||
AI コーディングエージェントを初めて使用する場合は、次の例を参考にしてください。
|
||||
|
||||
---
|
||||
|
||||
@@ -224,7 +218,7 @@ OpenCode に新しい機能をプロジェクトに追加するよう依頼で
|
||||
1. **計画を作成する**
|
||||
|
||||
OpenCode には、変更を加える機能を無効にする _Plan mode_ があり、
|
||||
代わりに、その機能を*どのように*実装するかを提案してください。
|
||||
代わりに、その機能を*どのように*実装するかを提案します。
|
||||
|
||||
**Tab** キーを使用してそれに切り替えます。右下隅にこれを示すインジケーターが表示されます。
|
||||
|
||||
@@ -240,12 +234,11 @@ OpenCode には、変更を加える機能を無効にする _Plan mode_ があ
|
||||
From this screen, the user can undelete a note or permanently delete it.
|
||||
```
|
||||
|
||||
自分が何を望んでいるのかを理解するために、OpenCode に十分な詳細を提供したいと考えています。役に立ちます
|
||||
チームの若手開発者と話しているように話すことができます。
|
||||
自分が何を望んでいるのかを理解するために、OpenCode に十分な詳細を提供したいと考えています。
|
||||
チームの若手開発者と話しているように話すと良いでしょう。
|
||||
|
||||
:::tip
|
||||
OpenCode に多くのコンテキストと例を提供して、意図する内容を理解できるようにします。
|
||||
want.
|
||||
:::
|
||||
|
||||
2. **計画を反復する**
|
||||
@@ -258,11 +251,11 @@ want.
|
||||
```
|
||||
|
||||
:::tip
|
||||
画像をterminal にドラッグ アンド ドロップして、プロンプトに追加します。
|
||||
画像をターミナルにドラッグアンドドロップして、プロンプトに追加します。
|
||||
:::
|
||||
|
||||
OpenCode は、指定された画像をスキャンしてプロンプトに追加できます。あなたはできる
|
||||
これを行うには、画像をterminal にドラッグ アンド ドロップします。
|
||||
OpenCode は、指定された画像をスキャンしてプロンプトに追加できます。
|
||||
画像をターミナルにドラッグアンドドロップしてこれを行うことができます。
|
||||
|
||||
3. **機能を構築する**
|
||||
|
||||
@@ -292,8 +285,7 @@ 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 が適切な変更を行えるように、十分な量の詳細を確実に提供する必要があります。
|
||||
|
||||
---
|
||||
|
||||
@@ -312,8 +304,7 @@ Can you refactor the function in @packages/functions/src/api/index.ts?
|
||||
/undo
|
||||
```
|
||||
|
||||
OpenCode は加えた変更を元に戻し、元のメッセージを表示します。
|
||||
again.
|
||||
OpenCode は加えた変更を元に戻し、元のメッセージを再度表示します。
|
||||
|
||||
```txt frame="none" "@packages/functions/src/api/index.ts"
|
||||
Can you refactor the function in @packages/functions/src/api/index.ts?
|
||||
@@ -335,8 +326,7 @@ Can you refactor the function in @packages/functions/src/api/index.ts?
|
||||
|
||||
## 共有
|
||||
|
||||
OpenCode との会話は [他のユーザーと共有できます]
|
||||
チーム](/docs/share)。
|
||||
OpenCode との会話は [他のチームメンバーと共有できます](/docs/share)。
|
||||
|
||||
```bash frame="none"
|
||||
/share
|
||||
@@ -356,4 +346,4 @@ OpenCode との会話は [他のユーザーと共有できます]
|
||||
|
||||
それで終わりです!これであなたは OpenCode の使い方のプロになりました。
|
||||
|
||||
独自のものにするには、[テーマ](/docs/themes) を選択する、[キーバインドをカスタマイズする ](/docs/keybinds)、[コード フォーマッタ ](/docs/formatters) を設定する、[カスタム コマンド ](/docs/commands) を作成する]、または [OpenCode config](/docs/config) を試してみる] ことをお勧めします。
|
||||
独自のものにするには、[テーマ](/docs/themes) を選択する、[キーバインドをカスタマイズする](/docs/keybinds)、[コードフォーマッタ](/docs/formatters) を設定する、[カスタムコマンド](/docs/commands) を作成する、または [OpenCode設定](/docs/config) を試してみることをお勧めします。
|
||||
|
||||
@@ -107,11 +107,11 @@ OpenCode には、OpenCode 設定を通じてカスタマイズできるキー
|
||||
|
||||
## リーダーキー
|
||||
|
||||
OpenCode は、ほとんどのキーバインドに `leader` キーを使用します。これにより、terminal での競合が回避されます。
|
||||
OpenCode は、ほとんどのキーバインドに `leader` キーを使用します。これにより、ターミナルでの競合が回避されます。
|
||||
|
||||
デフォルトでは、`ctrl+x` がリーダー キーであり、ほとんどの操作では、最初にリーダー キーを押してからショートカットを押す必要があります。たとえば、新しいセッションを開始するには、まず `ctrl+x` を押してから、`n` を押します。
|
||||
デフォルトでは、`ctrl+x` がリーダーキーであり、ほとんどの操作では、最初にリーダーキーを押してからショートカットを押す必要があります。たとえば、新しいセッションを開始するには、まず `ctrl+x` を押してから、`n` を押します。
|
||||
|
||||
キーバインドにリーダー キーを使用する必要はありませんが、そうすることをお勧めします。
|
||||
キーバインドにリーダーキーを使用する必要はありませんが、そうすることをお勧めします。
|
||||
|
||||
---
|
||||
|
||||
@@ -132,7 +132,7 @@ OpenCode は、ほとんどのキーバインドに `leader` キーを使用し
|
||||
|
||||
## デスクトッププロンプトのショートカット
|
||||
|
||||
OpenCode デスクトップ アプリのプロンプト入力は、テキストを編集するための一般的な Readline/Emacs スタイルのショートカットをサポートしています。これらは組み込みであり、現在 `opencode.json` を介して構成することはできません。
|
||||
OpenCode デスクトップアプリのプロンプト入力は、テキストを編集するための一般的な Readline/Emacs スタイルのショートカットをサポートしています。これらは組み込みであり、現在 `opencode.json` を介して構成することはできません。
|
||||
|
||||
| ショートカット | アクション |
|
||||
| -------------- | ------------------------------------------------- |
|
||||
@@ -154,7 +154,7 @@ OpenCode デスクトップ アプリのプロンプト入力は、テキスト
|
||||
|
||||
## Shift+Enter
|
||||
|
||||
一部のterminal では、デフォルトでは Enter キーを使用して修飾キーを送信しません。エスケープ シーケンスとして `Shift+Enter` を送信するようにterminal を設定する必要がある場合があります。
|
||||
一部のターミナルでは、デフォルトでは Enter キーを使用して修飾キーを送信しません。エスケープシーケンスとして `Shift+Enter` を送信するようにターミナルを設定する必要がある場合があります。
|
||||
|
||||
### Windows Terminal
|
||||
|
||||
|
||||
@@ -3,11 +3,11 @@ title: LSPサーバー
|
||||
description: OpenCode は LSP サーバーと統合します。
|
||||
---
|
||||
|
||||
OpenCode は言語サーバー プロトコル (LSP) と統合して、LLM がコードベースと対話できるようにします。診断を使用して LLM にフィードバックを提供します。
|
||||
OpenCode は言語サーバープロトコル (LSP) と統合して、LLM がコードベースと対話できるようにします。診断を使用して LLM にフィードバックを提供します。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
OpenCode には、一般的な言語用のいくつかの組み込み LSP サーバーが付属しています。
|
||||
|
||||
@@ -56,16 +56,16 @@ OpenCode には、一般的な言語用のいくつかの組み込み LSP サー
|
||||
|
||||
## 仕組み
|
||||
|
||||
opencode がファイルを開くと、次のようになります。
|
||||
OpenCode がファイルを開くと、次のようになります。
|
||||
|
||||
1. 有効なすべての LSP サーバーに対してファイル拡張子をチェックします。
|
||||
2. 適切な LSP サーバーがまだ実行されていない場合は開始します。
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
Opencode 構成の `lsp` セクションを通じて LSP サーバーをカスタマイズできます。
|
||||
OpenCode 設定の `lsp` セクションを通じて LSP サーバーをカスタマイズできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -158,7 +158,7 @@ LSP サーバーの起動時に `env` プロパティを使用して環境変数
|
||||
|
||||
---
|
||||
|
||||
### カスタムLSPサーバー
|
||||
### カスタム LSP サーバー
|
||||
|
||||
コマンドとファイル拡張子を指定して、カスタム LSP サーバーを追加できます。
|
||||
|
||||
@@ -180,9 +180,9 @@ LSP サーバーの起動時に `env` プロパティを使用して環境変数
|
||||
|
||||
### PHP Intelephense
|
||||
|
||||
PHP Intelephense は、ライセンス キーを通じてプレミアム機能を提供します。ライセンス キーを指定するには、次の場所にあるテキスト ファイルにキー (のみ) を配置します。
|
||||
PHP Intelephense は、ライセンスキーを通じてプレミアム機能を提供します。ライセンスキーを指定するには、次の場所にあるテキストファイルにキー (のみ) を配置します。
|
||||
|
||||
- macOS/Linux の場合: `$HOME/intelephense/license.txt`
|
||||
- Windows の場合: `%USERPROFILE%/intelephense/license.txt`
|
||||
|
||||
ファイルにはライセンス キーのみが含まれており、追加のコンテンツは含まれていません。
|
||||
ファイルにはライセンスキーのみが含まれており、追加のコンテンツは含まれていません。
|
||||
|
||||
@@ -3,7 +3,7 @@ title: MCPサーバー
|
||||
description: ローカルおよびリモートの MCP ツールを追加します。
|
||||
---
|
||||
|
||||
_Model Context Protocol_ (MCP) を使用して、OpenCode に外部ツールを追加できます。 OpenCode は、ローカル サーバーとリモート サーバーの両方をサポートします。
|
||||
_Model Context Protocol_ (MCP) を使用して、OpenCode に外部ツールを追加できます。 OpenCode は、ローカルサーバーとリモートサーバーの両方をサポートします。
|
||||
|
||||
MCP ツールを追加すると、組み込みツールとともに LLM で自動的に使用できるようになります。
|
||||
|
||||
@@ -16,13 +16,13 @@ MCP サーバーを使用すると、コンテキストが追加されます。
|
||||
:::tip
|
||||
MCP サーバーはコンテキストに追加されるため、どのサーバーを有効にするかには注意してください。
|
||||
:::
|
||||
Certain MCP サーバーなどの特定の MCP サーバーは、大量のトークンを追加する傾向があり、コンテキスト制限を簡単に超える可能性があります。
|
||||
特定の MCP サーバーは、大量のトークンを追加する傾向があり、コンテキスト制限を簡単に超える可能性があります。
|
||||
|
||||
---
|
||||
|
||||
## 有効にする
|
||||
## 有効化
|
||||
|
||||
MCP サーバーは、`mcp` の下の [OpenCode Config](https://opencode.ai/docs/config/) で定義できます。各 MCP を一意の名前で追加します。 LLM にプロンプトを表示するときに、その MCP を名前で参照できます。
|
||||
MCP サーバーは、`mcp` の下の [OpenCode 設定](https://opencode.ai/docs/config/) で定義できます。各 MCP を一意の名前で追加します。 LLM にプロンプトを表示するときに、その MCP を名前で参照できます。
|
||||
|
||||
```jsonc title="opencode.jsonc" {6}
|
||||
{
|
||||
@@ -39,6 +39,474 @@ MCP サーバーは、`mcp` の下の [OpenCode Config](https://opencode.ai/docs
|
||||
}
|
||||
```
|
||||
|
||||
`enabled` を `false` に設定してサーバーを無効にすることもできます。これは、サーバーを設定から削除せずに一時的に無効にする場合に便利です。
|
||||
|
||||
---
|
||||
|
||||
### リモートのデフォルトを上書きする
|
||||
|
||||
組織は、`.well-known/opencode` エンドポイント経由でデフォルトの MCP サーバーを提供できます。これらのサーバーはデフォルトで無効になっている場合があり、ユーザーは必要なサーバーにオプトインできます。
|
||||
|
||||
組織のリモート設定から特定のサーバーを有効にするには、`enabled: true` を使用してローカル設定に追加します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"jira": {
|
||||
"type": "remote",
|
||||
"url": "https://jira.example.com/mcp",
|
||||
"enabled": true
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
ローカルの設定値はリモートのデフォルト値をオーバーライドします。詳細については、「[設定の優先順位](/docs/config#precedence-order)」を参照してください。
|
||||
|
||||
---
|
||||
|
||||
## ローカル
|
||||
|
||||
MCP オブジェクト内の `type` から `"local"` を使用してローカル MCP サーバーを追加します。
|
||||
|
||||
```jsonc title="opencode.jsonc" {15}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-local-mcp-server": {
|
||||
"type": "local",
|
||||
// Or ["bun", "x", "my-mcp-command"]
|
||||
"command": ["npx", "-y", "my-mcp-command"],
|
||||
"enabled": true,
|
||||
"environment": {
|
||||
"MY_ENV_VAR": "my_env_var_value",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
このコマンドは、ローカル MCP サーバーの起動方法を示します。環境変数のリストを渡すこともできます。
|
||||
|
||||
たとえば、テスト [`@modelcontextprotocol/server-everything`](https://www.npmjs.com/package/@modelcontextprotocol/server-everything) MCP サーバーを追加する方法は次のとおりです。
|
||||
|
||||
```jsonc title="opencode.jsonc"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"mcp_everything": {
|
||||
"type": "local",
|
||||
"command": ["npx", "-y", "@modelcontextprotocol/server-everything"],
|
||||
},
|
||||
},
|
||||
}
|
||||
```
|
||||
|
||||
これを使用するには、プロンプトに `use the mcp_everything tool` を追加します。
|
||||
|
||||
```txt "mcp_everything"
|
||||
use the mcp_everything tool to add the number 3 and 4
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### オプション
|
||||
|
||||
ここでは、ローカル MCP サーバーを構成するためのすべてのオプションを示します。
|
||||
|
||||
| オプション | タイプ | 必須 | 説明 |
|
||||
| ------------- | ------------ | ---- | ------------------------------------------------------------------------------------------ |
|
||||
| `type` | 文字列 | Y | MCP サーバー接続のタイプは、`"local"` である必要があります。 |
|
||||
| `command` | 配列 | Y | MCP サーバーを実行するためのコマンドと引数。 |
|
||||
| `environment` | オブジェクト | | サーバーの実行時に設定する環境変数。 |
|
||||
| `enabled` | ブール値 | | 起動時に MCP サーバーを有効または無効にします。 |
|
||||
| `timeout` | 数値 | | MCP サーバーからツールを取得する際のタイムアウト (ミリ秒)。デフォルトは 5000 (5 秒) です。 |
|
||||
|
||||
---
|
||||
|
||||
## リモート
|
||||
|
||||
`type` を `"remote"` に設定して、リモート MCP サーバーを追加します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-remote-mcp": {
|
||||
"type": "remote",
|
||||
"url": "https://my-mcp-server.com",
|
||||
"enabled": true,
|
||||
"headers": {
|
||||
"Authorization": "Bearer MY_API_KEY"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
`url` はリモート MCP サーバーの URL で、`headers` オプションを使用するとヘッダーのリストを渡すことができます。
|
||||
|
||||
---
|
||||
|
||||
#### オプション
|
||||
|
||||
| オプション | タイプ | 必須 | 説明 |
|
||||
| ---------- | ------------ | ---- | ------------------------------------------------------------------------------------------ |
|
||||
| `type` | 文字列 | Y | MCP サーバー接続のタイプは、`"remote"` である必要があります。 |
|
||||
| `url` | 文字列 | Y | リモート MCP サーバーの URL。 |
|
||||
| `enabled` | ブール値 | | 起動時に MCP サーバーを有効または無効にします。 |
|
||||
| `headers` | オブジェクト | | リクエストとともに送信するヘッダー。 |
|
||||
| `oauth` | オブジェクト | | OAuth 認証設定。以下の「OAuth](#oauth)」セクションを参照してください。 |
|
||||
| `timeout` | 数値 | | MCP サーバーからツールを取得する際のタイムアウト (ミリ秒)。デフォルトは 5000 (5 秒) です。 |
|
||||
|
||||
---
|
||||
|
||||
## OAuth
|
||||
|
||||
OpenCode は、リモート MCP サーバーの OAuth 認証を自動的に処理します。サーバーが認証を必要とする場合、OpenCode は次のことを行います。
|
||||
|
||||
1. 401 応答を検出し、OAuth フローを開始します。
|
||||
2. サーバーでサポートされている場合は **動的クライアント登録 (RFC 7591)** を使用します
|
||||
3. 今後のリクエストに備えてトークンを安全に保管する
|
||||
|
||||
---
|
||||
|
||||
### 自動
|
||||
|
||||
ほとんどの OAuth 対応 MCP サーバーでは、特別な構成は必要ありません。リモートサーバーを設定するだけです。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-oauth-server": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.example.com/mcp"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
サーバーが認証を必要とする場合、OpenCode を初めて使用しようとすると、認証を求めるプロンプトが表示されます。そうでない場合は、`opencode mcp auth <server-name>` を使用して [flow](#authenticating) を手動でトリガーできます。
|
||||
|
||||
---
|
||||
|
||||
### 事前登録済み
|
||||
|
||||
MCP サーバープロバイダーからクライアント認証情報を取得している場合は、それらを構成できます。
|
||||
|
||||
```json title="opencode.json" {7-11}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-oauth-server": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.example.com/mcp",
|
||||
"oauth": {
|
||||
"clientId": "{env:MY_MCP_CLIENT_ID}",
|
||||
"clientSecret": "{env:MY_MCP_CLIENT_SECRET}",
|
||||
"scope": "tools:read tools:execute"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 認証中
|
||||
|
||||
手動で認証をトリガーしたり、資格情報を管理したりできます。
|
||||
|
||||
特定の MCP サーバーで認証します。
|
||||
|
||||
```bash
|
||||
opencode mcp auth my-oauth-server
|
||||
```
|
||||
|
||||
すべての MCP サーバーとその認証ステータスをリストします。
|
||||
|
||||
```bash
|
||||
opencode mcp list
|
||||
```
|
||||
|
||||
保存されている認証情報を削除します。
|
||||
|
||||
```bash
|
||||
opencode mcp logout my-oauth-server
|
||||
```
|
||||
|
||||
`mcp auth` コマンドは、認証のためにブラウザを開きます。承認後、OpenCode はトークンを `~/.local/share/opencode/mcp-auth.json` に安全に保存します。
|
||||
|
||||
---
|
||||
|
||||
#### OAuthの無効化
|
||||
|
||||
サーバー (代わりに API キーを使用するサーバーなど) の自動 OAuth を無効にする場合は、`oauth` を `false` に設定します。
|
||||
|
||||
```json title="opencode.json" {7}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-api-key-server": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.example.com/mcp",
|
||||
"oauth": false,
|
||||
"headers": {
|
||||
"Authorization": "Bearer {env:MY_API_KEY}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### OAuth オプション
|
||||
|
||||
| オプション | タイプ | 説明 |
|
||||
| -------------- | --------------- | -------------------------------------------------------------------------------- |
|
||||
| `oauth` | Object \| false | OAuth config object, or `false` to disable OAuth auto-detection. |
|
||||
| `clientId` | String | OAuth client ID. If not provided, dynamic client registration will be attempted. |
|
||||
| `clientSecret` | String | OAuth client secret, if required by the authorization server. |
|
||||
| `scope` | String | OAuth scopes to request during authorization. |
|
||||
|
||||
#### デバッグ
|
||||
|
||||
リモート MCP サーバーが認証に失敗した場合は、次の方法で問題を診断できます。
|
||||
|
||||
```bash
|
||||
# View auth status for all OAuth-capable servers
|
||||
opencode mcp auth list
|
||||
|
||||
# Debug connection and OAuth flow for a specific server
|
||||
opencode mcp debug my-oauth-server
|
||||
```
|
||||
|
||||
`mcp debug` コマンドは、現在の認証ステータスを表示し、HTTP 接続をテストし、OAuth 検出フローを試行します。
|
||||
|
||||
---
|
||||
|
||||
## 管理
|
||||
|
||||
MCP は、組み込みツールと並んで、OpenCode のツールとして利用できます。したがって、他のツールと同様に、OpenCode 設定を通じてそれらを管理できます。
|
||||
|
||||
---
|
||||
|
||||
### グローバル
|
||||
|
||||
これは、それらをグローバルに有効または無効にできることを意味します。
|
||||
|
||||
```json title="opencode.json" {14}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-mcp-foo": {
|
||||
"type": "local",
|
||||
"command": ["bun", "x", "my-mcp-command-foo"]
|
||||
},
|
||||
"my-mcp-bar": {
|
||||
"type": "local",
|
||||
"command": ["bun", "x", "my-mcp-command-bar"]
|
||||
}
|
||||
},
|
||||
"tools": {
|
||||
"my-mcp-foo": false
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
グロブパターンを使用して、一致するすべての MCP を無効にすることもできます。
|
||||
|
||||
```json title="opencode.json" {14}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-mcp-foo": {
|
||||
"type": "local",
|
||||
"command": ["bun", "x", "my-mcp-command-foo"]
|
||||
},
|
||||
"my-mcp-bar": {
|
||||
"type": "local",
|
||||
"command": ["bun", "x", "my-mcp-command-bar"]
|
||||
}
|
||||
},
|
||||
"tools": {
|
||||
"my-mcp*": false
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
ここでは、グロブパターン `my-mcp*` を使用して、すべての MCP を無効にしています。
|
||||
|
||||
---
|
||||
|
||||
### エージェントごと
|
||||
|
||||
多数の MCP サーバーがある場合は、エージェントごとにのみ有効にし、グローバルに無効にすることができます。これを行うには:
|
||||
|
||||
1. ツールとしてグローバルに無効にします。
|
||||
2. [エージェント設定](/docs/agents#tools) で、MCP サーバーをツールとして有効にします。
|
||||
|
||||
```json title="opencode.json" {11, 14-18}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"my-mcp": {
|
||||
"type": "local",
|
||||
"command": ["bun", "x", "my-mcp-command"],
|
||||
"enabled": true
|
||||
}
|
||||
},
|
||||
"tools": {
|
||||
"my-mcp*": false
|
||||
},
|
||||
"agent": {
|
||||
"my-agent": {
|
||||
"tools": {
|
||||
"my-mcp*": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### グロブパターン
|
||||
|
||||
グロブパターンでは、単純な正規表現のグロブパターンを使用します。
|
||||
|
||||
- `*` は 0 個以上の任意の文字に一致します (例: `"my-mcp*"` は `my-mcp_search`、`my-mcp_list` などに一致します)。
|
||||
- `?` は 1 つの文字に正確に一致します
|
||||
- 他のすべての文字は文字通り一致します
|
||||
|
||||
:::note
|
||||
MCP サーバーツールはサーバー名をプレフィックスとして登録されているため、サーバーのすべてのツールを無効にするには、次のコマンドを使用するだけです。
|
||||
|
||||
```
|
||||
"mymcpservername_*": false
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
## 例
|
||||
|
||||
以下に、一般的な MCP サーバーの例をいくつか示します。他のサーバーを文書化したい場合は、PR を送信できます。
|
||||
|
||||
---
|
||||
|
||||
### Sentry
|
||||
|
||||
[Sentry MCP サーバー](https://mcp.sentry.dev) を追加して、Sentry プロジェクトや問題と対話します。
|
||||
|
||||
```json title="opencode.json" {4-8}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"sentry": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.sentry.dev/mcp",
|
||||
"oauth": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
設定を追加した後、Sentry で認証します。
|
||||
|
||||
```bash
|
||||
opencode mcp auth sentry
|
||||
```
|
||||
|
||||
これにより、ブラウザウィンドウが開き、OAuth フローが完了し、OpenCode が Sentry アカウントに接続されます。
|
||||
|
||||
認証が完了すると、プロンプトで Sentry ツールを使用して、問題、プロジェクト、エラーデータをクエリできるようになります。
|
||||
|
||||
```txt "use sentry"
|
||||
Show me the latest unresolved issues in my project. use sentry
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Context7
|
||||
|
||||
ドキュメントを検索するために [Context7 MCP server](https://github.com/upstash/context7) を追加します。
|
||||
|
||||
```json title="opencode.json" {4-7}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"context7": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.context7.com/mcp"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
無料アカウントにサインアップしている場合は、API キーを使用して、より高いレート制限を取得できます。
|
||||
|
||||
```json title="opencode.json" {7-9}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"context7": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.context7.com/mcp",
|
||||
"headers": {
|
||||
"CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
ここでは、`CONTEXT7_API_KEY` 環境変数が設定されていることを前提としています。
|
||||
|
||||
Context7 MCP サーバーを使用するには、プロンプトに `use context7` を追加します。
|
||||
|
||||
```txt "use context7"
|
||||
Configure a Cloudflare Worker script to cache JSON API responses for five minutes. use context7
|
||||
```
|
||||
|
||||
あるいは、次のようなものを [AGENTS.md](/docs/rules/) に追加します。
|
||||
|
||||
```md title="AGENTS.md"
|
||||
When you need to search docs, use `context7` tools.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### Grep by Vercel
|
||||
|
||||
GitHub 上のコードスニペットを検索するには、[Grep by Vercel](https://grep.app) MCP サーバーを追加します。
|
||||
|
||||
```json title="opencode.json" {4-7}
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"mcp": {
|
||||
"gh_grep": {
|
||||
"type": "remote",
|
||||
"url": "https://mcp.grep.app"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
MCP サーバーに `gh_grep` という名前を付けたので、プロンプトに `use the gh_grep tool` を追加して、エージェントにそれを使用させることができます。
|
||||
|
||||
```txt "use the gh_grep tool"
|
||||
What's the right way to set a custom domain in an SST Astro component? use the gh_grep tool
|
||||
```
|
||||
|
||||
あるいは、次のようなものを [AGENTS.md](/docs/rules/) に追加します。
|
||||
|
||||
```md title="AGENTS.md"
|
||||
If you are unsure how to do something, use `gh_grep` to search code examples from GitHub.
|
||||
```
|
||||
|
||||
`enabled` を `false` に設定してサーバーを無効にすることもできます。これは、サーバーを構成から削除せずに一時的に無効にする場合に便利です。
|
||||
|
||||
---
|
||||
@@ -66,7 +534,7 @@ MCP サーバーは、`mcp` の下の [OpenCode Config](https://opencode.ai/docs
|
||||
|
||||
---
|
||||
|
||||
## Local
|
||||
## ローカル
|
||||
|
||||
MCP オブジェクト内の `type` から `"local"` を使用してローカル MCP サーバーを追加します。
|
||||
|
||||
@@ -265,7 +733,7 @@ opencode mcp logout my-oauth-server
|
||||
|
||||
#### OAuth オプション
|
||||
|
||||
| Option | Type | Description |
|
||||
| オプション | タイプ | 説明 |
|
||||
| -------------- | --------------- | -------------------------------------------------------------------------------- |
|
||||
| `oauth` | Object \| false | OAuth config object, or `false` to disable OAuth auto-detection. |
|
||||
| `clientId` | String | OAuth client ID. If not provided, dynamic client registration will be attempted. |
|
||||
|
||||
@@ -3,7 +3,7 @@ title: モデル
|
||||
description: LLM プロバイダーとモデルを構成します。
|
||||
---
|
||||
|
||||
OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models.dev) を使用して **75 以上の LLM プロバイダー** をサポートし、ローカル モデルの実行をサポートします。
|
||||
OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models.dev) を使用して **75 以上の LLM プロバイダー** をサポートし、ローカルモデルの実行をサポートします。
|
||||
|
||||
---
|
||||
|
||||
@@ -15,7 +15,7 @@ OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models
|
||||
|
||||
---
|
||||
|
||||
## モデルを選択してください
|
||||
## モデルの選択
|
||||
|
||||
プロバイダーを構成したら、次のように入力して必要なモデルを選択できます。
|
||||
|
||||
@@ -25,7 +25,7 @@ OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models
|
||||
|
||||
---
|
||||
|
||||
## 推奨機種
|
||||
## 推奨モデル
|
||||
|
||||
たくさんのモデルがあり、毎週のように新しいモデルが登場します。
|
||||
|
||||
@@ -45,10 +45,9 @@ OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models
|
||||
|
||||
---
|
||||
|
||||
## デフォルトを設定する
|
||||
## デフォルトの設定
|
||||
|
||||
これらのいずれかをデフォルトのモデルとして設定するには、`model` キーを
|
||||
OpenCodeの設定。
|
||||
これらのいずれかをデフォルトのモデルとして設定するには、`model` キーを OpenCode の設定に追加します。
|
||||
|
||||
```json title="opencode.json" {3}
|
||||
{
|
||||
@@ -63,7 +62,7 @@ OpenCodeの設定。
|
||||
|
||||
---
|
||||
|
||||
## モデルの構成
|
||||
## モデルの設定
|
||||
|
||||
config を通じてモデルのオプションをグローバルに設定できます。
|
||||
|
||||
@@ -100,11 +99,11 @@ config を通じてモデルのオプションをグローバルに設定でき
|
||||
```
|
||||
|
||||
ここでは、2 つの組み込みモデル (`gpt-5` プロバイダー経由でアクセスする場合は `openai`、`claude-sonnet-4-20250514` プロバイダー経由でアクセスする場合は `anthropic`) のグローバル設定を構成しています。
|
||||
組み込みプロバイダーとモデル名は、[Models.dev](https://models.dev).
|
||||
組み込みプロバイダーとモデル名は、[Models.dev](https://models.dev) で確認できます。
|
||||
|
||||
使用しているエージェントに対してこれらのオプションを構成することもできます。ここでエージェント設定はグローバル オプションをオーバーライドします。 [詳細はこちら](/docs/agents/#additional)。
|
||||
使用しているエージェントに対してこれらのオプションを構成することもできます。ここでエージェント設定はグローバルオプションをオーバーライドします。 [詳細はこちら](/docs/agents/#additional)。
|
||||
|
||||
組み込みバリアントを拡張するカスタム バリアントを定義することもできます。バリアントを使用すると、重複したエントリを作成せずに、同じモデルに対して異なる設定を構成できます。
|
||||
組み込みバリアントを拡張するカスタムバリアントを定義することもできます。バリアントを使用すると、重複したエントリを作成せずに、同じモデルに対して異なる設定を構成できます。
|
||||
|
||||
```jsonc title="opencode.jsonc" {6-21}
|
||||
{
|
||||
@@ -134,7 +133,7 @@ config を通じてモデルのオプションをグローバルに設定でき
|
||||
|
||||
---
|
||||
|
||||
## バリエーション
|
||||
## バリアント
|
||||
|
||||
多くのモデルは、異なる構成の複数のバリアントをサポートしています。 OpenCode には、一般的なプロバイダーのデフォルトのバリアントが組み込まれています。
|
||||
|
||||
@@ -194,7 +193,7 @@ OpenCode には、多くのプロバイダーのデフォルトのバリアン
|
||||
}
|
||||
```
|
||||
|
||||
### サイクルのバリエーション
|
||||
### バリアントの切り替え
|
||||
|
||||
キーバインド `variant_cycle` を使用すると、バリアントをすばやく切り替えることができます。 [詳細はこちら](/docs/keybinds)。
|
||||
|
||||
@@ -204,7 +203,7 @@ OpenCode には、多くのプロバイダーのデフォルトのバリアン
|
||||
|
||||
OpenCode が起動すると、次の優先順位でモデルがチェックされます。
|
||||
|
||||
1. `--model` または `-m` コマンド ライン フラグ。形式は構成ファイルと同じです: `provider_id/model_id`。
|
||||
1. `--model` または `-m` コマンドラインフラグ。形式は構成ファイルと同じです: `provider_id/model_id`。
|
||||
|
||||
2. OpenCode 構成内のモデルのリスト。
|
||||
|
||||
@@ -219,4 +218,4 @@ OpenCode が起動すると、次の優先順位でモデルがチェックさ
|
||||
|
||||
3. 最後に使用されたモデル。
|
||||
|
||||
4. 内部優先を使用した最初のモデル。
|
||||
4. 内部優先順位に基づく最初のモデル。
|
||||
|
||||
@@ -4,58 +4,58 @@ description: さまざまなユースケースに応じたさまざまなモー
|
||||
---
|
||||
|
||||
:::caution
|
||||
モードは、opencode config の `agent` オプションを通じて設定されるようになりました。の
|
||||
モードは、OpenCode 設定の `agent` オプションを通じて設定されるようになりました。
|
||||
`mode` オプションは非推奨になりました。 [詳細はこちら](/docs/agents)。
|
||||
:::
|
||||
Modes のモードを使用すると、さまざまなユースケースに合わせて動作、ツール、プロンプトをカスタマイズできます。
|
||||
モードを使用すると、さまざまなユースケースに合わせて動作、ツール、プロンプトをカスタマイズできます。
|
||||
|
||||
**ビルド** と **プラン** という 2 つの組み込みモードが付属しています。カスタマイズできます
|
||||
これらを使用するか、opencode config を通じて独自の設定を行います。
|
||||
**Build** と **Plan** という 2 つの組み込みモードが付属しています。カスタマイズできます
|
||||
これらを使用するか、OpenCode 設定を通じて独自の設定を行います。
|
||||
|
||||
セッション中にモードを切り替えることも、構成ファイルでモードを構成することもできます。
|
||||
セッション中にモードを切り替えることも、設定ファイルでモードを構成することもできます。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
opencode には 2 つの組み込みモードが付属しています。
|
||||
OpenCode には 2 つの組み込みモードが付属しています。
|
||||
|
||||
---
|
||||
|
||||
### Build
|
||||
|
||||
ビルドは、すべてのツールが有効になっている **デフォルト** モードです。これは、ファイル操作やシステム コマンドへのフル アクセスが必要な開発作業の標準モードです。
|
||||
Build は、すべてのツールが有効になっている **デフォルト** モードです。これは、ファイル操作やシステムコマンドへのフルアクセスが必要な開発作業の標準モードです。
|
||||
|
||||
---
|
||||
|
||||
### Plan
|
||||
|
||||
計画と分析のために設計された制限付きモード。プラン モードでは、次のツールはデフォルトで無効になっています。
|
||||
計画と分析のために設計された制限付きモード。Plan モードでは、次のツールはデフォルトで無効になっています。
|
||||
|
||||
- `write` - 新しいファイルを作成できません
|
||||
- `edit` - 計画自体の詳細を示す `.opencode/plans/*.md` にあるファイルを除き、既存のファイルを変更できません
|
||||
- `patch` - パッチを適用できません
|
||||
- `bash` - shell コマンドを実行できません
|
||||
- `bash` - シェルコマンドを実行できません
|
||||
|
||||
このモードは、コードベースに実際の変更を加えずに、AI にコードを分析させたり、変更を提案したり、計画を作成させたい場合に便利です。
|
||||
|
||||
---
|
||||
|
||||
## スイッチング
|
||||
## 切り替え
|
||||
|
||||
セッション中に _Tab_ キーを使用してモードを切り替えることができます。または、設定された `switch_mode` キーバインド。
|
||||
|
||||
参照: [コードのフォーマット構成については、Formatters](/docs/formatters)。
|
||||
参照: [コードのフォーマット設定については、Formatters](/docs/formatters)。
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
組み込みモードをカスタマイズしたり、構成を通じて独自のモードを作成したりできます。モードは次の 2 つの方法で設定できます。
|
||||
|
||||
### JSON構成
|
||||
### JSON 設定
|
||||
|
||||
`opencode.json` 構成ファイルでモードを構成します。
|
||||
`opencode.json` 設定ファイルでモードを構成します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -82,7 +82,7 @@ opencode には 2 つの組み込みモードが付属しています。
|
||||
}
|
||||
```
|
||||
|
||||
### Markdown構成
|
||||
### Markdown 設定
|
||||
|
||||
Markdown ファイルを使用してモードを定義することもできます。それらを次の場所に置きます。
|
||||
|
||||
@@ -111,13 +111,13 @@ Provide constructive feedback without making direct changes.
|
||||
|
||||
Markdown ファイル名はモード名になります (例: `review.md` は `review` モードを作成します)。
|
||||
|
||||
これらの構成オプションを詳しく見てみましょう。
|
||||
これらの設定オプションを詳しく見てみましょう。
|
||||
|
||||
---
|
||||
|
||||
### モデル
|
||||
|
||||
`model` 設定を使用して、このモードのデフォルト モデルをオーバーライドします。さまざまなタスクに最適化されたさまざまなモデルを使用する場合に役立ちます。たとえば、計画にはより高速なモデルを、実装にはより有能なモデルを使用します。
|
||||
`model` 設定を使用して、このモードのデフォルトモデルをオーバーライドします。さまざまなタスクに最適化されたさまざまなモデルを使用する場合に役立ちます。たとえば、計画にはより高速なモデルを、実装にはより有能なモデルを使用します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -133,7 +133,7 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
|
||||
### 温度
|
||||
|
||||
`temperature` 構成を使用して、AI の応答のランダム性と創造性を制御します。値が低いほど、応答はより集中的かつ決定的になりますが、値が高いほど、創造性と変動性が高まります。
|
||||
`temperature` 設定を使用して、AI の応答のランダム性と創造性を制御します。値が低いほど、応答はより集中的かつ決定的になりますが、値が高いほど、創造性と変動性が高まります。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -172,13 +172,13 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
}
|
||||
```
|
||||
|
||||
温度が指定されていない場合、opencode はモデル固有のデフォルトを使用します (通常、ほとんどのモデルでは 0、Qwen モデルでは 0.55)。
|
||||
温度が指定されていない場合、OpenCode はモデル固有のデフォルトを使用します (通常、ほとんどのモデルでは 0、Qwen モデルでは 0.55)。
|
||||
|
||||
---
|
||||
|
||||
### プロンプト
|
||||
|
||||
`prompt` 構成を使用して、このモードのカスタム システム プロンプト ファイルを指定します。プロンプト ファイルには、モードの目的に固有の指示が含まれている必要があります。
|
||||
`prompt` 設定を使用して、このモードのカスタムシステムプロンプトファイルを指定します。プロンプトファイルには、モードの目的に固有の指示が含まれている必要があります。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -190,8 +190,7 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
}
|
||||
```
|
||||
|
||||
このパスは、構成ファイルが配置されている場所に対する相対パスです。したがって、これは次の場合に機能します
|
||||
グローバルなopencode構成とプロジェクト固有の構成の両方。
|
||||
このパスは、設定ファイルが配置されている場所に対する相対パスです。したがって、これはグローバルな OpenCode 設定とプロジェクト固有の設定の両方で機能します。
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +225,7 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
|
||||
| ツール | 説明 |
|
||||
| ----------- | ------------------------------ |
|
||||
| `bash` | shell コマンドを実行する |
|
||||
| `bash` | シェルコマンドを実行する |
|
||||
| `edit` | 既存のファイルを変更する |
|
||||
| `write` | 新しいファイルを作成する |
|
||||
| `read` | ファイルの内容を読み取る |
|
||||
@@ -242,9 +241,9 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
|
||||
## カスタムモード
|
||||
|
||||
構成に追加することで、独自のカスタム モードを作成できます。両方のアプローチを使用した例を次に示します。
|
||||
構成に追加することで、独自のカスタムモードを作成できます。両方のアプローチを使用した例を次に示します。
|
||||
|
||||
### JSON設定の使用
|
||||
### JSON 設定の使用
|
||||
|
||||
```json title="opencode.json" {4-14}
|
||||
{
|
||||
@@ -267,7 +266,7 @@ Markdown ファイル名はモード名になります (例: `review.md` は `re
|
||||
|
||||
### Markdown ファイルの使用
|
||||
|
||||
モード ファイルをプロジェクト固有モードの場合は `.opencode/modes/` に、グローバル モードの場合は `~/.config/opencode/modes/` に作成します。
|
||||
モードファイルをプロジェクト固有モードの場合は `.opencode/modes/` に、グローバルモードの場合は `~/.config/opencode/modes/` に作成します。
|
||||
|
||||
```markdown title=".opencode/modes/debug.md"
|
||||
---
|
||||
@@ -321,10 +320,10 @@ Priorities:
|
||||
|
||||
さまざまなモードの一般的な使用例をいくつか示します。
|
||||
|
||||
- **ビルド モード**: すべてのツールを有効にした完全な開発作業
|
||||
- **ビルドモード**: すべてのツールを有効にした完全な開発作業
|
||||
- **計画モード**: 変更を加えずに分析および計画を立てる
|
||||
- **レビュー モード**: 読み取り専用アクセスとドキュメント ツールによるコード レビュー
|
||||
- **デバッグ モード**: bash および読み取りツールを有効にして調査に重点を置きます
|
||||
- **ドキュメント モード**: ファイル操作を使用してドキュメントを作成しますが、システム コマンドは使用しません
|
||||
- **レビューモード**: 読み取り専用アクセスとドキュメントツールによるコードレビュー
|
||||
- **デバッグモード**: bash および読み取りツールを有効にして調査に重点を置きます
|
||||
- **ドキュメントモード**: ファイル操作を使用してドキュメントを作成しますが、システムコマンドは使用しません
|
||||
|
||||
また、さまざまなユースケースにさまざまなモデルが適していることがわかるかもしれません。
|
||||
|
||||
@@ -3,7 +3,7 @@ title: ネットワーク
|
||||
description: プロキシとカスタム証明書を構成します。
|
||||
---
|
||||
|
||||
OpenCode は、エンタープライズ ネットワーク環境の標準プロキシ環境変数とカスタム証明書をサポートしています。
|
||||
OpenCode は、エンタープライズネットワーク環境の標準プロキシ環境変数とカスタム証明書をサポートしています。
|
||||
|
||||
---
|
||||
|
||||
@@ -23,15 +23,15 @@ export NO_PROXY=localhost,127.0.0.1
|
||||
```
|
||||
|
||||
:::caution
|
||||
TUI はローカル HTTP サーバーと通信します。ルーティング ループを防ぐには、この接続のプロキシをバイパスする必要があります。
|
||||
TUI はローカル HTTP サーバーと通信します。ルーティングループを防ぐには、この接続のプロキシをバイパスする必要があります。
|
||||
:::
|
||||
[CLI flags](/docs/cli#run) を使用して、サーバーのポートとホスト名を構成できます。
|
||||
[CLI フラグ](/docs/cli#run) を使用して、サーバーのポートとホスト名を構成できます。
|
||||
|
||||
---
|
||||
|
||||
### 認証する
|
||||
### 認証
|
||||
|
||||
プロキシで基本認証が必要な場合は、URL に資格情報を含めます。
|
||||
プロキシで基本認証が必要な場合は、URL に認証情報を含めます。
|
||||
|
||||
```bash
|
||||
export HTTPS_PROXY=http://username:password@proxy.example.com:8080
|
||||
|
||||
@@ -3,9 +3,9 @@ title: 権限
|
||||
description: どのアクションの実行に承認が必要かを制御します。
|
||||
---
|
||||
|
||||
OpenCode は `permission` 構成を使用して、特定のアクションを自動的に実行するか、プロンプトを表示するか、ブロックするかを決定します。
|
||||
OpenCode は `permission` 設定を使用して、特定のアクションを自動的に実行するか、プロンプトを表示するか、ブロックするかを決定します。
|
||||
|
||||
`v1.1.1` の時点で、従来の `tools` ブール値設定は非推奨となり、`permission` にマージされました。古い `tools` 構成は、下位互換性のために引き続きサポートされています。
|
||||
`v1.1.1` 現在、従来の `tools` ブール値設定は非推奨となり、`permission` にマージされました。古い `tools` 設定は、下位互換性のために引き続きサポートされています。
|
||||
|
||||
---
|
||||
|
||||
@@ -19,7 +19,7 @@ OpenCode は `permission` 構成を使用して、特定のアクションを自
|
||||
|
||||
---
|
||||
|
||||
## 構成
|
||||
## 設定
|
||||
|
||||
権限をグローバルに (`*` を使用して) 設定し、特定のツールをオーバーライドできます。
|
||||
|
||||
@@ -68,19 +68,19 @@ OpenCode は `permission` 構成を使用して、特定のアクションを自
|
||||
}
|
||||
```
|
||||
|
||||
ルールはパターン マッチによって評価され、**最後に一致したルールが優先されます**。一般的なパターンは、キャッチオール `"*"` ルールを最初に置き、その後により具体的なルールを置くことです。
|
||||
ルールはパターンマッチによって評価され、**最後に一致したルールが優先されます**。一般的なパターンは、キャッチオール `"*"` ルールを最初に置き、その後により具体的なルールを置くことです。
|
||||
|
||||
### ワイルドカード
|
||||
|
||||
許可パターンでは、単純なワイルドカード マッチングを使用します。
|
||||
許可パターンでは、単純なワイルドカードマッチングを使用します。
|
||||
|
||||
- `*` は 0 個以上の任意の文字と一致します
|
||||
- `?` は 1 つの文字に正確に一致します
|
||||
- 他のすべての文字は文字通り一致します
|
||||
|
||||
### ホームディレクトリの拡張
|
||||
### ホームディレクトリの展開
|
||||
|
||||
パターンの先頭で `~` または `$HOME` を使用して、ホーム ディレクトリを参照できます。これは、[`external_directory`](#external-directories) ルールに特に役立ちます。
|
||||
パターンの先頭で `~` または `$HOME` を使用して、ホームディレクトリを参照できます。これは、[`external_directory`](#external-directories) ルールに特に役立ちます。
|
||||
|
||||
- `~/projects/*` -> `/Users/username/projects/*`
|
||||
- `$HOME/projects/*` -> `/Users/username/projects/*`
|
||||
@@ -90,7 +90,7 @@ OpenCode は `permission` 構成を使用して、特定のアクションを自
|
||||
|
||||
`external_directory` を使用して、OpenCode が開始された作業ディレクトリの外部のパスに触れるツール呼び出しを許可します。これは、パスを入力として受け取るすべてのツール (`read`、`edit`、`list`、`glob`、`grep`、および多くの `bash` コマンドなど) に適用されます。
|
||||
|
||||
ホーム拡張 (`~/...` など) は、パターンの記述方法にのみ影響します。外部パスは現在のワークスペースの一部にはならないため、作業ディレクトリの外部のパスも `external_directory` 経由で許可する必要があります。
|
||||
ホーム展開 (`~/...` など) は、パターンの記述方法にのみ影響します。外部パスは現在のワークスペースの一部にはならないため、作業ディレクトリの外部のパスも `external_directory` 経由で許可する必要があります。
|
||||
|
||||
たとえば、これにより、`~/projects/personal/` の下にあるすべてのものへのアクセスが許可されます。
|
||||
|
||||
@@ -127,14 +127,14 @@ OpenCode は `permission` 構成を使用して、特定のアクションを自
|
||||
|
||||
## 利用可能な権限
|
||||
|
||||
OpenCode のアクセス許可は、ツール名に加えて、いくつかの安全対策によってキー化されます。
|
||||
OpenCode の権限は、ツール名に加えて、いくつかの安全対策によってキー化されます。
|
||||
|
||||
- `read` — ファイルの読み取り (ファイルパスと一致)
|
||||
- `edit` — すべてのファイル変更 (`edit`、`write`、`patch`、`multiedit` をカバー)
|
||||
- `glob` — ファイルのグロビング (グロブパターンと一致)
|
||||
- `grep` — コンテンツ検索 (正規表現パターンと一致)
|
||||
- `list` — ディレクトリ内のファイルのリスト (ディレクトリ パスと一致)
|
||||
- `bash` — shell コマンドの実行 (`git status --porcelain` などの解析されたコマンドと一致します)
|
||||
- `list` — ディレクトリ内のファイルのリスト (ディレクトリパスと一致)
|
||||
- `bash` — シェルコマンドの実行 (`git status --porcelain` などの解析されたコマンドと一致します)
|
||||
- `task` — サブエージェントの起動 (サブエージェントのタイプと一致)
|
||||
- `skill` — スキルをロードしています(スキル名と一致します)
|
||||
- `lsp` — LSP クエリの実行 (現在は非細分性)
|
||||
@@ -169,7 +169,7 @@ OpenCode のアクセス許可は、ツール名に加えて、いくつかの
|
||||
|
||||
---
|
||||
|
||||
## 「尋ねる」ということ
|
||||
## 承認の要求
|
||||
|
||||
OpenCode が承認を求めるプロンプトを表示すると、UI は 3 つの結果を提供します。
|
||||
|
||||
@@ -177,16 +177,63 @@ OpenCode が承認を求めるプロンプトを表示すると、UI は 3 つ
|
||||
- `always` — 提案されたパターンに一致する今後のリクエストを承認します(現在の OpenCode セッションの残りの部分)
|
||||
- `reject` — リクエストを拒否します
|
||||
|
||||
`always` が承認するパターンのセットは、ツールによって提供されます (たとえば、bash の承認では通常、`git status*` のような安全なコマンド プレフィックスがホワイトリストに登録されます)。
|
||||
`always` が承認するパターンのセットは、ツールによって提供されます (たとえば、bash の承認では通常、`git status*` のような安全なコマンドプレフィックスがホワイトリストに登録されます)。
|
||||
|
||||
---
|
||||
|
||||
## エージェント
|
||||
|
||||
エージェントごとに権限をオーバーライドできます。エージェントの権限はグローバル設定とマージされ、エージェント ルールが優先されます。 [エージェントの権限について詳しくは、](/docs/agents#permissions) をご覧ください。
|
||||
エージェントごとに権限をオーバーライドできます。エージェントの権限はグローバル設定とマージされ、エージェントルールが優先されます。 [エージェントの権限について詳しくは、](/docs/agents#permissions) をご覧ください。
|
||||
|
||||
:::note
|
||||
パターン マッチングの詳細な例については、上記の[粒度ルール (オブジェクト構文)](#granular-rules-object-syntax)セクションを参照してください。
|
||||
パターンマッチングの詳細な例については、上記の[詳細なルール (オブジェクト構文)](#detailed-rules-object-syntax)セクションを参照してください。
|
||||
:::
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"permission": {
|
||||
"bash": {
|
||||
"*": "ask",
|
||||
"git *": "allow",
|
||||
"git commit *": "deny",
|
||||
"git push *": "deny",
|
||||
"grep *": "allow"
|
||||
}
|
||||
},
|
||||
"agent": {
|
||||
"build": {
|
||||
"permission": {
|
||||
"bash": {
|
||||
"*": "ask",
|
||||
"git *": "allow",
|
||||
"git commit *": "ask",
|
||||
"git push *": "deny",
|
||||
"grep *": "allow"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Markdown でエージェントの権限を構成することもできます。
|
||||
|
||||
```markdown title="~/.config/opencode/agents/review.md"
|
||||
---
|
||||
description: Code review without edits
|
||||
mode: subagent
|
||||
permission:
|
||||
edit: deny
|
||||
bash: ask
|
||||
webfetch: deny
|
||||
---
|
||||
|
||||
Only analyze code and suggest changes.
|
||||
```
|
||||
|
||||
:::tip
|
||||
引数のあるコマンドにはパターンマッチングを使用します。 `"grep *"` は `grep pattern file.txt` を許可しますが、`"grep"` だけではブロックされます。 `git status` のようなコマンドはデフォルトの動作で機能しますが、引数を渡すときに明示的な許可 (`"git status *"` など) が必要です。
|
||||
:::
|
||||
|
||||
```json title="opencode.json"
|
||||
|
||||
@@ -9,7 +9,7 @@ description: OpenCode を拡張する独自のプラグインを作成します
|
||||
|
||||
---
|
||||
|
||||
## プラグインを使用する
|
||||
## プラグインの使用
|
||||
|
||||
プラグインをロードするには 2 つの方法があります。
|
||||
|
||||
@@ -17,7 +17,7 @@ description: OpenCode を拡張する独自のプラグインを作成します
|
||||
|
||||
### ローカルファイルから
|
||||
|
||||
JavaScript または TypeScript ファイルをプラグイン ディレクトリに配置します。
|
||||
JavaScript または TypeScript ファイルをプラグインディレクトリに配置します。
|
||||
|
||||
- `.opencode/plugins/` - プロジェクトレベルのプラグイン
|
||||
- `~/.config/opencode/plugins/` - グローバルプラグイン
|
||||
@@ -26,9 +26,9 @@ JavaScript または TypeScript ファイルをプラグイン ディレクト
|
||||
|
||||
---
|
||||
|
||||
### npmから
|
||||
### npm から
|
||||
|
||||
構成ファイルで npm パッケージを指定します。
|
||||
設定ファイルで npm パッケージを指定します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -43,11 +43,11 @@ JavaScript または TypeScript ファイルをプラグイン ディレクト
|
||||
|
||||
---
|
||||
|
||||
### プラグインのインストール方法
|
||||
### プラグインのインストール
|
||||
|
||||
**npm プラグイン** は、起動時に Bun を使用して自動的にインストールされます。パッケージとその依存関係は `~/.cache/opencode/node_modules/` にキャッシュされます。
|
||||
|
||||
**ローカル プラグイン**は、プラグイン ディレクトリから直接ロードされます。外部パッケージを使用するには、config ディレクトリ内に `package.json` を作成するか ([Dependency](#dependencies) を参照)、プラグインを npm に公開して [config](/docs/config#plugins) に追加する] 必要があります。
|
||||
**ローカルプラグイン**は、プラグインディレクトリから直接ロードされます。外部パッケージを使用するには、config ディレクトリ内に `package.json` を作成するか ([Dependency](#dependencies) を参照)、プラグインを npm に公開して [config](/docs/config#plugins) に追加する必要があります。
|
||||
|
||||
---
|
||||
|
||||
@@ -55,25 +55,25 @@ JavaScript または TypeScript ファイルをプラグイン ディレクト
|
||||
|
||||
プラグインはすべてのソースからロードされ、すべてのフックが順番に実行されます。ロード順序は次のとおりです。
|
||||
|
||||
1. グローバル構成 (`~/.config/opencode/opencode.json`)
|
||||
2. プロジェクト構成 (`opencode.json`)
|
||||
1. グローバル設定 (`~/.config/opencode/opencode.json`)
|
||||
2. プロジェクト設定 (`opencode.json`)
|
||||
3. グローバルプラグインディレクトリ (`~/.config/opencode/plugins/`)
|
||||
4. プロジェクトプラグインディレクトリ (`.opencode/plugins/`)
|
||||
|
||||
同じ名前とバージョンを持つ重複した npm パッケージは 1 回ロードされます。ただし、似た名前のローカル プラグインと npm プラグインは両方とも別々にロードされます。
|
||||
同じ名前とバージョンを持つ重複した npm パッケージは 1 回ロードされます。ただし、似た名前のローカルプラグインと npm プラグインは両方とも別々にロードされます。
|
||||
|
||||
---
|
||||
|
||||
## プラグインを作成する
|
||||
|
||||
プラグインは、1 つ以上のプラグインをエクスポートする **JavaScript/TypeScript モジュール**です
|
||||
機能。各関数はコンテキスト オブジェクトを受け取り、フック オブジェクトを返します。
|
||||
プラグインは、1 つ以上のプラグインをエクスポートする **JavaScript/TypeScript モジュール**です。
|
||||
各関数はコンテキストオブジェクトを受け取り、フックオブジェクトを返します。
|
||||
|
||||
---
|
||||
|
||||
### 依存関係
|
||||
|
||||
ローカル プラグインとカスタム ツールは外部の npm パッケージを使用できます。必要な依存関係を含む `package.json` を config ディレクトリに追加します。
|
||||
ローカルプラグインとカスタムツールは外部の npm パッケージを使用できます。必要な依存関係を含む `package.json` を config ディレクトリに追加します。
|
||||
|
||||
```json title=".opencode/package.json"
|
||||
{
|
||||
@@ -118,14 +118,14 @@ export const MyPlugin = async ({ project, client, $, directory, worktree }) => {
|
||||
- `project`: 現在のプロジェクト情報。
|
||||
- `directory`: 現在の作業ディレクトリ。
|
||||
- `worktree`: git ワークツリーのパス。
|
||||
- `client`: AI と対話するためのopencode SDK クライアント。
|
||||
- `$`: Bun の [コマンドを実行するためのshell API](https://bun.com/docs/runtime/shell)。
|
||||
- `client`: AI と対話するための OpenCode SDK クライアント。
|
||||
- `$`: Bun の [コマンドを実行するためのシェル API](https://bun.com/docs/runtime/shell)。
|
||||
|
||||
---
|
||||
|
||||
### TypeScript のサポート
|
||||
|
||||
TypeScript プラグインの場合、プラグイン パッケージから型をインポートできます。
|
||||
TypeScript プラグインの場合、プラグインパッケージから型をインポートできます。
|
||||
|
||||
```ts title="my-plugin.ts" {1}
|
||||
import type { Plugin } from "@opencode-ai/plugin"
|
||||
@@ -188,11 +188,11 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
|
||||
- `session.status`
|
||||
- `session.updated`
|
||||
|
||||
#### Todoイベント
|
||||
#### ToDo イベント
|
||||
|
||||
- `todo.updated`
|
||||
|
||||
#### shellイベント
|
||||
#### シェルイベント
|
||||
|
||||
- `shell.env`
|
||||
|
||||
@@ -211,7 +211,7 @@ export const MyPlugin: Plugin = async ({ project, client, $, directory, worktree
|
||||
|
||||
## 例
|
||||
|
||||
ここでは、opencodeを拡張するために使用できるプラグインの例をいくつか示します。
|
||||
ここでは、OpenCode を拡張するために使用できるプラグインの例をいくつか示します。
|
||||
|
||||
---
|
||||
|
||||
@@ -235,14 +235,14 @@ export const NotificationPlugin = async ({ project, client, $, directory, worktr
|
||||
macOS 上で AppleScript を実行するために `osascript` を使用しています。ここでは通知を送信するために使用しています。
|
||||
|
||||
:::note
|
||||
OpenCode デスクトップ アプリを使用している場合は、応答の準備ができたとき、またはセッション エラーが発生したときにシステム通知を自動的に送信できます。
|
||||
OpenCode デスクトップアプリを使用している場合は、応答の準備ができたとき、またはセッションエラーが発生したときにシステム通知を自動的に送信できます。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
### .env 保護
|
||||
### .env の保護
|
||||
|
||||
opencode が `.env` ファイルを読み取らないようにします。
|
||||
OpenCode が `.env` ファイルを読み取らないようにします。
|
||||
|
||||
```javascript title=".opencode/plugins/env-protection.js"
|
||||
export const EnvProtection = async ({ project, client, $, directory, worktree }) => {
|
||||
@@ -260,7 +260,7 @@ export const EnvProtection = async ({ project, client, $, directory, worktree })
|
||||
|
||||
### 環境変数を挿入する
|
||||
|
||||
すべてのshell 実行 (AI ツールとユーザーterminal) に環境変数を挿入します。
|
||||
すべてのシェル実行 (AI ツールとユーザーターミナル) に環境変数を挿入します。
|
||||
|
||||
```javascript title=".opencode/plugins/inject-env.js"
|
||||
export const InjectEnvPlugin = async () => {
|
||||
@@ -277,7 +277,7 @@ export const InjectEnvPlugin = async () => {
|
||||
|
||||
### カスタムツール
|
||||
|
||||
プラグインはopencodeにカスタム ツールを追加することもできます。
|
||||
プラグインは OpenCode にカスタムツールを追加することもできます。
|
||||
|
||||
```ts title=".opencode/plugins/custom-tools.ts"
|
||||
import { type Plugin, tool } from "@opencode-ai/plugin"
|
||||
@@ -300,13 +300,13 @@ export const CustomToolsPlugin: Plugin = async (ctx) => {
|
||||
}
|
||||
```
|
||||
|
||||
`tool` ヘルパーは、opencode が呼び出すことができるカスタム ツールを作成します。 Zod スキーマ関数を受け取り、次のようなツール定義を返します。
|
||||
`tool` ヘルパーは、OpenCode が呼び出すことができるカスタムツールを作成します。 Zod スキーマ関数を受け取り、次のようなツール定義を返します。
|
||||
|
||||
- `description`: ツールの機能
|
||||
- `args`: ツールの引数の Zod スキーマ
|
||||
- `execute`: ツールが呼び出されたときに実行される関数
|
||||
|
||||
カスタム ツールは、組み込みツールと並行してopencodeに使用できます。
|
||||
カスタムツールは、組み込みツールと並行して OpenCode で使用できます。
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -6,23 +6,23 @@ description: OpenCode で LLM プロバイダーを使用する。
|
||||
import config from "../../../../config.mjs"
|
||||
export const console = config.console
|
||||
|
||||
OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models.dev) を使用して **75 以上の LLM プロバイダー** をサポートし、ローカル モデルの実行をサポートします。
|
||||
OpenCode は [AI SDK](https://ai-sdk.dev/) および [Models.dev](https://models.dev) を使用して **75 以上の LLM プロバイダー** をサポートし、ローカルモデルの実行をサポートします。
|
||||
|
||||
プロバイダーを追加するには、次のことを行う必要があります。
|
||||
|
||||
1. `/connect` コマンドを使用して、プロバイダーの API キーを追加します。
|
||||
2. OpenCode 構成でプロバイダーを構成します。
|
||||
2. OpenCode 設定でプロバイダーを構成します。
|
||||
|
||||
---
|
||||
|
||||
### 資格
|
||||
### 認証情報
|
||||
|
||||
`/connect` コマンドを使用してプロバイダーの API キーを追加すると、それらは保存されます
|
||||
`~/.local/share/opencode/auth.json`で。
|
||||
|
||||
---
|
||||
|
||||
### 構成
|
||||
### 設定
|
||||
|
||||
OpenCode の `provider` セクションを通じてプロバイダーをカスタマイズできます。
|
||||
config.
|
||||
@@ -31,7 +31,7 @@ config.
|
||||
|
||||
#### Base URL
|
||||
|
||||
`baseURL` オプションを設定することで、任意のプロバイダーのベース URL をカスタマイズできます。これは、プロキシ サービスまたはカスタム エンドポイントを使用する場合に便利です。
|
||||
`baseURL` オプションを設定することで、任意のプロバイダーのベース URL をカスタマイズできます。これは、プロキシサービスまたはカスタムエンドポイントを使用する場合に便利です。
|
||||
|
||||
```json title="opencode.json" {6}
|
||||
{
|
||||
@@ -57,7 +57,7 @@ OpenCode で適切に動作することがテストおよび検証されてい
|
||||
初めての方は、OpenCode Zen から始めることをお勧めします。
|
||||
:::
|
||||
|
||||
1. TUI で `/connect` コマンドを実行し、opencode を選択して、[opencode.ai/auth](https://opencode.ai/auth).
|
||||
1. TUI で `/connect` コマンドを実行し、opencode を選択して、[opencode.ai/auth](https://opencode.ai/auth) で認証します。
|
||||
|
||||
```txt
|
||||
/connect
|
||||
@@ -126,7 +126,7 @@ OpenCode で適切に動作することがテストおよび検証されてい
|
||||
|
||||
OpenCode で Amazon Bedrock を使用するには:
|
||||
|
||||
1. Amazon Bedrock コンソールの **モデル カタログ** に移動してリクエストします。
|
||||
1. Amazon Bedrock コンソールの **モデルカタログ** に移動してリクエストします。
|
||||
必要なモデルにアクセスします。
|
||||
|
||||
:::tip
|
||||
@@ -135,7 +135,7 @@ Amazon Bedrock で必要なモデルにアクセスできる必要がありま
|
||||
|
||||
2. **次のいずれかの方法を使用して認証を構成します**。
|
||||
|
||||
#### 環境変数 (クイック スタート)
|
||||
#### 環境変数 (クイックスタート)
|
||||
|
||||
opencode の実行中に次の環境変数のいずれかを設定します。
|
||||
|
||||
@@ -159,7 +159,7 @@ opencode の実行中に次の環境変数のいずれかを設定します。
|
||||
|
||||
#### 設定ファイル (推奨)
|
||||
|
||||
プロジェクト固有の構成または永続的な構成の場合は、`opencode.json` を使用します。
|
||||
プロジェクト固有の設定または永続的な設定の場合は、`opencode.json` を使用します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -179,10 +179,10 @@ opencode の実行中に次の環境変数のいずれかを設定します。
|
||||
|
||||
- `region` - AWS リージョン (例: `us-east-1`、`eu-west-1`)
|
||||
- `profile` - `~/.aws/credentials` からの AWS 名前付きプロファイル
|
||||
- `endpoint` - VPC エンドポイントのカスタム エンドポイント URL (汎用 `baseURL` オプションのエイリアス)
|
||||
- `endpoint` - VPC エンドポイントのカスタムエンドポイント URL (汎用 `baseURL` オプションのエイリアス)
|
||||
|
||||
:::tip
|
||||
構成ファイルのオプションは環境変数より優先されます。
|
||||
設定ファイルのオプションは環境変数より優先されます。
|
||||
:::
|
||||
|
||||
#### 上級: VPC エンドポイント
|
||||
@@ -210,17 +210,17 @@ Bedrock の VPC エンドポイントを使用している場合:
|
||||
|
||||
#### 認証方法
|
||||
|
||||
- **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**: IAM ユーザーを作成し、AWS コンソールでアクセス キーを生成します。
|
||||
- **`AWS_ACCESS_KEY_ID` / `AWS_SECRET_ACCESS_KEY`**: IAM ユーザーを作成し、AWS コンソールでアクセスキーを生成します。
|
||||
- **`AWS_PROFILE`**: `~/.aws/credentials` の名前付きプロファイルを使用します。最初に `aws configure --profile my-profile` または `aws sso login` を設定します
|
||||
- **`AWS_BEARER_TOKEN_BEDROCK`**: Amazon Bedrock コンソールから長期 API キーを生成します
|
||||
- **`AWS_WEB_IDENTITY_TOKEN_FILE` / `AWS_ROLE_ARN`**: EKS IRSA (サービス アカウントの IAM ロール) または OIDC フェデレーションを備えた他の Kubernetes 環境の場合。これらの環境変数は、サービス アカウント アノテーションを使用するときに Kubernetes によって自動的に挿入されます。
|
||||
- **`AWS_WEB_IDENTITY_TOKEN_FILE` / `AWS_ROLE_ARN`**: EKS IRSA (サービスアカウントの IAM ロール) または OIDC フェデレーションを備えた他の Kubernetes 環境の場合。これらの環境変数は、サービスアカウントアノテーションを使用するときに Kubernetes によって自動的に挿入されます。
|
||||
|
||||
#### 認証の優先順位
|
||||
|
||||
Amazon Bedrock は次の認証優先度を使用します。
|
||||
|
||||
1. **ベアラー トークン** - `AWS_BEARER_TOKEN_BEDROCK` 環境変数または `/connect` コマンドからのトークン
|
||||
2. **AWS 認証情報チェーン** - プロファイル、アクセス キー、共有認証情報、IAM ロール、Web ID トークン (EKS IRSA)、インスタンス メタデータ
|
||||
2. **AWS 認証情報チェーン** - プロファイル、アクセスキー、共有認証情報、IAM ロール、Web ID トークン (EKS IRSA)、インスタンスメタデータ
|
||||
|
||||
:::note
|
||||
ベアラー トークンが (`/connect` または `AWS_BEARER_TOKEN_BEDROCK` 経由で) 設定されると、設定されたプロファイルを含むすべての AWS 認証情報方法よりも優先されます。
|
||||
@@ -275,28 +275,28 @@ Amazon Bedrock は次の認証優先度を使用します。
|
||||
└
|
||||
```
|
||||
|
||||
3. これで、`/models` コマンドを使用すると、すべての人智モデルが利用できるようになります。
|
||||
3. これで、`/models` コマンドを使用すると、すべての Anthropic モデルが利用できるようになります。
|
||||
|
||||
```txt
|
||||
/models
|
||||
```
|
||||
|
||||
:::info
|
||||
OpenCode での Claude Pro/Max サブスクリプションの使用は、[Anthropic](https://anthropic.com).
|
||||
OpenCode での Claude Pro/Max サブスクリプションの使用は、[Anthropic](https://anthropic.com) によって正式に許可されていませんが、一般的に機能します。
|
||||
:::
|
||||
|
||||
##### APIキーの使用
|
||||
|
||||
Pro/Max サブスクリプションをお持ちでない場合は、[**API キーの作成**] を選択することもできます。また、ブラウザが開き、Anthropic にログインするよう求められ、terminal に貼り付けるコードが表示されます。
|
||||
Pro/Max サブスクリプションをお持ちでない場合は、[**API キーの作成**] を選択することもできます。また、ブラウザが開き、Anthropic にログインするよう求められ、ターミナルに貼り付けるコードが表示されます。
|
||||
|
||||
または、すでに API キーをお持ちの場合は、[**API キーを手動で入力**] を選択してterminal に貼り付けることができます。
|
||||
または、すでに API キーをお持ちの場合は、[**API キーを手動で入力**] を選択してターミナルに貼り付けることができます。
|
||||
|
||||
---
|
||||
|
||||
### Azure OpenAI
|
||||
|
||||
:::note
|
||||
「申し訳ありませんが、そのリクエストには対応できません」エラーが発生した場合は、Azure リソースのコンテンツ フィルターを **DefaultV2** から **Default** に変更してみてください。
|
||||
「申し訳ありませんが、そのリクエストには対応できません」エラーが発生した場合は、Azure リソースのコンテンツフィルターを **DefaultV2** から **Default** に変更してみてください。
|
||||
:::
|
||||
|
||||
1. [Azure portal](https://portal.azure.com/) に移動し、**Azure OpenAI** リソースを作成します。必要なものは次のとおりです。
|
||||
@@ -306,7 +306,7 @@ Pro/Max サブスクリプションをお持ちでない場合は、[**API キ
|
||||
2. [Azure AI Foundry](https://ai.azure.com/) に移動し、モデルをデプロイします。
|
||||
|
||||
:::note
|
||||
opencodeが正しく動作するには、デプロイメント名がモデル名と一致する必要があります。
|
||||
OpenCode が正しく動作するには、デプロイメント名がモデル名と一致する必要があります。
|
||||
:::
|
||||
|
||||
3. `/connect` コマンドを実行し、**Azure** を検索します。
|
||||
@@ -353,7 +353,7 @@ opencodeが正しく動作するには、デプロイメント名がモデル名
|
||||
2. [Azure AI Foundry](https://ai.azure.com/) に移動し、モデルをデプロイします。
|
||||
|
||||
:::note
|
||||
opencodeが正しく動作するには、デプロイメント名がモデル名と一致する必要があります。
|
||||
OpenCode が正しく動作するには、デプロイメント名がモデル名と一致する必要があります。
|
||||
:::
|
||||
|
||||
3. `/connect` コマンドを実行し、**Azure Cognitive Services** を検索します。
|
||||
@@ -485,7 +485,7 @@ Cloudflare AI Gatewayを使用すると、統合エンドポイントを通じ
|
||||
/models
|
||||
```
|
||||
|
||||
opencode構成を通じてモデルを追加することもできます。
|
||||
OpenCode 設定を通じてモデルを追加することもできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -586,7 +586,7 @@ opencode構成を通じてモデルを追加することもできます。
|
||||
|
||||
### Firmware
|
||||
|
||||
1. [ファームウェア ダッシュボード](https://app.firmware.ai/signup) に移動し、アカウントを作成し、API キーを生成します。
|
||||
1. [ファームウェアダッシュボード](https://app.firmware.ai/signup) に移動し、アカウントを作成し、API キーを生成します。
|
||||
|
||||
2. `/connect` コマンドを実行し、**ファームウェア**を検索します。
|
||||
|
||||
@@ -640,7 +640,7 @@ opencode構成を通じてモデルを追加することもできます。
|
||||
|
||||
### GitLab Duo
|
||||
|
||||
GitLab Duo は、GitLab の Anthropic プロキシを介したネイティブ ツール呼び出し機能を備えた AI を活用したエージェント チャットを提供します。
|
||||
GitLab Duo は、GitLab の Anthropic プロキシを介したネイティブツール呼び出し機能を備えた AI を活用したエージェントチャットを提供します。
|
||||
|
||||
1. `/connect` コマンドを実行し、GitLab を選択します。
|
||||
|
||||
@@ -668,7 +668,7 @@ GitLab Duo は、GitLab の Anthropic プロキシを介したネイティブ
|
||||
2. **新しいトークンを追加** をクリックします
|
||||
3. 名前: `OpenCode`、スコープ: `api`
|
||||
4. トークンをコピーします(`glpat-`で始まる)
|
||||
5. terminal に入力してください
|
||||
5. ターミナルに入力してください
|
||||
|
||||
6. `/models` コマンドを実行して、利用可能なモデルを確認します。
|
||||
|
||||
@@ -676,9 +676,7 @@ GitLab Duo は、GitLab の Anthropic プロキシを介したネイティブ
|
||||
/models
|
||||
```
|
||||
|
||||
````
|
||||
|
||||
3 つのクロードベースのモデルが利用可能です。
|
||||
3 つの Claude ベースのモデルが利用可能です。
|
||||
|
||||
- **duo-chat-haiku-4-5** (デフォルト) - 素早いタスクに対する素早い応答
|
||||
- **duo-chat-sonnet-4-5** - ほとんどのワークフローでバランスの取れたパフォーマンス
|
||||
@@ -686,24 +684,23 @@ GitLab Duo は、GitLab の Anthropic プロキシを介したネイティブ
|
||||
|
||||
:::note
|
||||
必要がない場合は、「GITLAB_TOKEN」環境変数を指定することもできます。
|
||||
トークンをopencode認証ストレージに保存します。
|
||||
トークンを OpenCode 認証ストレージに保存します。
|
||||
:::
|
||||
|
||||
##### 自己ホスト型 GitLab
|
||||
|
||||
:::note[コンプライアンスメモ]
|
||||
OpenCode は、セッション タイトルの生成などの一部の AI タスクに小規模なモデルを使用します。
|
||||
デフォルトでは、Zen によってホストされる gpt-5-nano を使用するように構成されています。 OpenCodeをロックするには
|
||||
OpenCode は、セッションタイトルの生成などの一部の AI タスクに小規模なモデルを使用します。
|
||||
デフォルトでは、Zen によってホストされる gpt-5-nano を使用するように構成されています。 OpenCode をロックするには
|
||||
自分の GitLab でホストされているインスタンスのみを使用するには、次の行を
|
||||
`opencode.json` ファイル。セッション共有を無効にすることもお勧めします。
|
||||
|
||||
```json
|
||||
{
|
||||
"$schema": "https://opencode.ai/config.json",
|
||||
"small_model": "gitlab/duo-chat-haiku-4-5",
|
||||
"share": "disabled"
|
||||
"small_model": "gitlab/duo-chat-haiku-4-5",
|
||||
"share": "disabled"
|
||||
}
|
||||
````
|
||||
```
|
||||
|
||||
:::
|
||||
|
||||
@@ -755,7 +752,7 @@ export GITLAB_OAUTH_CLIENT_ID=your_application_id_here
|
||||
|
||||
詳細については、[opencode-gitlab-auth](https://www.npmjs.com/package/@gitlab/opencode-gitlab-auth) ホームページ。
|
||||
|
||||
##### 構成
|
||||
##### 設定
|
||||
|
||||
`opencode.json` を通じてカスタマイズします。
|
||||
|
||||
@@ -778,7 +775,7 @@ export GITLAB_OAUTH_CLIENT_ID=your_application_id_here
|
||||
|
||||
##### GitLab API ツール (オプションですが強く推奨)
|
||||
|
||||
GitLab ツール (マージ リクエスト、問題、パイプライン、CI/CD など) にアクセスするには:
|
||||
GitLab ツール (マージリクエスト、問題、パイプライン、CI/CD など) にアクセスするには:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -793,13 +790,13 @@ GitLab ツール (マージ リクエスト、問題、パイプライン、CI/C
|
||||
|
||||
### GitHub Copilot
|
||||
|
||||
GitHub Copilot サブスクリプションをopencodeで使用するには:
|
||||
GitHub Copilot サブスクリプションを OpenCode で使用するには:
|
||||
|
||||
:::note
|
||||
一部のモデルでは [Pro+] が必要になる場合があります。
|
||||
subscription](https://github.com/features/copilot/plans) を使用します。
|
||||
|
||||
一部のモデルは、[GitHub Copilot settings](https://docs.github.com/en/copilot/how-tos/use-ai-models/configure-access-to-ai-models#setup-for-individual-use).
|
||||
一部のモデルは、[GitHub Copilot settings](https://docs.github.com/en/copilot/how-tos/use-ai-models/configure-access-to-ai-models#setup-for-individual-use) で構成する必要があります。
|
||||
:::
|
||||
|
||||
1. `/connect` コマンドを実行し、GitHub Copilot を検索します。
|
||||
@@ -817,6 +814,7 @@ subscription](https://github.com/features/copilot/plans) を使用します。
|
||||
│
|
||||
│ Enter code: 8F43-6FCF
|
||||
│
|
||||
│
|
||||
└ Waiting for authorization...
|
||||
```
|
||||
|
||||
@@ -843,7 +841,7 @@ Vertex AI API が有効になっている Google Cloud プロジェクトが必
|
||||
- `GOOGLE_CLOUD_PROJECT`: Google Cloud プロジェクト ID
|
||||
- `VERTEX_LOCATION` (オプション): Vertex AI の領域 (デフォルトは `global`)
|
||||
- 認証 (1 つ選択):
|
||||
- `GOOGLE_APPLICATION_CREDENTIALS`: サービス アカウントの JSON キー ファイルへのパス
|
||||
- `GOOGLE_APPLICATION_CREDENTIALS`: サービスアカウントの JSON キーファイルへのパス
|
||||
- gcloud CLI を使用して認証する: `gcloud auth application-default login`
|
||||
|
||||
opencode の実行中に設定します。
|
||||
@@ -861,7 +859,7 @@ opencode の実行中に設定します。
|
||||
```
|
||||
|
||||
:::tip
|
||||
`global` 領域は、追加コストなしで可用性を向上させ、エラーを削減します。データ常駐要件には、リージョン エンドポイント (`us-central1` など) を使用します。 [詳細はこちら](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints)
|
||||
`global` 領域は、追加コストなしで可用性を向上させ、エラーを削減します。データ常駐要件には、リージョンエンドポイント (`us-central1` など) を使用します。 [詳細はこちら](https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models#regional_and_global_endpoints)
|
||||
:::
|
||||
|
||||
3. `/models` コマンドを実行して、必要なモデルを選択します。
|
||||
@@ -901,7 +899,7 @@ opencode の実行中に設定します。
|
||||
|
||||
### Hugging Face
|
||||
|
||||
[ハグ顔推論プロバイダー ](https://huggingface.co/docs/inference-providers) は、17 を超えるプロバイダーがサポートするオープン モデルへのアクセスを提供します。
|
||||
[Hugging Face Inference Provider](https://huggingface.co/docs/inference-providers) は、17 を超えるプロバイダーがサポートするオープンモデルへのアクセスを提供します。
|
||||
|
||||
1. [Hugging Face settings](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained) に移動して、推論プロバイダーを呼び出す権限を持つトークンを作成します。
|
||||
|
||||
@@ -911,7 +909,7 @@ opencode の実行中に設定します。
|
||||
/connect
|
||||
```
|
||||
|
||||
3. ハグフェイストークンを入力してください。
|
||||
3. Hugging Face トークンを入力してください。
|
||||
|
||||
```txt
|
||||
┌ API key
|
||||
@@ -955,13 +953,13 @@ opencode の実行中に設定します。
|
||||
/models
|
||||
```
|
||||
|
||||
その他のプロバイダーや、キャッシュやレート制限などの高度な機能については、[Helicone ドキュメント ](https://docs.helicone.ai).
|
||||
その他のプロバイダーや、キャッシュやレート制限などの高度な機能については、[Helicone ドキュメント](https://docs.helicone.ai).
|
||||
|
||||
#### オプションの構成
|
||||
#### オプションの設定
|
||||
|
||||
opencodeを通じて自動的に構成されていない Helicone の機能またはモデルを見つけた場合は、いつでも自分で構成できます。
|
||||
OpenCode を通じて自動的に構成されていない Helicone の機能またはモデルを見つけた場合は、いつでも自分で構成できます。
|
||||
|
||||
これは [Helicone のモデル ディレクトリ ](https://helicone.ai/models) です。追加するモデルの ID を取得するためにこれが必要になります。
|
||||
これは [Helicone のモデルディレクトリ](https://helicone.ai/models) です。追加するモデルの ID を取得するためにこれが必要になります。
|
||||
|
||||
```jsonc title="~/.config/opencode/opencode.jsonc"
|
||||
{
|
||||
@@ -978,7 +976,7 @@ opencodeを通じて自動的に構成されていない Helicone の機能ま
|
||||
// Model ID (from Helicone's model directory page)
|
||||
"name": "GPT-4o", // Your own custom name for the model
|
||||
},
|
||||
"claude-sonnet-4-20250514": {
|
||||
"claude-sonnet-4-20250929": {
|
||||
"name": "Claude Sonnet 4",
|
||||
},
|
||||
},
|
||||
@@ -989,7 +987,7 @@ opencodeを通じて自動的に構成されていない Helicone の機能ま
|
||||
|
||||
#### カスタムヘッダー
|
||||
|
||||
Helicone は、キャッシュ、ユーザー追跡、セッション管理などの機能のカスタム ヘッダーをサポートしています。 `options.headers` を使用してプロバイダー構成に追加します。
|
||||
Helicone は、キャッシュ、ユーザー追跡、セッション管理などの機能のカスタムヘッダーをサポートしています。 `options.headers` を使用してプロバイダー設定に追加します。
|
||||
|
||||
```jsonc title="~/.config/opencode/opencode.jsonc"
|
||||
{
|
||||
@@ -1018,7 +1016,7 @@ Helicone の [Sessions](https://docs.helicone.ai/features/sessions) 機能を使
|
||||
npm install -g opencode-helicone-session
|
||||
```
|
||||
|
||||
それを構成に追加します。
|
||||
それを設定に追加します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -1026,16 +1024,16 @@ npm install -g opencode-helicone-session
|
||||
}
|
||||
```
|
||||
|
||||
プラグインは、リクエストに `Helicone-Session-Id` ヘッダーと `Helicone-Session-Name` ヘッダーを挿入します。 Helicone のセッション ページでは、OpenCode の各会話が個別のセッションとしてリストされています。
|
||||
プラグインは、リクエストに `Helicone-Session-Id` ヘッダーと `Helicone-Session-Name` ヘッダーを挿入します。 Helicone のセッションページでは、OpenCode の各会話が個別のセッションとしてリストされています。
|
||||
|
||||
##### 一般的なヘリコーンヘッダー
|
||||
|
||||
| ヘッダー | 説明 |
|
||||
| -------------------------- | ----------------------------------------------------------------------- |
|
||||
| `Helicone-Cache-Enabled` | 応答キャッシュを有効にする (`true`/`false`) |
|
||||
| `Helicone-User-Id` | ユーザーごとにメトリクスを追跡する |
|
||||
| `Helicone-Property-[Name]` | カスタム プロパティを追加します (例: `Helicone-Property-Environment`)。 |
|
||||
| `Helicone-Prompt-Id` | リクエストをプロンプト バージョンに関連付ける |
|
||||
| ヘッダー | 説明 |
|
||||
| -------------------------- | ---------------------------------------------------------------------- |
|
||||
| `Helicone-Cache-Enabled` | 応答キャッシュを有効にする (`true`/`false`) |
|
||||
| `Helicone-User-Id` | ユーザーごとにメトリクスを追跡する |
|
||||
| `Helicone-Property-[Name]` | カスタムプロパティを追加します (例: `Helicone-Property-Environment`)。 |
|
||||
| `Helicone-Prompt-Id` | リクエストをプロンプトバージョンに関連付ける |
|
||||
|
||||
利用可能なすべてのヘッダーについては、[Helicone Header Directory](https://docs.helicone.ai/helicone-headers/header-directory) を参照してください。
|
||||
|
||||
@@ -1043,7 +1041,7 @@ npm install -g opencode-helicone-session
|
||||
|
||||
### llama.cpp
|
||||
|
||||
[llama.cpp の s](https://github.com/ggml-org/llama.cpp) llama-server ユーティリティ] を通じて、ローカル モデルを使用するようにopencodeを構成できます。
|
||||
[llama.cpp の s](https://github.com/ggml-org/llama.cpp) llama-server ユーティリティ] を通じて、ローカルモデルを使用するように opencode を構成できます。
|
||||
|
||||
```json title="opencode.json" "llama.cpp" {5, 6, 8, 10-15}
|
||||
{
|
||||
@@ -1074,8 +1072,8 @@ npm install -g opencode-helicone-session
|
||||
- `llama.cpp` はカスタムプロバイダー ID です。これには任意の文字列を指定できます。
|
||||
- `npm` は、このプロバイダーに使用するパッケージを指定します。ここで、`@ai-sdk/openai-compatible` は OpenAI 互換 API に使用されます。
|
||||
- `name` は、UI でのプロバイダーの表示名です。
|
||||
- `options.baseURL` はローカル サーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその構成のマップです。機種選択リストに機種名が表示されます。
|
||||
- `options.baseURL` はローカルサーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその設定のマップです。機種選択リストに機種名が表示されます。
|
||||
|
||||
---
|
||||
|
||||
@@ -1110,7 +1108,7 @@ IO.NET は、さまざまなユースケースに最適化された 17 のモデ
|
||||
|
||||
### LM Studio
|
||||
|
||||
LM Studio を通じてローカル モデルを使用するようにopencodeを構成できます。
|
||||
LM Studio を通じてローカルモデルを使用するように opencode を構成できます。
|
||||
|
||||
```json title="opencode.json" "lmstudio" {5, 6, 8, 10-14}
|
||||
{
|
||||
@@ -1137,8 +1135,8 @@ LM Studio を通じてローカル モデルを使用するようにopencodeを
|
||||
- `lmstudio` はカスタムプロバイダー ID です。これには任意の文字列を指定できます。
|
||||
- `npm` は、このプロバイダーに使用するパッケージを指定します。ここで、`@ai-sdk/openai-compatible` は OpenAI 互換 API に使用されます。
|
||||
- `name` は、UI でのプロバイダーの表示名です。
|
||||
- `options.baseURL` はローカル サーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその構成のマップです。機種選択リストに機種名が表示されます。
|
||||
- `options.baseURL` はローカルサーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその設定のマップです。機種選択リストに機種名が表示されます。
|
||||
|
||||
---
|
||||
|
||||
@@ -1225,9 +1223,9 @@ Moonshot AI の Kim K2 を使用するには:
|
||||
|
||||
---
|
||||
|
||||
### オラマ
|
||||
### Ollama
|
||||
|
||||
Ollama を通じてローカル モデルを使用するようにopencodeを構成できます。
|
||||
Ollama を通じてローカルモデルを使用するように opencode を構成できます。
|
||||
|
||||
:::tip
|
||||
Ollama は OpenCode 用に自動的に構成できます。詳細については、[Ollama 統合 docs](https://docs.ollama.com/integrations/opencode)」を参照してください。
|
||||
@@ -1258,8 +1256,8 @@ Ollama は OpenCode 用に自動的に構成できます。詳細については
|
||||
- `ollama` はカスタムプロバイダー ID です。これには任意の文字列を指定できます。
|
||||
- `npm` は、このプロバイダーに使用するパッケージを指定します。ここで、`@ai-sdk/openai-compatible` は OpenAI 互換 API に使用されます。
|
||||
- `name` は、UI でのプロバイダーの表示名です。
|
||||
- `options.baseURL` はローカル サーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその構成のマップです。機種選択リストに機種名が表示されます。
|
||||
- `options.baseURL` はローカルサーバーのエンドポイントです。
|
||||
- `models` は、モデル ID とその設定のマップです。機種選択リストに機種名が表示されます。
|
||||
|
||||
:::tip
|
||||
ツール呼び出しが機能しない場合は、Ollama の `num_ctx` を増やしてみてください。 16k〜32kあたりから始めてください。
|
||||
@@ -1292,7 +1290,7 @@ OpenCode で Ollama Cloud を使用するには:
|
||||
└ enter
|
||||
```
|
||||
|
||||
6. **重要**: OpenCode でクラウド モデルを使用する前に、モデル情報をローカルに取得する必要があります。
|
||||
6. **重要**: OpenCode でクラウドモデルを使用する前に、モデル情報をローカルに取得する必要があります。
|
||||
|
||||
```bash
|
||||
ollama pull gpt-oss:20b-cloud
|
||||
@@ -1335,7 +1333,7 @@ OpenCode で Ollama Cloud を使用するには:
|
||||
|
||||
##### APIキーの使用
|
||||
|
||||
すでに API キーをお持ちの場合は、**API キーを手動で入力** を選択し、terminal に貼り付けることができます。
|
||||
すでに API キーをお持ちの場合は、**API キーを手動で入力** を選択し、ターミナルに貼り付けることができます。
|
||||
|
||||
---
|
||||
|
||||
@@ -1393,7 +1391,7 @@ OpenCode Zen は、OpenCode チームによって提供される、テストお
|
||||
/models
|
||||
```
|
||||
|
||||
opencode構成を通じて追加のモデルを追加することもできます。
|
||||
OpenCode 設定を通じて追加のモデルを追加することもできます。
|
||||
|
||||
```json title="opencode.json" {6}
|
||||
{
|
||||
@@ -1408,7 +1406,7 @@ opencode構成を通じて追加のモデルを追加することもできます
|
||||
}
|
||||
```
|
||||
|
||||
5. opencode設定を通じてカスタマイズすることもできます。プロバイダーを指定する例を次に示します。
|
||||
5. OpenCode 設定を通じてカスタマイズすることもできます。プロバイダーを指定する例を次に示します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -1436,10 +1434,10 @@ opencode構成を通じて追加のモデルを追加することもできます
|
||||
|
||||
SAP AI コアは、統合プラットフォームを通じて、OpenAI、Anthropic、Google、Amazon、Meta、Mistral、AI21 の 40 以上のモデルへのアクセスを提供します。
|
||||
|
||||
1. [SAP BTP Cockpit](https://account.hana.ondemand.com/) に移動し、SAP AI コア サービス インスタンスに移動して、サービス キーを作成します。
|
||||
1. [SAP BTP Cockpit](https://account.hana.ondemand.com/) に移動し、SAP AI コアサービスインスタンスに移動して、サービスキーを作成します。
|
||||
|
||||
:::tip
|
||||
サービス キーは、`clientid`、`clientsecret`、`url`、および `serviceurls.AI_API_URL` を含む JSON オブジェクトです。 AI コア インスタンスは、BTP コックピットの **サービス** > **インスタンスとサブスクリプション** で見つかります。
|
||||
サービスキーは、`clientid`、`clientsecret`、`url`、および `serviceurls.AI_API_URL` を含む JSON オブジェクトです。 AI コアインスタンスは、BTP コックピットの **サービス** > **インスタンスとサブスクリプション** で見つかります。
|
||||
:::
|
||||
|
||||
2. `/connect` コマンドを実行し、**SAP AI Core** を検索します。
|
||||
@@ -1448,7 +1446,7 @@ SAP AI コアは、統合プラットフォームを通じて、OpenAI、Anthrop
|
||||
/connect
|
||||
```
|
||||
|
||||
3. サービス キーの JSON を入力します。
|
||||
3. サービスキーの JSON を入力します。
|
||||
|
||||
```txt
|
||||
┌ Service key
|
||||
@@ -1469,7 +1467,7 @@ SAP AI コアは、統合プラットフォームを通じて、OpenAI、Anthrop
|
||||
export AICORE_SERVICE_KEY='{"clientid":"...","clientsecret":"...","url":"...","serviceurls":{"AI_API_URL":"..."}}'
|
||||
```
|
||||
|
||||
4. 必要に応じて、デプロイメント ID とリソース グループを設定します。
|
||||
4. 必要に応じて、デプロイメント ID とリソースグループを設定します。
|
||||
|
||||
```bash
|
||||
AICORE_DEPLOYMENT_ID=your-deployment-id AICORE_RESOURCE_GROUP=your-resource-group opencode
|
||||
@@ -1624,7 +1622,7 @@ Vercel AI Gateway を使用すると、統合エンドポイントを通じて O
|
||||
/models
|
||||
```
|
||||
|
||||
opencode構成を通じてモデルをカスタマイズすることもできます。プロバイダーのルーティング順序を指定する例を次に示します。
|
||||
OpenCode 設定を通じてモデルをカスタマイズすることもできます。プロバイダーのルーティング順序を指定する例を次に示します。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -1643,11 +1641,11 @@ opencode構成を通じてモデルをカスタマイズすることもできま
|
||||
}
|
||||
```
|
||||
|
||||
いくつかの便利なルーティング オプション:
|
||||
いくつかの便利なルーティングオプション:
|
||||
|
||||
| オプション | 説明 |
|
||||
| ------------------- | ---------------------------------------------------- |
|
||||
| `order` | 試行するプロバイダー シーケンス |
|
||||
| `order` | 試行するプロバイダーシーケンス |
|
||||
| `only` | 特定のプロバイダーに制限する |
|
||||
| `zeroDataRetention` | データ保持ポリシーがゼロのプロバイダーのみを使用する |
|
||||
|
||||
@@ -1690,7 +1688,7 @@ opencode構成を通じてモデルをカスタマイズすることもできま
|
||||
/connect
|
||||
```
|
||||
|
||||
**GLM コーディング プラン**に加入している場合は、**Z.AI コーディング プラン**を選択します。
|
||||
**GLM コーディングプラン**に加入している場合は、**Z.AI コーディングプラン**を選択します。
|
||||
|
||||
3. Z.AI API キーを入力します。
|
||||
|
||||
@@ -1734,7 +1732,7 @@ opencode構成を通じてモデルをカスタマイズすることもできま
|
||||
/models
|
||||
```
|
||||
|
||||
opencode構成を通じて追加のモデルを追加することもできます。
|
||||
OpenCode 設定を通じて追加のモデルを追加することもできます。
|
||||
|
||||
```json title="opencode.json" {6}
|
||||
{
|
||||
@@ -1756,7 +1754,7 @@ opencode構成を通じて追加のモデルを追加することもできます
|
||||
`/connect` コマンドにリストされていない **OpenAI 互換**プロバイダーを追加するには:
|
||||
|
||||
:::tip
|
||||
OpenAI と互換性のある任意のプロバイダーをopencodeで使用できます。最新の AI プロバイダーのほとんどは、OpenAI 互換の API を提供しています。
|
||||
OpenAI と互換性のある任意のプロバイダーを OpenCode で使用できます。最新の AI プロバイダーのほとんどは、OpenAI 互換の API を提供しています。
|
||||
:::
|
||||
|
||||
1. `/connect` コマンドを実行し、**その他**まで下にスクロールします。
|
||||
@@ -1785,7 +1783,7 @@ OpenAI と互換性のある任意のプロバイダーをopencodeで使用で
|
||||
```
|
||||
|
||||
:::note
|
||||
覚えやすい ID を選択してください。これを構成ファイルで使用します。
|
||||
覚えやすい ID を選択してください。これを設定ファイルで使用します。
|
||||
:::
|
||||
|
||||
3. プロバイダーの API キーを入力します。
|
||||
@@ -1802,7 +1800,7 @@ OpenAI と互換性のある任意のプロバイダーをopencodeで使用で
|
||||
└
|
||||
```
|
||||
|
||||
4. プロジェクト ディレクトリで `opencode.json` ファイルを作成または更新します。
|
||||
4. プロジェクトディレクトリで `opencode.json` ファイルを作成または更新します。
|
||||
|
||||
```json title="opencode.json" ""myprovider"" {5-15}
|
||||
{
|
||||
@@ -1828,14 +1826,14 @@ OpenAI と互換性のある任意のプロバイダーをopencodeで使用で
|
||||
|
||||
- **npm**: 使用する AI SDK パッケージ、OpenAI 互換プロバイダーの場合は `@ai-sdk/openai-compatible`
|
||||
- **name**: UI での表示名。
|
||||
- **モデル**: 利用可能なモデル。
|
||||
- **models**: 利用可能なモデル。
|
||||
- **options.baseURL**: API エンドポイント URL。
|
||||
- **options.apiKey**: 認証を使用しない場合は、オプションで API キーを設定します。
|
||||
- **options.headers**: 必要に応じてカスタム ヘッダーを設定します。
|
||||
- **options.headers**: 必要に応じてカスタムヘッダーを設定します。
|
||||
|
||||
詳細オプションの詳細については、以下の例を参照してください。
|
||||
|
||||
5. `/models` コマンドを実行すると、カスタム プロバイダーとモデルが選択リストに表示されます。
|
||||
5. `/models` コマンドを実行すると、カスタムプロバイダーとモデルが選択リストに表示されます。
|
||||
|
||||
---
|
||||
|
||||
@@ -1871,12 +1869,12 @@ OpenAI と互換性のある任意のプロバイダーをopencodeで使用で
|
||||
}
|
||||
```
|
||||
|
||||
構成の詳細:
|
||||
設定の詳細:
|
||||
|
||||
- **apiKey**: `env` 変数構文を使用して設定します。[詳細については ](/docs/config#env-vars).
|
||||
- **headers**: 各リクエストとともに送信されるカスタム ヘッダー。
|
||||
- **limit.context**: モデルが受け入れる最大Input Tokens。
|
||||
- **limit.output**: モデルが生成できる最大トークン。
|
||||
- **headers**: 各リクエストとともに送信されるカスタムヘッダー。
|
||||
- **limit.context**: モデルが受け入れる最大入力トークン。
|
||||
- **limit.output**: モデルが生成できる最大出力トークン。
|
||||
|
||||
`limit` フィールドを使用すると、OpenCode はコンテキストがどのくらい残っているかを理解できます。標準プロバイダーは、これらを models.dev から自動的に取得します。
|
||||
|
||||
@@ -1884,14 +1882,14 @@ OpenAI と互換性のある任意のプロバイダーをopencodeで使用で
|
||||
|
||||
## トラブルシューティング
|
||||
|
||||
プロバイダーの構成で問題が発生した場合は、次の点を確認してください。
|
||||
プロバイダーの設定で問題が発生した場合は、次の点を確認してください。
|
||||
|
||||
1. **認証設定を確認します**: `opencode auth list` を実行して、資格情報が正しいかどうかを確認します。
|
||||
プロバイダー用のものが構成に追加されます。
|
||||
プロバイダー用のものが設定に追加されます。
|
||||
|
||||
これは、認証に環境変数に依存する Amazon Bedrock のようなプロバイダーには当てはまりません。
|
||||
|
||||
2. カスタム プロバイダーの場合は、opencode 構成を確認し、次のことを行います。
|
||||
- `/connect` コマンドで使用されるプロバイダー ID が、opencode 構成内の ID と一致することを確認してください。
|
||||
2. カスタムプロバイダーの場合は、OpenCode 設定を確認し、次のことを行います。
|
||||
- `/connect` コマンドで使用されるプロバイダー ID が、OpenCode 設定内の ID と一致することを確認してください。
|
||||
- プロバイダーには適切な npm パッケージが使用されます。たとえば、Cerebras には `@ai-sdk/cerebras` を使用します。他のすべての OpenAI 互換プロバイダーの場合は、`@ai-sdk/openai-compatible` を使用します。
|
||||
- `options.baseURL` フィールドで正しい API エンドポイントが使用されていることを確認してください。
|
||||
|
||||
@@ -1,20 +1,20 @@
|
||||
---
|
||||
title: ルール
|
||||
description: opencodeのカスタム命令を設定します。
|
||||
description: OpenCode のカスタム命令を設定します。
|
||||
---
|
||||
|
||||
`AGENTS.md` ファイルを作成することで、opencode にカスタム命令を提供できます。これは Cursor のルールと似ています。これには、特定のプロジェクトに合わせて LLM の動作をカスタマイズするために LLM のコンテキストに含まれる命令が含まれています。
|
||||
`AGENTS.md` ファイルを作成することで、OpenCode にカスタム命令を提供できます。これは Cursor のルールと似ています。これには、特定のプロジェクトに合わせて LLM の動作をカスタマイズするために LLM のコンテキストに含まれる命令が含まれています。
|
||||
|
||||
---
|
||||
|
||||
## 初期化する
|
||||
## 初期化
|
||||
|
||||
新しい `AGENTS.md` ファイルを作成するには、opencode で `/init` コマンドを実行します。
|
||||
新しい `AGENTS.md` ファイルを作成するには、OpenCode で `/init` コマンドを実行します。
|
||||
|
||||
:::tip
|
||||
プロジェクトの `AGENTS.md` ファイルを Git にコミットする必要があります。
|
||||
:::
|
||||
This `AGENTS.md` ファイルが生成されます。これは、opencode がプロジェクトをより適切にナビゲートするのに役立ちます。
|
||||
`AGENTS.md` ファイルが生成されます。これは、OpenCode がプロジェクトをより適切にナビゲートするのに役立ちます。
|
||||
|
||||
既存の `AGENTS.md` ファイルがある場合、これはそれに追加しようとします。
|
||||
|
||||
@@ -53,27 +53,27 @@ This is an SST v3 monorepo with TypeScript. The project uses bun workspaces for
|
||||
|
||||
## 種類
|
||||
|
||||
opencode は、複数の場所からの `AGENTS.md` ファイルの読み取りもサポートしています。そして、これはさまざまな目的に役立ちます。
|
||||
OpenCode は、複数の場所からの `AGENTS.md` ファイルの読み取りもサポートしています。そして、これはさまざまな目的に役立ちます。
|
||||
|
||||
### プロジェクト
|
||||
|
||||
プロジェクト固有のルールのために、プロジェクト ルートに `AGENTS.md` を配置します。これらは、このディレクトリまたはそのサブディレクトリで作業している場合にのみ適用されます。
|
||||
プロジェクト固有のルールのために、プロジェクトルートに `AGENTS.md` を配置します。これらは、このディレクトリまたはそのサブディレクトリで作業している場合にのみ適用されます。
|
||||
|
||||
### グローバル
|
||||
|
||||
`~/.config/opencode/AGENTS.md` ファイルにグローバル ルールを含めることもできます。これは、すべてのopencode セッションに適用されます。
|
||||
`~/.config/opencode/AGENTS.md` ファイルにグローバルルールを含めることもできます。これは、すべての OpenCode セッションに適用されます。
|
||||
|
||||
これは Git にコミットされておらず、チームと共有されていないため、LLM が従うべき個人ルールを指定するためにこれを使用することをお勧めします。
|
||||
|
||||
### Claude Code Compatibility
|
||||
### Claude Code 互換性
|
||||
|
||||
Claude Code から移行するユーザーのために、OpenCode はフォールバックとして Claude Code のファイル規則をサポートしています。
|
||||
|
||||
- **プロジェクト ルール**: プロジェクト ディレクトリ内の `CLAUDE.md` (`AGENTS.md` が存在しない場合に使用されます)
|
||||
- **グローバル ルール**: `~/.claude/CLAUDE.md` (`~/.config/opencode/AGENTS.md` が存在しない場合に使用)
|
||||
- **スキル**: `~/.claude/skills/` — 詳細については、[エージェント スキル ](/docs/skills/) を参照してください。
|
||||
- **プロジェクトルール**: プロジェクトディレクトリ内の `CLAUDE.md` (`AGENTS.md` が存在しない場合に使用されます)
|
||||
- **グローバルルール**: `~/.claude/CLAUDE.md` (`~/.config/opencode/AGENTS.md` が存在しない場合に使用)
|
||||
- **スキル**: `~/.claude/skills/` — 詳細については、[エージェントスキル](/docs/skills/) を参照してください。
|
||||
|
||||
クロード コードの互換性を無効にするには、次の環境変数のいずれかを設定します。
|
||||
Claude Code の互換性を無効にするには、次の環境変数のいずれかを設定します。
|
||||
|
||||
```bash
|
||||
export OPENCODE_DISABLE_CLAUDE_CODE=1 # Disable all .claude support
|
||||
@@ -85,13 +85,13 @@ export OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=1 # Disable only .claude/skills
|
||||
|
||||
## 優先順位
|
||||
|
||||
opencode が開始されると、次の順序でルール ファイルが検索されます。
|
||||
OpenCode が開始されると、次の順序でルールファイルが検索されます。
|
||||
|
||||
1. **ローカル ファイル** (現在のディレクトリから上に移動) (`AGENTS.md`、`CLAUDE.md`)
|
||||
2. **グローバル ファイル** (`~/.config/opencode/AGENTS.md`)
|
||||
3. **クロード コード ファイル** (`~/.claude/CLAUDE.md` にあります) (無効になっていない限り)
|
||||
1. **ローカルファイル** (現在のディレクトリから上に移動) (`AGENTS.md`、`CLAUDE.md`)
|
||||
2. **グローバルファイル** (`~/.config/opencode/AGENTS.md`)
|
||||
3. **Claude Code ファイル** (`~/.claude/CLAUDE.md` にあります) (無効になっていない限り)
|
||||
|
||||
最初に一致したファイルが各カテゴリで優勝します。たとえば、`AGENTS.md` と `CLAUDE.md` の両方がある場合、`AGENTS.md` のみが使用されます。同様に、`~/.config/opencode/AGENTS.md` は `~/.claude/CLAUDE.md` よりも優先されます。
|
||||
最初に一致したファイルが各カテゴリで優先されます。たとえば、`AGENTS.md` と `CLAUDE.md` の両方がある場合、`AGENTS.md` のみが使用されます。同様に、`~/.config/opencode/AGENTS.md` は `~/.claude/CLAUDE.md` よりも優先されます。
|
||||
|
||||
---
|
||||
|
||||
@@ -123,11 +123,11 @@ opencode が開始されると、次の順序でルール ファイルが検索
|
||||
|
||||
---
|
||||
|
||||
## 外部ファイルの参照
|
||||
## 外部ファイル参照
|
||||
|
||||
opencode は `AGENTS.md` のファイル参照を自動的に解析しませんが、次の 2 つの方法で同様の機能を実現できます。
|
||||
OpenCode は `AGENTS.md` のファイル参照を自動的に解析しませんが、次の 2 つの方法で同様の機能を実現できます。
|
||||
|
||||
### opencode.json の使用
|
||||
### `opencode.json` の使用
|
||||
|
||||
推奨されるアプローチは、`instructions` の `opencode.json` フィールドを使用することです。
|
||||
|
||||
@@ -138,9 +138,9 @@ opencode は `AGENTS.md` のファイル参照を自動的に解析しません
|
||||
}
|
||||
```
|
||||
|
||||
### AGENTS.md のマニュアル手順
|
||||
### AGENTS.md の手動指示
|
||||
|
||||
`AGENTS.md` で明示的な命令を指定することで、opencodeに外部ファイルを読み取るように教えることができます。実際の例を次に示します。
|
||||
`AGENTS.md` で明示的な命令を指定することで、OpenCode に外部ファイルを読み取るように教えることができます。実際の例を次に示します。
|
||||
|
||||
```markdown title="AGENTS.md"
|
||||
# TypeScript Project Rules
|
||||
@@ -169,11 +169,11 @@ Read the following file immediately as it's relevant to all workflows: @rules/ge
|
||||
|
||||
このアプローチにより、次のことが可能になります。
|
||||
|
||||
- モジュール式の再利用可能なルール ファイルを作成する
|
||||
- モジュール式の再利用可能なルールファイルを作成する
|
||||
- シンボリックリンクまたは git サブモジュールを介してプロジェクト間でルールを共有する
|
||||
- 詳細なガイドラインを参照しながら、AGENTS.md を簡潔に保ちます
|
||||
- opencode が特定のタスクに必要な場合にのみファイルをロードするようにする
|
||||
- OpenCode が特定のタスクに必要な場合にのみファイルをロードするようにする
|
||||
|
||||
:::tip
|
||||
モノリポジトリまたは共有標準を使用するプロジェクトの場合、グロブ パターン (`opencode.json` など) で `packages/*/AGENTS.md` を使用する方が、手動で指示するよりも保守しやすくなります。
|
||||
モノリポジトリまたは共有標準を使用するプロジェクトの場合、グロブパターン (`opencode.json` など) で `packages/*/AGENTS.md` を使用する方が、手動で指示するよりも保守しやすくなります。
|
||||
:::
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
---
|
||||
title: SDK
|
||||
description: opencodeサーバー用のタイプセーフな JS クライアント。
|
||||
description: OpenCode サーバー用の型安全な JS クライアント。
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
export const typesUrl = `${config.github}/blob/dev/packages/sdk/js/src/gen/types.gen.ts`
|
||||
|
||||
opencode JS/TS SDK は、サーバーと対話するためのタイプセーフなクライアントを提供します。
|
||||
これを使用して、統合を構築し、opencodeをプログラムで制御します。
|
||||
OpenCode JS/TS SDK は、サーバーと対話するための型安全なクライアントを提供します。
|
||||
これを使用して、統合を構築し、OpenCode をプログラムで制御します。
|
||||
|
||||
[サーバーの仕組みについて詳しくは、](/docs/server) をご覧ください。たとえば、コミュニティによって構築された [projects](/docs/ecosystem#projects) をチェックしてください。
|
||||
[サーバーの仕組みについての詳細](/docs/server) をご覧ください。たとえば、コミュニティによって構築された [projects](/docs/ecosystem#projects) をチェックしてください。
|
||||
|
||||
---
|
||||
|
||||
@@ -25,7 +25,7 @@ npm install @opencode-ai/sdk
|
||||
|
||||
## クライアントの作成
|
||||
|
||||
opencodeのインスタンスを作成します。
|
||||
OpenCode のインスタンスを作成します。
|
||||
|
||||
```javascript
|
||||
import { createOpencode } from "@opencode-ai/sdk"
|
||||
@@ -43,13 +43,13 @@ const { client } = await createOpencode()
|
||||
| `port` | `number` | サーバーポート | `4096` |
|
||||
| `signal` | `AbortSignal` | キャンセルのためのアボート信号 | `undefined` |
|
||||
| `timeout` | `number` | サーバー起動のタイムアウト (ミリ秒) | `5000` |
|
||||
| `config` | `Config` | 構成オブジェクト | `{}` |
|
||||
| `config` | `Config` | 設定オブジェクト | `{}` |
|
||||
|
||||
---
|
||||
|
||||
## 構成
|
||||
## 設定
|
||||
|
||||
構成オブジェクトを渡して動作をカスタマイズできます。インスタンスは引き続き `opencode.json` を取得しますが、設定をインラインでオーバーライドまたは追加することができます。
|
||||
設定オブジェクトを渡して動作をカスタマイズできます。インスタンスは引き続き `opencode.json` を取得しますが、設定をインラインでオーバーライドまたは追加することができます。
|
||||
|
||||
```javascript
|
||||
import { createOpencode } from "@opencode-ai/sdk"
|
||||
@@ -69,7 +69,7 @@ opencode.server.close()
|
||||
|
||||
## クライアントのみ
|
||||
|
||||
すでに実行中のopencodeのインスタンスがある場合は、それに接続するためのクライアント インスタンスを作成できます。
|
||||
すでに実行中の OpenCode のインスタンスがある場合は、それに接続するためのクライアントインスタンスを作成できます。
|
||||
|
||||
```javascript
|
||||
import { createOpencodeClient } from "@opencode-ai/sdk"
|
||||
@@ -91,7 +91,7 @@ const client = createOpencodeClient({
|
||||
|
||||
---
|
||||
|
||||
## 種類
|
||||
## 型定義
|
||||
|
||||
SDK には、すべての API タイプの TypeScript 定義が含まれています。それらを直接インポートします。
|
||||
|
||||
@@ -99,7 +99,7 @@ SDK には、すべての API タイプの TypeScript 定義が含まれてい
|
||||
import type { Session, Message, Part } from "@opencode-ai/sdk"
|
||||
```
|
||||
|
||||
すべてのタイプはサーバーの OpenAPI 仕様から生成され、<a href={typesUrl}>タイプ ファイル</a> で使用できます。
|
||||
すべてのタイプはサーバーの OpenAPI 仕様から生成され、<a href={typesUrl}>タイプファイル</a> で使用できます。
|
||||
|
||||
---
|
||||
|
||||
@@ -119,13 +119,13 @@ try {
|
||||
|
||||
## API
|
||||
|
||||
SDK は、タイプセーフなクライアントを通じてすべてのサーバー API を公開します。
|
||||
SDK は、型安全なクライアントを通じてすべてのサーバー API を公開します。
|
||||
|
||||
---
|
||||
|
||||
### Global
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ----------------- | -------------------------------------- | ------------------------------------ |
|
||||
| `global.health()` | サーバーの健全性とバージョンを確認する | `{ healthy: true, version: string }` |
|
||||
|
||||
@@ -142,7 +142,7 @@ console.log(health.data.version)
|
||||
|
||||
### App
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| -------------- | ------------------------------------------ | ------------------------------------------- |
|
||||
| `app.log()` | ログエントリを書き込む | `boolean` |
|
||||
| `app.agents()` | 利用可能なすべてのエージェントをリストする | <a href={typesUrl}><code>Agent[]</code></a> |
|
||||
@@ -169,7 +169,7 @@ const agents = await client.app.agents()
|
||||
|
||||
### Project
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------------- | -------------------------------- | --------------------------------------------- |
|
||||
| `project.list()` | すべてのプロジェクトをリストする | <a href={typesUrl}><code>Project[]</code></a> |
|
||||
| `project.current()` | 現在のプロジェクトを取得 | <a href={typesUrl}><code>Project</code></a> |
|
||||
@@ -190,7 +190,7 @@ const currentProject = await client.project.current()
|
||||
|
||||
### Path
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------ | ---------------- | ---------------------------------------- |
|
||||
| `path.get()` | 現在のパスを取得 | <a href={typesUrl}><code>Path</code></a> |
|
||||
|
||||
@@ -207,9 +207,9 @@ const pathInfo = await client.path.get()
|
||||
|
||||
### Config
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| -------------------- | -------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
|
||||
| `config.get()` | 構成情報を取得する | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `config.get()` | 設定情報を取得する | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `config.providers()` | プロバイダーとデフォルトのモデルをリストする | `{ providers: `<a href={typesUrl}><code>Provider[]</code></a>`, default: { [key: string]: string } }` |
|
||||
|
||||
---
|
||||
@@ -226,7 +226,7 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
|
||||
### Sessions
|
||||
|
||||
| 方法 | 説明 | メモ |
|
||||
| メソッド | 説明 | 詳細 |
|
||||
| ---------------------------------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `session.list()` | セッションをリストする | 戻り値 <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `session.get({ path })` | セッションを取得 | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
@@ -243,7 +243,7 @@ const { providers, default: defaults } = await client.config.providers()
|
||||
| `session.message({ path })` | メッセージの詳細を取得する | 戻り値 `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
|
||||
| `session.prompt({ path, body })` | プロンプトメッセージを送信する | `body.noReply: true` は UserMessage (コンテキストのみ) を返します。デフォルトでは、AI 応答を含む <a href={typesUrl}><code>AssistantMessage</code></a> を返します。 |
|
||||
| `session.command({ path, body })` | コマンドをセッションに送信 | 戻り値 `{ info: `<a href={typesUrl}><code>AssistantMessage</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
|
||||
| `session.shell({ path, body })` | shell コマンドを実行する | 戻り値 <a href={typesUrl}><code>AssistantMessage</code></a> |
|
||||
| `session.shell({ path, body })` | シェルコマンドを実行する | 戻り値 <a href={typesUrl}><code>AssistantMessage</code></a> |
|
||||
| `session.revert({ path, body })` | メッセージを元に戻す | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
| `session.unrevert({ path })` | 元に戻したメッセージを復元する | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
| `postSessionByIdPermissionsByPermissionId({ path, body })` | 許可リクエストに応答する | 戻り値 `boolean` |
|
||||
@@ -283,7 +283,7 @@ await client.session.prompt({
|
||||
|
||||
### Files
|
||||
|
||||
| Method | Description | Response |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------------------- | ---------------------------------- | ------------------------------------------------------------------------------------------- |
|
||||
| `find.text({ query })` | Search for text in files | Array of match objects with `path`, `lines`, `line_number`, `absolute_offset`, `submatches` |
|
||||
| `find.files({ query })` | Find files and directories by name | `string[]` (paths) |
|
||||
@@ -291,10 +291,10 @@ await client.session.prompt({
|
||||
| `file.read({ query })` | Read a file | `{ type: "raw" \| "patch", content: string }` |
|
||||
| `file.status({ query? })` | Get status for tracked files | <a href={typesUrl}><code>File[]</code></a> |
|
||||
|
||||
`find.files` は、いくつかのオプションのクエリ フィールドをサポートしています。
|
||||
`find.files` は、いくつかのオプションのクエリフィールドをサポートしています。
|
||||
|
||||
- `type`: `"file"` または `"directory"`
|
||||
- `directory`: 検索用のプロジェクト ルートをオーバーライドします。
|
||||
- `directory`: 検索用のプロジェクトルートをオーバーライドします。
|
||||
- `limit`: 最大結果 (1 ~ 200)
|
||||
|
||||
---
|
||||
@@ -324,7 +324,7 @@ const content = await client.file.read({
|
||||
|
||||
### TUI
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------------------------ | -------------------------------- | --------- |
|
||||
| `tui.appendPrompt({ body })` | プロンプトにテキストを追加します | `boolean` |
|
||||
| `tui.openHelp()` | ヘルプダイアログを開く | `boolean` |
|
||||
@@ -355,7 +355,7 @@ await client.tui.showToast({
|
||||
|
||||
### Auth
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------------- | ---------------------- | --------- |
|
||||
| `auth.set({ ... })` | 認証資格情報を設定する | `boolean` |
|
||||
|
||||
@@ -374,9 +374,9 @@ await client.auth.set({
|
||||
|
||||
### Events
|
||||
|
||||
| 方法 | 説明 | 応答 |
|
||||
| ------------------- | ------------------------------- | ------------------------------- |
|
||||
| `event.subscribe()` | サーバー送信イベント ストリーム | サーバー送信イベント ストリーム |
|
||||
| メソッド | 説明 | 戻り値 |
|
||||
| ------------------- | ------------------------------ | ------------------------------ |
|
||||
| `event.subscribe()` | サーバー送信イベントストリーム | サーバー送信イベントストリーム |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
---
|
||||
title: サーバ
|
||||
description: HTTP 経由でopencode サーバーと通信します。
|
||||
title: サーバー
|
||||
description: HTTP 経由で OpenCode サーバーと通信します。
|
||||
---
|
||||
|
||||
import config from "../../../../config.mjs"
|
||||
export const typesUrl = `${config.github}/blob/dev/packages/sdk/js/src/gen/types.gen.ts`
|
||||
|
||||
`opencode serve` コマンドは、opencode クライアントが使用できる OpenAPI エンドポイントを公開するヘッドレス HTTP サーバーを実行します。
|
||||
`opencode serve` コマンドは、OpenCode クライアントが使用できる OpenAPI エンドポイントを公開するヘッドレス HTTP サーバーを実行します。
|
||||
|
||||
---
|
||||
|
||||
@@ -18,13 +18,13 @@ opencode serve [--port <number>] [--hostname <string>] [--cors <origin>]
|
||||
|
||||
#### オプション
|
||||
|
||||
| 旗 | 説明 | デフォルト |
|
||||
| --------------- | ---------------------------------- | ---------------- |
|
||||
| `--port` | リッスンするポート | `4096` |
|
||||
| `--hostname` | リッスンするホスト名 | `127.0.0.1` |
|
||||
| `--mdns` | mDNS 検出を有効にする | `false` |
|
||||
| `--mdns-domain` | mDNS サービスのカスタム ドメイン名 | `opencode.local` |
|
||||
| `--cors` | 許可する追加のブラウザーオリジン | `[]` |
|
||||
| フラグ | 説明 | デフォルト |
|
||||
| --------------- | --------------------------------- | ---------------- |
|
||||
| `--port` | リッスンするポート | `4096` |
|
||||
| `--hostname` | リッスンするホスト名 | `127.0.0.1` |
|
||||
| `--mdns` | mDNS 検出を有効にする | `false` |
|
||||
| `--mdns-domain` | mDNS サービスのカスタムドメイン名 | `opencode.local` |
|
||||
| `--cors` | 許可する追加のブラウザーオリジン | `[]` |
|
||||
|
||||
`--cors` は複数回渡すことができます。
|
||||
|
||||
@@ -46,29 +46,25 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve
|
||||
|
||||
### 仕組み
|
||||
|
||||
`opencode` を実行すると、TUI とサーバーが起動します。 TUI の場所
|
||||
サーバーと通信するクライアント。サーバーは OpenAPI 3.1 仕様を公開します
|
||||
終点。このエンドポイントは、[SDK](/docs/sdk).
|
||||
`opencode` を実行すると、TUI とサーバーが起動します。 TUI はサーバーと通信するクライアントです。サーバーは OpenAPI 3.1 仕様のエンドポイントを公開します。このエンドポイントは、[SDK](/docs/sdk) を使用してアクセスできます。
|
||||
|
||||
:::tip
|
||||
opencode サーバーを使用して、プログラムで opencode と対話します。
|
||||
OpenCode サーバーを使用して、プログラムで OpenCode と対話します。
|
||||
:::
|
||||
This
|
||||
|
||||
`opencode serve` を実行してスタンドアロン サーバーを起動できます。持っている場合は、
|
||||
opencode TUI を実行すると、`opencode serve` が新しいサーバーを起動します。
|
||||
`opencode serve` を実行してスタンドアロンサーバーを起動できます。すでに OpenCode TUI を実行している場合でも、`opencode serve` は新しいサーバーを起動します。
|
||||
|
||||
---
|
||||
|
||||
#### 既存のサーバーに接続する
|
||||
|
||||
TUI を起動すると、ポートとホスト名がランダムに割り当てられます。代わりに、`--hostname` と `--port` [flags](/docs/cli).次に、これを使用してサーバーに接続します。
|
||||
TUI を起動すると、ポートとホスト名がランダムに割り当てられます。代わりに、`--hostname` と `--port` [フラグ](/docs/cli) を使用して固定できます。次に、これを使用してサーバーに接続します。
|
||||
|
||||
[`/tui`](#tui) エンドポイントは、サーバー経由で TUI を駆動するために使用できます。たとえば、プロンプトを事前入力したり、実行したりできます。この設定は、OpenCode [IDE](/docs/ide) プラグイン] によって使用されます。
|
||||
[`/tui`](#tui) エンドポイントは、サーバー経由で TUI を駆動するために使用できます。たとえば、プロンプトを事前入力したり、実行したりできます。この設定は、OpenCode [IDE](/docs/ide) プラグインによって使用されます。
|
||||
|
||||
---
|
||||
|
||||
## スペック
|
||||
## 仕様
|
||||
|
||||
サーバーは、次の場所で閲覧できる OpenAPI 3.1 仕様を公開しています。
|
||||
|
||||
@@ -82,205 +78,205 @@ http://<hostname>:<port>/doc
|
||||
|
||||
## API
|
||||
|
||||
opencode サーバーは次の API を公開します。
|
||||
OpenCode サーバーは次の API を公開します。
|
||||
|
||||
---
|
||||
|
||||
### グローバル
|
||||
### Global
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ---------------- | ------------------------------------------ | ------------------------------------ |
|
||||
| `GET` | `/global/health` | サーバーの健全性とバージョンを取得する | `{ healthy: true, version: string }` |
|
||||
| `GET` | `/global/event` | グローバル イベントの取得 (SSE ストリーム) | イベントストリーム |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ---------------- | ----------------------------------------- | ------------------------------------ |
|
||||
| `GET` | `/global/health` | サーバーの健全性とバージョンを取得する | `{ healthy: true, version: string }` |
|
||||
| `GET` | `/global/event` | グローバルイベントの取得 (SSE ストリーム) | イベントストリーム |
|
||||
|
||||
---
|
||||
|
||||
### プロジェクト
|
||||
### Project
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ------------------ | -------------------------------- | -------------------------------------------------- |
|
||||
| `GET` | `/project` | すべてのプロジェクトをリストする | <a href={typesUrl}><code>プロジェクト[]</code></a> |
|
||||
| `GET` | `/project/current` | 現在のプロジェクトを取得 | <a href={typesUrl}><code>プロジェクト</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------------ | -------------------------------- | --------------------------------------------- |
|
||||
| `GET` | `/project` | すべてのプロジェクトをリストする | <a href={typesUrl}><code>Project[]</code></a> |
|
||||
| `GET` | `/project/current` | 現在のプロジェクトを取得 | <a href={typesUrl}><code>Project</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### パスと VCS
|
||||
### Path and VCS
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ------- | --------------------------------------- | ------------------------------------------- |
|
||||
| `GET` | `/path` | 現在のパスを取得する | <a href={typesUrl}><code>パス</code></a> |
|
||||
| `GET` | `/vcs` | 現在のプロジェクトの VCS 情報を取得する | <a href={typesUrl}><code>VcsInfo</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------- | --------------------------------------- | ------------------------------------------- |
|
||||
| `GET` | `/path` | 現在のパスを取得する | <a href={typesUrl}><code>Path</code></a> |
|
||||
| `GET` | `/vcs` | 現在のプロジェクトの VCS 情報を取得する | <a href={typesUrl}><code>VcsInfo</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### 実例
|
||||
### Instance
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------ | ------------------- | ---------------------------- | ------ |
|
||||
| `POST` | `/instance/dispose` | 現在のインスタンスを破棄する | うーん |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------------- | ---------------------------- | ---------- |
|
||||
| `POST` | `/instance/dispose` | 現在のインスタンスを破棄する | void |
|
||||
|
||||
---
|
||||
|
||||
### 構成
|
||||
### Config
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------- | ------------------- | -------------------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/config` | 構成情報を取得する | <a href={typesUrl}><code>構成</code></a> |
|
||||
| `PATCH` | `/config` | 構成を更新する | <a href={typesUrl}><code>構成</code></a> |
|
||||
| `GET` | `/config/providers` | プロバイダーとデフォルトのモデルをリストする | `{ providers: `<a href={typesUrl}>プロバイダ[]</a>`, default: { [key: string]: string } }` |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------------- | -------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/config` | 設定情報を取得する | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `PATCH` | `/config` | 設定を更新する | <a href={typesUrl}><code>Config</code></a> |
|
||||
| `GET` | `/config/providers` | プロバイダーとデフォルトのモデルをリストする | `{ providers: `<a href={typesUrl}><code>Provider[]</code></a>`, default: { [key: string]: string } }` |
|
||||
|
||||
---
|
||||
|
||||
### プロバイダー
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------ | -------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/provider` | すべてのプロバイダーをリストする | `{ all: `<a href={typesUrl}>プロバイダ[]</a>`, default: {...}, connected: string[] }` |
|
||||
| `GET` | `/provider/auth` | プロバイダーの認証方法を取得する | `{ [providerID: string]: `<a href={typesUrl}>ProviderAuthMethod[]</a>` }` |
|
||||
| `POST` | `/provider/{id}/oauth/authorize` | OAuth を使用してプロバイダーを認証する | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> |
|
||||
| `POST` | `/provider/{id}/oauth/callback` | プロバイダーの OAuth コールバックを処理する | うーん |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | -------------------------------- | ------------------------------------------- | ------------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/provider` | すべてのプロバイダーをリストする | `{ all: `<a href={typesUrl}><code>Provider[]</code></a>`, default: {...}, connected: string[] }` |
|
||||
| `GET` | `/provider/auth` | プロバイダーの認証方法を取得する | `{ [providerID: string]: `<a href={typesUrl}><code>ProviderAuthMethod[]</code></a>` }` |
|
||||
| `POST` | `/provider/{id}/oauth/authorize` | OAuth を使用してプロバイダーを認証する | <a href={typesUrl}><code>ProviderAuthAuthorization</code></a> |
|
||||
| `POST` | `/provider/{id}/oauth/callback` | プロバイダーの OAuth コールバックを処理する | void |
|
||||
|
||||
---
|
||||
|
||||
### セッション
|
||||
### Session
|
||||
|
||||
| 方法 | パス | 説明 | メモ |
|
||||
| -------- | ---------------------------------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------ |
|
||||
| `GET` | `/session` | すべてのセッションをリストする | 戻り値 <a href={typesUrl}><code>セッション[]</code></a> |
|
||||
| `POST` | `/session` | 新しいセッションを作成する | 本文: `{ parentID?, title? }`、<a href={typesUrl}><code>セッション</code></a> を返します。 |
|
||||
| `GET` | `/session/status` | すべてのセッションのセッション ステータスを取得する | 戻り値 `{ [sessionID: string]: `<a href={typesUrl}>SessionStatus</a>` }` |
|
||||
| `GET` | `/session/:id` | セッションの詳細を取得する | 戻り値 <a href={typesUrl}><code>セッション</code></a> |
|
||||
| `DELETE` | `/session/:id` | セッションとそのすべてのデータを削除する | 戻り値 `boolean` |
|
||||
| `PATCH` | `/session/:id` | セッションのプロパティを更新する | 本文: `{ title? }`、<a href={typesUrl}><code>セッション</code></a> を返します。 |
|
||||
| `GET` | `/session/:id/children` | セッションの子セッションを取得する | 戻り値 <a href={typesUrl}><code>セッション[]</code></a> |
|
||||
| `GET` | `/session/:id/todo` | セッションの ToDo リストを取得する | 戻り値 <a href={typesUrl}><code>Todo[]</code></a> |
|
||||
| `POST` | `/session/:id/init` | アプリを分析して `AGENTS.md` を作成する | 本文: `{ messageID, providerID, modelID }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/fork` | メッセージで既存のセッションをフォークする | 本文: `{ messageID? }`、<a href={typesUrl}><code>セッション</code></a> を返します。 |
|
||||
| `POST` | `/session/:id/abort` | 実行中のセッションを中止する | 戻り値 `boolean` |
|
||||
| `POST` | `/session/:id/share` | セッションを共有する | 戻り値 <a href={typesUrl}><code>セッション</code></a> |
|
||||
| `DELETE` | `/session/:id/share` | セッションの共有を解除する | 戻り値 <a href={typesUrl}><code>セッション</code></a> |
|
||||
| `GET` | `/session/:id/diff` | このセッションの差分を取得する | クエリ: `messageID?`、<a href={typesUrl}><code>FileDiff[]</code></a> を返します。 |
|
||||
| `POST` | `/session/:id/summarize` | セッションを要約する | 本文: `{ providerID, modelID }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/revert` | メッセージを元に戻す | 本文: `{ messageID, partID? }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/unrevert` | 元に戻したすべてのメッセージを復元する | 戻り値 `boolean` |
|
||||
| `POST` | `/session/:id/permissions/:permissionID` | 許可リクエストに応答する | 本文: `{ response, remember? }`、`boolean` を返します。 |
|
||||
| メソッド | パス | 説明 | 詳細 |
|
||||
| -------- | ---------------------------------------- | -------------------------------------------------- | --------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/session` | すべてのセッションをリストする | 戻り値 <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `POST` | `/session` | 新しいセッションを作成する | 本文: `{ parentID?, title? }`、<a href={typesUrl}><code>Session</code></a> を返します。 |
|
||||
| `GET` | `/session/status` | すべてのセッションのセッションステータスを取得する | 戻り値 `{ [sessionID: string]: `<a href={typesUrl}><code>SessionStatus</code></a>` }` |
|
||||
| `GET` | `/session/:id` | セッションの詳細を取得する | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id` | セッションとそのすべてのデータを削除する | 戻り値 `boolean` |
|
||||
| `PATCH` | `/session/:id` | セッションのプロパティを更新する | 本文: `{ title? }`、<a href={typesUrl}><code>Session</code></a> を返します。 |
|
||||
| `GET` | `/session/:id/children` | セッションの子セッションを取得する | 戻り値 <a href={typesUrl}><code>Session[]</code></a> |
|
||||
| `GET` | `/session/:id/todo` | セッションの ToDo リストを取得する | 戻り値 <a href={typesUrl}><code>Todo[]</code></a> |
|
||||
| `POST` | `/session/:id/init` | アプリを分析して `AGENTS.md` を作成する | 本文: `{ messageID, providerID, modelID }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/fork` | メッセージで既存のセッションをフォークする | 本文: `{ messageID? }`、<a href={typesUrl}><code>Session</code></a> を返します。 |
|
||||
| `POST` | `/session/:id/abort` | 実行中のセッションを中止する | 戻り値 `boolean` |
|
||||
| `POST` | `/session/:id/share` | セッションを共有する | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
| `DELETE` | `/session/:id/share` | セッションの共有を解除する | 戻り値 <a href={typesUrl}><code>Session</code></a> |
|
||||
| `GET` | `/session/:id/diff` | このセッションの差分を取得する | クエリ: `messageID?`、<a href={typesUrl}><code>FileDiff[]</code></a> を返します。 |
|
||||
| `POST` | `/session/:id/summarize` | セッションを要約する | 本文: `{ providerID, modelID }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/revert` | メッセージを元に戻す | 本文: `{ messageID, partID? }`、`boolean` を返します。 |
|
||||
| `POST` | `/session/:id/unrevert` | 元に戻したすべてのメッセージを復元する | 戻り値 `boolean` |
|
||||
| `POST` | `/session/:id/permissions/:permissionID` | 許可リクエストに応答する | 本文: `{ response, remember? }`、`boolean` を返します。 |
|
||||
|
||||
---
|
||||
|
||||
### メッセージ
|
||||
### Message
|
||||
|
||||
| 方法 | パス | 説明 | メモ |
|
||||
| ------ | --------------------------------- | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/session/:id/message` | セッション内のメッセージをリストする | クエリ: `limit?`、`{ info: `<a href={typesUrl}>メッセージ</a>を返します。`, parts: `<a href={typesUrl}>Part[]</a>`}[]` |
|
||||
| `POST` | `/session/:id/message` | メッセージを送信して応答を待ちます | 本文: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`、`{ info: `<a href={typesUrl}>メッセージ</a>を返します`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `GET` | `/session/:id/message/:messageID` | メッセージの詳細を取得する | 戻り値 `{ info: `<a href={typesUrl}>メッセージ</a>`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/prompt_async` | メッセージを非同期に送信する (待機なし) | body: `/session/:id/message` と同じ、`204 No Content` を返します。 |
|
||||
| `POST` | `/session/:id/command` | スラッシュコマンドを実行します | 本文: `{ messageID?, agent?, model?, command, arguments }`、`{ info: `<a href={typesUrl}>メッセージ</a>を返します`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| `POST` | `/session/:id/shell` | shell コマンドを実行する | 本文: `{ agent, model?, command }`、`{ info: `<a href={typesUrl}>メッセージ</a>を返します`, parts: `<a href={typesUrl}>Part[]</a>`}` |
|
||||
| メソッド | パス | 説明 | 詳細 |
|
||||
| -------- | --------------------------------- | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/session/:id/message` | セッション内のメッセージをリストする | クエリ: `limit?`、`{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}[]` を返します。 |
|
||||
| `POST` | `/session/:id/message` | メッセージを送信して応答を待ちます | 本文: `{ messageID?, model?, agent?, noReply?, system?, tools?, parts }`、`{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` を返します |
|
||||
| `GET` | `/session/:id/message/:messageID` | メッセージの詳細を取得する | 戻り値 `{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` |
|
||||
| `POST` | `/session/:id/prompt_async` | メッセージを非同期に送信する (待機なし) | body: `/session/:id/message` と同じ、`204 No Content` を返します。 |
|
||||
| `POST` | `/session/:id/command` | スラッシュコマンドを実行します | 本文: `{ messageID?, agent?, model?, command, arguments }`、`{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` を返します |
|
||||
| `POST` | `/session/:id/shell` | シェルコマンドを実行する | 本文: `{ agent, model?, command }`、`{ info: `<a href={typesUrl}><code>Message</code></a>`, parts: `<a href={typesUrl}><code>Part[]</code></a>`}` を返します |
|
||||
|
||||
---
|
||||
|
||||
### コマンド
|
||||
### Command
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ---------- | ---------------------------- | ---------------------------------------------- |
|
||||
| `GET` | `/command` | すべてのコマンドをリストする | <a href={typesUrl}><code>コマンド[]</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ---------- | ---------------------------- | --------------------------------------------- |
|
||||
| `GET` | `/command` | すべてのコマンドをリストする | <a href={typesUrl}><code>Command[]</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### ファイル
|
||||
### File
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ------------------------ | ---------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/find?pattern=<pat>` | ファイル内のテキストを検索 | `path`、`lines`、`line_number`、`absolute_offset`、`submatches` と一致するオブジェクトの配列 |
|
||||
| `GET` | `/find/file?query=<q>` | ファイルとディレクトリを名前で検索する | `string[]` (パス) |
|
||||
| `GET` | `/find/symbol?query=<q>` | ワークスペースのシンボルを検索する | <a href={typesUrl}><code>シンボル[]</code></a> |
|
||||
| `GET` | `/file?path=<path>` | ファイルとディレクトリをリストする | <a href={typesUrl}><code>FileNode[]</code></a> |
|
||||
| `GET` | `/file/content?path=<p>` | ファイルを読む | <a href={typesUrl}><code>ファイルコンテンツ</code></a> |
|
||||
| `GET` | `/file/status` | 追跡されたファイルのステータスを取得する | <a href={typesUrl}><code>ファイル[]</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------------------ | ---------------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| `GET` | `/find?pattern=<pat>` | ファイル内のテキストを検索 | `path`、`lines`、`line_number`、`absolute_offset`、`submatches` と一致するオブジェクトの配列 |
|
||||
| `GET` | `/find/file?query=<q>` | ファイルとディレクトリを名前で検索する | `string[]` (パス) |
|
||||
| `GET` | `/find/symbol?query=<q>` | ワークスペースのシンボルを検索する | <a href={typesUrl}><code>Symbol[]</code></a> |
|
||||
| `GET` | `/file?path=<path>` | ファイルとディレクトリをリストする | <a href={typesUrl}><code>FileNode[]</code></a> |
|
||||
| `GET` | `/file/content?path=<p>` | ファイルを読む | <a href={typesUrl}><code>FileContent</code></a> |
|
||||
| `GET` | `/file/status` | 追跡されたファイルのステータスを取得する | <a href={typesUrl}><code>File[]</code></a> |
|
||||
|
||||
#### `/find/file` クエリパラメータ
|
||||
|
||||
- `query` (必須) — 検索文字列 (あいまい一致)
|
||||
- `type` (オプション) — 結果を `"file"` または `"directory"` に制限します
|
||||
- `directory` (オプション) — 検索用のプロジェクト ルートをオーバーライドします。
|
||||
- `directory` (オプション) — 検索用のプロジェクトルートをオーバーライドします。
|
||||
- `limit` (オプション) — 最大結果 (1 ~ 200)
|
||||
- `dirs` (オプション) — 従来のフラグ (`"false"` はファイルのみを返します)
|
||||
|
||||
---
|
||||
|
||||
### ツール (実験的)
|
||||
### Tool (Experimental)
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ------------------------------------------- | ---------------------------------------------- | ------------------------------------------------ |
|
||||
| `GET` | `/experimental/tool/ids` | すべてのツール ID をリストする | <a href={typesUrl}><code>ツール ID</code></a> |
|
||||
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | モデルの JSON スキーマを含むツールをリストする | <a href={typesUrl}><code>ツールリスト</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------------------------------------- | ---------------------------------------------- | -------------------------------------------- |
|
||||
| `GET` | `/experimental/tool/ids` | すべてのツール ID をリストする | <a href={typesUrl}><code>ToolIDs</code></a> |
|
||||
| `GET` | `/experimental/tool?provider=<p>&model=<m>` | モデルの JSON スキーマを含むツールをリストする | <a href={typesUrl}><code>ToolList</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### LSP、フォーマッタ、MCP
|
||||
### LSP, Formatter, MCP
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------ | ------------ | ---------------------------------- | ----------------------------------------------------------------- |
|
||||
| `GET` | `/lsp` | LSP サーバーのステータスを取得 | <a href={typesUrl}><code>LSPStatus[]</code></a> |
|
||||
| `GET` | `/formatter` | フォーマッタのステータスを取得する | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
|
||||
| `GET` | `/mcp` | MCP サーバーのステータスを取得する | `{ [name: string]: `<a href={typesUrl}>MCPStatus</a>` }` |
|
||||
| `POST` | `/mcp` | MCP サーバーを動的に追加する | 本文: `{ name, config }`、MCP ステータス オブジェクトを返します。 |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------------ | ---------------------------------- | --------------------------------------------------------------------- |
|
||||
| `GET` | `/lsp` | LSP サーバーのステータスを取得 | <a href={typesUrl}><code>LSPStatus[]</code></a> |
|
||||
| `GET` | `/formatter` | フォーマッタのステータスを取得する | <a href={typesUrl}><code>FormatterStatus[]</code></a> |
|
||||
| `GET` | `/mcp` | MCP サーバーのステータスを取得する | `{ [name: string]: `<a href={typesUrl}><code>MCPStatus</code></a>` }` |
|
||||
| `POST` | `/mcp` | MCP サーバーを動的に追加する | 本文: `{ name, config }`、MCP ステータスオブジェクトを返します。 |
|
||||
|
||||
---
|
||||
|
||||
### エージェント
|
||||
### Agent
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | -------- | ------------------------------------------ | -------------------------------------------------- |
|
||||
| `GET` | `/agent` | 利用可能なすべてのエージェントをリストする | <a href={typesUrl}><code>エージェント[]</code></a> |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | -------- | ------------------------------------------ | ------------------------------------------- |
|
||||
| `GET` | `/agent` | 利用可能なすべてのエージェントをリストする | <a href={typesUrl}><code>Agent[]</code></a> |
|
||||
|
||||
---
|
||||
|
||||
### ロギング
|
||||
### Logging
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------ | ------ | ---------------------------------------------------------------------- | ------ |
|
||||
| `POST` | `/log` | ログエントリを書き込みます。本体:`{ service, level, message, extra? }` | うーん |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------ | ---------------------------------------------------------------------- | ---------- |
|
||||
| `POST` | `/log` | ログエントリを書き込みます。本体:`{ service, level, message, extra? }` | void |
|
||||
|
||||
---
|
||||
|
||||
### トゥイ
|
||||
### TUI
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ------ | ----------------------- | ----------------------------------------------- | ---------------------------------- |
|
||||
| `POST` | `/tui/append-prompt` | プロンプトにテキストを追加します | うーん |
|
||||
| `POST` | `/tui/open-help` | ヘルプダイアログを開く | うーん |
|
||||
| `POST` | `/tui/open-sessions` | セッションセレクターを開く | うーん |
|
||||
| `POST` | `/tui/open-themes` | テーマセレクターを開く | うーん |
|
||||
| `POST` | `/tui/open-models` | モデルセレクターを開く | うーん |
|
||||
| `POST` | `/tui/submit-prompt` | 現在のプロンプトを送信します | うーん |
|
||||
| `POST` | `/tui/clear-prompt` | プロンプトをクリア | うーん |
|
||||
| `POST` | `/tui/execute-command` | コマンドを実行する (`{ command }`) | うーん |
|
||||
| `POST` | `/tui/show-toast` | トーストを表示 (`{ title?, message, variant }`) | うーん |
|
||||
| `GET` | `/tui/control/next` | 次の制御リクエストを待ちます | コントロールリクエストオブジェクト |
|
||||
| `POST` | `/tui/control/response` | 制御リクエストに応答する (`{ body }`) | うーん |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ----------------------- | ----------------------------------------------- | -------------------------- |
|
||||
| `POST` | `/tui/append-prompt` | プロンプトにテキストを追加します | void |
|
||||
| `POST` | `/tui/open-help` | ヘルプダイアログを開く | void |
|
||||
| `POST` | `/tui/open-sessions` | セッションセレクターを開く | void |
|
||||
| `POST` | `/tui/open-themes` | テーマセレクターを開く | void |
|
||||
| `POST` | `/tui/open-models` | モデルセレクターを開く | void |
|
||||
| `POST` | `/tui/submit-prompt` | 現在のプロンプトを送信します | void |
|
||||
| `POST` | `/tui/clear-prompt` | プロンプトをクリア | void |
|
||||
| `POST` | `/tui/execute-command` | コマンドを実行する (`{ command }`) | void |
|
||||
| `POST` | `/tui/show-toast` | トーストを表示 (`{ title?, message, variant }`) | void |
|
||||
| `GET` | `/tui/control/next` | 次の制御リクエストを待ちます | 制御リクエストオブジェクト |
|
||||
| `POST` | `/tui/control/response` | 制御リクエストに応答する (`{ body }`) | void |
|
||||
|
||||
---
|
||||
|
||||
### 認証
|
||||
### Auth
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ----------- | ------------------------------------------------------------------------------ | ------ |
|
||||
| `PUT` | `/auth/:id` | 認証資格情報を設定します。本文はプロバイダーのスキーマと一致する必要があります | うーん |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ----------- | ------------------------------------------------------------------------------ | ---------- |
|
||||
| `PUT` | `/auth/:id` | 認証資格情報を設定します。本文はプロバイダーのスキーマと一致する必要があります | void |
|
||||
|
||||
---
|
||||
|
||||
### イベント
|
||||
### Event
|
||||
|
||||
| Method | Path | Description | Response |
|
||||
| ------ | -------- | ----------------------------------------------------------------------------- | ------------------------- |
|
||||
| `GET` | `/event` | Server-sent events stream. First event is `server.connected`, then bus events | Server-sent events stream |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | -------- | ------------------------------------------------------------------------------------- | ------------------------------ |
|
||||
| `GET` | `/event` | サーバー送信イベントストリーム。最初のイベントは `server.connected`、次にバスイベント | サーバー送信イベントストリーム |
|
||||
|
||||
---
|
||||
|
||||
### ドキュメント
|
||||
### Documentation
|
||||
|
||||
| 方法 | パス | 説明 | 応答 |
|
||||
| ----- | ------ | ---------------- | -------------------------------- |
|
||||
| `GET` | `/doc` | OpenAPI 3.1 仕様 | OpenAPI 仕様を備えた HTML ページ |
|
||||
| メソッド | パス | 説明 | レスポンス |
|
||||
| -------- | ------ | ---------------- | -------------------------------- |
|
||||
| `GET` | `/doc` | OpenAPI 3.1 仕様 | OpenAPI 仕様を備えた HTML ページ |
|
||||
|
||||
@@ -37,7 +37,7 @@ OpenCode は、会話の共有方法を制御する 3 つの共有モードを
|
||||
|
||||
これにより、クリップボードにコピーされる一意の URL が生成されます。
|
||||
|
||||
[config file](/docs/config):] で手動モードを明示的に設定するには:
|
||||
[設定ファイル](/docs/config): で手動モードを明示的に設定するには:
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -50,7 +50,7 @@ OpenCode は、会話の共有方法を制御する 3 つの共有モードを
|
||||
|
||||
### 自動共有
|
||||
|
||||
[config file](/docs/config):] で `share` オプションを `"auto"` に設定することで、すべての新しい会話の自動共有を有効にできます。
|
||||
[設定ファイル](/docs/config): で `share` オプションを `"auto"` に設定することで、すべての新しい会話の自動共有を有効にできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -65,7 +65,7 @@ OpenCode は、会話の共有方法を制御する 3 つの共有モードを
|
||||
|
||||
### 無効
|
||||
|
||||
[config file](/docs/config):] で `share` オプションを `"disabled"` に設定することで、共有を完全に無効にすることができます。
|
||||
[設定ファイル](/docs/config): で `share` オプションを `"disabled"` に設定することで、共有を完全に無効にすることができます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -78,9 +78,9 @@ OpenCode は、会話の共有方法を制御する 3 つの共有モードを
|
||||
|
||||
---
|
||||
|
||||
## 共有を解除する
|
||||
## 共有の解除
|
||||
|
||||
会話の共有を停止し、パブリック アクセスから削除するには:
|
||||
会話の共有を停止し、パブリックアクセスから削除するには:
|
||||
|
||||
```
|
||||
/unshare
|
||||
@@ -125,4 +125,4 @@ OpenCode は、会話の共有方法を制御する 3 つの共有モードを
|
||||
- **SSO を通じて認証されたユーザーのみに制限**
|
||||
- 独自のインフラストラクチャで **セルフホスト**
|
||||
|
||||
[組織内でのopencodeの使用について詳しくは、](/docs/enterprise) をご覧ください。
|
||||
[組織内での OpenCode の使用について詳しくは、](/docs/enterprise) をご覧ください。
|
||||
|
||||
@@ -1,37 +1,37 @@
|
||||
---
|
||||
title: 「エージェントスキル」
|
||||
description: 「SKILL.md定義による再利用可能な動作の定義」
|
||||
title: エージェントスキル
|
||||
description: SKILL.md 定義による再利用可能な動作の定義
|
||||
---
|
||||
|
||||
エージェント スキルにより、OpenCode はリポジトリまたはホーム ディレクトリから再利用可能な命令を検出できます。
|
||||
エージェントスキルにより、OpenCode はリポジトリまたはホームディレクトリから再利用可能な命令を検出できます。
|
||||
スキルはネイティブの `skill` ツールを介してオンデマンドでロードされます。エージェントは利用可能なスキルを確認し、必要に応じて完全なコンテンツをロードできます。
|
||||
|
||||
---
|
||||
|
||||
## ファイルを配置する
|
||||
## ファイルの配置
|
||||
|
||||
スキル名ごとにフォルダーを 1 つ作成し、その中に `SKILL.md` を置きます。
|
||||
OpenCode は次の場所を検索します。
|
||||
|
||||
- プロジェクト構成: `.opencode/skills/<name>/SKILL.md`
|
||||
- グローバル構成: `~/.config/opencode/skills/<name>/SKILL.md`
|
||||
- Project Claude互換: `.claude/skills/<name>/SKILL.md`
|
||||
- グローバルクロード互換: `~/.claude/skills/<name>/SKILL.md`
|
||||
- プロジェクト設定: `.opencode/skills/<name>/SKILL.md`
|
||||
- グローバル設定: `~/.config/opencode/skills/<name>/SKILL.md`
|
||||
- プロジェクト Claude 互換: `.claude/skills/<name>/SKILL.md`
|
||||
- グローバル Claude 互換: `~/.claude/skills/<name>/SKILL.md`
|
||||
- プロジェクトエージェント互換: `.agents/skills/<name>/SKILL.md`
|
||||
- グローバルエージェント互換: `~/.agents/skills/<name>/SKILL.md`
|
||||
|
||||
---
|
||||
|
||||
## 発見を理解する
|
||||
## 検出の仕組み
|
||||
|
||||
プロジェクトのローカル パスの場合、OpenCode は現在の作業ディレクトリから git ワークツリーに到達するまで進みます。
|
||||
プロジェクトのローカルパスの場合、OpenCode は現在の作業ディレクトリから git ワークツリーに到達するまで進みます。
|
||||
途中で、一致する `skills/*/SKILL.md` を `.opencode/` に読み込み、一致する `.claude/skills/*/SKILL.md` または `.agents/skills/*/SKILL.md` を読み込みます。
|
||||
|
||||
グローバル定義は、`~/.config/opencode/skills/*/SKILL.md`、`~/.claude/skills/*/SKILL.md`、および `~/.agents/skills/*/SKILL.md` からもロードされます。
|
||||
|
||||
---
|
||||
|
||||
## 前付を書く
|
||||
## フロントマターの記述
|
||||
|
||||
各 `SKILL.md` は YAML フロントマターで始まる必要があります。
|
||||
次のフィールドのみが認識されます。
|
||||
@@ -46,7 +46,7 @@ OpenCode は次の場所を検索します。
|
||||
|
||||
---
|
||||
|
||||
## 名前を検証する
|
||||
## 名前の検証
|
||||
|
||||
`name` は次のことを行う必要があります。
|
||||
|
||||
@@ -64,14 +64,14 @@ OpenCode は次の場所を検索します。
|
||||
|
||||
---
|
||||
|
||||
## 長さのルールに従ってください
|
||||
## 長さのルール
|
||||
|
||||
`description` は 1 ~ 1024 文字である必要があります。
|
||||
エージェントが正しく選択できるように、十分具体的な内容にしてください。
|
||||
|
||||
---
|
||||
|
||||
## 例を使用する
|
||||
## 使用例
|
||||
|
||||
次のように `.opencode/skills/git-release/SKILL.md` を作成します。
|
||||
|
||||
@@ -100,7 +100,7 @@ Ask clarifying questions if the target versioning scheme is unclear.
|
||||
|
||||
---
|
||||
|
||||
## ツールの説明を認識する
|
||||
## ツールの説明認識
|
||||
|
||||
OpenCode では、`skill` ツールの説明に利用可能なスキルがリストされています。
|
||||
各エントリにはスキル名と説明が含まれます。
|
||||
@@ -122,7 +122,7 @@ skill({ name: "git-release" })
|
||||
|
||||
---
|
||||
|
||||
## 権限の構成
|
||||
## 権限の設定
|
||||
|
||||
`opencode.json` のパターンベースの権限を使用して、エージェントがアクセスできるスキルを制御します。
|
||||
|
||||
@@ -139,7 +139,7 @@ skill({ name: "git-release" })
|
||||
}
|
||||
```
|
||||
|
||||
| 許可 | 行動 |
|
||||
| 許可 | アクション |
|
||||
| ------- | ---------------------------------------------------------- |
|
||||
| `allow` | スキルはすぐにロードされます |
|
||||
| `deny` | スキルはエージェントから隠蔽され、アクセスは拒否されました |
|
||||
@@ -149,11 +149,11 @@ skill({ name: "git-release" })
|
||||
|
||||
---
|
||||
|
||||
## エージェントごとに上書きする
|
||||
## エージェントごとの上書き
|
||||
|
||||
特定のエージェントにグローバルのデフォルトとは異なる権限を与えます。
|
||||
|
||||
**カスタム エージェントの場合** (エージェント フロントマター内):
|
||||
**カスタムエージェントの場合** (エージェントフロントマター内):
|
||||
|
||||
```yaml
|
||||
---
|
||||
@@ -181,11 +181,11 @@ permission:
|
||||
|
||||
---
|
||||
|
||||
## スキルツールを無効にする
|
||||
## スキルツールの無効化
|
||||
|
||||
スキルを使用すべきではないエージェントのスキルを完全に無効にします。
|
||||
|
||||
**カスタム エージェントの場合**:
|
||||
**カスタムエージェントの場合**:
|
||||
|
||||
```yaml
|
||||
---
|
||||
|
||||
@@ -3,21 +3,21 @@ title: テーマ
|
||||
description: 組み込みのテーマを選択するか、独自のテーマを定義します。
|
||||
---
|
||||
|
||||
OpenCode を使用すると、いくつかの組み込みテーマから 1 つを選択したり、terminal のテーマに適合するテーマを使用したり、独自のカスタム テーマを定義したりできます。
|
||||
OpenCode を使用すると、いくつかの組み込みテーマから 1 つを選択したり、ターミナルのテーマに適合するテーマを使用したり、独自のカスタムテーマを定義したりできます。
|
||||
|
||||
デフォルトでは、OpenCode は独自の `opencode` テーマを使用します。
|
||||
|
||||
---
|
||||
|
||||
## terminal要件
|
||||
## ターミナル要件
|
||||
|
||||
テーマをフルカラー パレットで正しく表示するには、terminal が **truecolor** (24 ビット カラー) をサポートしている必要があります。最新のterminal のほとんどはデフォルトでこれをサポートしていますが、有効にする必要がある場合があります。
|
||||
テーマをフルカラーパレットで正しく表示するには、ターミナルが **Truecolor** (24 ビットカラー) をサポートしている必要があります。最新のターミナルのほとんどはデフォルトでこれをサポートしていますが、有効にする必要がある場合があります。
|
||||
|
||||
- **サポートを確認してください**: `echo $COLORTERM` を実行します - `truecolor` または `24bit` が出力されるはずです
|
||||
- **トゥルーカラーを有効にする**: shell プロファイルで環境変数 `COLORTERM=truecolor` を設定します。
|
||||
- **terminal の互換性**: terminal エミュレータが 24 ビット カラーをサポートしていることを確認してください (iTerm2、Alacritty、Kitty、Windows terminal、および GNOME terminal の最新バージョンなどのほとんどの最新のterminalはサポートしています)。
|
||||
- **Truecolor を有効にする**: シェルプロファイルで環境変数 `COLORTERM=truecolor` を設定します。
|
||||
- **ターミナルの互換性**: ターミナルエミュレータが 24 ビットカラーをサポートしていることを確認してください (iTerm2、Alacritty、Kitty、Windows Terminal、および GNOME Terminal の最新バージョンなどのほとんどの最新のターミナルはサポートしています)。
|
||||
|
||||
トゥルーカラーのサポートがないと、テーマの色の精度が低下したり、最も近い 256 色の近似値に戻ったりする可能性があります。
|
||||
Truecolor のサポートがないと、テーマの色の精度が低下したり、最も近い 256 色の近似値に戻ったりする可能性があります。
|
||||
|
||||
---
|
||||
|
||||
@@ -45,23 +45,23 @@ OpenCode にはいくつかの組み込みテーマが付属しています。
|
||||
|
||||
## システムテーマ
|
||||
|
||||
`system` テーマは、terminal のカラースキームに自動的に適応するように設計されています。固定色を使用する従来のテーマとは異なり、_system_ テーマは次のようになります。
|
||||
`system` テーマは、ターミナルのカラースキームに自動的に適応するように設計されています。固定色を使用する従来のテーマとは異なり、_system_ テーマは次のようになります。
|
||||
|
||||
- **グレー スケールを生成**: terminal の背景色に基づいてカスタム グレー スケールを作成し、最適なコントラストを確保します。
|
||||
- **ANSI カラーを使用**: 構文の強調表示と UI 要素に標準の ANSI カラー (0 ~ 15) を利用し、terminal のカラー パレットを尊重します。
|
||||
- **terminal のデフォルトを維持**: テキストと背景の色に `none` を使用して、terminal のネイティブの外観を維持します。
|
||||
- **グレースケールを生成**: ターミナルの背景色に基づいてカスタムグレースケールを作成し、最適なコントラストを確保します。
|
||||
- **ANSI カラーを使用**: 構文の強調表示と UI 要素に標準の ANSI カラー (0 ~ 15) を利用し、ターミナルのカラーパレットを尊重します。
|
||||
- **ターミナルのデフォルトを維持**: テキストと背景の色に `none` を使用して、ターミナルのネイティブの外観を維持します。
|
||||
|
||||
システム テーマは、次のようなユーザーを対象としています。
|
||||
システムテーマは、次のようなユーザーを対象としています。
|
||||
|
||||
- OpenCode をterminal の外観と一致させたい
|
||||
- カスタムterminal のカラースキームを使用する
|
||||
- すべてのterminalアプリケーションにわたって一貫した外観を好む
|
||||
- OpenCode をターミナルの外観と一致させたい
|
||||
- カスタムターミナルのカラースキームを使用する
|
||||
- すべてのターミナルアプリケーションにわたって一貫した外観を好む
|
||||
|
||||
---
|
||||
|
||||
## テーマの使用
|
||||
|
||||
テーマを選択するには、`/theme` コマンドでテーマ選択を表示します。または、[config](/docs/config).
|
||||
テーマを選択するには、`/theme` コマンドでテーマ選択を表示します。または、[config](/docs/config) で設定します。
|
||||
|
||||
```json title="opencode.json" {3}
|
||||
{
|
||||
@@ -74,6 +74,304 @@ OpenCode にはいくつかの組み込みテーマが付属しています。
|
||||
|
||||
## カスタムテーマ
|
||||
|
||||
OpenCode は、ユーザーがテーマを簡単に作成およびカスタマイズできる柔軟な JSON ベースのテーマシステムをサポートしています。
|
||||
|
||||
---
|
||||
|
||||
### 優先順位
|
||||
|
||||
テーマは複数のディレクトリから次の順序でロードされ、後のディレクトリが前のディレクトリをオーバーライドします。
|
||||
|
||||
1. **組み込みテーマ** - これらはバイナリに埋め込まれています
|
||||
2. **ユーザー設定ディレクトリ** - `~/.config/opencode/themes/*.json` または `$XDG_CONFIG_HOME/opencode/themes/*.json` で定義されます
|
||||
3. **プロジェクトのルートディレクトリ** - `<project-root>/.opencode/themes/*.json` で定義されます。
|
||||
4. **現在の作業ディレクトリ** - `./.opencode/themes/*.json` で定義
|
||||
|
||||
複数のディレクトリに同じ名前のテーマが含まれている場合は、優先度の高いディレクトリのテーマが使用されます。
|
||||
|
||||
---
|
||||
|
||||
### テーマの作成
|
||||
|
||||
カスタムテーマを作成するには、テーマディレクトリの 1 つに JSON ファイルを作成します。
|
||||
|
||||
ユーザー全体のテーマの場合:
|
||||
|
||||
```bash no-frame
|
||||
mkdir -p ~/.config/opencode/themes
|
||||
vim ~/.config/opencode/themes/my-theme.json
|
||||
```
|
||||
|
||||
そしてプロジェクト固有のテーマについても。
|
||||
|
||||
```bash no-frame
|
||||
mkdir -p .opencode/themes
|
||||
vim .opencode/themes/my-theme.json
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### JSON 形式
|
||||
|
||||
テーマは、以下をサポートする柔軟な JSON 形式を使用します。
|
||||
|
||||
- **16 進数の色**: `"#ffffff"`
|
||||
- **ANSI カラー**: `3` (0-255)
|
||||
- **色の参照**: `"primary"` またはカスタム定義
|
||||
- **ダーク/ライトのバリエーション**: `{"dark": "#000", "light": "#fff"}`
|
||||
- **色なし**: `"none"` - ターミナルのデフォルトの色または透明を使用します。
|
||||
|
||||
---
|
||||
|
||||
### 色の定義
|
||||
|
||||
`defs` セクションはオプションであり、テーマ内で参照できる再利用可能な色を定義できます。
|
||||
|
||||
---
|
||||
|
||||
### ターミナルのデフォルト
|
||||
|
||||
特別な値 `"none"` を任意の色に使用して、ターミナルのデフォルトの色を継承できます。これは、ターミナルの配色とシームレスに融合するテーマを作成する場合に特に便利です。
|
||||
|
||||
- `"text": "none"` - ターミナルのデフォルトの前景色を使用します
|
||||
- `"background": "none"` - ターミナルのデフォルトの背景色を使用します
|
||||
|
||||
---
|
||||
|
||||
### 例
|
||||
|
||||
カスタムテーマの例を次に示します。
|
||||
|
||||
```json title="my-theme.json"
|
||||
{
|
||||
"$schema": "https://opencode.ai/theme.json",
|
||||
"defs": {
|
||||
"nord0": "#2E3440",
|
||||
"nord1": "#3B4252",
|
||||
"nord2": "#434C5E",
|
||||
"nord3": "#4C566A",
|
||||
"nord4": "#D8DEE9",
|
||||
"nord5": "#E5E9F0",
|
||||
"nord6": "#ECEFF4",
|
||||
"nord7": "#8FBCBB",
|
||||
"nord8": "#88C0D0",
|
||||
"nord9": "#81A1C1",
|
||||
"nord10": "#5E81AC",
|
||||
"nord11": "#BF616A",
|
||||
"nord12": "#D08770",
|
||||
"nord13": "#EBCB8B",
|
||||
"nord14": "#A3BE8C",
|
||||
"nord15": "#B48EAD"
|
||||
},
|
||||
"theme": {
|
||||
"primary": {
|
||||
"dark": "nord8",
|
||||
"light": "nord10"
|
||||
},
|
||||
"secondary": {
|
||||
"dark": "nord9",
|
||||
"light": "nord9"
|
||||
},
|
||||
"accent": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"error": {
|
||||
"dark": "nord11",
|
||||
"light": "nord11"
|
||||
},
|
||||
"warning": {
|
||||
"dark": "nord12",
|
||||
"light": "nord12"
|
||||
},
|
||||
"success": {
|
||||
"dark": "nord14",
|
||||
"light": "nord14"
|
||||
},
|
||||
"info": {
|
||||
"dark": "nord8",
|
||||
"light": "nord10"
|
||||
},
|
||||
"text": {
|
||||
"dark": "nord4",
|
||||
"light": "nord0"
|
||||
},
|
||||
"textMuted": {
|
||||
"dark": "nord3",
|
||||
"light": "nord1"
|
||||
},
|
||||
"background": {
|
||||
"dark": "nord0",
|
||||
"light": "nord6"
|
||||
},
|
||||
"backgroundPanel": {
|
||||
"dark": "nord1",
|
||||
"light": "nord5"
|
||||
},
|
||||
"backgroundElement": {
|
||||
"dark": "nord1",
|
||||
"light": "nord4"
|
||||
},
|
||||
"border": {
|
||||
"dark": "nord2",
|
||||
"light": "nord3"
|
||||
},
|
||||
"borderActive": {
|
||||
"dark": "nord3",
|
||||
"light": "nord2"
|
||||
},
|
||||
"borderSubtle": {
|
||||
"dark": "nord2",
|
||||
"light": "nord3"
|
||||
},
|
||||
"diffAdded": {
|
||||
"dark": "nord14",
|
||||
"light": "nord14"
|
||||
},
|
||||
"diffRemoved": {
|
||||
"dark": "nord11",
|
||||
"light": "nord11"
|
||||
},
|
||||
"diffContext": {
|
||||
"dark": "nord3",
|
||||
"light": "nord3"
|
||||
},
|
||||
"diffHunkHeader": {
|
||||
"dark": "nord3",
|
||||
"light": "nord3"
|
||||
},
|
||||
"diffHighlightAdded": {
|
||||
"dark": "nord14",
|
||||
"light": "nord14"
|
||||
},
|
||||
"diffHighlightRemoved": {
|
||||
"dark": "nord11",
|
||||
"light": "nord11"
|
||||
},
|
||||
"diffAddedBg": {
|
||||
"dark": "#3B4252",
|
||||
"light": "#E5E9F0"
|
||||
},
|
||||
"diffRemovedBg": {
|
||||
"dark": "#3B4252",
|
||||
"light": "#E5E9F0"
|
||||
},
|
||||
"diffContextBg": {
|
||||
"dark": "nord1",
|
||||
"light": "nord5"
|
||||
},
|
||||
"diffLineNumber": {
|
||||
"dark": "nord2",
|
||||
"light": "nord4"
|
||||
},
|
||||
"diffAddedLineNumberBg": {
|
||||
"dark": "#3B4252",
|
||||
"light": "#E5E9F0"
|
||||
},
|
||||
"diffRemovedLineNumberBg": {
|
||||
"dark": "#3B4252",
|
||||
"light": "#E5E9F0"
|
||||
},
|
||||
"markdownText": {
|
||||
"dark": "nord4",
|
||||
"light": "nord0"
|
||||
},
|
||||
"markdownHeading": {
|
||||
"dark": "nord8",
|
||||
"light": "nord10"
|
||||
},
|
||||
"markdownLink": {
|
||||
"dark": "nord9",
|
||||
"light": "nord9"
|
||||
},
|
||||
"markdownLinkText": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"markdownCode": {
|
||||
"dark": "nord14",
|
||||
"light": "nord14"
|
||||
},
|
||||
"markdownBlockQuote": {
|
||||
"dark": "nord3",
|
||||
"light": "nord3"
|
||||
},
|
||||
"markdownEmph": {
|
||||
"dark": "nord12",
|
||||
"light": "nord12"
|
||||
},
|
||||
"markdownStrong": {
|
||||
"dark": "nord13",
|
||||
"light": "nord13"
|
||||
},
|
||||
"markdownHorizontalRule": {
|
||||
"dark": "nord3",
|
||||
"light": "nord3"
|
||||
},
|
||||
"markdownListItem": {
|
||||
"dark": "nord8",
|
||||
"light": "nord10"
|
||||
},
|
||||
"markdownListEnumeration": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"markdownImage": {
|
||||
"dark": "nord9",
|
||||
"light": "nord9"
|
||||
},
|
||||
"markdownImageText": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"markdownCodeBlock": {
|
||||
"dark": "nord4",
|
||||
"light": "nord0"
|
||||
},
|
||||
"syntaxComment": {
|
||||
"dark": "nord3",
|
||||
"light": "nord3"
|
||||
},
|
||||
"syntaxKeyword": {
|
||||
"dark": "nord9",
|
||||
"light": "nord9"
|
||||
},
|
||||
"syntaxFunction": {
|
||||
"dark": "nord8",
|
||||
"light": "nord8"
|
||||
},
|
||||
"syntaxVariable": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"syntaxString": {
|
||||
"dark": "nord14",
|
||||
"light": "nord14"
|
||||
},
|
||||
"syntaxNumber": {
|
||||
"dark": "nord15",
|
||||
"light": "nord15"
|
||||
},
|
||||
"syntaxType": {
|
||||
"dark": "nord7",
|
||||
"light": "nord7"
|
||||
},
|
||||
"syntaxOperator": {
|
||||
"dark": "nord9",
|
||||
"light": "nord9"
|
||||
},
|
||||
"syntaxPunctuation": {
|
||||
"dark": "nord4",
|
||||
"light": "nord0"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## カスタムテーマ
|
||||
|
||||
OpenCode は、ユーザーがテーマを簡単に作成およびカスタマイズできる柔軟な JSON ベースのテーマ システムをサポートしています。
|
||||
|
||||
---
|
||||
@@ -129,7 +427,7 @@ vim .opencode/themes/my-theme.json
|
||||
|
||||
---
|
||||
|
||||
### terminal のデフォルト
|
||||
### ターミナルのデフォルト
|
||||
|
||||
特別な値 `"none"` を任意の色に使用して、terminal のデフォルトの色を継承できます。これは、terminal の配色とシームレスに融合するテーマを作成する場合に特に便利です。
|
||||
|
||||
|
||||
@@ -3,13 +3,13 @@ title: ツール
|
||||
description: LLM が使用できるツールを管理します。
|
||||
---
|
||||
|
||||
ツールを使用すると、LLM がコードベースでアクションを実行できるようになります。 OpenCode には一連の組み込みツールが付属していますが、[カスタム ツール](/docs/custom-tools) または [MCP サーバー](/docs/mcp-servers).
|
||||
ツールを使用すると、LLM がコードベースでアクションを実行できるようになります。 OpenCode には一連の組み込みツールが付属していますが、[カスタムツール](/docs/custom-tools) または [MCP サーバー](/docs/mcp-servers) を使用して拡張できます。
|
||||
|
||||
デフォルトでは、すべてのツールは**有効**になっており、実行するための権限は必要ありません。 [permissions](/docs/permissions).
|
||||
デフォルトでは、すべてのツールは**有効**になっており、実行するための権限は必要ありません。 [権限](/docs/permissions).
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
`permission` フィールドを使用してツールの動作を制御します。各ツールを許可、拒否、または承認を要求することができます。
|
||||
|
||||
@@ -39,15 +39,15 @@ description: LLM が使用できるツールを管理します。
|
||||
|
||||
---
|
||||
|
||||
## 内蔵
|
||||
## 組み込み
|
||||
|
||||
OpenCode で利用可能なすべての組み込みツールを次に示します。
|
||||
|
||||
---
|
||||
|
||||
### Bash
|
||||
### bash
|
||||
|
||||
プロジェクト環境でshell コマンドを実行します。
|
||||
プロジェクト環境でシェルコマンドを実行します。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -58,11 +58,11 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
}
|
||||
```
|
||||
|
||||
このツールを使用すると、LLM は `npm install`、`git status`、またはその他のshell コマンドなどのterminalコマンドを実行できます。
|
||||
このツールを使用すると、LLM は `npm install`、`git status`、またはその他のシェルコマンドなどのターミナルコマンドを実行できます。
|
||||
|
||||
---
|
||||
|
||||
### 編集
|
||||
### edit
|
||||
|
||||
正確な文字列置換を使用して既存のファイルを変更します。
|
||||
|
||||
@@ -79,7 +79,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### 書く
|
||||
### write
|
||||
|
||||
新しいファイルを作成するか、既存のファイルを上書きします。
|
||||
|
||||
@@ -100,7 +100,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### 読む
|
||||
### read
|
||||
|
||||
コードベースからファイルの内容を読み取ります。
|
||||
|
||||
@@ -130,11 +130,11 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
}
|
||||
```
|
||||
|
||||
コードベース全体での高速コンテンツ検索。完全な正規表現構文とファイル パターン フィルタリングをサポートします。
|
||||
コードベース全体での高速コンテンツ検索。完全な正規表現構文とファイルパターンフィルタリングをサポートします。
|
||||
|
||||
---
|
||||
|
||||
### グロブ
|
||||
### glob
|
||||
|
||||
パターンマッチングによりファイルを検索します。
|
||||
|
||||
@@ -147,11 +147,11 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
}
|
||||
```
|
||||
|
||||
`**/*.js` や `src/**/*.ts` などの glob パターンを使用してファイルを検索します。一致するファイル パスを変更時間順に並べて返します。
|
||||
`**/*.js` や `src/**/*.ts` などの glob パターンを使用してファイルを検索します。一致するファイルパスを変更時間順に並べて返します。
|
||||
|
||||
---
|
||||
|
||||
### リスト
|
||||
### list
|
||||
|
||||
指定されたパス内のファイルとディレクトリを一覧表示します。
|
||||
|
||||
@@ -170,7 +170,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
### lsp (実験的)
|
||||
|
||||
構成された LSP サーバーと対話して、定義、参照、ホバー情報、呼び出し階層などのコード インテリジェンス機能を取得します。
|
||||
構成された LSP サーバーと対話して、定義、参照、ホバー情報、呼び出し階層などのコードインテリジェンス機能を取得します。
|
||||
|
||||
:::note
|
||||
このツールは、`OPENCODE_EXPERIMENTAL_LSP_TOOL=true` (または `OPENCODE_EXPERIMENTAL=true`) の場合にのみ使用できます。
|
||||
@@ -191,7 +191,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### パッチ
|
||||
### patch
|
||||
|
||||
ファイルにパッチを適用します。
|
||||
|
||||
@@ -204,7 +204,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
}
|
||||
```
|
||||
|
||||
このツールは、コードベースにパッチ ファイルを適用します。さまざまなソースからの差分やパッチを適用するのに役立ちます。
|
||||
このツールは、コードベースにパッチファイルを適用します。さまざまなソースからの差分やパッチを適用するのに役立ちます。
|
||||
|
||||
:::note
|
||||
`patch` ツールは、すべてのファイル変更 (`edit`、`edit`、`write`、`patch`) をカバーする `multiedit` 権限によって制御されます。
|
||||
@@ -212,7 +212,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### スキル
|
||||
### skill
|
||||
|
||||
[skill](/docs/skills) (`SKILL.md` ファイル) をロードし、会話でその内容を返します。
|
||||
|
||||
@@ -229,7 +229,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
### todowrite
|
||||
|
||||
コーディング セッション中に ToDo リストを管理します。
|
||||
コーディングセッション中に ToDo リストを管理します。
|
||||
|
||||
```json title="opencode.json" {4}
|
||||
{
|
||||
@@ -240,7 +240,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
}
|
||||
```
|
||||
|
||||
タスク リストを作成および更新して、複雑な操作中の進行状況を追跡します。 LLM はこれを使用して、複数ステップのタスクを整理します。
|
||||
タスクリストを作成および更新して、複雑な操作中の進行状況を追跡します。 LLM はこれを使用して、複数ステップのタスクを整理します。
|
||||
|
||||
:::note
|
||||
このツールはデフォルトではサブエージェントに対して無効になっていますが、手動で有効にすることができます。 [詳細はこちら](/docs/agents/#permissions)
|
||||
@@ -248,7 +248,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### トドリード
|
||||
### todoread
|
||||
|
||||
既存の ToDo リストを読み取ります。
|
||||
|
||||
@@ -269,7 +269,7 @@ OpenCode で利用可能なすべての組み込みツールを次に示しま
|
||||
|
||||
---
|
||||
|
||||
### ウェブフェッチ
|
||||
### webfetch
|
||||
|
||||
Web コンテンツを取得します。
|
||||
|
||||
@@ -282,11 +282,11 @@ Web コンテンツを取得します。
|
||||
}
|
||||
```
|
||||
|
||||
LLM が Web ページをフェッチして読み取ることを許可します。ドキュメントの検索やオンライン リソースの調査に役立ちます。
|
||||
LLM が Web ページをフェッチして読み取ることを許可します。ドキュメントの検索やオンラインリソースの調査に役立ちます。
|
||||
|
||||
---
|
||||
|
||||
### ウェブ検索
|
||||
### websearch
|
||||
|
||||
ウェブで情報を検索してください。
|
||||
|
||||
@@ -310,7 +310,7 @@ OPENCODE_ENABLE_EXA=1 opencode
|
||||
}
|
||||
```
|
||||
|
||||
Exa AI を使用して Web 検索を実行し、オンラインで関連情報を見つけます。トピックの調査、最新のイベントの検索、またはトレーニング データのカットオフを超えた情報の収集に役立ちます。
|
||||
Exa AI を使用して Web 検索を実行し、オンラインで関連情報を見つけます。トピックの調査、最新のイベントの検索、またはトレーニングデータのカットオフを超えた情報の収集に役立ちます。
|
||||
|
||||
API キーは必要ありません。ツールは認証なしで Exa AI のホストされた MCP サービスに直接接続します。
|
||||
|
||||
@@ -320,7 +320,7 @@ API キーは必要ありません。ツールは認証なしで Exa AI のホ
|
||||
|
||||
---
|
||||
|
||||
### 質問
|
||||
### question
|
||||
|
||||
実行中にユーザーに質問します。
|
||||
|
||||
@@ -346,21 +346,21 @@ API キーは必要ありません。ツールは認証なしで Exa AI のホ
|
||||
|
||||
## カスタムツール
|
||||
|
||||
カスタム ツールを使用すると、LLM が呼び出すことができる独自の関数を定義できます。これらは構成ファイルで定義されており、任意のコードを実行できます。
|
||||
カスタムツールを使用すると、LLM が呼び出すことができる独自の関数を定義できます。これらは設定ファイルで定義されており、任意のコードを実行できます。
|
||||
|
||||
[カスタム ツールの作成について詳しくは、](/docs/custom-tools) をご覧ください。
|
||||
[カスタムツールの作成について詳しくは、](/docs/custom-tools) をご覧ください。
|
||||
|
||||
---
|
||||
|
||||
## MCPサーバー
|
||||
|
||||
MCP (Model Context Protocol) サーバーを使用すると、外部ツールとサービスを統合できます。これには、データベース アクセス、API 統合、サードパーティ サービスが含まれます。
|
||||
MCP (Model Context Protocol) サーバーを使用すると、外部ツールとサービスを統合できます。これには、データベースアクセス、API 統合、サードパーティサービスが含まれます。
|
||||
|
||||
[MCP サーバーの構成について詳しくは、](/docs/mcp-servers) をご覧ください。
|
||||
[MCP サーバーの設定について詳しくは、](/docs/mcp-servers) をご覧ください。
|
||||
|
||||
---
|
||||
|
||||
## 内部構造
|
||||
## 内部動作
|
||||
|
||||
内部的には、`grep`、`glob`、`list` などのツールは内部で [ripgrep](https://github.com/BurntSushi/ripgrep) を使用します。デフォルトでは、ripgrep は `.gitignore` パターンを尊重します。つまり、`.gitignore` にリストされているファイルとディレクトリは検索とリストから除外されます。
|
||||
|
||||
|
||||
@@ -3,26 +3,26 @@ title: トラブルシューティング
|
||||
description: よくある問題とその解決方法。
|
||||
---
|
||||
|
||||
OpenCode の問題をデバッグするには、まず、ディスク上に保存されているログとローカル データを確認します。
|
||||
OpenCode の問題をデバッグするには、まず、ディスク上に保存されているログとローカルデータを確認します。
|
||||
|
||||
---
|
||||
|
||||
## ログ
|
||||
|
||||
ログ ファイルは次の場所に書き込まれます。
|
||||
ログファイルは次の場所に書き込まれます。
|
||||
|
||||
- **macOS/Linux**: `~/.local/share/opencode/log/`
|
||||
- **Windows**: `WIN+R` を押して `%USERPROFILE%\.local\share\opencode\log` を貼り付けます
|
||||
|
||||
ログ ファイルにはタイムスタンプ付きの名前が付けられ (例: `2025-01-09T123456.log`)、最新の 10 個のログ ファイルが保存されます。
|
||||
ログファイルにはタイムスタンプ付きの名前が付けられ (例: `2025-01-09T123456.log`)、最新の 10 個のログファイルが保存されます。
|
||||
|
||||
`--log-level` コマンドライン オプションを使用してログ レベルを設定すると、より詳細なデバッグ情報を取得できます。たとえば、`opencode --log-level DEBUG`。
|
||||
`--log-level` コマンドラインオプションを使用してログレベルを設定すると、より詳細なデバッグ情報を取得できます。たとえば、`opencode --log-level DEBUG`。
|
||||
|
||||
---
|
||||
|
||||
## ストレージ
|
||||
|
||||
opencode は、セッション データとその他のアプリケーション データをディスク上の次の場所に保存します。
|
||||
OpenCode は、セッションデータとその他のアプリケーションデータをディスク上の次の場所に保存します。
|
||||
|
||||
- **macOS/Linux**: `~/.local/share/opencode/`
|
||||
- **Windows**: `WIN+R` を押して `%USERPROFILE%\.local\share\opencode` を貼り付けます
|
||||
@@ -31,7 +31,7 @@ opencode は、セッション データとその他のアプリケーション
|
||||
|
||||
- `auth.json` - API キー、OAuth トークンなどの認証データ
|
||||
- `log/` - アプリケーションログ
|
||||
- `project/` - セッション データやメッセージ データなどのプロジェクト固有のデータ
|
||||
- `project/` - セッションデータやメッセージデータなどのプロジェクト固有のデータ
|
||||
- プロジェクトが Git リポジトリ内にある場合は、`./<project-slug>/storage/` に保存されます
|
||||
- Git リポジトリではない場合は、`./global/storage/` に保存されます
|
||||
|
||||
@@ -39,21 +39,21 @@ opencode は、セッション データとその他のアプリケーション
|
||||
|
||||
## デスクトップアプリ
|
||||
|
||||
OpenCode Desktop は、ローカル OpenCode サーバー (`opencode-cli` サイドカー) をバックグラウンドで実行します。ほとんどの問題は、誤動作するプラグイン、破損したキャッシュ、または不正なサーバー設定によって発生します。
|
||||
OpenCode Desktop は、ローカル OpenCode サーバー (`opencode-cli` サイドカー) をバックグラウンドで実行します。ほとんどの問題は、誤動作しているプラグイン、破損したキャッシュ、または不正なサーバー設定によって発生します。
|
||||
|
||||
### クイックチェック
|
||||
|
||||
- アプリを完全に終了して再起動します。
|
||||
- アプリにエラー画面が表示された場合は、**再起動** をクリックしてエラーの詳細をコピーします。
|
||||
- macOS のみ: `OpenCode` メニュー -> **Webview を再ロード** (UI が空白またはフリーズしている場合に役立ちます)。
|
||||
- macOS のみ: `OpenCode` メニュー -> **Webview をリロード** (UI が空白またはフリーズしている場合に役立ちます)。
|
||||
|
||||
---
|
||||
|
||||
### プラグインを無効にする
|
||||
|
||||
デスクトップ アプリが起動時にクラッシュしたり、ハングしたり、異常な動作をしたりする場合は、まずプラグインを無効にしてください。
|
||||
デスクトップアプリが起動時にクラッシュしたり、ハングしたり、異常な動作をしたりする場合は、まずプラグインを無効にしてください。
|
||||
|
||||
#### グローバル設定を確認してください
|
||||
#### グローバル設定の確認
|
||||
|
||||
グローバル設定ファイルを開き、`plugin` キーを探します。
|
||||
|
||||
@@ -70,14 +70,14 @@ OpenCode Desktop は、ローカル OpenCode サーバー (`opencode-cli` サイ
|
||||
}
|
||||
```
|
||||
|
||||
#### プラグインのディレクトリを確認する
|
||||
#### プラグインディレクトリの確認
|
||||
|
||||
OpenCode はディスクからローカル プラグインをロードすることもできます。これらを一時的に邪魔にならない場所に移動し (またはフォルダーの名前を変更し)、デスクトップ アプリを再起動します。
|
||||
OpenCode はディスクからローカルプラグインをロードすることもできます。これらを一時的に邪魔にならない場所に移動し (またはフォルダーの名前を変更し)、デスクトップアプリを再起動します。
|
||||
|
||||
- **グローバル プラグイン**
|
||||
- **グローバルプラグイン**
|
||||
- **macOS/Linux**: `~/.config/opencode/plugins/`
|
||||
- **Windows**: `WIN+R` を押して `%USERPROFILE%\.config\opencode\plugins` を貼り付けます
|
||||
- **プロジェクト プラグイン** (プロジェクトごとの構成を使用する場合のみ)
|
||||
- **プロジェクトプラグイン** (プロジェクトごとの構成を使用する場合のみ)
|
||||
- `<your-project>/.opencode/plugins/`
|
||||
|
||||
アプリが再び動作し始めた場合は、プラグインを 1 つずつ再度有効にして、問題の原因となっているプラグインを特定します。
|
||||
@@ -89,7 +89,7 @@ OpenCode はディスクからローカル プラグインをロードするこ
|
||||
プラグインを無効にしても解決しない場合 (またはプラグインのインストールが停止した場合)、OpenCode がキャッシュを再構築できるようにキャッシュをクリアします。
|
||||
|
||||
1. OpenCode Desktop を完全に終了します。
|
||||
2. キャッシュ ディレクトリを削除します。
|
||||
2. キャッシュディレクトリを削除します。
|
||||
|
||||
- **macOS**: Finder -> `Cmd+Shift+G` -> `~/.cache/opencode` を貼り付け
|
||||
- **Linux**: `~/.cache/opencode` を削除します (または `rm -rf ~/.cache/opencode` を実行します)。
|
||||
@@ -99,23 +99,23 @@ OpenCode はディスクからローカル プラグインをロードするこ
|
||||
|
||||
---
|
||||
|
||||
### サーバー接続の問題を修正する
|
||||
### サーバー接続の問題の修正
|
||||
|
||||
OpenCode Desktop は、独自のローカル サーバー (デフォルト) を起動することも、構成したサーバー URL に接続することもできます。
|
||||
OpenCode Desktop は、独自のローカルサーバー (デフォルト) を起動することも、構成したサーバー URL に接続することもできます。
|
||||
|
||||
**「接続に失敗しました」** ダイアログが表示された場合 (またはアプリがスプラッシュ画面を通過できない場合)、カスタム サーバー URL を確認してください。
|
||||
**「接続に失敗しました」** ダイアログが表示された場合 (またはアプリがスプラッシュ画面を通過できない場合)、カスタムサーバー URL を確認してください。
|
||||
|
||||
#### デスクトップのデフォルトのサーバー URL をクリアします
|
||||
|
||||
ホーム画面でサーバー名 (ステータス ドット付き) をクリックしてサーバー ピッカーを開きます。 [**デフォルト サーバー**] セクションで、[**クリア**] をクリックします。
|
||||
ホーム画面でサーバー名 (ステータスドット付き) をクリックしてサーバーピッカーを開きます。 [**デフォルトサーバー**] セクションで、[**クリア**] をクリックします。
|
||||
|
||||
#### 設定から `server.port` / `server.hostname` を削除します
|
||||
|
||||
`opencode.json(c)` に `server` セクションが含まれている場合は、それを一時的に削除し、デスクトップ アプリを再起動します。
|
||||
`opencode.json(c)` に `server` セクションが含まれている場合は、それを一時的に削除し、デスクトップアプリを再起動します。
|
||||
|
||||
#### 環境変数を確認する
|
||||
|
||||
環境に `OPENCODE_PORT` が設定されている場合、デスクトップ アプリはローカル サーバーにそのポートを使用しようとします。
|
||||
環境に `OPENCODE_PORT` が設定されている場合、デスクトップアプリはローカルサーバーにそのポートを使用しようとします。
|
||||
|
||||
- `OPENCODE_PORT` の設定を解除して (または空きポートを選択して)、再起動します。
|
||||
|
||||
@@ -123,7 +123,7 @@ OpenCode Desktop は、独自のローカル サーバー (デフォルト) を
|
||||
|
||||
### Linux: Wayland / X11 の問題
|
||||
|
||||
Linux では、一部の Wayland セットアップにより、空白のウィンドウやコンポジター エラーが発生する可能性があります。
|
||||
Linux では、一部の Wayland セットアップにより、空白のウィンドウやコンポジターエラーが発生する可能性があります。
|
||||
|
||||
- Wayland を使用していて、アプリが空白またはクラッシュしている場合は、`OC_ALLOW_WAYLAND=1` で起動してみてください。
|
||||
- これにより状況が悪化する場合は、それを削除し、代わりに X11 セッションで起動してみてください。
|
||||
@@ -138,7 +138,7 @@ Windows では、OpenCode Desktop には Microsoft Edge **WebView2 ランタイ
|
||||
|
||||
### Windows: 一般的なパフォーマンスの問題
|
||||
|
||||
Windows でパフォーマンスの低下、ファイル アクセスの問題、またはterminal の問題が発生している場合は、[WSL (Windows Subsystem for Linux)](/docs/windows-wsl) を使用してみてください。 WSL は、OpenCode の機能とよりシームレスに連携する Linux 環境を提供します。
|
||||
Windows でパフォーマンスの低下、ファイルアクセスの問題、またはターミナルの問題が発生している場合は、[WSL (Windows Subsystem for Linux)](/docs/windows-wsl) を使用してみてください。 WSL は、OpenCode の機能とよりシームレスに連携する Linux 環境を提供します。
|
||||
|
||||
---
|
||||
|
||||
@@ -151,12 +151,12 @@ OpenCode Desktop では、次の場合にのみシステム通知が表示され
|
||||
|
||||
---
|
||||
|
||||
### デスクトップ アプリのストレージをリセットする (最後の手段)
|
||||
### デスクトップアプリのストレージのリセット (最後の手段)
|
||||
|
||||
アプリが起動せず、UI 内から設定をクリアできない場合は、デスクトップ アプリの保存された状態をリセットします。
|
||||
アプリが起動せず、UI 内から設定をクリアできない場合は、デスクトップアプリの保存された状態をリセットします。
|
||||
|
||||
1. OpenCode デスクトップを終了します。
|
||||
2. これらのファイルを見つけて削除します (これらのファイルは OpenCode デスクトップ アプリのデータ ディレクトリにあります)。
|
||||
2. これらのファイルを見つけて削除します (これらのファイルは OpenCode デスクトップアプリのデータディレクトリにあります)。
|
||||
|
||||
- `opencode.settings.dat` (デスクトップのデフォルトサーバー URL)
|
||||
- `opencode.global.dat` および `opencode.workspace.*.dat` (最近のサーバー/プロジェクトなどの UI 状態)
|
||||
@@ -169,7 +169,7 @@ OpenCode Desktop では、次の場合にのみシステム通知が表示され
|
||||
|
||||
---
|
||||
|
||||
## 助けを求める
|
||||
## ヘルプを求める
|
||||
|
||||
OpenCode で問題が発生している場合:
|
||||
|
||||
@@ -181,7 +181,7 @@ OpenCode で問題が発生している場合:
|
||||
|
||||
新しい問題を作成する前に、既存の問題を検索して、問題がすでに報告されているかどうかを確認してください。
|
||||
|
||||
2. **Discord に参加してください**
|
||||
2. **Discord への参加**
|
||||
|
||||
リアルタイムのヘルプやコミュニティのディスカッションについては、Discord サーバーに参加してください。
|
||||
|
||||
@@ -195,10 +195,10 @@ OpenCode で問題が発生している場合:
|
||||
|
||||
---
|
||||
|
||||
### OpenCodeが起動しない
|
||||
### OpenCode が起動しない
|
||||
|
||||
1. ログでエラー メッセージを確認する
|
||||
2. `--print-logs` で実行して、terminal に出力を確認してください。
|
||||
1. ログでエラーメッセージを確認する
|
||||
2. `--print-logs` で実行して、ターミナルに出力を確認してください。
|
||||
3. `opencode upgrade` を含む最新バージョンを使用していることを確認してください
|
||||
|
||||
---
|
||||
@@ -211,7 +211,7 @@ OpenCode で問題が発生している場合:
|
||||
|
||||
---
|
||||
|
||||
### モデルがありません
|
||||
### モデルが見つからない
|
||||
|
||||
1. プロバイダーで認証されていることを確認してください
|
||||
2. 構成内のモデル名が正しいことを確認してください
|
||||
@@ -237,42 +237,42 @@ ProviderInitError が発生した場合は、構成が無効または破損し
|
||||
|
||||
これを解決するには:
|
||||
|
||||
1. まず、[プロバイダー ガイド](/docs/providers) に従って、プロバイダーが正しく設定されていることを確認します。
|
||||
1. まず、[プロバイダーガイド](/docs/providers) に従って、プロバイダーが正しく設定されていることを確認します。
|
||||
2. 問題が解決しない場合は、保存されている構成をクリアしてみてください。
|
||||
|
||||
```bash
|
||||
rm -rf ~/.local/share/opencode
|
||||
```
|
||||
|
||||
Windows では、`WIN+R` を押して、`%USERPROFILE%\.local\share\opencode` を削除します。
|
||||
Windows では、`WIN+R` を押して、`%USERPROFILE%\.local\share\opencode` を削除します。
|
||||
|
||||
3. TUI の `/connect` コマンドを使用して、プロバイダーで再認証します。
|
||||
|
||||
---
|
||||
|
||||
### AI_APICallError とプロバイダー パッケージの問題
|
||||
### AI_APICallError とプロバイダーパッケージの問題
|
||||
|
||||
API 呼び出しエラーが発生した場合は、プロバイダー パッケージが古いことが原因である可能性があります。 opencode は、必要に応じてプロバイダー パッケージ (OpenAI、Anthropic、Google など) を動的にインストールし、ローカルにキャッシュします。
|
||||
API 呼び出しエラーが発生した場合は、プロバイダーパッケージが古いことが原因である可能性があります。 OpenCode は、必要に応じてプロバイダーパッケージ (OpenAI、Anthropic、Google など) を動的にインストールし、ローカルにキャッシュします。
|
||||
|
||||
プロバイダー パッケージの問題を解決するには:
|
||||
プロバイダーパッケージの問題を解決するには:
|
||||
|
||||
1. プロバイダー パッケージのキャッシュをクリアします。
|
||||
1. プロバイダーパッケージのキャッシュをクリアします。
|
||||
|
||||
```bash
|
||||
rm -rf ~/.cache/opencode
|
||||
```
|
||||
|
||||
Windows では、`WIN+R` を押して、`%USERPROFILE%\.cache\opencode` を削除します。
|
||||
Windows では、`WIN+R` を押して、`%USERPROFILE%\.cache\opencode` を削除します。
|
||||
|
||||
2. opencodeを再起動して最新のプロバイダー パッケージを再インストールします
|
||||
2. OpenCode を再起動して最新のプロバイダーパッケージを再インストールします
|
||||
|
||||
これにより、opencodeはプロバイダー パッケージの最新バージョンを強制的にダウンロードすることになり、多くの場合、モデル パラメーターや API の変更に関する互換性の問題が解決されます。
|
||||
これにより、OpenCode はプロバイダーパッケージの最新バージョンを強制的にダウンロードすることになり、多くの場合、モデルパラメーターや API の変更に関する互換性の問題が解決されます。
|
||||
|
||||
---
|
||||
|
||||
### Linux ではコピー/ペーストが機能しない
|
||||
|
||||
Linux ユーザーがコピー/ペースト機能を動作させるには、次のクリップボード ユーティリティのいずれかがインストールされている必要があります。
|
||||
Linux ユーザーがコピー/ペースト機能を動作させるには、次のクリップボードユーティリティのいずれかがインストールされている必要があります。
|
||||
|
||||
**X11 システムの場合:**
|
||||
|
||||
@@ -297,4 +297,4 @@ Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 &
|
||||
export DISPLAY=:99.0
|
||||
```
|
||||
|
||||
opencode は、Wayland を使用していて `wl-clipboard` を優先しているかどうかを検出します。そうでない場合は、`xclip` および `xsel` の順序でクリップボード ツールを検索しようとします。
|
||||
OpenCode は、Wayland を使用していて `wl-clipboard` を優先しているかどうかを検出します。そうでない場合は、`xclip` および `xsel` の順序でクリップボードツールを検索しようとします。
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: トゥイ
|
||||
description: OpenCode terminal ユーザー インターフェイスの使用。
|
||||
title: TUI
|
||||
description: OpenCode ターミナルユーザーインターフェイスの使用。
|
||||
---
|
||||
|
||||
import { Tabs, TabItem } from "@astrojs/starlight/components"
|
||||
|
||||
OpenCode は、LLM を使用してプロジェクトを作業するための対話型terminal インターフェイスまたは TUI を提供します。
|
||||
OpenCode は、LLM を使用してプロジェクトを作業するための対話型ターミナルインターフェイスまたは TUI を提供します。
|
||||
|
||||
OpenCode を実行すると、現在のディレクトリの TUI が開始されます。
|
||||
|
||||
@@ -45,7 +45,7 @@ How is auth handled in @packages/functions/src/api/index.ts?
|
||||
|
||||
## Bash コマンド
|
||||
|
||||
メッセージを `!` で開始して、shell コマンドを実行します。
|
||||
メッセージを `!` で開始して、シェルコマンドを実行します。
|
||||
|
||||
```bash frame="none"
|
||||
!ls -la
|
||||
@@ -63,13 +63,13 @@ OpenCode TUI を使用する場合、「`/`」に続いてコマンド名を入
|
||||
/help
|
||||
```
|
||||
|
||||
ほとんどのコマンドには、`ctrl+x` をリーダー キーとして使用するキーバインドもあります。`ctrl+x` がデフォルトのリーダー キーです。 [詳細はこちら](/docs/keybinds)。
|
||||
ほとんどのコマンドには、`ctrl+x` をリーダーキーとして使用するキーバインドもあります。`ctrl+x` がデフォルトのリーダーキーです。 [詳細はこちら](/docs/keybinds)。
|
||||
|
||||
利用可能なすべてのスラッシュ コマンドは次のとおりです。
|
||||
利用可能なすべてのスラッシュコマンドは次のとおりです。
|
||||
|
||||
---
|
||||
|
||||
### 接続する
|
||||
### 接続
|
||||
|
||||
OpenCode にプロバイダーを追加します。利用可能なプロバイダーから選択し、その API キーを追加できます。
|
||||
|
||||
@@ -115,9 +115,9 @@ OpenCode にプロバイダーを追加します。利用可能なプロバイ
|
||||
|
||||
---
|
||||
|
||||
### 出口
|
||||
### 終了
|
||||
|
||||
OpenCodeを終了します。 _エイリアス_: `/quit`、`/q`
|
||||
OpenCode を終了します。 _エイリアス_: `/quit`、`/q`
|
||||
|
||||
```bash frame="none"
|
||||
/exit
|
||||
@@ -127,7 +127,7 @@ OpenCodeを終了します。 _エイリアス_: `/quit`、`/q`
|
||||
|
||||
---
|
||||
|
||||
### 輸出
|
||||
### エクスポート
|
||||
|
||||
現在の会話を Markdown にエクスポートし、デフォルトのエディターで開きます。 `EDITOR` 環境変数に設定されたエディタを使用します。 [詳細はこちら](#editor-setup)。
|
||||
|
||||
@@ -175,7 +175,7 @@ OpenCodeを終了します。 _エイリアス_: `/quit`、`/q`
|
||||
|
||||
---
|
||||
|
||||
### 新しい
|
||||
### 新規セッション
|
||||
|
||||
新しいセッションを開始します。 _別名_: `/clear`
|
||||
|
||||
@@ -194,8 +194,7 @@ OpenCodeを終了します。 _エイリアス_: `/quit`、`/q`
|
||||
:::tip
|
||||
ファイルの変更も復元されます。
|
||||
:::
|
||||
Internally, を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは ** する必要があります
|
||||
Git リポジトリ** であること。
|
||||
内部的には、`undo` を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは **Git リポジトリ** である必要があります。
|
||||
|
||||
```bash frame="none"
|
||||
/redo
|
||||
@@ -241,12 +240,12 @@ Git リポジトリ** であること。
|
||||
|
||||
---
|
||||
|
||||
### 考え
|
||||
### 思考
|
||||
|
||||
会話内の思考/推論ブロックの表示を切り替えます。有効にすると、拡張思考をサポートするモデルの推論プロセスを確認できます。
|
||||
|
||||
:::note
|
||||
このコマンドは、思考ブロックを**表示**するかどうかのみを制御します。モデルの推論機能を有効または無効にすることはありません。実際の推論機能を切り替えるには、`ctrl+t` を使用してモデル バリアントを循環させます。
|
||||
このコマンドは、思考ブロックを**表示**するかどうかのみを制御します。モデルの推論機能を有効または無効にすることはありません。実際の推論機能を切り替えるには、`ctrl+t` を使用してモデルバリアントを循環させます。
|
||||
:::
|
||||
|
||||
```bash frame="none"
|
||||
@@ -257,13 +256,12 @@ Git リポジトリ** であること。
|
||||
|
||||
### 元に戻す
|
||||
|
||||
会話の最後のメッセージを元に戻します。最新のユーザー メッセージ、その後のすべての応答、およびファイルの変更を削除します。
|
||||
会話の最後のメッセージを元に戻します。最新のユーザーメッセージ、その後のすべての応答、およびファイルの変更を削除します。
|
||||
|
||||
:::tip
|
||||
加えられたファイルの変更も元に戻されます。
|
||||
:::
|
||||
Internally, を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは ** する必要があります
|
||||
Git リポジトリ** であること。
|
||||
内部的には、`undo` を使用してファイルの変更を管理します。したがって、あなたのプロジェクトは **Git リポジトリ** である必要があります。
|
||||
|
||||
```bash frame="none"
|
||||
/undo
|
||||
@@ -273,7 +271,7 @@ Git リポジトリ** であること。
|
||||
|
||||
---
|
||||
|
||||
### 共有を解除する
|
||||
### 共有の解除
|
||||
|
||||
現在のセッションの共有を解除します。 [詳細はこちら](/docs/share#un-sharing)。
|
||||
|
||||
@@ -283,7 +281,7 @@ Git リポジトリ** であること。
|
||||
|
||||
---
|
||||
|
||||
## エディターのセットアップ
|
||||
## エディタのセットアップ
|
||||
|
||||
`/editor` および `/export` コマンドはどちらも、`EDITOR` 環境変数で指定されたエディターを使用します。
|
||||
|
||||
@@ -299,7 +297,7 @@ Git リポジトリ** であること。
|
||||
export EDITOR="code --wait"
|
||||
```
|
||||
|
||||
これを永続的にするには、これをshell プロファイルに追加します。
|
||||
これを永続的にするには、これをシェルプロファイルに追加します。
|
||||
`~/.bashrc`、`~/.zshrc`など
|
||||
|
||||
</TabItem>
|
||||
@@ -313,8 +311,7 @@ Git リポジトリ** であること。
|
||||
set EDITOR=code --wait
|
||||
```
|
||||
|
||||
これを永続的にするには、**システム プロパティ** > **環境を使用します。
|
||||
変数**。
|
||||
これを永続的にするには、**システムプロパティ** > **環境変数**を使用します。
|
||||
|
||||
</TabItem>
|
||||
|
||||
@@ -332,7 +329,7 @@ Git リポジトリ** であること。
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
一般的なエディター オプションには次のものがあります。
|
||||
一般的なエディターオプションには次のものがあります。
|
||||
|
||||
- `code` - VS Code
|
||||
- `cursor` - Cursor
|
||||
@@ -350,9 +347,9 @@ VS Code などの一部のエディターは、`--wait` フラグを使用して
|
||||
|
||||
---
|
||||
|
||||
## 設定する
|
||||
## 設定
|
||||
|
||||
OpenCode 構成ファイルを通じて TUI の動作をカスタマイズできます。
|
||||
OpenCode 設定ファイルを通じて TUI の動作をカスタマイズできます。
|
||||
|
||||
```json title="opencode.json"
|
||||
{
|
||||
@@ -368,20 +365,20 @@ OpenCode 構成ファイルを通じて TUI の動作をカスタマイズでき
|
||||
|
||||
### オプション
|
||||
|
||||
- `scroll_acceleration` - macOS スタイルのスクロール アクセラレーションを有効にして、スムーズで自然なスクロールを実現します。有効にすると、高速スクロール ジェスチャではスクロール速度が向上し、ゆっくりとした動きでは正確なままになります。 **この設定は `scroll_speed` よりも優先され、有効になっている場合は上書きされます。**
|
||||
- `scroll_speed` - スクロール コマンドを使用するときに TUI がスクロールする速度を制御します (最小: `1`)。デフォルトは `3` です。 **注: `scroll_acceleration.enabled` が `true` に設定されている場合、これは無視されます。**
|
||||
- `scroll_acceleration` - macOS スタイルのスクロールアクセラレーションを有効にして、スムーズで自然なスクロールを実現します。有効にすると、高速スクロールジェスチャではスクロール速度が向上し、ゆっくりとした動きでは正確なままになります。 **この設定は `scroll_speed` よりも優先され、有効になっている場合は上書きされます。**
|
||||
- `scroll_speed` - スクロールコマンドを使用するときに TUI がスクロールする速度を制御します (最小: `1`)。デフォルトは `3` です。 **注: `scroll_acceleration.enabled` が `true` に設定されている場合、これは無視されます。**
|
||||
|
||||
---
|
||||
|
||||
## カスタマイズ
|
||||
|
||||
コマンド パレット (`ctrl+x h` または `/help`) を使用して、TUI ビューのさまざまな側面をカスタマイズできます。これらの設定は再起動後も維持されます。
|
||||
コマンドパレット (`ctrl+x h` または `/help`) を使用して、TUI ビューのさまざまな側面をカスタマイズできます。これらの設定は再起動後も維持されます。
|
||||
|
||||
---
|
||||
|
||||
#### ユーザー名の表示
|
||||
|
||||
チャット メッセージにユーザー名を表示するかどうかを切り替えます。これには次の方法でアクセスします。
|
||||
チャットメッセージにユーザー名を表示するかどうかを切り替えます。これには次の方法でアクセスします。
|
||||
|
||||
- コマンドパレット:「ユーザー名」または「ユーザー名を隠す」を検索します。
|
||||
- 設定は自動的に保持され、TUI セッション全体で記憶されます。
|
||||
|
||||
@@ -3,10 +3,12 @@ title: ウェブ
|
||||
description: ブラウザで OpenCode を使用する。
|
||||
---
|
||||
|
||||
OpenCode はブラウザーで Web アプリケーションとして実行でき、terminal を必要とせずに同じ強力な AI コーディング エクスペリエンスを提供します。
|
||||
OpenCode はブラウザで Web アプリケーションとして実行でき、ターミナルを必要とせずに同じ強力な AI コーディングエクスペリエンスを提供します。
|
||||
|
||||

|
||||
|
||||
---
|
||||
|
||||
## はじめる
|
||||
|
||||
以下を実行して Web インターフェースを開始します。
|
||||
@@ -15,19 +17,20 @@ OpenCode はブラウザーで Web アプリケーションとして実行でき
|
||||
opencode web
|
||||
```
|
||||
|
||||
これにより、利用可能なランダムなポートを使用して `127.0.0.1` でローカル サーバーが起動され、デフォルトのブラウザで OpenCode が自動的に開きます。
|
||||
これにより、利用可能なランダムなポートを使用して `127.0.0.1` でローカルサーバーが起動され、デフォルトのブラウザで OpenCode が自動的に開きます。
|
||||
|
||||
:::caution
|
||||
`OPENCODE_SERVER_PASSWORD` が設定されていない場合、サーバーは保護されません。これはローカルで使用する場合には問題ありませんが、ネットワーク アクセス用に設定する必要があります。
|
||||
`OPENCODE_SERVER_PASSWORD` が設定されていない場合、サーバーは保護されません。これはローカルで使用する場合には問題ありませんが、ネットワークアクセス用に設定する必要があります。
|
||||
:::
|
||||
:::tip[Windows ユーザー]
|
||||
最高のエクスペリエンスを得るには、PowerShell ではなく [WSL](/docs/windows-wsl) から `opencode web` を実行します。これにより、ファイル システムへの適切なアクセスとterminal の統合が保証されます。
|
||||
最高のエクスペリエンスを得るには、PowerShell ではなく [WSL](/docs/windows-wsl) から `opencode web` を実行します。これにより、ファイルシステムへの適切なアクセスとターミナルの統合が保証されます。
|
||||
:::
|
||||
|
||||
---
|
||||
|
||||
## 構成
|
||||
## 設定
|
||||
|
||||
コマンド ライン フラグを使用するか、[config file](/docs/config).config ファイル] で Web サーバーを設定できます。
|
||||
コマンドラインフラグを使用するか、[設定ファイル](/docs/config)で Web サーバーを設定できます。
|
||||
|
||||
### ポート
|
||||
|
||||
@@ -45,16 +48,16 @@ opencode web --port 4096
|
||||
opencode web --hostname 0.0.0.0
|
||||
```
|
||||
|
||||
`0.0.0.0` を使用すると、OpenCode はローカル アドレスとネットワーク アドレスの両方を表示します。
|
||||
`0.0.0.0` を使用すると、OpenCode はローカルアドレスとネットワークアドレスの両方を表示します。
|
||||
|
||||
```
|
||||
Local access: http://localhost:4096
|
||||
Network access: http://192.168.1.100:4096
|
||||
```
|
||||
|
||||
### mDNS ディスカバリー
|
||||
### mDNS 検出
|
||||
|
||||
mDNS を有効にして、ローカル ネットワーク上でサーバーを検出できるようにします。
|
||||
mDNS を有効にして、ローカルネットワーク上でサーバーを検出できるようにします。
|
||||
|
||||
```bash
|
||||
opencode web --mdns
|
||||
@@ -68,9 +71,9 @@ mDNS ドメイン名をカスタマイズして、同じネットワーク上で
|
||||
opencode web --mdns --mdns-domain myproject.local
|
||||
```
|
||||
|
||||
### コルス
|
||||
### CORS
|
||||
|
||||
CORS の追加ドメインを許可するには (カスタム フロントエンドに便利):
|
||||
CORS の追加ドメインを許可するには (カスタムフロントエンドに便利):
|
||||
|
||||
```bash
|
||||
opencode web --cors https://example.com
|
||||
@@ -102,13 +105,13 @@ OPENCODE_SERVER_PASSWORD=secret opencode web
|
||||
|
||||
「サーバーを表示」をクリックすると、接続されているサーバーとそのステータスが表示されます。
|
||||
|
||||
 を参照
|
||||

|
||||
|
||||
---
|
||||
|
||||
## terminal の接続
|
||||
## ターミナルの接続
|
||||
|
||||
実行中の Web サーバーにterminal TUI を接続できます。
|
||||
実行中の Web サーバーにターミナル TUI を接続できます。
|
||||
|
||||
```bash
|
||||
# Start the web server
|
||||
@@ -118,13 +121,13 @@ opencode web --port 4096
|
||||
opencode attach http://localhost:4096
|
||||
```
|
||||
|
||||
これにより、Web インターフェイスとterminal の両方を同時に使用し、同じセッションと状態を共有できるようになります。
|
||||
これにより、Web インターフェイスとターミナルの両方を同時に使用し、同じセッションと状態を共有できるようになります。
|
||||
|
||||
---
|
||||
|
||||
## 設定ファイル
|
||||
|
||||
`opencode.json` 構成ファイルでサーバー設定を構成することもできます。
|
||||
`opencode.json` 設定ファイルでサーバー設定を構成することもできます。
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -137,4 +140,4 @@ opencode attach http://localhost:4096
|
||||
}
|
||||
```
|
||||
|
||||
コマンド ライン フラグは、構成ファイルの設定よりも優先されます。
|
||||
コマンドラインフラグは、設定ファイルの設定よりも優先されます。
|
||||
|
||||
@@ -8,7 +8,7 @@ import { Steps } from "@astrojs/starlight/components"
|
||||
OpenCode は Windows で直接実行できますが、より快適に使うには [Windows Subsystem for Linux (WSL)](https://learn.microsoft.com/en-us/windows/wsl/install) の利用をおすすめします。WSL は OpenCode の機能とスムーズに連携する Linux 環境を提供します。
|
||||
|
||||
:::tip[WSL を使う理由]
|
||||
WSL を使うと、ファイルシステム性能、terminalサポート、OpenCode が依存する開発ツールとの互換性が向上します。
|
||||
WSL を使うと、ファイルシステム性能、ターミナルサポート、OpenCode が依存する開発ツールとの互換性が向上します。
|
||||
:::
|
||||
|
||||
---
|
||||
@@ -23,7 +23,7 @@ WSL を使うと、ファイルシステム性能、terminalサポート、OpenC
|
||||
|
||||
2. **WSL で OpenCode をインストールする**
|
||||
|
||||
WSL の準備ができたら WSL のterminal を開き、[インストール方法](/docs/) のいずれかで OpenCode をインストールします。
|
||||
WSL の準備ができたら WSL のターミナルを開き、[インストール方法](/docs/) のいずれかで OpenCode をインストールします。
|
||||
|
||||
```bash
|
||||
curl -fsSL https://opencode.ai/install | bash
|
||||
@@ -44,7 +44,7 @@ WSL を使うと、ファイルシステム性能、terminalサポート、OpenC
|
||||
|
||||
## デスクトップアプリ + WSL サーバー
|
||||
|
||||
OpenCode Desktop アプリを使いつつ、サーバーは WSL で動かしたい場合は次の手順です。
|
||||
OpenCode デスクトップアプリを使いつつ、サーバーは WSL で動かしたい場合は次の手順です。
|
||||
|
||||
1. **WSL でサーバーを起動する**
|
||||
|
||||
@@ -54,12 +54,13 @@ OpenCode Desktop アプリを使いつつ、サーバーは WSL で動かした
|
||||
opencode serve --hostname 0.0.0.0 --port 4096
|
||||
```
|
||||
|
||||
2. **Desktop アプリを接続する**
|
||||
2. **デスクトップアプリを接続する**
|
||||
|
||||
`http://localhost:4096` に接続します。
|
||||
|
||||
:::note
|
||||
環境によって `localhost` が使えない場合は、WSL 側で `hostname -I` を実行して IP アドレスを確認し、`http://<wsl-ip>:4096` に接続してください。
|
||||
:::
|
||||
:::caution
|
||||
`--hostname 0.0.0.0` を使う場合は、`OPENCODE_SERVER_PASSWORD` を設定してサーバーを保護してください。
|
||||
|
||||
@@ -73,17 +74,17 @@ OPENCODE_SERVER_PASSWORD=your-password opencode serve --hostname 0.0.0.0
|
||||
|
||||
Windows で Web 利用を快適にするには:
|
||||
|
||||
1. **PowerShell ではなく WSL terminal で `opencode web` を実行する**
|
||||
1. **PowerShell ではなく WSL ターミナルで `opencode web` を実行する**
|
||||
|
||||
```bash
|
||||
opencode web --hostname 0.0.0.0
|
||||
```
|
||||
|
||||
2. **Windows のブラウザーからアクセスする**
|
||||
2. **Windows のブラウザからアクセスする**
|
||||
|
||||
`http://localhost:<port>` にアクセスします(URL は OpenCode が表示します)。
|
||||
|
||||
WSL から `opencode web` を実行すると、適切なファイルシステムアクセスとterminal 統合を維持したまま、Windows ブラウザーから利用できます。
|
||||
WSL から `opencode web` を実行すると、適切なファイルシステムアクセスとターミナル統合を維持したまま、Windows ブラウザから利用できます。
|
||||
|
||||
---
|
||||
|
||||
@@ -111,5 +112,5 @@ opencode
|
||||
## ヒント
|
||||
|
||||
- Windows ドライブ上のプロジェクトでも、OpenCode は WSL で実行するとファイルアクセスがスムーズです
|
||||
- OpenCode と一緒に VS Code の [WSL 拡張](https://code.visualstudio.com/docs/remote/wsl) を使うと統合的な開発フローを構築できます
|
||||
- OpenCode と一緒に VS Code の [WSL 拡張機能](https://code.visualstudio.com/docs/remote/wsl) を使うと統合的な開発フローを構築できます
|
||||
- OpenCode の設定とセッションは WSL 環境内の `~/.local/share/opencode/` に保存されます
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: 禅
|
||||
title: OpenCode Zen
|
||||
description: OpenCode によって提供されるモデルの厳選されたリスト。
|
||||
---
|
||||
|
||||
@@ -12,22 +12,20 @@ OpenCode Zen は、OpenCode チームによって提供される、テストお
|
||||
:::note
|
||||
OpenCode Zen は現在ベータ版です。
|
||||
:::
|
||||
Zen は OpenCode の他のプロバイダーと同様に機能します。 OpenCode Zen にログインすると、
|
||||
API キー。これは **完全にオプション** であり、使用するために使用する必要はありません。
|
||||
OpenCode.
|
||||
Zen は OpenCode の他のプロバイダーと同様に機能します。 OpenCode Zen にログインすると、API キーを取得できます。これは **完全にオプション** であり、OpenCode を使用するために使用する必要はありません。
|
||||
|
||||
---
|
||||
|
||||
## 背景
|
||||
|
||||
モデルはたくさんありますが、そのうちのほんの一部です
|
||||
これらのモデルはコーディング エージェントとしてうまく機能します。さらに、ほとんどのプロバイダーは、
|
||||
これらのモデルはコーディングエージェントとしてうまく機能します。さらに、ほとんどのプロバイダーは、
|
||||
構成が大きく異なります。したがって、まったく異なるパフォーマンスと品質が得られます。
|
||||
|
||||
:::tip
|
||||
私たちは、OpenCode で適切に動作するモデルとプロバイダーの選択されたグループをテストしました。
|
||||
:::
|
||||
So などを通じてモデルを使用している場合は、決してそうすることはできません。
|
||||
OpenRouter などを通じてモデルを使用している場合は、決してそうすることはできません。
|
||||
必要なモデルの最高のバージョンを入手しているかどうかを確認してください。
|
||||
|
||||
これを修正するために、いくつかのことを行いました。
|
||||
@@ -35,7 +33,6 @@ So などを通じてモデルを使用している場合は、決してそう
|
||||
1. 私たちは選択したモデルのグループをテストし、その方法についてチームと話し合いました。
|
||||
それらを実行するのが最善です。
|
||||
2. その後、いくつかのプロバイダーと協力して、これらが確実に提供されるようにしました。
|
||||
correctly.
|
||||
3. 最後に、モデルとプロバイダーの組み合わせをベンチマークし、次の結果を導き出しました。
|
||||
私たちが自信を持ってお勧めするリストをご紹介します。
|
||||
|
||||
@@ -93,7 +90,7 @@ OpenCode Zen は、OpenCode の他のプロバイダーと同様に機能しま
|
||||
| Big Pickle | big-pickle | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||
|
||||
OpenCode 設定の [model id](/docs/config/#models)
|
||||
`opencode/<model-id>` 形式を使用します。たとえば、GPT 5.2 Codex の場合は、次のようになります。
|
||||
`opencode/<model-id>` 形式を使用します。たとえば、GPT 5.2 Codex の場合は、
|
||||
設定で `opencode/gpt-5.2-codex` を使用してください。
|
||||
|
||||
---
|
||||
@@ -108,7 +105,7 @@ https://opencode.ai/zen/v1/models
|
||||
|
||||
---
|
||||
|
||||
## 価格設定
|
||||
## 価格
|
||||
|
||||
当社は従量課金制モデルをサポートしています。以下は **100 万トークンあたりの価格**です。
|
||||
|
||||
@@ -148,17 +145,16 @@ https://opencode.ai/zen/v1/models
|
||||
| GPT 5 Codex | $1.07 | $8.50 | $0.107 | - |
|
||||
| GPT 5 Nano | Free | Free | Free | - |
|
||||
|
||||
使用履歴に _Claude Haiku 3.5_ が表示されるかもしれません。これは [セッションのタイトルを生成するために使用される低コスト モデル ](/docs/config/#models) です。
|
||||
使用履歴に _Claude Haiku 3.5_ が表示されるかもしれません。これは [セッションのタイトルを生成するために使用される低コストモデル](/docs/config/#models) です。
|
||||
|
||||
:::note
|
||||
クレジット カード手数料は実費で引き継がれます (4.4% + 取引ごとに 0.30 ドル)。それ以上の料金はかかりません。
|
||||
クレジットカード手数料は実費で引き継がれます (4.4% + 取引ごとに 0.30 ドル)。それ以上の料金はかかりません。
|
||||
:::
|
||||
The
|
||||
|
||||
- GLM 4.7 Free は期間限定で OpenCode で入手できます。チームはこの時間を利用してフィードバックを収集し、モデルを改善します。
|
||||
- Kim K2.5 Free は OpenCode で期間限定で利用可能です。チームはこの時間を利用してフィードバックを収集し、モデルを改善します。
|
||||
- MiniMax M2.1 Free は期間限定で OpenCode で入手できます。チームはこの時間を利用してフィードバックを収集し、モデルを改善します。
|
||||
- Big Pickle は、期間限定で OpenCode で無料で利用できるステルス モデルです。チームはこの時間を利用してフィードバックを収集し、モデルを改善します。
|
||||
- Big Pickle は、期間限定で OpenCode で無料で利用できるステルスモデルです。チームはこの時間を利用してフィードバックを収集し、モデルを改善します。
|
||||
|
||||
ご質問がございましたら、<a href={email}>お問い合わせ</a>ください。
|
||||
|
||||
@@ -191,8 +187,8 @@ The
|
||||
- GLM 4.7 無料: 無料期間中、収集されたデータはモデルを改善するために使用される場合があります。
|
||||
- Kimi K2.5 Free: 無料期間中、収集されたデータはモデルの改善に使用される場合があります。
|
||||
- MiniMax M2.1 無料: 無料期間中、収集されたデータはモデルを改善するために使用される場合があります。
|
||||
- OpenAI API: リクエストは [OpenAI のデータ ポリシー ](https://platform.openai.com/docs/guides/your-data).
|
||||
- Anthropic API: リクエストは、[Anthropic のデータ ポリシー ](https://docs.anthropic.com/en/docs/claude-code/data-usage).
|
||||
- OpenAI API: リクエストは [OpenAI のデータポリシー](https://platform.openai.com/docs/guides/your-data)に従います。
|
||||
- Anthropic API: リクエストは、[Anthropic のデータポリシー](https://docs.anthropic.com/en/docs/claude-code/data-usage)に従います。
|
||||
|
||||
---
|
||||
|
||||
@@ -204,12 +200,11 @@ Zen はチームにも効果的です。チームメイトを招待し、役割
|
||||
:::note
|
||||
ワークスペースは現在、ベータ版の一部としてチームに無料で提供されています。
|
||||
:::
|
||||
Managing
|
||||
価格の詳細については近日中にお知らせします。
|
||||
|
||||
---
|
||||
|
||||
### 役割
|
||||
### ロール
|
||||
|
||||
チームメイトをワークスペースに招待し、役割を割り当てることができます。
|
||||
|
||||
@@ -229,7 +224,7 @@ Managing
|
||||
|
||||
---
|
||||
|
||||
### 自分の鍵を持参してください
|
||||
### 自分のキーを持ち込む
|
||||
|
||||
Zen の他のモデルにアクセスしながら、独自の OpenAI または Anthropic API キーを使用できます。
|
||||
|
||||
@@ -244,7 +239,7 @@ Zen が提供するものの代わりにそれを使用したいとします。
|
||||
|
||||
私たちは次の目的で OpenCode Zen を作成しました。
|
||||
|
||||
1. **ベンチマーク** コーディング エージェントに最適なモデル/プロバイダー。
|
||||
1. **ベンチマーク** コーディングエージェントに最適なモデル/プロバイダー。
|
||||
2. **最高品質**のオプションにアクセスでき、パフォーマンスをダウングレードしたり、より安価なプロバイダーにルートしたりする必要はありません。
|
||||
3. 原価で販売することで**価格下落**を転嫁します。したがって、唯一のマークアップは処理手数料をカバーすることです。
|
||||
4. 他のコーディング エージェントとの併用を許可することで、**ロックイン**がなくなります。また、常に OpenCode で他のプロバイダーも使用できるようにします。
|
||||
4. 他のコーディングエージェントとの併用を許可することで、**ロックイン**がなくなります。また、常に OpenCode で他のプロバイダーも使用できるようにします。
|
||||
|
||||
Reference in New Issue
Block a user