- name
- code-detective
- description
- Найди баг в коде! Интерактивная игра для тренировки отладки с 3 уровнями сложности. Используй когда пользователь просит "найди баг", "потренироваться в отладке" или хочет проверить внимательность к коду.
- user-invocable
- true
Code Detective — Найди Баг в Коде
Игра для тренировки навыков отладки. Пользователь ищет ошибки в коде.
Как использовать
1. Запуск игры
Когда пользователь просит "найди баг" или "поиграем в отладку":
🔍 Code Detective — Найди баг!
Я покажу код с ошибкой, а ты найдёшь её!
Выбери сложность:
[🟢 Легко] [🟡 Средне] [🔴 Сложно]2. Формат вопроса
Покажи код и используй message с параметром buttons:
{
"action": "send",
"channel": "telegram",
"target": "<user_id>",
"message": "🐛 Найди баг в этом коде (вопрос 1/5):\
\def greet(name):\ print(\"Привет, \" + name)\ \ greet(\"Артём)\
\
Что не так?",
"buttons": [
[{"text": "💡 Подсказка", "callback_data": "hint:q1"}],
[{"text": "🔄 Пропустить", "callback_data": "skip:q1"}]
]
}3. Уровни сложности
🟢 Легко: Синтаксические ошибки, очевидные опечатки
# Пример: Забыта закрывающая кавычка
name = "Артём
print(name)🟡 Средне: Логические ошибки, типичные паттерны
// Пример: var вместо let в цикле
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 100);
}
// Выведет 3, 3, 3 вместо 0, 1, 2🔴 Сложно: Сложные баги, несколько ошибок
# Пример: UnboundLocalError
def counter():
count = 0
def increment():
count += 1 # Ошибка!
return count
return increment()4. Типичные баги для игры
Python:
- Забытые кавычки в строке
- Отступы (indentation)
- Переменная до объявления
- != вместо ==
- Забытый return
- Изменение global без global
JavaScript:
- === vs ==
- Забытый await
- this в стрелочных функциях
- var вместо let/const в циклах
Общие:
- Бесконечные циклы
- Off-by-one ошибки
- Забытые break в switch
5. Подсказки
Если пользователь просит подсказку — дай направление, но не ответ:
💡 Подсказка: посмотри на строки с текстом...6. Правильный ответ
Когда пользователь угадал:
✅ Верно! Забыта закрывающая кавычка!
🎯 +15 очков
💡 Совет: В IDE подсветка помогает найти такие ошибки.
[➡️ Следующий вопрос]7. Неправильный ответ
❌ Не совсем!
Проблема в строке 4: greet("Артём)
Не хватает закрывающей кавычки.
[➡️ Следующий вопрос]8. Финал игры
🔍 Code Detective завершён!
━━━━━━━━━━━━━━━━━━
🎯 Найдено багов: 4/5
⭐ Опыт: +400 XP
📈 Ты становишься лучшим детективом!
[🔄 Играть снова]Стиль общения
- Поощряй: "Хороший глаз!", "Ты на верном пути!"
- Объясняй ошибку просто
- Давай советы как избегать таких багов
- Используй эмодзи: 🐛 🔍 💡 ✅ ❌
Пример полного цикла
User: найди баг!
Bot: 🔍 Code Detective!
Выбери сложность:
[🟢 Легко] [🟡 Средне] [🔴 Сложно]
---
User: [🟢 Легко]
Bot: 🐛 Найди баг (вопрос 1/3):
x = 10 y = 0 result = x / y print(result)
[💡 Подсказка]
---
User: деление на ноль!
Bot: ✅ Верно! ZeroDivisionError!
🎯 +15 очков
[➡️ Следующий вопрос]