Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/dimmkirr-ios-qa
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, testing, devops, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/ios-qa
What's inside
- Skill name
ios-qa- Description
- iOS Visual QA using Go tests + Claude Vision. Runs Go test flows that capture per-step screenshots, then evaluates each screenshot against the app's design system (docs/DESIGN.md) and Linear user story acceptance criteria. Use when asked to: visually QA the iOS app, verify screens look correct, check design compliance, do a visual regression check, or review UI after changes. Prerequisites: - Host Mac running `task ios:dev` (simulator + WDA) - WDA reachable (set WDA_URL env var, or defaults to host.docker.internal:8100)
- License
- MIT
- Instructions
- 192 lines in SKILL.md · view on GitHub
Files (3)
- SKILL.md
- openai.yaml · agents/
- evals.json · evals/
SKILL.md (first lines)
# iOS Visual QA
## When NOT to use
- Web app QA (use frontend-qa with Playwright MCP)
- Android app QA
- Unit testing Swift/Objective-C code without visual verification
- Backend API testing that doesn't involve the iOS UI
## Overview
Visual QA is a two-phase process:
1. **Run Go tests** — deterministic flows using gowda element selectors, capturing screenshots at each step
2. **Evaluate screenshots** — read each image with Claude Vision, verify against DESIGN.md and Linear story acceptance criteria
## Phase 1: Run Go Tests
### Setup
```bash
export PATH="/opt/devcell/.local/share/mise/installs/go/1.26.0/bin:$PATH"
export WDA_URL="${WDA_URL:-http://host.docker.internal:8100}"
```
### Run tests
Run specific test or all tests. Each test saves numbered screenshots to `tests/results/<timestamp>-<TestName>/`.
```bash
# Run a specific flow
go test ./tests/ -run TestLoginFlow -v
# Run all flows
go test ./tests/ -v
# Run from Docker
WDA_URL=http://host.docker.internal:8100 go test ./tests/ -v
```
### Available tests
Each test maps to a Linear user story:
| Test | Story | What it covers |
|------|-------|----------------|
| `TestLoginFlow` | KIWA-372 | Empty screen → error → fill fields → sign in → Explore |
| `TestLoginEmptyUsername` | KIWA-372 | Validation error on empty submit |
| `TestBrowseGuidesAndTrips` | KIWA-373 | Guides list → scroll → Trips tab → scroll → back |
| `TestViewGuideDetail` | KIWA-374 | Tap guide → detail sheet → scroll → dismiss |
| `TestSignOut` | KIWA-375 | Sign out → back to login |
### Screenshot output
Tests save screenshots to `tests/results/<timestamp>-<TestName>/`:
```
tests/results/2026-07-16T14-30-00-TestLoginFlow/
├── 01-login-empty.png
├── 02-login-error.png
├── 03-login-fill-username.png
├── 04-login-fill-password.png
└── 05-login-signed-in.png
```
## Phase 2: Visual QA Evaluation
After tests complete, evaluate each screenshot.
### Step 1: Find the results directory
```bash
ls -td tests/results/*/ | head -5
```
Pick the most recent run for the test(s) you want to evaluate.
### Step 2: Read each screenshot
Use the **Read tool** to view each PNG file in order. For each screenshot, evaluate against the checklist below.
### Step 3: Load acceptance criteria
Read the Linear story for the test being evaluated (story ID is in the test comment). Use `get_issue` to fetch acceptance criteria. Compare each screenshot against the relevant acceptance criteria.
### Step 4: Evaluate against DESIGN.md
Read `docs/DESIGN.md` for design system reference. For each screenshot check:
**Layout** (DESIGN.md → Spacing & Layout)
- Elements properly aligned, no overlaps or clipping
- Content respects safe areas (top ~59pt, bottom ~34pt on iPhone 16)
- Spacing follows 8pt grid (4, 8, 12, 16, 20, 24, 32)
- Screen-edge padding: 20px
- Between cards: 12px, card internal padding: 16px
**Typography** (DESIGN.md → Typography)
- Large Title: 34px bold for screen titles
- Headline: 17px semibold for card titles
- Body: 17px regular for reading text
- Caption: 12-13px for metadata, tags
- Clear hierarchy, no truncated titles
**Colors** (DESIGN.md → Color System)
- Accent blue (#007AFF) ONLY on interactive elements
- Error text in red, never blue
- Tag/pill backgrounds: accent at 8% opacity
- Sufficient contrast
**Liquid Glass** (DESIGN.md → Liquid Glass)
- Glass on navigation chrome ONLY (toolbars, tab bars)
- NO glass on cards or content areas
- No nested glass
**Cards** (DESIGN.md → Components → Cards)
- Opaque background (NOT glass/material)
- 12px radius, 16px padding
- No nested cardsFrom DimmKirr/skills, MIT.
More from DimmKirr/skills
- 0.570score
drawio-diagram
DimmKirr
Use when working with .drawio diagrams — creating new architecture diagrams from scratch, cleaning up layout, analyzing positioning, fixing alignment or…
SkillAFreshness: AClaude Code +9 - 0.570score
git-group-commit
DimmKirr
Group uncommitted changes into feature commits with conventional messages, and emit runnable commit artifacts.
SkillAFreshness: AClaude Code +9 - 0.570score
data-engineer
DimmKirr
Data quality verification skill for data engineering tasks.
SkillAFreshness: AClaude Code +9 - 0.558score
git-pr-message
DimmKirr
Generate a pull request description from committed groups and save it to .scratch/PR.md.
SkillAFreshness: AClaude Code +9 - 0.558score
continue-debug
DimmKirr
Analyze the output of the most recent debug run in .scratch/debug/ and iterate with ranked hypotheses.
SkillAFreshness: AClaude Code +9 - 0.529score
devops-engineer
DimmKirr
Use when making infrastructure changes (nix, docker, MCP, terraform) that need validation, when an E2E test is too expensive for the iteration cycle, when you…
SkillBFreshness: BClaude Code +9 - 0.529score
kitcut-implement
DimmKirr
Reproduce a working application from a kitcut-artifact/2.0 bundle (facts.json + checks.json + requirements/ + digests/; evidence/ optional and…
SkillBFreshness: BClaude Code +9 - 0.529score
frontend-qa
DimmKirr
Frontend QA workflow for Expo/React Native web apps.
SkillBFreshness: BClaude Code +9 - 0.529score
vector-designer
DimmKirr
Use when creating logos, icons, SVG graphics, or any vector design work requiring visual iteration.
SkillBFreshness: BClaude Code +9 - 0.526score
pm
DimmKirr
Project manager for backlog grooming, ticket analysis, and implementation status tracking.
SkillBFreshness: BClaude Code +9 - 0.524score
git-commit-message
DimmKirr
Generate a structured conventional commit message for current changes and save it to .scratch/COMMIT.md.
SkillBFreshness: BClaude Code +9 - 0.524score
reverse-wireframe-ui
DimmKirr
Use when creating wireframe diagrams from existing app screenshots or mockups.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 4, 2026 (1 month ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/DimmKirr/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from DimmKirr
- 0.570score
data-engineer
DimmKirr
Data quality verification skill for data engineering tasks.
SkillAFreshness: AClaude Code +9 - 0.570score
git-group-commit
DimmKirr
Group uncommitted changes into feature commits with conventional messages, and emit runnable commit artifacts.
SkillAFreshness: AClaude Code +9 - 0.570score
drawio-diagram
DimmKirr
Use when working with .drawio diagrams — creating new architecture diagrams from scratch, cleaning up layout, analyzing positioning, fixing alignment or…
SkillAFreshness: AClaude Code +9 - 0.558score
continue-debug
DimmKirr
Analyze the output of the most recent debug run in .scratch/debug/ and iterate with ranked hypotheses.
SkillAFreshness: AClaude Code +9 - 0.558score
git-pr-message
DimmKirr
Generate a pull request description from committed groups and save it to .scratch/PR.md.
SkillAFreshness: AClaude Code +9 - 0.529score
kitcut-implement
DimmKirr
Reproduce a working application from a kitcut-artifact/2.0 bundle (facts.json + checks.json + requirements/ + digests/; evidence/ optional and…
SkillBFreshness: BClaude Code +9
Cite this page
ios-qa skill. Agent Mart. https://agentmart.dev/skills/dimmkirr-ios-qa (last updated 2026-10-24)