关于 health
用于 Cal.com Commander 的健康检查技能,可运行诊断以检查各子系统状态。README 还要求在发现可复现的问题后更新技能说明。
主要功能
- 01诊断多个子系统
- 02检查 Cal.com CLI 二进制文件
- 03检查环境变量是否配置
- 04执行后复核并更新说明
适用场景
- 01排查 CLI 文件缺失
- 02确认运行所需环境变量
- 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
执行后反思
此技能完成后,请在关闭前检查:
- 命令是否成功? — 如果没有,请修复导致失败的说明或错误表。
- 参数或输出是否发生变化? — 如果底层工具的接口发生变化,请更新用法示例和参数表,使其保持一致。
- 是否需要采用变通方法? — 如果你不得不临时变通(使用不同的标志、执行额外步骤),请更新此 SKILL.md,避免下次调用时需要采用相同的变通方法。
仅在问题真实且可复现时更新,不要臆测。
评论
支持 Markdown