Agent skill

Qt Testing

by talmolab in talmolab/sleap

Capture and visually inspect Qt GUI widgets using screenshots.

BSD-3-Clause-ClearAuto-check passedDevelopment

Install Qt Testing

skills CLI
$ npx skills add talmolab/sleap --skill qt-testing -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install talmolab/sleap qt-testing --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/talmolab/sleap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/qt-testing .claude/skills/qt-testing && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
qt-testing
GitHub stars
617
Token cost
~557 tokens
SKILL.md length
113 words
Files
2 (incl. scripts)
Skills in repo
4
Repo updated
First seen
Licence
BSD-3-Clause-Clear

At a glance

Capture and visually inspect Qt GUI widgets using screenshots.

  • Works in 4 steps: Create/obtain the widget to test → Call capture_widget(widget, "description") → Read the saved screenshot with the Read… → …
  • Asked to verify GUI rendering
  • SKILL.md covers Quick Start, Core Script, Output Location and Workflow, plus 3 more sections
  • Runs Python scripts from its folder; calls uv

What it does

Qt Testing is an agent skill from talmolab/sleap. Capture and visually inspect Qt GUI widgets using screenshots. Use when asked to verify GUI rendering, test widget appearance, check layouts, or visually inspect any PySide6/Qt component. Enables Claude to "see" Qt interfaces by capturing offscreen screenshots and analyzing them with vision.

Its SKILL.md is about 560 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/qt_capture.py`).

It sits in Development. The repository describes itself as: A deep learning framework for multi-animal pose tracking.

When your agent uses it

  • Asked to verify GUI rendering
  • Test widget appearance
  • Visually inspect any PySide6/Qt component

Example prompts

  • “/qt-testing”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Create/obtain the widget to test
  2. Call capture_widget(widget, "description")
  3. Read the saved screenshot with the Read tool
  4. Analyze with vision to verify correctness

What it can do on your machine

Read from SKILL.md and the folder at commit 4786f14. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Qt Testing loads about 557 tokens when it runs. Until then it costs about 76 tokens; SKILL.md has 113 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~76
When it runs · the whole SKILL.md, loaded when a task matches
~557

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from talmolab/sleap at commit 4786f14, republished under its BSD-3-Clause-Clear licence (© talmolab). 113 words, ~557 tokens.

Download SKILL.mdSave it as .claude/skills/qt-testing/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
qt-testing
description
Capture and visually inspect Qt GUI widgets using screenshots. Use when asked to verify GUI rendering, test widget appearance, check layouts, or visually inspect any PySide6/Qt component. Enables Claude to "see" Qt interfaces by capturing offscreen screenshots and analyzing them with vision.

Qt GUI Testing

Capture screenshots of Qt widgets for visual inspection without displaying windows on screen.

Quick Start

python
# Capture any widget
from scripts.qt_capture import capture_widget
path = capture_widget(my_widget, "description_here")
# Then read the screenshot with the Read tool

Core Script

Run scripts/qt_capture.py or import capture_widget from it:

bash
# Standalone test
uv run --with PySide6 python .claude/skills/qt-testing/scripts/qt_capture.py

Output Location

All screenshots save to: scratch/.qt-screenshots/

Naming: {YYYY-MM-DD.HH-MM-SS}_{description}.png

Workflow

  1. Create/obtain the widget to test
  2. Call capture_widget(widget, "description")
  3. Read the saved screenshot with the Read tool
  4. Analyze with vision to verify correctness

Interaction Pattern

To interact with widgets (click buttons, etc.):

python
# Find widget at coordinates (from vision analysis)
target = widget.childAt(x, y)

# Trigger it directly (not mouse events)
if hasattr(target, 'click'):
    target.click()
    QApplication.processEvents()

# Capture result
capture_widget(widget, "after_click")

Example: Test a Dialog

python
import sys
from PySide6.QtWidgets import QApplication
from sleap.gui.learning.dialog import TrainingEditorDialog

# Add skill scripts to path
sys.path.insert(0, ".claude/skills/qt-testing")
from scripts.qt_capture import capture_widget, init_qt

app = init_qt()
dialog = TrainingEditorDialog()
path = capture_widget(dialog, "training_dialog")
dialog.close()
print(f"Inspect: {path}")

Key Points

  • Uses Qt.WA_DontShowOnScreen - no window popup
  • Renders identically to on-screen display (verified)
  • Call processEvents() after interactions before capture
  • Use childAt(x, y) to map vision coordinates to widgets
  • Direct method calls (.click()) work; simulated mouse events don't

© talmolab, BSD-3-Clause-Clear. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in .claude/skills/qt-testing of talmolab/sleap.

  • SKILL.md
  • scripts/qt_capture.py

Open the folder on GitHubat commit 4786f14

Compare with similar skills

Qt Testing next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Qt Testing compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Qt Testing this skilltalmolab/sleap617—~557Automated safety check: PassBSD-3-Clause-Clear
Vercel Composition Patternssupabase/supabase111k59 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers296k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 59 repos~726 tokens
    DevelopmentAuto-check passed
  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    296k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from talmolab/sleap

  • Investigation

    talmolab/sleap

    Scaffolds a structured investigation in scratch/ for empirical research and documentation.

    617 GitHub stars~899 tokensUpdated 8 days ago
    Auto-check passed
  • PR

    talmolab/sleap

    Create a well-structured GitHub PR with proper branching, testing, formatting, and documentation.

    617 GitHub stars~1.7k tokensUpdated 8 days ago
    Auto-check passed
  • Sleap Support

    talmolab/sleap

    Handle SLEAP GitHub support workflow for issues and discussions.

    617 GitHub stars~2k tokensUpdated 8 days ago
    Auto-check passed

Categories

Questions about Qt Testing

What does Qt Testing do?

Capture and visually inspect Qt GUI widgets using screenshots. Qt Testing is an agent skill from talmolab/sleap. Capture and visually inspect Qt GUI widgets using screenshots.

When should I use Qt Testing?

Qt Testing fits situations like: asked to verify GUI rendering; test widget appearance; visually inspect any PySide6/Qt component.

How do I install Qt Testing in Claude Code?

Run `npx skills add talmolab/sleap --skill qt-testing -a claude-code`. Or copy the skill folder (.claude/skills/qt-testing in talmolab/sleap) into .claude/skills/qt-testing in your project. Claude Code loads it when a task matches its description.

How do I install Qt Testing in Codex?

Run `npx skills add talmolab/sleap --skill qt-testing -a codex`. Or copy the skill folder (.claude/skills/qt-testing in talmolab/sleap) into .agents/skills/qt-testing in your project. Codex loads it when a task matches its description.

Can I use Qt Testing in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add talmolab/sleap --skill qt-testing -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/qt-testing, .gemini/skills/qt-testing, .github/skills/qt-testing and .opencode/skills/qt-testing in your project.

What does Qt Testing need to run?

Going by SKILL.md and its folder, Qt Testing needs Python for the scripts in its folder and the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Qt Testing access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Qt Testing safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Qt Testing use?

Qt Testing is published under the BSD-3-Clause-Clear licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Qt Testing use?

About 557 tokens (SKILL.md is roughly 2.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Qt Testing?

Skills that share tags, products or a category with Qt Testing: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Qt Testing?

talmolab (a GitHub organization) maintains it in talmolab/sleap, which has 617 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on September 30, 2026.

Source: talmolab/sleap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.