The Issues Manager workflow automatically closes and creates GitHub Issues based on keywords in commit messages. It runs on all branches/or definded branches and for all pull requests/or pull requests actions.
Create .github/workflows/issues-manager.yml → Done! 🎉
- Close issues with keywords like
close,fix,resolve,... - Create issues with keywords like
todo:,bug,new issue,... - Multiple issues close or create simultaneously
- Works everywhere: On all branches and in pull requests
- Automatic labels for new issues
Supported Keywords:
close, fix, resolve
schließen, beheben, lösen
Examples:
Close a single issue:
git commit -m "fix: #42 Fixed login bug"
git commit -m "close #15"
git commit -m "resolve: Fixed API error #8"Close multiple issues:
git commit -m "fix #1, #2, #3 - Multiple bugs"
git commit -m "close #5 and #6"What happens?
- Issue is set to
closed - Automatic comment is added:
🤖 Auto-closed | commit abc1234
Supported Keywords:
| Keyword | Label | Example |
|---|---|---|
todo: | todo | todo: Write tests |
bug | bug | bug: Memory leak |
new issue | - | new issue: Feature XYZ |
n-iss | - | n-iss: Missing docs |
Examples:
Create a simple issue:
git commit -m "todo: Add unit tests"
git commit -m "bug: Dashboard loads slowly"
git commit -m "new issue: Code review"
git commit -m "n-iss: Refactoring needed"What happens?
- New issue is created
- Title: Text after the keyword
- Body:
🤖 Auto-created | commit abc1234 - Label: According to the keyword
.github/workflows/issues-manager.yml
CLOSE keywordsEdit lines 37-40:
constcloseKeywords=['close','fix','resolve','schließen','beheben','lösen'// ← add new keywords here];CREATE keywordsEdit lines 43-49:
constcreateKeywords=[{keyword: 'todo:',label: 'todo'},{keyword: 'bug',label: 'bug'},{keyword: 'new issue',label: null},{keyword: 'n-iss',label: null},// ← Add new ones here];Format:
keyword: The keyword (case-insensitive)label: Label name ornull(← must be defined in = github.com/user-xyz/your-repo/labels)
Only specific branches:
on:
push:
branches:
- main
- developOnly pull requests:
on:
pull_request:
types: [opened, synchronize, closed]All Rights Reserved
License Terms:
✅ You may edit and modify this workflow
❌ Do not claim this as your own work
This workflow is provided "as-is" without warranty of any kind.
Made with 💻 and ☕
V 1.0
© 2026 dev-mb.dev


