Nora MCP Server
Opere frotas de agentes OpenClaw e Hermes auto-hospedados no Docker ou Kubernetes através do Nora.
Documentação
Nora
Execute as frotas OpenClaw e Hermes na sua própria infraestrutura — a partir de um único painel de controle.
OpenClaw + Hermes · Docker + Kubernetes GA · 69 conexões de provedores · Apache-2.0
📚 Documentação · Auto-hospedagem · Arquitetura · Como a Nora se Compara · Kit de Imprensa · Changelog
O que é a Nora?
A Nora é a plataforma auto-hospedada de operações de agentes de IA para executar frotas de agentes autônomos na infraestrutura que você controla — seja padronizando no OpenClaw, no Hermes, ou mantendo ambos disponíveis na mesma superfície de operação.
A maioria das equipes que executam agentes em produção acaba reconstruindo a mesma camada ao redor do runtime: fluxos de deploy, segredos, monitoramento, logs, terminal, templates e uma superfície administrativa separada. A Nora existe para que essa camada não precise ser reescrita toda vez que a conversa sobre runtime mudar. Os fluxos de trabalho do operador ficam em /app; a administração da plataforma fica em /admin.
→ Por que a Nora · Modelo de runtime · Pegada de implantação
Recursos
- Implantar e operar runtimes — provisione agentes OpenClaw e Hermes no Docker ou Kubernetes (ambos GA, com Helm chart oficial) com controles completos de ciclo de vida: deploy, iniciar/parar, reiniciar, reimplantar e histórico de versões.
- Migrar runtimes existentes — recrie agentes a partir de bundles enviados, com Live Pull Docker local privilegiado disponível para administradores da plataforma auto-hospedada.
- Acesso de operador ao vivo — logs em streaming, terminal interativo nos contêineres em execução, navegador/editor de arquivos e o gateway OpenClaw e o dashboard Hermes incorporados na UI do operador.
- Monitoramento e alertas — métricas e custo por agente, resumo de atenção da frota (com erro, travado, acima do orçamento, telemetria parada) e regras de alerta definidas pelo usuário entregues nos seus canais.
- Orçamentos e execuções agendadas — limites rígidos de orçamento de LLM por agente com pausa automática, além de agendamentos cron recorrentes para execuções de agentes com filas de retry e proteções de varredura.
- Segredos que falham fechados por padrão — chaves de provedores são criptografadas com AES-256-GCM em repouso e sincronizadas com os runtimes em execução; a produção se recusa a iniciar sem uma chave de criptografia válida, a menos que um operador habilite deliberadamente a substituição insegura em texto puro; o pinning de host key SSH protege hosts Docker remotos (BYOC).
- Isolamento de rede — isolamento de entrada NetworkPolicy do Kubernetes com regras de permissão CIDR gerenciadas pelo administrador e um sandbox endurecido NemoClaw experimental para código não confiável.
- Agent Hub — templates iniciais instaláveis e versionados para sair do zero a um agente funcional rapidamente.
- Integrações — catálogo de credenciais/conectividade com 69 entradas (controle de versão, chat, nuvem, observabilidade, bancos de dados vetoriais, automação) além de mais de 17 provedores de LLM. O comportamento executável vem de skills do runtime ou adaptadores MCP; servidores MCP suportados por agente são habilitados explicitamente.
- Proxmox LXC experimental — implante OpenClaw padrão ou uma imagem Hermes preparada em LXC não privilegiado com TLS de API verificado e SSH fixado. Não é isolamento de nível VM e ainda requer o gate de fumaça em hardware real antes do uso em produção.
- Automatize tudo — uma API REST pública (OpenAPI 3.1), o
@noraai/clie o@noraai/mcp-serverpara Claude Code, Gemini CLI, Claude Desktop e Cursor. - Workspaces e RBAC — workspaces multi-tenant com papéis hierárquicos, superfície de administração da plataforma, histórico de eventos da conta e backups gerenciados criptografados.
Capturas de tela
![]() Dashboard do operador |
![]() Monitoramento da frota e triagem de atenção |
![]() Detalhes do agente e operações de ciclo de vida |
![]() WebUI do Hermes incorporada na Nora |
![]() Fluxo de deploy de agentes | |
Início rápido
Requisitos: macOS 12+, Linux ou Windows 10+ (WSL2), com Docker Engine + Compose v2. O instalador verifica Docker, Git e OpenSSL e instala qualquer item ausente.
macOS / Linux / WSL2:
curl -fsSL https://raw.githubusercontent.com/solomon2773/nora/master/setup.sh | bash
Prefere inspecionar o instalador primeiro?
git clone https://github.com/solomon2773/nora.git
cd nora
less setup.sh
bash setup.sh
Windows (PowerShell):
iwr -useb https://raw.githubusercontent.com/solomon2773/nora/master/setup.ps1 | iex
O Windows requer PowerShell 7+. O PowerShell 5.1 padrão do Windows não é suportado — execute o comando acima em uma sessão do
pwsh7.
Kubernetes (Helm):
helm show chart oci://ghcr.io/solomon2773/nora
O comando resolve o chart publicado mais recente; fixe a versão informada para instalações de produção reproduzíveis. O chart OCI público instala o painel de controle completo da Nora. Consulte as instruções do Helm para os segredos necessários e opções de Ingress.
O instalador verifica pré-requisitos, gera ou preserva segredos, opcionalmente cria um administrador de bootstrap, escolhe portas locais livres quando os padrões estão ocupados e inicia a stack. Quando terminar, abra a URL impressa pela configuração. O modo local usa como padrão http://localhost:8080, mas a configuração pode selecionar outra porta, como 8081, em uma estação de trabalho ocupada. Em seguida, siga o passo a passo dos primeiros 15 minutos.
Ainda não tem chave de API? Em instalações com o destino Docker local habilitado, escolha Iniciar demo Docker local na página de Introdução. A Nora implanta um agente funcional contra seu provedor de demonstração determinístico integrado, para que você possa validar o chat e o fluxo de trabalho do operador sem chaves e sem custo de uso de modelo. Instalações somente Kubernetes começam adicionando um provedor de modelo e implantando em um destino de cluster habilitado.
Para configuração manual, variáveis de ambiente, modo de domínio público, TLS, Docker Remoto, Kubernetes, NemoClaw e configuração experimental do Proxmox LXC, consulte a documentação:
- Guia de auto-hospedagem
- Referência de variáveis de ambiente
- Backends de provisionamento (Docker e k3s/Kubernetes são GA; Docker Remoto, NemoClaw e Proxmox LXC são experimentais)
- Configuração de Docker Remoto BYOC — registro SSH, rede privada, validação, compartilhamento e recuperação
- TLS e domínios públicos
- Protegendo um lançamento com Cloudflare — cache de borda, limitação de taxa e absorção de picos para o deploy de host único
Documentação
A documentação completa está em docs.norafleet.ai. O código-fonte MDX está em docs/.
| Seção | O que contém |
|---|---|
| Início rápido | Instale e valide seu primeiro agente em 15 minutos |
| Conceitos | Arquitetura, agentes, runtimes, workspaces, provedores de LLM, Agent Hub |
| Configuração | Modos de plataforma, variáveis de ambiente, backends de provisionamento, TLS / domínios públicos |
| Guias | Implantar agente, provedores, integrações, canais, monitoramento, regras de alerta, backups, Agent Hub, NemoClaw |
| Referência da API | Autenticação, workspaces, agentes, canais, integrações, provedores, monitoramento, regras de alerta |
| Suporte | FAQ, solução de problemas |
Arquitetura
Nginx
├── / → frontend-marketing (Next.js)
├── /app/* → frontend-dashboard (Next.js)
├── /admin/* → admin-dashboard (Next.js)
└── /api/* → backend-api (Express.js)
├── PostgreSQL
├── Redis + BullMQ (deployments, clawhub-jobs, backups, alert-deliveries)
├── worker-provisioner
├── worker-backup
├── deploy-target adapters (Docker + k3s/k8s GA · Remote Docker + Proxmox experimental)
└── sandbox profiles (standard · NemoClaw experimental)
O texto completo sobre arquitetura — mapa do sistema, limites de fila/trabalhador, RBAC, contrato de migração, topologias de implantação — está em docs/concepts/architecture.
Stack de tecnologia
| Camada | Tecnologia |
|---|---|
| Proxy reverso | Nginx |
| Frontends | Next.js 16, React 19, Tailwind CSS |
| API de backend | Express.js 5, Node.js 24 LTS |
| Autenticação | JWT, cookies HttpOnly, bcryptjs, ponte OAuth de provedor |
| Banco de dados | PostgreSQL 15 |
| Fila | BullMQ + Redis 7 |
| Famílias de runtime | OpenClaw, Hermes |
| Destinos de implantação | Docker e k3s/Kubernetes (GA); Docker Remoto BYOC e Proxmox LXC não privilegiado (experimental) |
| Perfis de sandbox | Padrão; NemoClaw (experimental, não disponível no Proxmox) |
| Segredos em repouso | AES-256-GCM (chaves de provedores, integrações, backups) |
API REST pública, CLI e MCP
Chaves de API com escopo de workspace (somente bearer, prefixadas nora_, com hash HMAC em repouso, baseadas em escopo) acionam um subconjunto estável da superfície REST. Emita chaves em /app/workspaces/<id>/api-keys.
export NORA_TOKEN="nora_..."
curl -H "Authorization: Bearer $NORA_TOKEN" https://your-nora.example.com/api/agents
Um pequeno CLI vive em cli/ (@noraai/cli): execute nora login uma vez para salvar seu host e token de API, depois nora workspaces, nora agents e nora monitoring encapsulam a mesma superfície REST. nora doctor executa uma verificação de saúde do plano de controle somente para administradores, e nora mcp inicia o servidor MCP stdio. Consulte a referência da API para os endpoints e escopos suportados.
Opere o Nora a partir do Claude Code, Gemini CLI, Claude Desktop ou Cursor: o pacote mcp-server/ (@noraai/mcp-server) expõe a mesma API como ferramentas do Model Context Protocol — implante agentes, controle seu ciclo de vida e leia métricas da frota, eventos e custo por agente de qualquer cliente MCP. A exclusão destrutiva permanece desabilitada, a menos que seja explicitamente ativada.
claude mcp add nora \
--env NORA_API_URL=https://your-nora.example.com \
--env NORA_API_KEY=nora_... \
-- npx -y @noraai/mcp-server
Usuários do Gemini CLI podem instalar a extensão do repositório diretamente. O instalador solicita a URL da API do Nora e armazena a chave de API do workspace como uma configuração sensível da extensão:
gemini extensions install https://github.com/solomon2773/nora
Consulte o guia MCP para configuração do Gemini CLI, Claude Desktop e Cursor, a lista de ferramentas e notas de segurança.
Padrões e isolamento
- MCP — incluído. Um servidor MCP do plano de controle (
@noraai/mcp-server, publicado no MCP Registry oficial) além do gerenciamento de servidores MCP por agente — opere a frota a partir do Claude Code, Gemini CLI, Claude Desktop ou Cursor, e conecte ferramentas MCP a agentes individuais. - OpenTelemetry GenAI — disponível. Exportação OTLP + Prometheus de telemetria de runtime sob as convenções semânticas
gen_ai.*— spans de chat por troca, além de métricas de token/custo/recurso, fluem para a stack Grafana / Datadog / Langfuse que você já executa. (Sub-spans por chamada de ferramenta dependem de fluxos de eventos do runtime e permanecem no roadmap.) - A2A — no roadmap. Descoberta Agent Cards / Agent-to-Agent para agentes OpenClaw e Hermes gerenciados.
- Isolamento, por alvo de implantação. Execuções padrão em Docker usam namespaces de contêineres além de limites de CPU e RAM definidos pelo operador;
disk_gbé metadados e os operadores devem monitorar o armazenamento do Docker. Kubernetes adiciona limites de recursos de workload e solicitações de armazenamento provisionado. O perfil experimental NemoClaw endurece código não confiável com usuário não-root, todas as capacidades Linux removidas,no-new-privileges, Landlock + seccomp e egress com negação padrão. A colocação experimental em Proxmox usa LXC não privilegiado, que permanece uma fronteira de kernel compartilhada e não é apresentada como isolamento de nível VM. Consulte o modelo de isolamento.
Roadmap
- Endurecimento do NemoClaw (alta prioridade) — amadurecer o perfil experimental de sandbox seguro de ponta a ponta: habilitação, controles de política, aprovações, telemetria e validação.
- Qualificação de hardware Proxmox — executar a matriz de ciclo de vida do OpenClaw protegido e do Hermes preparado no nó, armazenamento, bridge, templates e rede exatos antes de considerar qualquer rótulo beta; até lá, o alvo permanece Experimental.
- Paridade Hermes/OpenClaw — fechar lacunas de runtime em validação, logs, acesso ao terminal, monitoramento e relatórios de falhas.
- UX do operador no primeiro uso — um caminho mais direto da instalação ao primeiro agente implantado e validado.
- Monitoramento por escopo de conta — resumos de saúde em nível de conta entre workspaces, agentes, custo e alertas, com drill-downs.
- Endurecimento de autenticação e sincronização de chaves — rotação de chaves, trilhas de auditoria e recuperação de falhas parciais de sincronização.
- Ergonomia do Agent Hub — melhor descoberta de templates, fluxos de instalação/configuração e validação pós-instalação.
- Suporte a A2A — descoberta Agent Cards / agent-to-agent para runtimes gerenciados.
Desenvolvimento
# Docker (recommended)
docker compose up -d
docker compose logs -f backend-api
# Tests
cd backend-api && npx jest --no-watchman
cd e2e && npm test
Comece com CONTRIBUTING.md para orientação a contribuidores. CLAUDE.md documenta a estrutura do repositório, comandos de desenvolvimento e propriedade de subtrees para humanos e agentes de codificação de IA.
Contribuindo
Novo por aqui? Explore boas primeiras issues para pontos de partida pequenos e autocontidos, depois folheie CONTRIBUTING.md.
Áreas fortes de contribuição: trabalho em adaptadores de runtime · UX de operador e administrador · orquestração de provisionamento e ciclo de vida · integrações e canais · endurecimento de testes e CI · ergonomia de implantação self-hosted.
Fluxo típico: fork → branch (feature/...) → commit → pull request.
Comunidade
Se o Nora for útil para você, uma ⭐ no repositório ajuda outros usuários de self-host a encontrá-lo.
Licença
Este projeto é open source sob a Apache License 2.0.




