用途:为 Clerk 认证问题收集全面调试信息,适用于排查复杂故障、准备支持工单或诊断间歇性问题。
主要能力:
- 环境调试脚本 scripts/clerk-debug.ts,输出 Node 版本、平台、环境变量存在性(发布密钥与密钥、前缀、NODE_ENV)、Clerk API 连通性测试和 Clerk 相关依赖包版本。运行方式:npx tsx scripts/clerk-debug.ts。
- 运行时健康检查端点 app/api/clerk-health/route.ts,通过 GET 返回 SDK 加载、auth 函数、后端 API 连通性、环境变量等检查结果,全部正常返回 200,否则 503。
- 客户端调试组件 ClerkDebugPanel,基于 useAuth、useUser、useSession 显示加载状态、用户 ID、邮箱、会话 ID、状态、最后活跃时间,并可解析展示 JWT 载荷;production 环境返回 null。
- 请求调试中间件,使用 clerkMiddleware,在 CLERK_DEBUG=true 时记录方法、路径、用户 ID、会话 ID 及 __clerk 相关 cookie 名称。
- 支持包脚本 scripts/clerk-support-bundle.sh,收集 Clerk 包版本、环境变量(脱敏)、middleware.ts、健康检查结果并打包为 tar.gz。
使用前提:已安装 Clerk SDK、可访问应用日志、使用带开发者工具的浏览器。
错误处理参考:认证不工作可访问 /api/clerk-health 查看 backendApi 状态;令牌问题用调试面板 Inspect JWT 查看声明与过期;中间件未运行设置 CLERK_DEBUG=true 查看控制台日志;会话不持久检查 __clerk cookie 与域名。
快捷检查:curl -s -H "Authorization: Bearer $CLERK_SECRET_KEY" https://api.clerk.com/v1/users?limit=1 | jq '.total_count'。
限制:资料未提供该技能的收费、价格、平台支持范围与官方说明;具体功能可用性取决于项目配置与环境。