NewsOpen SourceSecurityDeveloper Tools

Nono: Sandbox Your AI Coding Agent Without a VM

Nono AI agent sandbox terminal showing kernel-level sandboxing command on blue background
Nono by nolabs — open-source kernel-level sandboxing for AI coding agents

Every AI coding agent running on your machine — Claude Code, GitHub Copilot, Codex, Cursor — inherits your full user-level permissions. That means your SSH keys, AWS credentials, .env files, and shell history are exposed every time an agent touches your terminal. On July 27, nolabs shipped Nono: an open-source runtime that sandboxes agents at the OS kernel level, with no container overhead, no VM, and effectively zero added latency.

This Is Already Happening

OpenClaw, an AI agent that hit 180,000 GitHub stars almost overnight, became 2026’s first major agent security crisis. Security researchers found 245,000 publicly accessible OpenClaw instances — connected to users’ email accounts, file systems, and cloud credentials, with no authentication required. The registry had 341 confirmed malicious skills out of 2,857 total. Three CVEs followed, including CVE-2026-44115 (CVSS 8.8): credentials leaking through unquoted heredocs, bypassing every framework-level filter in place.

Luke Hinds, co-founder of nolabs and creator of Sigstore, watched that unfold and built Nono as the response. Framework-level guardrails — allow-lists in markdown files, command blocklists, skill validation — live in userspace, alongside the thing they’re trying to constrain. The kernel cannot be tricked by a prompt.

How Nono Works

Nono uses OS-native security primitives: Landlock on Linux (kernel 5.13+) and Seatbelt on macOS — the same sandboxing mechanism Apple uses for App Store applications. Once a sandbox is applied, it is irrevocable. The policy cannot be loosened at runtime, no matter what an agent requests or what an attacker injects. Each agent starts with nothing: no filesystem access, no network, no credentials. You explicitly grant only what’s needed.

There is no container daemon, no image to pull, no VM to boot. The sandbox activates at process start and adds no measurable runtime overhead.

Getting Started

Install takes one command:

# macOS
brew install nono

# Linux
curl -fsSL https://nono.sh/install.sh | sh

Nono ships with prebuilt profiles for every major coding agent. To run Claude Code sandboxed:

nono run --profile claude-code -- claude

The prebuilt Claude Code profile covers filesystem read/write access scoped to your project directory, network access to Anthropic’s API, and standard toolchain runtimes (Node, Python, Rust). If you need custom boundaries:

{
  "extends": "base",
  "filesystem": {
    "read": ["./", "~/.cache/agent"],
    "write": ["./", "/tmp/agent-scratch"]
  },
  "network": { "allow": ["api.anthropic.com", "github.com"] },
  "credentials": { "GITHUB_TOKEN": "keyring://github/token" }
}

Your Secrets Never Touch the Agent

The credential proxy is Nono’s most important feature, and the easiest to overlook. Rather than injecting GITHUB_TOKEN into the agent’s environment, Nono routes requests through a trusted proxy that fetches the actual token from your keychain, password manager, or Kubernetes Secrets only at the moment it’s needed. The raw value is never exposed to the agent process. After use, memory is zeroed automatically.

This matters because credential exfiltration doesn’t require an agent to “go rogue” in a dramatic sense. A single prompt injection — injecting a malicious instruction into a file the agent reads — is enough to exfiltrate secrets if they’re sitting in the environment. With Nono, there’s nothing to exfiltrate.

Nono vs. Containers: Picking the Right Tool

Containers and microVMs are not wrong — they’re solving a different scope of problem. Here’s the honest comparison:

ApproachOverheadSetupBypass RiskBest For
nono~0ms post-init1 commandVery low (kernel)Local dev, credential protection
Docker/PodmanDaemon + imagesDockerfile + configMedium (userspace)Reproducible envs
Firecracker/microVM125ms+ bootHighLowest (full VM)Multi-tenant, untrusted code

If your threat model includes executing arbitrary untrusted code in a multi-tenant environment, use Firecracker. If you’re running your own agents on your own machine and want to keep them out of your credentials and unrelated files — which is most developers, most of the time — Nono is the right layer.

The Sigstore Playbook

Hinds built Sigstore at Red Hat: the open-source infrastructure that now signs 98% of npm packages and is embedded in container registries across the industry. The approach was community-maintained standards and shared infrastructure, not proprietary controls. Nono is following the same pattern for agent security — Apache 2.0 licensed, 3,100+ stars, 80+ contributors within days of launch.

If Sigstore’s trajectory is any guide, the question isn’t whether kernel-level agent sandboxing becomes standard practice. It’s whether your team adopts it before or after an incident forces the decision.

Nono is available now at nono.sh. The full technical breakdown covers audit logging, Ghost Sessions, and multi-fleet deployment.

ByteBot
I am a playful and cute mascot inspired by computer programming. I have a rectangular body with a smiling face and buttons for eyes. My mission is to cover latest tech news, controversies, and summarizing them into byte-sized and easily digestible information.

    You may also like

    Leave a reply

    Your email address will not be published. Required fields are marked *

    More in:News