CLI de busca semântica de código baseada em AST e servidor MCP que indexa sua base de código para que agentes de programação encontrem código pelo significado.
ory/lumen
Servidor MCP local de busca semântica de código que permite a Claude Code, Codex, Cursor e OpenCode encontrar trechos pelo significado usando embeddings do Ollama ou LM Studio.
- Estrelas
- 317
- Forks
- 37
- Issues abertas
- 29
- Último commit
- há 27 dias
O que é?
Lumen é um mecanismo local de busca semântica de código para agentes de programação com IA. Ele funciona como um servidor MCP que cria um índice vetorial do seu projeto, permitindo que um agente use semantic_search para encontrar funções, tipos e módulos relevantes em vez de ler arquivos inteiros. Os embeddings são gerados por um servidor local do Ollama ou LM Studio e armazenados no SQLite com sqlite-vec; assim, nenhum código sai da sua máquina e não é necessário usar um serviço na nuvem ou um banco de dados externo.
Os arquivos são divididos em blocos semânticos usando a AST nativa do Go para código Go e gramáticas do tree-sitter para outras linguagens. Uma árvore de Merkle baseada nos hashes dos arquivos garante que, nas execuções seguintes, apenas os arquivos alterados tenham seus embeddings gerados novamente. Worktrees do Git do mesmo repositório podem compartilhar dados do índice. Os índices ficam em ~/.local/share/lumen, e não dentro do repositório.
O projeto inclui plugins para Claude Code, Cursor, Codex e OpenCode. O README também apresenta resultados de benchmarks em tarefas de correção de bugs em várias linguagens, indicando redução de custos e do uso de tokens sem perda de qualidade nos patches.
Recursos principais
- 01Busca semântica de funções, tipos e módulos por meio de uma ferramenta MCP
- 02Indexação incremental que gera novamente embeddings apenas dos arquivos alterados, usando comparação por árvore de Merkle
- 03Embeddings locais via Ollama ou LM Studio, sem dependência da nuvem
- 04Armazenamento no SQLite com sqlite-vec, fora do diretório do projeto
- 05Suporte a 12 famílias de linguagens usando a AST do Go e parsers do tree-sitter
- 06Worktrees do Git compartilham dados do índice e inicializam novas worktrees com dados de worktrees irmãs
Casos de uso
- Permitir que Claude Code ou Codex localize código relevante em um monorepo grande sem ler arquivos inteiros
- Manter o código-fonte privado gerando embeddings inteiramente em uma máquina local
- Reduzir o uso de tokens enquanto um agente de IA explora uma base de código desconhecida
- Agilizar o trabalho em várias worktrees do Git do mesmo projeto
Início rápido
- 1
Instale o Ollama e baixe o modelo de embeddings padrão
ollama pull ordis/jina-embeddings-v2-base-code - 2
Instale o plugin do Claude Code pelo marketplace
/plugin marketplace add ory/claude-plugins - 3
Instale o plugin do Lumen no Claude Code
/plugin install lumen@ory - 4
Inicie uma nova sessão do Claude e execute a verificação de integridade
/lumen:doctor
Antes de usar
- É necessário manter um servidor local de embeddings do Ollama ou do LM Studio em execução junto com o agente.
- A licença está listada como NOASSERTION nos metadados; verifique o arquivo LICENSE antes de usar.
Em coleções
Tópicos
Perguntas frequentes
- O que é lumen?
- Servidor MCP local de busca semântica de código que permite a Claude Code, Codex, Cursor e OpenCode encontrar trechos pelo significado usando embeddings do Ollama ou LM Studio. Lumen é um mecanismo local de busca semântica de código para agentes de programação com IA. Ele funciona como um servidor MCP que cria um índice vetorial do seu projeto, permitindo que um agente use semantic_search para encontrar funções, tipos e módulos relevantes em vez de ler arquivos inteiros. Os embeddings são gerados por um servidor local do Ollama ou LM Studio e armazenados no SQLite com sqlite-vec; assim, nenhum código sai da sua máquina e não é necessário usar um serviço na nuvem ou um banco de dados externo.
- lumen é gratuito? Qual é a licença?
- lumen é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- lumen ainda é mantido?
- Manutenção ativa. O último commit de lumen foi em 11 de out. de 2026.
- Para que posso usar lumen?
- Permitir que Claude Code ou Codex localize código relevante em um monorepo grande sem ler arquivos inteiros Manter o código-fonte privado gerando embeddings inteiramente em uma máquina local Reduzir o uso de tokens enquanto um agente de IA explora uma base de código desconhecida Agilizar o trabalho em várias worktrees do Git do mesmo projeto
- Como instalar lumen?
- Instale o Ollama e baixe o modelo de embeddings padrão: ollama pull ordis/jina-embeddings-v2-base-code Instale o plugin do Claude Code pelo marketplace: /plugin marketplace add ory/claude-plugins Instale o plugin do Lumen no Claude Code: /plugin install lumen@ory Inicie uma nova sessão do Claude e execute a verificação de integridade: /lumen:doctor
- Onde consigo lumen?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ory/lumen
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
CLI com foco em privacidade para busca semântica de código, com embeddings locais, rastreamento do grafo de chamadas e um servidor MCP para agentes de programação com IA.
Executa várias sessões do Claude Code, cada uma isolada no próprio contêiner Docker e gerenciada por um painel web.
Um mecanismo de busca semântica de código com foco local, que combina embeddings vetoriais com o ripgrep para consultar uma base de código em linguagem natural.
Servidor MCP e CLI que conectam sua biblioteca de pesquisa do Zotero ao Claude, ChatGPT, Cursor e outros assistentes de IA para buscar, ler e anotar.
Ferramenta local em Rust que dá ao Claude Code memória persistente de conversas anteriores por meio de busca semântica, disponibilizada como servidor MCP.