乐于分享
好东西不私藏

让AI Agent拿真实密钥?你跟公司多大仇啊

让AI Agent拿真实密钥?你跟公司多大仇啊

“Agent可以替你写代码,但别让它替你保管钥匙。”

1

前几天,我把一个问题扔进开发者群:

“你们跑Claude Code、Codex这些Agent,会不会直接把真实API Key给它?”

群里大部分人没理我。

估计都忙着让Agent写代码去了。

只有一个人认真回了我。

他叫阿杰,一个创业公司CTO。

他说,这问题他太有感触了。

因为他差点被Agent坑死。

2

阿杰以前特别相信Agent。

他觉得Claude Code太好用了。

以前改一个bug,要自己读代码、找文件、跑测试。

现在一句话:

“帮我修一下这个问题。”

Agent就开始干活。

读repo,改文件,跑命令,提PR。

特么勤快得像刚入职的实习生。

问题是,他也像对实习生一样,太信任它了。

项目里的.env没收起来。

GitHub Token在环境变量里。

OpenAI Key也在。

有一次,Agent帮他排查一个GitHub Action失败的问题。

它很认真地看配置、看日志、写分析。

然后顺手把一段带token的调试信息,写进了临时文件。

最后差点一起commit上去。

阿杰发现的时候,后背发凉。

他说了一句特别真实的话:

“我以前担心AI偷懒,现在我担心它太努力。”

这就是Agent最吓人的地方。

它不是坏。

它是不知道什么东西不能碰。

它看到密钥,会当成上下文。

它看到日志,会当成材料。

它看到错误,会想办法解释清楚。

至于里面有没有token,它不一定在乎。

因为它没有分寸感。

3

很多人用Agent,跟养孩子似的。

嘴上说要安全。

手上把家里钥匙、银行卡密码、保险柜密码,全塞给它。

然后还安慰自己:

没事,它只是帮我写代码。

这就很离谱。

Coding Agent不是普通聊天机器人。

它会读文件。

会跑命令。

会调API。

会访问GitHub。

会写commit。

会把东西发给模型。

你把真实密钥放在它眼前,就等于让一个不懂人情世故的孩子,拿着公司钥匙满街跑。

出事不是玄学。

是早晚。

所以现在真正该问的,不是Agent能不能写好代码。

而是:

它拿不拿得到你的真实密钥?

如果拿得到,你就是在裸奔。

4

这个问题,现在有两个开源项目都在解。

第一个是LiteLLM Agent Control Plane。

它不是一个新的Coding Agent。

它更像一个Agent管理平台。

你可以把OpenCode、Hermes、Claude Managed Agents、Cursor Agents API、Deep Agents这些不同runtime,放到一个地方管理。

团队成员不用各自去拿Anthropic、Bedrock这些后台权限。

他们在一个UI里创建Agent、运行Agent、管理session。

它还管cron、memory、access这些东西。

说人话就是:

以前每个Agent都是野生的。

谁在跑,跑了什么,用了什么权限,全靠人记。

LiteLLM想把它们收编。

给Agent发工牌。

给团队一个统一入口。

这对团队很重要。

因为一家公司里,只要有三五个人都在用Agent,各自配key,各自跑session,各自调模型,很快就会乱。

安全事故最喜欢这种乱。

所以LiteLLM Agent Control Plane更适合公司和团队。

它解决的是:

一堆Agent怎么被管起来。

5

第二个是OpenAFW。

它的思路更直接。

它不是先给你建一整栋办公楼。

它先给你家门口装一把锁。

OpenAFW是本地Agent防火墙。

它跑在你电脑上,站在Agent和模型/API relay之间。

你的Claude Code、Codex、OpenClaw、Hermes、Claude Desktop要发请求,先经过它。

它可以看见模型调用。

可以做模型路由。

可以检测泄露密钥。

可以检测危险shell命令。

最关键的是,它能做credential masking。

也就是把真实API Key、GitHub Token、Slack Token这些东西,在离开你机器前换成假的。

真实密钥尽量留在本地。

别让模型看见。

别让API relay看见。

别让供应链里乱七八糟的中间人看见。

这对个人开发者特别有用。

因为很多人现在没团队,没安全部门,也没时间搭平台。

他只是今晚想跑Claude Code。

但他又不想把自己的key送出去。

那OpenAFW就很适合。

它解决的是:

一个本地Agent怎么别把密钥带出去。

6

所以这两个项目不是谁替代谁。

它们像两个不同性格的人。

LiteLLM像阿杰他哥。

做事正规。

公司化。

讲流程。

要统一入口,统一权限,统一session。

适合团队。

OpenAFW像阿杰自己。

先别整那么复杂。

我就一个人,一台电脑,一个Agent。

你先帮我把密钥挡住。

适合个人开发者和小团队。

一个管组织。

一个管本地。

一个像公司门禁。

一个像家门锁。

你要是团队,先看LiteLLM Agent Control Plane。

你要是个人裸跑Agent,先看OpenAFW。

如果你两个都不用,还把真实密钥直接塞给Agent。

那就别怪Agent。

Agent只是认真工作。

真正离谱的是你。

7

有人会说,我们只是开发环境,没那么严重吧。

这句话我听着特别耳熟。

很多事故,一开始都叫“只是”。

只是测试一下。

只是临时跑一下。

只是本地用一下。

只是忘了删。

最后变成:

只是公司没了。

代码写错了,可以回滚。

密钥泄露了,可能就不是回滚的问题了。

账单会被刷爆。

仓库会被改烂。

客户数据会被拖走。

云资源会被拿去挖矿。

你会突然发现,AI时代最贵的不是模型。

是你对Agent的天真。

所以,Agent当然要用。

不用才傻。

但要先装锁。

LiteLLM Agent Control Plane是一种锁。

OpenAFW也是一种锁。

别让Agent直接拿真实密钥。

别让它的流量没人看。

别让它在团队里野蛮生长。

所谓安全,不是相信它不会出事。

而是就算它想出事,也出不了。

这才是成年人用Agent的方式。