From 256e1eb05ecaa48e7e71f6d0b38244ccc0f38af4 Mon Sep 17 00:00:00 2001 From: Akinn Rosa Date: Tue, 16 Jun 2026 16:40:27 -0300 Subject: [PATCH] ci: add Claude GitHub workflow for @claude mentions --- .github/workflows/claude.yml | 46 ++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/claude.yml diff --git a/.github/workflows/claude.yml b/.github/workflows/claude.yml new file mode 100644 index 0000000..60f00ad --- /dev/null +++ b/.github/workflows/claude.yml @@ -0,0 +1,46 @@ +name: Claude + +# Lets collaborators mention @claude in issues, pull requests, and review +# comments to ask questions or request changes. Claude replies in-thread and, +# when asked, can push a branch and open a PR. +# +# Setup required before this works: +# 1. Install the Claude GitHub App: https://github.com/apps/claude +# 2. Add an ANTHROPIC_API_KEY repository secret +# (Settings → Secrets and variables → Actions → New repository secret). + +on: + issue_comment: + types: [created] + pull_request_review_comment: + types: [created] + issues: + types: [opened, assigned] + pull_request_review: + types: [submitted] + +# Only run when someone actually mentions @claude, so unrelated comments don't +# spin up a job. +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: write + pull-requests: write + issues: write + id-token: write + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + fetch-depth: 1 + + - name: Run Claude Code + uses: anthropics/claude-code-action@v1 + with: + anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}