Trang 6.2: Sử dụng các script kiểm tra tổng thể ( checklist.py & verify_all.py ).
1. Tổng quan
Antigravity Kit cung cấp 2 script Python tổng thể (master scripts) trong thư mục .agent/scripts/. Chúng điều phối toàn bộ bộ script con từ các Skills để thực hiện kiểm tra chất lượng dự án một cách có hệ thống.
| Script | Mục đích | Khi nào dùng |
|---|---|---|
checklist.py |
Kiểm tra nhanh theo thứ tự ưu tiên | Hàng ngày, trước commit |
verify_all.py |
Kiểm tra toàn diện bao gồm E2E và performance | Trước khi release production |
2. checklist.py — Kiểm tra hàng ngày
Cú pháp
bash
# Kiểm tra cơ bản
python .agent/scripts/checklist.py .
# Kiểm tra đầy đủ kèm performance (cần server đang chạy)
python .agent/scripts/checklist.py . --url http://localhost:3000
Thứ tự ưu tiên kiểm tra (P0 → P6)
| Mức | Tên | Công cụ | Dừng nếu lỗi? |
|---|---|---|---|
| P0 | Security Scan | security_scan.py |
✅ Có — Critical |
| P1 | Lint & Type Check | lint_runner.py |
✅ Có — Critical |
| P2 | Schema Validation | schema_validator.py |
❌ Không |
| P3 | Test Runner | test_runner.py |
❌ Không |
| P4 | UX Audit | ux_audit.py + accessibility_checker.py |
❌ Không |
| P5 | SEO Check | seo_checker.py |
❌ Không |
| P6 | Performance | lighthouse_audit.py |
❌ Không (cần URL) |
Logic dừng sớm: Nếu P0 (Security) hoặc P1 (Lint) thất bại, toàn bộ checklist dừng ngay và báo lỗi. Bạn phải sửa các vấn đề Critical trước khi các bước tiếp theo có ý nghĩa.
Ví dụ kết quả
============================================================
🚀 ANTIGRAVITY KIT - MASTER CHECKLIST
============================================================
Project: /path/to/my-project
============================================================
📋 CORE CHECKS
============================================================
🔄 Running: Security Scan
✅ Security Scan: PASSED
🔄 Running: Lint Check
✅ Lint Check: PASSED
🔄 Running: Schema Validation
⏭️ Schema Validation: Script not found, skipping
🔄 Running: Test Runner
✅ Test Runner: PASSED
🔄 Running: UX Audit
✅ UX Audit: PASSED
🔄 Running: SEO Check
⚠️ SEO Check: FAILED
Error: Missing meta description on 3 pages
============================================================
📊 CHECKLIST SUMMARY
============================================================
Total Checks: 6
✅ Passed: 4
❌ Failed: 1
⏭️ Skipped: 1
❌ SEO Check
✅ Security Scan
✅ Lint Check
✅ Test Runner
✅ UX Audit
1 check(s) FAILED - Please fix before proceeding
3. verify_all.py — Kiểm tra toàn diện trước production
Cú pháp
bash
# Cần cung cấp URL của server đang chạy
python .agent/scripts/verify_all.py . --url http://localhost:3000
Kiểm tra thêm so với checklist.py
| Kiểm tra thêm | Công cụ | Mục đích |
|---|---|---|
| Lighthouse Audit | lighthouse_audit.py |
Score Core Web Vitals (LCP, CLS, INP) |
| Playwright E2E | playwright_runner.py |
Kiểm thử end-to-end trên trình duyệt thật |
| Bundle Analysis | bundle_analyzer.py |
Phân tích kích thước bundle JS/CSS |
| Mobile Audit | mobile_audit.py |
Kiểm tra responsive + touch targets |
| i18n Check | (nếu có) | Kiểm tra hardcoded strings |
Yêu cầu trước khi chạy verify_all.py
- ✅ Server phải đang chạy (chạy
/preview starttrước). - ✅ Playwright phải được cài:
npx playwright install. - ✅ Chromium hoặc Chrome phải có sẵn trên máy.
4. Khi nào dùng script nào?
Đang phát triển hàng ngày:
→ python .agent/scripts/checklist.py .
→ Nhanh, dừng sớm khi có lỗi critical
Trước khi tạo Pull Request:
→ python .agent/scripts/checklist.py .
→ Đảm bảo không có Security/Lint issues
Trước khi merge vào main:
→ python .agent/scripts/checklist.py . --url http://localhost:3000
→ Bao gồm cả performance check
Trước khi release lên production:
→ python .agent/scripts/verify_all.py . --url http://localhost:3000
→ Kiểm tra toàn diện kể cả E2E và Lighthouse
5. Tích hợp vào CI/CD
GitHub Actions
yaml
name: Quality Check
on: [push, pull_request]
jobs:
quality:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '20'
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.11'
- name: Install dependencies
run: npm ci
- name: Run Antigravity Checklist
run: python .agent/scripts/checklist.py .
# Deploy chỉ chạy khi checklist pass
- name: Deploy
if: success() && github.ref == 'refs/heads/main'
run: npm run deploy
6. Chạy script con riêng lẻ
Ngoài 2 master scripts, bạn cũng có thể chạy từng script con riêng lẻ khi cần:
bash
# Chỉ quét bảo mật
python .agent/skills/vulnerability-scanner/scripts/security_scan.py .
# Chỉ kiểm tra UX
python .agent/skills/frontend-design/scripts/ux_audit.py .
# Chỉ chạy Lighthouse
python .agent/skills/performance-profiling/scripts/lighthouse_audit.py . http://localhost:3000
# Chỉ kiểm tra SEO
python .agent/skills/seo-fundamentals/scripts/seo_checker.py .
7. Kích hoạt từ lệnh chat
Bạn không cần nhớ đường dẫn script. Chỉ cần nói với AI:
"final checks" → AI chạy checklist.py tự động
"son kontrolleri yap" → (Tiếng Thổ) Cũng kích hoạt checklist
"chạy tất cả test" → AI chạy checklist.py
"kiểm tra trước khi deploy" → AI chạy verify_all.py (với URL)
AI được cấu hình để nhận diện các từ khóa này và tự động chạy đúng script cho bạn.
8. Bảng tổng hợp toàn bộ 12 Scripts
| Script | Skill | Khi nào dùng |
|---|---|---|
security_scan.py |
vulnerability-scanner | Mỗi lần deploy |
dependency_analyzer.py |
vulnerability-scanner | Hàng tuần / Mỗi lần deploy |
lint_runner.py |
lint-and-validate | Mỗi lần thay đổi code |
test_runner.py |
testing-patterns | Sau khi thay đổi logic |
schema_validator.py |
database-design | Sau khi thay đổi DB schema |
ux_audit.py |
frontend-design | Sau khi thay đổi UI |
accessibility_checker.py |
frontend-design | Sau khi thay đổi UI |
seo_checker.py |
seo-fundamentals | Sau khi thay đổi trang |
bundle_analyzer.py |
performance-profiling | Trước khi deploy |
mobile_audit.py |
mobile-design | Sau khi thay đổi mobile UI |
lighthouse_audit.py |
performance-profiling | Trước khi deploy |
playwright_runner.py |
webapp-testing | Trước khi deploy |
Ghi nhớ:
checklist.pyvàverify_all.pyđiều phối tất cả các scripts trên theo đúng thứ tự ưu tiên. Trong hầu hết các trường hợp, bạn chỉ cần gọi 2 master scripts và không cần chạy từng cái riêng lẻ.
Không có bình luận nào để hiển thị
Không có bình luận nào để hiển thị