-
Notifications
You must be signed in to change notification settings - Fork 1
🪴 [claude] Add Claude Code GitHub Workflow #12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,60 @@ | ||||||
| name: Claude Code Review | ||||||
|
|
||||||
| on: | ||||||
| pull_request: | ||||||
| types: [opened, synchronize] | ||||||
| # Optional: Only run on specific file changes | ||||||
| # paths: | ||||||
| # - "src/**/*.ts" | ||||||
| # - "src/**/*.tsx" | ||||||
| # - "src/**/*.js" | ||||||
| # - "src/**/*.jsx" | ||||||
|
|
||||||
| # global permissions | ||||||
| permissions: {} | ||||||
|
|
||||||
| jobs: | ||||||
| claude-review: | ||||||
| # Optional: Filter by PR author | ||||||
| # if: | | ||||||
| # github.event.pull_request.user.login == 'external-contributor' || | ||||||
| # github.event.pull_request.user.login == 'new-developer' || | ||||||
| # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' | ||||||
|
|
||||||
| runs-on: ubuntu-latest | ||||||
| permissions: | ||||||
| contents: read | ||||||
| pull-requests: read | ||||||
| issues: read | ||||||
| id-token: write | ||||||
|
|
||||||
| steps: | ||||||
| - name: Checkout repository | ||||||
| uses: actions/checkout@v4 | ||||||
| with: | ||||||
| fetch-depth: 1 | ||||||
|
|
||||||
| - name: Run Claude Code Review | ||||||
| id: claude-review | ||||||
| uses: anthropics/claude-code-action@v1 | ||||||
|
||||||
| uses: anthropics/claude-code-action@v1 | |
| uses: anthropics/claude-code-action@v1.0.0 |
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,53 @@ | ||||||||||
| name: Claude Code | ||||||||||
|
|
||||||||||
| on: | ||||||||||
| issue_comment: | ||||||||||
| types: [created] | ||||||||||
| pull_request_review_comment: | ||||||||||
| types: [created] | ||||||||||
| issues: | ||||||||||
| types: [opened, assigned] | ||||||||||
| pull_request_review: | ||||||||||
| types: [submitted] | ||||||||||
|
|
||||||||||
| # global permissions | ||||||||||
| permissions: {} | ||||||||||
|
|
||||||||||
| 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 | ||||||||||
|
Comment on lines
+26
to
+27
|
||||||||||
| pull-requests: read | |
| issues: read | |
| pull-requests: write | |
| issues: write |
Copilot
AI
Oct 16, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using @v1 pins to a major version which may introduce breaking changes automatically. Consider pinning to a specific commit SHA or minor version (e.g., @v1.0.0) for more stability and predictable behavior.
| uses: anthropics/claude-code-action@v1 | |
| uses: anthropics/claude-code-action@v1.0.0 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,68 @@ | ||
| # CLAUDE.md | ||
|
|
||
| This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. | ||
|
|
||
| ## Repository Purpose | ||
|
|
||
| This is a **meta-repository for project ideas and planning**. It contains no application code - only GitHub Issues for potential projects. Each issue should eventually get its own dedicated repository when work begins. | ||
|
|
||
| **Important**: Pull requests to this repo should be rare. Think twice before modifying anything here. | ||
|
|
||
| ## Build System | ||
|
|
||
| This project uses [`just`](https://github.com/casey/just) as its task runner. | ||
|
|
||
| ### Common Commands | ||
|
|
||
| ```bash | ||
| just list # List all available recipes | ||
| just compliance_check # Run Chicks' repo compliance checks | ||
| just clean_readme # Generate a clean README from template | ||
| ``` | ||
|
|
||
| ### Git Workflow Commands | ||
|
|
||
| ```bash | ||
| just branch <name> # Create new branch with timestamp prefix (format: $USER/YYYY-MM-DD-<name>) | ||
| just pr # Create PR with last commit message as title | ||
| just prweb # Open current PR in browser | ||
| just merge # Merge PR, delete branch, sync back to main | ||
| just sync # Return to main branch and pull latest | ||
| ``` | ||
|
|
||
| The workflow expects: | ||
|
|
||
| - Main branch is `main` | ||
| - Branch naming: `$USER/YYYY-MM-DD-description` | ||
| - PR body auto-generated from last commit message | ||
| - After PR creation, watches checks if `.github/workflows` exists | ||
|
|
||
| ## Repository Standards | ||
|
|
||
| The compliance check (`just compliance_check`) enforces these standards: | ||
|
|
||
| - `README.md`, `LICENSE`, `.gitignore`, `.gitattributes`, `.editorconfig` | ||
| - `.github/CODE_OF_CONDUCT.md`, `.github/CONTRIBUTING.md`, `.github/SECURITY.md` | ||
| - `.github/pull_request_template.md`, `.github/ISSUE_TEMPLATE/` | ||
| - `.github/CODEOWNERS` | ||
| - `justfile` (this build system itself) | ||
| - GitHub repo description (>16 chars) | ||
|
|
||
| ## Language Preferences for New Projects | ||
|
|
||
| When projects spin off from issues here, preferred languages are: | ||
|
|
||
| **Definitely acceptable**: Go, Rust, Perl, Bash | ||
|
|
||
| **Possibly acceptable**: Python, C/C++, Lua, JavaScript | ||
|
|
||
| **Strongly discouraged**: PHP, Java, BASIC/VB, C#, Pascal, Matlab | ||
|
|
||
| ## Justfile Architecture | ||
|
|
||
| The main `justfile` imports two modules: | ||
|
|
||
| - `.just/compliance.just` - Repository compliance checks with colorful output | ||
| - `.just/gh-process.just` - GitHub workflow automation (branch, PR, merge) | ||
|
|
||
| Color variables (e.g., `{{BLUE}}`, `{{GREEN}}`, `{{RED}}`, `{{NORMAL}}`) are used for terminal output formatting. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The workflow lacks write permissions for pull-requests, which will prevent Claude from posting review comments as intended by line 52. Add 'pull-requests: write' permission to enable comment posting.