StatusRivet
Продукт

Завдання x64-відлагодження: від журналу збою до протестованого виправлення

01

StatusRivet — це AI-агент для Windows 10/11, який працює поруч із вашим власним x64-відлагоджувачем. Крок за кроком залишається вашим. Він запускає команди збірки та тестування, читає журнали та стеки викликів, які ви зберігаєте, шукає у вихідному коді та показує кожне запропоноване виправлення у вигляді diff.

01

Запускає реальні інструменти

Кожна дія відображається в чаті як картка з реальним результатом, і ви можете розгорнути будь-яку картку для перегляду повного виводу.

02

Редагування через diff

edit_file змінює файл і показує diff, тому ви бачите, які саме рядки змінюються, перш ніж прийняти зміни.

03

Ключі залишаються локальними

Чати, робочі папки та API-ключі залишаються на вашому ПК; запити надходять лише до кінцевої точки моделі, яку ви обрали.

Що вміє StatusRivet

Відлагоджуйте власне ПЗ на лабораторних машинах

StatusRivet призначений для ПЗ, яке ви написали або маєте право відлагоджувати, на лабораторній або тестовій машині. Агент виконує повторювані кроки: читання журналів, пошук у вихідному коді та повторний запуск збірки, а ви читаєте кожен diff перед тим, як застосувати його.

Чотири завдання відлагодження крок за кроком

Прочитати стек викликів при збої

Завдання: ваша власна програма завершилася збоєм на тестовій машині, і у вас є стек викликів, який ваш x64-відлагоджувач зберіг у текстовому форматі. read_file завантажує stack.txt, а grep шукає код винятку в журналі, наприклад 0xC0000005 для порушення доступу. Агент перелічує верхні кадри потоку, що збився, і відкриває файл вихідного коду, який відповідає першому кадру. Кожна дія відображається в чаті як картка, і ви можете розгорнути картку, щоб прочитати повний вивід. Якщо при завантаженні BSOD залишається запис про помилку ядра 41 у журналі подій, дамп, створений у той час, якщо він є, містить необхідний стан. Починайте зверху. Прочитайте кадри самостійно, оскільки агент працює з текстовим виводом, а потім прийміть або відхиліть запропонований diff у режимі Ask first.

Виправити переповнення стеку

Завдання: журнал показує 0xC00000FD, код винятку для переповнення стеку, і ви хочете знайти функцію, яка зациклилася. grep шукає у вихідному коді назву функції з верхніх кадрів, а read_file відкриває її, щоб агент міг побачити, як закінчується рекурсія. edit_file пропонує мінімальний diff, наприклад, відсутню умову зупинки, і показує рівно, які рядки змінюються. Shell потім запускає вашу команду збірки та команду тестування, і кожна картка повідомляє реальний код виходу. BSOD із кодом зупинки керування пам’яттю — це інша помилка, але метод той самий: знайдіть виняток, прочитайте стек, тестуйте одну зміну за раз. Зберігайте кожну зміну невеликою. Огляньте diff і результат тесту, перш ніж щось застосувати, і запустіть тест ще раз після остаточного редагування.

Перевірити налаштування JIT-відлагодження

Завдання: перш ніж покладатися на відлагоджувач під час збою, перевірте значення JIT-відлагодження на тестовій машині. JIT означає just-in-time: Windows автоматично запускає відлагоджувач, коли програма завершується збоєм, і це системне налаштування. Shell виконує надану вам команду для читання поточного значення, а write_file зберігає це значення у settings-before.txt, щоб старе значення було записано. Змінюйте його лише на тестовій машині, ніколи на вашому повсякденному ПК, і відновіть збережене значення після цього. У режимі Ask first агент робить паузу перед кожною дією, що змінює щось, тому ви окремо затверджуєте зміну та відновлення. Запишіть значення. Прочитайте збережений файл перед початком і прочитайте його знову перед відновленням значення.

Відлагоджувати драйвер на лабораторній цілі

Завдання: драйвер, який ви написали, викликає збій на тестовій цілі, і вам потрібна функція, що викликала помилку. Робота на рівні ядра зазвичай вимагає двох машин або віртуальної машини: одна з відлагоджувачем, інша як тестова ціль, з’єднані кабелем відлагоджування, а ціль залишається в лабораторії. Shell виконує команди через SSH на лабораторній машині, якою ви володієте, read_file читає текст, який зберіг відлагоджувач, а grep зіставляє назву модуля з вашим вихідним кодом. На новому комп’ютері порушення watchdog DPC BSOD може виникнути через драйвер, який ви пишете, тому стек застряглого потоку — це перше, що потрібно прочитати. Тримайте це в лабораторії. Ви переглядаєте кожне знаходження, перш ніж змінити рядок, і запускаєте тест на цілі знову після цього.

Чого StatusRivet не робить

StatusRivet — це не хмарний сервіс і не плагін для іншої програми. Він працює на вашому ПК. Він призначений лише для ваших власних файлів, вашого ПК та серверів, яким ви маєте право користуватися, і ви тримаєте роботу всередині них: Shell, веб та SSH не обмежені однією папкою. Він не може гарантувати, що код або аналіз є правильними, тому кожен результат потребує вашого власного перегляду та власного запуску тестування.

StatusRivet для Windows

Почніть зі збою, який можна відтворити

Завантажити StatusRivet ↗