(同じ利用者による、間の12版が非表示)
1行目: 1行目:
== 概要 ==
Visual Studio Code (以下、VSCode) は、Code - OSSリポジトリをベースにMicrosoft独自のカスタマイズが施されており、従来のマイクロソフト製品ライセンスでリリースされている。<br>
コードエディタのシンプルさと、開発者のコアとなる編集 - ビルド - デバッグのサイクルに必要なものを兼ね備えている。<br>
<br>
軽量なデバッグ、豊富な拡張性モデル、既存のツールとの軽量な統合とともに、包括的なコード編集、ナビゲーション、理解のサポートを提供する。<br>
<br>
VSCodeは毎月アップデートされており、新機能やバグが修正される。<br>
最新のリリースを毎日入手する場合は、Insidersビルドをインストールする。<br>
<br>
<u>※注意</u><br>
<u>VSCodeには様々なテレメトリ機能が搭載されており、端末の情報は逐一Microsoftに送信されている。</u><br>
<u>たとえ、テレメトリ機能を無効にするオプションを設定しても、なお情報を送信し続けている。 (完全に無効化することができない)</u><br>
<u>そのため、VSCodeのようなスパイウェアは使用せずに、[https://vscodium.com Codium]を導入することを強く推奨する。</u><br>
<br>
<u>Codiumのインストールを知りたい場合は、[[インストール - VSCodium]]を参照すること。</u><br>
<br><br>
== VSCodeのインストール ==
== VSCodeのインストール ==
==== リポジトリを登録してインストール ====
==== リポジトリを登録してインストール ====
まず、VSCodeのリポジトリと鍵を追加するため、以下のコマンドを入力する。<br>
まず、VSCodeのリポジトリと鍵を追加するため、以下のコマンドを入力する。<br>
  # CentOS
  # RHEL
  sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
  sudo rpm --import <nowiki>https://packages.microsoft.com/keys/microsoft.asc</nowiki>
  sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/vscode.repo'
  sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=<nowiki>https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc</nowiki>" > /etc/yum.repos.d/vscode.repo'
   
   
  # SUSE
  # SUSE
  sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
  sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
  sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/zypp/repos.d/vscode.repo'
  sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/zypp/repos.d/vscode.repo'
# Mobian / Raspberry Pi
-
# Manjaro ARM
-
<br>
<br>
アップデート可能なパッケージの一覧を表示する。<br>
アップデート可能なパッケージの一覧を表示する。<br>
  # CentOS
  # RHEL
  sudo yum check-update
  sudo dnf check-update
   
   
  # SUSE
  # SUSE
  sudo zypper list-updates
  sudo zypper list-updates
# Mobian / Raspberry Pi
-
# Manjaro ARM
-
<br>
<br>
以下のコマンドを入力して、VSCodeをインストールする。<br>
以下のコマンドを入力して、VSCodeをインストールする。<br>
  # CentOS
  # RHEL
  sudo yum install code
  sudo dnf update
sudo dnf install code
   
   
  # SUSE
  # SUSE
  sudo zypper refresh
  sudo zypper refresh
  sudo zypper install code
  sudo zypper install code
# Mobian / Raspberry Pi
sudo apt install code
# Manjaro ARM
sudo pacman -S --needed --noconfirm base-devel git  # AURヘルパを使用して、VS Codeをインストールする前に以下に示すパッケージがインストールされていることを確認する
sudo yay -s visual-studio-code-bin  # VS Codeのインストール
sudo yay -s vscode                  # VS Code Insidersビルドをインストールすることもできる
<br>
<br>
codeコマンドがPATH環境変数に含まれているかどうか確認する。<br>
codeコマンドがPATH環境変数に含まれているかどうか確認する。<br>
47行目: 85行目:
  vi ~/.local/share/applications/VSCode.desktop
  vi ~/.local/share/applications/VSCode.desktop
<br>
<br>
<syntaxhighlight lang="ini">
  # ~/.local/share/applications/VSCode.desktopファイル
  # ~/.local/share/applications/VSCode.desktopファイル
   
   
67行目: 106行目:
  Exec=/<VSCodeのインストールディレクトリ>/bin/code --new-window %F
  Exec=/<VSCodeのインストールディレクトリ>/bin/code --new-window %F
  Icon=com.visualstudio.code
  Icon=com.visualstudio.code
</syntaxhighlight>
<br>
<br>
  vi ~/.local/share/applications/VSCode-url-handler.desktop
  vi ~/.local/share/applications/VSCode-url-handler.desktop
<br>
<br>
<syntaxhighlight lang="ini">
  # ~/.local/share/applications/VSCode-url-handler.desktopファイル
  # ~/.local/share/applications/VSCode-url-handler.desktopファイル
   
   
84行目: 125行目:
  NoDisplay=true
  NoDisplay=true
  StartupNotify=true
  StartupNotify=true
</syntaxhighlight>
<br>
==== エラー関連 ====
VSCodeの起動時に、以下に示すようなエラーが出力される場合がある。<br>
Writing login information to the keychain failed with error 'GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown:
The name org.freedesktop.secrets was not provided by any .service files'.
<br>
このエラーを解決するには、gnome-keyringをインストールする。<br>
sudo zypper install gnome-keyring
<br><br>
<br><br>


103行目: 154行目:
# まず、事前にC/C++プロジェクトのディレクトリを開く。
# まず、事前にC/C++プロジェクトのディレクトリを開く。
# 次に、[Ctrl] + [Shift] + [P]キーを同時押下して、コマンドパレットを開く。
# 次に、[Ctrl] + [Shift] + [P]キーを同時押下して、コマンドパレットを開く。
# "C/Cpp: Edit configurations..."を選択する。<br>この時、C/C++プロジェクトの.vscodeディレクトリに、c_cpp_properties.jsonファイルが自動的に作成される。<br>ただし、.vscodeディレクトリが存在しない場合は、プロジェクトディレクトリに自動で作成される。
# "C/Cpp: Edit configurations..."を選択する。この時、C/C++プロジェクトの.vscodeディレクトリに、c_cpp_properties.jsonファイルが自動的に作成される。ただし、.vscodeディレクトリが存在しない場合は、プロジェクトディレクトリに自動で作成される。
# c_cpp_properties.jsonファイルを、以下の内容のように編集する。<br>
# c_cpp_properties.jsonファイルを、以下の内容のように編集する。
  <syntaxhighlight lang="json">
  <syntaxhighlight lang="json">
  "ファイル名": "c_cpp_properties.jsonファイル",
  "ファイル名": "c_cpp_properties.jsonファイル",
175行目: 226行目:
launch.jsonファイルを作成して編集する。<br>
launch.jsonファイルを作成して編集する。<br>
<br>
<br>
# VS Codeメイン画面左のデバッグボタンを選択する。([Ctrl] + [Shift] + [D]キーを同時押下しても可能である)
# VS Codeメイン画面左のデバッグボタンを選択する。([Ctrl] + [Shift] + [D]キーを同時押下しても可能である)
# デバッグ画面上部にある"構成がありません"と表示されているプルダウンの右側にある歯車を選択する。
# デバッグ画面上部にある"構成がありません"と表示されているプルダウンの右側にある歯車を選択する。
# [環境の選択]プルダウンから、[C++ (GDB/LLDB)]を選択する。
# [環境の選択]プルダウンから、[C++ (GDB/LLDB)]を選択する。
# C/C++プロジェクトの.vscodeディレクトリに、launch.jsonファイルが自動的に作成される。
# C/C++プロジェクトの.vscodeディレクトリに、launch.jsonファイルが自動的に作成される。
# launch.jsonファイルを、以下の内容のように編集する。<br>launch.jsonファイルの詳細は、[https://github.com/Microsoft/vscode-cpptools/blob/master/launch.md C/C++拡張機能のGithub]を参照すること。
# launch.jsonファイルを、以下の内容のように編集する。launch.jsonファイルの詳細は、[https://github.com/Microsoft/vscode-cpptools/blob/master/launch.md C/C++拡張機能のGithub]を参照すること。
  <syntaxhighlight lang="json">
  <syntaxhighlight lang="json">
  "ファイル名": "launch.jsonファイル",
  "ファイル名": "launch.jsonファイル",
227行目: 278行目:
Dolphinにコンテキストメニューを追加する場合、まず、以下のディレクトリに移動する。<br>
Dolphinにコンテキストメニューを追加する場合、まず、以下のディレクトリに移動する。<br>
  cd Open_in_VSCode.desktop ~/.local/share/kservices5
  cd Open_in_VSCode.desktop ~/.local/share/kservices5
  または
  # または
  cd Open_in_VSCode.desktop /usr/share/kservices5
  cd Open_in_VSCode.desktop /usr/share/kservices5
<br>
<br>
233行目: 284行目:
  vi Open_in_VSCode.desktop
  vi Open_in_VSCode.desktop
<br>
<br>
<syntaxhighlight lang="ini">
  [Desktop Entry]
  [Desktop Entry]
  Type=Service
  Type=Service
249行目: 301行目:
  Name=Open in VS Code as SuperUser
  Name=Open in VS Code as SuperUser
  Icon=com.visualstudio.code
  Icon=com.visualstudio.code
  Exec=code --user-data-dir=/home/<ユーザ名>/Program/VScode_root_project %u  
  Exec=code --user-data-dir=/home/<ユーザ名>/Program/VScode_root_project %u
</syntaxhighlight>
<br><br>
<br><br>


263行目: 316行目:
* settings.jsonファイルに、<code>"workbench.editor.enablePreview": false</code>を追記する。
* settings.jsonファイルに、<code>"workbench.editor.enablePreview": false</code>を追記する。
<br><br>
<br><br>
== OpenCodeによるAIコーディング支援 ==
OpenCodeは、Anomaly社が開発するオープンソースのAIコーディングエージェントである。<br>
端末ベースのインターフェース (TUI)、デスクトップアプリケーション、IDE統合の3形態で提供されており、75以上のLLMプロバイダーに対応する。<br>
<br>
VSCode上でOpenCodeを使用する方法は2つある。<br>
<br>
* 公式の端末統合 (拡張機能 <u>sst-dev.opencode</u>)
*: VSCodeの統合端末上で <code>opencode</code> コマンドを実行して使用する方法
*: 拡張機能が自動インストールされ、キーボードショートカットから起動できる。
* サードパーティのACPクライアント (拡張機能 <u>formulahendry.acp-client</u>)
*: Agent Client Protocol (ACP) を経由して、OpenCodeをVSCodeのチャットパネル上で操作する方法
*: この経路はOpenCode公式チームが直接提供するものではなく、サードパーティが開発・保守している。
<br>
==== 前提条件 ====
OpenCodeをVSCode上で使用するには、以下に示す環境が必要である。<br>
<br>
* OpenCode CLIのインストール
* いずれかのLLMプロバイダーのAPIキー
* 端末統合を使用する場合
*: VSCode本体 または Cursor、Windsurf、VSCodium等のフォーク
* ACPクライアントを使用する場合
*: Node.js 18以上
<br>
==== OpenCode CLIのインストール ====
Linux環境における簡単なインストール方法は、公式インストールスクリプトを使用することである。<br>
<br>
curl -fsSL https://opencode.ai/install | bash
<br>
このスクリプトは、以下の優先順位でインストール先を決定する。<br>
<br>
* 環境変数 <code>OPENCODE_INSTALL_DIR</code>
* 環境変数 <code>XDG_BIN_DIR</code>
* <u>~/bin</u> (ディレクトリが存在するか作成可能な場合)
* <u>~/.opencode/bin</u> (デフォルトのフォールバック)
<br>
必要に応じて、インストール先を 環境変数 <code>PATH</code>に追加する。<br>
環境変数
export PATH="$HOME/.opencode/bin:$PATH"
<br>
その他のインストール方法を以下に示す。<br>
<br>
* npm
*: <pre>npm install -g opencode-ai@latest</pre>
* Bun
*: <pre>bun install -g opencode-ai@latest</pre>
* Homebrew
*: <pre>brew install anomalyco/tap/opencode</pre>
<br>
<u>※注意</u><br>
<u>2026年7月現在、OpenCode CLI単体の公式RPMパッケージ (zypper / dnf用) は提供されていない。</u><br>
<u>OpenCode DesktopのRPMパッケージはGitHub Releasesから入手可能だが、CLIとは別物である。</u><br>
<br>
<u>SUSE / RHEL環境では、curlインストールスクリプトまたはnpm経由のインストールを推奨する。</u><br>
<br>
==== 認証の設定 ====
OpenCodeの使用には、LLMプロバイダーの認証情報が必要である。<br>
認証情報は、<u>~/.local/share/opencode/auth.json</u> に保存される。<br>
<br>
認証の設定方法は以下の2通りがある。<br>
<br>
===== 方法1: /connectコマンド =====
# OpenCodeを起動する。
# <code>/connect</code> コマンドを実行する。
# 使用するプロバイダー (OpenCode Zen、Anthropic、OpenAI等) を選択する。
# 画面の指示に従ってAPIキーを入力する。
<br>
===== 方法2: auth loginオプション =====
opencode auth login
<br>
プロバイダーを指定する場合は以下のように実行する。<br>
<br>
opencode auth login --provider anthropic
<br>
==== ACP (Agent Client Protocol) とは ====
ACPは、コードエディタとAIコーディングエージェント間の通信を標準化するオープンプロトコルである。<br>
<br>
Language Server Protocol (LSP) が言語サーバ統合を標準化したのと同様に、ACPはエージェントとエディタの相互運用性を実現する。<br>
<br>
ACPの主な特徴は以下の通りである。<br>
<br>
* 通信方式
*: JSON-RPC 2.0 over stdio (ローカルエージェントの場合)
*: データ形式は nd-JSON (改行区切りJSON)
* メッセージ形式
*: ユーザ可読テキストのデフォルト形式はMarkdown
* 対応シナリオ
*: ローカルエージェント (エディタのサブプロセスとして実行)
*: リモートエージェント (HTTP / WebSocket 経由、策定中)
<br>
OpenCodeはACPに対応しており、<code>opencode acp</code> コマンドでACPサーバを起動する。<br>
このコマンドは、標準入出力 (stdio) 経由でJSON-RPCメッセージを送受信するサブプロセスとして動作する。<br>
<br>
<u>※注意</u><br>
<u>ACP経由では、TUI上の <code>/undo</code> コマンド および <code>/redo</code> コマンドは使用できない。</u><br>
<u>その他の機能 (ファイル操作、端末コマンド実行、カスタムツール、MCPサーバ、プロジェクトルール等) は全て使用可能である。</u><br>
<br>
==== 方法1: 公式の端末統合 (sst-dev.opencode) ====
OpenCodeは、VSCodeの統合端末上で直接動作する公式拡張機能 <u>sst-dev.opencode</u> を提供している。<br>
この拡張機能は、VSCodeの統合端末で <code>opencode</code> コマンドを実行すると自動的にインストールされる。<br>
<br>
===== インストール =====
# VSCodeの統合端末を開く。
# <code>opencode</code> コマンドを実行する。
# 拡張機能が自動的にインストールされる。
<br>
手動でインストールする場合は、VSCodeの拡張機能マーケットプレイスで <u>OpenCode</u> を検索してインストールする。<br>
<br>
===== キーボードショートカット =====
<center>
{| class="wikitable"
|+ 公式端末統合のキーボードショートカット
! 操作 !! Mac !! Windows / Linux
|-
| クイック起動 (分割端末でOpenCodeを開く) || [Cmd] + [Esc] || [Ctrl] + [Esc]
|-
| 新規セッション || [Cmd] + [Shift] + [Esc] || [Ctrl] + [Shift] + [Esc]
|-
| ファイル参照の挿入 || [Cmd] + [Option] + [K] || [Ctrl] + [Alt] + [K]
|}
</center>
<br>
===== 主な機能 =====
* コンテキスト認識
*: 現在の選択範囲や開いているタブの内容を、自動的にOpenCodeと共有する。
* ファイル参照ショートカット
*: <code>@File#L37-42</code> のような形式で、特定のファイルと行番号を指定できる。
* 分割端末表示
*: VSCodeの画面下部にOpenCodeを分割表示する。
<br>
===== トラブルシューティング =====
拡張機能が自動インストールされない場合は、以下に示す項目を確認する。<br>
<br>
* 統合端末上で <code>opencode</code> を実行しているか。
* 各IDEのCLIコマンドがインストールされているか。
*: インストールされていない場合は、[Ctrl] + [Shift] + [P]キー ([Cmd] + [Shift] + [P]キー) を押下してコマンドパレットを開き、
*: <u>Shell Command: Install 'code' command in PATH</u> を実行する。
** VSCode
**: <code>code</code> コマンド
** Cursor
**: <code>cursor</code> コマンド
** Windsurf
**: <code>windsurf</code> コマンド
** VSCodium
**: <code>codium</code> コマンド
* VSCodeに拡張機能のインストール権限があるか。
<br>
==== 方法2: サードパーティACPクライアント (formulahendry.acp-client) ====
<u>formulahendry.acp-client</u> は、VSCode上でACP対応エージェントを操作するためのサードパーティ製拡張機能である。<br>
<br>
この拡張機能を使用すると、OpenCodeを含む11種類のAIコーディングエージェントをVSCodeのチャットパネルから直接操作できる。<br>
<br>
<u>この拡張機能はOpenCode公式チームが開発・保守するものではなく、コミュニティ (Jun Han氏) によって提供されている。</u><br>
<br>
===== インストール =====
VSCodeの拡張機能マーケットプレイスから <u>formulahendry.acp-client</u> をインストールする。<br>
<br>
または、以下のURLから直接インストールできる。<br>
* [https://marketplace.visualstudio.com/items?itemName=formulahendry.acp-client Visual Studio Code Marketplace]
* [https://open-vsx.org/extension/formulahendry/acp-client Open VSX Marketplace]
<br>
===== 事前設定済みエージェント =====
この拡張機能には、下表に示すエージェントが事前設定されている。<br>
<center>
{| class="wikitable"
|+ ACP Clientの事前設定済みエージェント
! エージェント名 !! デフォルトコマンド
|-
| GitHub Copilot || <code>npx @github/copilot-language-server@latest --acp</code>
|-
| Claude Code || <code>npx @agentclientprotocol/claude-agent-acp@latest</code>
|-
| Gemini CLI || <code>npx @google/gemini-cli@latest --experimental-acp</code>
|-
| Qwen Code || <code>npx @qwen-code/qwen-code@latest --acp --experimental-skills</code>
|-
| Auggie CLI || <code>npx @augmentcode/auggie@latest --acp</code>
|-
| Qoder CLI || <code>npx @qoder-ai/qodercli@latest --acp</code>
|-
| Codex CLI || <code>npx @zed-industries/codex-acp@latest</code>
|-
| OpenCode || <code>npx opencode-ai@latest acp</code>
|-
| OpenClaw || <code>npx openclaw acp</code>
|-
| Kiro CLI || <code>kiro-cli acp</code>
|-
| Hermes Agent || <code>hermes acp</code>
|}
</center>
<br>
===== OpenCodeのACP設定 (ローカルインストール版) =====
VSCode全体の設定である <u>~/.config/Code/User/settings.json</u> ファイルに、以下に示す設定を追加する。<br>
または、[Ctrl] + [Shift] + [P]キーを押下して、コマンドパレットから <u>Preferences: Open User Settings (JSON)</u> を入力する。<br>
<br>
<syntaxhighlight lang="json">
{
  // ...略
  "acp.agents": {
    "OpenCode": {
      "command": "opencode",  // または、OpenCodeのフルパスを指定する
      "args": [
        "acp",
        "--print-logs"
      ]
    }
  },
  "acp.logTraffic": true
}
</syntaxhighlight>
<br>
なお、<code>--print-logs</code> は、標準エラー出力 (stderr) のログを表示する診断用オプションである。<br>
<br>
この設定では、ACP Clientが <code>opencode acp</code> コマンドをローカルサブプロセスとして起動する。<br>
OpenCodeが環境変数 <code>PATH</code> から見つからない場合は、<code>which opencode</code> コマンドで確認した絶対パスを <code>command</code> に指定する。<br>
<br>
===== ACP Clientの主要設定項目 =====
<center>
{| class="wikitable"
|+ ACP Client拡張機能の設定項目
! 設定キー !! デフォルト値 !! 説明
|-
| <code>acp.agents</code> || (11エージェント) || エージェント設定<br>各キーがエージェント名、<br>値に <code>command</code>、<code>args</code>、<code>env</code> を指定する。
|-
| <code>acp.autoApprovePermissions</code> || ask || 権限リクエストの処理方法<br><code>ask</code>: 都度確認<br><code>allowAll</code>: 全て自動承認
|-
| <code>acp.defaultWorkingDirectory</code> || "" || エージェントセッションのデフォルト作業ディレクトリ<br>空の場合は現在のワークスペースを使用する。
|-
| <code>acp.logTraffic</code> || true || ACPプロトコル通信のログをACP Traffic出力チャンネルに記録する。
|}
</center>
<br>
===== 基本的な使用方法 =====
# VSCodeのアクティビティバーからACP Clientパネル (ACPアイコン) を開く。
# エージェント一覧からOpenCodeを選択して接続する。
# チャットパネルにプロンプトを入力して送信する。
<br>
===== キーボードショートカット =====
<center>
{| class="wikitable"
|+ ACP Clientのキーボードショートカット
! ショートカット !! 操作
|-
| [Ctrl] + [Shift] + [A]<br>[Cmd] + [Shift] + [A] || チャットパネルを開く
|-
| [Esc] (応答生成中) || 現在の処理をキャンセル
|}
</center>
<br>
===== コマンドパレット操作 =====
コマンドパレット ([Ctrl] + [Shift] + [P]キーを押下) では、以下に示すコマンドが使用できる。<br>
<br>
* <u>ACP: Connect to Agent</u>
*: エージェントに接続する。
* <u>ACP: New Conversation</u>
*: 新しい会話を開始する。
* <u>ACP: Send Prompt</u>
*: エージェントにメッセージを送信する。
* <u>ACP: Cancel Current Turn</u>
*: 現在の処理をキャンセルする。
* <u>ACP: Disconnect Agent</u>
*: エージェントから切断する。
* <u>ACP: Restart Agent</u>
*: エージェントプロセスを再起動する。
* <u>ACP: Show Protocol Traffic</u>
*: ACP通信のログを表示する。
<br>
==== 公式端末統合とACPクライアントの比較 ====
<center>
{| class="wikitable"
|+ OpenCodeをVSCodeで使用する2つの方法の比較
! 項目 !! 公式端末統合 (sst-dev.opencode) !! サードパーティACP (formulahendry.acp-client)
|-
| 提供元 || OpenCode公式 (Anomaly / SST) || コミュニティ (Jun Han)
|-
| インターフェース || VSCodeの統合端末 (TUI) || VSCodeのチャットパネル (GUI)
|-
| インストール方法 || <code>opencode</code>実行時に自動インストール || 拡張機能マーケットプレイスから手動インストール
|-
| 起動方法 || キーボードショートカット (<code>Ctrl+Esc</code>) || ACPパネルからエージェント接続
|-
| 通信方式 || 端末上の直接実行 || ACP (JSON-RPC 2.0 over stdio)
|-
| TUI機能 (<code>/undo</code>、<code>/redo</code>) || 使用可能 || 使用不可
|-
| ファイル参照ショートカット || <code>Alt+Ctrl+K</code> || なし
|-
| コンテキスト認識 || 選択範囲・タブの自動共有 || 手動でプロンプトに入力
|-
| 前提条件 || OpenCode CLI || OpenCode CLI + Node.js 18以上
|}
</center>
<br>
==== プロキシ環境での使用 ====
企業内ネットワーク等でプロキシを使用する場合は、以下の環境変数を設定する。<br>
<br>
* HTTPSプロキシを使用する場合
*: <syntaxhighlight lang="sh">
export HTTPS_PROXY=https://proxy.example.com:8080
</syntaxhighlight>
*: <br>
* HTTPプロキシを使用する場合
*: <syntaxhighlight lang="sh">
export HTTP_PROXY=http://proxy.example.com:8080
</syntaxhighlight>
<br>
<u>OpenCodeのTUIはローカルHTTPサーバと通信するため、以下に示す設定が必須である。</u><br>
<u>この設定を行わないと、ルーティングループが発生して正常に動作しない。</u><br>
<br>
<syntaxhighlight lang="sh">
export NO_PROXY=localhost,127.0.0.1
</syntaxhighlight>
<br>
プロキシが認証を要求する場合は、URLに認証情報を含める。<br>
<br>
<syntaxhighlight lang="sh">
export HTTPS_PROXY=http://username:password@proxy.example.com:8080
</syntaxhighlight>
<br>
カスタムCA証明書を使用する場合は、以下に示す環境変数を設定する。<br>
<br>
<syntaxhighlight lang="sh">
export NODE_EXTRA_CA_CERTS=/path/to/ca-cert.pem
</syntaxhighlight>
<br>
==== アクセス許可の設定 ====
OpenCodeでは、<u>opencode.json</u> ファイルの <code>permission</code> セクションで各操作の許可設定を行える。<br>
<br>
基本的な設定例を以下に示す。<br>
<br>
<syntaxhighlight lang="json">
{
    "$schema": "https://opencode.ai/config.json",
    "permission": {
      "*": "ask",
      "bash": "allow",
      "edit": "deny"
    }
}
</syntaxhighlight>
<br>
操作は以下の3つのアクションに設定できる。<br>
<br>
* <code>allow</code>
*: 確認なしで実行を許可する。
* <code>ask</code>
*: 実行前に確認を求める。
* <code>deny</code>
*: 実行を拒否する。
<br>
自動承認モードで起動する場合は、<code>--auto</code> フラグを使用する。<br>
<br>
opencode --auto
<br>
==== トラブルシューティング ====
===== OpenCodeが起動しない =====
以下を確認する。<br>
<br>
* ログを確認する。
*: ログは <u>~/.local/share/opencode/log/</u> に保存されている。
* 端末にログを出力して起動する。
*: <pre>opencode --print-logs</pre>
* ログレベルをDEBUGに設定して詳細情報を取得する。
*: <pre>opencode --log-level DEBUG</pre>
* デバッグ情報を表示する。
*: <pre>opencode debug paths</pre>
* 最新バージョンにアップグレードする。
*: <pre>opencode upgrade</pre>
<br>
===== PATHが通っていない / コマンドが見つからない =====
ACP Clientの設定では、<code>command</code> に絶対パスを指定する。<br>
<br>
# 設定例
"command": "/home/<ユーザ名>/.opencode/bin/opencode"
<br>
<code>which opencode</code> コマンドを実行してインストール先を確認し、そのパスを使用する。<br>
<br>
===== ACPサーバが起動しない / 通信できない =====
ACP通信のログを確認するには、以下の方法がある。<br>
<br>
* ACP Clientの設定で <code>"acp.logTraffic": true</code> を確認する。
* VSCodeのコマンドパレットから <u>ACP: Show Protocol Traffic</u> を実行する。<br>または、出力パネルで[ACP Traffic]チャンネルを選択する。
<br>
手動でACPサーバの動作を確認する場合は、以下に示すコマンドを実行する。<br>
<br>
opencode acp --print-logs --log-level DEBUG
<br>
===== 認証エラー =====
以下を確認する。<br>
<br>
* <code>/connect</code> コマンドで再認証する。
* APIキーが有効であることを確認する。
* ネットワークがプロバイダーのAPIに接続できることを確認する。
* 認証情報ファイル <u>~/.local/share/opencode/auth.json</u> が存在するか確認する。
<br>
===== モデルが見つからない =====
以下を確認する。<br>
<br>
* プロバイダーに認証済みであること。
* モデル名が <code>プロバイダーID/モデルID</code> の形式で正しく指定されていること。
*: 例: <u>anthropic/claude-sonnet-5</u>、<u>openai/gpt-5.5</u>
* 利用可能なモデル一覧を表示する。
*: <pre>opencode models</pre>
<br>
===== 許可ダイアログが応答しない =====
ACP Clientで許可ダイアログが応答しない場合は、<code>acp.autoApprovePermissions</code> を <code>allowAll</code> に設定して一時的に自動承認に切り替える。<br>
<br>
===== ACP経由で /undo や /redo が使えない =====
これは仕様上の制限である。<br>
<br>
<code>/undo</code> コマンド および <code>/redo</code> コマンドはACP経由ではサポートされていない。<br>
これらの操作が必要な場合は、公式端末統合 (<code>sst-dev.opencode</code>) を使用するか、端末上で直接OpenCodeのTUIを起動する。<br>
<br>
==== 制限事項 ====
* ACP経由では、<code>/undo</code> コマンド および <code>/redo</code> コマンドは使用できない。
* ACP Client経由でエージェントを使用する場合、エージェントがシステムのPATHに含まれているか、npxで利用可能である必要がある。
* ACP Clientのファイル添付機能は、現時点ではまだ実装されていない。
* ACP経由のリモートエージェント接続 (HTTP / WebSocket) は策定中であり、現時点ではローカルのstdio接続のみが安定して使用できる。
<br><br>
== 関連情報 ==
* [https://opencode.ai/docs/ OpenCode 公式ドキュメント]
* [https://opencode.ai/docs/acp/ OpenCode ACPサポート]
* [https://opencode.ai/docs/cli/ OpenCode CLIリファレンス]
* [https://opencode.ai/docs/ide/ OpenCode IDE統合]
* [https://opencode.ai/docs/providers/ OpenCode プロバイダー設定]
* [https://opencode.ai/docs/troubleshooting/ OpenCode トラブルシューティング]
* [https://opencode.ai/docs/network/ OpenCode ネットワーク設定]
* [https://opencode.ai/docs/permissions/ OpenCode 権限設定]
* [https://agentclientprotocol.com/get-started/introduction Agent Client Protocol 入門]
* [https://agentclientprotocol.com/get-started/clients ACP対応クライアント一覧]
* [https://github.com/formulahendry/vscode-acp ACP Client for VS Code (GitHub)]
* [https://marketplace.visualstudio.com/items?itemName=formulahendry.acp-client ACP Client (VS Code Marketplace)]
* [https://marketplace.visualstudio.com/items?itemName=sst-dev.opencode OpenCode公式拡張機能 (VS Code Marketplace)]
* [https://github.com/anomalyco/opencode OpenCode GitHubリポジトリ]
<br><br>
{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - VSCodeのインストール手順、C/C++開発環境の設定、Dolphin連携、およびOpenCodeによるAIコーディング支援 (ACP / 端末統合) の総合ガイド | This page is {{PAGENAME}} in MochiuWiki - comprehensive guide to VSCode installation, C/C++ development setup, and OpenCode AI coding assistance
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]