Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Visão geral

Como configurar um fluxo de trabalho de desenvolvimento produtivo no LibreChat.

Docker é o caminho de instalação preferencial para a maioria dos usuários, mas o desenvolvimento local do LibreChat deve usar npm. Executar o aplicativo diretamente na sua máquina proporciona um feedback mais rápido, depuração mais clara e acesso direto aos workspaces do monorepo sem a necessidade de reconstruir containers após cada alteração.

Use esta toolchain para desenvolvimento baseado em npm:

FerramentaVersão
Node.jsv24.16.0
npmv11.16.0
MongoDBAtlas ou Community Server

O Node 24 atende às necessidades de tempo de execução do LibreChat para interoperação CommonJS com pacotes apenas ESM, WebCrypto e a Fetch API. Se o seu terminal ainda indicar uma versão mais antiga do Node, execute nvm use 24.16.0 a partir do repositório do LibreChat antes de instalar as dependências.

Trabalhe no Espaço de Trabalho Correto

LibreChat é um monorepo. Escolha o menor workspace que detém o comportamento que você está alterando:

WorkspaceUse-o para
/packages/apiNovos serviços backend em TypeScript, controllers e lógica de servidor compartilhada
/apiIntegração com servidor Express legado; mantenha as alterações enxutas
/packages/data-schemasModelos de banco de dados, schemas e lógica compartilhada específica do banco
/packages/data-providerTipos de API compartilhados, endpoints, chaves de query e funções de data-service
/clientCódigo da aplicação React
/packages/clientUtilitários de frontend compartilhados

Comandos Diários

ComandoObjetivo
npm run smart-reinstallInstalar dependências quando necessário e compilar workspaces
npm run reinstallInstalação limpa após alterar versões do Node/npm ou quando o estado das dependências estiver suspeito
npm run backend:devIniciar o backend com monitoramento de arquivos
npm run frontend:devIniciar o servidor de desenvolvimento do frontend na porta 3090
npm run build:data-providerRecompilar o código compartilhado do data-provider após alterações de API/tipo
npm run buildCompilar todos os workspaces através do Turborepo

Recursos de Desenvolvimento

Recursos de Desenvolvimento

Como está este guia?