Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 59 additions & 0 deletions .github/workflows/stalebot.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Stalebot

on:
workflow_dispatch: {}
schedule:
# Everyday at 10:00 UTC (05:00 EST / 06:00 EDT)
- cron: "0 10 * * *"

env:
DAYS_BEFORE_ISSUE_STALE: 90
DAYS_BEFORE_ISSUE_CLOSE: 90
DAYS_BEFORE_PR_STALE: 15
DAYS_BEFORE_PR_CLOSE: 5

jobs:
close-stale-issues:
name: Close Stale Issues
runs-on: ubuntu-22.04
permissions:
issues: write
steps:
- uses: actions/stale@v9 # https://github.com/actions/stale
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-issue-stale: ${{ env.DAYS_BEFORE_ISSUE_STALE }}
days-before-issue-close: ${{ env.DAYS_BEFORE_ISSUE_CLOSE }}
stale-issue-message: >
This issue has been marked as stale because of no activity in the last ${{ env.DAYS_BEFORE_ISSUE_STALE }} days.
It will be closed in the next ${{ env.DAYS_BEFORE_ISSUE_CLOSE }} days unless it is tagged "no stalebot" or other activity occurs.
close-issue-message: >
This issue has been closed due to no activity in the last 12 months.
Comment on lines +30 to +31
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

close-issue-message says issues are closed after "no activity in the last 12 months", but the configured timings are DAYS_BEFORE_ISSUE_STALE=90 and DAYS_BEFORE_ISSUE_CLOSE=90 (i.e., close after ~180 days of inactivity). Please update the message (or the thresholds) so the user-facing text matches actual behavior.

Copilot uses AI. Check for mistakes.
stale-issue-label: 'stale' # https://github.com/kagent-dev/kagent/labels/stale
exempt-issue-labels: 'no stalebot' # https://github.com/kagent-dev/kagent/labels/no%20stalebot
enable-statistics: true
operations-per-run: 1000
ascending: true # asc means oldest first

close-stale-prs:
name: Close Stale PRs
runs-on: ubuntu-22.04
permissions:
pull-requests: write
issues: write
steps:
- uses: actions/stale@v9 # https://github.com/actions/stale
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-pr-stale: ${{ env.DAYS_BEFORE_PR_STALE }}
days-before-pr-close: ${{ env.DAYS_BEFORE_PR_CLOSE }}
stale-pr-message: >
This pull request has been marked as stale because of no activity in the last ${{ env.DAYS_BEFORE_PR_STALE }} days.
It will be closed in the next ${{ env.DAYS_BEFORE_PR_CLOSE }} days unless it is tagged "no stalebot" or other activity occurs.
close-pr-message: >
This pull request has been closed after ${{ env.DAYS_BEFORE_PR_STALE }} days of inactivity and an additional ${{ env.DAYS_BEFORE_PR_CLOSE }} days after being marked as stale.
stale-pr-label: 'stale' # https://github.com/kagent-dev/kagent/labels/stale
exempt-pr-labels: 'no stalebot' # https://github.com/kagent-dev/kagent/labels/no%20stalebot
enable-statistics: true
operations-per-run: 1000
ascending: true # asc means oldest first
Loading