IDE のプラグイン
JumPHP IDE は PHP で書いたプラグインで拡張できます。プラグインが追加できるもの:
- アクション(メニュー、Find Action、ショートカット)
- ツールウィンドウ
- 実行構成
- 補完と問題(入力中に下線で表示)
- Claude 用のツール
プラグインはデスクトップ版の IDE で動きます。
プラグインをインストールする
IDE で Tools › Plugins… を開くと、次のものがあります:
- jumphp.net:プラグインを検索して Install。新しいバージョンが出るとボタンは Update になります。
- Install from a Folder…:プラグインのフォルダをインストールします。
- インストール済みプラグインの一覧:有効化、無効化、削除ができます。
更新:IDE は起動の少し後、その後は 6 時間ごとに jumphp.net を確認します。通知が Update を提案し、Update plugins automatically を有効にすると自動でインストールします。新しいバージョンは次回の起動から使われます。
プラグインはあなたの権限で動く PHP です。信頼できるものだけをインストールしてください。
プラグインを作る
bin/jumphp plugin:new todo-finder "TODO Finder"
bin/jumphp install todo-finder
bin/jumphp test todo-finder
IDE の New Project › IDE plugin からも作れます。
プラグインのクラス src/TodoPlugin.php が、持ち込む機能を追加します:
public function activate(Api $ide): void
{
$ide->action('count', 'Count the TODOs', fn (EditorState $at) => substr_count($at->text, 'TODO') . ' TODO', ['kbd' => 'Ctrl+Alt+T']);
$ide->toolWindow('todos', 'TODOs', fn () => Ui::column(
Ui::list(array_map(fn ($t) => Ui::item($t['text'], fn () => $ide->openFile($t['path'], $t['line'])), $this->todos())),
));
$ide->diagnostics('*.php', fn (string $path, string $text) => $this->fixmes($text));
}
- ツールウィンドウは PHP で、テキスト、ボタン、リスト、入力欄、チェックボックスといったシンプルな要素から組み立てます。IDE が自分のスタイルで描画します。
- クリックなどユーザーの操作は、あなたの PHP を呼び出します。
- テスト(
PluginTestCase)はウィンドウなしでプラグインを使います。アクションを実行し、ウィンドウを読み、クリックし、補完を求めます。
試すには:Tools › Plugins… を開き、プロジェクトのプラグインの横にある Install in the IDE を押します。
Claude 用のツール
IDE は自分の Claude に MCP サーバー jumphp-ide を渡します。Claude はそれで IDE を操作します:ファイルを開く、テストを実行する、デバッグする。プラグインはそこに独自のツールを追加できます:
$ide->mcpTool('list_todos', 'The TODO comments of the project: path, line, text.',
fn (array $args) => $this->todos($args['path'] ?? ''),
['path' => ['type' => 'string', 'description' => 'only under this folder']]);
Claude にはこのツールが mcp__jumphp-ide__plugin_todo_finder_list_todos として見えます。Claude は説明文でツールを選ぶので、何を返し、いつ使うのかを書いてください。ツールは IDE 内の PHP で動き、決してブロックしてはいけません。
jumphp.net で公開する
Tools › Plugins… で、プロジェクトのプラグインの横にある Publish on jumphp.net をクリックします。サインインが必要です。公開したプラグインはプラグインのページに表示されます。
- ある ID を最初に公開したアカウントがその所有者になります。
- すべてのバージョンが残ります。新しいバージョンを公開するには
composer.jsonのversionを上げてください。 bin/jumphp plugin:pack todo-finderで同じ.zipを作れます。- 誰でもプラグインのページまたは IDE(Rate…)で 1〜5 つ星の評価ができます。公開の統計はダウンロード数と評価です。作者は、サインインしたページと IDE(Statistics)で非公開の統計(閲覧数、インストール、更新、バージョン、評価)も見られます。