Pluginowy zestaw narzędzi Claude Code dla zespołów Mobile/Web QA — skills, subagenty, hooki i MCP w jednym pakiecie.
| Skill | Opis |
|---|---|
redact-pii |
Maskuje dane osobowe (PESEL, email, numery telefonów, adresy) w logach przed wklejeniem do ticketu lub Slacka |
parse-grid-failure |
Parsuje fail z BrowserStack/Sauce Labs/Selenium Grid i wyciąga: stack trace, kroki repro, urządzenie, sesję |
flake-triage |
Klasyfikuje czy fail jest flakiem (timing, sieć, env) czy realnym bugiem; sugeruje retry vs investigate |
mr-summary-pl |
Generuje polskie podsumowanie MR/PR pod review: zakres zmian, ryzyka, sugerowane testy regresyjne |
| Agent | Opis |
|---|---|
sentinel |
Code review pod kątem QA — sprawdza testowalność, accessibility-id, brak XPath, retry policy |
healer |
Auto-naprawa flaków — analizuje historię, proponuje konkretne poprawki w kodzie testów |
triage |
Pierwsza linia segregacji failów: bug vs flake vs env, przypisanie ownerstwa |
device-matrix |
Walidacja cross-device — sprawdza czy testy obejmują wymagane urządzenia/wersje OS |
| Hook | Trigger | Opis |
|---|---|---|
block-force-push.sh |
PreToolUse na git push --force |
Blokuje force-push do gałęzi chronionych (main, release/*) |
pii-scan.sh |
UserPromptSubmit |
Skanuje prompt na PESEL/email/telefon zanim trafi do modelu |
audit-edit.sh |
PostToolUse na Edit|Write|MultiEdit |
Loguje wszystkie edycje plików do .audit/edits.jsonl |
notify-on-failed-test.sh |
Stop |
Wysyła powiadomienie do Slacka jeśli ostatni test failed |
Szczegóły konfiguracji i wymagania — patrz hooks/README.md.
Pakiet konfiguruje cztery serwery MCP dla zespołu QA:
- BrowserStack — pobieranie sesji, screenshotów, video z failów
- Jira/Linear — tworzenie i aktualizacja ticketów bezpośrednio z chatu
- GitLab/GitHub — czytanie diffów MR/PR, dodawanie review comments
- Filesystem — bezpieczny dostęp do logów testowych w lokalnym
~/qa-logs/
Szczegóły, klucze i format .env — patrz mcp/README.md.
| Command | Opis |
|---|---|
/new-spec <TICKET-ID> |
Generuje szablon WDIO/Appium spec z happy path + edge case + timeout, accessibility-id only |
# w sesji Claude Code
/plugin marketplace add Rabusek/qa-mobile-pack
/plugin install qa-mobile-pack@Rabusekgit clone https://github.com/Rabusek/qa-mobile-pack ~/qa-mobile-pack
claude --plugin-dir ~/qa-mobile-packAlbo na stałe — dodaj wpis do ~/.claude/settings.json:
{
"enabledPlugins": {
"qa-mobile-pack@local": true
},
"extraKnownMarketplaces": {
"local": {
"source": { "source": "local", "path": "/Users/<ty>/qa-mobile-pack" }
}
}
}Dla użytkowników na starszych wersjach Claude Code lub w środowiskach gdzie nie można korzystać z /plugin install:
git clone https://github.com/Rabusek/qa-mobile-pack
cd qa-mobile-pack
./install.shSkrypt linkuje skills/*, agents/*, commands/* do ~/.claude/ i dopisuje hooki do ~/.claude/settings.json. Idempotentny — można odpalać wielokrotnie.
- Claude Code 2.x lub nowszy (ze wsparciem
/plugin install) - bash 4+ (hooki używają nowoczesnej składni)
- jq — parser JSON używany w hookach i
install.sh - Zmienne środowiskowe (zobacz
mcp/.env.example):SLACK_WEBHOOK_URL— dlanotify-on-failed-test.shBROWSERSTACK_USERNAME,BROWSERSTACK_ACCESS_KEY— dla MCP BrowserStackJIRA_TOKENlubLINEAR_API_KEY— dla MCP ticketówGITLAB_TOKENlubGITHUB_TOKEN— dla MCP review
/redact-pii
[wklej log z prawdziwym PESEL i emailem]
→ Skill zwróci log z <PESEL_REDACTED>, <EMAIL_REDACTED>. Bezpieczne do wklejenia.
/parse-grid-failure
[wklej output z https://automate.browserstack.com/dashboard/...]
→ Dostajesz strukturyzowany raport: stack trace, urządzenie, kroki repro, link do video sesji.
@sentinel zreview ten MR: https://gitlab.com/<org>/<repo>/-/merge_requests/123
→ Subagent sentinel używa MCP GitLab, czyta diff, raportuje problemy QA i sugeruje testy regresyjne.
| Prymityw | Sztuk | Lokalizacja |
|---|---|---|
| Skills | 4 | skills/*/SKILL.md |
| Subagenty | 4 | agents/*.md |
| Hooki | 4 | hooks/*.sh (wpięcie w hooks/hooks.json) |
| MCP servery | 4 | mcp/.mcp.json |
| Slash commands | 1 | commands/new-spec.md |
Cała konfiguracja jest deklaratywna — ${CLAUDE_PLUGIN_ROOT} rozwiązuje się do katalogu pluginu, więc plugin działa identycznie po git clone, --plugin-dir i instalacji z marketplace.
hooks/README.md— opis każdego hooka, exit codes, środowiskomcp/README.md— konfiguracja MCP, format.env, troubleshooting- Każdy skill/agent ma własny opis w nagłówku pliku
PR-y mile widziane. Zasady:
- Conventional Commits (
feat:,fix:,chore:,docs:,test:) - Brak prawdziwych PII w fixturach i przykładach — zawsze syntetyczne dane
- Polski w komentarzach i dokumentacji użytkownika; angielski w polach manifestu (
name,description,keywords) bash -n hooks/*.shmusi przejść (hooki są walidowane w CI)jq . hooks/hooks.json mcp/.mcp.json .claude-plugin/plugin.jsonmusi przejść
Issue lub MR: https://github.com/Rabusek/qa-mobile-pack/issues
MIT — patrz LICENSE.