SkillHub

code-detective

v1.0.0

Найди баг в коде! Интерактивная игра для тренировки отладки с 3 уровнями сложности. Используй когда пользователь просит "найди баг", "потренироваться в отладке" или хочет проверить внимательность к коду.

Sourced from ClawHub, Authored by russianoracle

Installation

Please help me install the skill `code-detective` from SkillHub official store. npx skills add russianoracle/code-detective

Code Detective — Найди Баг в Коде

Игра для тренировки навыков отладки. Пользователь ищет ошибки в коде.

Как использовать

1. Запуск игры

Когда пользователь просит "найди баг" или "поиграем в отладку":

🔍 Code Detective — Найди баг!

Я покажу код с ошибкой, а ты найдёшь её!

Выбери сложность:
[🟢 Легко] [🟡 Средне] [🔴 Сложно]

2. Формат вопроса

Покажи код и используй message с параметром buttons:

{
  "action": "send",
  "channel": "telegram",
  "target": "<user_id>",
  "message": "🐛 Найди баг в этом коде (вопрос 1/5):nn```pythonndef greet(name):n    print("Привет, " + name)nngreet("Артём)n```nnЧто не так?",
  "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):

```python
x = 10
y = 0
result = x / y
print(result)

[💡 Подсказка]


User: деление на ноль!

Bot: ✅ Верно! ZeroDivisionError! 🎯 +15 очков

[➡️ Следующий вопрос] ```