Agent Core Extractor
从支持的框架仓库中提取仅含核心代码的压缩包,用于跨框架迁移或分析。
下载 25
使用 GPG AES-256 加密管理密码与密钥,支持安全存储、读取和删除。
openclaw skills install @king6381/mjolnir-credential-vault命令、参数、文件名以原文为准
GPG AES-256 对称加密凭证管理器 — 一个文件,管理所有密钥。
⚡🔨 雷神工具链的一部分
🛡️ 品牌:雷神之盾(Shield of Thor)
gpg --version(init 命令会自动验证)| 变量 | 用途 | 是否必需 |
|---|---|---|
CRED_MASTER_PASS | 加解密主密码 | 非交互使用时必需;未设置则交互输入 |
# 初始化(首次使用)—— 检查 GPG 可用性
python3 SKILL_DIR/scripts/cred_manager.py init
# 交互式添加凭证
python3 SKILL_DIR/scripts/cred_manager.py add myservice
# 非交互使用
export CRED_MASTER_PASS="your_password"将 SKILL_DIR 替换为实际的技能目录路径。
.gpg 文件形式存储(权限 600)--passphrase-fd(stdin 管道)传递给 GPG — 绝不出现在命令行参数中--passphrase-fd 0(echo 管道)— 不用 --passphrase在保存/加密操作期间,明文 JSON 会短暂存在于临时文件中:
mkstemp + fchmod 600 创建(仅所有者可读写)CRED_MASTER_PASS 环境变量在 Linux 上可被同用户进程通过 /proc/*/environ 读取。
推荐方式(安全性从高到低):
read -s 提示设置export CRED_MASTER_PASS="..."(方便但安全性较低)避免: 将主密码明文写入文件(如 ~/.bashrc)。如必须,请确保 chmod 600 并了解风险。
python3 scripts/cred_manager.py init验证 GPG 已安装,创建加密的 credentials.json.gpg(权限 600)。密码少于 8 位会警告。
python3 scripts/cred_manager.py add <service_name>
# 交互式:输入 key=value 键值对,空行结束或程序化调用:
from cred_manager import add_credential
add_credential('github', {'user': 'octocat', 'token': 'ghp_xxx'})Python:
from cred_manager import get_credential, get_service
token = get_credential('github', 'token') # 单个字段
config = get_service('github') # 完整字典Shell / Bash:
export CRED_MASTER_PASS="your_password"
source scripts/cred_helper.sh
TOKEN=$(cred_get github token)CLI:
python3 scripts/cred_manager.py get github token
python3 scripts/cred_manager.py listpython3 scripts/cred_manager.py remove <service_name>当脚本中存在硬编码密码时,重构为:
import sys, os
sys.path.insert(0, os.path.expanduser('path/to/credential-vault/scripts'))
from cred_manager import get_credential
password = get_credential('myservice', 'pass')CRED_MASTER_PASS 在 Linux 上可被同用户进程读取.gpg 文件完整性未独立验证如需更高安全性,请考虑:OS 密钥环、pass、HashiCorp Vault 或云 KMS。
gpg、python3 二进制和 CRED_MASTER_PASS 环境变量--passphrase-fd;坦诚披露临时文件机制;三级密码建议--passphrase-fd stdin 管道传密码已收录 1 个 Skill