Intelligent Issue Management Bot for GitHub
A no-code, easy-to-install GitHub bot that automatically analyzes new issues to suggest labels, assignees, and related issues, saving maintainers valuable time.
GitBit streamlines repository management by leveraging Natural Language Processing (NLP) to automate the tedious aspects of GitHub issue handling. Let our intelligent bot handle the triage while you focus on what matters mostβbuilding amazing software.
Feature | Description | Benefit |
---|---|---|
π·οΈ Smart Tagging | Analyzes issue content to suggest relevant labels (bug , documentation , feature-request ) |
Ensures consistent categorization and improved searchability |
π€ Assignee Recommendations | Recommends contributors based on their expertise from previously closed issues | Distributes workload efficiently to the right team members |
π Automatic Issue Linking | Scans and links semantically related or duplicate issues | Reduces clutter and centralizes related discussions |
Get GitBit running in your repository in just 2 minutes with these simple steps:
- GitHub repository with Issues enabled
- Repository admin access
- No coding experience required!
Create .github/workflows/gitbit.yml
in your repository:
name: GitBit Bot
on:
issues:
types: [opened]
jobs:
run-gitbit:
runs-on: ubuntu-latest
permissions:
issues: write
contents: read
steps:
- name: Run GitBit Intelligent Issue Bot
uses: LMLK-seal/GitBit@main
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
Create .gitbit.yml
in your repository root:
# GitBit Configuration
# Smart Tagging: Map labels to trigger keywords
tag_keywords:
bug:
- error
- exception
- traceback
- panic
- crash
- fail
- broken
documentation:
- docs
- readme
- help
- example
- tutorial
- guide
feature-request:
- feature
- enhance
- improvement
- idea
- suggestion
performance:
- slow
- performance
- optimization
- speed
security:
- security
- vulnerability
- exploit
- unsafe
# Assignee Recommendations: Analyze recent closed issues
assignee_rec:
max_issues_to_scan: 100
# Issue Linking: Similarity threshold for related issues
issue_linking:
similarity_threshold: 0.7
- Commit both files to your repository
- Push to your main branch
- Done! GitBit will automatically analyze the next issue opened
graph LR
A[New Issue Opened] --> B[GitBit Triggered]
B --> C[Analyze Content]
C --> D[Check Keywords]
C --> E[Scan Contributor History]
C --> F[Compare with Existing Issues]
D --> G[Label Suggestions]
E --> H[Assignee Recommendations]
F --> I[Related Issue Links]
G --> J[Comment on Issue]
H --> J
I --> J
GitBit operates as a reusable GitHub Action, meaning:
- π Always uses the latest version automatically
- π‘οΈ No code duplication in your repository
- π Continuous improvements without manual updates
- π Secure execution in GitHub's infrastructure
Customize tag_keywords
to match your project's labeling system:
tag_keywords:
custom-label:
- keyword1
- keyword2
priority-high:
- urgent
- critical
- blocker
Adjust max_issues_to_scan
based on your repository size:
- Small repos (< 100 issues): 50-100
- Medium repos (100-1000 issues): 100-200
- Large repos (> 1000 issues): 200-500
Fine-tune similarity_threshold
:
- 0.5-0.6: More suggestions (higher recall)
- 0.7-0.8: Balanced approach (recommended)
- 0.8-0.9: Only very similar issues (higher precision)
Before GitBit | After GitBit |
---|---|
β° Manual issue triage | π€ Automated suggestions |
π·οΈ Inconsistent labeling | π Standardized categorization |
π€ Random assignments | π― Expertise-based matching |
π Manual duplicate detection | π Automatic issue linking |
π Time-consuming maintenance | β‘ Streamlined workflow |
π« Bot not responding to new issues
- Verify workflow file is in
.github/workflows/
directory - Check that the workflow has
issues: write
permissions - Ensure
.gitbit.yml
exists in repository root - Check GitHub Actions tab for error messages
π·οΈ No label suggestions appearing
- Review your
tag_keywords
configuration - Ensure keywords match common terms in your issues
- Check if labels exist in your repository settings
- Verify keyword case sensitivity
π€ No assignee recommendations
- Ensure your repository has closed issues with assignees
- Increase
max_issues_to_scan
value - Verify contributors have sufficient commit history
We welcome contributions from the community! Here's how you can help:
- Fork the repository
- Clone your fork locally
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Test thoroughly
- Commit with descriptive messages
git commit -m "β¨ Add amazing feature"
- Push to your branch
git push origin feature/amazing-feature
- Open a Pull Request
Found a bug? Have a feature request?
- Check existing issues first
- Use our issue templates
- Provide detailed reproduction steps
- Include relevant configuration files
We love hearing your ideas! When suggesting features:
- Explain the use case
- Describe expected behavior
- Consider implementation complexity
- Provide examples if possible
- π Advanced NLP Models: Implement transformer-based classification
- π Analytics Dashboard: Track bot performance and insights
- π Custom Workflows: Support for complex automation rules
- π Multi-language Support: Analyze issues in different languages
- π± Slack/Discord Integration: Notifications for team collaboration
- π― Priority Scoring: Automatic priority assignment based on content
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with β€οΈ by the open-source community
- Powered by GitHub Actions
- NLP capabilities thanks to modern machine learning libraries
- Special thanks to all contributors and users
Need help? Here are your options:
- π Documentation: Check this README and configuration examples
- π Bug Reports: Open an issue
- π¬ Discussions: GitHub Discussions
- β Feature Requests: Request a feature
If GitBit helped streamline your workflow, consider giving us a β!
Made with π€ by developers, for developers