GitHub Actions에서 Cursor CLI를 사용해 저장소 문서를 자동으로 업데이트
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 러너에서 실행 중이야.
GitHub CLI는 `gh`로 사용할 수 있고 `GH_TOKEN`으로 인증되어 있어. Git도 사용 가능해. 저장소 콘텐츠에 대한 쓰기 권한이 있고 풀 리퀘스트에 댓글을 달 수 있지만, PR을 생성하거나 편집하면 안 돼.
# 컨텍스트:
- 저장소: ${{ github.repository }}
- 소유자: ${{ github.repository_owner }}
- PR 번호: ${{ github.event.pull_request.number }}
- 베이스 Ref: ${{ github.base_ref }}
- 헤드 Ref: ${{ github.head_ref }}
- 문서 브랜치 접두사: ${{ env.BRANCH_PREFIX }}
# 목표:
- 원본 PR의 점진적 변경사항을 기반으로 하는 엔드투엔드 문서 업데이트 플로우를 구현해.
# 요구사항:
1) 원본 PR에서 무엇이 변경되었는지 파악하고, 여러 번 푸시가 있었다면 마지막 성공적인 문서 업데이트 이후의 점진적 차이를 계산해.
2) 해당 점진적 변경사항을 기반으로 관련 문서만 업데이트해.
3) 컨텍스트의 문서 브랜치 접두사를 사용하여 이 PR 헤드에 대한 지속적인 문서 브랜치를 유지해. 없으면 생성하고, 있으면 업데이트한 다음 origin에 변경사항을 푸시해.
4) PR을 생성할 권한이 없어. 대신, 문서 업데이트를 간략히 설명하고 PR을 빠르게 생성할 수 있는 인라인 비교 링크를 포함하는 자연어 PR 댓글(1-2문장)을 게시하거나 업데이트해
# 입력 및 규칙:
- `gh pr diff`와 git 히스토리를 사용하여 변경사항을 감지하고 마지막 문서 업데이트 이후의 점진적 범위를 도출해.
- PR을 직접 생성하거나 편집하려고 시도하지 마. 위의 비교 링크 형식을 사용해.
- 변경사항을 최소한으로 유지하고 저장소 스타일과 일치시켜. 문서 업데이트가 필요하지 않다면 변경하지 말고 댓글도 게시하지 마.
# 업데이트가 발생할 때의 결과물:
- 이 PR 헤드에 대한 지속적인 문서 브랜치에 커밋 푸시.
- 위의 인라인 비교 링크를 포함하는 원본 PR에 대한 자연어 PR 댓글 하나. 중복 게시를 피하고, 이전 봇 댓글이 있다면 업데이트해.
" --force --model "$MODEL" --output-format=text
이 페이지가 도움이 되었나요?