- CLI
- TypeScript
- Python
- Go
InstallRun a sandboxed commandCheck what’s allowed
Next Steps
CLI Guide
Full CLI usage guide with examples
Security Model
Understand how nono protects your system
Documentation Index
Fetch the complete documentation index at: /docs/llms.txt
Use this file to discover all available pages before exploring further.
Get started with nono in 2 minutes
brew install nono
nono run --profile claude-code -- claude
nono why --path /etc/passwd
npm install nono-ts
import { CapabilitySet, apply, AccessMode } from 'nono-ts';
const caps = new CapabilitySet();
caps.allowPath('./data', AccessMode.Read);
caps.blockNetwork();
apply(caps);
// Now sandboxed - only ./data is readable, no network
pip install nono-py
from nono_py import CapabilitySet, AccessMode, apply
caps = CapabilitySet()
caps.allow_path("./data", AccessMode.READ)
caps.block_network()
apply(caps)
# Now sandboxed - only ./data is readable, no network
go get github.com/nolabs-ai/nono-go
package main
import (
"log"
nono "github.com/nolabs-ai/nono-go"
)
func main() {
caps := nono.New()
defer caps.Close()
if err := caps.AllowPath("./data", nono.AccessRead); err != nil {
log.Fatal(err)
}
if err := caps.SetNetworkMode(nono.NetworkBlocked); err != nil {
log.Fatal(err)
}
if err := nono.Apply(caps); err != nil {
log.Fatal(err)
}
}