Когда это нужноWhen to reach for itКоли це потрібно
После /quick, /fix или /spec-dev, чтобы рано поймать тривиальную поломку, или когда утверждение о поведении нужно подтвердить запуском.After /quick, /fix or /spec-dev, to catch a trivial breakage early, or whenever a claim about behaviour needs proof by running it.Після /quick, /fix або /spec-dev, щоб рано впіймати тривіальну поломку, або коли твердження про поведінку треба підтвердити запуском.
ТребованияRequirementsВимоги
- Где доступноAvailable inДе доступно
- Каждая загрузка kitEvery download of the kitКожне завантаження kit
- К чему обращаетсяWhat it touchesДо чого звертається
- Читает файлы проектаReads the files of your projectЧитає файли проєкту
- Правит файлы проектаEdits files in your projectЗмінює файли проєкту
- Запускает команды (проверки, git)Runs commands (checks, git)Запускає команди (перевірки, git)
- Работает сWorks withПрацює з
- Сделано для Claude Code; другие агенты адаптируютBuilt for Claude Code; other agents adapt itЗроблено для Claude Code; інші агенти адаптують
- Где выполняются шагиWhere the steps happenДе виконуються кроки
- Чат вашего агента и ваши собственные файлы. Ни то ни другое не интерфейс этого сайта, поэтому шаги описаны текстом, а не скриншотами.Your agent's chat and your own files. Neither is an interface of this site, so the steps are text and not screenshots.Чат вашого агента і ваші власні файли. Ні те, ні інше не є інтерфейсом цього сайту, тому кроки описано текстом, а не скриншотами.
- Где это лежит в kitWhere it lives in the kitДе це лежить у kit
.claude/skills/prove/SKILL.md
Прохождением считается только PASS. COULD NOT VERIFY значит, что цель или инструмент были недоступны, а NOT APPLICABLE - что в заданной конфигурации нет исполняемого сценария, как при --dry-run; ни то ни другое ничего не доказывает. DEFECT ставится только после осмотра цели и найденного невыполненного ожидания, а дальше идут /fix или /spec-fix.Only PASS is a pass. COULD NOT VERIFY means the target or the instrument was out of reach, and NOT APPLICABLE means the requested configuration has no executable scenario, as with --dry-run; neither proves anything. DEFECT is used only after the target was inspected and an expectation failed, and the next step is /fix or /spec-fix.Проходженням вважається лише PASS. COULD NOT VERIFY означає, що ціль або інструмент були недоступні, а NOT APPLICABLE - що в заданій конфігурації немає виконуваного сценарію, як при --dry-run; ні те, ні інше нічого не доводить. DEFECT ставиться лише після огляду цілі та знайденого невиконаного очікування, а далі йдуть /fix або /spec-fix.
ШагиStepsКроки
- Выберите форму вызова.
/proveбез аргументов - дымовой прогон по умолчанию: запустить цель (через<RUN_CMD>, если он есть), пройти основной сценарий, просмотреть логи на ошибки./prove <free text>берёт ваш текст как сценарий./prove <ticket-id>читает критерии приёмки тикета как подсказки и тикет не правит.--buildпересобирает перед запуском (по умолчанию сборка пропускается);--dry-runпишет сценарий и ничего не запускает.Pick the form./provealone is a default smoke: start the target (with<RUN_CMD>where there is one), run the basic happy path, scan logs for errors./prove <free text>takes your text as the scenario./prove <ticket-id>reads the ticket's acceptance criteria as hints and does not edit the ticket.--buildrebuilds first (the default is to skip the build);--dry-runwrites the scenario and runs nothing.Виберіть форму виклику./proveбез аргументів - димовий прогін за замовчуванням: запустити ціль (через<RUN_CMD>, якщо він є), пройти основний сценарій, переглянути логи на помилки./prove <free text>бере ваш текст як сценарій./prove <ticket-id>читає критерії приймання тікета як підказки й тікет не править.--buildперезбирає перед запуском (за замовчуванням збірка пропускається);--dry-runпише сценарій і нічого не запускає. - Агент проверяет, что цель запуска доступна: сервер поднят, устройство в сети, бинарник на месте. Если нет, он сообщает
COULD NOT VERIFYс причиной и останавливается. Изображать успех он не станет.The agent confirms the run target is reachable: server up, device online, binary present. If not, it reportsCOULD NOT VERIFYwith the blocker and stops. It does not fake a pass.Агент перевіряє, що ціль запуску доступна: сервер піднято, пристрій у мережі, бінарник на місці. Якщо ні, він повідомляєCOULD NOT VERIFYз причиною й зупиняється. Вдавати успіх він не стане. - Только с
--build: он выполняет команду сборки проекта или то, что у проекта служит шагом получения результата - рендер, экспорт, прогон конвейера. При сбое он сохраняет хвост вывода в<SCRATCH_DIR>/prove_<TS>.md, сообщаетDEFECTи прерывается.With--buildonly, it runs the project's build command, or whatever its produce step is: a render, an export, a pipeline run. On failure it saves the tail of the output to<SCRATCH_DIR>/prove_<TS>.md, reportsDEFECTand aborts.Лише з--build: він виконує команду збірки проєкту або те, що в проєкті править за крок отримання результату - рендер, експорт, прогін конвеєра. У разі збою він зберігає хвіст виводу в<SCRATCH_DIR>/prove_<TS>.md, повідомляєDEFECTі перривається. - Он пишет
<SCRATCH_DIR>/prove_<TS>.md: заголовок (цель, версия, окружение) и упорядоченный сценарий из 1-5 шагов, у каждого цель, действие, ожидаемый наблюдаемый результат и по желанию ожидаемая строка лога. Источники по приоритету: ваш текст, критерии приёмки тикета, дымовой прогон.It writes<SCRATCH_DIR>/prove_<TS>.md: a header (target, version, environment) and an ordered scenario of 1 to 5 steps, each with a goal, an action, the expected observable result and optionally an expected log line. Sources, in priority: your text, the ticket's acceptance criteria, the default smoke.Він пише<SCRATCH_DIR>/prove_<TS>.md: заголовок (ціль, версія, середовище) і впорядкований сценарій із 1-5 кроків, у кожного ціль, дія, очікуваний спостережуваний результат і за бажання очікуваний рядок логу. Джерела за пріоритетом: ваш текст, критерії приймання тікета, димовий прогін. - С
--dry-runон останавливается после сценария и сообщаетNOT APPLICABLE - dry run requested; no scenario was executedи путь к файлу.With--dry-runit stops after the scenario and reportsNOT APPLICABLE - dry run requested; no scenario was executed, plus the path of the file.З--dry-runвін зупиняється після сценарію й повідомляєNOT APPLICABLE - dry run requested; no scenario was executedта шлях до файлу. - Иначе он включает перехват логов и stdout, запоминает время старта и выполняет шаги: действие, свидетельство (снимок экрана, ответ или stdout), сверка с ожидаемым, строка в таблицу журнала прогона. При падении или фатальной ошибке он снимает стек, записывает
DEFECTи останавливает прогон.Otherwise it starts log and stdout capture, records the start time and runs each step: perform the action, capture evidence (screenshot, response or stdout), check the expected result, append a row to the run-log table. On a crash or fatal error it captures the stack, recordsDEFECTand stops the run.Інакше він вмикає перехоплення логів і stdout, запам'ятовує час старту й виконує кроки: дія, свідчення (знімок екрана, відповідь або stdout), звірка з очікуваним, рядок до таблиці журналу прогону. У разі падіння чи фатальної помилки він знімає стек, записуєDEFECTі зупиняє прогін. - Он просматривает перехваченные логи на строки уровня error и исключения. Для тикета, ожидающего ручной проверки, он ещё ищет проверочную метку тикета (
<ID>:): каждое попадание значит, что этот путь кода исполнялся. Добавляется раздел находок: счётчики по уровням и главные ошибки со ссылками.It scans the captured logs for error-level lines and exceptions. For a ticket awaiting manual test it also greps for the ticket's verification tag (<ID>:): each hit means that code path was exercised. A findings section is appended: counts per level and the top errors with references.Він переглядає перехоплені логи на рядки рівня error та винятки. Для тікета, що чекає ручної перевірки, він ще шукає перевірну мітку тікета (<ID>:): кожне влучання означає, що цей шлях коду виконувався. Додається розділ знахідок: лічильники за рівнями та головні помилки з посиланнями. - Он заканчивает одной строкой с целью и ровно одним вердиктом, например
prove: <target>, PASS N/N, log errors N, crashes K. Scenario: <SCRATCH_DIR>/prove_<TS>.md. Остальные три выглядят так:DEFECT - <failed expectation>,COULD NOT VERIFY - <blocker>иNOT APPLICABLE - <configuration reason>.It ends with one line naming the target and exactly one verdict, such asprove: <target>, PASS N/N, log errors N, crashes K. Scenario: <SCRATCH_DIR>/prove_<TS>.md. The other three readDEFECT - <failed expectation>,COULD NOT VERIFY - <blocker>andNOT APPLICABLE - <configuration reason>.Він закінчує одним рядком із ціллю та рівно одним вердиктом, наприкладprove: <target>, PASS N/N, log errors N, crashes K. Scenario: <SCRATCH_DIR>/prove_<TS>.md. Решта три виглядають так:DEFECT - <failed expectation>,COULD NOT VERIFY - <blocker>іNOT APPLICABLE - <configuration reason>.
Файл сценария prove_<TS>.md в каталоге scratch с журналом прогона и находками и одна итоговая строка: цель, вердикт и путь к этому файлу. Спеки, планы и статусы не тронуты, ничего не закоммичено.A scenario file prove_<TS>.md in the scratch directory with the run log and the findings, and one closing line with the target, the verdict and the path of that file. Specs, plans and statuses are untouched and nothing is committed.Файл сценарію prove_<TS>.md у каталозі scratch із журналом прогону та знахідками й один підсумковий рядок: ціль, вердикт і шлях до цього файлу. Спеки, плани та статуси не зачеплені, нічого не закомічено.
СоветыTipsПоради
- Метод задан, драйвер ваш. Веб-приложение гоняют в браузере или через запросы, CLI запускают с типичными аргументами, сервис поднимают и опрашивают, мобильное приложение запускают на устройстве или эмуляторе, документ рендерят и читают глазами постороннего, набор данных прогоняют на выборке и сверяют цифры с источником, процедуру выполняет по одному тексту другой человек.The kit fixes the method, the driver is yours. A web app is driven in a browser or through endpoints, a CLI is run with representative arguments, a service is started and probed, a mobile app is launched on a device or emulator, a document is rendered and read as a stranger would, a dataset is run on a sample and reconciled with its source, a procedure is followed by someone from the text alone.Метод задано, драйвер ваш. Вебзастосунок ганяють у браузері чи через запити, CLI запускають із типовими аргументами, сервіс піднімають і опитують, мобільний застосунок запускають на пристрої чи емуляторі, документ рендерять і читають очима стороннього, набір даних проганяють на вибірці й звіряють цифри з джерелом, процедуру виконує за самим текстом інша людина.
- Для тикета, который ждёт человека, PASS - свидетельство, по которому человек сам отмечает строку раздела
## Manual checks;/proveеё не отмечает никогда. Как вызывающий читает каждый вердикт и чему он соответствует в/spec-check- одна таблица вdocs/VALIDATION.md. См. лестницу проверок.For a ticket that waits on a human, a PASS is evidence for the human to tick a line of its## Manual checkssection;/provenever ticks it. How a caller reads each verdict, and how each maps to/spec-check, is one table indocs/VALIDATION.md. See the validation ladder.Для тікета, що чекає на людину, PASS - свідчення, за яким людина сама відмічає рядок розділу## Manual checks;/proveйого не відмічає ніколи. Як той, хто викликає, читає кожен вердикт і чому він відповідає в/spec-check- одна таблиця вdocs/VALIDATION.md. Див. драбину перевірок. - Огромный лог агент целиком не читает: он берёт хвост или фильтрует по уровню и называет номера строк. Элементы интерфейса он находит заново перед каждым действием, поэтому координаты не зашиты.The agent does not read a huge log whole: it tails or filters it by level and quotes line numbers. It also finds UI elements anew before each interaction, so no coordinates are hardcoded.Величезний лог агент цілком не читає: він бере хвіст або фільтрує за рівнем і називає номери рядків. Елементи інтерфейсу він знаходить заново перед кожною дією, тому координати не зашиті.
- Команда названа
/prove, а не verify, намеренно: в Claude Code есть собственная команда verify, и навык проекта с тем же именем её заменил бы. Эта - независимая от стека проверка с четырьмя вердиктами; пользуйтесь обеими.The command is named/proveand not verify on purpose: Claude Code ships its own verify command, and a project skill with the same name would replace it. This one is the stack-neutral check with four verdicts; use both.Команду названо/prove, а не verify, навмисно: у Claude Code є власна команда verify, і навичка проєкту з тією самою назвою її замінила б. Ця - незалежна від стеку перевірка з чотирма вердиктами; користуйтеся обома.
Связанные функцииRelated functionsПов'язані функції
- Внести мелкую правку без церемонийMake a one-line edit without ceremonyВнести дрібну правку без церемонійОпечатка, константа или подпись исправлены за одно предложение: без спеки и без сборки.A typo, a constant or a label changed in one sentence's worth of work: no spec, no build gate.Одруківку, константу чи підпис виправлено за одне речення: без спеки й без збірки.
- Исправить узкий баг без церемонийFix a narrow bug without ceremonyВиправити вузький баг без церемонійБаг с понятной причиной исправлен в корне: минимальная правка, одна локальная проверка, отчёт в три строки, без спеки.A bug with a known cause is fixed at the root: smallest change, one local check, a three-line report, no spec.Баг зі зрозумілою причиною виправлено в корені: мінімальна правка, одна локальна перевірка, звіт у три рядки, без спеки.
- Выполнить тактический план по одному проверенному шагуImplement a tactical plan one verified step at a timeВиконати тактичний план по одному перевіреному кроку
/spec-devидёт по плану шаг за шагом, проверяет каждый шаг до отметки о готовности и жёстко останавливается на первом сбое или неоднозначности, не угадывая./spec-devruns the plan step by step, checks each step before marking it done and hard-stops on the first failure or ambiguity instead of guessing forward./spec-devіде за планом крок за кроком, перевіряє кожен крок до позначки про готовність і жорстко зупиняється на першому збої чи неоднозначності, не вгадуючи. - Закрыть механические замечания аудита и перепроверить тикетClose the mechanical audit findings and re-audit the ticketЗакрити механічні зауваження аудиту й перевірити тікет зновуВыполняет пункты аудита, не требующие решений, остальные оставляет вам и, если что-то сдвинулось, возвращает тикет в /spec-check за новым вердиктом.Applies the audit action items that need no decision, lists the rest for you, and hands the ticket back to /spec-check for a fresh verdict once something moved.Виконує пункти аудиту, що не потребують рішень, решту лишає вам і, якщо щось зрушило, повертає тікет до /spec-check по новий вердикт.
- Доказать, что правка работает, прежде чем объявлять её готовойProve a change works before calling it doneДовести, що правка працює, перш ніж оголошувати її готовоюВозьмите самую дешёвую проверку, которая доказывает именно эту правку, запишите ожидаемое и фактическое и называйте шаг готовым, только прочитав результат.Pick the lowest check that proves this change, write down expected and actual, and call the step done only after you have read the result.Візьміть найдешевшу перевірку, що доводить саме цю правку, запишіть очікуване й фактичне та називайте крок готовим, лише прочитавши результат.