让 AI 帮你跑命令、连数据库,密钥安全怎么办?
写进 .env,它顺手读进上下文;贴进聊天框,等于发了一份群公告;不给,它什么也干不了。
keypaste 就是冲着这个尴尬来的。它把登录信息和项目的密钥收进一个本地 KDBX 保险库,格式和 KeePass 一样------同一个文件,扔进 KeePassXC 也能打开、能改。没有账号,不联网,整套东西就是你磁盘上的一个文件。
01|首先它是个正经密码库
它先把密码库该干的活都干了,细节还挺抠:
-
• 一个 KDBX 4 文件,按分组放条目:标题、用户名、密码、URL、备注。搜索只查标题、用户名和 URL,不碰密码。
-
•
keypaste get把密码塞进剪贴板,20 秒后自动清掉。想直接输出到终端,得显式加--show。 -
•
--generate直接生成密码,默认 20 位,大约 128 bit,长度 8 到 256 可调。字符表剔掉了在 shell、YAML、URL 里容易出事的符号------这个取舍挺实际。 -
•
keypaste rotate换一个新密码,而且不打印出来。 -
• 每次改动都有历史,一步回滚;旁边还挂着滚动加密备份。
-
•
keypaste import能把别的 KDBX 并进来,也能接着原地编辑。
另外,KeePass 兼容这件事它不是嘴上说说。CI 在 Linux、macOS、Windows 上拿 keepassxc-cli 双向验格式,确保自己写出来的文件,KeePassXC 那边也认。

keypaste 桌面端
02|最关键的一点:AI 要密钥,得先过你
代理要密钥,不是"给你一个库随便翻",而是通过 MCP 精确地要一个条目的一个字段,还要附一句用途。
你在弹窗里选:拒绝、允许一次、允许一小时。发布版的 v0.3.0 还朴素一些,就是一句 Approve? [y/N],最多等 300 秒;拒绝/一次/一小时/永久允许这四档,是下一版才有的。每次请求都写进审计日志,日志带哈希链,改一条就对不上(这点做得很较真,日志不是它写的文件时,命令直接以退出码 5 失败)。
我挺喜欢它弹窗里的一句话:这句理由是 agent 写的,不是 keypaste 写的,请当成一个说法看待。它没有假装自己能判断 agent 是不是在骗你,只把事实摆清楚。这个分寸感,比那些吹"AI 安全审计"的工具实在多了。
03|密钥只在环境变量里,还能分环境
keypaste run 只把值注入到命令的环境变量里,磁盘上什么都不留。
加 --allow-run,agent 能跑一条你批准过的命令,拿回来的输出里,每个值都会被替换掉。但作者自己把话说透了:如果那条命令是 agent 能改的,它照样有办法把值弄出来。所以这里不开 shell,批准的也是具体那一条命令------能挡住的挡,挡不住的也不装。
项目按 dev、staging、prod 分开存值。生产环境的值,每次都得你当场点头,没有"记住一小时"这种便利。
还有 .env.keypaste:里面只写 KEY=kp://project/profile/KEY 这样的引用,没有明文,提交到仓库也不怕。这一下就把"忘了加 .gitignore"这个经典事故给绕过去了。
04|安装使用也简单
Windows 上就是下载、校验、解压:
bash
$a = "keypaste-0.3.0-win-x64.zip"
Invoke-WebRequest -OutFile $a "https://dl.keypaste.com/v0.3.0/$a"
Invoke-WebRequest -OutFile "$a.sha256" "https://dl.keypaste.com/v0.3.0/$a.sha256"
$want = (Get-Content "$a.sha256" -Raw).Split()[0]
if ((Get-FileHash $a -Algorithm SHA256).Hash -ne $want) { throw "checksum mismatch" }
Expand-Archive $a -DestinationPath .
macOS 和 Linux 是一段 curl 加 sha256 校验,都是原生二进制,不用装 .NET 运行时。macOS 要 14 以上,Windows 要 10 1809 以上,都是跟着 .NET 10 的支持范围来的。
接 Claude 也简单,一条命令:
bash
keypaste setup --vault ~/vault.kdbx
它会通过各家客户端的 mcp add 去配,或者打印一段配置给你自己贴。客户端配置里不含主密码------密码只在 keypaste agent --vault ~/vault.kdbx 那个终端里,解锁时才出现。
开源地址:https://github.com/notinferred/keypaste
写在最后
也有几个点要注意的。
第一,桌面端还没发布 。现在能用的只有 v0.3.0 的 CLI,桌面应用得自己拉源码构建,没有公开安装包。共享链接、给 CI 用的作用域令牌,代码写了,但还压着等下一版。
第二,别图省事装旧版 。v0.2.0 两个程序同时保存,可能一方把另一方的改动直接盖掉;v0.1.0 更离谱,env export 能把库删了,env rm 能改错条目,get 还能返回错的密码。这些版本不会下架,坑也一直在。
第三,校验和防的是下载坏包,不是换包 。校验文件和压缩包放在同一个源,有人能换一个,就能换两个。二进制也没签名,只有 v0.3.0 带了构建证明,能用 gh 不登录就验。
总的来说,它的亮点不是"又做了一个密码管理器",而是把 AI 要密钥这件事,从"随手一贴"变成了"先说理由、你点个头、最后留一笔记录"。这套流程用顺了,基本回不去原来那种给法。
- End -