Layered Code
Uma ferramenta de desenvolvimento web assistida por IA para criar, modificar e implantar código por meio de conversas em linguagem natural.
Documentação
⚠️ Trabalho em Andamento ⚠️
Este projeto está atualmente em desenvolvimento ativo. Recursos, APIs e documentação podem mudar com frequência. Embora recebamos feedback e contribuições (veja Contribuindo), observe que este software ainda não está pronto para uso em produção. Este aviso será removido quando alcançarmos a versão 1.0.

🔍 O que é Layered Code?
Layered Code transforma o desenvolvimento web em um fluxo de trabalho contínuo de conversa para implantação. Você conversa com seu assistente de IA preferido por meio de ferramentas compatíveis com MCP, como o Claude Desktop, descrevendo o que deseja criar em linguagem natural. A IA cria e modifica seu código em tempo real, enquanto frameworks de desenvolvimento modernos como Vite e Next.js fornecem substituição instantânea de módulos para mostrar as alterações automaticamente. Quando estiver satisfeito com os resultados, basta pedir à IA para confirmar suas alterações em um repositório git e implantar diretamente nos servidores de produção — tudo sem memorizar comandos complexos ou navegar por ferramentas de desenvolvimento intrincadas.
Assista a uma visão geral rápida do Layered Code em ação
Método principal de interação:
- 🗣️ Conversas em linguagem natural com assistentes de IA como o Claude Desktop
- 🔌 Integração MCP fornece à IA acesso direto aos arquivos do seu projeto na sua máquina local
- 🎯 Desenvolvimento orientado por intenção - descreva seus objetivos, e a IA cuida da implementação técnica
- 🚀 Integração Git para implantações automáticas - confirme alterações e implante em produção por meio de comandos conversacionais
Exemplo de conversa:
Usuário: "Quero criar uma página web básica com tema escuro para descrever meu novo projeto de IA chamado 'SmartFlow'. Deve ter uma seção hero limpa com o nome do projeto, uma breve descrição e alguns recursos principais listados abaixo."
A IA, equipada com as ferramentas MCP do Layered Code, pode:
- Criar a estrutura HTML com marcação semântica
- Gerar CSS para um tema escuro moderno com contraste adequado
- Organizar arquivos e ativos do projeto automaticamente
- Configurar design responsivo para celular e desktop
Usuário: "Isso está ótimo! Pode adicionar uma seção de contato na parte inferior e fazer os cartões de recursos terem um efeito hover sutil?"
A IA perfeitamente:
- Atualiza o HTML para incluir uma seção de contato
- Melhora o CSS com animações de hover suaves
- Seu servidor de desenvolvimento atualiza automaticamente para mostrar as alterações
Usuário: "Perfeito! Agora confirme essas alterações e implante em produção."
A IA cuida do controle de versão e implantação:
- Confirma alterações com uma mensagem descritiva
- Aciona seu pipeline de implantação configurado
- Confirma a implantação bem-sucedida no seu servidor de produção
Embora uma interface CLI esteja disponível para acesso direto às ferramentas, a experiência conversacional de IA por meio do MCP é onde o Layered Code realmente se destaca - permitindo que você se concentre no que deseja criar, em vez de como criá-lo.
🎯 Motivação
Layered Code fornece uma abordagem aberta para desenvolvimento assistido por IA: seus prompts, seus provedores, sua escolha.
- 🔓 Para Sempre Gratuito e Open Source: O Layered Code permanecerá sempre gratuito e open source
- 💻 Suporte Multiplataforma: Funciona em macOS, Windows e Linux
- 🔍 Sem Mágica Oculta: Sem prompts secretos escondidos dos usuários fazendo coisas misteriosas que eles não entendem
- 🛠️ Agnóstico em Tecnologia: Funciona com qualquer linguagem, framework ou ambiente de desenvolvimento
- 🚀 Zero Dependência de Fornecedor: Use qualquer provedor de hospedagem, ambiente de desenvolvimento ou conjunto de ferramentas
📦 Instalação
Opção 1: macOS/Linux via Homebrew (Recomendado)
brew update
brew tap layered-flow/layered-code
brew install layered-code
Opção 2: Script de Instalação (macOS/Linux)
Para instalação em todo o sistema (recomendado):
curl -fsSL https://raw.githubusercontent.com/layered-flow/layered-code/main/scripts/install.sh | sudo bash
Isso instala os binários em /usr/local/bin para fácil acesso de qualquer lugar.
Se preferir instalar no diretório atual, omita o sudo:
curl -fsSL https://raw.githubusercontent.com/layered-flow/layered-code/main/scripts/install.sh | bash
Nota: Este script baixa um binário autossuficiente com ripgrep incluído.
Opção 3: Binários Pré-compilados
Baixe o arquivo apropriado para sua plataforma na página de releases do GitHub. Cada arquivo contém tanto o binário layered-code quanto um binário rg (ripgrep) incluído:
- macOS (Intel):
layered-code_Darwin_x86_64.tar.gz - macOS (Apple Silicon):
layered-code_Darwin_arm64.tar.gz - Linux (x86_64):
layered-code_Linux_x86_64.tar.gz - Linux (ARM64):
layered-code_Linux_arm64.tar.gz - Windows (x86_64):
layered-code_Windows_x86_64.zip - Windows (ARM64):
layered-code_Windows_arm64.zip(usa binário ripgrep x64 via emulação)
Etapas de configuração:
macOS/Linux:
- Extraia o arquivo:
tar -xzf layered-code_*.tar.gz - Torne ambos os binários executáveis:
chmod +x layered-code rg - Mova ambos os binários para o mesmo diretório:
- Para instalação do usuário:
mkdir -p ~/bin && mv layered-code rg ~/bin/ - Para instalação em todo o sistema:
sudo mv layered-code rg /usr/local/bin/
- Para instalação do usuário:
- Certifique-se de que o local esteja no seu PATH para fácil acesso
Windows:
- Extraia o arquivo zip (contém
layered-code.exeerg.exe) - Mova ambos os executáveis para o mesmo local conveniente (ex.:
C:\Users\YourUsername\bin\) - Adicione o diretório à sua variável de ambiente PATH:
- Abra "Variáveis de Ambiente" nas Propriedades do Sistema
- Adicione o diretório que contém ambos os executáveis ao seu PATH
Importante: Mantenha ambos os binários
layered-codeerg(ripgrep) no mesmo diretório para funcionamento adequado.
✨ Início Rápido com Claude Desktop
Embora haja planos para suportar modelos open source por meio do Ollama, o Claude Desktop atualmente fornece o melhor suporte para o Model Context Protocol do qual o Layered Code depende.
-
Instale o Claude Desktop
-
Ative o Modo Desenvolvedor:
- Abra o Claude Desktop
- Vá para Configurações
- Navegue até a aba "Desenvolvedor"
- Ative o "Modo Desenvolvedor" se ainda não estiver ativado
-
Instale o layered-code: Siga as instruções de Instalação acima e anote o caminho para o seu binário
-
Configure o Servidor MCP:
- Abra as configurações do Claude Desktop → Desenvolvedor → Editar Config
- Adicione a
claude_desktop_config.json:
Configurar o Servidor MCP no Claude Desktop
Adicione o seguinte à sua claude_desktop_config.json (em Configurações → Desenvolvedor → Editar Config), ajustando o caminho command conforme apropriado para sua instalação e plataforma:
| Plataforma/Método de Instalação | Exemplo de valor "command" |
|---|---|
| macOS/Linux (Homebrew) | layered-code |
| macOS/Linux (Manual/Binário) | /usr/local/bin/layered-code |
| Windows | C:\\Users\\YourUsername\\bin\\layered-code.exe |
Nota para Windows: Use o caminho completo com barras invertidas duplas (
\\) no valor"command".
Exemplo de configuração:
{
"globalShortcut": "",
"mcpServers": {
"layered-code": {
"command": "<see table above>",
"args": ["mcp_server"]
}
}
}
- Reinicie o Claude Desktop completamente (o Windows pode exigir que você "encerre a tarefa" em quaisquer tarefas em segundo plano do Claude)
- Verifique: Procure por "layered-code" no menu de ferramentas do Claude
🔧 Opcional: Diretório Personalizado de Aplicativos
Por padrão, o Layered Code usa ~/LayeredApps como diretório para seus aplicativos. Para usar um diretório personalizado:
Para MCP (Claude Desktop): Adicione uma seção env à sua configuração:
{
"globalShortcut": "",
"mcpServers": {
"layered-code": {
"command": "layered-code",
"args": ["mcp_server"],
"env": {
"LAYERED_APPS_DIRECTORY": "~/MyCustomAppsFolder"
}
}
}
}
Para uso via CLI: Defina a variável de ambiente LAYERED_APPS_DIRECTORY no seu shell:
export LAYERED_APPS_DIRECTORY="~/MyCustomAppsFolder"
layered-code tool lc_apps_list
🔒 Segurança
O Layered Code mantém segurança ao configurar diretórios personalizados de aplicativos:
- Por segurança, os caminhos são validados para garantir que estejam dentro do diretório inicial do usuário
- Caminhos relativos são permitidos e resolvidos em relação ao diretório inicial do usuário
🖥️ Uso via CLI
Use o layered-code diretamente da linha de comando:
# Start MCP server
layered-code mcp_server
# List apps
layered-code tool lc_apps_list
# Get version information
layered-code version
layered-code -v
layered-code --version
# Get help and usage information
layered-code help
layered-code -h
layered-code --help
Comandos Disponíveis:
-
mcp_server- Inicia o servidor Model Context Protocol para integração com Claude Desktop -
tool- Executa várias ferramentas e utilitários (use com subcomandos como abaixo)Ferramentas de Gerenciamento de Arquivos:
tool lc_apps_list- Lista todos os aplicativos disponíveis no diretório ~/LayeredAppstool lc_file_list- Lista arquivos e diretórios dentro de um aplicativo com metadados opcionais (profundidade máxima: 10.000 níveis)tool lc_text_search- Pesquisa padrões de texto em arquivos dentro do diretório de um aplicativo usando ripgreptool lc_file_read- Lê o conteúdo de um arquivo dentro do diretório de um aplicativotool lc_file_write- Escreve ou cria um arquivo dentro do diretório de um aplicativotool lc_file_edit- Edita um arquivo realizando operações de localizar e substituirtool lc_file_move- Move ou renomeia um arquivo dentro do diretório de um aplicativotool lc_file_delete- Exclui um arquivo dentro do diretório de um aplicativotool lc_file_copy- Copia um arquivo dentro do diretório de um aplicativotool lc_folder_delete- Exclui uma pasta e todo o seu conteúdo dentro do diretório de um aplicativo (operação destrutiva)tool lc_chrome_visit- Visita uma URL usando o navegador Chrome e recupera o conteúdo da página após o carregamento do JavaScript
Ferramentas Vite:
tool vite_app_create- Cria um novo aplicativo Vite com vários modelos (React, Vue, Svelte, etc.)
Ferramentas Next.js:
tool nextjs_app_create- Cria um novo aplicativo Next.js com TypeScript (padrão), JavaScript, Tailwind ou modelos App Router- Flags CLI:
--src-dir(usar diretório src, padrão: true),--import-alias(padrão: @/*),--turbopack(padrão: true) - Exemplo:
tool nextjs_app_create myapp typescript --src-dir --import-alias="~/"
- Flags CLI:
Ferramentas de Gerenciador de Pacotes:
tool pnpm_install- Instala dependências usando pnpm (preferido) ou npmtool pnpm_add- Adiciona um ou mais pacotes usando pnpm (preferido) ou npm- Pacote único:
pnpm_add myapp express - Múltiplos pacotes:
pnpm_add myapp express cors @types/node
- Pacote único:
tool pnpm_pm2- Gerencia processos Node.js com PM2- Comandos:
start <app>,stop <app|all>,restart <app|all>,delete <app|all>,list,logs [app] [flags] - Detecta automaticamente scripts dev/start do package.json
- Usa ecosystem.config.js se presente
- Instala automaticamente o PM2 se não estiver disponível
- O comando
logsinclui--nostreampor padrão (mostra as últimas 15 linhas e sai) - Flags adicionais podem ser passadas, ex.:
logs myapp --lines 100para mostrar mais linhas
- Comandos:
Ferramentas JavaScript/TypeScript:
tool lc_js_lint- Executa análise ESLint em arquivos JavaScript/TypeScript com correção automática opcional- Executa ESLint no diretório do aplicativo especificado e retorna resultados em formato JSON
- Uso:
lc_js_lint <app_name> [--fix] [--config=<config_file>] <files...> - Opções:
--fix: Corrige automaticamente problemas que podem ser corrigidos--config=<file>: Usa arquivo de configuração ESLint específico--help,-h: Mostra mensagem de ajuda
- Notas importantes:
- Os arquivos devem ser caminhos relativos (sem caminhos absolutos ou
..permitidos) - O arquivo de configuração deve ser relativo ao diretório do aplicativo
- Apenas as opções
--confige--fixsão permitidas por segurança
- Os arquivos devem ser caminhos relativos (sem caminhos absolutos ou
- Exemplos:
- Arquivo único:
lc_js_lint myapp src/index.js - Lint e corrigir:
lc_js_lint myapp --fix src/index.js src/app.js - Com padrões glob:
lc_js_lint myapp "src/**/*.js" "tests/**/*.js" - Corrigir com configuração:
lc_js_lint myapp --fix --config=.eslintrc.json src/index.js
- Arquivo único:
Ferramentas de Prompts:
tool lc_prompt_list- Lista todos os prompts disponíveis com IDs numéricos, nomes, versões e descrições- Mostra apenas a versão mais alta de cada prompt
- Use
--helppara mais informações
tool lc_prompt_read- Lê o conteúdo completo de um prompt por ID numérico, com versão opcional- Importante: LLMs usando MCP devem ler automaticamente o prompt ID '1' (Princípios Gerais) no início de cada conversa
- Exemplo (versão mais recente):
lc_prompt_read 1 - Exemplo com versão:
lc_prompt_read 1:2 - Use
--helppara sintaxe detalhada e exemplos
Ferramentas Git:
-
tool git_status- Mostra o status da árvore de trabalho de um repositório git -
tool git_diff- Mostra alterações entre commits, commit e árvore de trabalho, etc -
tool git_commit- Cria um novo commit com alterações em staged -
tool git_log- Mostra os logs de commits -
tool git_branch- Lista, cria ou exclui branches -
tool git_add- Adiciona o conteúdo de arquivos à área de staging -
tool git_restore- Restaura arquivos da árvore de trabalho -
tool git_stash- Faz stash de alterações em um diretório de trabalho sujo -
tool git_push- Atualiza referências remotas junto com objetos associados -
tool git_pull- Busca e integra com outro repositório ou branch local -
tool git_init- Inicializa um novo repositório git -
version,-v,--version- Exibe a versão atual do layered-code -
help,-h,--help- Mostra informações de uso e comandos disponíveis
🏗️ Compilando a partir do Código Fonte
Para compilar o Layered Code a partir do código fonte:
# Clone the repository
git clone https://github.com/layered-flow/layered-code.git
cd layered-code
# Build with make (downloads ripgrep binaries automatically)
make build
# Or build for all platforms
make build-all
# Run tests
make test
# Verify installation
layered-code
🧪 Executando Testes
Execute a suíte de testes para garantir que tudo está funcionando corretamente:
# Run all tests
go test ./...
# Run tests with verbose output
go test -v ./...
🤝 Contribuindo
Estamos animados com o potencial de contribuições da comunidade! Enquanto o Layered Code está amadurecendo rumo à versão 1.0, estamos focados em estabilizar a funcionalidade principal e as APIs. Durante esta fase, recebemos suas ideias e feedback através de GitHub Issues, mas não aceitaremos pull requests para garantir que possamos avançar rapidamente e fazer as mudanças de quebra necessárias.
Quando alcançarmos a versão 1.0 e a base estiver sólida, ficaremos muito felizes em abrir também para pull requests da comunidade. Acreditamos que essa abordagem focada criará uma experiência melhor para todos a longo prazo.
Sinta-se à vontade para:
- Abrir issues para compartilhar ideias e sugestões
- Reportar bugs que você encontrar
- Fazer perguntas sobre o projeto
- Fornecer feedback sobre recursos e documentação
Obrigado pela sua compreensão e interesse no projeto! 🙏
📝 Licença
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE.md para obter detalhes.
Componentes de Terceiros
Este software inclui componentes de terceiros. Consulte THIRD-PARTY-LICENSES.md para os termos de licença deles.
Copyright (c) 2025 Layered Flow
https://www.layeredflow.ai/