-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaction.yml
More file actions
183 lines (146 loc) · 5.5 KB
/
action.yml
File metadata and controls
183 lines (146 loc) · 5.5 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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
name: "CodePress Review"
description: "Automatic code review using AI models (OpenAI, Anthropic, Google, etc.) with inline PR comments"
author: "@quantfive"
branding:
icon: "git-pull-request"
color: "green"
inputs:
github_token:
description: "GitHub token for API access"
required: true
default: ${{ github.token }}
model_provider:
description: "AI model provider (openai, anthropic, gemini, cohere, mistral, perplexity, fireworks, groq, xai, deepseek, openai-compatible, ollama, etc.)"
required: true
default: "openai"
model_name:
description: "AI model name or alias. Use exact names (gpt-5.2, claude-sonnet-4-5) or aliases like 'latest', 'sonnet-latest', 'gpt-mini-latest' to auto-resolve to the newest version."
required: true
default: "gpt-5.1"
openai_api_key:
description: "OpenAI API key (required if using OpenAI)"
required: false
anthropic_api_key:
description: "Anthropic API key (required if using Anthropic)"
required: false
gemini_api_key:
description: "Google Gemini API key (required if using Gemini/Google)"
required: false
cohere_api_key:
description: "Cohere API key (required if using Cohere)"
required: false
mistral_api_key:
description: "Mistral API key (required if using Mistral)"
required: false
perplexity_api_key:
description: "Perplexity API key (required if using Perplexity)"
required: false
fireworks_api_key:
description: "Fireworks API key (required if using Fireworks)"
required: false
groq_api_key:
description: "Groq API key (required if using Groq)"
required: false
xai_api_key:
description: "xAI API key (required if using xAI)"
required: false
deepseek_api_key:
description: "DeepSeek API key (required if using DeepSeek)"
required: false
openai_compatible_api_key:
description: "API key for OpenAI-compatible endpoints (required if using openai-compatible provider)"
required: false
openai_compatible_base_url:
description: "Base URL for OpenAI-compatible endpoints (required if using openai-compatible provider)"
required: false
ollama_api_key:
description: "Ollama API key (optional, often not needed for local Ollama instances)"
required: false
ollama_base_url:
description: "Ollama base URL (defaults to http://localhost:11434/v1)"
required: false
reasoning_effort:
description: "OpenAI reasoning effort level (none, minimal, low, medium, high). 'none' is only for GPT-5.1 models."
required: false
default: "high"
anthropic_effort:
description: "Anthropic effort level (low, medium, high). Only for claude-opus-4-5. Affects thinking, text responses, and function calls."
required: false
default: ""
thinking_enabled:
description: "Enable Anthropic extended thinking (true/false). Only for Claude claude-opus-4-5, claude-sonnet-4-5, claude-3-7-sonnet models."
required: false
default: "false"
thinking_budget:
description: "Token budget for Anthropic extended thinking (e.g., 10000, 20000). Only used when thinking_enabled is true."
required: false
default: "10000"
max_turns:
description: "Maximum number of turns for the interactive agent (0 = unlimited)"
required: false
default: "0"
update_pr_description:
description: "Whether to update the PR description with AI-generated summary (true/false)"
required: false
default: "true"
debug:
description: "Enable debug mode to show detailed console logs (true/false)"
required: false
default: "false"
# Trigger configuration inputs
run_on_pr_opened:
description: "Run review when PR is opened (true/false)"
required: false
default: "true"
run_on_pr_reopened:
description: "Run review when PR is reopened (true/false)"
required: false
default: "true"
run_on_review_requested:
description: "Run review when re-review is requested from github-actions[bot] (true/false)"
required: false
default: "true"
run_on_comment_trigger:
description: "Run review when comments contain trigger phrase (true/false)"
required: false
default: "true"
comment_trigger_phrase:
description: "Phrase that triggers review in comments (e.g., '@codepress/review')"
required: false
default: "@codepress/review"
blocking_only:
description: "Only output blocking/required comments, filter out optional/nit/fyi/praise comments (true/false)"
required: false
default: "false"
force_full_review:
description: "Force a full review of all files, ignoring re-review optimizations (true/false)"
required: false
default: "false"
pr_number:
description: "PR number to review (for workflow_dispatch). If not provided, will try to find PR from current branch."
required: false
default: ""
enable_web_search:
description: "Enable web search and fetch capabilities for the agent (true/false)"
required: false
default: "true"
# Multi-repo context inputs
related_repos:
description: |
YAML list of related repositories for cross-repo context. Example:
related_repos: |
- repo: owner/backend
ref: main
description: Backend API - check API contracts
- repo: owner/shared
ref: v2
description: Shared types and utilities
required: false
default: ""
related_repos_token:
description: "Token for accessing related repos (falls back to github_token for same-org repos)"
required: false
default: ""
runs:
using: "node20"
main: "dist/index.js"