mcpField
H
health

health

github.com/terrylica云与 DevOps199 次安装今天更新
代码仓库

关于 health

用于 Cal.com Commander 的健康检查技能,可运行诊断以检查各子系统状态。README 还要求在发现可复现的问题后更新技能说明。

主要功能

  1. 01诊断多个子系统
  2. 02检查 Cal.com CLI 二进制文件
  3. 03检查环境变量是否配置
  4. 04执行后复核并更新说明

适用场景

  1. 01排查 CLI 文件缺失
  2. 02确认运行所需环境变量
  3. 03记录并修正可复现的诊断问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/terrylica/cc-skills --skill health

安装后在 Claude Code 中输入/health确认已加载。

附带文件references/evolution-log.md

详细介绍

Cal.com Commander 健康检查

对所有子系统运行诊断。

自我进化技能:此技能会在使用过程中不断改进。如果说明有误、参数发生变化,或需要采用变通方法,请立即修复此文件,不要拖延。仅在出现真实且可复现的问题时更新。

检查所有子系统

echo "=== 1. Cal.com CLI Binary ==="
ls -la "$HOME/.claude/plugins/marketplaces/cc-skills/plugins/calcom-commander/scripts/calcom-cli/calcom" 2>/dev/null && echo "OK" || echo "MISSING — run: cd scripts/calcom-cli && bun install && bun run build"

echo ""
echo "=== 2. Environment Variables ==="
echo "CALCOM_OP_UUID: ${CALCOM_OP_UUID:+SET}"
echo "CALCOM_API_URL: ${CALCOM_API_URL:-NOT_SET}"
echo "TELEGRAM_BOT_TOKEN: ${TELEGRAM_BOT_TOKEN:+SET}"
echo "TELEGRAM_CHAT_ID: ${TELEGRAM_CHAT_ID:-NOT_SET}"
echo "HAIKU_MODEL: ${HAIKU_MODEL:-NOT_SET}"
echo "OP_SERVICE_ACCOUNT_TOKEN: ${OP_SERVICE_ACCOUNT_TOKEN:+SET}"

echo ""
echo "=== 3. GCP Configuration ==="
echo "CALCOM_GCP_PROJECT: ${CALCOM_GCP_PROJECT:-NOT_SET}"
echo "CALCOM_GCP_ACCOUNT: ${CALCOM_GCP_ACCOUNT:-NOT_SET}"
echo "CALCOM_GCP_REGION: ${CALCOM_GCP_REGION:-NOT_SET}"

echo ""
echo "=== 4. Supabase Configuration ==="
echo "SUPABASE_PROJECT_REF: ${SUPABASE_PROJECT_REF:-NOT_SET}"
echo "SUPABASE_DB_URL_REF: ${SUPABASE_DB_URL_REF:+SET}"

echo ""
echo "=== 5. 1Password CLI ==="
op account list 2>&1 | head -3

echo ""
echo "=== 6. Bot Process ==="
if [ -f /tmp/calcom-commander-bot.pid ]; then
  PID=$(cat /tmp/calcom-commander-bot.pid)
  if kill -0 "$PID" 2>/dev/null; then
    echo "Running (PID $PID)"
  else
    echo "STALE PID file (process $PID not found)"
  fi
else
  echo "Not running"
fi

echo ""
echo "=== 7. Sync Process ==="
if [ -f /tmp/calcom-sync.pid ]; then
  PID=$(cat /tmp/calcom-sync.pid)
  if kill -0 "$PID" 2>/dev/null; then
    echo "Running (PID $PID)"
  else
    echo "Not running (stale PID)"
  fi
else
  echo "Not running"
fi

echo ""
echo "=== 8. launchd Jobs ==="
launchctl list | grep calcom-commander 2>/dev/null || echo "No launchd jobs registered"

echo ""
echo "=== 9. Circuit Breakers ==="
for f in /tmp/calcom-sync-circuit.json /tmp/calcom-commander-agent-circuit.json; do
  if [ -f "$f" ]; then
    echo "$(basename $f): $(cat $f)"
  else
    echo "$(basename $f): CLOSED (healthy)"
  fi
done

echo ""
echo "=== 10. Recent Audit Logs ==="
AUDIT_DIR="${AUDIT_DIR:-$HOME/.local/state/calcom-commander/audit}"
if [ -d "$AUDIT_DIR" ]; then
  LATEST=$(ls -t "$AUDIT_DIR"/*.ndjson 2>/dev/null | head -1)
  if [ -n "$LATEST" ]; then
    echo "Latest: $(basename $LATEST)"
    tail -5 "$LATEST" | while read -r line; do
      echo "  $line" | cut -c1-120
    done
  else
    echo "No audit logs found"
  fi
else
  echo "Audit directory not found: $AUDIT_DIR"
fi

执行后反思

此技能完成后,请在关闭前检查:

  1. 命令是否成功? — 如果没有,请修复导致失败的说明或错误表。
  2. 参数或输出是否发生变化? — 如果底层工具的接口发生变化,请更新用法示例和参数表,使其保持一致。
  3. 是否需要采用变通方法? — 如果你不得不临时变通(使用不同的标志、执行额外步骤),请更新此 SKILL.md,避免下次调用时需要采用相同的变通方法。

仅在问题真实且可复现时更新,不要臆测。

评论

支持 Markdown