用途:本技能用于通过 1Password CLI(op)读取凭据、发现保险库与条目、轮换密钥,并将密钥以管道方式传给其他工具,同时避免把密钥值暴露到对话或标准输出中。
核心规则:绝不打印密钥。不要运行会输出密钥值的命令(如带 --reveal 的 op item get 直接写 stdout)。正确做法是直接管道给消费方,例如:op item get ITEM_ID --vault VAULT --fields label=PASSWORD --reveal | wrangler secret put SECRET_NAME --env ENV;或用 op ... --reveal 2>/dev/null | wc -c 仅验证值存在而不暴露内容。
包含斜杠的条目标题:许多条目使用路径式标题,op:// URI 以 / 分隔会解析失败并报 too many '/'。此时改用条目 ID:op item get ITEM_ID --vault VAULT --fields label=FIELD --reveal 2>/dev/null | wc -c。
发现流程:不知道 ID 时,先 op item list --vault VAULT_NAME 找到标题与 ID,再用第一列的 ID 进行后续读取。
读取单条目多字段:可先用 op item get ITEM_ID --vault VAULT_NAME --format json 配合 python3 仅列出字段标签(不显示值),再分别将各字段管道给对应消费命令。
常用管道模式:Cloudflare Workers 用 npx wrangler secret put;环境变量可用子 shell 赋值 SECRET="$(op item get ...)";kubectl 可用 --from-file=password=/dev/stdin。
无暴露验证:用 wc -c 检查非空;用 cmp -s 比较两处来源是否一致(仅看退出码)。
排错:too many '/' 改用条目 ID;could not find item 检查保险库或标题,运行 op item list --vault VAULT;输出为空可能缺少 --reveal;not signed in 表示会话过期,运行 eval "$(op signin)",避免打印会话令牌。
限制:本技能只涉及 op CLI 的安全读取与传递做法,未提供安装步骤、版本要求、价格、平台支持或具体授权细节,这些事实资料中暂未提供。