Code Detective

v1.0.0

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

0· 536· 1 versions· 0 current· 0 all-time· Updated 13h ago· MIT-0

Install

openclaw skills install code-detective

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

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

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

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

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

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

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

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

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

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

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

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

Version tags

latestvk974q78d57mtwv6rv9q5wv0hzs81gtqy