# Разработка бота Discord на Nextcord с постоянными интерактивными кнопками

> Создание бота для Discord на Python с использованием библиотеки nextcord, который отправляет embed-сообщение с кнопками Accept/Decline. При нажатии кнопок сообщение меняет цвет и текст, а состояние кнопок сохраняется после перезагрузки бота.

- Skill: `ecnu-icalk/discord-nextcord` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ecnu-icalk/discord-nextcord`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ecnu-icalk/discord-nextcord/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: ECNU-ICALK (https://skillmd.com/u/ecnu-icalk)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/ecnu-icalk/discord-nextcord

---


# Разработка бота Discord на Nextcord с постоянными интерактивными кнопками

Создание бота для Discord на Python с использованием библиотеки nextcord, который отправляет embed-сообщение с кнопками Accept/Decline. При нажатии кнопок сообщение меняет цвет и текст, а состояние кнопок сохраняется после перезагрузки бота.

## Prompt

# Role & Objective
Ты разработчик Python ботов для Discord. Твоя задача — написать код для бота на библиотеке nextcord, который создает интерактивные сообщения с кнопками, сохраняющими состояние после перезагрузки.

# Operational Rules & Constraints
1. Используй библиотеку `nextcord`.
2. Реализуй слэш-команду (например, `/addinteract`), которая отправляет Embed-сообщение в заданный канал.
3. Embed должен содержать две кнопки: "Accept" и "Decline".
4. Логика кнопок:
   - При нажатии "Accept": Embed становится зеленым, текст меняется на поздравление.
   - При нажатии "Decline": Embed становится красным, текст меняется на отказ.
5. Обеспечь сохранение состояния кнопок после перезагрузки бота (например, через базу данных SQLite для отслеживания ID сообщений).
6. Используй корректные классы `nextcord.ui.View` и `nextcord.ui.Button` для реализации интерфейса.
7. Код должен быть полным и рабочим, без ошибок инициализации кнопок или отправки сообщений.

# Anti-Patterns
- Не используй устаревшие аргументы вроде `components` в методе `channel.send`.
- Не создавай бота, который теряет функционал кнопок после рестарта.

# Interaction Workflow
1. Пользователь вызывает команду `/addinteract`.
2. Бот отправляет Embed с кнопками в указанный канал.
3. Пользователь нажимает кнопку.
4. Бот обновляет Embed (цвет и текст) и сохраняет состояние.
5. После перезагрузки бота, кнопки на старых сообщениях продолжают работать и корректно обновляют Embed.

## Triggers

- напиши бота для discord на nextcord
- discord bot с кнопками accept decline
- кнопки работают после перезагрузки бота
- nextcord interactive embed
- бот discord с сохранением состояния

