“OS-Level Isolation for AI Agents. Really awesome work and resource here”
Chris Hughes
VP, Security Strategy @ Zenity
Kernel-enforced isolation, immutable auditing, and atomic rollbacks for AI agents - built into the nono CLI and native SDKs.
“OS-Level Isolation for AI Agents. Really awesome work and resource here”
Chris Hughes
VP, Security Strategy @ Zenity
“Neat project, thanks for sharing! I like the OS-specific security primitives, useful built-in profiles, and being able to customize what's allowed/blocked.”
Clint Gibler
Head of Security Research at Semgrep
“I integrated nono into my project this weekend and it was a breeze to work with!”
Terra Tauri
Senior Engineer II, Bit Complete
“nono hits the real problem: agents shouldn’t inherit full user trust by default. Treating them like untrusted processes, with deny-by-default filesystem, network, and secrets access, feels like the right baseline going forward.”
snapsec
Centralising Application Security
“Beautiful work! It is encouraging to see kernel security being taken seriously, especially during this current episode of OpenClaw and Moltbot. ”
Cuong Nguyen
Cloud Architect and System Engineer
Unlike policy-based approaches that intercept and filter operations after they occur, nono leverages OS security primitives to create an environment where unauthorized operations are structurally impossible.
Composable JSON profiles define exactly what an agent can access. 22 built-in groups cover runtimes, credential deny-lists, and dangerous commands.
Secrets load from the system keystore before sandboxing, then get injected as environment variables. Direct keystore access is blocked. Zeroised on exit.
SHA-256 content-addressed snapshots capture filesystem state before and after execution. Restore any session with a single command.
Every operation is recorded with a Merkle tree rooted in SHA-256 hashes. Cryptographically verify that no file was altered outside the sandbox.
Programmable Guardrails for AI Agents - enforce kernel-level isolation, immutable audit trails, and atomic rollbacks with nono's native SDKs for Python, TypeScript, and Rust.
Coming soonimport nono_py as nonocaps = nono.CapabilitySet()caps.allow_path("/project", nono.AccessMode.READ_WRITE)caps.block_network()nono.apply(caps)
import { CapabilitySet, AccessMode, apply } from 'nono-ts';const caps = new CapabilitySet();caps.allowPath('/project', AccessMode.ReadWrite);caps.blockNetwork();apply(caps);
use nono::{CapabilitySet, AccessMode, Sandbox};let caps = CapabilitySet::new().allow_path("/project", AccessMode::ReadWrite)?.block_network();Sandbox::apply(&caps)?;
Get up and running in seconds.
brew tap always-further/nono
brew install nonoBuilding from source requires Rust toolchain. See the docs for more installation options.