Git Board Flow
ActionsTags
(2)Git Board Flow is a powerful GitHub Action designed to streamline issue, branch, and project management while adhering to the Git-Flow methodology. This action simplifies your workflow by automating the creation and management of branches, linking them to issues, and ensuring smooth integration with GitHub Projects.
Git Board Flow includes advanced AI capabilities for code analysis and vector indexing:
- AI Container Management: Automated Docker container preparation with model pre-loading
- Vector Indexing: Semantic code analysis and embedding generation
- Registry Integration: Efficient image distribution across different environments
- Smart Caching: Optimized for both GitHub-hosted and self-hosted runners
- Detects when an issue is created or updated.
- Analyzes issue labels (or configuration defined in your workflow) to determine the necessary branches:
- Feature, Bugfix, Hotfix, Release, etc., following Git-Flow standards.
- Automatically creates branches and links them to the issue.
- Adds a summary comment to the issue describing the actions taken.
- Detects commits in branches linked to an issue.
- Posts updates in the issue with a summary of the commits, including:
- Commit messages.
- Branch names.
- Links to the commit history.
- Detects new PRs from branches linked to an issue.
- Automatically links the PR to the corresponding issue.
- Posts a comment in the PR summarizing its linkage and actions.
- Seamlessly links issues and PRs to the specified GitHub Projects.
- Ensures that all relevant entities are included in the right projects automatically.
- Runs on Ubuntu and completes tasks in under 20 seconds, making it cost-effective and efficient for any repository.
- Team Collaboration: Keep issues, branches, and PRs connected effortlessly for better visibility.
- Automated Workflows: Reduce manual overhead with automated branch management and notifications.
- Git-Flow Compliance: Maintain Git-Flow structure without additional effort.
name: Git Board Flow - Issue
on:
issues:
types: [opened, edited, labeled, unlabeled]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
git-board-flow-issues:
name: Git Board Flow - Issue
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Issue
uses: landamessenger/git-board-flow@master
with:
project-urls: https://github.com/orgs/landamessenger/projects/2, https://github.com/orgs/landamessenger/projects/3
commit-prefix-transforms: "replace-slash"
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}name: Git Board Flow - Pull Request
on:
pull_request:
types: [opened, edited, labeled, unlabeled]
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
git-board-flow-pull-requests:
name: Git Board Flow - Pull Request
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Pull Request
uses: landamessenger/git-board-flow@master
with:
project-urls: https://github.com/orgs/landamessenger/projects/2, https://github.com/orgs/landamessenger/projects/3
commit-prefix-transforms: "replace-slash"
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}name: Git Board Flow - Commit
on:
push:
branches:
- '**'
jobs:
git-board-flow-commits:
name: Git Board Flow - Commit
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Git Board Flow - Commit
uses: landamessenger/git-board-flow@master
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
github-token-personal: ${{ secrets.REPO_PAT }}
commit-prefix-transforms: "replace-slash"- Warning received if the prefix of the commit does not match the one defined from
commit-prefix-transforms.
Git Board Flow allows you to customize how branch names are transformed into commit prefixes using the commit-prefix-transforms parameter. You can apply multiple transformations sequentially to achieve the desired format.
| Transform | Description | Example |
|---|---|---|
replace-slash |
Replace "/" with "-" | feature/user-auth → feature-user-auth |
replace-all |
Replace all special chars with "-" | feature/user_auth! → feature-user-auth- |
lowercase |
Convert to lowercase | Feature/User-Auth → feature/user-auth |
uppercase |
Convert to uppercase | feature/user-auth → FEATURE/USER-AUTH |
kebab-case |
Clean kebab-case format | Feature/User_Auth → feature-user-auth |
snake-case |
Convert to snake_case | feature/user-auth → feature_user_auth |
camel-case |
Convert to camelCase | feature/user-auth → featureUserAuth |
trim |
Remove leading/trailing spaces | feature/user-auth → feature/user-auth |
remove-numbers |
Remove all numbers | feature/123-user-auth → feature/-user-auth |
remove-special |
Remove all special characters | feature/user-auth! → featureuserauth |
remove-spaces |
Remove all spaces | feature/ user auth → feature/userauth |
remove-dashes |
Remove all dashes | feature-user-auth → featureuserauth |
remove-underscores |
Remove all underscores | feature_user_auth → featureuserauth |
clean-dashes |
Clean multiple dashes | feature--user---auth → feature-user-auth |
clean-underscores |
Clean multiple underscores | feature__user___auth → feature_user_auth |
prefix |
Add prefix | user-auth → prefix-user-auth |
suffix |
Add suffix | user-auth → user-auth-suffix |
commit-prefix-transforms: "replace-slash"
# Result: feature/user-auth → feature-user-authcommit-prefix-transforms: "replace-all,lowercase,clean-dashes"
# Result: Feature/User_Auth! → feature-user-authcommit-prefix-transforms: "replace-all,remove-numbers,clean-dashes,kebab-case"
# Result: feature/123-user-auth_v2.0 → feature-user-auth-v# For clean commit prefixes
commit-prefix-transforms: "replace-all,kebab-case"
# For snake_case convention
commit-prefix-transforms: "replace-all,snake-case"
# For camelCase convention
commit-prefix-transforms: "replace-all,camel-case"
# For uppercase convention
commit-prefix-transforms: "replace-all,uppercase,clean-dashes"If no commit-prefix-transforms is specified, the default replace-slash transformation is applied, maintaining backward compatibility with existing configurations.
- Consistent Git-Flow Management: Adheres strictly to Git-Flow methodology for clear branching strategies.
- Project Visibility: Ensures all relevant branches, issues, and PRs are properly tracked and communicated.
- Time-Saving: Automates repetitive tasks, freeing up time for development and review.
- Affordable: Fast execution keeps costs low, even in large repositories.
Git Board Flow includes a sophisticated AI container management system for efficient code analysis and vector indexing.
The AI system uses Docker containers with pre-loaded machine learning models to perform semantic code analysis:
🐳 AI Container (6.62 GB)
├── 🐍 Python 3.11-slim (base)
├── 🤖 InstructorEmbedding model (~4 GB)
├── 📦 Python dependencies (~2 GB)
├── 🚀 FastAPI server
└── 🔧 System tools
AI containers follow a standardized naming pattern:
{organization_name}-manager-ai:latest
Examples:
git-board-flow-manager-ai:latestmycompany-manager-ai:latestopensource-project-manager-ai:latest
- Strategy: Use local images (persistent)
- Behavior:
- If image exists locally → Use it directly
- If image doesn't exist → Build locally
- Automatic cleanup of dangling images
- Benefits: Fast execution, no network overhead
- Strategy: Use pre-built images from registry
- Behavior:
- Check if image exists in registry
- If exists → Pull and use
- If doesn't exist → Build and push to registry
- Benefits: Consistent environment, shared resources
# Build container and execute vector indexing
git-board-flow build-ai
# Build container only (skip vector indexing)
git-board-flow build-ai --skip-vector
# Build with debug mode
git-board-flow build-ai --debug# Ask AI about specific issue
git-board-flow ask-ai --issue 123 --question "How does authentication work?"
# Ask AI about specific branch
git-board-flow ask-ai --branch feature/auth --question "What are the main components?"The AI system automatically integrates with GitHub Actions workflows:
name: AI Knowledge Update
on:
push:
branches: ['**']
jobs:
update-ai:
runs-on: [self-hosted, macOS, X64]
steps:
- uses: actions/checkout@v4
- name: Update AI Knowledge
uses: ./
with:
single-action: vector_action
# ... other parameters- macOS ARM64 (M1/M2):
{org}-manager-arm64-ai:latest - macOS x64:
{org}-manager-amd64-ai:latest - Linux x64:
{org}-manager-amd64-ai:latest - Linux ARM64:
{org}-manager-arm64-ai:latest - Linux ARM32:
{org}-manager-armv7-ai:latest
- GitHub Container Registry (GHCR): Recommended for GitHub projects
- Docker Hub: Universal compatibility
- AWS ECR: Enterprise-grade security
- Azure ACR: Microsoft ecosystem integration
- Before: ~46 GB (multiple duplicate images)
- After: ~13 GB (optimized image management)
- Savings: ~33 GB of disk space
- Local/Self-hosted: Instant (uses cached images)
- GitHub-hosted: Fast pull (~2-3 minutes for 6.62 GB)
- Build time: ~10-15 minutes (only when needed)
Image not found in registry
# Solution: Build and push image
git-board-flow build-ai --skip-vectorDocker space issues
# Solution: Clean up dangling images
docker system prune -fPermission denied
# Solution: Login to registry
docker login ghcr.io- Initial Setup: Run
git-board-flow build-aito create initial container - Code Changes: AI automatically detects and indexes new code
- Registry Updates: Push updated images when dependencies change
- Team Collaboration: All team members use same pre-built images
Transform your GitHub workflow with Git Board Flow! 🚀
Experience seamless project management, automated branch handling, AI-powered code analysis, and enhanced team collaboration. Start optimizing your development process today and take your Git workflow to the next level! ✨
Git Board Flow is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.



