Geliştirme görevlerini otomatikleştirmek için Cursor CLI’yı GitHub Actions ve diğer CI/CD sistemlerinde kullan.

GitHub Actions entegrasyonu

Temel kurulum:
- name: Cursor CLI’yi kur
  run: |
    curl https://cursor.com/install -fsS | bash
    echo "$HOME/.cursor/bin" >> $GITHUB_PATH

- name: Cursor Agent’ı çalıştır
  env:
    CURSOR_API_KEY: ${{ secrets.CURSOR_API_KEY }}
  run: |
    cursor-agent -p "İstediğin komutu buraya yaz" --model gpt-5

Cookbook örnekleri

Pratik iş akışları için cookbook örneklerimize göz at: otomatik güncellenen belgeler ve CI sorunlarını düzeltme.

Diğer CI sistemleri

Cursor CLI’ı herhangi bir CI/CD sisteminde şunlarla kullanabilirsin:
  • Shell script çalıştırma (bash, zsh, vb.)
  • API anahtarı yapılandırması için ortam değişkenleri
  • Cursor’ın API’sine erişim için internet bağlantısı

Otonomi seviyeleri

Aracının otonomi seviyesini seç:

Tam otonomi yaklaşımı

Araca git işlemleri, API çağrıları ve harici etkileşimler üzerinde tam kontrol ver. Kurulumu daha basit, daha fazla güven gerektirir. Örnek: Auto Update Documentation cookbook’ümüzdeki ilk iş akışı aracın şunları yapmasına izin verir:
  • PR değişikliklerini analiz et
  • Git branch’leri oluştur ve yönet
  • Değişiklikleri commit’le ve push’la
  • Pull request’lere yorum gönder
  • Tüm hata senaryolarını ele al
- name: Update docs (full autonomy)
  run: |
    cursor-agent -p "You have full access to git, GitHub CLI, and PR operations. 
    Handle the entire docs update workflow including commits, pushes, and PR comments."

Kısıtlı otonomi yaklaşımı

Üretim CI iş akışları için bu yaklaşımı izin tabanlı kısıtlamalarla kullanmanı öneriyoruz. Bu, iki dünyanın en iyisini sunar: araç karmaşık analiz ve dosya değişikliklerini akıllıca ele alabilirken kritik işlemler deterministik ve denetlenebilir kalır.
Kritik adımları ayrı iş akışı adımlarında ele alırken araç işlemlerini sınırla. Daha iyi kontrol ve öngörülebilirlik sağlar. Örnek: Aynı cookbook’teki ikinci iş akışı, aracı yalnızca dosya değişiklikleriyle sınırlar:
- name: Generate docs updates (restricted)
  run: |
    cursor-agent -p "IMPORTANT: Do NOT create branches, commit, push, or post PR comments. 
    Only modify files in the working directory. A later workflow step handles publishing."

- name: Publish docs branch (deterministic)
  run: |
    # Deterministic git operations handled by CI
    git checkout -B "docs/${{ github.head_ref }}"
    git add -A
    git commit -m "docs: update for PR"
    git push origin "docs/${{ github.head_ref }}"

- name: Post PR comment (deterministic)  
  run: |
    # Deterministic PR commenting handled by CI
    gh pr comment ${{ github.event.pull_request.number }} --body "Docs updated"

İzin tabanlı kısıtlamalar

Kısıtlamaları CLI düzeyinde uygulamak için permission configurations kullan:
{
  "permissions": {
    "allow": [
      "Read(**/*.md)",
      "Write(docs/**/*)",
      "Shell(grep)",
      "Shell(find)"
    ],
    "deny": [
      "Shell(git)",
      "Shell(gh)", 
      "Write(.env*)",
      "Write(package.json)"
    ]
  }
}

Kimlik Doğrulama

CURSOR_API_KEY ortam değişkenini ayarla:
env:
  CURSOR_API_KEY: ${{ secrets.CURSOR_API_KEY }}
API anahtarını Cursor ayarları bölümünden alabilirsin.