GitHub Actions’da Cursor CLI kullanarak dokümanları otomatik güncelle. İki yaklaşım mevcut: tam agent özerkliği veya yalnızca agent dosya değişiklikleri içeren deterministik iş akışı.
name: Auto 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 içinde çalışıyorsun.

          GitHub CLI `gh` olarak mevcut ve `GH_TOKEN` ile kimlik doğrulaması yapılmış durumda. Git kullanılabilir. Repository içeriklerine yazma erişimin var ve pull request'lere yorum yapabilirsin, ancak PR oluşturmamalı veya düzenlememelisin.

          # Bağlam:
          - Repo: ${{ github.repository }}
          - Owner: ${{ github.repository_owner }}
          - PR Numarası: ${{ github.event.pull_request.number }}
          - Base Ref: ${{ github.base_ref }}
          - Head Ref: ${{ github.head_ref }}
          - Docs Branch Prefix: ${{ env.BRANCH_PREFIX }}

          # Amaç:
          - Orijinal PR'daki artımlı değişikliklerle yönlendirilen uçtan uca bir dokümantasyon güncelleme akışı uygula.

          # Gereksinimler:
          1) Orijinal PR'da neyin değiştiğini belirle ve birden fazla push varsa, son başarılı dokümantasyon güncellemesinden bu yana artımlı diff'leri hesapla.
          2) Sadece bu artımlı değişikliklere dayalı olarak ilgili dokümantasyonu güncelle.
          3) Bu PR head için kalıcı docs branch'ini Context'teki Docs Branch Prefix kullanarak koru. Eksikse oluştur, varsa güncelle ve değişiklikleri origin'e push et.
          4) PR oluşturma iznin YOK. Bunun yerine, dokümantasyon güncellemelerini kısaca açıklayan ve hızlı PR oluşturmak için inline karşılaştırma linki içeren tek bir doğal dil PR yorumu (1-2 cümle) gönder veya güncelle

          # Girdiler ve konvansiyonlar:
          - Değişiklikleri tespit etmek ve son dokümantasyon güncellemesinden bu yana artımlı aralıkları türetmek için `gh pr diff` ve git geçmişini kullan.
          - Doğrudan PR oluşturmaya veya düzenlemeye çalışma. Yukarıdaki karşılaştırma linki formatını kullan.
          - Değişiklikleri minimal tut ve repo stiliyle tutarlı ol. Dokümantasyon güncellemesi gerekli değilse, hiçbir değişiklik yapma ve yorum gönderme.

          # Güncellemeler gerçekleştiğinde teslim edilecekler:
          - Bu PR head için kalıcı docs branch'ine push edilmiş commit'ler.
          - Orijinal PR'da yukarıdaki inline karşılaştırma linkini içeren tek bir doğal dil PR yorumu. Duplikasyon yapmaktan kaçın; mevcutsa önceki bot yorumunu güncelle.
          " --force --model "$MODEL" --output-format=text