|
@@ -0,0 +1,50 @@
|
|
|
|
|
+name: Claude Code
|
|
|
|
|
+
|
|
|
|
|
+on:
|
|
|
|
|
+ issue_comment:
|
|
|
|
|
+ types: [created]
|
|
|
|
|
+ pull_request_review_comment:
|
|
|
|
|
+ types: [created]
|
|
|
|
|
+ issues:
|
|
|
|
|
+ types: [opened, assigned]
|
|
|
|
|
+ pull_request_review:
|
|
|
|
|
+ types: [submitted]
|
|
|
|
|
+
|
|
|
|
|
+jobs:
|
|
|
|
|
+ claude:
|
|
|
|
|
+ if: |
|
|
|
|
|
+ (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
|
|
|
|
|
+ (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
|
|
|
|
|
+ (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
|
|
|
|
|
+ (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
|
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
|
+ permissions:
|
|
|
|
|
+ contents: read
|
|
|
|
|
+ pull-requests: read
|
|
|
|
|
+ issues: read
|
|
|
|
|
+ id-token: write
|
|
|
|
|
+ actions: read # Required for Claude to read CI results on PRs
|
|
|
|
|
+ steps:
|
|
|
|
|
+ - name: Checkout repository
|
|
|
|
|
+ uses: actions/checkout@v4
|
|
|
|
|
+ with:
|
|
|
|
|
+ fetch-depth: 1
|
|
|
|
|
+
|
|
|
|
|
+ - name: Run Claude Code
|
|
|
|
|
+ id: claude
|
|
|
|
|
+ uses: anthropics/claude-code-action@v1
|
|
|
|
|
+ with:
|
|
|
|
|
+ anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
|
|
|
|
|
+
|
|
|
|
|
+ # This is an optional setting that allows Claude to read CI results on PRs
|
|
|
|
|
+ additional_permissions: |
|
|
|
|
|
+ actions: read
|
|
|
|
|
+
|
|
|
|
|
+ # Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it.
|
|
|
|
|
+ # prompt: 'Update the pull request description to include a summary of changes.'
|
|
|
|
|
+
|
|
|
|
|
+ # Optional: Add claude_args to customize behavior and configuration
|
|
|
|
|
+ # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
|
|
|
|
|
+ # or https://docs.claude.com/en/docs/claude-code/sdk#command-line for available options
|
|
|
|
|
+ # claude_args: '--model claude-opus-4-1-20250805 --allowed-tools Bash(gh pr:*)'
|
|
|
|
|
+
|