chore(tickets): sync store local — cycle #282 paramètres projet plugins + attribution skills/tools agents (branche feature/282-project-plugin-settings-multi-harness, merge develop 6592fad, ticket fermé; QA verte: application, project_plugin_settings 3/3, dto_plugins 2/2, structured_launch_d3 26/26, catalogue mcp 7/7, frontend 5 tests, npm build frontend; AppImage IdeA_0.3.0_amd64.AppImage rebuildée post-merge 2026-09-08 15:53, 114M — correctif actif après remplacement AppImage installée + relance, étape manuelle; exclusion scripts/restart-idea-over-ssh.sh hors périmètre)

This commit is contained in:
2026-09-08 15:54:23 +02:00
parent 6592fad83a
commit bcbf6053de
3 changed files with 54 additions and 8 deletions

View File

@ -1,8 +1,8 @@
---
issueRef: "#282"
version: 3
version: 5
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedAt: 1788871877354
updatedAt: 1788875629546
---
# Cadrage initial
@ -95,4 +95,50 @@ B1 Domaine : contributions skills plugin, settings projet plugins, refs skills/t
B2 Infrastructure : validator manifest, store `.ideai/project-plugins.json`, lecture package-relative des SKILL.md, catalogue tools plugin.
B3 Application : use cases settings/assignments, resolver skills, `idea_skill_read`, lancement agent, permissions MCP dynamiques avec projection par harness.
F1 Frontend : Settings projet > Plugins, détail plugin, attribution agent, catalogue permissions groupé.
QA : validator, store, injection/read-skill sur Claude Code/Codex/OpenCode, permissions MCP par harness, hot reload, uninstall tombstones.
QA : validator, store, injection/read-skill sur Claude Code/Codex/OpenCode, permissions MCP par harness, hot reload, uninstall tombstones.
# Implémentation livrée
Implémentation effectuée sur `feature/282-project-plugin-settings-multi-harness`.
Backend/domaine :
- `idea-plugin.json` accepte `contributes.skills` avec `id`, `name`, `description`, `kind`, `path` package-relative Markdown.
- Ajout du store `.ideai/project-plugins.json` version 1 pour activer/désactiver un plugin par projet et stocker les assignments par agent.
- Ajout des refs plugin skills/tools et use cases projet : list settings, enable/disable plugin, assign/unassign skill, assign/unassign tool.
- `idea_skill_read` et l’injection du catalogue de skills passent par le resolver IdeA des skills assignés, pas par `.codex-plugin`.
- Le contrat est multi-harness : projection via les mécanismes IdeA existants pour Claude Code, Codex et OpenCode.
Frontend :
- Panneau plugins projet avec état installé globalement / activé pour ce projet.
- Détail des capabilities déclarées par plugin.
- Attribution des skills et tools MCP de plugin dans la configuration agent.
SDK :
- `@idea/plugin-sdk` expose et valide `IdeAPluginSkillContribution` / `contributes.skills`.
- Docs SDK mises à jour : manifeste, séparation skills IdeA-native vs `.codex-plugin` Codex.
# Validation QA
Verdict QA : VERT.
Commandes vertes :
```bash
npm --prefix sdk/IdeaSDK run build
cargo test -p application
cargo test -p infrastructure --test project_plugin_settings -- --nocapture
cargo test -p app-tauri --test dto_plugins -- --nocapture
npm --prefix frontend test -- ProjectPluginSettings plugin.test --run
cargo test -p application --test structured_launch_d3 -- --nocapture
cargo test -p application agent::catalogue::mcp_tests --lib -- --nocapture
npm --prefix frontend run build
```
Risques résiduels connus :
- Pas d’E2E runtime AppImage avec vrais harness Claude/Codex/OpenCode ; validation par contrats/tests existants.
- Pour les tools MCP de plugin, `toolName` reste saisi librement tant que le catalogue dynamique des tools n’est pas disponible.
- Le build frontend garde l’avertissement Vite habituel sur chunk > 500 kB.

View File

@ -2,7 +2,7 @@
id: "3d907761-17f1-4f39-8725-b7d6d856807b"
number: 282
title: "Paramètres projet pour activer les plugins et attribuer leurs skills/tools aux agents"
status: "inProgress"
status: "closed"
priority: "high"
sprint: null
links: []
@ -11,7 +11,7 @@ attachments: []
createdBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
updatedBy: {"kind":"agent","agent_id":"a6c6ea12-bfc6-4bdc-8031-324102dfa34d"}
createdAt: 1788871620038
updatedAt: 1788871877354
version: 3
updatedAt: 1788875629546
version: 5
---
Besoin utilisateur : un plugin IdeA doit pouvoir apporter des skills et des tools MCP consommables par les agents, de façon comparable aux tools MCP IdeA. Ajouter un panneau Settings projet permettant de choisir quels plugins sont chargés pour le projet, puis d'attribuer les skills et tools MCP fournis par ces plugins aux agents. Clarifier le modèle de scope projet, découverte, permissions, hot reload, désinstallation et injection dans les contextes agents.

View File

@ -3852,7 +3852,7 @@
"issueRef": "#282",
"path": "282",
"title": "Paramètres projet pour activer les plugins et attribuer leurs skills/tools aux agents",
"status": "inProgress",
"status": "closed",
"priority": "high",
"sprint": null,
"assignedAgentIds": [],
@ -3860,7 +3860,7 @@
"kind": "agent",
"agent_id": "a6c6ea12-bfc6-4bdc-8031-324102dfa34d"
},
"updatedAt": 1788871877354
"updatedAt": 1788875629546
}
]
}