返回更新列表
新发布Jul 21, 2026

cynative v1.6.0

只读AI代理,可查询您的云、代码和运行时基础设施,以发现配置错误、泄露的密钥和权限提升路径,并提供经过验证、有据可查的发现结果。

分享

cynative

构建你自己的安全智能体

面向安全智能体的开源框架,可对你的基础设施进行实时、只读访问。

CI Release License: Apache-2.0 OpenSSF Best Practices

快速开始 · 内置智能体 · 你的第一个智能体 · 文档

向你的基础设施提出任何问题。 Cynative 让你的代码、云和运行时上运行前沿模型——将 GitHub、GitLab、AWS、GCP、Azure 和 Kubernetes 作为一个系统进行推理——并返回经过验证的答案。

cynative "what in my cloud is publicly exposed that shouldn't be?"

45 个内置 agent,覆盖 AWS、GCP、Azure、GitHub 和 Kubernetes——涵盖权限提升、公网暴露、供应链、检测覆盖等场景——或者你也可以用一个 markdown 文件编写自己的 agent。

一个问题即可在整个技术栈中展开排查:Cynative 在临时沙箱中编写并运行代码,并行查询你的 API。每一项发现都会经过交叉核验,并追溯回其来源。

与编码 agent 和 MCP server 不同,它在构造上就是只读的:每一次调用都会在附加凭据之前被拦截并授权——可以放心地将其指向生产环境。

cynative 审计从 CI 到云的权限提升

你的 agent 能获得什么

  • 从代码到运行时:可推理 AWS、GCP、Azure、任意 K8s、GitHub 和 GitLab
  • 沙箱:生成并运行代码以进行大规模研究,自身不具备网络或主机访问权限
  • 操作拦截:将每次调用解析为其所需的 IAM 操作,并在附加凭据之前应用只读策略
  • 有证据支撑:通过交叉核验来验证每一项发现
  • 自主可控:单一二进制文件,使用你的模型,你的数据始终归你所有

快速开始

安装并设置一个 LLM:

brew install cynative/tap/cynative

export CYNATIVE_LLM_PROVIDER=anthropic
export CYNATIVE_LLM_MODEL=claude-opus-5
export ANTHROPIC_API_KEY=...

它会读取你 shell 中已有的凭据。运行一个内置 agent:

cynative -p --agent aws-network-exposure

或者向它询问任何问题:

cynative -p "which IAM roles can escalate to admin?"
cynative -p "high-risk cloud permissions, trace each to the PR where it was granted"
cynative -p "cloud credentials leaked in source code and their current blast radius"
cynative "live cloud resources absent from IaC - drift" # starts an interactive session
cat findings.json | cynative -p "triage these findings by exploitability"

内置代理

二进制文件中嵌入了 45 个代理。每个代理都是针对特定问题经过审查的提示词。

代理例如
AWS20aws-privilege-escalation、aws-public-storage、aws-unpatched-workloads、aws-supply-chain
Azure11azure-keyvault-exposure、azure-storage-exposure、azure-privilege-escalation
GCP5gcp-public-bindings、gcp-static-credentials、gcp-inference-exposure
GitHub4github-workflow-trust、github-unpatched-dependencies、github-branch-protection
Kubernetes5k8s-pod-privilege、k8s-self-managed-apiserver-access
cynative agents list            # every agent, with its description
cynative agents show <name>     # the exact prompt that would run

包含每个 agent 一行描述的完整目录位于 docs/agents-catalog.md。

你的第一个 agent

cynative agents show <name> 会打印出某个 agent 将要运行的确切文件。要创建你自己的版本,请将其复制到你的 agents 目录下并重命名,然后进行编辑:

mkdir -p ~/.cynative/agents

cynative agents show aws-public-datastores > ~/.cynative/agents/my-aws-public-datastores.md
# edit ~/.cynative/agents/my-aws-public-datastores.md, then:
cynative -p --agent my-aws-public-datastores

一个 agent 就是一个 markdown 文件:严格的 YAML frontmatter,其唯一的键是 description,然后是提示词正文。文件名即名称。位于 ~/.cynative/agents/ 中的文件会优先于同名的内置 agent,因此请为你的副本取一个 不同的名称以保留两者。格式说明见 docs/agents.md。

运行 agent

cynative -p --agent aws-public-datastores "AWS account 128149835728 only"   # with a task
cynative -p --agent aws-public-datastores                    # without
cynative --agent aws-public-datastores                       # seeds an interactive session

--agent 可与 -p、--auto-approve、--config 以及管道传入的 stdin 组合使用,因此同一个文件在开发时可以交互式运行,稳定后也可以非交互式运行。

Agent 从 ~/.cynative/agents/ 以及二进制内置的集合中读取;同名时用户文件优先于内置文件。cynative agents list 会显示每个 agent 及其来源,并标记被遮蔽的副本,cynative agents show <name> 会打印实际将要运行的确切文件。

带 MCP 的编码 agent 做不到这件事吗?

编码 agent + MCPCynative
吞吐量每次调用执行一个操作编写沙箱化代码,并发分发调用——更少 token,更快响应
发现结果未经验证的输出验证器对照实时证据交叉核验每一项发现
只读需主动启用的读取过滤器默认开启,失败即关闭——所需的 IAM 操作会对照安全审计策略进行检查。secretsmanager:GetSecretValue 属于 IAM Read:过滤器允许它,SecurityAudit 会阻止它
凭证环境自带,不做更改STS 会话限定为只读——AWS 也会强制执行该边界
影响范围你的 shell、任意网络研究代码在无主机访问权限的沙箱中运行,网络固定为你映射的服务
机密原样发送给模型在发送给模型之前从工具输出中脱敏
供应链第三方 MCP 和技能以你的凭证运行单个开源二进制,连接器内置
审计追踪分散的会话日志,尽力而为每次工具调用的失败即关闭 JSONL 日志——如果无法记录,就会中止

一个二进制,你的模型端点,你的账户。在它所审计的云中的实例上运行它,通过该云的托管推理,任何数据都不会离开你的环境:安全在你的基础设施上,从你的基础设施内部实现。

安装

Homebrew(macOS / Linux——推荐):

brew install cynative/tap/cynative

安装脚本(macOS / Linux - 根据发布版 checksums.txt 校验下载文件的 SHA-256,校验失败即中止):

curl -fsSL https://raw.githubusercontent.com/cynative/cynative/main/install.sh | sh

Windows(Scoop):

scoop bucket add cynative https://github.com/cynative/scoop-bucket
scoop install cynative
更新、卸载、Windows 详情、版本固定与手动下载

更新 / 卸载

方式更新卸载
Homebrewbrew upgrade cynativebrew uninstall cynative
安装脚本重新运行一行命令curl -fsSL https://raw.githubusercontent.com/cynative/cynative/main/install.sh | sh -s -- --uninstall
Scoopscoop update cynativescoop uninstall cynative

Windows(PowerShell 脚本): irm https://raw.githubusercontent.com/cynative/cynative/main/install.ps1 | iex;使用 & ([scriptblock]::Create((irm https://raw.githubusercontent.com/cynative/cynative/main/install.ps1))) -Uninstall 卸载。

安装脚本选项: 使用 CYNATIVE_VERSION=v1.0.0 固定版本;使用 CYNATIVE_INSTALL_DIR 更改目标目录(默认 ~/.local/bin,无需 sudo)。当安装了 gh 时,脚本会检查 GitHub release 证明(默认仅为提示);设置 CYNATIVE_REQUIRE_ATTESTATION=1 可使检查失败变为致命错误。如需高完整性安装,请从不可变标签而非 main 获取脚本。

macOS(手动): 从发布页面下载 cynative_Darwin_arm64.pkg(Apple Silicon)或 cynative_Darwin_x86_64.pkg(Intel),并使用 sudo installer -pkg <file> -target / 安装(或双击)。这些包已签名、公证并已附加票据——首次运行不会出现 Gatekeeper 提示。原始 cynative_Darwin_*.tar.gz 归档仍保留用于脚本/CI;被隔离的 tarball 二进制文件首次 GUI 启动需要联网进行在线公证检查(终端/install.sh/Homebrew 使用不受影响)。

Linux / Windows(手动): 从发布页面下载预编译二进制文件和 checksums.txt,验证 SHA-256,并将二进制文件放入 PATH。单一静态二进制文件,无依赖。

验证发布签名(可选)。 新版本附带 checksums.txt.sigstore.json,这是一个 Sigstore 捆绑包,使用绑定到此仓库发布工作流的无密钥证书对 checksums.txt 进行签名。验证清单,然后对照它检查你的归档文件:

cosign verify-blob checksums.txt \
  --bundle checksums.txt.sigstore.json \
  --certificate-identity "https://github.com/cynative/cynative/.github/workflows/release.yaml@refs/heads/main" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com"

grep cynative_Linux_x86_64.tar.gz checksums.txt | sha256sum -c -      # Linux
grep cynative_Darwin_arm64.tar.gz checksums.txt | shasum -a 256 -c -  # macOS
(Get-FileHash .\cynative_Windows_x86_64.zip -Algorithm SHA256).Hash.ToLower()
Select-String -Path checksums.txt -Pattern cynative_Windows_x86_64.zip

分类