证书金库
这个包提供了一种代理工具,用于存储,检索,列表,旋转,并按平台和密钥导入所标注的证书. 它使用节点.js crypto 页:1 AES-256-GCM 加密并保存证书为内存.
安装
npm install @framers/agentos-ext-credential-vault
同伴依赖 : @framers/agentos 有范围 >=0.10.40。 。 。 .
使用量
import { AgentOS } from '@framers/agentos';
const agentos = await AgentOS.create({
extensionManifest: {
packs: [
{
package: '@framers/agentos-ext-credential-vault',
options: {
passphrase: process.env.CREDENTIAL_VAULT_PASSPHRASE,
},
},
],
},
});
配置
| 选项 | 秘密编号 | 环境变量 | 需求 | 默认 |
passphrase | credential-vault.passphrase | CREDENTIAL_VAULT_PASSPHRASE | 没有 | agentos-default-vault-passphrase |
secrets | 无 | 无 | 没有 | A. 背景情况 secrets,则 {} |
密码句解析检查 options.passphrase,选择的秘密地图 credential-vault.passphrase,以及 CREDENTIAL_VAULT_PASSPHRASE,然后使用默认值. options.secrets 优先于上下文 secrets;地图没有合并。 解析使用无效的联结,所以接受空字符串密码句.
| 工具 | 它会做什么 |
credentialsSet | 按平台和密钥存储加密证书范围 . |
credentialsGet | 按平台和密钥获取解密证书. |
credentialsList | 列出有遮盖值的证书,可选择由平台过滤. |
credentialsRotate | 替换已有证书的值并返回旋转时间戳. |
credentialsImport | 从 JSON 或 CSV 从加密金库导入证书 . |
credentialsSet
| 参数 | 类型 | 需求 | 说明 |
platform | string | 对 | 平台或服务名称(如"twitter","openai","github"等) |
key | string | 对 | 证书密钥(例如, apiKey, (中文(简体) ), accessToken, (中文(简体) ), password(中文(简体) ) |
value | string | 对 | 加密和存储的证书值 |
credentialsGet
| 参数 | 类型 | 需求 | 说明 |
platform | string | 对 | 平台或服务名称(如"twitter","openai"等) |
key | string | 对 | 证书密钥(例如, apiKey, (中文(简体) ), accessToken(中文(简体) ) |
credentialsList
| 参数 | 类型 | 需求 | 说明 |
platform | string | 没有 | 可选平台过滤器以列出特定服务的证书 |
credentialsRotate
| 参数 | 类型 | 需求 | 说明 |
platform | string | 对 | 平台或服务名称 |
key | string | 对 | 要旋转的证书密钥 |
refreshToken | string | 对 | 新建证书值或刷新令牌 |
credentialsImport
| 参数 | 类型 | 需求 | 说明 |
data | string | 对 | 作为 JSON 阵列(例如, [{"platform":"x","key":"apiKey","value":"sk-..."}])或CSV(英语:platform,key,value (每行) |
format | string, enum: (中文(简体) ) json, (中文(简体) ), csv | 没有 | 数据格式( 默认 ): json(中文(简体) ) |
页:1
- 激活金库初始化. 启动前和停用后,工具返回
success: false 与“证书证书服务未初始化”。 解禁清除存储的证书.
- 密码句通过加密密钥
scryptSync 用固定的盐 agentos-credential-vault-salt。每个存储值使用随机初始化向量。 缺少的密码句配置使用了上面显示的默认值.
- 设置或导入一个已存在的平台, 并密钥覆盖其值, 保存
createdAt,并更新 updatedAt。 。 。 .
credentialsGet 返回纯文本值 data.value。缺少证书返回 success: false。列出按平台和按键排序的被遮盖的值和时间戳;被遮盖的值可以显示前缀.
credentialsRotate 需要现有证书和存储 refreshToken 作为它的新价值。 它回来了 rotatedAt 在结果中,但不将时间戳写入存储条目。 它不会发出外部令牌刷新请求 .
- JSON 导入接受数组或对象
platform, (中文(简体) ), key,以及 value。缺漏或空字段的条目被跳过并报告为出错.
- CSV 导入读取
platform, (中文(简体) ), key,以及 value 从每行中,剪切这些值,忽略空行,并跳过第一个包含"平面"的非平面行,忽略大小写. 它的行解析手柄引用了逗号并逃脱了双引号.
- 导入结果报告
imported, (中文(简体) ), skipped,以及任意 errors。解析出错和跳出条目可以以 success: true。 。 。 .
- 导出
CredentialVaultService 还揭露 deleteCredential 财务报告和审定财务报表 exportCredentials导出纯文本值。 包记录没有删除或导出工具 .
许可证
阿帕奇 - 2.0
关于 @framers/agentos-ext-credential-vault 的常见问题
@framers/agentos-ext-credential-vault 是什么?
AgentOS的证书金库扩展——用AES-256-GCM加密的内存证书存储,旋转支持,并进出口.
如何安装 @framers/agentos-ext-credential-vault?
在项目目录运行 npm install @framers/agentos-ext-credential-vault,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@framers/agentos(>=0.10.40)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。
@framers/agentos-ext-credential-vault 支持 TypeScript 吗?
支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。
@framers/agentos-ext-credential-vault 支持 ESM 还是 CommonJS?
以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。
@framers/agentos-ext-credential-vault 需要什么版本的 Node.js?
package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。
@framers/agentos-ext-credential-vault 可以商用吗?
@framers/agentos-ext-credential-vault 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。
@framers/agentos-ext-credential-vault 的下载量有多少?
根据 npm 官方下载统计,@framers/agentos-ext-credential-vault 在 2026/10/16 – 2026/11/14 这 30 天内被下载 20,382 次,日均约 679 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
@framers/agentos-ext-credential-vault 还在维护吗?
最新版本 0.1.6 发布于 2026/11/11(4 天前);至今共发布 7 个版本,其中过去 12 个月发布了 7 个;首次发布于 2026/05/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。