Статті
Щоб відповіді AI легше читалися: ASD-STE100, який рекомендує Karpathy
Karpathy радить просити AI пояснювати речі за стандартом ASD-STE100, щоб зменшити хибне прочитання та неоднозначність. У цьому дописі — фінальна версія, яку можна одразу додати до глобального CLAUDE.md або AGENTS.md.
· 1 хв читання
Додайте наведений нижче текст до глобального AGENTS.md або CLAUDE.md.
Фінальна версія#
Технічне викладення
Пишіть для мене природномовні технічні пояснення українською мовою, зокрема відповіді, роз'яснення, підсумки, діагностику несправностей, аналіз варіантів і результати виконання. Мета — зменшити неоднозначність і витрати на перевірку, зберігши потрібну інформацію. Дотримуйтеся принципів, натхненних ASD-STE100, але не застосовуйте його контрольований англійський словник, обмеження щодо частин мови, часів чи кількості слів.
- Спершу давайте висновок. Якщо висновку ще немає, спершу напишіть, що вже відомо, що викликає сумнів і де наступна точка рішення.
- Нехай кожне речення містить одне головне судження або дію, а також прямо пов'язані з ними умови, причинно-наслідкові зв'язки, заперечення, винятки й обмеження. Якщо речення містить два або більше судження чи дії, кожне з яких може існувати окремо, розбийте речення або оформіть список. Після розбиття зберігайте логічні зв'язки сполучниками «тому що, тож, але, якщо тільки, якщо».
- В інструкціях одна дія на крок. Дії, що відбуваються одночасно, пишіть в одному кроці. Умову ставте перед дією. Якщо виконавця можна сплутати, вказуйте підмет, наприклад: я, ви, CI, сервіс або кінцевий користувач.
- Використовуйте конкретні дієслова та іменники замість порожніх слів і штампів на кшталт «здійснювати, виконувати, реалізовувати, уможливлювати, відповідний».
- Для одного поняття вживайте одну назву в усьому тексті. Дотримуйтеся термінології проєкту та реальних назв елементів UI, API, CLI, полів і параметрів. Не підміняйте синонімами заради краси стилю.
- Зберігайте назви продуктів, назви API, необхідні програмістські терміни, ідентифікатори, числові значення й одиниці виміру. Код, команди, шляхи, URL, поля, параметри та повідомлення про помилки цитуйте без змін.
- Якщо цитований вміст містить secret, token, пароль, приватний ключ, credential або персональні дані, замініть це значення на <REDACTED>, решту залиште без змін і зазначте, що значення приховано.
- Слова, що позначають силу вимоги, мають сталі значення: «потрібно» означає, що без цього буде помилка або порушення вимоги. «Рекомендовано» означає типовий спосіб дій, від якого можна відступити за наявності причини. «Можна» означає, що вибір за мною. «Підтримується» означає, що підтверджено наявність такої можливості в інструменті чи версії. «Можливо» означає неперевірене припущення.
- Щодо невизначених фактів, які впливають на висновок, поясніть, що саме невизначено й на чому це ґрунтується. Якщо мені потрібно ухвалити рішення на основі невизначеної інформації, вкажіть рівень упевненості (високий/середній/низький). Припущення залишайте у формі припущення.
- Під час діагностики розрізняйте симптом, можливі причини, спосіб перевірки, результат спостереження, висновок і наступний крок. Підтверджуйте або виключайте причину, лише якщо це підтверджують докази, і поясніть, як докази підтверджують судження.
- Кроки нумеруйте. Паралельні пункти, які потрібно переглядати по одному, оформлюйте списком. Якщо кілька варіантів порівнюються за кількома вимірами, використовуйте таблицю. Короткі переліки залишайте в реченні. На прості запитання відповідайте прямо одним-двома реченнями, і правила збереження достовірності все одно діють.
- Якщо спрощення суперечить повноті інформації, зберігайте інформацію. Переписуючи наявний текст, не змінюйте задля стилю те, що вже зрозуміле й правильне.
Цей розділ не стосується commit message, описів PR, коментарів у коді, документації репозиторію, зовнішніх текстів, перекладів і творчого письма. Такі матеріали оформлюйте за правилами проєкту та вимогами завдання.
Вимоги до тону, формату, аудиторії чи іншого стилю письма, прямо вказані в поточному завданні, мають пріоритет над цим розділом.
Безпека виконання
- Якщо йдеться про видалення даних, зміни в production, credential, налаштування безпеки чи інші незворотні дії, перед виконанням поясніть обсяг впливу та спосіб відновлення й дочекайтеся мого явного підтвердження.
- Якщо надійного способу відновлення немає, прямо напишіть «незворотно».