本地运行
理解、仓库地图和回忆在你的机器上离线运行,零 token。无需运维服务器。
理解、仓库地图和回忆在你的机器上离线运行,零 token。无需运维服务器。
你的提供商密钥存在操作系统钥匙串中。从不在命令行中传递,从不打印。
在 codna.yaml 中把 privacy.egress 设为 fail-closed。此后 Codna 只在能于内核级拒绝其网络访问时才运行你的测试,并在审查期间不做任何注册表查询。
所有输出中的密钥都会被脱敏。该设置无法关闭。
数据流
大多数编码工具把你的仓库流式送入上下文窗口。Codna 反其道而行。工作在本地完成,只有一个小而可检查的证据包会到达模型。以下是你的代码走过的路径。
Codna 在你自己的硬件上读取并绘制仓库地图。为了理解代码库,不会把代码发往任何地方。
对于每个修复,Codna 组装可疑文件、调用路径和失败测试,而不是发送整棵树。它在每次运行时打印原始到证据包的大小比例。
Codna 用钥匙串中你自己的密钥把该证据包发送给你的提供商。数据协议在你与提供商之间。或者使用托管额度,由 Codna 承担账单。
把 privacy.egress 设为 fail-closed,Codna 就只在内核级网络拒绝之下运行你的测试。所有输出中的密钥都会被脱敏,且无法关闭。
边界
好的安全既在于工具提供什么,也在于它拒绝做什么。以下是已发布产品的行为。
部署
软件运行在哪里,决定了你的数据存放在哪里。Codna 在每种方式上运行同样的命令。选择符合你控制要求的那一种。
CLI 和 MCP 服务器在本地运行。你的代码在它已经所在的硬件上被绘制地图并修复。只有证据包会送达你的提供商。
thyn-ai/codna-action@v1 在你自己的 runner 上用你自己的密钥运行。fix 模式打开 pull request 且从不合并;review 模式发布发现和结论。
由 Codna 托管,每个任务使用短期、仅限该仓库的令牌。审查智能体不持有写令牌。管理员可以为组织关闭自动修复。
01运行时控制
无写令牌的只读审查。从测试运行中清除写令牌。每个任务仅限该仓库的短期 App 令牌。无法关闭的脱敏。
除非你选择加入,你的代码不会被用于训练模型。见隐私政策。理解在你的机器上运行,只有证据包或 diff 会送达模型提供商。
可以。CLI 和 GitHub Action 在你运行它们的地方运行,用你自己的密钥。无需运维服务器。托管的 GitHub App 是可选的。
codna.yaml 中的一个可选设置。privacy.egress 设为 fail-closed 后,Codna 只在能于内核级拒绝其网络访问时才运行你的测试,并在审查期间不做任何注册表查询。即使不设置,Linux 上的沙箱测试运行也获得内核级网络拒绝;其他平台上运行会记录网络活动。
codna key set 把你的提供商密钥存入操作系统钥匙串。Codna 从环境变量或钥匙串读取它,并直接调用你的提供商。计费和数据条款在你与提供商之间。
为每个任务签发的短期、仅限该仓库的令牌。审查:contents 读、pull requests 写、checks 写、statuses 读。审查智能体本身不持有写令牌,也没有 shell。修复任务只对其操作的仓库获得写范围。
只有修复的证据包,或审查的 diff。Codna 在每次运行时打印原始到证据包的 token 大小,你可以在自己的仓库中看到。审查期间,除非出口为 fail-closed,Codna 还会向 npm 和 PyPI 核对依赖声明。