mirror of
https://github.com/hustcer/deepseek-review.git
synced 2026-05-13 05:16:05 +08:00
69 lines
2.2 KiB
YAML
69 lines
2.2 KiB
YAML
# Deepseek Code Review Action
|
||
# @author: hustcer
|
||
# @created: 2025/01/29 13:05:20
|
||
# REF:
|
||
# - https://docs.github.com/cn/actions/creating-actions/about-custom-actions
|
||
# - https://docs.github.com/cn/actions/creating-actions/metadata-syntax-for-github-actions
|
||
# - https://docs.github.com/en/actions/creating-actions/creating-a-composite-action
|
||
|
||
name: 'Deepseek Code Review'
|
||
author: 'hustcer'
|
||
description: 'A github action to do code review by Deepseek for PRs.'
|
||
|
||
branding:
|
||
icon: 'code'
|
||
color: 'purple'
|
||
|
||
inputs:
|
||
deepseek-token:
|
||
required: true
|
||
description: 'Your deepseek API token.'
|
||
model:
|
||
required: false
|
||
default: 'deepseek-chat'
|
||
description: 'The deepseek model to choose for code review.'
|
||
base-url:
|
||
required: false
|
||
default: 'https://api.deepseek.com'
|
||
description: 'The base url of deepseek API.'
|
||
sys-prompt:
|
||
required: false
|
||
default: '你是一个专业的代码审查助手,负责分析GitHub Pull Request的代码变更,指出潜在的问题,如代码风格、逻辑错误、安全漏洞,并提供改进建议。请用简洁明了的语言列出问题及建议。'
|
||
description: 'The system prompt for deepseek API.'
|
||
user-prompt:
|
||
required: false
|
||
default: '请分析以下代码变更'
|
||
description: 'The user prompt for deepseek API.'
|
||
|
||
runs:
|
||
using: 'composite'
|
||
steps:
|
||
- name: Setup Nu
|
||
uses: hustcer/setup-nu@v3
|
||
with:
|
||
version: 0.101.0
|
||
|
||
- name: Deepseek Code Review
|
||
shell: nu {0}
|
||
run: |
|
||
const NU_LIB_DIRS = [ ${{ github.action_path }}/nu ]
|
||
use review.nu *
|
||
let model = '${{inputs.model}}'
|
||
let baseUrl = '${{inputs.base-url}}'
|
||
let token = '${{inputs.deepseek-token}}'
|
||
let sysPrompt = '${{inputs.sys-prompt}}'
|
||
let ghToken = '${{secrets.GITHUB_TOKEN}}'
|
||
let userPrompt = '${{inputs.user-prompt}}'
|
||
let repo = '${{ github.repository }}'
|
||
let pr = '${{ github.event.pull_request.number }}'
|
||
(deepseek-review $token
|
||
--model $model
|
||
--repo $repo
|
||
--pr-number $pr
|
||
--gh-token $ghToken
|
||
--base-url $baseUrl
|
||
--sys-prompt $sysPrompt
|
||
--user-prompt $userPrompt
|
||
)
|
||
|