返回更新列表
新发布Sep 3, 2026

nono v0.75.0

安全的代理多路复用执行路径——零信任、零配置、零延迟。

分享
nono logo

由打造 Sigstore 的团队构建
安全软件认证的标准,被 PyPI、npm、brew 和 Maven Central 采用

License CI Status OpenSSF Best Practices Documentation

Join Discord We're hiring agent-sign GitHub Action


[!NOTE] 在 1.0 版本发布之前,API 正在趋于稳定。必要时仍可能发生 API 变更,但会保持在最低限度。

[!IMPORTANT] 组织迁移: 官方 nono 注册表命名空间已从 always-further 迁移至 nolabs-ai。请更新你的脚本、配置文件和 CI 中的所有引用。 如果你已经在旧命名空间下安装了某个包,请先将其移除,然后再从新命名空间拉取:

nono remove always-further/claude
nono pull nolabs-ai/claude

旧命名空间将被弃用——请立即迁移。

在几秒内以零延迟沙箱运行 AI 代理,且无需任何设置 — Claude Code、Codex、Pi、CoPilot、Hermes、OpenCode、OpenClaw 等 — nono 让你在几秒内即可启动运行,无需守护进程、无需容器、无需虚拟机,也不占用磁盘空间。开箱即用,nono 强制执行最小权限沙箱,并支持 macOS、Linux 和 Windows(WSL2)。

从这里开始,fork 配置,调整它、定制主题、让它成为你自己的,并通过 nono 注册表与你的团队或社区分享。

想要在团队内或大规模地投入运营和运行? 世界上一些最大科技公司的工程师使用 nono 作为其工作流的一部分,或在生产环境中运行 AI 代理。

“Datadog 的工程师希望他们的代理快速行动,同时我们希望在此过程中保护我们的凭据和生产系统。nono 是唯一一个同时为我们提供细粒度、按命令策略和复杂凭据管理的沙箱,能够适配现有复杂的真实世界工具链。” James Carnegie -- Datadog 高级安全工程师

“安全融入我们在 Okta 构建的一切。nono 让我们有信心通过将 AI 代理的执行隔离在高度安全、策略控制的沙箱中来创新。它确保我们的凭据保持锁定和保护,同时不牺牲开发者的速度。” Leonardo Zanivan,Okta 首席工程师

被众多人效仿 — nono 开创了零延迟、零设置的代理沙箱,并持续在代理沙箱领域创新和引领。


快速开始

curl

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

macOS / Linux (Homebrew)

brew install nono

Nix

该项目提供了一个 Nix flake,包含两个输出:

  • #default(从源码构建)— 使用 buildRustPackage 从源码构建(首次运行会编译 crate 及其依赖)
  • #prebuilt — 从 GitHub Releases 获取官方发布二进制文件(快速,无需编译)
# Run without installing (from source)
nix run github:nolabs-ai/nono

# Run the prebuilt binary (no compilation)
nix run github:nolabs-ai/nono#prebuilt

# Install into your profile
nix profile add github:nolabs-ai/nono

# Pin to the latest release
nix run "github:nolabs-ai/nono?ref=$(curl -fsSL https://api.github.com/repos/nolabs-ai/nono/releases/latest | jq -r .tag_name)"

其他平台 — Debian/Ubuntu、Fedora、Arch、RHEL、openSUSE、WSL2:查看安装说明。

运行它!

在注册表中搜索一个代理,然后运行它:

$ nono search opencode
nolabs-ai/opencode	-	Official Opencode Plugin

$ nono run --profile nolabs-ai/opencode -- opencode

就是这样。opencode 现在以对当前目录的读/写访问权限运行,除此之外什么都没有 — 你的 SSH 密钥、你的云凭据、磁盘的其余部分对它来说都是不可见的。

所有流行代理的配置文件都位于 registry.nono.sh,已加固并可直接拉取。每个配置文件都捆绑了正确的文件系统范围、网络允许列表、钩子、技能等。

让它成为你自己的!

超出了默认配置?搭建一个配置文件并调整它 — 使用你已经熟悉的相同命令:

nono profile init opencode --extends nolabs-ai/opencode
nono run --profile opencode -- opencode

nono profile init 为你的代理导出一个可扩展且可编辑的配置文件,它继承自指定的基础配置文件。该配置文件是可组合的 JSON,因此你可以在与团队分享或向社区发布之前,审查确切的文件系统、网络、凭据和工具规则。

你是代理开发者,想要发布自己的代理包吗?我们非常欢迎你并推广你的工作!查看文档。

沙箱化代理调用的工具

nono 并不止步于“把代理放进沙箱”。代理将实际工作委托给工具:git、gh、curl、kubectl、包管理器、构建脚本、MCP 客户端/服务器,以及 PATH 上的其他任何东西。这些工具往往是秘密、网络访问和副作用出现的地方。大多数沙箱只是给代理一个笼统的策略,其中秘密对整个代理和每个工具都普遍可用,但 nono 不同:

nono 可以将被委托的工具放入它们自己隔离的命令沙箱中,不受代理控制。代理获得其会话沙箱;当它调用受控工具时,nono 的代理会以命令策略启动该工具,并带有自己的文件系统策略、网络策略和凭据。命令沙箱不会继承会话沙箱的宽泛 --allow 授权、CWD 访问、原始凭据路径或网络访问,除非其命令沙箱策略如此规定。

这意味着配置文件可以表达如下规则:

  • 代理可以调用 git,但 git 只能获得仓库、受信任的 Git 配置文件和 Git 对象存储
  • 代理可以调用 gh,但 gh 只能通过 nono 的凭据代理接收 GitHub token
  • 该 token 只能通过 L7 过滤针对选定的 GitHub API 方法和路径使用
  • git 可以在链式策略下调用 ssh,而来自代理的直接 ssh 保持被拒绝

策略存在于配置文件中,而不是提示词中。代理可以请求一个工具,但它无法扩大该工具的沙箱、铸造新密钥,或从会话内部绕过端点策略。

{
  "command_policies": {
    "credentials": {
      "github-api": {
        "type": "proxy",
        "upstream": "https://api.github.com",
        "credential_key": "keyring://gh:github.com/example?decode=go-keyring",
        "env_var": "GH_TOKEN",
        "inject_header": "Authorization",
        "credential_format": "Bearer {}"
      }
    },
    "commands": {
      "gh": {
        "from": {
          "session": {
            "sandbox": {
              "fs_read": ["."],
              "credentials": [
                {
                  "name": "github-api",
                  "endpoint_policy": {
                    "default": "deny",
                    "allow": [
                      { "method": "GET", "path": "/repos/nolabs-ai/nono/issues/**" }
                    ]
                  }
                }
              ]
            },
            "invocation_policy": {
              "default": "deny",
              "allow": [
                { "argv": { "prefix": ["issue", "list"] } },
                { "argv": { "prefix": ["issue", "view"] } }
              ]
            }
          }
        }
      }
    }
  }
}

在沙箱化工具执行中阅读更多内容。

准备好深入了吗?

前往文档,探索 nono 丰富的可组合策略系统、凭据注入、L7 过滤、供应链安全、回滚、多路复用、审计等。

库支持

nono 为 Rust、Python、TypeScript 和 Go 提供 FFI 绑定。

也可作为 Python、TypeScript 和 Go 绑定使用。

贡献

我们鼓励使用 AI 工具来贡献。但是,在提交之前,你必须理解并仔细审查任何 AI 生成的代码。安全至关重要。如果你不理解某个更改是如何工作的,请先在 Discord 中询问。

安全

如果你发现安全漏洞,请不要公开提交 issue。请遵循我们的安全政策中的流程。

许可证

Apache-2.0

分类