Skip to main content

Frequently asked questions about Nora

Answers to common questions about Nora’s license, production readiness, supported LLM providers, API key security, and Kubernetes support.
If you are evaluating Nora or have just started self-hosting it, the questions below cover the topics that come up most often. If your question is not answered here, check the troubleshooting guide or open a GitHub Discussion.
Yes. Nora is licensed under the Apache 2.0 license, which means you can self-host it, modify it, use it commercially inside your company, host it for clients, and build services or integrations on top of it — all at no cost and without a commercial agreement.The center of the product is the fully open-source repository and self-hosted control-plane workflow. There is no proprietary core or usage-gated tier hidden behind the open-source version.
Yes. Nora is designed for serious operator use. Individual builders, internal AI platform teams, and larger enterprise environments can all run it. It is built to stay credible from single-host Docker evaluation through Kubernetes, private cloud, and AWS/Azure/GCP rollout footprints. Proxmox placement is planned but not supported in the current release.If you need rollout help, deployment review, or paid support for a production environment, the GitHub Discussions path and the deployment and support options page are the right starting points.
Nora supports the following LLM providers. You can save API keys for any of them in Settings and sync them to your running agents.
  • Anthropic
  • OpenAI
  • Google AI
  • Groq
  • Mistral AI
  • DeepSeek
  • OpenRouter
  • Together AI
  • Cohere
  • xAI
  • Moonshot AI
  • Z.AI
  • Ollama
  • MiniMax
  • GitHub Copilot
  • Hugging Face
  • Cerebras
  • NVIDIA
After saving or updating a key in Settings, use the Sync button on the agent detail page to push the key to any running agents.
Yes. All API keys you save in Nora are encrypted at rest using AES-256-GCM before being stored in the database. Raw key values are never returned in any API response — only masked versions (showing the first and last four characters) are surfaced in the UI.Keys are decrypted only at the moment they need to be injected into a running agent runtime, and that operation happens server-side. The ENCRYPTION_KEY environment variable you set during setup controls this encryption. Keep it secret and back it up securely.
Never post your API keys, .env file contents, or ENCRYPTION_KEY value in GitHub Issues or Discussions.
Yes. Self-hosted Nora supports running multiple agents concurrently. The default limit is 50 agents, controlled by the MAX_AGENTS environment variable. You can raise or lower this limit by setting the variable in your .env file:
MAX_AGENTS=100
Restart the stack after changing the value.
NemoClaw is an experimental sandbox profile with OpenShell policy controls, powered by NVIDIA Nemotron models. It provides a secure, isolated execution environment for agent runtimes that require tighter operational controls.NemoClaw is disabled by default. To enable it, add nemoclaw to ENABLED_SANDBOX_PROFILES (e.g. ENABLED_SANDBOX_PROFILES=standard,nemoclaw) and provide a valid NVIDIA_API_KEY in your .env file. See the troubleshooting guide if NemoClaw fails to start after enabling it.
OpenClaw is the primary supported agent runtime in Nora today and the fastest path to a working deployment. It is an open-source project maintained separately at github.com/openclaw/openclaw.When you deploy an agent in Nora, the default runtime path uses OpenClaw. Nora’s architecture is designed to support additional runtimes over time, so OpenClaw is the best-supported option today but not the only one the platform will support.
Yes. Nora supports Kubernetes as a provisioner backend. Start Nora with the generic Kubernetes compose overlay so kubeconfig files are mounted into the containers:
NORA_KUBECONFIGS_DIR=./.secrets/kubeconfigs
docker compose -f docker-compose.yml -f docker-compose.kubernetes.yml up -d --build
Then register each cluster in Admin -> Kubernetes with a kubeconfig path like /kubeconfigs/aks-eastus2. K3s clusters usually use NodePort exposure in the Admin row; AKS, GKE, and EKS usually use LoadBalancer exposure.
There are several paths depending on what you need:When asking for help in Issues or Discussions, include your deployment mode, OS, setup method, and any relevant logs. Do not include secrets or private credentials.
Yes. Nora is in active development and welcomes contributions. Good areas to contribute include frontend operator workflows, backend provisioning and lifecycle management, testing and CI hardening, integrations and channel support, and self-hosted deployment ergonomics.To contribute:
  1. Fork the repository at github.com/solomon2773/nora
  2. Create a feature branch
  3. Commit your changes
  4. Open a pull request
For larger changes, consider opening a GitHub Discussion first to align on direction before investing significant time.