triage-log-bundle

Diagnose PolyHost log bundles by correlating per-process timelines across five interleaved logs.

5|1|Updated Aug 18, 2023
One-click install
npx skills add https://github.com/thpoll83/PolyKybdHost --skill triage-log-bundle-thpoll83
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: triage-log-bundle
Source: https://github.com/thpoll83/PolyKybdHost/tree/main/.claude/skills/triage-log-bundle
Command: npx skills add https://github.com/thpoll83/PolyKybdHost --skill triage-log-bundle-thpoll83

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? PolyHost log bundles interleave output from multiple processes (tray, daemon, firmware console), so reading them as a single story leads to wrong diagnoses — mistaking duplicate launches for logging bugs, or normal first-flash states for crashes. This Skill reconstructs what actually happened and separates real faults from states that only look like faults. ## Core Features & Use Cases - Process census and timeline reconstruction: Counts processes via session start/clean exit lines in crash.txt and correlates timestamps across startup.txt, host.txt, daemon.txt, and keyboard-console.txt. - Known-deceptive-line detection: Flags misleading lines such as Connected to PolyKybd. (which does not mean a usable device), 0xE00002C5 exclusive-access errors (not proof of a second process), and stale font-pack bundles (usually a flash in progress). - Settings drift analysis: Compares per-run settings dumps to catch values like telemetry_install_id changing between runs. - Use Case: A user reports "two tray icons" and sends a polyhost-logs-*.zip bundle. The Skill unzips it, reads diagnostics.txt first, counts pids, builds a per-process timeline, and produces a structured report separating the actual bug from non-faults. ## Quick Start Unzip the attached PolyHost log bundle and diagnose what actually happened, separating real faults from states that only look like faults.

Frequently Asked Questions about triage-log-bundle

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I diagnose a PolyHost log bundle?

Unzip the bundle, then read README.txt and diagnostics.txt first for timeframe, versions, and connection state. Next count processes via session start lines in crash.txt, then correlate timestamps across the per-role logs rather than reading one file end to end.

Why does the log show two tray icons or duplicated startup lines?

Duplicated INFO lines at the same millisecond in startup.txt mean two processes launched, not a logging bug. Two 'Handoff complete' lines indicate two tray icons, which is the signature of a duplicate-launch fault.

Does 'Connected to PolyKybd' in the log mean the keyboard works?

No. The connection routine reports success even when no raw HID interface was found, after which every command returns 'No Interface'. Always read the lines after the connect message before concluding the device is usable.

Is the 0xE00002C5 exclusive access error proof of a second process?

No. A single process can produce this error when a new HID handle collides with the one it is replacing. Count pids in crash.txt before blaming a duplicate, and check whether the device works later in the same bundle.

When should I not use this log triage skill?

Do not use it for CI build failures, which belong to the build job's own log, or for preview and legend rendering problems, which are handled by tools/preview_doctor.py. It is specifically for runtime log bundles from the Collect logs feature or polyctl logs bundle.