Issues

Boosted and connected issues.

Copilot automates issue tracking, ensuring smooth branch management and seamless project integration.

Labels by issue type and flow

Use these labels so the action creates the right branches and applies the right behavior. You can configure all label names via Issues Configuration.

FlowRequired / optional labelsBranch created fromNotes
Featurefeature; optionally branched (or set branch-management-always: true)development-branchNew functionality.
Bugfixbugfix; optionally branched (or branch-management-always: true)development-branchBug fixes on develop.
Docsdocs or documentation; optionally branched (or branch-management-always: true)development-branchDocumentation tasks.
Chorechore or maintenance; optionally branched (or branch-management-always: true)development-branchMaintenance, refactors, dependencies.
Hotfixhotfix (branch is created without needing branched; templates often include branched too)main-branch (from latest tag)Urgent production fix. Add deploy to trigger deploy workflow. Only org/repo members can create hotfix issues (others are closed).
Releaserelease (branch is created without needing branched; templates often include branched too)development-branchNew version release. Add deploy to trigger release workflow. Only org/repo members can create release issues (others are closed).
Deploydeploy on the issueTriggers the workflow defined by release-workflow or hotfix-workflow.
Deployeddeployed (added by action after deploy success)Marks the issue as deployed; used for auto-close and state updates.

Other labels: bug / enhancement (issue type), question / help (no branch), priority: high / medium / low, size: XSsize: XXL. See Configuration.

For step-by-step flows (how branches are created, naming, source branch, deploy trigger, and templates), see the issue type pages: Feature, Bugfix, Docs, Chore, Hotfix, Release.

To enable the GitHub Action for issues, create a workflow with the following configuration:

name: Copilot - Issue

on:
  issues:
    types: [opened, reopened, edited, labeled, unlabeled, assigned, unassigned]

jobs:
  git-board-issues:
    name: Git Board - Issue
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: vypdev/copilot@master
        with:
          project-ids: '1,2'
          token: ${{ secrets.PAT }}

Member Assignment

Copilot rolls the dice for you by automatically assigning newly created issues to a member of the organization or repository.

How many members do we assign?

The issue is assigned to its creator if they belong to the organization. We will assign additional members if needed.

jobs:
  git-board-issues:
    name: Git Board - Issue
    runs-on: ubuntu-latest
    steps:
      - uses: vypdev/copilot@v1
        with:
          desired-assignees-count: 1

Board Assignment

Copilot takes care of organizing your issues by automatically assigning newly created issues to a designated project board, ensuring seamless tracking and management.

Linking the issue to a board requires a Personal Access Token (PAT).

How many boards do you want to work with?

Define the links to all the boards where you want to track the issue.

jobs:
  git-board-issues:
    name: Git Board - Issue
    runs-on: ubuntu-latest
    steps:
      - uses: vypdev/copilot@v1
        with:
          project-ids: 1, 2

Branch Management

Issues usually require new changes (unless they are inquiries or help requests).

Once members of the organization (or repository) add a specific label, the necessary branches are automatically created to save time and effort for developers.

Some types of issues (hotfix and release) create branches automatically. This only happens when the issue creator is a member of the organization.

How to branch issues

branched is the default label for running this branch management on non-mandatory branched issues.

jobs:
  git-board-issues:
    name: Git Board - Issue
    runs-on: ubuntu-latest
    steps:
      - uses: vypdev/copilot@v1
        with:
          branch-management-launcher-label: branched

Naming conventions

main or master? develop or dev? feature or feat?

You can define the branch naming convention that best suits your project. Here are all the possibilities and their default values:

jobs:
  git-board-issues:
    name: Git Board - Issue
    runs-on: ubuntu-latest
    steps:
      - uses: vypdev/copilot@v1
        with:
          main-branch: master
          development-branch: develop
          docs-tree: docs
          chore-tree: chore
          feature-tree: feature
          bugfix-tree: bugfix
          hotfix-tree: hotfix
          release-tree: release

Smart Workflow Guidance

Many developers are familiar with the Git-Flow methodology, but that doesn’t prevent mistakes from happening during the process of creating new features, maintaining code or documentation, fixing bugs, and deploying new versions. Copilot will remind you of key steps to minimize these errors as much as possible. Even if you're not familiar with the Git-Flow methodology, you'll be able to manage branches easily and confidently.

Real-Time Code Tracking

Issues take time to be resolved, and interest in their progress increases. Therefore, any changes in the branches created by the issue will be notified as comments, providing real-time feedback on the issue's progress.

Bugbot (potential problems)

When the push workflow runs (or you run the single action detect_potential_problems_action with single-action-issue), OpenCode analyzes the branch vs the base and reports potential problems (bugs, risks, improvements) as comments on the issue. Each finding appears as a comment with title, severity, and optional file/line. If a previously reported finding is later fixed, the action updates that comment (e.g. marks it as resolved) so the issue stays in sync. Findings are also posted as review comments on open PRs for the same branch; see Pull Requests → Bugbot. You can set a minimum severity with bugbot-severity and exclude paths with ai-ignore-files; see Configuration.

Auto-Closure

Forget about closing issues when development is complete, Copilot will automatically close them once the branches created by the issue are successfully merged.