关于 ops-settings
ops-settings 是用于管理 preferences 文件中凭据和集成设置的 Claude 技能。它可显示集成状态、更新或清除凭据,并在修改后运行列出的冒烟测试。
主要功能
- 01查看集成凭据状态
- 02检查指定集成是否有效
- 03更新或清除已存凭据
- 04更新后运行冒烟测试
适用场景
- 01检查已配置的集成
- 02替换集成凭据
- 03修改凭据后进行测试
MCP 相关
配置了 Doppler MCP 时,该技能可检查其配置,并使用 Doppler MCP 服务解析密钥。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ davepoon/ buildwithclaude --skill ops-settings安装后在 Claude Code 中输入/ops-settings确认已加载。
详细介绍
运行时上下文
PREFS="${CLAUDE_PLUGIN_DATA_DIR:-$HOME/.claude/plugins/data/ops-ops-marketplace}/preferences.json"
cat "$PREFS" 2>/dev/null || echo '{}'
OPS ► SETTINGS
在初始设置后管理凭据和集成配置。
解析参数
--status或留空 → 显示完整的凭据状态仪表板<integration-name>→ 直接跳转到更新该集成(例如,/ops:settings stripe)--status <integration-name>→ 仅显示一个集成的状态
凭据状态仪表板
读取 preferences.json。对于每个已知集成,检查密钥是否存在且非空。此外,尽可能探测其是否正常运行。
以表格形式显示:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
OPS ► SETTINGS — Integration Status
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Integration Status Last Updated
─────────────────── ──────────── ─────────────
GitHub (gh cli) ✅ active (always active if gh auth status)
Stripe ✅ configured 2026-04-14
RevenueCat ✅ configured 2026-04-14
Telegram ✅ configured 2026-04-13
Slack ⚠️ missing —
Linear ✅ configured 2026-04-11
Sentry ⚠️ missing —
AWS ✅ active (always active if aws sts works)
Shopify ⚠️ missing —
Klaviyo ⚠️ missing —
Meta Ads ⚠️ missing —
GA4 ⚠️ missing —
ElevenLabs ⚠️ missing —
Datadog ⚠️ missing —
New Relic ⚠️ missing —
...
✅ N configured ⚠️ N missing
──────────────────────────────────────────────────────
探测运行状态
对于具有低成本健康检查的集成,运行检查,以区分“已配置但已过期”和“已配置且正常运行”:
| 集成 | 探测 | 正常运行信号 |
|---|---|---|
| Stripe | curl -s -o /dev/null -w "%{http_code}" -u "${stripe_key}:" https://api.stripe.com/v1/balance | 200 |
| GitHub | gh auth status 2>&1 | "已登录" |
| AWS | aws sts get-caller-identity --output text 2>/dev/null | 退出码为 0 |
| Linear | `cat "$PREFS" | jq -r .linear_team` |
| Doppler MCP | 检查是否设置了 DOPPLER_TOKEN 且有效 | 令牌存在且 MCP 服务有响应 |
如果之前配置过密钥,但探测失败,则显示 🔴 已过期。
更新集成
选择特定集成时(通过参数指定或从仪表板中选择):
- 显示当前值(已屏蔽):
sk_live_••••••••••••••••(显示最后 4 个字符) - 使用 AskUserQuestion 确认更新操作:
[Enter new value] [Test current value] [Clear this credential] [Back to dashboard] - 对于“输入新值”:使用
AskUserQuestion文本输入提示 - 通过
jq更新preferences.json中的新值:tmp=$(mktemp) jq --arg v "$NEW_VALUE" --arg k "$KEY_NAME" '.[$k] = $v' "$PREFS" > "$tmp" && mv "$tmp" "$PREFS" - 更新后立即运行冒烟测试(参见“冒烟测试”部分)
- 报告:
✅ Stripe 密钥已更新 — 冒烟测试通过或⚠️ 密钥已保存,但冒烟测试失败:<reason>
冒烟测试
| 集成 | 冒烟测试命令 |
|---|---|
| Stripe | curl -s -u "${new_key}:" https://api.stripe.com/v1/balance | jq .object → 必须为 "balance" |
| RevenueCat | curl -s -H "Authorization: Bearer ${new_key}" "https://api.revenuecat.com/v2/projects" | jq '.items | length' → 非零 |
| Telegram | node ${CLAUDE_PLUGIN_ROOT}/telegram-server/index.js --health 2>&1 → "healthy" |
| Slack | curl -s -H "Authorization: Bearer ${new_token}" https://slack.com/api/auth.test | jq .ok → true |
| Shopify | curl -s -H "X-Shopify-Access-Token: ${new_token}" "https://${store_url}/admin/api/2024-01/shop.json" | jq .shop.name → 非空 |
| Klaviyo | curl -s -H "Authorization: Klaviyo-API-Key ${new_key}" https://a.klaviyo.com/api/accounts/ | jq '.data[0].id' → 非空 |
| Datadog | curl -s -H "DD-API-KEY: ${new_key}" https://api.datadoghq.com/api/v1/validate | jq .valid → true |
| New Relic | `curl -s -H "Api-Key: ${new_key}" https://api.newrelic.com/v2/applications.json | jq '.applications |
| Doppler MCP | 设置 DOPPLER_TOKEN 后运行 npx -y @dopplerhq/mcp-server --help 2>&1 |
CLI/API 参考
| 命令 | 用途 |
|---|---|
cat "$PREFS" | jq 'keys' | 列出所有已配置的密钥 |
jq --arg v "$V" --arg k "$K" '.[$k] = $v' "$PREFS" | 更新单个密钥 |
gh auth status | 验证 GitHub CLI 身份验证 |
aws sts get-caller-identity | 验证 AWS 身份验证 |
评论
支持 Markdown