# Synchronisation RAG initiale et `.4nkaiignore` **Author:** 4NK ## Objectif À la **création du clone** (ou chargement sync), disposer d’un **workspace AnythingLLM** aligné sur le dépôt et importer une **première vague de fichiers** utiles au RAG, en excluant le bruit via un fichier **`.4nkaiignore`** (syntaxe **identique à `.gitignore`**). ## Comportement 1. **Serveur `repos-devtools-server`** : après `git clone` réussi, copie **`templates/4nkaiignore.default`** vers **`/.4nkaiignore`** si absent. 2. **Service `anythingllm-devtools`** : après `/repos-clone-sync`, `/repos-load-sync`, ou sur **`/workspace-sync `**, si la synchro initiale n’est pas désactivée (`ANYTHINGLLM_INITIAL_SYNC_AFTER_CLONE` côté service) : - assure **`.4nkaiignore`** depuis le template si toujours absent ; - parcourt le dépôt, applique règles de base + `.4nkaiignore` ; - envoie chaque fichier accepté via **`POST /api/v1/document/upload`** avec **`addToWorkspaces`** = slug du workspace. ## Fichier type - **`services/anythingllm-devtools/templates/4nkaiignore.default`** (référence) - **`services/repos-devtools-server/templates/4nkaiignore.default`** (même contenu ; à maintenir en parité) L’utilisateur renomme / copie en **`.4nkaiignore`** à la racine du projet et adapte les règles. ## Prérequis AnythingLLM Le **collecteur / processeur de documents** doit être joignable par l’instance AnythingLLM ; sinon l’upload API échoue avec le message renvoyé par le serveur. ## Modalités d’analyse - Compter les champs **`uploaded`**, **`skipped`**, **`errors`**, **`capped`**, **`dotfileCreated`** dans la section **Initial RAG sync** du panneau Dev tools. - Vérifier les logs AnythingLLM / collector en cas d’échec systématique des uploads. ## Modalités de déploiement - Rebuild et redémarrage de **repos-devtools-server** et de **anythingllm-devtools**.