Upload folder using huggingface_hub
Browse files
.github/workflows/claude-code-review.yml
ADDED
@@ -0,0 +1,75 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name: Claude Code Review
|
2 |
+
|
3 |
+
on:
|
4 |
+
pull_request:
|
5 |
+
types: [opened, synchronize]
|
6 |
+
# Optional: Only run on specific file changes
|
7 |
+
# paths:
|
8 |
+
# - "src/**/*.ts"
|
9 |
+
# - "src/**/*.tsx"
|
10 |
+
# - "src/**/*.js"
|
11 |
+
# - "src/**/*.jsx"
|
12 |
+
|
13 |
+
jobs:
|
14 |
+
claude-review:
|
15 |
+
# Optional: Filter by PR author
|
16 |
+
# if: |
|
17 |
+
# github.event.pull_request.user.login == 'external-contributor' ||
|
18 |
+
# github.event.pull_request.user.login == 'new-developer' ||
|
19 |
+
# github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR'
|
20 |
+
|
21 |
+
runs-on: ubuntu-latest
|
22 |
+
permissions:
|
23 |
+
contents: read
|
24 |
+
pull-requests: read
|
25 |
+
issues: read
|
26 |
+
id-token: write
|
27 |
+
|
28 |
+
steps:
|
29 |
+
- name: Checkout repository
|
30 |
+
uses: actions/checkout@v4
|
31 |
+
with:
|
32 |
+
fetch-depth: 1
|
33 |
+
|
34 |
+
- name: Run Claude Code Review
|
35 |
+
id: claude-review
|
36 |
+
uses: anthropics/claude-code-action@beta
|
37 |
+
with:
|
38 |
+
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
|
39 |
+
|
40 |
+
# Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4)
|
41 |
+
# model: "claude-opus-4-20250514"
|
42 |
+
|
43 |
+
# Direct prompt for automated review (no @claude mention needed)
|
44 |
+
direct_prompt: |
|
45 |
+
Please review this pull request and provide feedback on:
|
46 |
+
- Code quality and best practices
|
47 |
+
- Potential bugs or issues
|
48 |
+
- Performance considerations
|
49 |
+
- Security concerns
|
50 |
+
- Test coverage
|
51 |
+
|
52 |
+
Be constructive and helpful in your feedback.
|
53 |
+
|
54 |
+
# Optional: Customize review based on file types
|
55 |
+
# direct_prompt: |
|
56 |
+
# Review this PR focusing on:
|
57 |
+
# - For TypeScript files: Type safety and proper interface usage
|
58 |
+
# - For API endpoints: Security, input validation, and error handling
|
59 |
+
# - For React components: Performance, accessibility, and best practices
|
60 |
+
# - For tests: Coverage, edge cases, and test quality
|
61 |
+
|
62 |
+
# Optional: Different prompts for different authors
|
63 |
+
# direct_prompt: |
|
64 |
+
# ${{ github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' &&
|
65 |
+
# 'Welcome! Please review this PR from a first-time contributor. Be encouraging and provide detailed explanations for any suggestions.' ||
|
66 |
+
# 'Please provide a thorough code review focusing on our coding standards and best practices.' }}
|
67 |
+
|
68 |
+
# Optional: Add specific tools for running tests or linting
|
69 |
+
# allowed_tools: "Bash(npm run test),Bash(npm run lint),Bash(npm run typecheck)"
|
70 |
+
|
71 |
+
# Optional: Skip review for certain conditions
|
72 |
+
# if: |
|
73 |
+
# !contains(github.event.pull_request.title, '[skip-review]') &&
|
74 |
+
# !contains(github.event.pull_request.title, '[WIP]')
|
75 |
+
|
.github/workflows/claude.yml
ADDED
@@ -0,0 +1,59 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name: Claude Code
|
2 |
+
|
3 |
+
on:
|
4 |
+
issue_comment:
|
5 |
+
types: [created]
|
6 |
+
pull_request_review_comment:
|
7 |
+
types: [created]
|
8 |
+
issues:
|
9 |
+
types: [opened, assigned]
|
10 |
+
pull_request_review:
|
11 |
+
types: [submitted]
|
12 |
+
|
13 |
+
jobs:
|
14 |
+
claude:
|
15 |
+
if: |
|
16 |
+
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
|
17 |
+
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
|
18 |
+
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
|
19 |
+
(github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
|
20 |
+
runs-on: ubuntu-latest
|
21 |
+
permissions:
|
22 |
+
contents: read
|
23 |
+
pull-requests: read
|
24 |
+
issues: read
|
25 |
+
id-token: write
|
26 |
+
steps:
|
27 |
+
- name: Checkout repository
|
28 |
+
uses: actions/checkout@v4
|
29 |
+
with:
|
30 |
+
fetch-depth: 1
|
31 |
+
|
32 |
+
- name: Run Claude Code
|
33 |
+
id: claude
|
34 |
+
uses: anthropics/claude-code-action@beta
|
35 |
+
with:
|
36 |
+
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
|
37 |
+
|
38 |
+
# Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4)
|
39 |
+
# model: "claude-opus-4-20250514"
|
40 |
+
|
41 |
+
# Optional: Customize the trigger phrase (default: @claude)
|
42 |
+
# trigger_phrase: "/claude"
|
43 |
+
|
44 |
+
# Optional: Trigger when specific user is assigned to an issue
|
45 |
+
# assignee_trigger: "claude-bot"
|
46 |
+
|
47 |
+
# Optional: Allow Claude to run specific commands
|
48 |
+
# allowed_tools: "Bash(npm install),Bash(npm run build),Bash(npm run test:*),Bash(npm run lint:*)"
|
49 |
+
|
50 |
+
# Optional: Add custom instructions for Claude to customize its behavior for your project
|
51 |
+
# custom_instructions: |
|
52 |
+
# Follow our coding standards
|
53 |
+
# Ensure all new code has tests
|
54 |
+
# Use TypeScript for new files
|
55 |
+
|
56 |
+
# Optional: Custom environment variables for Claude
|
57 |
+
# claude_env: |
|
58 |
+
# NODE_ENV: test
|
59 |
+
|