你的 AI 代理永远不会持有你的 API 密钥。它发送一个占位符;真正的密钥在传输过程中被替换。
阻止凭证窃取器(Shai-Hulud 及类似工具)和提示注入代理泄露你的机密。被攻破的代理无密可窃。
本质上它是一个回环 HTTPS 代理。它按需从你的保险库中获取每个凭证,并将其注入出站请求,因此调用进程(你的代理,或你通过它路由的任何其他程序)永远不会持有真实的字节。
保险库后端:macOS Keychain、Bitwarden Secrets Manager、Google Secret Manager、AWS Secrets Manager、static(无保险库,用于试用)和 env。在 Mac 上,Keychain 后端无需云保险库账户,也无需额外依赖:你的机密保留在它们原本所在的位置。(kow setup 仍默认使用 Bitwarden;传入你所需的后端。)参见 适配器架构。
1. 安装(Linux 使用 pipx,macOS 使用 brew):
pipx install 'keys-on-the-wire[bitwarden]'
# macOS: brew install inflightsec/keys-on-the-wire/keys-on-the-wire
sudo kow setup --bws
2. 安装技能,让代理为你编写绑定:
/plugin marketplace add inflightsec/keys-on-the-wire
/plugin install kow@keys-on-the-wire
3. 代理一项服务。 说 "将 Stripe API 通过 Keys on the Wire 路由。" 该技能会生成占位符,并打印出需要粘贴到保险库中的确切备注。它永远不会看到你的密钥。
4. 将真实密钥 连同该备注添加到你的保险库中,然后通过代理路由你的代理:
kow env && kow run claude
完成。代理只会发送占位符;Keys on the Wire 在传输过程中替换为真实密钥。
初次接触?快速入门指南 完整演示了首次运行,先决条件 涵盖保险库设置。更喜欢 shell 环境变量而不是 kow run?参见 用法。
kow run -- <command> 仅在该进程中设置代理和 CA 变量;你的登录 shell 永远不会继承它们。限定到单个进程。methods: 和 paths: 收窄绑定是杠杆,并且会被强制执行。它适合你吗? 划定了完整边界。每个 MCP 服务器在客户端配置中以明文保留一个长期令牌,客户端加载的每个其他服务器都可读取。kow mcp install 将该常驻密钥替换为占位符,并将服务器的出站流量路由通过代理:
kow mcp install github --host api.github.com --env-var GITHUB_PERSONAL_ACCESS_TOKEN \
--server-cmd "npx -y @modelcontextprotocol/server-github"
它会打印保险库备注和确切的 claude mcp add --env 命令。设计与威胁模型:ADR-0040。
凭证接入不是手写 YAML。捆绑的 kow 技能 询问认证形态和主机,然后准确告诉你需要粘贴到密钥 Notes 字段中的内容:
# kow-binding
api.acme.com
该标记行使其成为绑定;没有它,备注只是普通的人类描述,永远不会被解析(ADR-0025)。助手提议,你应用。它永远不会看到或存储密钥。
从这里开始 — 正在评估?阅读 它适合你吗? · 先决条件 用于设置保险库 · 快速入门 用于 10 分钟首次运行。
理解 — 概念 以通俗语言解释占位符、绑定、CA 和故障关闭 · 架构 涵盖威胁模型、G1 至 G9 不变量和残余风险。
安装与运维 — Linux · Docker · macOS · 用法 · 单进程 · Linux 隔离 · macOS 隔离 · Google Secret Manager
参考 — bindings.example.yaml 是完整配置模式 · 适配器架构 涵盖保险库后端及如何添加一个 · 对比 与 Vault Agent、Doppler、op run 及其他工具的比较 · CHANGELOG · SECURITY · CONTRIBUTING · CREDITS
每个功能都在本仓库中,采用 Apache-2.0 许可。无付费层级、无托管服务、无遥测。代理从不回传:其唯一的出站连接是你的保险库和代理调用的上游 API。如果某个替代方案更适合你的环境,请使用它。
一个可选依赖不是开源的,即 Bitwarden 后端的 bitwarden-sdk,仅在使用该后端时才需要安装。参见 LICENSE 和 NOTICE。