desktop-debugging
Observes, understands, and debugs what is happening on the user's desktop. Use this skill when the user says "debug UI", "what's on screen", "read the error", "check the dialog", "see what happened", "look at the screen", "what does the app show", "read the message", "inspect the window", "check the notification", or needs to diagnose a visual or interactive problem on their desktop.
SKILL.md
| Name | desktop-debugging |
| Description | Observes, understands, and debugs what is happening on the user's desktop. Use this skill when the user says "debug UI", "what's on screen", "read the error", "check the dialog", "see what happened", "look at the screen", "what does the app show", "read the message", "inspect the window", "check the notification", or needs to diagnose a visual or interactive problem on their desktop. |
name: desktop-debugging description: > Observes, understands, and debugs what is happening on the user's desktop. Use this skill when the user says "debug UI", "what's on screen", "read the error", "check the dialog", "see what happened", "look at the screen", "what does the app show", "read the message", "inspect the window", "check the notification", or needs to diagnose a visual or interactive problem on their desktop.
Desktop Debugging
You are debugging a desktop UI issue. Follow a systematic observe-hypothesize-investigate-report loop.
1. Observe Current State
Take a screenshot first. Always start by seeing what is actually on screen before making any assumptions.
- Use
mcp__hijak__screenshotto capture the full screen. - If you know the relevant window, use
mcp__hijak__screenshot_windowto capture just that window for a clearer view. - Use
mcp__hijak__screenshot_regionif the area of interest is a specific part of the screen.
2. Extract Structured Information
After the screenshot, gather structured data about the UI:
- Use
mcp__hijak__accessibility_treeto get the full accessibility tree of the focused application. This gives you element roles, titles, values, and hierarchy — far more reliable than visual inspection alone. - Use
mcp__hijak__accessibility_findto locate specific elements by role, title, or value (e.g., find all error labels, find the submit button, find the status bar text). - Use
mcp__hijak__ocr_screenormcp__hijak__ocr_windowto extract text from the screen when the accessibility tree does not expose the text you need (e.g., rendered canvas content, images with text, non-standard UI controls).
3. Read Errors and Dialogs
Pay special attention to:
- Error dialogs and alert sheets — read their full text via a11y tree or OCR.
- Status bars and notification banners — these often contain transient error info.
- Console output in terminal windows — take a screenshot and OCR if needed.
- Toast notifications — capture quickly as they may auto-dismiss.
4. Correlate with Code and Logs
Connect what you see on screen with the underlying code:
- If the user has source code open, read the relevant files to understand what UI state maps to what code path.
- If the error message references a file, line number, or error code, look it up in the codebase.
- Check application log files if the user points you to them.
- Use
mcp__hijak__browser_console_readif debugging a web application to read browser console errors. - Use
mcp__hijak__browser_network_inspectto check for failed HTTP requests. - Use
mcp__hijak__browser_dom_queryto inspect specific DOM elements.
5. Investigate Deeper
If the initial observation is not sufficient:
- Use
mcp__hijak__window_listto see all open windows — the relevant info might be in a different window. - Use
mcp__hijak__window_focusto bring a specific window to the foreground, then screenshot it. - Use
mcp__hijak__system_active_windowto identify what app is currently focused. - Use
mcp__hijak__process_listormcp__hijak__process_inspectto check if a process is running, hung, or consuming excessive resources.
6. Verify State Changes
After any investigation step or if the user takes an action:
- Take a follow-up screenshot to confirm the current state.
- Compare with your earlier observations to track what changed.
- Use
mcp__hijak__wait_for_idleif you need to wait for the UI to settle before capturing.
7. Report Findings
Present your findings clearly:
- Describe what you observed on screen.
- Quote exact error messages and dialog text.
- State your hypothesis about the root cause.
- Suggest specific next steps or fixes.
- If you identified the issue, explain the connection between the visual symptom and the underlying cause.