Agent Skill
2/7/2026

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.

1
1
0GitHub Stars
1Views
npx skills add 1-Martian-Way/hijak

SKILL.md

Namedesktop-debugging
DescriptionObserves, 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__screenshot to capture the full screen.
  • If you know the relevant window, use mcp__hijak__screenshot_window to capture just that window for a clearer view.
  • Use mcp__hijak__screenshot_region if 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_tree to 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_find to 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_screen or mcp__hijak__ocr_window to 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_read if debugging a web application to read browser console errors.
  • Use mcp__hijak__browser_network_inspect to check for failed HTTP requests.
  • Use mcp__hijak__browser_dom_query to inspect specific DOM elements.

5. Investigate Deeper

If the initial observation is not sufficient:

  • Use mcp__hijak__window_list to see all open windows — the relevant info might be in a different window.
  • Use mcp__hijak__window_focus to bring a specific window to the foreground, then screenshot it.
  • Use mcp__hijak__system_active_window to identify what app is currently focused.
  • Use mcp__hijak__process_list or mcp__hijak__process_inspect to 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_idle if 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.
Skills Info
Original Name:desktop-debuggingAuthor:1