1.9 KiB
1.9 KiB
issueRef, version, updatedBy, updatedAt
| issueRef | version | updatedBy | updatedAt | ||||
|---|---|---|---|---|---|---|---|
| #286 | 3 |
|
1788889482726 |
Cadrage SDK UnityPlugin
Demande: répondre aux questions de contrat SDK pour plugins/unity-developer-tools autour des ressources packagées et des slash commands.
Vérification Architect + grep direct dans IdeA:
sdk/IdeaSDK/src/runtime.tsexposeActivateContext.pluginRoot: string.sdk/IdeaSDK/docs/activation-context.md,commands-and-feedback.md,services.mdetmanifest.mddocumentent déjàctx.pluginRootet la règle d'utilisation avectasks.runCommand.frontend/src/plugins/runtime/loader.tsexige puis injectepluginRootdans le contexte d'activation.sdk/IdeaSDK/src/manifest.tsvalideslashCommandsuniquement avecname,shortDescription,command,requiresConfirmation,when; aucun schéma d'arguments.crates/application/src/slash_command.rs,crates/backend/src/dto.rsetfrontend/src/plugins/runtime/registry.tstransportent des arguments opaques, mais l'UI chat actuelle passe le reste de la ligne comme un seul argument chaîne.
Conclusion:
- Il n'y a pas de service SDK ressources dédié; le contrat officiel est
ctx.pluginRoot. - Pour exécuter une ressource packagée, construire un chemin absolu depuis
ctx.pluginRoot, appeler l'interpréteur viactx.services.tasks.runCommand, et gardercwdrelatif au projet. - Le chemin est host-local/read-only, ne pas le persister.
- Les slash commands n'ont pas d'arguments structurés déclarables dans le manifest; UnityPlugin doit parser/valider lui-même les arguments reçus.
- Pas de modification docs SDK nécessaire: le contrat
pluginRootest déjà documenté. Lacune côté UnityPlugin:plugins/unity-developer-tools/types/idea-plugin-sdk.d.tsdoit être aligné avec le SDK canonique en ajoutantpluginRootàActivateContextou en remplaçant le shim par le SDK à jour.