Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add akovalion/paranoid-qa --skill test-casesgit clone --depth 1 https://github.com/akovalion/paranoid-qaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/akovalion/paranoid-qa/test-cases)<a href="https://agentmods.dev/skills/akovalion/paranoid-qa/test-cases"><img src="https://agentmods.dev/badge/skills/akovalion/paranoid-qa/test-cases/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/akovalion/paranoid-qa/test-cases"><img src="https://agentmods.dev/badge/skills/akovalion/paranoid-qa/test-cases.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00076 | $0.08343 |
| Opus 5.5 | $0.00030 | $0.03337 |
| Sonnet 5.5 | $0.00015 | $0.01669 |
| Haiku 4.5 | $0.00008 | $0.00834 |
Grade A, and why
test-cases scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
• POST/PUT - `curl -i` одной строкой (без `-i` статус в выводе не виден, а ОР How it starts
The opening of the file, as written. The whole thing — 406 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Составь тест-кейсы по правилам ниже. Сначала готовь их в md-файле для валидации, затем — CSV для импорта (или прямое создание через MCP, раздел 13).
Учитывай логику требований и существующие макеты. При расхождении между макетом и реализацией — фиксируй вопросом аналитику.
-
Полнота источников и честность ограничений:
- Перед генерацией собери ВСЕ источники и держи их статус явно. В итоговом отчёте приведи таблицу источников: тикет / вложения тикета / связанные задачи / вики (Confluence) / выгрузка Figma / визуальный просмотр ВСЕХ фреймов / комментарии Figma / реализация (если есть) — по каждому: изучен | не изучен | чем заблокирован. «Не изучен» без причины и плана обхода — недопустимое состояние отчёта.
- Упёрся в ограничение инструмента (обрезанный ответ MCP, недоступный файл, упавший
субагент) — НЕ деградируй молча: сразу сообщи пользователю и предложи обход.
Типовой пример: вложения тикета через MCP трекера обрезаются по размеру ответа —
те же файлы часто лежат на связанных страницах вики, откуда их можно скачать
инструментом, сохраняющим файл на диск целиком (для Confluence —
confluence_download_attachment). - Самоотчёт субагента («прочитал всё, пропусков нет») — не доказательство: факты, на которых строятся ОР (тексты, состав полей, лейблы, ЧИСЛА — размеры, отступы, gap), перепроверяй точечно по первоисточнику (визуал фрейма, файл, живая система).
- Комментарии Figma через MCP недоступны (
get_figma_dataих не отдаёт): ДО генерации ТК явно запроси у пользователя комментарии из макета (текстом или скриншотами) — в них часто живут правки поверх макета (тексты ошибок, убранные поля, финальные формулировки). Пока комментариев нет — источник числится незакрытым, об этом сказано в отчёте. - Если скоуп задан текстом ТЗ — каждый ТК привязывай к конкретному пункту ТЗ (колонка «пункт ТЗ» в таблице покрытия). Проверка, порождённая только макетом или эвристикой, в ТК не превращается — она идёт в «Вопросы аналитику» / «наблюдения вне ТЗ». Макет — источник точных значений для пунктов ТЗ, не генератор новых проверок.
-
Формат тест-кейсов:
- Наименование — короткое и понятное (объект: суть проверки, как «Открытие календаря», «Пагинация списка»). Без URL, селекторов и технических деталей в названии (им место в шагах/objective). Не пиши в названии TC-(номер ТК).
- Задача (objective): 1-2 строки, до ~200 знаков - что проверяем и какой дефект ловим («Регресс PROJ-123»). У автоматизированного ТК второй строкой «Автотест: tests/…spec.ts». История дефекта, причины выбора данных, браузеры, состояние «на дату», что автотест не проверяет - в комментарии спека и в связанных задачах трекера, не в задаче ТК. Решение, которого нет ни в трекере, ни в коде, - одной фразой.
- Предусловия выполнения тест-кейса (если применимо)
- Шаги (максимально подробные, атомарные)
- Ожидаемый результат (указывай только после логически значимых шагов)
- Приоритет (High / Normal / Low)
- Тип (UI / Functionality / Integration — или значения, принятые в вашем проекте)
- Reference (ссылка или название макета из Figma/PDF, конкретный элемент) - если применимо
- Использовать ТОЧНЫЕ названия полей, кнопок, заголовков, плейсхолдеров как в реализации/макетах/ТЗ
- Если в макете поле называется «Кем выдан?» — писать «Кем выдан?», не «Кем выдан ДУЛ»
- Проверять: двоеточия, вопросительные знаки, регистр, пробелы в лейблах
- Если названия в требованиях и макетах расходятся — фиксировать как вопрос для аналитика
-
Шаги:
- Каждый шаг — одно действие
- Обязательно указывать: • "Кликнуть по кнопке «Название кнопки»" • "Ввести значение «…» в поле «Название поля»" • "Выбрать значение «…» из выпадающего списка «Название»" • "Навести курсор на элемент «…»" • "Открыть страницу по URL …"
- Избегай ссылок-сокращений: ❌ «аналогично», «повторить шаги», «как в предыдущем тест-кейсе», ❌ «выбрать значения согласно названию ТК» Каждый шаг должен читаться независимо от других ТК.
- Всё, что тестировщик копирует, - в Test Data шага (
testData), готовым к вставке: • GET-запрос - полной ссылкой, которая открывается в браузере. GraphQL тоже принимает GET:https://…/graphql?query=+ запрос через encodeURIComponent. Нечитаемую закодированную ссылку - коротким текстом ссылки («GraphQL - поля элемента 123»), полный URL только в href; • POST/PUT -curl -iодной строкой (без-iстатус в выводе не виден, а ОР его требует): полный URL, нужные заголовки, тело (-Fдля multipart,--form-stringдля JSON-строки в поле multipart,-H 'Content-Type: application/json' -d '…'для JSON); уникальный email - через$(date +%s)прямо в curl; цепочку запросов - через переменную в том же терминале; граничную длину - черезprintf('$(printf '%0101d' 0 | tr 0 A)'- 101 буква A), а не рядом из 101 символа: такой ряд ошибается на единицу при переносе, а граница перестаёт проверяться; • значения полей формы - строками «Поле: значение» через<br />; • сниппет для Console DevTools - одной строкой, его результат - в ОР. Тяжёлый ответ или проверка по всему списку - сниппет на открытой ссылке, который сам выдаёт итог:fetch(location.href).then(r=>r.json()).then(d=>…). В description остаётся действие: «Отправить запрос из Test Data в терминале», «Открыть ссылку из Test Data, найти code из шага 1 (Ctrl+F)». Запрос, пересказанный прозой («POST … с телом: userName 'Тест', …»), и запрос без самого запроса («запросить в GraphQL элемент») запрещены. - Заполнение формы набором значений из Test Data - один шаг. Отдельные шаги «Выбрать регион», «Отметить чекбокс» с ОР «Регион выбран» не плодить.
- Запрос или отправка формы создаёт реальную запись на проде (заявка, обращение, письмо, событие) - одна строка в предусловии: «PROD. Запрос создаёт реальную заявку в CRM.»
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago Changed · +56 lines 2b070325a0b2
- 5d ago Changed · +2 lines c23ccc80ae4a
- 22d ago Changed 144e308db024
- 1mo ago Changed · +9 lines 025f9f662dd4
- 1mo ago First seen · 339 lines · 76 tokens per session scan A e6b5aec64b4d
test-cases is a skill published in the GitHub repository akovalion/paranoid-qa (16 stars, last pushed 3d ago), licensed MIT. It adds 76 tokens to every session and 8,343 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
mk:qa
Systematically QA test a web application and fix bugs found. Runs QA testing, then iteratively fixes bugs in source code, committing each fix atomically and re-verifying. Use when asked to "qa", "QA", "test this site", "find bugs", "test and fix", or "fix what's broken". Proactively suggest when the user says a…
qa-testing
Run QA testing on a page, feature, or full site at one of three depth tiers (smoke, standard, full). Use this skill whenever the user asks to QA a page or site, run a smoke test after a deploy, verify a page before launch, or run a regression sweep. Triggers on QA, QA sweep, smoke test, regression test, post-deploy…
qawolf-cli
Manage QA Wolf through the qawolf CLI. Use when asked to create, update, or list coverage requests, bug reports, or maintenance reports; start a run of flows or tags on the QA Wolf platform or read a run's results; list, set, or delete environment variables; manage environments, flows, or tags; run or list flows…
automated-e2e-testing
A workflow for turning manual web-app test cases into Playwright end-to-end tests and running them. End-to-end tests check a complete user flow through the website.
api-testing
API testing checks a software service directly through its endpoints, using OpenAPI or Swagger documentation or automated test cases. It can produce and run scripts that test requests and responses.
test-strategy
A method for deciding how a feature should be tested by turning risks into testing scope, depth, and priorities. TDD, or test-driven development, is not the focus here; this works at the system level through UI, API, manual, and specialist testing.