Nora
Nora is a self-hosted AI agent operations platform for deploying and managing fleets of OpenClaw and Hermes agents on your own infrastructure. It provides a unified control plane for deployment, monitoring, secrets, and administration, eliminating the need to rebuild operational tooling for each runtime. It is designed for teams running autonomous agents in production who want to retain control over their infrastructure.
✨ Key features
- Deploy and operate OpenClaw and Hermes agents on Docker or Kubernetes with full lifecycle controls.
- Live operator access with streaming logs, interactive terminal, file browser, and embedded dashboards.
- Monitoring and alerting with per-agent metrics, cost tracking, and needs-attention roll-up.
- Per-agent LLM budget hard caps with auto-pause and recurring cron schedules.
- Secrets encrypted with AES-256-GCM at rest, fail closed by default.
- Public REST API, CLI, and MCP server for automation and integration.
🎯 Use cases
- Self-host a production fleet of OpenClaw agents with centralized monitoring and lifecycle management.
- Run both OpenClaw and Hermes agents side-by-side under a single operator interface.
- Automate agent deployment and operations via REST API, CLI, or MCP tools in Claude Code or Gemini CLI.
- Enforce budget caps and scheduled runs for cost control on LLM agent workloads.
- Provide multi-tenant agent access to different teams with role-based access control.
📦 Installation
🧰 Requirements: macOS 12+, Linux, or Windows 10+ (WSL2) with Docker Engine + Compose v2; or Kubernetes for Helm install. No API key required for local demo.
macOS / Linux / WSL2
curl -fsSL https://raw.githubusercontent.com/solomon2773/nora/master/setup.sh | bash
Or inspect first:
git clone https://github.com/solomon2773/nora.git
cd nora
less setup.sh
bash setup.sh
Windows (PowerShell 7+)
iwr -useb https://raw.githubusercontent.com/solomon2773/nora/master/setup.ps1 | iex
Kubernetes (Helm)
helm show chart oci://ghcr.io/solomon2773/nora
🚀 Usage
After installation, open the printed URL (default http://localhost:8080). On the Getting Started page, choose 'Launch local Docker demo' to deploy a working agent with zero API keys. For API access, set your token and query:
export NORA_TOKEN="nora_..."
curl -H "Authorization: Bearer $NORA_TOKEN" https://your-nora.example.com/api/agents
⚠️ Good to know
Some features are experimental (Remote Docker, NemoClaw sandbox, Proxmox LXC) and not production-ready; Kubernetes NetworkPolicy isolation is baseline, and disk_gb is metadata only on Docker.
❓ FAQ
What are the system requirements for installing Nora?
You need macOS 12+, Linux, or Windows 10+ with WSL2, and Docker Engine with Compose v2. The installer checks for Docker, Git, and OpenSSL and installs missing components.
Can I try Nora without an API key?
Yes, on installations with the local Docker target enabled, you can choose 'Launch local Docker demo' on the Getting Started page to deploy a working agent using a built-in deterministic demo provider with zero keys and zero cost.
How do I operate Nora from Claude Code or Gemini CLI?
Use the MCP server package @noraai/mcp-server. For Claude Code, run 'claude mcp add nora --env NORA_API_URL=... --env NORA_API_KEY=... -- npx -y @noraai/mcp-server'. For Gemini CLI, install the repository extension directly.
What deployment targets are supported?
Docker and Kubernetes (k3s/k8s) are GA. Remote Docker BYOC and Proxmox unprivileged LXC are experimental. NemoClaw sandbox is experimental and not available on Proxmox.
📊 Repository
🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.