Skip to content

OpenCodeプラグインのインストール

この章で学べること

  • OpenCodeでPlannotatorプラグインをインストールする
  • submit_planツールと/plannotator-reviewコマンドを設定する
  • 環境変数を設定する(リモートモード、ポート、ブラウザなど)
  • プラグインのインストールが成功したか確認する

現在の課題

OpenCodeでAI Agentを使用する際、プランレビューはターミナルでプレーンテキストを読む必要があり、正確なフィードバックが困難です。プランにアノテーションを付けたり、コメントを追加したりできるビジュアルインターフェースが欲しい。そして、フィードバックを構造化してAgentに自動送信したい。

このチュートリアルが役立つ場面

Plannotatorを使い始める前の必須ステップ:OpenCode環境で開発しており、インタラクティブなプランレビュー体験を求めている場合。

🎒 始める前の準備

  • [ ] OpenCodeがインストール済み
  • [ ] 基本的なopencode.json設定(OpenCodeプラグインシステム)を理解している

前提知識

OpenCodeの基本操作をまだ理解していない場合は、先にOpenCode公式ドキュメントを参照することをお勧めします。

コアコンセプト

PlannotatorはOpenCodeに2つのコア機能を提供します:

  1. submit_planツール - Agentがプランを完了した際に呼び出し、ブラウザでインタラクティブレビューを開く
  2. /plannotator-reviewコマンド - 手動でGit diffコードレビューをトリガー

インストールは2ステップに分かれます:

  1. opencode.jsonにプラグイン設定を追加(submit_planツールを有効化)
  2. インストールスクリプトを実行(/plannotator-reviewコマンドを取得)

ステップバイステップ

ステップ1:opencode.jsonでプラグインをインストール

OpenCodeの設定ファイル(通常はプロジェクトルートまたはユーザー設定ディレクトリにあります)を見つけ、plugin配列にPlannotatorを追加します:

json
{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["@plannotator/opencode@latest"]
}

理由opencode.jsonはOpenCodeのプラグイン設定ファイルです。プラグイン名を追加すると、OpenCodeが自動的にnpmリポジトリからダウンロードして読み込みます。

期待される結果:OpenCode起動時に「Loading plugin: @plannotator/opencode...」というメッセージが表示されます。


ステップ2:OpenCodeを再起動

理由 プラグイン設定の変更後は、再起動しないと反映されません。

期待される結果:OpenCodeがすべてのプラグインを再読み込みします。


ステップ3:インストールスクリプトでスラッシュコマンドを取得

bash
curl -fsSL https://plannotator.ai/install.sh | bash
powershell
irm https://plannotator.ai/install.ps1 | iex

理由 このスクリプトは以下を実行します:

  1. plannotator CLIツールをシステムにダウンロード
  2. /plannotator-reviewスラッシュコマンドをOpenCodeにインストール
  3. キャッシュされたプラグインバージョンをクリーンアップ

期待される結果:インストール成功メッセージが表示されます(例:「Plannotator installed successfully!」)。


ステップ4:インストールの確認

OpenCodeでプラグインが正常に動作しているか確認します:

submit_planツールが利用可能か確認

  • 会話でAgentに「submit_planを使ってプランを提出してください」と依頼
  • プラグインが正常であれば、Agentはこのツールを認識して呼び出せるはず

/plannotator-reviewコマンドが利用可能か確認

  • 入力欄に/plannotator-reviewと入力
  • プラグインが正常であれば、コマンド候補が表示されるはず

期待される結果:両方の機能がエラーなく正常に使用できます。


ステップ5:環境変数の設定(オプション)

Plannotatorは以下の環境変数をサポートしています。必要に応じて設定してください:

環境変数の説明
環境変数用途デフォルト値
PLANNOTATOR_REMOTEリモートモードを有効化(devcontainer/SSH)未設定export PLANNOTATOR_REMOTE=1
PLANNOTATOR_PORT固定ポート(リモートモードでは必須)ローカルはランダム、リモートは19432export PLANNOTATOR_PORT=9999
PLANNOTATOR_BROWSERカスタムブラウザパスシステムデフォルトexport PLANNOTATOR_BROWSER="/Applications/Google Chrome.app"
PLANNOTATOR_SHAREURL共有を無効化有効export PLANNOTATOR_SHARE=disabled

リモートモード設定例(devcontainer/SSH):

.devcontainer/devcontainer.jsonに以下を追加:

json
{
  "containerEnv": {
    "PLANNOTATOR_REMOTE": "1",
    "PLANNOTATOR_PORT": "9999"
  },
  "forwardPorts": [9999]
}

理由

  • リモートモード:コンテナやリモートマシンでOpenCodeを実行する際、固定ポートを使用してブラウザを自動的に開く
  • ポートフォワーディング:ホストマシンからコンテナ内のサービスにアクセス可能にする

期待される結果:Agentがsubmit_planを呼び出すと、コンソールにサーバーURLが表示されます(ブラウザが自動的に開く代わりに):

Plannotator server running at http://localhost:9999

ステップ6:OpenCodeを再起動(環境変数を変更した場合)

ステップ5で環境変数を設定した場合は、再度OpenCodeを再起動して設定を反映させる必要があります。


チェックポイント ✅

インストール完了後、以下を確認してください:

  • [ ] opencode.json@plannotator/opencode@latestが追加されている
  • [ ] OpenCode再起動後、プラグイン読み込みエラーがない
  • [ ] /plannotator-reviewと入力するとコマンド候補が表示される
  • [ ] (オプション)環境変数が正しく設定されている

よくあるトラブルと解決策

よくあるエラー1:プラグインの読み込みに失敗

症状:OpenCode起動時に「Failed to load plugin @plannotator/opencode」と表示される

考えられる原因

  • ネットワークの問題でnpmからダウンロードできない
  • npmキャッシュが破損している

解決方法

  1. ネットワーク接続を確認
  2. インストールスクリプトを実行(プラグインキャッシュをクリーンアップ)
  3. npmキャッシュを手動でクリア:npm cache clean --force

よくあるエラー2:スラッシュコマンドが利用できない

症状/plannotator-reviewと入力してもコマンド候補が表示されない

考えられる原因:インストールスクリプトが正常に実行されていない

解決方法:インストールスクリプトを再実行(ステップ3)


よくあるエラー3:リモートモードでブラウザが開かない

症状:devcontainerでsubmit_planを呼び出してもブラウザが開かない

考えられる原因

  • PLANNOTATOR_REMOTE=1が設定されていない
  • ポートフォワーディングが設定されていない

解決方法

  1. PLANNOTATOR_REMOTE=1が設定されていることを確認
  2. .devcontainer/devcontainer.jsonforwardPortsに設定したポートが含まれているか確認
  3. 表示されたURLに手動でアクセス:http://localhost:9999

よくあるエラー4:ポートが使用中

症状:サーバー起動に失敗し、「Port already in use」と表示される

考えられる原因:以前のサーバーが正しく終了していない

解決方法

  1. PLANNOTATOR_PORTを別のポートに変更
  2. または、ポートを使用しているプロセスを手動で終了(macOS/Linux: lsof -ti:9999 | xargs kill

この章のまとめ

この章では、OpenCodeでPlannotatorプラグインをインストールして設定する方法を学びました:

  1. opencode.jsonでプラグインを追加 - submit_planツールを有効化
  2. インストールスクリプトを実行 - /plannotator-reviewスラッシュコマンドを取得
  3. 環境変数を設定 - リモートモードやカスタム要件に対応
  4. インストールを確認 - プラグインが正常に動作していることを確認

インストール完了後、以下が可能になります:

  • Agentにsubmit_planを使ってプランを提出させ、インタラクティブレビューを実行
  • /plannotator-reviewを使って手動でGit diffをレビュー

次の章の予告

次の章では**プランレビューの基本**を学びます。

学べる内容:

  • AIが生成したプランの確認方法
  • 様々なタイプのアノテーション(削除、置換、挿入、コメント)の追加
  • プランの承認または却下

付録:ソースコード参照

クリックしてソースコードの場所を表示

更新日:2026-01-24

機能ファイルパス行番号
プラグインエントリ定義apps/opencode-plugin/index.ts34-280
submit_planツール定義apps/opencode-plugin/index.ts209-252
---------
プラグイン設定(opencode.json)注入apps/opencode-plugin/index.ts55-63
環境変数の読み取りapps/opencode-plugin/index.ts37-51
プランレビューサーバー起動packages/server/index.ts全文
コードレビューサーバー起動packages/server/review.ts全文
リモートモード検出packages/server/remote.ts全文

主要な定数

  • PLANNOTATOR_REMOTE: リモートモードフラグ(「1」または「true」で有効化)
  • PLANNOTATOR_PORT: 固定ポート番号(ローカルはデフォルトでランダム、リモートはデフォルトで19432)

主要な関数

  • startPlannotatorServer(): プランレビューサーバーを起動
  • startReviewServer(): コードレビューサーバーを起動
  • getSharingEnabled(): URL共有スイッチの状態を取得(OpenCode設定または環境変数から)