@@ -21,6 +21,7 @@ var opts struct {
21
21
Repo string `long:"repo" env:"REPO" description:"GitHub repo" required:"true"`
22
22
PRNumber int `long:"pr-number" env:"PR_NUMBER" description:"Pull request number" required:"true"`
23
23
Test bool `long:"test" env:"TEST" description:"Test mode"`
24
+ SkipFiles string `long:"skip-files" env:"SKIP_FILES" description:"Skip files. Comma separated list" default:"go.mod,go.sum,.pb.go"`
24
25
}
25
26
26
27
// FileDiff represents a single file diff.
@@ -58,7 +59,20 @@ func main() {
58
59
Content : prompt ,
59
60
})
60
61
for _ , fileDiff := range filesDiff {
61
- prompt := fmt .Sprintf ("File %s:\n %s\n %s\n " , getFilenameFromDiffHeader (fileDiff .Header ), fileDiff .Header , fileDiff .Diff )
62
+ fileName := getFilenameFromDiffHeader (fileDiff .Header )
63
+
64
+ isSkipped := false
65
+ for _ , skipFile := range strings .Split (opts .SkipFiles , "," ) {
66
+ if strings .Contains (fileName , skipFile ) {
67
+ isSkipped = true
68
+ break
69
+ }
70
+ }
71
+ if isSkipped {
72
+ continue
73
+ }
74
+
75
+ prompt := fmt .Sprintf ("File %s:\n %s\n %s\n " , fileName , fileDiff .Header , fileDiff .Diff )
62
76
messages = append (messages , openai.ChatCompletionMessage {
63
77
Role : openai .ChatMessageRoleUser ,
64
78
Content : prompt ,
@@ -77,7 +91,7 @@ func main() {
77
91
78
92
jiraLink := generateJiraLinkByTitle (title )
79
93
80
- description := fmt .Sprintf ("## Jira\n %s\n %s" , jiraLink , chatGPTDescription )
94
+ description := fmt .Sprintf ("### Jira\n %s\n %s" , jiraLink , chatGPTDescription )
81
95
if opts .Test {
82
96
fmt .Println (description )
83
97
os .Exit (0 )
0 commit comments