chore(deps): bump anthropics/claude-code-action from 1.0.41 to 1.0.46 in the claude-code-action group #247
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # yamllint disable rule:line-length | |
| name: Semantic Labeler | |
| # Claude-powered semantic labeling for both issues and PRs | |
| # Replaces the path-based labeler with content-aware categorization | |
| on: | |
| issues: | |
| types: [opened, edited] | |
| pull_request: | |
| types: [opened, synchronize, edited] | |
| # Cancel in-progress runs on subsequent triggers | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.issue.number || github.event.pull_request.number }} | |
| cancel-in-progress: true | |
| jobs: | |
| label-issue: | |
| name: Label Issue | |
| # Skip bot-created issues to prevent potential loops | |
| if: | | |
| github.event_name == 'issues' && | |
| github.actor != 'dependabot[bot]' && | |
| github.actor != 'claude[bot]' | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| permissions: | |
| contents: read | |
| issues: write | |
| id-token: write | |
| actions: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| fetch-depth: 1 | |
| persist-credentials: false | |
| - name: Label issue with Claude | |
| id: labeler | |
| uses: anthropics/claude-code-action@6c61301d8e1ee91bef7b65172f93462bbb216394 # v1.0.46 | |
| with: | |
| claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} | |
| prompt: | | |
| Label GitHub issue #${{ github.event.issue.number }}. | |
| **Title**: ${{ github.event.issue.title }} | |
| **Author**: ${{ github.event.issue.user.login }} | |
| **Body**: | |
| ${{ github.event.issue.body }} | |
| ## Instructions | |
| 1. **Get available labels**: `gh label list --json name,description -q '.[] | "\(.name): \(.description)"'` | |
| 2. **Get current labels**: `gh issue view ${{ github.event.issue.number }} --json labels -q '.labels[].name'` | |
| 3. **Analyze** the issue content and determine appropriate labels | |
| 4. **Apply labels** using `gh issue edit`, removing conflicting mutually-exclusive labels first | |
| ## Label Rules (see .github/LABELS.md for full details) | |
| **Required (exactly ONE each):** | |
| - TYPE: bug | enhancement | documentation | question | refactor | chore | |
| - PRIORITY: priority:critical | priority:high | priority:medium | priority:low | |
| - EFFORT: effort:small | effort:medium | effort:large | |
| **Contextual (apply only if clearly relevant):** | |
| - COMPONENT: component:skill | component:agent | component:command | component:hook | component:docs | github-actions | |
| - SPECIAL: breaking | security | |
| - COMMUNITY: help wanted | good first issue (only if clearly appropriate) | |
| ## Execution | |
| For mutually exclusive categories (type, priority, effort), remove existing labels before adding new ones: | |
| ```bash | |
| gh issue edit ${{ github.event.issue.number }} --remove-label "priority:low" --add-label "priority:high,bug,effort:medium" | |
| ``` | |
| After applying labels, briefly explain your reasoning. | |
| claude_args: '--model claude-opus-4-5-20251101 --allowedTools "Bash(gh label:*),Bash(gh issue:*)"' | |
| label-pr: | |
| name: Label Pull Request | |
| if: | | |
| github.event_name == 'pull_request' && | |
| github.actor != 'dependabot[bot]' && | |
| github.actor != 'claude[bot]' && | |
| github.event.pull_request.draft == false | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 5 | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| id-token: write | |
| actions: read | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 | |
| with: | |
| fetch-depth: 1 | |
| persist-credentials: false | |
| - name: Label PR with Claude | |
| id: labeler | |
| uses: anthropics/claude-code-action@6c61301d8e1ee91bef7b65172f93462bbb216394 # v1.0.46 | |
| with: | |
| claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} | |
| prompt: | | |
| Label pull request #${{ github.event.pull_request.number }}. | |
| **Title**: ${{ github.event.pull_request.title }} | |
| **Author**: ${{ github.event.pull_request.user.login }} | |
| **Description**: | |
| ${{ github.event.pull_request.body }} | |
| ## Instructions | |
| 1. **Get available labels**: `gh label list --json name,description -q '.[] | "\(.name): \(.description)"'` | |
| 2. **Get current labels**: `gh pr view ${{ github.event.pull_request.number }} --json labels -q '.labels[].name'` | |
| 3. **Get the PR diff** to understand what changed: `gh pr diff ${{ github.event.pull_request.number }}` | |
| 4. **Read key modified files** to understand context - use Read and Glob tools to examine important changed files in detail | |
| 5. **Analyze** the changes and determine appropriate labels | |
| 6. **Apply labels** using `gh pr edit`, removing conflicting mutually-exclusive labels first | |
| ## Label Rules (see .github/LABELS.md for full details) | |
| **Required (exactly ONE each):** | |
| - TYPE (based on nature of changes): bug | enhancement | documentation | refactor | chore | |
| - EFFORT (based on diff size/complexity): effort:small | effort:medium | effort:large | |
| **Contextual (apply based on files changed):** | |
| - COMPONENT: component:skill (skills/**) | component:agent (agents/**) | component:command (commands/**) | component:hook (hooks/**) | component:docs (*.md, .github/**/*.md) | github-actions (.github/workflows/**) | |
| - SPECIAL: breaking | security | |
| ## Execution | |
| For mutually exclusive categories (type, effort), remove existing labels before adding new ones: | |
| ```bash | |
| gh pr edit ${{ github.event.pull_request.number }} --remove-label "effort:small" --add-label "effort:medium,enhancement,component:skill" | |
| ``` | |
| After applying labels, briefly explain your reasoning. | |
| claude_args: '--model claude-opus-4-5-20251101 --allowedTools "Bash(gh label:*),Bash(gh pr:*),Read,Glob"' |