Skill tự động hóa iOS Simulator
31 script tiết kiệm token để build Xcode, điều khiển UI qua accessibility label, chụp màn hình, kiểm tra accessibility và chẩn đoán hang trên iOS Simulator.
Lập trìnhTrung cấp★ 1,315⑂ 103Điểm AI 9/10Cập nhật lần cuối: 8 thg 11, 2026
Làm được gì
- Build và test dự án Xcode bằng
build_and_test.py, tóm tắt lỗi/cảnh báo;--runthì build → cài → chạy app trong một lệnh. - Điều hướng bằng cây accessibility thay vì tọa độ pixel:
screen_mapper.pyliệt kê phần tử chỉ tốn 10–50 token,navigator.py --find-text "Login" --taptương tác theo ngữ nghĩa (ảnh chụp tốn 1.600–6.300 token). - Điều khiển thiết bị: cử chỉ (vuốt, pinch, kéo thả, lắc, xoay), bàn phím và phím cứng, deep link, push notification, clipboard, thư viện ảnh, 13 loại quyền, vị trí GPS/GPX, dark mode, Dynamic Type, locale.
- Công cụ phân tích: audit WCAG, so sánh ảnh (visual diff), ghi lại phiên test thành báo cáo markdown, snapshot trạng thái app, xem sandbox/UserDefaults/Core Data, kiểm tra thiếu khóa localization trong
.xcstrings. hang_watcher.py(HangBuster) ghi lại sự kiện hang từ os_log theo phiên, xuất tóm tắt gọn rồi cho phép đào sâu từng cụm hoặc dùngjqtrên ndjson thô.- Quản lý vòng đời simulator: tạo, boot, shutdown, erase, delete;
sim_list.pygiảm 96% token so vớisimctl list.
Dành cho ai
- Lập trình viên iOS/Swift muốn giao việc build và kiểm thử UI cho Claude Code
- QA và người phụ trách accessibility cần kiểm tra nhãn, vùng chạm, WCAG
- Nhóm cần truy vết hang main-thread, hiệu năng cuộn, hoặc thiếu bản dịch
- Yêu cầu: macOS 15+, Xcode 26+, Mac Apple Silicon, Python 3.12+,
brew install facebook/fb/idb
Ví dụ sử dụng
- "Build dự án này, chạy trên simulator và đăng nhập giúp tôi" →
sim_health_check.sh→build_and_test.py --run→screen_mapper.py→navigator.py --find-text "Login" --tap→--find-type TextField --enter-text ... - "Kiểm tra lỗi accessibility của màn hình hiện tại" →
accessibility_audit.py, kết hợpappearance.py --text-size AX5 --contrast highđể xem bố cục khi chữ lớn - "Tìm nguyên nhân giật khi cuộn" →
hang_watcher.py --start, thao tác, rồi--stoplấy tóm tắt và--get-details --cluster 1 - "Thử app khi bị từ chối quyền camera" →
privacy_manager.py --revoke camerarồiapp_launcher.py --restart
· · · Hướng dẫn cài đặt · · ·
Dùng thử ngay, không cần cài
Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.
Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình: https://raw.githubusercontent.com/conorluddy/ios-simulator-skill/HEAD/ios-simulator-skill/skills/ios-simulator-skill/SKILL.md Mình muốn: (viết việc bạn cần ở đây)
Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.
↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên AI Skill Mart. Copy thư mục ios-simulator-skill/skills/ios-simulator-skill từ repo GitHub conorluddy/ios-simulator-skill vào ~/.claude/skills/ios-simulator-skill/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/conorluddy/ios-simulator-skill.git /tmp/ios-simulator-skill && mkdir -p ~/.claude/skills && cp -r /tmp/ios-simulator-skill/skills/ios-simulator-skill ~/.claude/skills/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Kiểm tra điều kiện: macOS 15 trở lên, Xcode 26+ (bản app đầy đủ), Mac chip Apple Silicon,
python3 --version≥ 3.12. - Cài idb:
brew install facebook/fb/idb(gồm cả idb-cli và idb-companion). - Nếu cần so sánh ảnh, cài thêm:
pip3 install pillow - Tải repo:
git clone https://github.com/conorluddy/ios-simulator-skill.git /tmp/ios-simulator-skill - Chép skill vào thư mục Claude:
mkdir -p ~/.claude/skills && cp -r /tmp/ios-simulator-skill/skills/ios-simulator-skill ~/.claude/skills/ - Chạy kiểm tra môi trường:
bash ~/.claude/skills/ios-simulator-skill/scripts/sim_health_check.sh - Khởi động lại Claude Code và thử yêu cầu "mở app trên iOS Simulator" để skill tự kích hoạt.
- Nếu tap/gõ phím không có tác dụng:
brew upgrade facebook/fb/idb-cli facebook/fb/idb-companion && idb kill.
Xem mã nguồn trên GitHub ↗Giấy phép: MIT