Skip to main content
Glama
using-repomix-as-a-library.md2.66 kB
# Usar Repomix como Biblioteca Además de usar Repomix como herramienta CLI, puedes integrar su funcionalidad directamente en tus aplicaciones Node.js. ## Instalación Instala Repomix como dependencia en tu proyecto: ```bash npm install repomix ``` ## Uso Básico La forma más sencilla de usar Repomix es a través de la función `runCli`, que proporciona la misma funcionalidad que la interfaz de línea de comandos: ```javascript import { runCli, type CliOptions } from 'repomix'; // Procesar el directorio actual con opciones personalizadas 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; } ``` El `result.packResult` contiene información sobre los archivos procesados, incluyendo: - `totalFiles`: Número de archivos procesados - `totalCharacters`: Recuento total de caracteres - `totalTokens`: Recuento total de tokens (útil para límites de contexto de LLM) - `fileCharCounts`: Recuento de caracteres por archivo - `fileTokenCounts`: Recuento de tokens por archivo ## Procesamiento de Repositorios Remotos Puedes clonar y procesar un repositorio remoto: ```javascript import { runCli, type CliOptions } from 'repomix'; // Clonar y procesar un repositorio de GitHub async function processRemoteRepo(repoUrl) { const options = { remote: repoUrl, output: 'output.xml', compress: true } as CliOptions; return await runCli(['.'], process.cwd(), options); } ``` ## Uso de Componentes Principales Para un mayor control, puedes usar las APIs de bajo nivel de Repomix directamente: ```javascript import { searchFiles, collectFiles, processFiles, TokenCounter } from 'repomix'; async function analyzeFiles(directory) { // Encontrar y recopilar archivos const { filePaths } = await searchFiles(directory, { /* configuración */ }); const rawFiles = await collectFiles(filePaths, directory); const processedFiles = await processFiles(rawFiles, { /* configuración */ }); // Contar tokens const tokenCounter = new TokenCounter('o200k_base'); // Devolver resultados del análisis return processedFiles.map(file => ({ path: file.path, tokens: tokenCounter.countTokens(file.content) })); } ``` ## Ejemplo del Mundo Real El sitio web de Repomix ([repomix.com](https://repomix.com)) utiliza Repomix como biblioteca para procesar repositorios remotos. Puedes ver la implementación en [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