termio-device
See and drive the sibling agent sessions running alongside you on this machine via the…
Drive the running termio app via AppleScript / System Events to reach a UI state (focus the window, click a sidebar project, a terminal pane, a control), capture a pixel-accurate screenshot of just that window, and read it back for visual analysis — for diagnosing layout /
$ npx -y skills add termio-sh/termio --skill app-screenshot-debug --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/app-screenshot-debugContext preview
The summary Claude sees to decide when to auto-load this skill.
Drive the running termio app via AppleScript / System Events to reach a UI state (focus the window, click a sidebar project, a terminal pane, a control), capture a pixel-accurate screenshot of just that window, and read it back for visual analysis — for diagnosing layout /
name: app-screenshot-debug description: "Drive the running termio app via AppleScript / System Events to reach a UI state (focus the window, click a sidebar project, a terminal pane, a control), capture a pixel-accurate screenshot of just that window, and read it back for visual analysis — for diagnosing layout / spacing / alignment / 'this looks ugly' issues that can't be judged from code alone. Invoke when the user says 'screenshot the app', 'take a screenshot', 'show me what it looks like', 'what does X look like', 'debug this visually', 'verify the UI change', '截图看看', '看看长什么样', '帮我截个图分析'. Pairs with `macos-rebuild-dev` — rebuild first if code changed, then capture."
The loop for *seeing* a termio UI change instead of guessing from code:
(rebuild if code changed) → drive app into the target state → capture the window → Read the PNG → judge / iterate
You cannot evaluate spacing, alignment, overlap, ghosting, or "this looks ugly" from source. Get a real screenshot, Read it, then decide.
`macos-rebuild-dev` skill first. The process name for System Events is `termio` and the main window's title is `termio`.
the terminal / Claude Code host. If `System Events` errors with `-25211` or the capture is black, that permission is missing — tell the user to grant it in System Settings → Privacy & Security.
window**. Everything you need is in `window 1`.
Run them with bash; they take the app name from `$TERMIO_APP_NAME` (default `termio`).
1. **`capture-window.sh [out.png]`** — screenshot *just* the frontmost termio window (`-o` no shadow, `-x` silent), reading its live bounds first. Prints the window origin + size. Captures the region 1:1 in points, so **a point you read off the resulting image is window-relative**: image (dx,dy) == screen (originX+dx, originY+dy).
2. **`click-in-window.sh <dx> <dy>`** — click at a **window-relative** point: it re-reads the live window origin and adds your offset. Use the exact (dx,dy) you measured on a `capture-window.sh` image — this survives the window moving or reopening on a different display.
SK=skills/app-screenshot-debug/scripts osascript -e 'tell application "System Events" to tell process "termio" to set frontmost to true' bash $SK/capture-window.sh /tmp/shot.png # → Read /tmp/shot.png with the Read tool, find the control you want at (dx,dy) bash $SK/click-in-window.sh 120 180 # e.g. click a sidebar project row bash $SK/capture-window.sh /tmp/shot2.png # Read again to see the result
Then **Read** each PNG to analyze. Capture before *and* after a change for an honest before/after.
(or `tell application "termio" to activate`).
screenshot. `click at {x,y}` (global points) conveniently **returns the AX element path it hit** — use that to confirm you hit the right thing.
frontmost — useful to put the terminal surface into a known state before capturing.
different origin or on another display. Always re-read bounds (the scripts do) — that's the whole reason `click-in-window.sh` exists.
Events, mapping points→pixels 1:1 for the width you ask for, so window-relative math is trivial: `dx = screenX - originX`.
no shutter sound.
animation settles — otherwise you screenshot a mid-transition frame.
it by **focusing + keystrokes**, and judge it from the **screenshot**, not the AX tree.
A terminal-first agentic development environment for agentic coding. Build for CLI/TUI agent. Runtime for Coding Agent, Tmux alternative
Repo: termio-sh/termio
See and drive the sibling agent sessions running alongside you on this machine via the…
See and drive the sibling agent sessions running alongside you in this Termio project via the…
Reverse-lookup glossary that turns a vague description of a web animation or motion effect…
Apple's approach to interface design and fluid, physical motion, translated for the web. Use…
Drive App Store Connect from the terminal with the `asc` CLI — TestFlight builds, groups,…
Cut a new termio macOS release by tagging main with the next version. Invoke when the user…