stale.yml•2.02 kB
name: Close stale issues and PRs
on:
  schedule:
    - cron: '0 1 * * *' # Run daily at 1:00 AM UTC
  workflow_dispatch: # Allow manual execution
permissions:
  issues: write
  pull-requests: write
jobs:
  stale:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/stale@v8
        with:
          # General settings
          repo-token: ${{ secrets.GITHUB_TOKEN }}
          # Issues configuration
          stale-issue-message: |
            This issue has been automatically marked as stale because it has not had recent activity.
            It will be closed if no further activity occurs within 7 days.
            If this issue is still relevant, please comment to keep it open.
          close-issue-message: |
            This issue has been automatically closed due to inactivity.
            If you believe this issue is still relevant, please reopen it or create a new issue with updated information.
          days-before-issue-stale: 30
          days-before-issue-close: 7
          # Pull requests configuration
          stale-pr-message: |
            This pull request has been automatically marked as stale because it has not had recent activity.
            It will be closed if no further activity occurs within 14 days.
            If this PR is still relevant, please comment or push new commits to keep it open.
          close-pr-message: |
            This pull request has been automatically closed due to inactivity.
            If you'd like to continue this work, please reopen this PR or create a new one.
          days-before-pr-stale: 30
          days-before-pr-close: 14
          # Labels
          stale-issue-label: 'stale'
          stale-pr-label: 'stale'
          # Exempt items with these labels from being marked stale
          exempt-issue-labels: 'pinned,security,enhancement,bug'
          exempt-pr-labels: 'pinned,security,work-in-progress'
          # Additional settings
          remove-stale-when-updated: true
          enable-statistics: true