Как стать автором
Обновить

Скрипт синхронизации GitHub Issues для Cursor IDE

ghsync.py позволяет Агенту взаимодействовать с задачами (issues) в репозитории GitHub.

Скачать: https://github.com/Artemonim/Artemonim-Little-Tools/tree/master/AgentTools/GithubIssueSynchronizationScript

Скрипт позволяет читать все метки и задачи, редактировать существующие задачи и создавать новые. Поддерживается изменение статуса задачи, но удаление задач не предусмотрено.

Для массовых изменений рекомендуется создать премиальной моделью файл temp.txt со списком команд, а затем выполнить их с помощью бесплатной модели. Gemini 2.5 Flash справляется с этим. Cursor Small и GPT-4o-mini не тестировались.

Требования

  1. Python 3: Убедитесь, что у вас установлен Python 3.

    • Если проект не использует Python, создайте локальное окружение Python. В Cursor или VSCode откройте терминал и выполните:

      python -m venv env_py
      

      После этого IDE сама предложит активировать окружение.

  2. 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, но мне лень, учитывая, что я работаю один в приватном репозитории.

Теги:
+1
Комментарии0

Публикации

Ближайшие события