report-issue · git:20260929.6142bbf · 2026-09-29 · sha256 bf42968558564fb9

report-issue git:20260929.6142bbfA

Immutable. This exact content never changes and is served at /api/v1/blob/bf42968558564fb9.

---
name: report-issue
description: "Дефект или пожелание - в репозиторий набора скилов или плагина AI-EDT. Используй когда скрипт скила падает или дает неверный результат, правило расходится с поведением платформы или плагина, инструмент AI-EDT работает не так, как описан, либо пользователь просит сообщить разработчикам, завести issue, отправить баг или пожелание"
---

# /report-issue - дефект или пожелание разработчикам набора

Готовит issue в репозиторий набора или плагина AI-EDT: проверяет, что дефект наш, ищет дубликат,
собирает обезличенный черновик, проверяет его скриптом на приватные данные и отправляет только после
согласия пользователя.

## Когда НЕ применять

- Ошибка в конфигурации, данных или настройках пользователя, а не в скиле, правиле или плагине -
 объяснить пользователю, issue не заводить.
- Сбой среды: нет платформы, не запущена EDT, нет прав, нет сети.
- Чужой продукт: платформа 1С, другой плагин EDT, Claude Code, Cursor - назвать, куда сообщить,
 самому не отправлять.
- Вопрос или обсуждение без дефекта - Telegram: [Скилы и правила](https://t.me/AI_EDT_1c/25),
 [Плагин](https://t.me/AI_EDT_1c/23).

## Куда

| Что | Репозиторий |
|---|---|
| Скрипт скила или правило, агент в Claude Code | `Desko77/claude-code-skills-1c` |
| Скрипт скила или правило, агент в Cursor | `Desko77/cursor-1c-skills` |
| Инструмент MCP-сервера AI-EDT (ключ `ai-edt`) | `Desko77/ai-edt` |

Метки: дефект - `bug`, пожелание - `enhancement`; всегда `from-agent`.

## Шаги

1. **Убедиться, что дефект наш.** Назвать скил, правило или инструмент и воспроизведение: команда,
 вход, фактический результат, ожидаемый результат. Готово, когда воспроизведение есть, а не
 догадка о причине.
2. **Найти дубликат.** При установленном `gh`: `gh issue list --repo <репозиторий> --state all
 --search "<ключевые слова>"`. Без `gh` - дать пользователю ссылку
 `https://github.com/<репозиторий>/issues?q=<ключевые слова>`. Нашлась такая же issue - предложить
 дописать в нее комментарий вместо новой. Готово, когда поиск выполнен и результат назван.
3. **Черновик.** Текст записать во временный файл вне репозитория пользователя (каталог временных
 файлов). Заголовок: `<скил или инструмент>: <что не так>`, до 80 символов.
 - Дефект - разделы "Что произошло", "Как воспроизвести", "Ожидалось", "Среда" (версия набора или
 плагина, Claude Code или Cursor, PowerShell или Python, версия платформы 1С, ОС).
 - Пожелание - разделы "Задача", "Чего не хватает", "Как могло бы работать".
 - Обезличивание: объекты - `Catalog.Товары`, `Document.Продажа`; путь - `C:/Projects/my-project`;
 база - `my-base`. Текст ошибки платформы и код выхода сохраняются дословно. Фрагмент кода -
 минимальный, на обобщенных именах. Выгрузки, логи целиком и скриншоты с данными не прикладываются.

 Готово, когда черновик заполнен по разделам своего вида.
4. **Проверить скриптом.**

 ```powershell
 pwsh -NoProfile -File "<каталог скила>/scripts/issue-draft.ps1" -Repo "<репозиторий>" -Title "<заголовок>" -BodyFile "<черновик>" -Labels "bug,from-agent"
 ```

 ```bash
 python "<каталог скила>/scripts/issue-draft.py" -Repo "<репозиторий>" -Title "<заголовок>" -BodyFile "<черновик>" -Labels "bug,from-agent"
 ```

 Код 1 - в stderr перечень находок с номерами строк (пути, домашние каталоги, IP, почта, пароли и
 токены, строки соединения `Srvr`/`Ref`, UUID кроме нулевого, ссылки вне github.com, t.me и сайтов
 1С); исправить каждую и повторить. Код 0 - в stdout ссылка на создание issue. Имена заказчика
 скрипт не знает: после кода 0 перечитать черновик на имена конфигураций, расширений, префиксы
 объектов, названия организаций и людей. Готово, когда код 0 и черновик перечитан.
5. **Согласие пользователя.** Показать заголовок и текст целиком, назвать репозиторий и метки,
 спросить разрешение. Без явного согласия не отправлять. Готово, когда ответ получен.
6. **Отправить.**
 - `gh auth status` с кодом 0: `gh issue create --repo <репозиторий> --title "<заголовок>"
 --body-file <черновик> --label bug --label from-agent`. Отказ из-за отсутствующей метки -
 повторить без нее.
 - Иначе - передать пользователю ссылку из вывода скрипта: он открывает ее и нажимает Submit. Текст
 длиннее предела ссылки - ссылка несет заголовок и метки, текст передать для вставки.

 Готово, когда пользователь получил ссылку на созданную issue либо ссылку для ее создания.
7. **Удалить временный файл черновика.**