**Motivations:** - Single canonical documentation tree under docs/; reduce drift between README copies. **Evolutions:** - Add docs/repo/ with operational guides (cron, systemd, projects, logs, docv, ia_dev, services, scripts, extension). - Replace scattered README.md files with pointers to docs/repo/*.md. - Refresh docs/README.md index and cross-links across docs/, .cursor rules/agents. - Bump ia_dev submodule to matching doc pointer commits.
2.0 KiB
2.0 KiB
Portage AnythingLLM Workspaces → Lapce (core_ide/)
L’extension extensions/anythingllm-workspaces/ cible VS Code / Cursor (vscode API). Lapce utilise un modèle de plugins distinct (Volt / WASI, RPC). Ce document découpe le travail en phases pour une interface cohérente avec platform-target.md.
Phase 1 — Connectivité sans webview
- Préférences Lapce (équivalent
anythingllm.baseUrl,apiKey,reposApiBaseUrl,reposApiToken) — stockage secrets hors dépôt. - Commandes palette :
- Lister les workspaces AnythingLLM → ouvrir URL dans le navigateur système.
- Ouvrir l’UI web AnythingLLM.
- Client HTTP vers
repos-devtools-serveret API AnythingLLM (réutiliser la logique des fichiers TypeScript comme spécification ; implémenter en Rust dans Lapce ou via petit binaire Node invoqué — choix d’équipe). - Pas de panneau Dev tools ; pas de sync RAG initiale depuis l’IDE.
Phase 2 — Parité « Dev tools » et sync RAG
- Panneau ou vue dédiée : saisie des lignes de commande (
/repos-clone-sync,/workspace-sync, …) comme décrit dans repo/extension-anythingllm-workspaces.md. - Réimplémenter initialRagSync +
.4nkaiignore(crateignoreou équivalent Rust). - Ouvrir le dossier dépôt dans Lapce après clone (API workspace Lapce).
Phase 3 — Orchestrateur
- Raccorder les commandes Lapce à orchestrator-api.md plutôt qu’aux services en dur, pour centraliser tokens et politiques par
env.
Dépendances
- core-ide.md — build Lapce.
- orchestrator-api.md — routage cible.
- anythingllm-workspaces.md — principe workspace par projet.
Risque principal
Écart de capacités entre webview VS Code et UI Lapce : prévoir une vue minimale (terminal + buffer sortie) si webview complète retardée.