核心用法
Confidant 是一个去中心化的密钥交接协议,基于 Node.js CLI 实现。其设计哲学是「接收方启动服务」:需要获取密钥的一方运行 serve-request 生成一次性 URL,发送方通过 fill 命令将密钥注入该端点。支持三种场景:
| 场景 | 接收方 | 发送方 | 典型用例 |
|------|--------|--------|----------|
| User-to-Agent | AI Agent | 人类用户 | 收集 API Key、数据库密码 |
| Agent-to-User | 人类用户 | AI Agent | 交付生成的凭证、临时令牌 |
| Agent-to-Agent | 系统 A | 系统 B | 自动化流水线密钥分发 |
显著优点
1. 零聊天记录暴露:密钥全程不经过对话窗口,规避 LLM 上下文持久化风险
2. 一次即焚:密钥被读取后立即从服务端删除,默认 24h 过期
3. 管道安全输入:支持 echo "$SECRET" | confidant fill 避免 shell history 泄露
4. 无中央托管:基于本地 HTTP 端点,可配合 ngrok/Tailscale 穿透内网
潜在局限
- 网络可达性依赖:若接收方位于 NAT/防火墙后,需额外配置隧道
- CLI 环境门槛:非技术用户需理解 npm/npx 生态
- 无身份绑定:URL 即权限,泄露 URL 即泄露接收权(虽一次性)
- 审计盲区:去中心化设计导致无全局操作日志
适合人群
- AI Agent 开发者:构建需要调用第三方 API 的自动化工作流
- DevOps/SRE:在 CI/CD 或运维脚本中安全传递 credentials
- 安全意识强的终端用户:与 AI 协作时不愿将密钥粘贴到 ChatGPT/Claude 等聊天界面
常规风险
- URL 传输渠道风险:若通过不安全 IM 发送 URL,可能被中间人截获
- 本地端口暴露:
serve-request默认监听 0.0.0.0,公共网络环境需额外加固 - 依赖供应链:@aiconnect/confidant npm 包的完整审计状态未公开披露