会话不是共享运行时中的一个标签页,而是属于自己的机器;数据库不会允许两个会话拥有同一台机器。隔离你自己的两个会话,与隔离两个不同客户,使用的是同一套机制。
在一个会话内
绝不进入
工具要完成真实工作就需要真实凭据,因此诚实的问题不是机器是否曾持有凭据,而是哪台机器持有哪些密钥、由谁决定,以及哪些内容完全不能进入。
01
使用按项目派生的密钥,通过 AES-256-GCM 加密。
02
人员的角色和代理声明的授权必须同时允许该操作。
03
启动时按名称放入会话的 tmpfs 中,权限模式为 0600。
04
工具从环境中读取它,不会写入提示词。
05
关机时擦除文件,机器也会随之销毁。
大多数 AI 工具会让代理获得启动者能够访问的一切。Kortix 不会。代理身份拥有自己的策略,并独立进行评估,因此不会继承权限,触及你从未授予它的内容。
主体
资源类型
权限附加于主体,针对某项操作和某种资源类型。
内置角色——所有计划均提供
account
project
Enterprise
Available on Enterprise, and on a self-hosted instance with an Enterprise license. The built-in roles above are free on every plan.
服务账户是由账户拥有的一等机器身份,不是戴着人类帽子的令牌。策略直接附加到它上面;它发出的请求只根据自身策略评估,绝不会继承创建者的访问范围。
可以将人员或群组限制为项目内指定的代理和技能:市场团队可以使用这个代理和那个技能,除此之外什么都不能用。未设置作用域的内容仍对整个项目开放,因此限制是可选的,而不是之后必须撤销的默认设置。
审批不是埋在管理面板里的一个设置,而是 kortix.yaml 中的一段配置,与其他内容一同版本化,明确哪些工具调用直接运行、哪些需要人员审批、哪些直接拒绝。
# reads run; writes and destructive calls stop for a humanpolicy: default_mode: risk policies: # a name-only rule cannot gate the target — conditions can - match: gmail.send_email action: require_approval conditions: - arg: to match: /@example\.com$/ # anything else through this tool is refused outright - match: gmail.send_email action: block # whole connectors can be gated with one glob - match: stripe.* action: require_approval三种操作
always_run、require_approval、block。规则会匹配完全限定工具路径上的 glob,因此一行即可覆盖单次调用或整个连接器。
限制目标,而不只是限制工具
“允许代理发送邮件”不是安全防护。条件会匹配参数,因此规则可以设为“仅发送到这些地址”。无法评估的参数将默认拒绝。
不提供“一律允许”
每次受控调用都必须单独审批,并将其参数展示在你面前。不存在会话级授权,让后续带有不同参数的调用借此隐藏——这一捷径已在执行层移除,而不只是从 UI 中删除。
设置你想要的默认值
default_mode: risk 会让读取操作直接运行,并将写入和破坏性调用交给人员处理。没有策略区块的项目仍采用宽松的旧版默认值,因此请明确设置此项。
代理可以在自己的分支上随意写入。除非你有意授予它权限,否则将工作合入 main 是它不具备的独立能力——而授予该能力本身也必须经过人员审批。
每次编辑都会进入为该会话创建的分支。代理执行的任何操作都不会对其他会话或 main 可见。
当代理希望内容在机器销毁后仍保留时,它会提交并创建指向 main 的变更请求。这是唯一的入口。
变更请求就是差异。代理重写自身提示词的行为,与代码变更一样接受审查——因为它本身就是一种变更。清单无法通过验证的变更请求根本无法合并。
合并是一项独立能力,除非管理员授予,否则所有代理都会被拒绝。该授权位于 kortix.yaml 中——因此代理无法在没有他人批准变更请求的情况下扩大自己的权限范围。
每个账户操作和每个代理操作都会在所有计划中记录。计划决定谁可以读取、导出或流式传输这些记录,而不是决定记录是否存在。
同一产品可作为托管云、你自己网络中的一套服务,或隔离部署交付。它是开源的,因此你信任的是可以阅读的代码。
托管服务。我们运行控制平面和计算资源;你运营自己的公司。
在你的设备上运行一套 Docker Compose,使用与托管云相同的镜像。你的数据库和文件位于由你控制的磁盘上。
A single-tenant deployment inside your own network. Isolated topologies are scoped with us rather than self-served.
我们的实际状态
我们尚未取得 ISO 27001 或 HIPAA 相关认证,也不会暗示已经取得。报告发布后,这一行会在当天更新,而不会提前更新。
请不要为漏洞公开提交 issue。请向安全联系人发送邮件,说明受影响的版本或 commit、复现步骤及影响。