Plugin Builder & Sandbox
Gratis AI Agent v1.5.0では、Plugin Builder & Sandbox Systemが導入されました。これにより、AIアシスタントが安全で隔離されたサンドボックス環境を通じて、ネットワーク上のWordPressプラグインを生成、有効化、管理できるようになります。
概要
Plugin Builderを使用すると、AIアシスタントが自然言語の要求に基づいてカスタムのWordPressプラグインを記述できます。生成されたプラグインは、実際のサイト機能に影響を与える前に、検証され、サンドボックスレイヤー内に保存および有効化されます。
利用シーンの例:
- 開発者の関与なしに、軽量なユーティリティプラグインを生成する。
- WordPressのhookやカスタム投稿タイプが必要な機能のプロトタイピングを行う。
- バッチ処理のための短期間の自動化スクリプトを作成する。
AIによるプラグインの生成
プラグインを生成するには、Gratis AI Agentのチャットインターフェースを開き 、必要な内容を記述します。例えば、以下のように入力します。
「ダッシュボードにカスタムの管理通知を追加するプラグインを作成してください。」
AIは以下の処理を行います。
- 構造化されたコード生成を用いて、プラグインのPHPコードを生成します。
- 出力について、構文エラーや安全でないパターンがないか検証します。
- 生成されたプラグインをサンドボックスストアに保存します。
- プラグインのスラッグとActivate in Sandboxボタンを含む確認メッセージを返します。
有効化する前に、同じ会話スレッドでフォローアップすることで、結果を洗練させることができます。
サンドボックスでの有効化
サンドボックスで生成されたプラグインを有効化することは、ライブネットワークで有効化することとは異なります。サンドボックスは以下の機能を提供します。
- プラグインを隔離されたWordPress環境(wp-env)で実行します。
- PHPのエラー、警告、またはhookの競合をキャプチャします。
- 有効化の結果をチャットインターフェースに報告します。
プラグインをサンドボックスで有効化するには、AIのチャット応答にあるActivate in Sandboxボタンをクリックするか、スラッシュコマンドを使用します。
/activate-plugin <plugin-slug>
ステータスメッセージが表示され、有効化が成功したか失敗したかが確認できます。失敗した場合、エラーログがチャットスレッドに表示されます。
生成されたプラグインの管理
生成されたプラグインは、Gratis AI Agent → Plugin Builder → Manage Pluginsに一覧表示されます。この画面から以下の操作が可能です。
| アクション | 説明 |
|---|---|
| View source | 完全なプラグインのPHPコードを確認できます。 |
| Re-activate in sandbox | サンドボックスでの有効化チェックを再実行します。 |
| Install on network | プラグインをライブネットワークにデプロイします(手動での確認が必要です)。 |
| Update | AI経由で新しいバージョンを提供し、既存のコードを置き換えます。 |
| Delete | プラグインをサンドボックスストアから削除します。最初にすべてのサイトから無効化されます。 |
Install on networkは、生成されたプラグインをライブのWordPressマルチサイトにデプロイします。続行する前に、プラグインコードを確認してください。Gratis AI Agentは、ライブインストールを完了する前に確認を求めます。
ネットワークへのプラグインのインストール
サンドボックスで十分な検証ができたプラグインは、ライブネットワークにインストールできます。
- Gratis AI Agent → Plugin Builder → Manage Pluginsに移動します。
- デプロイしたいプラグインの横にあるInstall on Networkをクリックします。
- ダイアログで確認を行います。プラグインは
wp-content/plugins/にインストールされ、ネットワーク全体で有効化されます。
または、チャットインターフェースでスラッシュコマンドを使用することもできます。
/install-plugin <plugin-slug>
プラグインの更新
生成されたプラグインを更新するには、新しい会話でAIアシスタントに変更を記述します。
「dashboard-noticeプラグインを、管理者のみに通知が表示されるように更新してください。」
AIが新しいバージョンを生成し、現在のバージョンと並んでサンドボックスに表示されます。差分(diff)を確認し、承認してから更新が適用されます。
HookScannerの統合
Plugin Builderは、統合されたHookScannerを使用して、各生成されたプラグインが登録するhookやfilterを分析します。HookScannerの出力はチャット応答に表示され、以下が含まれます。
- 登録されたAction hooks(
add_actionの呼び出し)。 - 登録されたFilter hooks(
add_filterの呼び出し)。 - プラグインの依存関係で見つか ったすべてのhook(
vendor/およびnode_modules/ディレクトリはスキップ)。
これにより、プラグインを有効化する前に、その動作を理解するのに役立ちます。
セキュリティに関する考慮事項
- 生成されたプラグインは、手動でインストールされたプラグインとは別個に保存され、明示的にネットワークにインストールしない限り、標準のWordPressプラグイン管理画面からはアクセスできません。
- サンドボックスは、プラグインファイルを書き込む際にディレクトリトラバーサルを防ぐためにパス検証を使用します。
- 危険な関数呼び出し(例:
eval、exec、system)を含むプラグインは、検証中にフラグが立てられ、有効化されることはありません。