/** * Copyright (c) 2026 ByteDance Ltd. and/or its affiliates * SPDX-License-Identifier: MIT * * Diagnostic module for the Feishu/Lark plugin. * * Collects environment info, account configuration, API connectivity, * app permissions, tool registration state, and recent error logs into * a structured report that users can share with developers for * remote troubleshooting. */ import type { OpenClawConfig } from "openclaw/plugin-sdk"; type DiagLogger = { info: (message: string) => void; warn: (message: string) => void; error: (message: string) => void; }; type CheckStatus = "pass" | "warn" | "fail" | "skip"; type DiagCheckResult = { name: string; status: CheckStatus; message: string; details?: string; }; type AccountDiagResult = { accountId: string; name?: string; enabled: boolean; configured: boolean; appId?: string; brand: string; checks: DiagCheckResult[]; }; type DiagReport = { timestamp: string; environment: { nodeVersion: string; platform: string; arch: string; pluginVersion: string; }; accounts: AccountDiagResult[]; toolsRegistered: string[]; recentErrors: string[]; overallStatus: "healthy" | "degraded" | "unhealthy"; checks: DiagCheckResult[]; }; export declare function runDiagnosis(params: { config: OpenClawConfig; logger?: DiagLogger; }): Promise; export declare function formatDiagReportText(report: DiagReport): string; /** * Extract all log lines tagged with a specific message_id from gateway.log. * * Scans the last 1MB of the log file for lines containing `[msg:{messageId}]`. * Returns matching lines in chronological order. */ export declare function traceByMessageId(messageId: string): Promise; /** * Format trace output for CLI display. */ export declare function formatTraceOutput(lines: string[], messageId: string): string; /** * Analyze trace log lines and produce a structured CLI report. */ export declare function analyzeTrace(lines: string[], messageId: string): string; export declare function formatDiagReportCli(report: DiagReport): string; export {}; //# sourceMappingURL=diagnose.d.ts.map