Agent Skills
返回列表
🤖

Marvis 凭据管理器

AI Agent 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_b22a52ba/marvis-credential-manager。

技能介绍

要解决的问题

Agent 无法在不同对话之间记住 API 密钥、邮箱授权码这类敏感凭据。重复粘贴既不安全,也容易踩到过期坑:OpenAI 密钥可能 90 天后失效,QQ 邮箱授权码过期后发信直接报错,而错误往往到调用那一刻才暴露。另一个现实约束是脱敏——技能需要读取密钥来构造请求,但回复里绝不能展示完整密钥。

工作原理

凭据全部保存在本地 %USERPROFILE%\.marvis\credentials.json,核心逻辑落在 %USERPROFILE%\.marvis\credman.ps1 脚本上。

工作流程分几步:

  • 每次对话开始时检查凭据:读取 JSON 数组,逐条调用 credman.ps1 verify 验证。needCheck=true 触发验证,expiryWarning 非空会在回复中提醒,status=expired 则明确告知凭据已过期。若存储文件不存在或 check 报错,跳过后续步骤。
  • 按需恢复 SkillHub 登录:需要执行 skillhub 命令但 skillhub auth whoami 失败时,自动走一遍登录恢复流程。
  • 按需读取密钥值:调用 OpenAI、混元等 API 时,直接用 Python 读取 JSON 对应字段,不走 credman 命令——list 会脱敏,拿不到可用值。
  • 用户指令映射:说“存密钥”执行 credman.ps1 store,“列出凭据”走 list,“检查凭据”走 verify,“删除凭据”走 delete。

存储命令带分类和验证方式,例如 store model openai sk-xxx +90 openai_list_models 表示一个 90 天过期、用 OpenAI 的 list models 接口验证的密钥;store email qq xxx permanent smtp_check 则是用 SMTP 探测验证邮箱授权码。

适用边界与注意点

  • 凭据文件仅本地存储,不同步云端,换机器需重新存储,也意味着它不适合团队共享凭据的场景。
  • 脚本依赖 PowerShell 执行策略,调用时要带 -ExecutionPolicy Bypass。
  • 覆盖已有凭据前必须向用户确认,这是防止误覆盖的硬规则。
  • 技能只负责存储和验证,不生成也不轮换密钥,过期后仍需用户提供新值。

使用场景

  • 在新对话里调用 OpenAI 时,凭据管理器自动从本地 JSON 读取 API Key,无需重新粘贴密钥。
  • 对话开始时自动检查凭据,发现 QQ 邮箱授权码已过期,及时提醒用户换新码再发信。
  • 让 Agent 保存一个 90 天过期的 OpenAI 密钥,技能自动记录过期时间并指定验证方式。
  • 在新机器上使用 Agent,凭据不同步云端,需重新用存密钥指令录入 OpenAI 或混元密钥。

适合人员

  • 需要让 Agent 长期调用 OpenAI、混元等付费 API 的开发者,诉求是换对话后不再手动粘贴密钥。
  • 要用 Agent 自动发邮件、管理 QQ 邮箱授权码的自动化人员,诉求是凭据过期时提前被提醒。
  • 关注密钥安全、禁止 Agent 回复中暴露完整密钥的工程师,诉求是凭据脱敏且覆盖前需确认。
  • 在多台机器上使用 Agent 的独立开发者,诉求是了解凭据只存本地、不同步云端的限制。