mcpField
K
Keyblind

Keyblind

本地服务
keyblind.dev安全31 天前更新

关于 Keyblind

Keyblind 是面向 AI Agent 的加密密钥库,可在运行时解析密钥,而不将明文放入 LLM 对话记录。开发者可在本地管理密钥、使用支持的后端,并通过 MCP 向 Agent 提供密钥库操作。

主要功能

  1. 01加密并存储密钥
  2. 02解析密钥而不暴露于对话记录
  3. 03配置 MCP 客户端
  4. 04将 .env 值替换为确定性假值
  5. 05管理团队密钥库和审计操作
  6. 06使用多种密钥后端

适用场景

  1. 01让 Agent 使用 API 凭据而不暴露在聊天中
  2. 02用虚假环境值测试项目
  3. 03在团队内共享和管理密钥
  4. 04审查 Agent 的密钥访问和操作

MCP 相关

Keyblind 是 MCP 服务,提供密钥存储、运行时解析、沙盒、团队密钥库、TOTP 和审计等工具。其配置命令可设置受支持的 MCP 客户端。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"aarifmms-keyblind": {
"command": "npx",
"args": [
"-y",
"keyblind"
]
}
}
}
启动命令npx -y keyblind

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmkeyblind0.8.8

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Keyblind——让 AI 盲用你的密钥

适用于 AI Agent 的加密密钥库,支持 MCP。一条命令即可配置所有编辑器。密钥在运行时解析,绝不会泄露到 LLM 对话中。

npm version License: MIT

为什么

开发者经常会将 API 密钥、密码和令牌泄露给 AI 编码工具。2025 年,搜索引擎发现有超过 100,000 段包含泄露密钥的 LLM 对话被编入索引。

AI Agent 会读取你的 .env 文件,将密钥复制粘贴到对话中,甚至会意外提交这些密钥。Keyblind 通过静态加密保存密钥,并在_运行时_解析密钥来防止这种情况——明文值绝不会出现在 LLM 对话记录中。

工作原理

┌──────────┐     ┌────────────────┐     ┌─────────────────┐
│ AI Agent │ ──→ │  Keyblind MCP  │ ──→ │  Encrypted      │
│ (Claude) │     │  Server        │     │  SQLite Vault   │
│          │ ←── │  (27 tools)    │ ←── │  (AES-256-GCM)  │
└──────────┘     └────────────────┘     └─────────────────┘
      ↑                                        │
      │ secret value never appears             │ secrets never
      │ in conversation transcript             │ stored in plaintext

快速开始

# 1. Install
npm i -g keyblind

# 2. One-command setup (initialize vault + configure Claude Code)
keyblind quickstart

# 3. Store secrets
echo "sk-proj-abc123" | keyblind set OPENAI_API_KEY
keyblind set DATABASE_URL -    # prompts securely

# 4. Sandbox your .env (AI agents see fakes)
keyblind sandbox

# 5. Resolve a secret
keyblind get OPENAI_API_KEY

# 6. Run commands with secrets injected as env vars
keyblind run -- npm start

# 7. List all secrets (names only, values hidden)
keyblind list

就这么简单。 执行 keyblind quickstart 后,重启 Claude Code。然后只需说 “列出我的 keyblind 密钥” 或 “使用我的 OPENAI_API_KEY”——AI Agent 就会在运行时解析密钥,而密钥绝不会出现在对话记录中。

MCP 服务

Keyblind 以 MCP 为先——它适用于所有支持模型上下文协议的 AI 工具(Claude Code、Cursor、Copilot、Windsurf、Cline、Zed)。

设置(自动)
keyblind setup-mcp

此命令会自动配置 Claude Code、Cline 和 Zed,以使用 Keyblind。可在任意目录中运行。

对于项目本地编辑器(Cursor、Windsurf、Copilot、Cline 项目模式),请在项目根目录中运行:

keyblind setup-mcp --local

详情和手动设置方法请参阅针对各编辑器的配置。

设置(手动)

在项目根目录中添加 .mcp.json,或使用 claude mcp add:

claude mcp add --scope user keyblind -- keyblind start

启用生物识别验证(解析密钥前需要验证 Touch ID):

keyblind unlock                      # Authenticate first
claude mcp add keyblind -- keyblind start --biometric

会话在 15 分钟后过期。需要 Pro 或 Team 许可证。

MCP 工具
工具描述
resolve_secret在运行时解析密钥(值不会显示在对话记录中)
store_secret加密并存储密钥
list_secrets列出密钥名称(绝不显示密钥值)
delete_secret删除密钥
sandbox_env将 .env 值替换为确定性模拟值
unsandbox_env从密钥库恢复 .env 中的真实值
audit_log查看密钥解析审计记录
totp_code为已存储的配置生成 TOTP 双重身份验证代码
totp_store从 otpauth:// URI 存储 TOTP 配置
totp_list列出所有已存储的 TOTP 配置
totp_delete删除 TOTP 配置
create_share_link为密钥创建加密且会过期的分享链接
receive_share接收并解密分享的密钥
deadman_status检查死手开关状态
deadman_checkin重置死手开关计时器
team_init创建共享团队密钥库(加密的 SQLite)
team_push将本地密钥推送到团队密钥库
team_pull从团队密钥库导入所有密钥
team_list列出团队密钥库中的密钥名称
team_resolve解析(解密)团队密钥库中的密钥
team_delete删除密钥库中的密钥
sso_status检查 SSO/OIDC 身份验证状态
register_agent注册绑定到人类担保人的 AI Agent
record_action向防篡改账本追加已签名操作
verify_ledger验证账本完整性(哈希链 + 签名)
list_agents列出已注册的 AI Agent
export_compliance将 Agent 账本导出为合规报告

Web 控制面板

通过浏览器管理你的密钥——无需登录或配对。打开本地控制面板:

keyblind dashboard

这会启动本地服务器,并在浏览器中打开 http://localhost:4318/。控制面板与 REST API 由同源地址提供服务,因此可在所有浏览器中使用,无需 CORS、配对令牌或登录。功能包括:

  • 查看、添加、复制和删除密钥
  • 审计日志,包含完整的访问历史
  • 许可证管理(层级、电子邮件、到期时间)
  • Pro/Team 层级状态
  • 按密钥设置访问策略和轮换提醒
  • Agent 操作审批(批准/拒绝排队等待的 Agent 写入操作)
  • 中央控制平面(全组织可见性 + 签名撤销)

托管控制平面(hosted/)增加了组织、角色、群组、签名撤销 + 群组范围清单、多提供商 SSO 登录(支持组织自动配置、多组织切换和 IdP 会话结束撤销),以及短期有效的 Agent 凭据。参见 docs/enterprise.md(阶段 2)。

浏览器扩展

Keyblind Chrome 扩展可检测并阻止将密钥粘贴到 AI 聊天界面(Claude.ai、ChatGPT、Copilot)中。

Chrome Web Store

功能:

  • 检测 12 种以上的 API 密钥格式(OpenAI、GitHub、Stripe、AWS 等)
  • 拦截 AI 聊天网站上的粘贴事件
  • 检测到密钥时显示警告横幅
  • 弹出窗口显示保险库连接状态

位于 browser-extension/。从 chrome://extensions 加载未打包的扩展程序。

定价

免费版ProTeam
价格$0$79/年$29/用户/月
密钥5无限无限
本地保险库✓✓✓
沙盒 / 取消沙盒✓✓✓
MCP 服务✓✓✓
控制面板✓✓✓
浏览器扩展✓✓✓
7 种后端✓✓✓
团队保险库—✓✓
审计日志—✓✓
密钥共享—✓✓
身后开关—✓✓
TOTP 双重身份验证—✓✓
生物识别门禁—✓✓
SSO/OIDC——✓
CI/CD 集成—✓✓
# Buy a license at keyblind.dev, then activate:
keyblind activate <your-license-key>

# Check your status
keyblind status

后端

Keyblind 支持多种密钥后端:

keyblind backends                          # List available backends
keyblind backend 1password                 # Switch to 1Password
keyblind backend bitwarden                 # Switch to Bitwarden
后端读取写入依赖项
local(默认)✓✓无
1password✓✓op CLI
bitwarden✓—bw CLI
env✓—无
aws✓✓aws CLI
gcp✓✓gcloud CLI
azure✓✓az CLI

Keyblind 与 Cloak 对比

KeyblindCloak
协议MCP(所有编辑器)仅 VS Code 扩展
编辑器Claude Code、Cursor、Copilot、Windsurf、Cline、ZedVS Code、Cursor
存储AES-256-GCM SQLiteAES-256-GCM 文件
后端Local、1Password、Bitwarden、Env、AWS、GCP、Azure仅 Local
沙盒确定性 HMAC 假数据AES-256-GCM 加密
Web 控制面板✓(localhost:4318)—
浏览器扩展✓(Chrome)—
TOTP 双重身份验证✓—
密钥共享✓(加密 URL 片段)—
身后开关✓—
Touch ID✓(macOS 生物识别门禁)✓
CI/CD用于注入环境变量的 keyblind run—
网络零(完全本地)零
许可证MIT专有
免费层级✓(5 个密钥)✓
Pro$79/年(无限)—

安全性

  • AES-256-GCM 加密,使用 PBKDF2 派生密钥(600K 次迭代)
  • 绑定机器身份的密钥——加密密钥通过机器指纹进行 XOR 封装
  • 零网络、零遥测——无云服务、无账户、无分析
  • 保险库存储在 ~/.keyblind/,权限为 0700
  • 确定性沙盒假数据,按项目 + 密钥名称使用 HMAC-SHA256 生成

验证安装

发布版本通过 GitHub Actions 构建并发布,附带 npm 来源证明,可证明 tarball 是由此代码库的 CI 而非开发者的机器生成的。

npm audit signatures        # Verify npm registry signatures

如需验证某个发布版本的构建来源,请打开 https://github.com/aarifmms/keyblind/releases 发布页面,并查看“Provenance”和 “Attestations”部分,其中的链接会将 tarball 与构建它的确切提交和工作流运行关联起来。

  • 依赖关系图较小 — CLI 仅依赖三个软件包(MCP SDK、 better-sqlite3、zod)。仅服务端使用的依赖(Stripe、Resend、Vercel CLI)位于 hosted/ 和 dashboard/ 软件包中,执行 npm i -g keyblind 时不会安装这些依赖。
  • 没有源映射 — 发布的 tarball 包含编译后的 JavaScript,不含嵌入的原始源代码。

CLI 参考

keyblind quickstart           One-command setup (init + configure Claude Code)
keyblind init                 Initialize the encrypted vault
keyblind set <name>           Store a secret (value from stdin)
keyblind set <name> -         Store a secret (prompts securely)
keyblind get <name>           Resolve and print a secret
keyblind list                 List all stored secrets
keyblind delete <name>        Delete a secret
keyblind setup-mcp            Auto-configure MCP for Claude Code, Cline, Zed
keyblind setup-mcp --local    Write project MCP configs (Cursor, Windsurf, Copilot, Cline)
keyblind sandbox [.env]       Replace .env with deterministic fakes
keyblind unsandbox [.env]     Restore real .env values
keyblind run <command...>     Run command with secrets as env vars
keyblind start                Start MCP server (stdio — for AI agents)
keyblind start --http         Start HTTP server (dashboard + MCP + REST API)
keyblind dashboard            Open the web dashboard in your browser
keyblind start --biometric    Start MCP server with biometric requirement
keyblind backends             List available backends
keyblind backend <name>       Switch backend
keyblind activate <key>       Activate a Pro/Team license
keyblind deactivate           Remove current license
keyblind status               Show license and vault status
keyblind audit                Show secret resolution audit log
keyblind check --expired      List secrets past expiry
keyblind rotate <name>        Update a secret value
keyblind rotate <name> --generate  Rotate with an auto-generated value
keyblind rotate <name> --exec "<cmd>"  Rotate via an external command's stdout
keyblind rotate --overdue [days]    Rotate all secrets past the threshold
keyblind rotate-needed [days] List secrets not rotated in N days (default 90)
keyblind agents list         List registered AI agents
keyblind agents register <name> <sponsor> [scope]  Register an agent (prints signing key)
keyblind agents verify       Verify agent ledger integrity
keyblind agents export [json|csv]  Export compliance report
keyblind agents enforce on|off  Require signed agent identity for secret access
keyblind policy set <secret> <policy>  Restrict which agents may access a secret
keyblind policy list          List per-secret policies
keyblind approvals list       List pending approval requests
keyblind approvals approve <id>  Approve and execute a pending request
keyblind approvals deny <id>  Deny a pending request
keyblind approvals require on|off  Require approval for all agent writes
keyblind approvals require <secret>  Require approval for a specific secret
keyblind approvals unrequire <secret>  Stop requiring approval for a secret
keyblind control-plane init   Generate the org signing keypair
keyblind control-plane export  Export a signed, value-free control-plane bundle
keyblind control-plane trust <pubkey>  Trust an org public key (honor its deny list)
keyblind control-plane untrust <pubkey>  Remove a trusted org public key
keyblind control-plane trusted  List trusted org public keys
keyblind control-plane apply <file>  Import a signed deny list (revoked agents)
keyblind control-plane revoke <agentId> [reason]  Revoke an agent locally
keyblind control-plane unrevoke <agentId>  Un-revoke an agent locally
keyblind control-plane connect <url>  Connect to a hosted control plane (org API base)
keyblind control-plane sync   Pull + apply the signed manifest (deny list + group grants)
keyblind control-plane disconnect  Forget the hosted control-plane connection
keyblind control-plane status  Show the current connection (if any)
keyblind scan-repo [--all]    Scan tracked files (or full history) for secrets
keyblind setup-ci             Write a GitHub Actions secret-scan workflow
keyblind ci export            Export an encrypted bundle for CI injection (Pro)
keyblind ci inject            Decrypt a bundle and write secrets to $GITHUB_ENV
keyblind ci setup             Write a GitHub Actions workflow for CI injection
keyblind team init [path]     Create a shared team vault
keyblind team push <name>     Push a secret to team vault
keyblind team pull            Pull secrets from team vault
keyblind team list            List secrets in team vault
keyblind totp set <name>      Store TOTP 2FA config
keyblind totp code <name>     Generate current TOTP code
keyblind totp list            List all TOTP configs
keyblind totp delete <name>   Delete a TOTP config
keyblind share <name>         Create encrypted share link
keyblind receive <url>        Receive a shared secret
keyblind deadman setup        Configure dead man's switch
keyblind deadman checkin      Reset dead man's switch timer
keyblind deadman status       Show dead man's switch status
keyblind deadman disable      Disable dead man's switch
keyblind sso configure        Set up SSO/OIDC for team access
keyblind sso login            Authenticate via browser SSO
keyblind sso logout           Clear SSO session
keyblind sso status           Show SSO auth status
keyblind doctor               Run vault health check
keyblind generate <name>      Generate a strong random secret
keyblind import [.env]        Bulk import from .env file
keyblind export               Export all secrets
keyblind completions [shell]  Generate shell completion script

开发

git clone https://github.com/aarifmms/keyblind.git
cd keyblind
npm install
npm run build       # Compile TypeScript
npm test            # Run tests
npm run dev         # Watch mode

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。