Skip to main content
Glama
using-repomix-as-a-library.md2.73 kB
# Utiliser Repomix comme bibliothèque En plus d'utiliser Repomix comme outil CLI, vous pouvez intégrer ses fonctionnalités directement dans vos applications Node.js. ## Installation Installez Repomix comme dépendance dans votre projet : ```bash npm install repomix ``` ## Utilisation de base La façon la plus simple d'utiliser Repomix est via la fonction `runCli`, qui fournit les mêmes fonctionnalités que l'interface en ligne de commande : ```javascript import { runCli, type CliOptions } from 'repomix'; // Traiter le répertoire courant avec des options personnalisées async function packProject() { const options = { output: 'output.xml', style: 'xml', compress: true, quiet: true } as CliOptions; const result = await runCli(['.'], process.cwd(), options); return result.packResult; } ``` Le `result.packResult` contient des informations sur les fichiers traités, notamment : - `totalFiles` : Nombre de fichiers traités - `totalCharacters` : Nombre total de caractères - `totalTokens` : Nombre total de tokens (utile pour les limites de contexte des LLM) - `fileCharCounts` : Nombre de caractères par fichier - `fileTokenCounts` : Nombre de tokens par fichier ## Traitement des dépôts distants Vous pouvez cloner et traiter un dépôt distant : ```javascript import { runCli, type CliOptions } from 'repomix'; // Cloner et traiter un dépôt GitHub async function processRemoteRepo(repoUrl) { const options = { remote: repoUrl, output: 'output.xml', compress: true } as CliOptions; return await runCli(['.'], process.cwd(), options); } ``` ## Utilisation des composants principaux Pour un contrôle plus précis, vous pouvez utiliser directement les API de bas niveau de Repomix : ```javascript import { searchFiles, collectFiles, processFiles, TokenCounter } from 'repomix'; async function analyzeFiles(directory) { // Rechercher et collecter les fichiers const { filePaths } = await searchFiles(directory, { /* configuration */ }); const rawFiles = await collectFiles(filePaths, directory); const processedFiles = await processFiles(rawFiles, { /* configuration */ }); // Compter les tokens const tokenCounter = new TokenCounter('o200k_base'); // Retourner les résultats d'analyse return processedFiles.map(file => ({ path: file.path, tokens: tokenCounter.countTokens(file.content) })); } ``` ## Exemple concret Le site web de Repomix ([repomix.com](https://repomix.com)) utilise Repomix comme bibliothèque pour traiter les dépôts distants. Vous pouvez consulter l'implémentation dans [website/server/src/remoteRepo.ts](https://github.com/yamadashy/repomix/blob/main/website/server/src/remoteRepo.ts).

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yamadashy/repomix'

If you have feedback or need assistance with the MCP directory API, please join our Discord server