docs(sdk): lancement des serveurs MCP JavaScript packagés — #294 (manifest: aucune substitution ${node}/${runtimeNode}/${hostNode} ni champ runtime, IdeA ne fournit pas de runtime Node plugin-scoped; command n'est pas du shell — démarrage direct avec args séparés, pas de fichiers de startup/alias/PATH du shell de login; command relatif résolu sous pluginRoot — command:"node" sans allowAbsoluteCommand devient ${pluginRoot}/node (cause ENOENT UnityPlugin #12); absolu littéral refusé sans allowAbsoluteCommand=true, command devenu absolu après substitution ${pluginRoot}/${appDataDir} passé tel quel; shebang #!/usr/bin/env node dépend du node visible du process app IdeA; recommandations: exécutable packagé incluant son runtime ou runtime géré sous stockage plugin/app pointé via ${pluginRoot}/${appDataDir}, sinon dépendance hôte explicite absolue /usr/bin/node avec allowAbsoluteCommand=true et scripts dans args; même règle pour command:"bash"; packaging-distribution: section Packaged Executables And Runtimes — bit exécutable et shebang valides dans le package installé, éviter le bare command:"node" en plugins distribués/multi-harness; services: distinction runCommand() (exécutable hôte de l'environnement task, aucune substitution) vs règles manifest mcpServers avec lien croisé; affirmations vérifiées par Git contre l'hôte crates/application/src/plugin/mod.rs:3199 substitution puis looks_absolute/allow_absolute_command sinon préfixage pluginRoot, et validation :3637 absolu littéral sans flag rejeté; QA verte reconfirmée par Git: npm run check — build, typecheck:examples, package:hello-plugin)
2026-09-09 16:24:16 +02:00

IdeA Plugin SDK

Public TypeScript SDK for IdeA plugins.

The SDK defines the stable manifest and runtime types used by plugins loaded by IdeA. A plugin ships an idea-plugin.json manifest plus an ESM entrypoint that exports activate(ctx).

Start Here

The installable example lives in examples/hello-plugin. It demonstrates a menu command, storage, background-task feedback, a React layout component and services.windows.open(...).

Install

npm install

Build

npm run build

Validate The Example

npm run typecheck:examples
npm run package:hello-plugin

The example archive is written to:

examples/hello-plugin/build/hello-plugin-0.1.0.zip
Description
No description provided
Readme 242 MiB
Languages
TypeScript 71.1%
JavaScript 28.9%