Examples
Scheduled triage with dry-run
Section titled “Scheduled triage with dry-run”Analyze errors without creating PRs — useful for testing your setup:
- uses: swenyai/sweny@v0.2 with: claude-oauth-token: ${{ secrets.CLAUDE_OAUTH_TOKEN }} dd-api-key: ${{ secrets.DD_API_KEY }} dd-app-key: ${{ secrets.DD_APP_KEY }} linear-api-key: ${{ secrets.LINEAR_API_KEY }} linear-team-id: ${{ vars.LINEAR_TEAM_ID }} dry-run: true time-range: '7d' investigation-depth: 'thorough'Work on a specific Linear issue
Section titled “Work on a specific Linear issue”Point SWEny at an existing ticket instead of scanning for new issues:
- uses: swenyai/sweny@v0.2 with: claude-oauth-token: ${{ secrets.CLAUDE_OAUTH_TOKEN }} linear-api-key: ${{ secrets.LINEAR_API_KEY }} linear-issue: 'ENG-123' additional-instructions: 'Focus on the webhook handler timeout'Filter to a specific service
Section titled “Filter to a specific service”Only look at errors from a subset of services:
- uses: swenyai/sweny@v0.2 with: claude-oauth-token: ${{ secrets.CLAUDE_OAUTH_TOKEN }} dd-api-key: ${{ secrets.DD_API_KEY }} dd-app-key: ${{ secrets.DD_APP_KEY }} linear-api-key: ${{ secrets.LINEAR_API_KEY }} linear-team-id: ${{ vars.LINEAR_TEAM_ID }} service-filter: 'billing-*' severity-focus: 'errors' time-range: '4h'Required permissions
Section titled “Required permissions”Your workflow needs these permissions for SWEny to create branches and PRs:
permissions: contents: write pull-requests: writeIf using cross-repo dispatch, pass a bot-token with repo and actions scopes for the target repositories.