JA

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)で非公開の統計(閲覧数、インストール、更新、バージョン、評価)も見られます。