Files
2026-03-21 09:38:03 +01:00

131 lines
4.3 KiB
Markdown

# Kill LIFE Mesh for VS Code
Extension VS Code orientee orchestration pour relier plusieurs projets locaux et coordonner les agents a travers plusieurs repos, contrats et handoffs.
## Positionnement
`Kill LIFE Mesh` est la version orchestration du trio :
- `Studio` pour le produit et la spec.
- `Mesh` pour le maillage entre repos, la synchronisation et le sequencing.
- `Operator` pour l'execution terrain et les runbooks.
## Ce que fait cette extension
- Scanne chaque projet ouvert dans le workspace, plus les racines ajoutees manuellement.
- Detecte par defaut `agents/*.md` et `.github/agents/*.md`.
- Affiche les agents trouves dans une sidebar dediee.
- Permet d'ouvrir un prompt agent, de le copier, ou de l'inserer dans l'editeur courant.
- Expose un participant de chat `@killmesh` avec des commandes `/agents`, `/pm`, `/architect`, `/firmware`, `/hw`, `/qa`, `/doc`.
Par defaut, `@killmesh` repond avec un biais orchestration : dependances entre repos, surfaces d'integration, ordre d'execution, contrats et synchronisation.
## Demarrage rapide
```bash
npm install
npm run compile
npm run package:vsix
```
Ensuite dans VS Code :
1. Ouvre ce repo.
2. Lance `F5` pour ouvrir une fenetre d'extension development host.
3. Dans la nouvelle fenetre, ouvre ton vrai workspace projet.
4. Si besoin, ajoute d'autres depots via la commande `Kill LIFE Mesh: Add Linked Project Root`.
## Utilisation
### Sidebar
La vue `Kill LIFE Mesh` liste les projets detectes puis les agents trouves.
- Clic sur un agent : ouvre son fichier Markdown.
- Menu contextuel : copie ou insere le prompt.
### Chat
Dans le chat Copilot / agent de VS Code :
- `@killmesh /agents` : liste les projets et agents lies.
- `@killmesh /architect` : aide a aligner architecture et interfaces.
- `@killmesh /firmware` : aide a relier runtime et integration.
- `@killmesh /hw` : aide a relier contraintes hardware et flux projet.
- `@killmesh /qa` : aide a cadrer validations et handoffs.
- `@killmesh` sans commande : agit comme coordinateur multi-repo.
## Installation
### Depuis un VSIX local
Le chemin recommande sur cette machine est l'installation via l'interface VS Code :
1. Genere le package avec `npm run package:vsix`.
2. Dans VS Code, ouvre `Extensions: Install from VSIX...`.
3. Selectionne `kill-life-mesh-<version>.vsix`.
### Depuis le Marketplace
Les releases sont preparees pour le publisher `electron-rare`. Un tag `vX.Y.Z` publie automatiquement la meme archive `.vsix` sur GitHub Releases et sur le VS Code Marketplace des que le secret `VSCE_PAT` est disponible.
## Release automation
Le workflow [`.github/workflows/extension-ci.yml`](.github/workflows/extension-ci.yml) execute :
- Pull requests et pushes sur `main` : `npm ci`, `npm run check`, `npm run compile`, `npm run package:vsix`.
- Tags `v*` : verification `tag == v${package.json.version}`, creation de GitHub Release, puis publication Marketplace.
Sequence de release :
1. Mets a jour `package.json`.
2. Commit et merge sur `main`.
3. Cree un tag `vX.Y.Z` qui correspond exactement au champ `version`.
4. Pousse le tag.
## Marketplace setup
Avant la premiere publication Marketplace :
1. Cree le publisher `electron-rare` dans Visual Studio Marketplace / Azure DevOps.
2. Genere un Personal Access Token avec les permissions de publication Marketplace.
3. Ajoute ce token comme secret GitHub `VSCE_PAT` dans ce repo.
Commande utile :
```bash
gh secret set VSCE_PAT --repo electron-rare/kill-life-mesh
```
## Local multi-root smoke test
Le workspace de reference est partage dans `../kill-life-studio/kill-life-local-smoke.code-workspace`.
Checklist de smoke test :
1. Installe les trois `.vsix` dans le meme profil VS Code.
2. Ouvre `../kill-life-studio/kill-life-local-smoke.code-workspace`.
3. Verifie les trois entrees d'activity bar.
4. Lance `Refresh Agents` dans chaque extension.
5. Confirme que les agents de `Kill_LIFE` et `Kill_LIFE/ai-agentic-embedded-base` sont visibles.
6. Ouvre le chat et verifie `@killmesh /agents`, puis `@killmesh /architect` ou `@killmesh /qa`.
## Reglages
### `killLifeMesh.linkedProjectRoots`
Liste de chemins absolus supplementaires a scanner, en plus des dossiers deja ouverts dans le workspace.
### `killLifeMesh.agentSearchPatterns`
Globs utilises pour decouvrir les prompts d'agents dans chaque racine projet.
Valeurs par defaut :
```json
[
"agents/*.md",
".github/agents/*.md"
]
```