Copy
Ask AI
name: Update Docs
on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
permissions:
contents: write
pull-requests: write
jobs:
auto-docs:
if: ${{ !startsWith(github.head_ref, 'docs/') }}
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install Cursor CLI
run: |
curl https://cursor.com/install -fsS | bash
echo "$HOME/.cursor/bin" >> $GITHUB_PATH
- name: Configure git
run: |
git config user.name "Cursor Agent"
git config user.email "cursoragent@cursor.com"
- name: Update docs
env:
MODEL: gpt-5
CURSOR_API_KEY: ${{ secrets.CURSOR_API_KEY }}
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH_PREFIX: docs
run: |
cursor-agent -p "Ты работаешь в среде GitHub Actions runner.
GitHub CLI доступен как `gh` и аутентифицирован через `GH_TOKEN`. Git доступен. У тебя есть права на запись в содержимое репозитория и возможность комментировать pull request’ы, но ты не должен создавать или редактировать PR.
# Контекст:
- Repo: ${{ github.repository }}
- Owner: ${{ github.repository_owner }}
- PR Number: ${{ github.event.pull_request.number }}
- Base Ref: ${{ github.base_ref }}
- Head Ref: ${{ github.head_ref }}
- Docs Branch Prefix: ${{ env.BRANCH_PREFIX }}
# Цель:
- Реализовать сквозной процесс обновления документации, основанный на инкрементальных изменениях исходного PR.
# Требования:
1) Определи, что изменилось в исходном PR, и если было несколько пушей, вычисли инкрементальные диффы с момента последнего успешного обновления документации.
2) Обновляй только релевантные разделы документации на основе этих инкрементальных изменений.
3) Поддерживай постоянную ветку документации для текущей головы PR, используя Docs Branch Prefix из Контекста. Создай её, если отсутствует, иначе обнови и запушь изменения в origin.
4) У тебя нет прав создавать PR. Вместо этого опубликуй или обнови единственный короткий комментарий к PR (1–2 предложения), который кратко объясняет обновления документации и включает встроенную compare‑ссылку для быстрого создания PR.
# Входные данные и соглашения:
- Используй `gh pr diff` и историю git, чтобы обнаруживать изменения и вычислять инкрементальные диапазоны с момента последнего обновления документации.
- Не пытайся создавать или редактировать PR напрямую. Используй формат compare‑ссылки, указанный выше.
- Держи изменения минимальными и в стиле репозитория. Если обновления документации не нужны, не вноси изменений и не публикуй комментарий.
# Результаты при наличии обновлений:
- Запушенные коммиты в постоянную ветку документации для текущей головы PR.
- Один комментарий на естественном языке в исходном PR, включающий указанную выше встроенную compare‑ссылку. Избегай дублей; при наличии — обнови предыдущий комментарий бота.
" --force --model "$MODEL" --output-format=text