概要

VSCodiumは、人気のあるコードエディタであるVisual Studio Code (VSCode) のオープンソース版である。
Microsoftが開発したVSCodeをベースにしているが、テレメトリーや追跡機能を除去して、完全にオープンソースのバイナリとして提供している。

VSCodiumの主な特徴は、プライバシーとセキュリティに重点を置いていることである。
VSCodeに含まれるMicrosoftの独自機能やトラッキング要素を取り除き、より透明性の高い開発環境を提供している。

MicrosoftのVSCodeはオープンソースであるが、非FLOSSライセンスの下でライセンスされており、テレメトリー / トラッキングが含まれている。

開発者たちは、VSCodiumを使用することにより、VSCodeの優れた機能や拡張機能のエコシステムを享受しながら、同時にプライバシーを維持することができる。
多くのプログラミング言語のサポート、デバッグ機能、バージョン管理システムとの統合等、VSCodeの主要な機能はVSCodiumでも利用可能である。

コミュニティにより維持されているVSCodiumは、透明性を重視する開発者や組織にとってより良い選択肢である。
ソースコードが公開されているため、セキュリティ意識の高いユーザが内容を確認することができる。

ただし、VSCodiumを使用する場合は、Microsoftの公式マーケットプレイスへのアクセスが制限される可能性があることに注意が必要である。
代わりに、オープンソースの拡張機能を提供する代替マーケットプレイスを利用することになる。

VSCodiumは、プライバシーとオープンソースの原則を重視しつつ、高機能なコーディング環境を求める開発者にとって、優れた選択肢といえる。


VSCodiumのインストール

パッケージ管理システムからインストール

まず、VSCodiumのリポジトリのGPGキーを追加する。

# RHEL / SUSE
sudo rpmkeys --import https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg

# Mobian / Raspberry Pi
wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg \
     | gpg --dearmor \
     | sudo dd of=/usr/share/keyrings/vscodium-archive-keyring.gpg

# Manjaro ARM
-


次に、VSCodiumのリポジトリを追加する。

# RHEL
printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=download.vscodium.com\nbaseurl=https://download.vscodium.com/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg\nmetadata_expire=1h" | sudo tee -a /etc/yum.repos.d/vscodium.repo

# SUSE
printf "[gitlab.com_paulcarroty_vscodium_repo]\nname=gitlab.com_paulcarroty_vscodium_repo\nbaseurl=https://download.vscodium.com/rpms/\nenabled=1\ngpgcheck=1\nrepo_gpgcheck=1\ngpgkey=https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/raw/master/pub.gpg\nmetadata_expire=1h" | sudo tee -a /etc/zypp/repos.d/vscodium.repo

# Mobian / Raspberry Pi
echo 'deb [ signed-by=/usr/share/keyrings/vscodium-archive-keyring.gpg ] https://download.vscodium.com/debs vscodium main' \
     | sudo tee /etc/apt/sources.list.d/vscodium.list

# Manjaro ARM
-


VSCodiumをインストールする。

# RHEL
sudo dnf update
sudo dnf install codium

# SUSE
sudo zypper refresh
sudo zypper install codium 

# Mobian / Raspbeery Pi
sudo apt update
sudo apt install codium

# Manjaro ARM
# VSCodiumは、AUR (Arch User Repository) にあり、AUR Helperでインストールすることができる
AUR :
sudo aura -A vscodium-bin

Yay :
sudo yay -S vscodium-bin


Flatpakからインストール

非公式ではあるが、VSCodiumはFlatpakアプリケーションとして利用可能である。 LinuxディストリビューションがFlatpakをサポートしており、Flathubレポを有効化していれば、VSCodiumをインストールできる。

flatpak install flathub com.vscodium.codium


または、Flathubの公式Webサイトにあるflatpakrefファイルを開く。
gnome-software-plugin-flatpakパッケージがインストールされている場合、GNOME Softwareからインストールすることができる。

ただし、Flathubのセットアップ手順で推奨されている。

手動でインストール

VSCodiumのGithubにアクセスする。

VSCodium-<バージョン>-x86_64.AppImageファイル、または、VSCodium-linux-x64-<バージョン>.tar.gzファイルをダウンロードして解凍する。
ダウンロードまたは解凍したディレクトリを、任意の場所に配置する。

VS Codiumのデスクトップエントリファイルを作成する。

vi ~/.local/share/applications/VSCodium.desktop


 # ~/.local/share/applications/VSCodium.desktopファイル
 
 [Desktop Entry]
 Type=Application
 Name=VS Codium
 GenericName=Text Editor
 Comment=Code Editing. Redefined.
 Exec=/<VS Codiumのインストールディレクトリ>/bin/codium --unity-launch %F
 Icon=/<VS Codiumのインストールディレクトリ>/resources/app/resources/linux/code.png
 Categories=Development;IDE;
 MimeType=text/plain;inode/directory;application/x-code-workspace;
 Actions=new-empty-window;
 Keywords=vscodeium;
 StartupNotify=false
 StartupWMClass=Codium
 
 [Desktop Action new-empty-window]
 Name=New Empty Window
 Exec=/<VS Codiumのインストールディレクトリ>/bin/codium --new-window %F
 Icon=/<VS Codiumのインストールディレクトリ>/resources/app/resources/linux/code.png


vi ~/.local/share/applications/VSCodium-url-handler.desktop


 # ~/.local/share/applications/VSCodium-url-handler.desktopファイル
 
 [Desktop Entry]
 Type=Application
 Name=VS Codium - URL Handler
 GenericName=Text Editor
 Comment=Code Editing. Redefined.
 Exec=/<VS Codiumのインストールディレクトリ>/bin/codium --open-url %U
 Icon=/<VS Codiumのインストールディレクトリ>/resources/app/resources/linux/code.png
 Categories=Development;IDE;
 MimeType=x-scheme-handler/vscode;x-scheme-handler/vscodium;
 Keywords=vscodium;
 NoDisplay=true
 StartupNotify=true



VSCodiumの代替マーケットプレイス

Open VSX Registry

Open VSX Registryは、VSCodiumユーザにとって最も一般的な代替マーケットプレイスである。
Eclipse財団によって運営されており、多くのオープンソース拡張機能を提供している。
VSCodiumではデフォルトでこのレジストリが設定されている。

Open VSX Registryの特徴として、コミュニティ主導の運営が挙げられる。
開発者は自由に拡張機能を公開でき、ユーザは無料でダウンロードできる。

多くの拡張機能がここで入手可能であるが、Microsoftの公式マーケットプレイスほど網羅的ではない。


Github

また、Github上で直接拡張機能を探すこともある。
多くのVSCodeの拡張機能はGithubでオープンソースとして公開されているため、ソースコードから直接インストールすることが可能である。

ただし、Githubから直接拡張機能をインストールする場合は、信頼できるソースであることを確認することが重要である。

  • Github
    https://github.com/
    Githubは多くのVSCode / VSCodium拡張機能のソースコードがホストされている場所である。
    特定の拡張機能を探す場合は、Githubの検索機能を使用できる。


Microsoft Visual Studio Marketplace

また、VSCodiumの設定を変更することで、Microsoftの公式マーケットプレイスにアクセスすることも技術的には可能ある。
ただし、これはVSCodiumの基本理念に反するため、非推奨である。

Microsoft Visual Studio Marketplaceは公式のVSCodeマーケットプレイスであるが、VSCodiumではデフォルトでアクセスできない。
設定変更によりアクセス可能になるが、VSCodiumの基本理念に反するため非推奨である。

その他

一部の組織や企業は、セキュリティやコンプライアンスの観点から、独自の内部マーケットプレイスを構築・運用していることもある。


PlatformIO IDEのインストール

PlatformIO IDEはArduino IDEの代替であるが、一般的には、VSCodeを経由してインストールする必要がある。
このセクションでは、VSCodiumにPlatformIO IDEをインストールする手順を以下に示す。

この情報の詳細を知りたい場合は、Githubのコメントを参照すること。

  1. まず、cpptools-linux.vsix拡張機能をGithubからダウンロードする。
    cpptools-linux.vsix拡張機能のURL: https://github.com/microsoft/vscode-cpptools/releases/
  2. 次に、PlatformIO IDE拡張機能をMicrosoftの公式ページからダウンロードする。これは、ページ右にある[Download]項目を選択して、各アーキテクチャ向けの拡張機能を選択する。
    PlatformIO IDE拡張機能のURL: https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide
  3. VSCodiumを起動して、上記でダウンロードした拡張機能をインストールする。
  4. VSCodiumメイン画面右にある[拡張機能]アイコンを選択、または、[Ctrl] + [Shift] + [X]キーを同時押下する。
  5. 拡張機能の管理画面の左上にある[...]アイコンを選択して、[VSIXからインストール...]を選択する。
  6. まず、cpptools-linux.vsix拡張機能をインストールする。
  7. 次に、PlatformIO IDE拡張機能をインストールする。
  8. 拡張機能のリセット、または、VSCodiumを再起動する。
  9. 拡張機能の管理画面の左ペインに、C/C++拡張機能アイコンおよびPlatformIO IDE拡張機能アイコンが表示されているかどうかを確認する。



OpenCodeによるAIコーディング支援

OpenCodeは、オープンソースのAIコーディングエージェントである。
端末ベースのインターフェース、デスクトップアプリケーション、IDE統合の形態で提供されている。

VSCodiumから利用する場合は、統合端末で使用する公式方式と、ACPを使用する第3者方式を分けて考える。

前提条件

  • VSCodiumがインストールされていること。
  • OpenCodeがインストールされていること。
  • 使用するLLMプロバイダーの認証情報が設定されていること。
  • ACP Clientを使用する場合は、ACP Clientの要件としてNode.js 18以上が必要であること。
  • VSCodiumの統合端末からOpenCodeを起動できること。


OpenCodeのインストール

Linuxでは、OpenCode公式インストールスクリプトを使用できる。

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


以下に示すパッケージマネージャー方式も存在する。

  • npm
    npm install -g opencode-ai
  • Bun
    bun install -g opencode-ai
  • pnpm
    pnpm install -g opencode-ai
  • Homebrew
    brew install anomalyco/tap/opencode
  • Arch Linux
    sudo pacman -S opencode


インストール後、シェルから実行できるか確認する。

which opencode


認証

通常のTUIを使用する場合は、プロジェクトディレクトリへ移動してOpenCodeを起動する。
/connect コマンドを実行して、プロバイダーを選択して認証情報を設定する。

CLIからプロバイダーの認証を設定する場合は、以下に示すコマンドを使用する。

opencode auth login


プロバイダーを指定する場合は、次のように実行する。

opencode auth login --provider <provider>


認証済みプロバイダーは次のコマンドで一覧表示できる。

opencode auth list


認証情報は ~/.local/share/opencode/auth.json ファイルに保存される。

ACP (Agent Client Protocol) の概要

ACPは、コードエディタまたはIDEとコーディングエージェント間の通信を標準化するプロトコルである。
ローカルエージェントでは、エージェントをエディタのサブプロセスとして起動して、JSON-RPCを標準入出力で通信する。

OpenCodeはACPをサポートしており、opencode acp コマンドでACPサーバを起動する。

opencode acp


ACP経由でも、OpenCodeの組み込みツール、カスタムツールとスラッシュコマンド、設定済みMCPサーバ、AGENTS.md のプロジェクトルール、formatter、linter、agent、permission systemが対象になる。

ただし、/undo コマンド と /redo コマンドはACP経由ではサポートされない。

VSCodiumで公式の端末統合を使用する

OpenCode公式の端末統合は、VSCodiumの統合端末で opencode コマンドを実行してTUIを使用する方式である。
VSCodium統合端末で opencode コマンドを実行すると、IDE拡張機能が自動インストールされる。

  1. VSCodiumを起動する。
  2. 統合端末を開く。
  3. 統合端末で opencode コマンドを実行する。
  4. 拡張機能の自動インストールを待つ。
  5. 必要に応じて、[Ctrl] + [Esc]キーを押下して、クイック起動する。


コマンドパレット表示名は、VSCodiumの環境によって異なる可能性があるため、画面表示を確認する。

Open VSX Registryには sst-dev.opencode が登録されており、targetPlatformはuniversalである。

ただし、Open VSXに存在することだけでは、VSCodiumでの実動作や互換性は保証されないことに注意する。

VSCodiumで第3者ACP Clientを使用する

formulahendry.acp-client は、ACP対応エージェントをエディタから接続するJun Han氏の第3者ACP Client拡張機能である。
これはOpenCode公式の拡張機能ではないため、OpenCode公式の端末統合と混同しないこと。

Open VSXには、formulahendry.acp-client が登録されており、publisherはJun Han、targetPlatformはuniversalである。

Open VSXから取得できるが、VSCodiumでの実動作は保証されていない。

Open VSXからインストールする
  1. VSCodiumの拡張機能ビューを開く。
  2. Open VSX Registryで ACP Client または formulahendry.acp-clientを検索する。
  3. formulahendry.acp-client を選択してインストールする。
  4. インストール後、VSCodiumを再読み込みする。


Open VSXの候補が表示されない場合は、以下に示すURLから拡張機能の情報を確認する。


VSCodiumは、デフォルトでOpen VSX Registryを使用する。
Open VSXに無い拡張機能をVSIXから導入する方法もあるが、拡張機能の提供元とVSCodiumでの動作を確認してから実施する。

settings.jsonにOpenCodeを追加する

VSCodium全体の設定である ~/.config/VSCodium/User/settings.json ファイルに、以下に示す設定を追加する。
または、[Ctrl] + [Shift] + [P]キーを押下して、コマンドパレットから Preferences: Open User Settings (JSON) を入力する。

 {
   // ...略
 
   "acp.agents": {
     "OpenCode": {
       "command": "opencode",  // または、OpenCodeのフルパスを指定する
       "args": [
         "acp",
         "--print-logs"
       ]
     }
   },
   "acp.logTraffic": true
 }


なお、--print-logs は、標準エラー出力 (stderr) のログを表示する診断用オプションである。

この設定では、ACP Clientが opencode acp コマンドをローカルサブプロセスとして起動する。
OpenCodeが環境変数 PATH から見つからない場合は、which opencode コマンドで確認した絶対パスを command に指定する。

作業ディレクトリとPATH

ACP Clientの acp.defaultWorkingDirectory の初期値は空文字列であり、空の場合は現在のワークスペースが使用される。

特定のディレクトリを使用する場合は、設定値を明示する。

 {
    "acp.defaultWorkingDirectory": "/home/<ユーザ名>/src/project"
 }


command の解決に失敗する場合は、ログインシェルのPATHとVSCodiumから起動したACPプロセスのPATHが異なる可能性がある。
その場合は、command にOpenCodeの絶対パスを指定する。

ユーザ固有のパスは、環境に合わせて置き換える。

ACP Clientの設定項目
ACP Clientの主要設定
設定キー 初期値 説明
acp.agents エージェント設定 command
args
env
を指定する。
acp.autoApprovePermissions ask 権限要求を確認する。
allowAll も指定できるが、権限確認を省略する。
acp.defaultWorkingDirectory "" 空の場合は現在のワークスペースを作業ディレクトリにする。
acp.logTraffic true ACP通信をACP Traffic出力チャンネルに記録する。


使用方法
  1. VSCodiumのアクティビティバーからACP Clientパネルを開く。
  2. エージェント一覧からOpenCodeへ接続する。
  3. チャットパネルにプロンプトを入力して送信する。
  4. 処理中にキャンセルする場合は、[Esc]キーを押下する。


セッション

ACP Clientにはエージェントごとのセッション一覧がある。

エージェントが session/list をサポートする場合は、その結果が使われる。
サポートしない場合は、ワークスペースごとのローカルキャッシュが使用される。

セッションの更新や切り替えには、コマンドパレットの ACP: Refresh Sessions 等を使用する。
これはACP Clientの挙動であり、OpenCodeの全セッション保存仕様やVSCodiumとの互換性を保証するものではない。

公式端末統合と第3者ACP方式の比較

公式の端末統合は、sst-dev.opencode に関係するOpenCode公式の端末/TUI統合である。

formulahendry.acp-client は、Open VSXから取得できる第3者ACP Clientであり、OpenCode公式ではない。

OpenCodeをVSCodiumで使用する方式の比較
項目 公式端末統合 第3者ACP Client
拡張機能の識別子 sst-dev.opencode formulahendry.acp-client
提供元 OpenCode公式の端末 / IDE統合 Jun Han氏の第3者拡張機能
画面 VSCodium統合端末のTUI ACP Clientのチャットパネル
起動 統合端末で opencode コマンドを実行 ACP設定から opencode acp コマンドを実行
VSCodiumでの配布確認 Open VSXで利用可能 Open VSXで利用可能
VSCodiumでの動作保証 - -
ACP 使用しない端末 / TUI方式 JSON-RPC over stdio


公式端末統合では、クイック起動、選択範囲や開いているタブの共有、ファイル参照等、IDE統合の機能を利用できる。

第3者ACP方式では、ACP Clientのチャットパネルから接続する。
VSCodiumでの動作は、導入後に実環境で確認する必要がある。

制限事項

  • OpenCodeの /undo コマンド と /redo コマンドは、ACP経由ではサポートされない。
  • formulahendry.acp-client のファイル添付機能は未実装である。
  • ACPのリモートHTTP または WebSocket接続は進行中であり、ローカルstdio接続だけを扱う。
  • Open VSXから取得できても、VSCodiumでの実動作や互換性が保証されるとは限らない。


トラブルシューティング

OpenCodeが見つからない

以下に示す項目を確認する。

  1. which opencode コマンドを実行する。
  2. OpenCodeのインストール先を、環境変数 PATH に追加する。
  3. VSCodiumを再起動して環境変数を読み直す。
  4. 解決しない場合は、ACP設定の command に絶対パスを指定する。


ACPサーバが起動しない

opencode acp コマンドを実行して、OpenCodeが起動できるか確認する。

ACP Clientの acp.logTraffictrue であることを確認して、ACP Traffic出力チャンネルを確認する。

作業対象が違う

acp.defaultWorkingDirectory が空の場合は、現在のワークスペースが使用される。

対象を固定する場合は、設定に絶対パスを指定してから新しいセッションを開始する。

認証できない

OpenCodeから認証を確認する。

opencode auth list


認証が必要な場合は、opencode auth login コマンド または /connect コマンドを使用する。

拡張機能をインストールできない

VSCodiumの拡張機能ビューがOpen VSX Registryを参照していることを確認する。

Open VSXに登録があってもVSCodium上で動作しない場合は、拡張機能のログと提供元の資料を確認する。
VSCodiumでの互換性を未確認のまま断定しない。


関連情報