Awesome-omni-skill troubleshooting
Guides the agent through an interactive process to diagnose and resolve common issues with an IoT LED controller project by analyzing logs, checking configurations, and asking targeted questions.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/troubleshooting" ~/.claude/skills/diegosouzapw-awesome-omni-skill-troubleshooting-34cbf6 && rm -rf "$T"
manifest:
skills/tools/troubleshooting/SKILL.mdsource content
Agentic Troubleshooting Protocol
As an AI assistant, your goal is to actively guide the user through diagnosing and solving problems with their IoT device. Do not just display this document. Follow these steps to interactively troubleshoot.
Step 1: Initial Diagnosis
- Start by asking the user to describe the problem in detail.
- Ask for the output from the serial monitor. This is the most critical piece of information.
- Based on the user's description, categorize the problem into one of the following areas:
- LEDs Not Working (dark, flickering, wrong colors)
- Cannot Access Web Interface
- WiFi Connection Issues
- Firmware Upload/Build Fails
Step 2: Log-Driven Analysis
Analyze the serial monitor output provided by the user. Look for key messages:
- Successful Boot:
"Filesystem mounted""Web server started""IP Address: ...""LEDs initialized: ..."
- Common Errors:
: Indicates a problem with the filesystem."Failed to mount FS"
(repeatedly): Indicates a WiFi credential or connectivity problem."Connecting to WiFi..."
General error messages that can point to hardware or configuration issues.E (...):
Step 3: Interactive Troubleshooting Flow
Based on the problem category and log analysis, proceed with the following interactive steps.
If LEDs Are Not Working:
- Ask the user to confirm their hardware setup against the hardware and wiring checklist.
- "Are all grounds (ESP, LED strip, power supply) connected together?"
- "Is the data line connected to the correct GPIO pin (default is 2) and the 'DIN' port on the strip?"
- "Is there a resistor on the data line?"
- Inspect
andconfig.h
:platformio.ini- Read the files to check if
,DEFAULT_LED_COUNT
, andDEFAULT_LED_PIN
match what the user expects.DEFAULT_LED_TYPE
- Read the files to check if
- Suggest a minimal test:
- Advise the user to temporarily change
inDEFAULT_LED_COUNT
to a small number (e.g., 5) to isolate power supply issues.config.h
- Advise the user to temporarily change
If Web Interface is Inaccessible:
- Check for IP Address: Look for
in the logs."IP Address: ..." - If no IP address: The issue is likely WiFi. Switch to the "WiFi Connection Issues" flow.
- If IP address is present:
- Ask the user to try pinging the IP address from their terminal (
).ping <ip-address> - Ask the user to try accessing
.http://<ip-address>
- Ask the user to try pinging the IP address from their terminal (
- Check for Filesystem Errors: Look for
or"Failed to mount FS"
in the logs."FS Not Found"- If found, instruct the user to run the command
and provide you with the output.platformio run --target uploadfs
- If found, instruct the user to run the command
If WiFi Connection Fails:
- Analyze Logs: Look for repeating
messages."Connecting to WiFi..." - Ask about credentials: "Have you double-checked the WiFi SSID and password for typos and case sensitivity?"
- Ask about network type: "Is the WiFi network 2.4GHz? ESP devices cannot connect to 5GHz networks."
- Suggest AP Mode: Advise the user to re-flash the device without WiFi credentials to force it into Access Point (AP) mode. Then, they can connect to the device's temporary network and configure WiFi through the web portal at
.http://192.168.4.1
If Build/Upload Fails:
- Request Build Logs: Ask the user to provide the complete output from the PlatformIO build/upload command.
- Analyze Build Errors:
- Look for "library not found" errors and suggest adding the missing library to
inlib_deps
.platformio.ini - Look for C++/compiler errors and check the corresponding source file for syntax issues.
- Look for "permission denied" or "port not found" errors during upload and advise the user to check their USB connection and drivers.
- Look for "library not found" errors and suggest adding the missing library to