mirror of
https://github.com/cesanta/mongoose.git
synced 2026-10-18 10:59:45 +00:00
47 lines
1.4 KiB
YAML
47 lines
1.4 KiB
YAML
name: Claude Security Review
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened, ready_for_review]
|
|
|
|
permissions:
|
|
contents: read
|
|
pull-requests: read
|
|
|
|
concurrency:
|
|
group: claude-security-review-${{ github.event.pull_request.number }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
security-review:
|
|
if: >
|
|
github.event.pull_request.draft == false &&
|
|
(
|
|
github.event.pull_request.head.repo.full_name == github.repository ||
|
|
github.event.pull_request.author_association == 'OWNER' ||
|
|
github.event.pull_request.author_association == 'MEMBER' ||
|
|
github.event.pull_request.author_association == 'COLLABORATOR'
|
|
)
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
|
|
steps:
|
|
- name: Checkout PR code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
ref: ${{ github.event.pull_request.head.sha }}
|
|
fetch-depth: 2
|
|
|
|
- name: Claude security review
|
|
uses: anthropics/claude-code-security-review@main
|
|
with:
|
|
claude-api-key: ${{ secrets.CLAUDE_API_KEY }}
|
|
claude-model: claude-opus-4-7
|
|
comment-pr: false
|
|
upload-results: true
|
|
custom-security-scan-instructions: resources/claude-security-scan-instructions.txt
|
|
false-positive-filtering-instructions: resources/claude-false-positive-filtering.txt
|
|
exclude-directories: |
|
|
build,dist,out,coverage,node_modules,vendor,.git
|
|
claudecode-timeout: 20
|