-
Notifications
You must be signed in to change notification settings - Fork 129
68 lines (59 loc) · 2.64 KB
/
pr-agent.yml
File metadata and controls
68 lines (59 loc) · 2.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
name: PR-Agent
on:
# 使用 pull_request_target 让同仓库与外部 fork PR 都能自动运行 PR-Agent,
# 并在 synchronize 事件跟进每次新 commit。
# 本 workflow 不 checkout / 执行 PR 分支代码,只让 digest-pinned PR-Agent 镜像通过 GitHub API 读取 diff。
pull_request_target:
types: [opened, reopened, ready_for_review, synchronize]
issue_comment:
types: [created]
jobs:
pr_agent_job:
# PR 与每次新 commit 自动运行;评论触发仍限制为可信成员,避免任意评论滥用 Secrets。
if: >-
${{
github.event.sender.type != 'Bot' &&
(
github.event_name == 'pull_request_target' ||
(
github.event_name == 'issue_comment' &&
github.event.issue.pull_request &&
contains(fromJson('["OWNER","MEMBER","COLLABORATOR"]'), github.event.comment.author_association)
)
)
}}
runs-on: ubuntu-latest
permissions:
# PR-Agent 需要在 PR/issue 上评论,并通过 GitHub API 读取 diff/文件内容。
issues: write
pull-requests: write
contents: read
steps:
- name: Run PR Agent
# Pin the actual PR-Agent container image because this job can access repo Secrets.
uses: docker://pragent/pr-agent@sha256:a0b36966ca3a197ca739fa1e65c16703076fc1c744cd423ca203b8c21707d71c
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# 同时兼容 PR-Agent 旧写法和 OpenAI-like 新写法
OPENAI_KEY: ${{ secrets.OPENAI_KEY }}
OPENAI__KEY: ${{ secrets.OPENAI_KEY }}
OPENAI.API_BASE: "https://cpa.chris233.qzz.io/v1"
OPENAI__API_BASE: "https://cpa.chris233.qzz.io/v1"
OPENAI_API_BASE: "https://cpa.chris233.qzz.io/v1"
OPENAI_BASE_URL: "https://cpa.chris233.qzz.io/v1"
# 中文输出
pr_reviewer.response_language: "zh-CN"
pr_description.response_language: "zh-CN"
pr_code_suggestions.response_language: "zh-CN"
# 模型配置
config.model: "openai/kimi-k2.6"
config.fallback_models: '["openai/gpt-5.4-mini"]'
config.custom_model_max_tokens: "1048576"
# GPT-5 fallback 不接受 temperature=0.2,保持 1 避免 LiteLLM 参数错误。
config.temperature: "1"
# 自动执行配置
github_action_config.auto_review: "true"
github_action_config.auto_describe: "true"
github_action_config.auto_improve: "false"
# 允许 synchronize 事件触发 PR-Agent
github_action_config.pr_actions: '["opened", "reopened", "ready_for_review", "synchronize"]'