Testing & Security
QA, penetration testing, and code quality.
playwright
Playwright E2E testing patterns. Trigger: When writing E2E tests - Page Objects, selectors, MCP workflow.
spec-bugfix-verify
Bugfix verification phase - tests, quality checks, fix confirmation
spec-verify
Spec verification phase - tests, execution, rules audit, code review
deep-review
Sub-agent powered code reviews spanning correctness, tests, consistency, and fit
e2e
Write, run, and debug end-to-end tests for rtp2httpd. ALWAYS use this skill when the user: (1) wants to write new e2e/integration tests or add test cases to existing test files, (2) asks to run tests (e.g. "跑测试", "run tests", "run pytest", mentions run-e2e.sh or uv), (3) needs to debug failing or hanging tests (timeout, assertion errors, import errors), (4) mentions ANY file under e2e/ (test_*.py, conftest.py, helpers/*, run-e2e.sh), (5) mentions mock servers (MockRTSP*, MockHTTP*, MockFCC*, MockSTUN*), R2HProcess, or test fixtures, (6) asks about test infrastructure (markers, fixtures, scope, multicast setup, port allocation), (7) mentions "端到端测试", "e2e test", "integration test" in the context of rtp2httpd. This skill contains the complete helper API reference, test patterns, and conventions — without it the agent must read many files to discover what the skill provides instantly.
code-review
A skill for reviewing Android code before it is pushed to production.
write-e2e-tests
Use when writing or modifying end-to-end tests in the Alkaa project — triggers on tasks like "add an E2E test", "write a flow test", "test this feature end-to-end", "add a test to shared module", or "cover this user journey with a test".
write-ui-tests
Use when writing or modifying UI/Compose instrumented tests in the Alkaa project — triggers on tasks like "add a UI test", "test this composable", "add instrumented test", "test this screen behavior".
write-unit-tests
Use when writing or modifying unit tests in the Alkaa project — triggers on tasks like "add a test", "write tests for X", "test this ViewModel", "cover this use case with tests", or "add unit test coverage".
django-add-form
Steps for creating or modifying Django forms and adding validation
update-vettedpositions
Update .vettedpositions after harmless line-number moves in goanalysis output.
add-go-test
Write or extend Go unit tests in this repo. Use when the user asks to add or update Go tests.
write-e2e-test
Write end-to-end (e2e) tests for authgear-server. Use when the user asks to write, add, or create e2e tests. The tests live in e2e/tests/ and are YAML-driven.
openakita-skills-code-review
Review code changes for correctness, security, and maintainability. Supports local git diffs (staged or working tree) and remote Pull Requests (by ID or URL). Use when the user asks to review code, check a PR, audit changes, or wants feedback on code quality before merging.
obra-superpowers-receiving-code-review
Use when receiving code review feedback, before implementing suggestions, especially if feedback seems unclear or technically questionable - requires technical rigor and verification, not performative agreement or blind implementation
obra-superpowers-requesting-code-review
Use when completing tasks, implementing major features, or before merging to verify work meets requirements
obra-superpowers-test-driven-development
Use when implementing any feature or bugfix, before writing implementation code
obra-superpowers-verification-before-completion
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
obra-superpowers-writing-plans
Use when you have a spec or requirements for a multi-step task, before touching code
browser-click
Click page elements by CSS selector or text content. When you need to click buttons, links, or select options. PREREQUISITE - must use browser_navigate to open target page first.
browser-open
Launch browser or check its status. Returns current state (is_open, url, title, tab_count). If already running, returns status without restarting. Auto-handles everything - no need to call browser_status first.