Скрипт синхронизации GitHub Issues для Cursor IDE
ghsync.py позволяет Агенту взаимодействовать с задачами (issues) в репозитории GitHub.
Скрипт позволяет читать все метки и задачи, редактировать существующие задачи и создавать новые. Поддерживается изменение статуса задачи, но удаление задач не предусмотрено.
Для массовых изменений рекомендуется создать премиальной моделью файл temp.txt со списком команд, а затем выполнить их с помощью бесплатной модели. Gemini 2.5 Flash справляется с этим. Cursor Small и GPT-4o-mini не тестировались.
Требования
Python 3: Убедитесь, что у вас установлен Python 3.
Если проект не использует Python, создайте локальное окружение Python. В Cursor или VSCode откройте терминал и выполните:
python -m venv env_pyПосле этого IDE сама предложит активировать окружение.
GitHub CLI (gh): Должен быть установлен GitHub CLI и пройдена аутентификация:
gh auth login
Настройка
Добавьте папку .cursor в ваш репозиторий и следуйте предыдущему разделу.
Использование
Пример запроса к модели:
В соответствии с @git-interactions.mdc выполни {действие}
Основные команды, поддерживаемые ghsync.py
-d,--download: Скачивает все метки и задачи.-u,--upload: Создает новую задачу.Обязательный аргумент:
--title <заголовок>Опционально:
--body <тело>или--body-from-file <имя_файла>(из.cursor/Gitdata/temp_bodies),--labels <метка1> <метка2> ...
-e,--edit <НомерЗадачи>: Редактирует существующую задачу.Опционально:
-NewTitle <новый_заголовок>,-NewBody <новое_тело>или-NewBodyFromFile <имя_файла>(из.cursor/Gitdata/temp_bodies),-NewLabels <метка1> <метка2> ...,-NewState <open|closed|not_planned>
При использовании
--body-from-fileили-NewBodyFromFile, положите файл с содержанием задачи в папку.cursor/Gitdata/temp_bodies. Скрипт считает содержимое и автоматически удалит файл после использования.
Примечания
Скрипт и связанное правило пытаются обойти текущие проблемы Cursor с захватом вывода терминала для Агентов. Следите за исполнением, так как Агент может не следовать инструкциям в
git-interactions.mdcи проверять вывод консоли вместо статус-файлаЯ пытался создать Agent Tools через MCP-сервер, но ни Gemini, ни Claude не смогли корректно подключить MCP к Cursor, поэтому я забил.
Если хотите, чтобы действия Агента отображались отдельно от ваших, создайте для него отдельный аккаунт GitHub. Вроде как ещё можно создать под него GitHub App, но мне лень, учитывая, что я работаю один в приватном репозитории.
