chore(tickets): sync store local — #295 passage qa après QA verte (carnet complet cause/fix/validations post-restart transcript, capture utilisateur UnitySoundTool attachée; index/counter) + rattrapage store #293/#294 clos (carnets docs SDK contrat MCP plugins et lancement serveurs Node; bumps pointeur IdeaSDK déjà mergés sur develop via 1935e98/b1c173f); scripts/ hors périmètre; aucun push
This commit is contained in:
90
.ideai/tickets/293/carnet.md
Normal file
90
.ideai/tickets/293/carnet.md
Normal file
@ -0,0 +1,90 @@
|
||||
---
|
||||
issueRef: "#293"
|
||||
version: 4
|
||||
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
|
||||
updatedAt: 1788962603796
|
||||
---
|
||||
|
||||
## QA - 2026-09-09 - Validation doc-only SDK
|
||||
|
||||
Périmètre vérifié dans le submodule `sdk/IdeaSDK`, branche `feature/293-mcp-tools-exposure-docs`.
|
||||
|
||||
Diff relu : modifications limitées à `docs/activation-context.md`, `docs/manifest.md` et `docs/project-plugin-assignments.md`.
|
||||
|
||||
Commandes exécutées :
|
||||
|
||||
```bash
|
||||
git status --short --branch
|
||||
```
|
||||
|
||||
Sortie :
|
||||
|
||||
```text
|
||||
## feature/293-mcp-tools-exposure-docs
|
||||
M docs/activation-context.md
|
||||
M docs/manifest.md
|
||||
M docs/project-plugin-assignments.md
|
||||
```
|
||||
|
||||
```bash
|
||||
git diff --stat
|
||||
```
|
||||
|
||||
Sortie :
|
||||
|
||||
```text
|
||||
docs/activation-context.md | 11 ++++++++
|
||||
docs/manifest.md | 58 ++++++++++++++++++++++++++++++++++++++
|
||||
docs/project-plugin-assignments.md | 13 +++++++++
|
||||
3 files changed, 82 insertions(+)
|
||||
```
|
||||
|
||||
```bash
|
||||
npm run check
|
||||
```
|
||||
|
||||
Sortie essentielle :
|
||||
|
||||
```text
|
||||
> @idea/plugin-sdk@0.1.0 check
|
||||
> npm run build && npm run typecheck:examples && npm run package:hello-plugin
|
||||
|
||||
> @idea/plugin-sdk@0.1.0 build
|
||||
> tsc -p tsconfig.json
|
||||
|
||||
> @idea/plugin-sdk@0.1.0 typecheck:examples
|
||||
> tsc -p examples/hello-plugin/tsconfig.json --noEmit
|
||||
|
||||
> @idea/plugin-sdk@0.1.0 package:hello-plugin
|
||||
> npm run build && npm run build:hello-plugin && node scripts/package-hello-plugin.mjs
|
||||
|
||||
> @idea/plugin-sdk@0.1.0 build
|
||||
> tsc -p tsconfig.json
|
||||
|
||||
> @idea/plugin-sdk@0.1.0 build:hello-plugin
|
||||
> tsc -p examples/hello-plugin/tsconfig.build.json
|
||||
|
||||
created /home/anthony/Documents/Projects/IdeA/sdk/IdeaSDK/examples/hello-plugin/build/hello-plugin-0.1.0.zip
|
||||
```
|
||||
|
||||
Lecture QA : la documentation clarifie bien que les tools agent MCP viennent de `contributes.mcpServers` via serveurs MCP stdio et `tools/list`, pas d'une API `activate(ctx)` ; elle couvre `ctx.pluginRoot`, `autoStart: true`, le triplet `pluginId`/`serverId`/`toolName`, et la recommandation skill -> MCP tool pour les scripts packagés.
|
||||
|
||||
Verdict QA : VERT.
|
||||
|
||||
## Git - 2026-09-09 - Intégration locale
|
||||
|
||||
Git a intégré la branche dédiée du submodule SDK :
|
||||
|
||||
- Submodule `sdk/IdeaSDK`: `develop` pointe sur `68fd612` (`merge(sdk): intègre feature/293-mcp-tools-exposure-docs`).
|
||||
- Commit de feature SDK: `42567a5` (`docs(sdk): contrat d'exposition des tools MCP par les plugins`).
|
||||
- Repo parent IdeA: `develop` pointe sur `1935e98` (`chore(sdk): pointe le submodule sur develop`).
|
||||
|
||||
Aucune action distante effectuée. État parent restant hors périmètre : fichiers tickets locaux et répertoire `scripts/` déjà visibles/non liés à la doc SDK.
|
||||
|
||||
## Réponse contractuelle pour UnityPlugin #11
|
||||
|
||||
1. Contrat manifest/runtime : exposer un serveur MCP stdio dans `idea-plugin.json` sous `contributes.mcpServers` avec `id`, `displayName`, `command`, `transport: "stdio"`, idéalement `autoStart: true`; l'agent reçoit les tools via assignation `pluginId`/`serverId`/`toolName` après activation projet et relance agent.
|
||||
2. Pas de support SDK actuel pour enregistrer des tools MCP directement depuis `activate(ctx)`; seuls les serveurs MCP déclarés/externes sont le contrat agent-callable.
|
||||
3. `ctx.pluginRoot` est l'API officielle pour résoudre la racine du package installé depuis le runtime. `import.meta.url` peut servir à de la résolution module JS, mais n'est pas le contrat host/plugin. Pour `contributes.mcpServers`, `${pluginRoot}` et `${appDataDir}` sont substitués au démarrage du serveur.
|
||||
4. Recommandation court terme UnityPlugin : packager un serveur MCP stdio Node/script dans le plugin, le déclarer via `contributes.mcpServers`, assigner les tools aux agents, et modifier les skills pour demander l'appel des tools plutôt que référencer `../../scripts/...` depuis le Markdown.
|
||||
5. Documentation SDK enrichie dans `manifest.md`, `activation-context.md`, `project-plugin-assignments.md`.
|
||||
17
.ideai/tickets/293/issue.md
Normal file
17
.ideai/tickets/293/issue.md
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
id: "79792d0c-92a2-499d-8dc3-7b0e65d38dcc"
|
||||
number: 293
|
||||
title: "Clarifier et documenter l’exposition de tools MCP par les plugins IdeA"
|
||||
status: "closed"
|
||||
priority: "high"
|
||||
sprint: null
|
||||
links: []
|
||||
agentRefs: []
|
||||
attachments: []
|
||||
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
|
||||
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
|
||||
createdAt: 1788962113957
|
||||
updatedAt: 1788962603796
|
||||
version: 4
|
||||
---
|
||||
Demande entrante depuis Main du projet UnityPlugin, ticket #11. Clarifier le contrat SDK/manifest/runtime pour exposer des tools MCP depuis un plugin IdeA, vérifier si le SDK supporte les tools fournis directement par le runtime ou seulement des MCP servers déclarés/externes, préciser la résolution du répertoire d’installation plugin, et enrichir IdeaSDK/docs si le point est absent ou ambigu.
|
||||
Reference in New Issue
Block a user