在 GitHub Actions 中使用 Cursor CLI 为仓库更新文档
name: 更新文档
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: 检出仓库
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 安装 Cursor CLI
run: |
curl https://cursor.com/install -fsS | bash
echo "$HOME/.cursor/bin" >> $GITHUB_PATH
- name: 配置 git
run: |
git config user.name "Cursor Agent"
git config user.email "cursoragent@cursor.com"
- name: 更新文档
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 可用。你拥有对仓库内容的写权限,并可在拉取请求中发表评论,但不得创建或编辑 PR。
# 上下文:
- 仓库:${{ github.repository }}
- 所有者:${{ github.repository_owner }}
- PR 编号:${{ github.event.pull_request.number }}
- 基准分支:${{ github.base_ref }}
- 头部分支:${{ github.head_ref }}
- 文档分支前缀:${{ env.BRANCH_PREFIX }}
# 目标:
- 基于原始 PR 的增量变更,实施端到端的文档更新流程。
# 要求:
1) 确定原始 PR 中的变更;若存在多次 push,计算自上次文档成功更新以来的增量 diff。
2) 仅基于这些增量变更更新相关文档。
3) 使用上下文中的文档分支前缀,为该 PR 的 head 维护持久化的文档分支;如不存在则创建,存在则更新,并将变更推送到 origin。
4) 你没有创建 PR 的权限。相反,发布或更新一条自然语言的 PR 评论(1–2 句话),简要说明文档更新,并包含一个内联对比链接以快速创建 PR。
# 输入与约定:
- 使用 \`gh pr diff\` 和 git 历史来检测变更,并推导自上次文档更新以来的增量范围。
- 不要尝试直接创建或编辑 PR。改用上述对比链接格式。
- 将修改保持在最小范围,并与仓库风格一致。若无需更新文档,则不做任何修改且不发表任何评论。
# 交付物(当发生更新时):
- 将提交推送到该 PR head 的持久化文档分支。
- 在原始 PR 上发布一条包含上述内联对比链接的自然语言评论且仅保留一条。如已存在机器人评论,请更新该评论以避免重复。
" --force --model "$MODEL" --output-format=text
此页面对您有帮助吗?