📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)

ページの作成:「== 概要 == OpenCodeのプラグインシステムは、TypeScript / JavaScriptで記述したソースコードをOpenCodeの動作に組み込み、独自の機能拡張を実現する仕組みである。<br> <br> プラグインはフック (hook) ベースのイベント駆動型アーキテクチャを採用しており、<br> セッションの開始・終了、ファイル操作、ツール実行、シェルコマンドの実行といった各種イベン…」
 
編集の要約なし
665行目: 665行目:
*: <code>tool.execute.before</code> で例外をスローした場合、ツールの実行が中断される。
*: <code>tool.execute.before</code> で例外をスローした場合、ツールの実行が中断される。
*: 意図しない <code>throw</code> がないか確認する。
*: 意図しない <code>throw</code> がないか確認する。
<br><br>
<br><br>
== プラグインマーケットプレイス ==
OpenCodeはプラグインマーケットプレイス機能を提供しており、コミュニティが提供するプラグインを簡単にインストールできる。<br>
<br>
==== マーケットプレイスからのプラグイン追加 ====
マーケットプレイスからプラグインを追加するには、以下のコマンドを使用する。<br>
<br>
<syntaxhighlight lang="sh">
# マーケットプレイスにプラグインを追加
/plugin marketplace add <マーケットプレイス名>/<プラグイン名>
# 例: Microsoft Docs MCPを追加
/plugin marketplace add microsoftdocs/mcp
</syntaxhighlight>
<br>
==== プラグインのインストール ====
追加したマーケットプレイスからプラグインをインストールするには、以下のコマンドを使用する。<br>
<br>
<syntaxhighlight lang="sh">
# プラグインをインストール
/plugin install <plugin-name>@<marketplace-name>
# 例: Microsoft Docsプラグインをインストール
/plugin install microsoft-docs@microsoft-docs-marketplace
</syntaxhighlight>
<br>
==== Microsoft Docs MCPの設定例 ====
Microsoft Docs MCPを使用すると、OpenCodeからMicrosoftおよびAzureの公式ドキュメントにアクセスできる。<br>
公式ドキュメントを検索し、コードサンプルを取得し、詳細な技術情報を参照できる。<br>
<br>
<syntaxhighlight lang="sh">
# Microsoft Docs MCPをマーケットプレイスに追加
/plugin marketplace add microsoftdocs/mcp
# Microsoft Docs プラグインをインストール
/plugin install microsoft-docs@microsoft-docs-marketplace
</syntaxhighlight>
<br><br>
== よく使用されるプラグイン ==
OpenCodeのエコシステムには多くのコミュニティプラグインが存在する。<br>
<br>
使用される頻度の高い便利なプラグインをカテゴリ別に示す。<br>
<br>
==== 認証関連プラグイン ====
認証関連のプラグインを使用すると、APIクレジットの代わりに既存のサブスクリプションを使用できる。<br>
<br>
<center>
{| class="wikitable"
! プラグイン名 !! 説明
|-
| opencode-openai-codex-auth || ChatGPT Plus/Proのサブスクリプションを使用してOpenAI Codexバックエンドを利用する。<br>OAuth認証をサポートする。
|-
| opencode-gemini-auth || 既存のGeminiプランを使用してGoogleアカウントで認証する。<br>API課金の代わりにGeminiプランを使用できる。
|-
| opencode-antigravity-auth || Antigravityの無料モデルを使用してAPI課金なしでモデルを利用する。<br>GeminiおよびAnthropicモデルに対応する。
|-
| opencode-google-antigravity-auth || Google Antigravity OAuthを使用する拡張版。<br>Google検索サポートと堅牢なAPI処理を提供する。
|}
</center>
<br>
==== 開発環境プラグイン ====
開発環境を拡張するプラグインである。<br>
<br>
<center>
{| class="wikitable"
! プラグイン名 !! 説明
|-
| opencode-daytona || Daytonaサンドボックス内でOpenCodeセッションを自動実行する。<br>Git同期とライブプレビュー機能を提供する。
|-
| opencode-devcontainers || 複数ブランチのdevcontainer分離を実現する。<br>シャロークローンと自動割り当てポートをサポートする。
|-
| opencode-morph-fast-apply || Morph Fast Apply APIを使用した高速なコード編集を実現する。<br>10,500+ tokens/secの編集速度と遅延編集マーカーを提供する。
|-
| opencode-type-inject || ファイル読み込み時にTypeScript/Svelteの型を自動注入する。<br>型参照ツールを提供する。
|}
</center>
<br>
==== エージェント・オーケストレーションプラグイン ====
AIエージェントの動作を拡張・調整するプラグインである。<br>
<br>
<center>
{| class="wikitable"
! プラグイン名 !! 説明
|-
| opencode-background-agents || Claude Codeスタイルのバックグラウンドエージェントを提供する。<br>非同期委任とコンテキスト永続化をサポートする。
|-
| oh-my-opencode || バックグラウンドエージェント、LSP/AST/MCPツール、厳選されたエージェントを提供する。<br>詳細は専用ページを参照のこと。
|-
| micode || 構造化されたブレインストーム→計画→実装のワークフローを提供する。<br>セッション継続性とサブエージェントオーケストレーションをサポートする。
|-
| opencode-workspace || バンドルされたマルチエージェントオーケストレーションハーネスを提供する。<br>16コンポーネントを1つのインストールで利用できる。
|}
</center>
<br>
==== 通知・モニタリングプラグイン ====
セッション状態の通知や使用状況の追跡を行うプラグインである。<br>
<br>
<center>
{| class="wikitable"
! プラグイン名 !! 説明
|-
| opencode-notify || タスク完了時のネイティブOS通知を提供する。<br>バックグラウンドタスクの完了を通知する。
|-
| opencode-notificator || デスクトップ通知とサウンドアラートを提供する。<br>OpenCodeセッションの状態変化を通知する。
|-
| opencode-notifier || 権限、完了、エラーイベントのデスクトップ通知とサウンドアラートを提供する。
|-
| opencode-wakatime || Wakatimeを使用してOpenCodeの使用状況を追跡する。<br>コーディング時間の自動記録を行う。
|-
| opencode-quota || プロバイダー間のクォータとトークン使用量を追跡する。<br>自動トースト通知とスラッシュコマンドを提供する。
|}
</center>
<br>
==== その他のユーティリティプラグイン ====
その他の便利なプラグインである。<br>
<br>
<center>
{| class="wikitable"
! プラグイン名 !! 説明
|-
| opencode-helicone-session || リクエストグループ化のためのHeliconeセッションヘッダーを自動注入する。<br>API使用状況の分析に使用する。
|-
| opencode-dynamic-context-pruning || トークン使用量を最適化する。<br>古いツール出力をコンテキストから削除する。
|-
| opencode-supermemory || Supermemoryを使用してセッション間の永続メモリを提供する。<br>長期的なコンテキスト保持を実現する。
|-
| opencode-agent-memory || Lettaエージェントにインスパイアされた永続的な自己編集可能メモリブロックを提供する。<br>エージェントの記憶を保持する。
|-
| opencode-direnv || セッション開始時にdirenv環境変数を自動的に読み込む。<br>Nix flakesとの相性が良い。
|-
| opencode-scheduler || launchd (Mac) または systemd (Linux) を使用して定期的なジョブをスケジュールする。<br>cron構文をサポートする。
|-
| opencode-websearch-cited || 対応プロバイダーのネイティブウェブ検索サポートを追加する。<br>Google groundedスタイルの引用付き検索を提供する。
|-
| opencode-md-table-formatter || LLMが生成したMarkdownテーブルを整形する。<br>テーブルの可読性を向上させる。
|-
| opencode-shell-strategy || 非対話型シェルコマンドの指示を提供する。<br>TTY依存操作によるハングを防止する。
|}
</center>
<br>
==== プラグインのインストール方法 ====
プラグインをインストールするには、<u>opencode.jsonファイル</u> の <code>plugin</code> フィールドにパッケージ名を指定する。<br>
<br>
<syntaxhighlight lang="json">
{
    "$schema": "https://opencode.ai/config.json",
    "plugin": [
      "opencode-wakatime",
      "opencode-notify",
      "@sveltejs/opencode"
    ]
}
</syntaxhighlight>
<br>
スコープ付きnpmパッケージ (例: <u>@sveltejs/opencode</u>) もサポートされている。<br>
<br>
==== 公式エコシステムリソース ====
OpenCodeのエコシステムに関する情報は、以下のリソースから入手できる。<br>
<br>
* [https://opencode.ai/docs/ecosystem/ OpenCodeの公式エコシステムページ]
*: 公式にリストされたプラグインとプロジェクトを確認できる。
*: <br>
* [https://github.com/awesome-opencode/awesome-opencode awesome-opencode GitHubリポジトリ]
*: コミュニティによって管理される厳選リスト
*: プラグイン、テーマ、エージェント、リソースが含まれる。
*: <br>
* [https://opencode.cafe opencode.cafe]
*: コミュニティ駆動のマーケットプレイス
*: 拡張機能、プラグイン、ツールを閲覧・共有できる。
<br><br>
<br><br>