核心用法
Confidant 专为 AI Agent 安全获取用户敏感信息设计,核心工作流为:脚本启动 → 生成安全链接 → 用户浏览器填写 → 密钥落地存储。主脚本 request-secret.sh 封装全部操作,支持自动检测或启动隧道(localtunnel/ngrok),确保远程用户可访问。输出包含可分享的 HTTPS 链接,24 小时或提交后自动失效。
显著优点
1. 零聊天暴露:密钥全程不走对话窗口,规避历史记录、日志回滚、模型记忆泄露三重风险
2. 无账户摩擦:localtunnel 方案无需注册,开箱即用;ngrok 用户可无缝复用已有隧道
3. 自动化闭环:接收后自动写入 ~/.config/<service>/api_key(权限 600)或注入环境变量,无需人工搬运
4. 多路复用:检测现有服务进程与隧道,避免端口冲突和重复启动
5. Agent 规范内置:强制规则(禁止聊天要密钥、禁止泄露、禁止直接 curl API)降低误用概率
潜在局限
- 网络依赖:远程场景依赖第三方隧道服务(localtunnel/ngrok),存在服务可用性与 DNS 劫持风险
- 终端环境限制:纯 SSH/无浏览器场景需用户手动在另一设备打开链接,体验断层
- 单端口设计:默认 3000 端口硬编码,冲突时需显式
--port覆盖 - 无加密传输详情:文档未说明 HTTPS 证书来源(localtunnel 自带 vs 自签名),合规审计可能追问
- 过期策略固定:24 小时窗口不可配置,高频迭代场景可能频繁重新生成
适合人群
- 开发 AI Agent 的工程师,需程序化获取 API Key/Token
- 远程协作场景(用户与 Agent 不在同一网络/机器)
- 对对话历史安全有强合规要求的组织(金融、医疗 SaaS 集成)
常规风险
| 风险类型 | 说明 | 缓释建议 |
|---------|------|---------|
| 中间人攻击 | 公共隧道域名可被抢注或 DNS 污染 | 优先内网使用;敏感生产环境自建 ngrok 账户+自定义域名 |
| 本地服务器暴露 | 3000 端口若绑定 0.0.0.0 可能被局域网扫描 | 确认绑定 127.0.0.1;防火墙限制入站 |
| 密钥残留 | 脚本异常退出可能遗留临时文件 | 定期审计 `~/.config/*/api_key` 权限与内容 |
| 社会工程 | 伪造 Confidant 链接诱骗用户输入 | 用户教育+链接域名白名单校验 |